@charset "UTF-8";
/*


   Magic 360 v4.6.8 
   Copyright 2017 Magic Toolbox
   Buy a license: https://www.magictoolbox.com/magic360/
   License agreement: https://www.magictoolbox.com/license/


*/
@font-face {
  font-family: 'magic360';
  font-weight: normal;
  font-style: normal;
  src: url("../magic-toolbox-fonts/magic360.eot?#iefix") format("embedded-opentype");
}

@font-face {
  font-family: 'magic360';
  src: url("data:application/octet-stream;base64,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") format("woff"), url("data:application/octet-stream;base64,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") format("truetype");
}

/* Core */
.Magic360,
.Magic360-container {
  border: 1px solid #f3f3f3;
  -webkit-box-sizing: content-box !important;
          box-sizing: content-box !important;
}

.Magic360-container .Magic360,
.Magic360-fullscreen .Magic360 {
  border: 0 !important;
}

.Magic360 {
  padding: 0 !important;
  outline: 0 !important;
  display: inline-block;
  font-size: 0 !important;
  line-height: 100% !important;
  max-width: 100%;
}

.Magic360-container {
  text-align: center !important;
  max-width: 100%;
  position: relative;
  z-index: 1;
}

.Magic360-container .Magic360 {
  display: inline-block !important;
  vertical-align: middle;
  -ms-touch-action: none;
      touch-action: none;
}

.Magic360-container .Magic360.m360-spin-x {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.Magic360-container .Magic360.m360-spin-y {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.Magic360.desktop.zoom-in {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.Magic360 img {
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto;
}

.Magic360 > img {
  width: 100%;
}

/* Fullscreen icons */
button.m360-icon {
  color: #b4b4b4 !important;
  font: normal 900 30px/1 'magic360' !important;
  cursor: pointer;
  z-index: 1000000 !important;
  background-color: transparent !important;
  border: 1px solid rgba(180, 180, 180, 0) !important;
  border-radius: 0 !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  position: absolute !important;
  text-transform: none !important;
  text-align: center;
  speak: none;
  width: 44px !important;
  height: 44px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  outline: 0 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

button.m360-icon:hover,
.mobile-magic button.m360-icon:active {
  color: #555 !important;
  color: rgba(49, 51, 61, 0.76) !important;
}

button.m360-icon:before {
  display: inline !important;
  position: static !important;
  color: inherit !important;
  font: inherit !important;
  -webkit-font-smoothing: inherit !important;
  -moz-osx-font-smoothing: inherit !important;
}

button.m360-icon.m360-icon-fullscreen-open,
button.m360-icon.m360-icon-fullscreen-close {
  top: 0 !important;
  right: 0 !important;
}

button.m360-icon.m360-icon-fullscreen-close {
  width: 60px !important;
  height: 60px !important;
}

button.m360-icon.m360-icon-fullscreen-open:before {
  content: '\e800';
}

button.m360-icon.m360-icon-fullscreen-close:before {
  content: '\e801';
}

.lt-ie9-magic button.m360-icon {
  border: 0;
  filter: alpha(opacity=75);
}

.lt-ie9-magic button.m360-icon:hover {
  filter: alpha(opacity=100);
}

.Magic360-fullscreen:-webkit-full-screen {
  touch-action: none;
}

.lt-ie7-magic .Magic360-container .Magic360 {
  width: auto !important;
}

.Magic360-fullscreen {
  background: #fff;
  z-index: 2147483640 !important;
}

.Magic360-fullscreen:-webkit-full-screen {
  width: 100% !important;
  height: 100% !important;
  top: 0 !important;
  left: 0 !important;
  -webkit-backface-visibility: hidden !important;
  backface-visibility: hidden !important;
}

.Magic360-fullscreen:-ms-fullscreen {
  width: 100% !important;
  height: 100% !important;
  top: 0 !important;
  left: 0 !important;
}

.Magic360-fullscreen:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.Magic360-fullscreen .Magic360 {
  display: inline-block !important;
  vertical-align: middle;
}

.Magic360-message {
  background-color: #FFFFFF;
  background-image: none;
  border: 1px solid #AAAAAA;
  display: block;
  font-size: 10px;
  color: #000;
  overflow: hidden;
  padding: 6px;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 33%;
  left: 33%;
  z-index: 100;
  -webkit-box-shadow: 0 0 10px #000;
          box-shadow: 0 0 10px #000;
  border-collapse: separate;
  border-radius: 15px;
}

.Magic360-fullscreen .Magic360-message {
  font-size: 18px;
  background-color: #31333D;
  background-color: rgba(49, 51, 61, 0.76);
  border-color: #ccc;
  color: #fff;
  top: 15px;
}

/**
 * Hint & Loader
 */
.m360-hint-message,
.m360-loader {
  background: rgba(49, 51, 61, 0.76);
  color: #fff;
  font: normal 14px/1.2em 'Lucida Grande', 'Lucida Sans Unicode', Verdana, 'Helvetica Neue', Arial, Helvetica, sans-serif;
  text-decoration: none;
}

.m360-hint,
.m360-loader {
  direction: ltr;
  text-align: center;
  display: inline-block;
  margin: 0;
  position: absolute;
  z-index: 1000;
  pointer-events: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.m360-hint {
  bottom: 8px;
  left: 0;
  right: 0;
  padding: 0 10%;
  -webkit-transition: opacity 0.25s ease, z-index 0.25s ease;
  transition: opacity 0.25s ease, z-index 0.25s ease;
}

.m360-hint-message {
  display: inline-block;
  border-radius: 2em;
  padding: .3em 1.5em;
  font-size: 14px;
  line-height: 1.5;
}

.m360-hint-message:before {
  content: '';
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAAqCAYAAAB4Ip8uAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxQjhDODMzNkM3MEIxMUUzQkMzNEJCQzI2OUFGMUNCQSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxQjhDODMzNUM3MEIxMUUzQkMzNEJCQzI2OUFGMUNCQSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGQTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIvPiA8L3JkZjpEZXNjcmlwdGlv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");
  background-image: -webkit-image-set(url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAAqCAYAAAB4Ip8uAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxQjhDODMzNkM3MEIxMUUzQkMzNEJCQzI2OUFGMUNCQSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxQjhDODMzNUM3MEIxMUUzQkMzNEJCQzI2OUFGMUNCQSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGQTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIvPiA8L3JkZjpEZXNjcmlwdGlv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") 1x, url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAABUCAYAAAC82LpqAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDoxNTQ2NDdEMUM3MEIxMUUzQjI2QkI2NTZEOUZDMjc2OSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDoxNTQ2NDdEMEM3MEIxMUUzQjI2QkI2NTZEOUZDMjc2OSIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGQTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGOTA1M0E3QjA4QzdFMzExOTUxQjhCNzcwMDhDQjMwOCIvPiA8L3JkZjpEZXNjcmlwdGlv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") 2x);
  width: 40px;
  height: 42px;
  display: inline-block;
  speak: none;
  text-align: center;
  vertical-align: middle;
  margin-right: 4px;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.m360-spin-x .m360-hint-message:before {
  background-position: -40px;
}

.m360-spin-y .m360-hint-message:before {
  background-position: -80px;
}

.m360-loader {
  border-radius: 100%;
  font-size: 0;
  opacity: 0;
  padding: 0;
  width: 50px;
  height: 50px;
  left: 8px;
  bottom: 8px;
}

.m360-loader:after {
  content: attr(data-progress);
  font-size: 12px;
  line-height: 1;
  display: block;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.m360-loader:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 44px;
  height: 44px;
  margin: auto;
  text-indent: -9999em;
  border-radius: 50%;
  border: 2px solid white;
  border-top-color: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.m360-loader.shown {
  opacity: 1;
  z-index: 1000;
  -webkit-transition: opacity 0s;
  transition: opacity 0s;
}

.m360-loader.shown:before {
  -webkit-animation: spin-loading 2s infinite linear;
  animation: spin-loading 2s infinite linear;
}

@-webkit-keyframes spin-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

@keyframes spin-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}

.lt-ie10-magic .m360-loader {
  border-radius: 2em;
  font-size: 14px;
  padding: .8em 1.2em;
  width: auto;
  height: auto;
}

.lt-ie10-magic .m360-loader:before {
  display: none;
}

.lt-ie10-magic .m360-loader:after {
  content: "Loading...   " attr(data-progress);
  text-align: center;
}

.lt-ie9-magic .m360-hint-message,
.lt-ie9-magic .m360-loader.shown {
  background: transparent !important;
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#7c31333D', EndColorStr='#7c31333D');
}

.lt-ie9-magic .m360-hint-hidden {
  filter: alpha(opacity=0);
}

.lt-ie9-magic .m360-loader {
  filter: alpha(opacity=0);
  right: 0;
  left: 0;
  width: 96px;
  margin: auto;
}

.lt-ie9-magic .Magic360-fullscreen .m360-loader {
  left: 8px;
  right: auto;
}

/* Magnifier */
.Magic360-container .m360-magnifier,
.Magic360-fullscreen .m360-magnifier {
  -webkit-box-shadow: 0 0 10px #ccc;
          box-shadow: 0 0 10px #ccc;
  border-collapse: separate;
  background-color: #fff;
  cursor: none;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(circle, white, black);
}

.lt-ie9-magic .m360-magnifier {
  border: 3px ridge #e7e7e7;
}

.lt-ie9-magic .m360-magnifier.m360-magnifier-inner {
  border: none !important;
}

.Magic360-container.desktop .m360-magnifier.m360-magnifier-inner,
.Magic360-fullscreen.desktop .m360-magnifier.m360-magnifier-inner {
  cursor: pointer;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.m360-magnifier img {
  position: absolute !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: 0 !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.m360-magnifier-loader-holder {
  background-color: transparent;
  cursor: default;
  position: absolute;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.ie9-magic .m360-magnifier-loader-holder,
.lt-ie9-magic .m360-magnifier-loader-holder {
  filter: alpha(opacity=60);
}

.m360-magnifier-loader-holder .m360-loader {
  opacity: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}

.m360-magnifier-loader-holder .m360-loader:before {
  -webkit-animation: spin-loading 2s infinite linear;
  animation: spin-loading 2s infinite linear;
}

/*


   Magic Scroll v2.0.29 
   Copyright 2017 Magic Toolbox
   Buy a license: https://www.magictoolbox.com/magicscroll/
   License agreement: https://www.magictoolbox.com/license/


*/
.MagicScroll,
.mcs-caption,
.mcs-button,
.mcs-item,
.mcs-item img,
.mcs-item > *,
.mcs-bullet,
.mcs-bullet:before,
.mcs-bullet:after,
.mcs-wrapper,
.mcs-items-container {
  margin: 0;
  padding: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.MagicScroll,
.mcs-item,
.mcs-item a,
.mcs-item img,
.mcs-items-container {
  position: relative;
}

.MagicScroll,
.mcs-item,
.mcs-wrapper,
.mcs-items-container {
  overflow: hidden;
  direction: ltr;
}

.mcs-wrapper,
.mcs-item img {
  line-height: 100%;
}

.MagicScroll {
  z-index: 1;
  cursor: -webkit-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
  -moz-user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.MagicScroll.MagicScroll-horizontal {
  -moz-touch-action: pan-y;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.MagicScroll.MagicScroll-vertical {
  -moz-touch-action: pan-x;
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}

body.mcs-dragging {
  cursor: move;
  cursor: -webkit-grabbing;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

body.mcs-dragging .MagicScroll,
body.mcs-dragging button.mcs-button.mcs-horizontal.mcs-button-arrow {
  cursor: inherit;
}

.mcs-item,
.MagicScroll figure,
.mcs-item .mcs-caption {
  display: inline-block;
}

.mcs-item img {
  display: inline-block !important;
}

.MagicScroll > * {
  display: inline-block;
  max-width: 100%;
}

.MagicScroll > *:first-child {
  visibility: hidden;
}

.MagicScroll > *:nth-child(n+2) {
  display: none;
}

.MagicScroll > a {
  line-height: 100%;
}

.MagicScroll img {
  visibility: hidden;
}

.MagicScroll .mcs-item img {
  visibility: visible;
  float: none !important;
}

.mcs-button,
.mcs-bullets,
.mcs-wrapper {
  position: absolute;
}

.MagicScroll:before,
.MagicScroll figcaption:before {
  content: '';
  display: inline-block;
  vertical-align: top;
  height: 0;
}

.mcs-wrapper {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  vertical-align: top;
  z-index: 100;
}

.mcs-items-container {
  text-align: center;
  overflow: visible;
  width: 100%;
  height: 100%;
}

.mcs-item {
  top: 0;
  left: 0;
  zoom: 1;
  font-size: 9pt !important;
  line-height: 100%;
  max-width: 100%;
}

.mcs-item:after,
.mcs-item > a:after {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.MagicScroll-horizontal .mcs-item {
  height: 100%;
}

.MagicScroll-vertical .mcs-item {
  display: block;
  width: 100%;
}

.mcs-item > a,
.MagicScroll-horizontal .mcs-items-container > * {
  display: inline-block;
}

.mcs-item a,
.mcs-item img {
  border: none;
  max-width: 100%;
  max-height: 100%;
}

.mcs-item a {
  height: 100%;
}

.mcs-item img {
  width: auto;
  height: auto;
  vertical-align: middle;
}

.MagicScroll figure {
  position: relative;
  vertical-align: middle;
  font-size: 0;
  margin: 0;
  max-width: 100%;
  max-height: 100%;
  line-height: normal;
}

.lt-ie9-magic .mcs-item > a > img {
  position: static;
}

.lt-ie9-magic figcaption {
  display: block;
}

.lt-ie10-magic .mcs-item a img {
  border: none;
}

.ie7-magic .mcs-item img,
.ie7-magic .MagicScroll-vertical .mcs-item a {
  display: inline-block;
}

.ie7-magic .MagicScroll-horizontal .mcs-item {
  display: inline;
}

.mcs-button {
  display: block;
}

.MagicScroll .mcs-hidden {
  display: none !important;
  visibility: hidden !important;
}

.ie11-magic .MagicScroll[data-mode="scroll"] .mcs-items-container,
.MagicScroll[data-mode="carousel"] .mcs-items-container,
.MagicScroll[data-mode="cover-flow"] .mcs-items-container {
  -webkit-perspective: 1000px;
  -o-perspective: 1000px;
  perspective: 1000px;
  -webkit-perspective-origin-x: 50%;
  -webkit-perspective-origin-y: 50%;
}

.MagicScroll[data-mode="carousel"] .mcs-item,
.MagicScroll[data-mode="cover-flow"] .mcs-item {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.MagicScroll figcaption {
  display: inline-block;
  position: relative;
  left: 0;
  float: left;
  width: 100%;
  line-height: 100%;
  clear: both;
  z-index: 150;
}

.MagicScroll figcaption,
.MagicScroll[data-mode="carousel"] .mcs-item .mcs-caption,
.MagicScroll[data-mode="cover-flow"] .mcs-item .mcs-caption {
  left: 50%;
  -webkit-transform: translateZ(1px) translateX(-50%);
  transform: translateZ(1px) translateX(-50%);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.lt-ie9-magic .MagicScroll figcaption,
.lt-ie9-magic .MagicScroll figure img {
  float: right;
}

.MagicScroll .mcs-reflection {
  -webkit-transform: translateZ(-1px);
  position: absolute;
  display: inline-block;
  left: 0px;
  z-index: 1;
}

.MagicScroll .mcs-item.mcs-noimg {
  background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAGB0lEQVRIS5WXa2wUVRTH/3dmn2136b5a2u2LsoogEiGGBGnlYUJMiEpi1MSYGNHvoAjfNEQ/iaL4XTAmxkQSE3zFaESQrZIQIxHlaVtK22273Udhtt3nPDx3Zmc7u9ttdZLN7s6ce37nf885995h+G8X+yXUMSho4l4wbTtjiADMZwzV5jQNw0xjvylM+XZHYjrKb67kli1ncBQQHg+GDzKRHW/u74F3QwTNa7rhDPogNrn0oUo2j0JyDgu3JyFd+wcLo+PQFO3Q2WTsBI1XG/lvCI6GOl9mgnjKv3UT2h7fBpudZKSTUKW70HJZaHJJ98noAXM3QfC2gvmD4Ldnz15E+tIVaKqyfzAx9clS8CXBF9rCb7v8vjd7XnwaTocKZWJUh9EUG7AaT+a80pTrQYjd/SgUBYx/9hXy6bl3HpuNvVULrwNHQ+ETnkjvge5n9wBjN6Fm7ulAVsY1mqIKnNLLAxA8q4C+dRg//QPmR8Y/GkzEDlrhVX6iwa53vev6jvTs2wHlxp+AXKwDmqprFXCYXmrlB4QHbA6I6x/G+JnzyNwYe28gOXnEHFcB85y62gKn+l94Asr1ywTUdGjt9K6suBwAcTmcexHXb8Ho598jP5uq5Fz3cxoQw6u75f6XnoIYuwGmyBVoOplERpJ0b16vF4Fg0MhzOSLNlEr3UmQrlW09ZOsLBA24aIMSfgCjn36N2MyE7TlqBh0cDYZfDzzy4PFQ2AEtcxdCWWk6nUYmk0H7lxd1WPyZbfB6PAgGAnWFmkylINXYesjW5/NTT5FuTysSsSJSv189NJiMfcDBbKi9S408vxtC7JahVFcE3JmMVaAmSYe3tCDka63AE3N3Ic3PL2nbEw7reefK1fB9GP7iHAbikwK7EFy9w7Om53w44gaoZYQylMPHpuN1zirKm5sQWuVF4p4EaSHb0K63o12vcn0loVaLDeeQuT2+k/FKXj340BGvHDeUWsDpzAIyuVxjuNsNaZnnHrcLPk+LDjZUA5KtHTPRv44x6tto3+6NAw5pSocKes8u9m06m4OULzSEm/m3Jp2nw+N0ItDsLlc2KS7DC95OjP98NcqG2sIza7f3tQsLcxaoATZbKZXLQyqU0HnmUl1R1d6Y2rcVXqcdAVJrKNU7Wv9wuNrsw8ivY3ECdxUiW/wOFPNVas0p11uHtwqBpZKM3u8uN4Tf2bsZXrsNfgLza3GKDTgHw+HC8B/pog5eu8HlYJq6LJg7SpUUSLKKyI9/18GH92yE1yYgYBcXV69KbhfBGhMwci3PweGZ7vud7TaBes2S31rFcyUV84qK9eduNlR8fdc6tIgCWu28N+oV8xmQVYaJW4W4XlxtkeYBp61UDbbsRFxljqCbhkZXzPGVgX64Ce4h9Yvwcp4JXJDtSAxnqbiCXce8fd7DTS5j2zPXYrO4sgTNU3I2X7xTB728rbfhfSe1RxMFYCDL7UQ/s3k37o1ljukLiCu46rzHX6hqJx5CgfJeXAbKnReWeW4nJS6yMQuLf2fSTuST93YaS2Zbl+rpESFSMS7mmRayFZya4BIlr9GMmGCeX4VOJ5kJFT/FJ8TKJuEIOI47fIpFNcNSDvn08lE2y8Ysk1eFHNfCua2NbM3FozgnopgqVjYJfVvsbO+WHR0MgnNRtZlU0yF3ZKxu1buyvkAQnH9bba25VQtAcVrDVNyyLXIDOgjsF9z2k2IbLedUkOaUi/TDxJgr0JKlzc9bluLkm4LCg9ETTL9nqdBypVcHElMn+fiq0HmFo4UdBt/ruZOaKq8bYImg6shjqWJ9GpL0mdeWPvqYPvhhD03CASVIC4rRivplbbOlFFvbxnxOTQExSSOz6vKHPXMAV645cbjkJ3cOQ7n1qvlb99qgH3OLgD1NaSqgSmmtkDoRQ6HOV0jyx3IzUPLQ6cFWH0DtIP1YKxMww2Bb4POtVnJaa1sbfNXzo8YrzGtMYO/LVO2yS4PsMILQzCW1DLMVCZanD1Wvpmpv0CvMhzT+/7/CWCPgAewKdQwwTXySMe1Rmvq1NS9tIxq9tGlM+eZcYnpoOaDp91/hrs4Y2r7FDQAAAABJRU5ErkJggg==") center center no-repeat;
}

/*
 * Caption
 */
.mcs-item .mcs-caption {
  display: inline-block;
  vertical-align: bottom;
  position: absolute;
  z-index: 150;
}

.MagicScroll[data-mode="cover-flow"] .mcs-item figcaption.mcs-caption,
.MagicScroll[data-mode="carousel"] .mcs-item figcaption.mcs-caption {
  top: 100%;
}

.MagicScroll[data-mode="scroll"] .mcs-item figure,
.MagicScroll[data-mode="animation"] .mcs-item figure {
  overflow: hidden;
}

.MagicScroll[data-mode="scroll"] .mcs-item .mcs-caption,
.MagicScroll[data-mode="animation"] .mcs-item .mcs-caption {
  left: 0;
  width: 100%;
  bottom: 0;
  -webkit-transition: -webkit-transform .25s;
  transition: -webkit-transform .25s;
  transition: transform .25s;
  transition: transform .25s, -webkit-transform .25s;
  -webkit-transform: translateY(150%);
  transform: translateY(150%);
}

.MagicScroll[data-mode="scroll"] .mcs-item:hover .mcs-caption,
.MagicScroll[data-mode="animation"] .mcs-item:hover .mcs-caption {
  -webkit-transform: translateY(0%);
  transform: translateY(0%);
}

.lt-ie9-magic .MagicScroll[data-mode="scroll"] .mcs-item .mcs-caption,
.lt-ie9-magic .MagicScroll[data-mode="animation"] .mcs-item .mcs-caption {
  bottom: -150%;
}

.lt-ie9-magic .MagicScroll[data-mode="scroll"] .mcs-item:hover .mcs-caption,
.lt-ie9-magic .MagicScroll[data-mode="animation"] .mcs-item:hover .mcs-caption {
  bottom: 0%;
}

/**
 * Buttons & Arrows
 */
.mcs-button {
  cursor: pointer;
  z-index: 1000;
  background-repeat: no-repeat;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  -webkit-transition: opacity .25s linear;
  transition: opacity .25s linear;
}

.MagicScroll:hover > .mcs-button:hover {
  opacity: 1;
}

.mcs-button-arrow {
  z-index: 120;
}

.MagicScroll-horizontal .mcs-button-arrow {
  width: 40px;
  height: 100%;
  top: 0;
}

.MagicScroll-vertical .mcs-button-arrow {
  width: 100%;
  height: 40px;
  left: 0;
}

.MagicScroll-horizontal .mcs-button-arrow-prev {
  left: 0;
  right: auto;
  top: 0;
  bottom: 0;
}

.MagicScroll-horizontal .mcs-button-arrow-next {
  left: auto;
  right: 0;
  top: 0;
  bottom: 0;
}

.MagicScroll-vertical .mcs-button-arrow-prev {
  top: 0;
  bottom: auto;
  left: 0;
  right: 0;
}

.MagicScroll-vertical .mcs-button-arrow-next {
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
}

.MagicScroll[data-mode="carousel"] .mcs-item,
.MagicScroll[data-mode="cover-flow"] .mcs-item {
  overflow: visible;
}

/*
 * Bullets
 */
.mcs-bullets {
  text-align: center;
  display: inline-block !important;
  opacity: 0;
  top: 100%;
}

.mcs-bullets.show {
  opacity: 1.0;
  -webkit-transition: opacity .5s;
  transition: opacity .5s;
}

.MagicScroll-horizontal .mcs-bullets {
  width: 100%;
  left: 0;
}

.MagicScroll-vertical .mcs-bullets {
  top: 0;
  left: 100%;
  display: inline-block;
  vertical-align: middle;
}

.mcs-bullet {
  border-radius: 50%;
  margin: 4px;
  cursor: pointer;
  display: inline-block;
  position: relative;
  text-indent: 9999px;
  vertical-align: middle;
  font: 0/0 a;
  color: transparent;
  outline: none;
}

.mcs-bullet.active {
  cursor: default;
}

/**
 * Animation mode
 */
[data-mode="animation"] div[data-action="exit"],
[data-mode="animation"] div[data-action="enter"] {
  -webkit-animation-duration: 0.35s;
  animation-duration: 0.35s;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

[data-mode="animation"] div[data-action="enter"] {
  -webkit-animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
}

[data-mode="animation"] .mcs-item {
  -webkit-animation-duration: 0;
  -webkit-transform: none;
  -webkit-animation-name: none;
          animation-name: none;
  animation-duration: 0;
}

[data-mode="animation"] .mcs-item[data-animation-nth="1"] {
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="2"] {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="3"] {
  -webkit-animation-delay: 0.25s;
  animation-delay: 0.25s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="4"] {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="5"] {
  -webkit-animation-delay: 0.35s;
  animation-delay: 0.35s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="6"] {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="7"] {
  -webkit-animation-delay: 0.45s;
  animation-delay: 0.45s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="8"] {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="9"] {
  -webkit-animation-delay: 0.55s;
  animation-delay: 0.55s;
}

[data-mode="animation"] .mcs-item[data-animation-nth="10"] {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.MagicScroll-horizontal[data-mode="animation"] [data-forward] [data-entering],
.MagicScroll-horizontal[data-mode="animation"] [data-forward] [data-exited] {
  -webkit-transform: translateX(100000px);
  transform: translateX(100000px);
}

.MagicScroll-horizontal[data-mode="animation"] [data-backward] [data-entering],
.MagicScroll-horizontal[data-mode="animation"] [data-backward] [data-exited] {
  -webkit-transform: translateX(-100000px);
  transform: translateX(-100000px);
}

.MagicScroll-vertical[data-mode="animation"] [data-forward] [data-entering],
.MagicScroll-vertical[data-mode="animation"] [data-forward] [data-exited] {
  -webkit-transform: translateY(100000px);
  transform: translateY(100000px);
}

.MagicScroll-vertical[data-mode="animation"] [data-backward] [data-entering],
.MagicScroll-vertical[data-mode="animation"] [data-backward] [data-exited] {
  -webkit-transform: translateY(-100000px);
  transform: translateY(-100000px);
}

/**
 * SlideIn animation
 */
[data-mode="animation"] .mcs-item[data-action="exit"],
.mcs-slidein[data-mode="animation"] .mcs-item[data-action="exit"] {
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
}

[data-mode="animation"] .mcs-item[data-action="enter"],
.mcs-slidein[data-mode="animation"] .mcs-item[data-action="enter"] {
  -webkit-animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  -webkit-animation-duration: 0.35s;
  animation-duration: 0.35s;
}

/* Horizontal Forward */
.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"],
.mcs-slidein.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: h-forward-exit-slidein;
  animation-name: h-forward-exit-slidein;
}

.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"],
.mcs-slidein.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: h-forward-enter-slidein;
  animation-name: h-forward-enter-slidein;
}

@-webkit-keyframes h-forward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-600px);
    transform: translateX(-600px);
  }
}

@keyframes h-forward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-600px);
    transform: translateX(-600px);
  }
}

@-webkit-keyframes h-forward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateX(180px);
    transform: translateX(180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

@keyframes h-forward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateX(180px);
    transform: translateX(180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

/* Horizontal Backward */
.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"],
.mcs-slidein.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: h-backward-exit-slidein;
  animation-name: h-backward-exit-slidein;
}

.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"],
.mcs-slidein.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: h-backward-enter-slidein;
  animation-name: h-backward-enter-slidein;
}

@-webkit-keyframes h-backward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(600px);
    transform: translateX(600px);
  }
}

@keyframes h-backward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(600px);
    transform: translateX(600px);
  }
}

@-webkit-keyframes h-backward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-180px);
    transform: translateX(-180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

@keyframes h-backward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-180px);
    transform: translateX(-180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

/* Vertical Forward */
.MagicScroll-vertical[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"],
.mcs-slidein.MagicScroll-vertical[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: v-forward-exit-slidein;
  animation-name: v-forward-exit-slidein;
}

.MagicScroll-vertical[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"],
.mcs-slidein.MagicScroll-vertical[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: v-forward-enter-slidein;
  animation-name: v-forward-enter-slidein;
}

@-webkit-keyframes v-forward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-600px);
    transform: translateY(-600px);
  }
}

@keyframes v-forward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-600px);
    transform: translateY(-600px);
  }
}

@-webkit-keyframes v-forward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateY(180px);
    transform: translateY(180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes v-forward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateY(180px);
    transform: translateY(180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/* Vertical Backward */
.MagicScroll-vertical[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"],
.mcs-slidein.MagicScroll-vertical[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: v-backward-exit-slidein;
  animation-name: v-backward-exit-slidein;
}

.MagicScroll-vertical[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"],
.mcs-slidein.MagicScroll-vertical[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: v-backward-enter-slidein;
  animation-name: v-backward-enter-slidein;
}

@-webkit-keyframes v-backward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(600px);
    transform: translateY(600px);
  }
}

@keyframes v-backward-exit-slidein {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(600px);
    transform: translateY(600px);
  }
}

@-webkit-keyframes v-backward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-180px);
    transform: translateY(-180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes v-backward-enter-slidein {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-180px);
    transform: translateY(-180px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/**
 * Bounce animation
 */
.mcs-bounce[data-mode="animation"] .mcs-item[data-action="exit"] {
  -webkit-animation-timing-function: cubic-bezier(0.84, 0, 1, 1);
  animation-timing-function: cubic-bezier(0.84, 0, 1, 1);
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
  /*-webkit-animation-delay: 0s;
            animation-delay: 0s;*/
}

.mcs-bounce[data-mode="animation"] .mcs-item[data-action="enter"] {
  -webkit-animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  animation-timing-function: cubic-bezier(0.12, 0.37, 0.25, 1);
  -webkit-animation-duration: 0.4s;
  animation-duration: 0.4s;
}

/* Horizontal Forward */
.mcs-bounce.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: h-forward-exit-bounce;
  animation-name: h-forward-exit-bounce;
}

.mcs-bounce.MagicScroll-horizontal[data-mode="animation"] [data-forward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: h-forward-enter-bounce;
  animation-name: h-forward-enter-bounce;
}

@-webkit-keyframes h-forward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0) translateZ(-1px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px) translateZ(-1px);
  }
}

@keyframes h-forward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0) translateZ(-1px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px) translateZ(-1px);
  }
}

@-webkit-keyframes h-forward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(3000px);
    transform: translateX(3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
  }
  75% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
  90% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

@keyframes h-forward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(3000px);
    transform: translateX(3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
  }
  75% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
  90% {
    -webkit-transform: translateX(-5px);
    transform: translateX(-5px);
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

/* Horizontal Backward */
.mcs-bounce.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="exit"] {
  -webkit-animation-name: h-backward-exit-bounce;
  animation-name: h-backward-exit-bounce;
}

.mcs-bounce.MagicScroll-horizontal[data-mode="animation"] [data-backward] .mcs-item[data-action="enter"] {
  -webkit-animation-name: h-backward-enter-bounce;
  animation-name: h-backward-enter-bounce;
}

@-webkit-keyframes h-backward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0) translateZ(-1px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px) translateZ(-1px);
  }
}

@keyframes h-backward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0) translateZ(-1px);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px) translateZ(-1px);
  }
}

@-webkit-keyframes h-backward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-3000px);
    transform: translateX(-3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
  }
  75% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  90% {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

@keyframes h-backward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-3000px);
    transform: translateX(-3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
  }
  75% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  90% {
    -webkit-transform: translateX(5px);
    transform: translateX(5px);
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
  }
}

/* Vertical Forward */
.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-forward] div[data-action="exit"] {
  -webkit-animation-name: v-forward-exit-bounce;
  animation-name: v-forward-exit-bounce;
}

.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-forward] div[data-action="enter"] {
  -webkit-animation-name: v-forward-enter-bounce;
  animation-name: v-forward-enter-bounce;
}

.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-forward] [data-entering] {
  -webkit-transform: translateY(100000px);
  transform: translateY(100000px);
}

.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-forward] [data-exited] {
  -webkit-transform: translateY(100000px);
  transform: translateY(100000px);
}

@-webkit-keyframes v-forward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@keyframes v-forward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@-webkit-keyframes v-forward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3000px);
    transform: translateY(3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  75% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  90% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes v-forward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateY(3000px);
    transform: translateY(3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  75% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  90% {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/* Vertical Backward */
.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-backward] div[data-action="exit"] {
  -webkit-animation-name: v-backward-exit-bounce;
  animation-name: v-backward-exit-bounce;
}

.mcs-bounce.MagicScroll-vertical[data-mode="animation"] [data-backward] div[data-action="enter"] {
  -webkit-animation-name: v-backward-enter-bounce;
  animation-name: v-backward-enter-bounce;
}

@-webkit-keyframes v-backward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@keyframes v-backward-exit-bounce {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    opacity: 0.6;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@-webkit-keyframes v-backward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-3000px);
    transform: translateY(-3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
  75% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  90% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

@keyframes v-backward-enter-bounce {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-3000px);
    transform: translateY(-3000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
  75% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  90% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}

/*
 * Arrows
 */
.MagicScroll-horizontal .mcs-button-arrow-prev:before,
.MagicScroll-horizontal .mcs-button-arrow-next:before,
.MagicScroll-vertical .mcs-button-arrow-prev:before,
.MagicScroll-vertical .mcs-button-arrow-next:before {
  content: "";
  top: 50%;
  left: 50%;
  width: 12px;
  height: 12px;
  position: absolute;
  border-width: 3px;
  border-color: rgba(49, 51, 61, 0.6);
  border-style: solid;
  border-right: none;
  border-bottom: none;
  -webkit-transition: border-color .15s linear;
  transition: border-color .15s linear;
}

.MagicScroll-horizontal .mcs-button-arrow-prev:before {
  left: 62%;
  -webkit-transform: translate(-50%, -50%) rotateZ(-45deg);
  transform: translate(-50%, -50%) rotateZ(-45deg);
}

.MagicScroll-horizontal .mcs-button-arrow-next:before {
  left: 40%;
  -webkit-transform: translate(-50%, -50%) rotateZ(135deg);
  transform: translate(-50%, -50%) rotateZ(135deg);
}

.MagicScroll-vertical .mcs-button-arrow-prev:before {
  top: 62%;
  -webkit-transform: translate(-50%, -50%) rotateZ(45deg);
  transform: translate(-50%, -50%) rotateZ(45deg);
}

.MagicScroll-vertical .mcs-button-arrow-next:before {
  top: 40%;
  -webkit-transform: translate(-50%, -50%) rotateZ(-135deg);
  transform: translate(-50%, -50%) rotateZ(-135deg);
}

.mcs-button-arrow.mcs-disabled {
  opacity: 0.01 !important;
}

.MagicScroll > .mcs-button-arrow {
  /*font-size: 20px;*/
  width: 30px;
  height: 30px;
  margin: auto;
  opacity: 0.6;
  -webkit-transition: opacity .15s linear;
  transition: opacity .15s linear;
}

.MagicScroll-horizontal .mcs-button-arrow-prev {
  left: 0;
  right: auto;
  top: 0;
  bottom: 0;
}

.MagicScroll-horizontal .mcs-button-arrow-next {
  left: auto;
  right: 0;
  top: 0;
  bottom: 0;
}

.MagicScroll-vertical .mcs-button-arrow-prev {
  top: 0;
  bottom: auto;
  left: 0;
  right: 0;
}

.MagicScroll-vertical .mcs-button-arrow-next {
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
}

.MagicScroll:hover > .mcs-button-arrow:hover:not(.mcs-disabled) {
  opacity: 1;
}

.MagicScroll:hover > .mcs-button-arrow:hover:not(.mcs-disabled):before {
  border-color: #31333d;
}

.MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow {
  width: 24px;
  height: 24px;
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.75);
  -webkit-box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
          box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
  -webkit-transition: background-color .15s linear;
  transition: background-color .15s linear;
}

.MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow:before {
  width: 8px;
  height: 8px;
}

.MagicScroll-horizontal.MagicScroll-arrows-inside:hover > .mcs-button-arrow:hover:not(.mcs-disabled) {
  background-color: rgba(255, 255, 255, 0.96);
}

.MagicScroll-horizontal.MagicScroll-arrows-inside .mcs-button-arrow-prev {
  left: 5px;
}

.MagicScroll-horizontal.MagicScroll-arrows-inside .mcs-button-arrow-next {
  right: 5px;
}

.MagicScroll-vertical.MagicScroll-arrows-inside .mcs-button-arrow-prev {
  top: 5px;
}

.MagicScroll-vertical.MagicScroll-arrows-inside .mcs-button-arrow-next {
  bottom: 5px;
}

.lt-ie10-magic .MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow {
  border: 1px solid rgba(153, 153, 153, 0.5);
}

.lt-ie9-magic .mcs-button-arrow:before {
  border-color: #83858B;
}

.lt-ie9-magic .MagicScroll:hover > .mcs-button-arrow:hover:before {
  border-color: #31333D;
}

.lt-ie9-magic .MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow:before {
  border-color: #31333D;
}

.lt-ie9-magic .MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow {
  background: #fff;
  border: 1px solid #999;
  filter: alpha(opacity=60);
}

.lt-ie9-magic .MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow:hover {
  filter: alpha(opacity=96);
}

.lt-ie9-magic .mcs-button-arrow.mcs-disabled {
  filter: alpha(opacity=0.01) !important;
}

/*
 * Bullets
 */
.MagicScroll-horizontal .mcs-bullets {
  margin-top: 10px;
}

.MagicScroll-horizontal.MagicScroll-bullets {
  margin-bottom: 35px;
}

.MagicScroll-vertical .mcs-bullets {
  margin-left: 10px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.MagicScroll-vertical.MagicScroll-bullets {
  margin-right: 35px;
}

.mcs-bullet {
  width: 10px;
  height: 10px;
  background-color: #83858B;
}

.mcs-bullet:hover {
  background-color: #5a5a5a;
}

.mcs-bullet.active {
  background-color: transparent;
  border: 1px solid #5a5a5a;
}

/* Caption */
.mcs-item .mcs-caption {
  color: white;
  padding: 5px 0;
  font: normal 9pt/1.2em 'Helvetica Neue', Helvetica, 'Lucida Grande', 'Lucida Sans Unicode', Verdana, Arial, sans-serif;
  text-rendering: geometricPrecision;
}

.MagicScroll[data-mode="scroll"] .mcs-item .mcs-caption,
.MagicScroll[data-mode="animation"] .mcs-item .mcs-caption {
  background-color: #31333D;
  background-color: rgba(49, 51, 61, 0.7);
}

.lt-ie9-magic .MagicScroll[data-mode="scroll"] .mcs-item .mcs-caption,
.lt-ie9-magic .MagicScroll[data-mode="animation"] .mcs-item .mcs-caption {
  filter: alpha(opacity=60);
}

/* Carousel & Cover Flow */
.MagicScroll[data-mode="carousel"],
.MagicScroll[data-mode="cover-flow"] {
  background: #4f4f4f;
}

.MagicScroll[data-mode="carousel"] img,
.MagicScroll[data-mode="cover-flow"] img {
  -webkit-box-shadow: 0px 15px 30px -10px #000;
          box-shadow: 0px 15px 30px -10px #000;
}

.MagicScroll[data-mode="carousel"] figcaption,
.MagicScroll[data-mode="cover-flow"] figcaption {
  padding: 4px 0 0;
  font-size: 10pt;
  font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Helvetica Neue', Arial, Helvetica, sans-serif;
}

/* Misc */
.MagicScroll.mcs-shadows {
  -webkit-box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.15);
}

.MagicScroll.mcs-border .mcs-item {
  background: #fff;
  border: 1px solid #efefef;
}

.MagicScroll-horizontal.mcs-border .mcs-item {
  margin: 0 3px;
}

.MagicScroll-vertical.mcs-border .mcs-item {
  margin: 3px 0;
}

/*
 * Loader
 */
.mcs-loader {
  pointer-events: none;
  position: absolute;
  z-index: 1000;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
}

.mcs-loader .mcs-loader-text {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -10px;
  margin-left: -35px;
  width: 70px;
  height: 20px;
}

.mcs-loader-circles {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 60px;
  height: 60px;
  opacity: 1;
  -webkit-transform: scale(0.6);
  transform: scale(0.6);
}

.mcs-loader-circle {
  position: absolute;
  background-color: #ffffff;
  height: 11px;
  width: 11px;
  border-radius: 50%;
  -webkit-animation-name: MagicCircle;
  -webkit-animation-duration: 0.48s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-direction: linear;
  animation-name: MagicCircle;
  animation-duration: 0.48s;
  animation-iteration-count: infinite;
  animation-direction: linear;
}

.mcs-loader-circle_01 {
  left: 0;
  top: 25px;
  -webkit-animation-delay: 0.18s;
  animation-delay: 0.18s;
}

.mcs-loader-circle_02 {
  left: 7px;
  top: 7px;
  -webkit-animation-delay: 0.24s;
  animation-delay: 0.24s;
}

.mcs-loader-circle_03 {
  left: 25px;
  top: 0;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.mcs-loader-circle_04 {
  right: 7px;
  top: 7px;
  -webkit-animation-delay: 0.36s;
  animation-delay: 0.36s;
}

.mcs-loader-circle_05 {
  right: 0;
  top: 25px;
  -webkit-animation-delay: 0.42s;
  animation-delay: 0.42s;
}

.mcs-loader-circle_06 {
  right: 7px;
  bottom: 7px;
  -webkit-animation-delay: 0.48s;
  animation-delay: 0.48s;
}

.mcs-loader-circle_07 {
  left: 25px;
  bottom: 0;
  -webkit-animation-delay: 0.54s;
  animation-delay: 0.54s;
}

.mcs-loader-circle_08 {
  left: 7px;
  bottom: 7px;
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

@-webkit-keyframes MagicCircle {
  0% {
    background-color: #000000;
  }
  100% {
    background-color: #ffffff;
  }
}

@keyframes MagicCircle {
  0% {
    background-color: #000000;
  }
  100% {
    background-color: #ffffff;
  }
}

.mcs-item-loader {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 40px;
  height: 40px;
  background-size: cover;
  background-repeat: no-repeat;
  background: url("data:image/gif;base64,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") no-repeat center center;
}

.MagicScroll.mcs-rounded {
  border: 1px solid #e1e1e1;
  border-radius: 10px;
  overflow: hidden !important;
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-inside {
  overflow: hidden !important;
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-outside {
  overflow: visible !important;
}

.MagicScroll.mcs-rounded .mcs-button-arrow {
  color: rgba(49, 51, 61, 0.6);
  -webkit-transition: color .15s linear, background-color .15s linear;
  transition: color .15s linear, background-color .15s linear;
}

.MagicScroll.mcs-rounded.MagicScroll-horizontal .mcs-button-arrow {
  width: 30px;
  height: 100%;
}

.MagicScroll.mcs-rounded.MagicScroll-vertical .mcs-button-arrow {
  width: 100%;
  height: 30px;
}

.MagicScroll.mcs-rounded.MagicScroll-horizontal .mcs-button-arrow-prev {
  left: 0;
  border-radius: 10px 0 0 10px;
}

.MagicScroll.mcs-rounded.MagicScroll-horizontal .mcs-button-arrow-next {
  right: 0;
  border-radius: 0 10px 10px 0;
}

.MagicScroll.mcs-rounded.MagicScroll-vertical .mcs-button-arrow-prev {
  top: 0;
  border-radius: 10px 10px 0 0;
}

.MagicScroll.mcs-rounded.MagicScroll-vertical .mcs-button-arrow-next {
  bottom: 0;
  border-radius: 0 0 10px 10px;
}

.MagicScroll.mcs-rounded .mcs-button-arrow.mcs-disabled {
  opacity: 1 !important;
  color: rgba(49, 51, 61, 0.1);
  text-shadow: none !important;
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-outside .mcs-button-arrow {
  background: #efefef;
  opacity: 1;
  -webkit-box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
          box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-inside .mcs-button-arrow:hover:not(.mcs-disabled) {
  background-color: rgba(255, 255, 255, 0.96);
  color: #31333d;
}

.MagicScroll.mcs-rounded.MagicScroll-arrows-inside .mcs-button-arrow {
  background-color: rgba(255, 255, 255, 0.75);
  -webkit-box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
          box-shadow: 0 0 1px rgba(153, 153, 153, 0.5);
}

.lt-ie10-magic .mcs-rounded.MagicScroll-horizontal.MagicScroll-arrows-inside .mcs-button-arrow-prev {
  border-width: 0 1px 0 0;
}

.lt-ie10-magic .mcs-rounded.MagicScroll-horizontal.MagicScroll-arrows-inside .mcs-button-arrow-next {
  border-width: 0 0 0 1px;
}

.lt-ie10-magic .mcs-rounded.MagicScroll-vertical.MagicScroll-arrows-inside .mcs-button-arrow-prev {
  border-width: 0 0 1px 0;
}

.lt-ie10-magic .mcs-rounded.MagicScroll-vertical.MagicScroll-arrows-inside .mcs-button-arrow-next {
  border-width: 1px 0 0 0;
}

.lt-ie9-magic .mcs-rounded.MagicScroll .mcs-button-arrow {
  color: #83858B;
}

.lt-ie9-magic .mcs-rounded.MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow {
  background: #fff;
  filter: alpha(opacity=75);
}

.lt-ie9-magic .mcs-rounded.MagicScroll.MagicScroll-arrows-inside .mcs-button-arrow:hover {
  filter: alpha(opacity=96);
}

.lt-ie9-magic .MagicScroll.mcs-rounded .mcs-button-arrow.mcs-disabled {
  filter: alpha(opacity=75) !important;
  color: #ccc;
}

/*


   Magic Zoom Plus v5.2.4 
   Copyright 2017 Magic Toolbox
   Buy a license: https://www.magictoolbox.com/magiczoomplus/
   License agreement: https://www.magictoolbox.com/license/


*/
/**
 * Core styles
 */
@font-face {
  font-family: "magictoolbox-thin";
  font-weight: normal;
  font-style: normal;
  src: url("../magic-toolbox-fonts/magictoolbox-thin.eot?#iefix") format("embedded-opentype"), url("data:font/opentype;base64,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");
}

.MagicZoom,
.mz-figure,
.mz-lens,
.mz-zoom-window,
.mz-loading,
.mz-hint,
.mz-expand .mz-expand-stage,
.mz-expand .mz-expand-stage .mz-image-stage,
.mz-expand .mz-image-stage > figure .mz-caption,
.mz-thumb img,
.mz-expand-thumbnails,
.mz-expand-controls,
.mz-button {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.MagicZoom,
.mz-figure {
  display: inline-block;
  outline: 0 !important;
  font-size: 0 !important;
  line-height: 100% !important;
  direction: ltr !important;
  position: relative;
  z-index: 1;
  margin: 0 auto;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.MagicZoom {
  -webkit-transform: translate3d(0, 0, 0);
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

figure.mz-figure {
  overflow: hidden;
  margin: 0 !important;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.MagicZoom img,
.mz-figure img {
  border: 0 !important;
  margin: 0 !important;
  outline: 0 !important;
  padding: 0 !important;
}

.MagicZoom > img,
.mz-figure > img {
  width: 100%;
  height: auto;
}

.ie8-magic .MagicZoom > img,
.ie8-magic .mz-figure > img {
  width: 100%;
  max-width: none !important;
}

.mz-figure.mz-no-zoom.mz-no-expand,
.mz-expand .mz-figure.mz-no-zoom {
  cursor: default !important;
}

.mz-figure.mz-active,
.mz-expand {
  -ms-touch-action: none;
  touch-action: none;
}

.mz-lens,
.mz-zoom-window {
  position: absolute !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.mz-lens img,
.mz-zoom-window img {
  position: absolute !important;
  max-width: none !important;
  max-height: none !important;
}

.mz-lens img {
  -webkit-transition: none !important;
  transition: none !important;
}

.mz-zoom-window {
  z-index: 2000000000;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.mz-zoom-window.mz-magnifier {
  -webkit-mask-image: -webkit-radial-gradient(circle, white, black);
  -webkit-mask-clip: content;
  cursor: none;
}

.mz-figure.mz-active .mz-zoom-window.mz-magnifier {
  pointer-events: auto !important;
  cursor: inherit !important;
}

.mz-zoom-window.mz-magnifier.mz-expanded {
  z-index: 2147483647;
}

.mz-zoom-window img {
  width: auto;
  height: auto;
  left: -1000%;
  right: -1000%;
  top: -1000%;
  bottom: -1000%;
  margin: auto !important;
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-transform-origin: 50% 50% !important;
  transform-origin: 50% 50% !important;
}

.mz-zoom-window.mz-preview img {
  top: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  height: auto !important;
  -webkit-transform: none !important;
  transform: none !important;
}

.lt-ie9-magic .mz-zoom-window img {
  margin: 0 !important;
}

.mz-expand-controls {
  z-index: 2147483647;
}

.mz-fade {
  -webkit-transition: opacity .25s;
  transition: opacity .25s;
}

.mz-hidden {
  opacity: 0;
}

.mz-visible {
  opacity: 1;
}

.mobile-magic .mz-expand .mz-expand-bg {
  -webkit-transform-style: flat !important;
  transform-style: flat !important;
}

.mobile-magic .mz-expand .mz-image-stage > figure .mz-caption {
  display: none !important;
}

.mobile-magic .mz-expand-controls.mz-fade {
  -webkit-transition: none !important;
  transition: none !important;
}

.mobile-magic .mz-expand > .mz-zoom-window {
  top: 0 !important;
  left: 0 !important;
}

.mz-expanded-view-open,
.mz-expanded-view-open body {
  overflow: hidden !important;
}

.mz-expanded-view-open body {
  height: auto !important;
}

/**
 * Main figure
 */
.mz-figure.mz-active {
  background: #fff;
}

.mz-figure.mz-no-zoom,
.mz-figure.mz-click-zoom,
.mz-figure.mz-active {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mz-figure.mz-active.mz-no-expand {
  cursor: crosshair;
}

.mz-figure.mz-active.mz-click-zoom.mz-no-expand {
  cursor: crosshair;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mz-figure.mz-active.mz-magnifier-zoom.mz-hover-zoom.mz-no-expand {
  cursor: none;
}

.mz-figure.mz-magnifier-zoom.mz-active {
  overflow: visible !important;
}

.mz-figure.mz-active > img {
  filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='saturate' values='0'/><feComponentTransfer><feFuncA type='linear' slope='0.6'/></feComponentTransfer></filter></svg>#grayscale");
  -webkit-filter: grayscale(80%) opacity(60%);
  filter: grayscale(80%) opacity(60%);
}

.no-cssfilters-magic .mz-figure.mz-active > img {
  opacity: 0.6;
}

.lt-ie10-magic .mz-figure.mz-active > img {
  opacity: 1;
  filter: progid:DXImageTransform.Microsoft.BasicImage(grayScale=1,opacity=0.6);
}

.mz-figure.mz-active.mz-inner-zoom,
.lt-ie11-magic .mz-expand .mz-figure.mz-active.mz-inner-zoom,
.lt-ie11-magic .mz-figure.mz-active.mz-inner-zoom > img {
  opacity: 0;
}

.lt-ie11-magic .mz-figure.mz-active.mz-inner-zoom,
.lt-ie11-magic .mz-figure.mz-active.mz-inner-zoom > .mz-zoom-window {
  opacity: 1;
}

.lt-ie10-magic .mz-expand .mz-figure.mz-active.mz-inner-zoom,
.lt-ie10-magic .mz-figure.mz-active.mz-inner-zoom > img {
  filter: alpha(opacity=0);
}

.ie9-magic .mz-expand .mz-figure.mz-active.mz-inner-zoom {
  background: transparent;
}

/**
 * Zoom lens
 */
.mz-lens {
  border: 1px solid #aaa;
  border-color: rgba(170, 170, 170, 0.7);
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  cursor: none;
  z-index: 10;
  opacity: 0;
}

.mz-figure.mz-active .mz-lens {
  opacity: 1;
  -webkit-transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9) 0.1s;
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9) 0.1s;
}

.mz-figure.mz-active.mz-magnifier-zoom .mz-lens {
  border-radius: 50%;
  opacity: 0;
  cursor: none;
}

/**
 * Zoom window
 */
.mz-zoom-window {
  background: #fff;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}

.mz-zoom-window.mz-magnifier {
  border-radius: 100%;
  border: 0;
  background: rgba(255, 255, 255, 0.3);
}

.mz-zoom-window.mz-magnifier:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 100%;
  border: 1px solid rgba(170, 170, 170, 0.7);
  -webkit-box-shadow: inset 0 0 20px 1px rgba(0, 0, 0, 0.3);
          box-shadow: inset 0 0 20px 1px rgba(0, 0, 0, 0.3);
  background: transparent;
  z-index: 1;
}

.mz-zoom-window.mz-magnifier.mz-square,
.mz-zoom-window.mz-magnifier.mz-square:before {
  border-radius: 0 !important;
}

.lt-ie9-magic .mz-zoom-window {
  border: 1px solid #e5e5e5;
}

.mz-zoom-window.mz-inner {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

/* Caption in zoom window */
.mz-zoom-window .mz-caption {
  background: #777;
  color: #fff;
  font-size: 10pt;
  opacity: 0.8;
  position: absolute;
  top: 0;
  z-index: 150;
  padding: 3px;
  width: 100%;
  line-height: normal !important;
  text-align: center !important;
}

.lt-ie9-magic .mz-zoom-window .mz-caption {
  filter: alpha(opacity=80);
}

.mz-zoom-window.caption-bottom .mz-caption {
  top: auto;
  bottom: 0;
}

.mz-zoom-window.mz-expanded > .mz-caption {
  display: none;
}

/* Zoom window animations */
.mz-zoom-window.mz-deactivating,
.mz-zoom-window.mz-activating {
  -webkit-transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), -webkit-transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), -webkit-transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9), -webkit-transform 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
}

.mz-zoom-window.mz-deactivating {
  -webkit-transition-duration: .25s, .25s, .25s;
  transition-duration: .25s, .25s, .25s;
}

.mz-zoom-window.mz-p-right,
.mz-zoom-window.mz-p-left,
.mz-zoom-window.mz-p-top,
.mz-zoom-window.mz-p-bottom {
  opacity: 0;
  z-index: -100;
}

.mz-zoom-window.mz-p-right {
  -webkit-transform: translate3d(-20%, 0, 0);
  transform: translate3d(-20%, 0, 0);
}

.mz-zoom-window.mz-p-left {
  -webkit-transform: translate3d(20%, 0, 0);
  transform: translate3d(20%, 0, 0);
}

.mz-zoom-window.mz-p-top {
  -webkit-transform: translate3d(0, 20%, 0);
  transform: translate3d(0, 20%, 0);
}

.mz-zoom-window.mz-p-bottom {
  -webkit-transform: translate3d(0, -20%, 0);
  transform: translate3d(0, -20%, 0);
}

/* Inner mode animation */
.mz-zoom-window > img {
  -webkit-transform: translate3d(0, 0, 0) scale(1);
  transform: translate3d(0, 0, 0) scale(1);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.mz-zoom-window.mz-p-inner.mz-deactivating > img,
.mz-zoom-window.mz-p-inner.mz-activating > img {
  -webkit-transition: -webkit-transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9) !important;
  transition: -webkit-transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9) !important;
  transition: transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9) !important;
  transition: transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9), -webkit-transform 0.22s cubic-bezier(0.25, 0.5, 0.5, 0.9) !important;
}

/* Magnifier mode animation */
.mz-zoom-window.mz-p-magnifier {
  -webkit-transform: scale(0.1);
  transform: scale(0.1);
}

/* Preview mode animation */
.mz-zoom-window.mz-preview.mz-deactivating,
.mz-zoom-window.mz-preview.mz-activating,
.mz-zoom-window.mz-custom.mz-deactivating,
.mz-zoom-window.mz-custom.mz-activating {
  -webkit-transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
  transition: opacity 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9);
}

.mz-zoom-window.mz-preview.mz-deactivating,
.mz-zoom-window.mz-custom.mz-deactivating {
  -webkit-transition-duration: .2s;
  transition-duration: .2s;
}

.mz-zoom-window.mz-p-preview,
.mz-zoom-window.mz-p-custom {
  opacity: 0;
}

/**
 * Hint & Loading
 */
.mz-hint,
.mz-loading {
  color: #eee;
  background: rgba(49, 51, 61, 0.7);
  font: normal 12px/1.2em 'Lucida Grande', 'Lucida Sans Unicode', Verdana, 'Helvetica Neue', Arial, Helvetica, sans-serif;
  text-decoration: none;
  text-align: center;
  direction: ltr;
  display: inline-block;
  margin: 0;
  position: absolute;
  z-index: 1000;
  pointer-events: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.mz-hint {
  bottom: 8px;
  left: 0;
  right: 0;
  padding: 0 10%;
  background-color: transparent;
  -webkit-transition: opacity 0.25s ease, z-index 0.25s ease;
  transition: opacity 0.25s ease, z-index 0.25s ease;
}

.mz-hint-message {
  display: inline-block;
  background: rgba(49, 51, 61, 0.7);
  border-radius: 2em;
  padding: .7em 1.1em;
}

.mz-hint-message:before {
  content: '\02295';
  font-family: serif;
  font-size: 1.5em;
  speak: none;
  text-align: center;
  vertical-align: -2px;
  margin-right: 6px;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.mobile-magic .mz-hint-message:before {
  display: none;
}

.mz-hint-hidden {
  opacity: 0;
  z-index: -1;
  -webkit-transition-delay: .6s;
  transition-delay: .6s;
}

/* Hint in the expanded view on mobile */
.mz-expand .mz-hint {
  font-size: 18px;
  line-height: 1.1em;
  top: 50%;
  bottom: auto;
  margin: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.mz-expand .mz-hint-message {
  padding: 1.1em;
}

.mz-expand .mz-hint-message:before {
  display: none;
}

.mz-expand .mz-hint-hidden {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
  opacity: 0;
}

/* Loading indicator */
.mz-loading {
  font-size: 0;
  border-radius: 100%;
  opacity: 0;
  padding: 0;
  width: 36px;
  height: 36px;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.mz-loading:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 24px;
  height: 24px;
  margin: auto;
  text-indent: -9999em;
  border-radius: 50%;
  border: 2px solid white;
  border-top-color: transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mz-loading.shown {
  opacity: 1;
  z-index: 1;
  -webkit-transition: opacity 0s;
  transition: opacity 0s;
}

.mz-loading.shown:after {
  -webkit-animation: spin-loading .9s infinite linear;
  animation: spin-loading .9s infinite linear;
}

@-webkit-keyframes spin-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spin-loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.lt-ie10-magic .mz-loading {
  border-radius: 2em;
  font-size: 12px;
  padding: .7em 1.1em;
  width: auto;
  height: auto;
}

.lt-ie10-magic .mz-loading:after {
  content: 'Loading...';
  text-indent: 0;
  border: none;
  position: relative;
}

.lt-ie9-magic .mz-loading {
  filter: alpha(opacity=0);
  right: 0;
  left: 0;
  width: 126px;
  margin: auto;
}

.lt-ie9-magic .mz-hint-message,
.lt-ie9-magic .mz-loading.shown {
  background: transparent !important;
  filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#7c31333D', EndColorStr='#7c31333D');
}

.lt-ie9-magic .mz-hint-hidden {
  filter: alpha(opacity=0);
}

/**
 * Expanded view
 */
.mz-expand,
.mz-expand .mz-expand-bg,
.mz-expand .mz-expand-bg > img,
.mz-expand .mz-expand-bg > svg,
.mz-expand .mz-expand-stage,
.mz-expand .mz-expand-stage .mz-image-stage {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.mz-expand .mz-expand-bg,
.mz-expand .mz-expand-bg > img,
.mz-expand .mz-expand-bg > svg {
  width: auto !important;
  height: auto !important;
}

.mz-expand .mz-expand-bg,
.mz-expand .mz-expand-bg > svg {
  min-width: 100% !important;
  min-height: 100% !important;
}

.mz-expand {
  background-color: black;
  text-align: center;
  vertical-align: middle;
  display: block;
  overflow: hidden;
  z-index: 2100000000;
  position: fixed;
  width: auto;
  height: auto;
  -webkit-perspective: 600px;
  perspective: 600px;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -ms-overflow-style: none;
}

/* Expanded view background */
.mz-expand .mz-expand-bg {
  display: inline-block;
  vertical-align: middle;
  margin: auto;
  z-index: -100;
  max-width: none !important;
  max-height: none !important;
  -webkit-transform: translate3d(0, 0, 0) scale(10) rotate(0.01deg);
  transform: translate3d(0, 0, 0) scale(10) rotate(0.01deg);
  -webkit-perspective: 600px;
  perspective: 600px;
  background-repeat: no-repeat;
  background-size: cover;
}

.mz-expand .mz-expand-bg > img {
  margin: auto;
  filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='blur'><feGaussianBlur stdDeviation='80' in='SourceGraphic'></feGaussianBlur></filter></svg>#blur");
  -webkit-filter: blur(20px) brightness(60%);
  filter: blur(20px) brightness(60%);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.mz-expand .mz-expand-bg > svg {
  margin: auto;
  opacity: .6;
}

[data-magic-ua=edge] .mz-expand .mz-expand-bg,
.lt-ie10-magic .mz-expand .mz-expand-bg {
  display: none !important;
}

.lt-ie9-magic .mz-expand {
  background: #1f1f1f;
}

[data-magic-ua=edge] .mz-expand {
  background-color: rgba(31, 31, 31, 0.96);
}

/** Plain backgrounds: dark-bg, white-bg **/
.mz-expand.plain-bg .mz-expand-bg,
.mz-expand.dark-bg .mz-expand-bg,
.mz-expand.white-bg .mz-expand-bg {
  display: none !important;
}

.mz-expand.dark-bg {
  background-color: #1f1f1f;
  background-color: rgba(31, 31, 31, 0.96);
}

.mz-expand.white-bg {
  background-color: #fff;
}

/* Expanded view stage */
.mz-expand .mz-expand-stage {
  z-index: 2100000000;
  padding: 0;
}

.mz-expand .mz-expand-stage .mz-image-stage {
  z-index: 50;
  left: 120px;
  right: 120px;
  padding: 20px 0 40px 0;
  margin: 0;
  text-align: center;
  vertical-align: middle;
  -webkit-perspective: 600px;
  perspective: 600px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.mz-expand .mz-expand-stage.with-thumbs .mz-image-stage {
  padding-bottom: 120px;
}

.mz-expand .mz-expand-stage.mz-zoom-in .mz-image-stage {
  padding: 0 !important;
  left: 0;
  right: 0;
}

.mz-expand .mz-image-stage > figure:before,
.mz-expand .mz-image-stage:before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  font-size: 0;
  line-height: 100%;
  width: 0;
}

.mz-expand .mz-image-stage > figure {
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  padding: 0;
  margin: 0;
  display: inline-block;
  vertical-align: middle;
  font-size: 0;
  line-height: 100%;
  position: relative;
}

.mz-expand .mz-figure {
  overflow: visible;
  max-width: 100% !important;
}

.mz-expand .mz-figure > img {
  max-width: 100%;
  width: auto;
  height: auto;
}

.mz-expand .mz-zoom-in .mz-image-stage > figure,
.mz-expand .mz-zoom-in .mz-image-stage > figure .mz-figure.mz-activating,
.mz-expand .mz-zoom-in .mz-image-stage > figure .mz-figure.mz-active {
  width: 100%;
  height: 100%;
}

.mz-expand .mz-figure {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mz-expand .mz-figure.mz-active {
  cursor: crosshair;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

/* When inner zoom is always shown */
.mz-expand .mz-expand-stage.mz-zoom-in.mz-always-zoom .mz-image-stage > figure > figure > img {
  z-index: 1;
  position: absolute !important;
  top: -5000px !important;
  bottom: -5000px !important;
  left: -5000px !important;
  right: -5000px !important;
  margin: auto !important;
}

.lt-ie10-magic .mz-zoom-window.mz-expanded img {
  filter: alpha(opacity=100);
}

.lt-ie10-magic .mz-expand .mz-figure.mz-magnifier-zoom {
  overflow: hidden;
  filter: alpha(opacity=100);
}

/* Caption in expanded view */
.mz-expand .mz-caption {
  color: #fff;
  text-shadow: 0px 0px 46px #000;
  padding: 10px 4px;
  font: normal 10pt/1em 'Lucida Grande', 'Lucida Sans Unicode', Verdana, 'Helvetica Neue', Arial, Helvetica, sans-serif;
  text-align: center;
  width: 100%;
  position: absolute;
  left: 0;
  opacity: 0;
}

.mz-expand .mz-caption.mz-show {
  -webkit-transition: opacity 0.15s ease-out;
  transition: opacity 0.15s ease-out;
  opacity: 1;
}

.mz-expand .mz-caption a {
  color: inherit;
  cursor: pointer;
}

.mz-expand.white-bg .mz-caption {
  color: #555;
  text-shadow: none;
}

.lt-ie9-magic .mz-expand .mz-caption {
  top: 100%;
}

.mz-expand .mz-zoom-window {
  -webkit-box-shadow: none;
          box-shadow: none;
  background: transparent;
}

.lt-ie9-magic .mz-expand .mz-zoom-window {
  border: 0;
}

/* Expanded view on mobile */
.mobile-magic .mz-expand-stage .mz-expand-thumbnails,
.mobile-magic .mz-expand-stage .mz-image-stage {
  left: 0px;
  right: 0px;
}

.mobile-magic .mz-expand .mz-expand-stage.with-thumbs {
  bottom: 0px;
}

.mobile-magic .mz-expand-stage .mz-image-stage {
  padding: 0;
}

.mobile-magic .mz-expand .mz-expand-stage.with-thumbs .mz-image-stage {
  padding: 5px 0 60px;
}

.mobile-magic .mz-expand .mz-expand-stage.mz-zoom-in .mz-image-stage {
  padding-top: 0;
}

.mobile-magic .mz-expand .mz-expand-thumbnails {
  padding: 0;
  height: 60px;
}

/**
 * Buttons & Arrows
 */
.mz-expand-controls,
button.mz-button {
  margin: 0 !important;
  padding: 0 !important;
  outline: 0 !important;
}

button.mz-button {
  color: #b4b4b4 !important;
  font: 900 34px/1 'magictoolbox-thin' !important;
  cursor: pointer;
  z-index: 90 !important;
  background-color: transparent !important;
  border: 1px solid rgba(180, 180, 180, 0) !important;
  border-radius: 100% !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  position: absolute !important;
  text-transform: none !important;
  text-align: center;
  speak: none;
  -webkit-font-smoothing: antialiased;
  width: 60px !important;
  height: 60px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
}

button.mz-button:before {
  display: inline;
  position: static;
  color: inherit !important;
  font: inherit !important;
  -webkit-font-smoothing: inherit !important;
}

button.mz-button.mz-button-prev,
button.mz-button.mz-button-next {
  margin: auto 10px !important;
  top: 0 !important;
  bottom: 0 !important;
  overflow: hidden !important;
}

button.mz-button.mz-button-prev {
  left: 0 !important;
}

button.mz-button.mz-button-next {
  right: 0 !important;
}

button.mz-button.mz-button-close {
  font-size: 26px !important;
  margin: 10px !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 95 !important;
}

:root:not(.mobile-magic) button.mz-button {
  color: rgba(180, 180, 180, 0.75) !important;
  -webkit-transform: scale(0.85) !important;
  transform: scale(0.85) !important;
  -webkit-transition: color .25s, border-color .25s, -webkit-transform .25s !important;
  transition: color .25s, border-color .25s, -webkit-transform .25s !important;
  transition: color .25s, border-color .25s, transform .25s !important;
  transition: color .25s, border-color .25s, transform .25s, -webkit-transform .25s !important;
}

:root:not(.mobile-magic) button.mz-button:hover {
  color: #b4b4b4 !important;
  border-color: rgba(180, 180, 180, 0.6) !important;
  -webkit-transform: scale(1) !important;
  transform: scale(1) !important;
}

.mobile-magic button.mz-button {
  -webkit-transition: -webkit-transform .1s !important;
  transition: -webkit-transform .1s !important;
  transition: transform .1s !important;
  transition: transform .1s, -webkit-transform .1s !important;
}

.mobile-magic button.mz-button:active {
  border-color: rgba(180, 180, 180, 0.6) !important;
  -webkit-transform: scale(0.95) !important;
  transform: scale(0.95) !important;
}

/*button.mz-button.mz-button-close:before { content: "\a001"; }
button.mz-button.mz-button-prev:before { content: "\a002";  }
button.mz-button.mz-button-next:before { content: "\a003"; }*/
button.mz-button.mz-button-close:before {
  font-family: FontAwesome !important;
  content: "\f00d" !important;
}

button.mz-button.mz-button-prev:before {
  font-family: FontAwesome !important;
  content: "\f104" !important;
}

button.mz-button.mz-button-next:before {
  font-family: FontAwesome !important;
  content: "\f105" !important;
}

@media screen and (max-device-width: 767px) {
  button.mz-button-prev,
  button.mz-button-next {
    display: none !important;
  }
  .mobile-magic .mz-expand button.mz-button {
    width: 44px !important;
    height: 44px !important;
    font-size: 18px !important;
    color: rgba(255, 255, 255, 0.8) !important;
    background-color: rgba(49, 51, 61, 0.3) !important;
    border-color: transparent !important;
  }
}

.lt-ie9-magic button.mz-button {
  border: 0;
  filter: alpha(opacity=75);
}

.lt-ie9-magic button.mz-button:hover {
  filter: alpha(opacity=100);
}

/**
 * Thumbnails
 */
/* Thumbnails on the page */
a[data-zoom-id],
.mz-thumb, .mz-thumb:focus {
  display: inline-block;
  line-height: 0;
  outline: none;
}

a[data-zoom-id] img,
.mz-thumb img {
  border: 0;
  -webkit-box-shadow: 0 0 1px 0px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 1px 0px rgba(0, 0, 0, 0.3);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mz-thumb:hover:not(.mz-thumb-selected) img {
  -webkit-filter: brightness(75%);
  filter: brightness(75%);
}

.mz-thumb-selected img {
  -webkit-filter: brightness(60%);
  filter: brightness(60%);
}

.no-cssfilters-magic .mz-thumb:hover,
.no-cssfilters-magic .mz-thumb.mz-thumb-selected {
  background: #000;
}

.no-cssfilters-magic .mz-thumb:hover:not(.mz-thumb-selected) img {
  opacity: .75;
  filter: alpha(opacity=75);
}

.no-cssfilters-magic .mz-thumb-selected img {
  opacity: .6;
  filter: alpha(opacity=60);
}

.ie9-magic .mz-thumb img {
  -webkit-box-shadow: 0 0 4px 0px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 4px 0px rgba(0, 0, 0, 0.3);
}

/* Thumbnails in expanded view */
.mz-expand-thumbnails {
  z-index: 50;
  position: absolute;
  bottom: 0;
  left: 65px;
  right: 65px;
  height: 80px;
  padding: 10px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mz-expand-thumbnails .magic-thumbs .magic-thumb {
  padding: 10px 2px;
}

.mz-expand-thumbnails .magic-thumb > img {
  cursor: pointer;
  height: 40px;
  -webkit-box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 5px 1px rgba(0, 0, 0, 0.3);
}

.mz-expand-thumbnails .magic-thumb:not(.magic-thumb-selected) > img:hover {
  -webkit-filter: brightness(70%);
  filter: brightness(70%);
}

.mz-expand-thumbnails .magic-thumb-selected img {
  -webkit-filter: brightness(50%);
  filter: brightness(50%);
}

.mz-expand-thumbnails .magic-thumbs .magic-thumbs-button {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.mz-expand-thumbnails .magic-thumbs .magic-thumbs-button-disabled {
  opacity: 0;
}

.no-cssfilters-magic .mz-expand-thumbnails .magic-thumb:hover:not(.magic-thumb-selected) img {
  opacity: .7;
  filter: alpha(opacity=70);
}

.no-cssfilters-magic .mz-expand-thumbnails .magic-thumb-selected img {
  opacity: .5;
  filter: alpha(opacity=50);
}

/** Hide thumbnails in expanded view with .no-expand-thumbnails class **/
.mz-expand.no-expand-thumbnails .mz-expand-stage.with-thumbs .mz-image-stage {
  padding-bottom: 40px;
}

.mz-expand.no-expand-thumbnails .mz-expand-thumbnails {
  display: none;
}

.mobile-magic .mz-expand.no-expand-thumbnails .mz-expand-stage.with-thumbs .mz-image-stage {
  padding: 0;
}

.magic-thumbs,
.magic-thumbs .magic-thumbs-wrapper,
.magic-thumbs ul,
.magic-thumbs li,
.magic-thumbs li:before,
.magic-thumbs li:after,
.magic-thumbs li img,
.magic-thumbs .magic-thumbs-button {
  margin: 0;
  padding: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.magic-thumbs {
  direction: ltr;
  overflow: visible;
  z-index: 100;
  position: relative;
  left: 0;
  top: 0;
  padding: 0 30px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -ms-touch-action: none;
  touch-action: none;
}

.magic-thumbs {
  width: 100%;
  height: 100%;
  white-space: nowrap;
}

.magic-thumbs.no-buttons {
  padding: 0 !important;
}

.magic-thumbs-wrapper {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  text-align: center;
}

.magic-thumbs ul {
  list-style: none;
  font-size: 0;
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  position: relative;
  white-space: nowrap;
}

.magic-thumbs.no-buttons ul {
  left: 0 !important;
  padding: 0 !important;
  -webkit-transition: none !important;
  transition: none !important;
  -webkit-transform: none !important;
  transform: none !important;
}

.magic-thumbs ul li {
  margin: 0 4px;
  height: 100%;
  width: auto;
  vertical-align: top;
  line-height: 0;
  display: inline-block;
}

.magic-thumbs ul li:after {
  content: '';
  display: inline-block;
  vertical-align: middle;
  height: 100%;
  width: 0;
}

.magic-thumbs ul li > img {
  width: auto;
  height: auto;
  max-width: none !important;
  max-height: 100% !important;
  vertical-align: middle;
}

.ie8-magic .magic-thumbs ul li > img {
  max-width: none !important;
  max-height: none !important;
}

/* vertical */
.magic-thumbs.magic-thumbs-vertical {
  height: 100%;
}

.magic-thumbs-vertical {
  padding: 30px 0;
}

.magic-thumbs-vertical ul {
  height: auto;
  width: 100%;
  white-space: normal;
}

.magic-thumbs-vertical ul li {
  width: 100%;
  height: auto;
}

.magic-thumbs-vertical ul li {
  margin: 4px 0;
}

.magic-thumbs-vertical ul li > img {
  max-width: 100% !important;
  max-height: none !important;
}

.ie8-magic .magic-thumbs-vertical ul li > img {
  width: 100%;
}

/**
 * Buttons
 */
.magic-thumbs button.magic-thumbs-button {
  color: #b4b4b4 !important;
  font: 900 24px/1 'magictoolbox-thin' !important;
  cursor: pointer;
  z-index: 90 !important;
  background-repeat: no-repeat;
  background-color: transparent !important;
  background-image: none;
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  overflow: hidden;
  position: absolute;
  text-transform: none !important;
  speak: none;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  width: 30px;
  height: 100%;
  top: 0;
  bottom: 0;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
}

.magic-thumbs button.magic-thumbs-button:before {
  display: inline;
  position: static;
  color: inherit !important;
  font: inherit !important;
  -webkit-font-smoothing: inherit !important;
}

.magic-thumbs .magic-thumbs-button-prev {
  left: 0;
}

.magic-thumbs .magic-thumbs-button-next {
  right: 0;
}

.magic-thumbs .magic-thumbs-button-prev:before {
  content: "\a002";
}

.magic-thumbs .magic-thumbs-button-next:before {
  content: "\a003";
}

:root:not(.mobile-magic) .magic-thumbs button.magic-thumbs-button {
  color: rgba(180, 180, 180, 0.75) !important;
  -webkit-transform: scale(0.85) !important;
  transform: scale(0.85) !important;
  -webkit-transition: color .25s, -webkit-transform .25s !important;
  transition: color .25s, -webkit-transform .25s !important;
  transition: color .25s, transform .25s !important;
  transition: color .25s, transform .25s, -webkit-transform .25s !important;
}

:root:not(.mobile-magic) .magic-thumbs button.magic-thumbs-button:hover {
  color: #b4b4b4 !important;
  -webkit-transform: scale(1) !important;
  transform: scale(1) !important;
}

/* Vertical buttons */
.magic-thumbs-vertical .magic-thumbs-button {
  width: 100%;
  height: 30px;
  left: 0;
  right: 0;
  top: auto;
  bottom: auto;
}

.magic-thumbs-vertical .magic-thumbs-button-prev {
  top: 0;
}

.magic-thumbs-vertical .magic-thumbs-button-next {
  bottom: 0;
}

.magic-thumbs-vertical .magic-thumbs-button-prev:before {
  content: "\a005";
}

.magic-thumbs-vertical .magic-thumbs-button-next:before {
  content: "\a004";
}

.magic-thumbs.no-buttons .magic-thumbs-button {
  display: none !important;
}

.magic-thumbs-button-disabled {
  opacity: 0.2;
  filter: alpha(opacity=20);
}

[v-cloak] {
  display: none;
}

/**
 * Foundation for Sites by ZURB
 * Version 6.4.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 48em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto;
  }
}

/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Change the default font family in all browsers (opinionated).
     * 2. Correct the line height in all browsers.
     * 3. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}

/* Sections
       ========================================================================== */
/**
     * Remove the margin in all browsers (opinionated).
     */
body {
  margin: 0;
}

/**
     * Add the correct display in IE 9-.
     */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
     * Correct the font size and margin on `h1` elements within `section` and
     * `article` contexts in Chrome, Firefox, and Safari.
     */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block;
}

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px;
}

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
     * Add the correct display in IE.
     */
main {
  display: block;
}

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
     * Remove the outline on focused links when they are also active or hovered
     * in all browsers (opinionated).
     */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
       ========================================================================== */
/**
     * 1. Remove the bottom border in Firefox 39-.
     * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
     */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit;
}

/**
     * Add the correct font weight in Chrome, Edge, and Safari.
     */
b,
strong {
  font-weight: bolder;
}

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
     * Add the correct font style in Android 4.3-.
     */
dfn {
  font-style: italic;
}

/**
     * Add the correct background and color in IE 9-.
     */
mark {
  background-color: #ff0;
  color: #000;
}

/**
     * Add the correct font size in all browsers.
     */
small {
  font-size: 80%;
}

/**
     * Prevent `sub` and `sup` elements from affecting the line height in
     * all browsers.
     */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
audio,
video {
  display: inline-block;
}

/**
     * Add the correct display in iOS 4-7.
     */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
     * Remove the border on images inside links in IE 10-.
     */
img {
  border-style: none;
}

/**
     * Hide the overflow in IE.
     */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
       ========================================================================== */
/**
     * 1. Change the font styles in all browsers (opinionated).
     * 2. Remove the margin in Firefox and Safari.
     */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
     * Show the overflow in IE.
     */
button {
  overflow: visible;
}

/**
     * Remove the inheritance of text transform in Edge, Firefox, and IE.
     * 1. Remove the inheritance of text transform in Firefox.
     */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible;
}

/**
     * 1. Add the correct box sizing in IE 10-.
     * 2. Remove the padding in IE 10-.
     */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
     * Correct the cursor style of increment and decrement buttons in Chrome.
     */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
     * 1. Correct the odd appearance in Chrome and Safari.
     * 2. Correct the outline style in Safari.
     */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
  /**
       * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
       */
}

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
     * 1. Correct the inability to style clickable types in iOS and Safari.
     * 2. Change font properties to `inherit` in Safari.
     */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
     * Change the border, margin, and padding in all browsers (opinionated).
     */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
     * 1. Correct the text wrapping in Edge and IE.
     * 2. Correct the color inheritance from `fieldset` elements in IE.
     * 3. Remove the padding so developers are not caught out when they zero out
     *    `fieldset` elements in all browsers.
     */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */
}

/**
     * 1. Add the correct display in IE 9-.
     * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
     * Remove the default vertical scrollbar in IE.
     */
textarea {
  overflow: auto;
}

/* Interactive
       ========================================================================== */
/*
     * Add the correct display in Edge, IE, and Firefox.
     */
details {
  display: block;
}

/*
     * Add the correct display in all browsers.
     */
summary {
  display: list-item;
}

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block;
}

/* Scripting
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
canvas {
  display: inline-block;
}

/**
     * Add the correct display in IE.
     */
template {
  display: none;
}

/* Hidden
       ========================================================================== */
/**
     * Add the correct display in IE 10-.
     */
[hidden] {
  display: none;
}

.foundation-mq {
  font-family: "small=0em&medium=48em&large=64em&xlarge=75em&xxlarge=90em";
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 14px;
}

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.6;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
}

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0.18rem;
}

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0.18rem;
}

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0.18rem;
  background: transparent;
  line-height: 1;
}

[data-whatinput='mouse'] button {
  outline: 0;
}

pre {
  overflow: auto;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
}

.is-visible {
  display: block !important;
}

.is-hidden {
  display: none !important;
}

.row {
  max-width: 92.85714rem;
  margin-right: auto;
  margin-left: auto;
}

.row::before, .row::after {
  display: table;
  content: ' ';
}

.row::after {
  clear: both;
}

.row.collapse > .column, .row.collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}

.row .row {
  margin-right: -0.35714rem;
  margin-left: -0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem;
  }
}

@media screen and (min-width: 75em) {
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem;
  }
}

@media screen and (min-width: 90em) {
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem;
  }
}

.row .row.collapse {
  margin-right: 0;
  margin-left: 0;
}

.row.expanded {
  max-width: none;
}

.row.expanded .row {
  margin-right: auto;
  margin-left: auto;
}

.row:not(.expanded) .row {
  max-width: none;
}

.row.gutter-small > .column, .row.gutter-small > .columns {
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

.row.gutter-medium > .column, .row.gutter-medium > .columns {
  padding-right: 0.57143rem;
  padding-left: 0.57143rem;
}

.row.gutter-large > .column, .row.gutter-large > .columns {
  padding-right: 0.57143rem;
  padding-left: 0.57143rem;
}

.column, .columns {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .column, .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .column, .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
  float: right;
}

.column.end:last-child:last-child, .end.columns:last-child:last-child {
  float: left;
}

.column.row.row, .row.row.columns {
  float: none;
}

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0;
}

.small-1 {
  width: 8.33333%;
}

.small-push-1 {
  position: relative;
  left: 8.33333%;
}

.small-pull-1 {
  position: relative;
  left: -8.33333%;
}

.small-offset-0 {
  margin-left: 0%;
}

.small-2 {
  width: 16.66667%;
}

.small-push-2 {
  position: relative;
  left: 16.66667%;
}

.small-pull-2 {
  position: relative;
  left: -16.66667%;
}

.small-offset-1 {
  margin-left: 8.33333%;
}

.small-3 {
  width: 25%;
}

.small-push-3 {
  position: relative;
  left: 25%;
}

.small-pull-3 {
  position: relative;
  left: -25%;
}

.small-offset-2 {
  margin-left: 16.66667%;
}

.small-4 {
  width: 33.33333%;
}

.small-push-4 {
  position: relative;
  left: 33.33333%;
}

.small-pull-4 {
  position: relative;
  left: -33.33333%;
}

.small-offset-3 {
  margin-left: 25%;
}

.small-5 {
  width: 41.66667%;
}

.small-push-5 {
  position: relative;
  left: 41.66667%;
}

.small-pull-5 {
  position: relative;
  left: -41.66667%;
}

.small-offset-4 {
  margin-left: 33.33333%;
}

.small-6 {
  width: 50%;
}

.small-push-6 {
  position: relative;
  left: 50%;
}

.small-pull-6 {
  position: relative;
  left: -50%;
}

.small-offset-5 {
  margin-left: 41.66667%;
}

.small-7 {
  width: 58.33333%;
}

.small-push-7 {
  position: relative;
  left: 58.33333%;
}

.small-pull-7 {
  position: relative;
  left: -58.33333%;
}

.small-offset-6 {
  margin-left: 50%;
}

.small-8 {
  width: 66.66667%;
}

.small-push-8 {
  position: relative;
  left: 66.66667%;
}

.small-pull-8 {
  position: relative;
  left: -66.66667%;
}

.small-offset-7 {
  margin-left: 58.33333%;
}

.small-9 {
  width: 75%;
}

.small-push-9 {
  position: relative;
  left: 75%;
}

.small-pull-9 {
  position: relative;
  left: -75%;
}

.small-offset-8 {
  margin-left: 66.66667%;
}

.small-10 {
  width: 83.33333%;
}

.small-push-10 {
  position: relative;
  left: 83.33333%;
}

.small-pull-10 {
  position: relative;
  left: -83.33333%;
}

.small-offset-9 {
  margin-left: 75%;
}

.small-11 {
  width: 91.66667%;
}

.small-push-11 {
  position: relative;
  left: 91.66667%;
}

.small-pull-11 {
  position: relative;
  left: -91.66667%;
}

.small-offset-10 {
  margin-left: 83.33333%;
}

.small-12 {
  width: 100%;
}

.small-offset-11 {
  margin-left: 91.66667%;
}

.small-up-1 > .column, .small-up-1 > .columns {
  float: left;
  width: 100%;
}

.small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
  clear: both;
}

.small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
  float: left;
}

.small-up-2 > .column, .small-up-2 > .columns {
  float: left;
  width: 50%;
}

.small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
  clear: both;
}

.small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
  float: left;
}

.small-up-3 > .column, .small-up-3 > .columns {
  float: left;
  width: 33.33333%;
}

.small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
  clear: both;
}

.small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
  float: left;
}

.small-up-4 > .column, .small-up-4 > .columns {
  float: left;
  width: 25%;
}

.small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
  clear: both;
}

.small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
  float: left;
}

.small-up-5 > .column, .small-up-5 > .columns {
  float: left;
  width: 20%;
}

.small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
  clear: both;
}

.small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
  float: left;
}

.small-up-6 > .column, .small-up-6 > .columns {
  float: left;
  width: 16.66667%;
}

.small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
  clear: both;
}

.small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
  float: left;
}

.small-up-7 > .column, .small-up-7 > .columns {
  float: left;
  width: 14.28571%;
}

.small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
  clear: both;
}

.small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
  float: left;
}

.small-up-8 > .column, .small-up-8 > .columns {
  float: left;
  width: 12.5%;
}

.small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
  clear: both;
}

.small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
  float: left;
}

.small-up-9 > .column, .small-up-9 > .columns {
  float: left;
  width: 11.11111%;
}

.small-up-9 > .column:nth-of-type(1n), .small-up-9 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-9 > .column:nth-of-type(9n+1), .small-up-9 > .columns:nth-of-type(9n+1) {
  clear: both;
}

.small-up-9 > .column:last-child, .small-up-9 > .columns:last-child {
  float: left;
}

.small-up-10 > .column, .small-up-10 > .columns {
  float: left;
  width: 10%;
}

.small-up-10 > .column:nth-of-type(1n), .small-up-10 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-10 > .column:nth-of-type(10n+1), .small-up-10 > .columns:nth-of-type(10n+1) {
  clear: both;
}

.small-up-10 > .column:last-child, .small-up-10 > .columns:last-child {
  float: left;
}

.small-up-11 > .column, .small-up-11 > .columns {
  float: left;
  width: 9.09091%;
}

.small-up-11 > .column:nth-of-type(1n), .small-up-11 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-11 > .column:nth-of-type(11n+1), .small-up-11 > .columns:nth-of-type(11n+1) {
  clear: both;
}

.small-up-11 > .column:last-child, .small-up-11 > .columns:last-child {
  float: left;
}

.small-up-12 > .column, .small-up-12 > .columns {
  float: left;
  width: 8.33333%;
}

.small-up-12 > .column:nth-of-type(1n), .small-up-12 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-12 > .column:nth-of-type(12n+1), .small-up-12 > .columns:nth-of-type(12n+1) {
  clear: both;
}

.small-up-12 > .column:last-child, .small-up-12 > .columns:last-child {
  float: left;
}

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}

.small-collapse .row {
  margin-right: 0;
  margin-left: 0;
}

.expanded.row .small-collapse.row {
  margin-right: 0;
  margin-left: 0;
}

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

.small-centered {
  margin-right: auto;
  margin-left: auto;
}

.small-centered, .small-centered:last-child:not(:first-child) {
  float: none;
  clear: both;
}

.small-uncentered,
.small-push-0,
.small-pull-0 {
  position: static;
  float: left;
  margin-right: 0;
  margin-left: 0;
}

@media print, screen and (min-width: 48em) {
  .medium-1 {
    width: 8.33333%;
  }
  .medium-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .medium-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .medium-offset-0 {
    margin-left: 0%;
  }
  .medium-2 {
    width: 16.66667%;
  }
  .medium-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .medium-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .medium-offset-1 {
    margin-left: 8.33333%;
  }
  .medium-3 {
    width: 25%;
  }
  .medium-push-3 {
    position: relative;
    left: 25%;
  }
  .medium-pull-3 {
    position: relative;
    left: -25%;
  }
  .medium-offset-2 {
    margin-left: 16.66667%;
  }
  .medium-4 {
    width: 33.33333%;
  }
  .medium-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .medium-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .medium-5 {
    width: 41.66667%;
  }
  .medium-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .medium-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .medium-offset-4 {
    margin-left: 33.33333%;
  }
  .medium-6 {
    width: 50%;
  }
  .medium-push-6 {
    position: relative;
    left: 50%;
  }
  .medium-pull-6 {
    position: relative;
    left: -50%;
  }
  .medium-offset-5 {
    margin-left: 41.66667%;
  }
  .medium-7 {
    width: 58.33333%;
  }
  .medium-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .medium-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .medium-8 {
    width: 66.66667%;
  }
  .medium-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .medium-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .medium-offset-7 {
    margin-left: 58.33333%;
  }
  .medium-9 {
    width: 75%;
  }
  .medium-push-9 {
    position: relative;
    left: 75%;
  }
  .medium-pull-9 {
    position: relative;
    left: -75%;
  }
  .medium-offset-8 {
    margin-left: 66.66667%;
  }
  .medium-10 {
    width: 83.33333%;
  }
  .medium-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .medium-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .medium-11 {
    width: 91.66667%;
  }
  .medium-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .medium-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .medium-offset-10 {
    margin-left: 83.33333%;
  }
  .medium-12 {
    width: 100%;
  }
  .medium-offset-11 {
    margin-left: 91.66667%;
  }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
    float: left;
  }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
    float: left;
  }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
    float: left;
  }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
    float: left;
  }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
    float: left;
  }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
    float: left;
  }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
    float: left;
  }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
    float: left;
  }
  .medium-up-9 > .column, .medium-up-9 > .columns {
    float: left;
    width: 11.11111%;
  }
  .medium-up-9 > .column:nth-of-type(1n), .medium-up-9 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-9 > .column:nth-of-type(9n+1), .medium-up-9 > .columns:nth-of-type(9n+1) {
    clear: both;
  }
  .medium-up-9 > .column:last-child, .medium-up-9 > .columns:last-child {
    float: left;
  }
  .medium-up-10 > .column, .medium-up-10 > .columns {
    float: left;
    width: 10%;
  }
  .medium-up-10 > .column:nth-of-type(1n), .medium-up-10 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-10 > .column:nth-of-type(10n+1), .medium-up-10 > .columns:nth-of-type(10n+1) {
    clear: both;
  }
  .medium-up-10 > .column:last-child, .medium-up-10 > .columns:last-child {
    float: left;
  }
  .medium-up-11 > .column, .medium-up-11 > .columns {
    float: left;
    width: 9.09091%;
  }
  .medium-up-11 > .column:nth-of-type(1n), .medium-up-11 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-11 > .column:nth-of-type(11n+1), .medium-up-11 > .columns:nth-of-type(11n+1) {
    clear: both;
  }
  .medium-up-11 > .column:last-child, .medium-up-11 > .columns:last-child {
    float: left;
  }
  .medium-up-12 > .column, .medium-up-12 > .columns {
    float: left;
    width: 8.33333%;
  }
  .medium-up-12 > .column:nth-of-type(1n), .medium-up-12 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-12 > .column:nth-of-type(12n+1), .medium-up-12 > .columns:nth-of-type(12n+1) {
    clear: both;
  }
  .medium-up-12 > .column:last-child, .medium-up-12 > .columns:last-child {
    float: left;
  }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .medium-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .medium-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
  .medium-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .medium-centered, .medium-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .medium-uncentered,
  .medium-push-0,
  .medium-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .large-1 {
    width: 8.33333%;
  }
  .large-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .large-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .large-offset-0 {
    margin-left: 0%;
  }
  .large-2 {
    width: 16.66667%;
  }
  .large-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .large-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .large-offset-1 {
    margin-left: 8.33333%;
  }
  .large-3 {
    width: 25%;
  }
  .large-push-3 {
    position: relative;
    left: 25%;
  }
  .large-pull-3 {
    position: relative;
    left: -25%;
  }
  .large-offset-2 {
    margin-left: 16.66667%;
  }
  .large-4 {
    width: 33.33333%;
  }
  .large-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .large-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .large-5 {
    width: 41.66667%;
  }
  .large-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .large-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .large-offset-4 {
    margin-left: 33.33333%;
  }
  .large-6 {
    width: 50%;
  }
  .large-push-6 {
    position: relative;
    left: 50%;
  }
  .large-pull-6 {
    position: relative;
    left: -50%;
  }
  .large-offset-5 {
    margin-left: 41.66667%;
  }
  .large-7 {
    width: 58.33333%;
  }
  .large-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .large-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .large-8 {
    width: 66.66667%;
  }
  .large-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .large-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .large-offset-7 {
    margin-left: 58.33333%;
  }
  .large-9 {
    width: 75%;
  }
  .large-push-9 {
    position: relative;
    left: 75%;
  }
  .large-pull-9 {
    position: relative;
    left: -75%;
  }
  .large-offset-8 {
    margin-left: 66.66667%;
  }
  .large-10 {
    width: 83.33333%;
  }
  .large-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .large-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .large-11 {
    width: 91.66667%;
  }
  .large-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .large-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .large-offset-10 {
    margin-left: 83.33333%;
  }
  .large-12 {
    width: 100%;
  }
  .large-offset-11 {
    margin-left: 91.66667%;
  }
  .large-up-1 > .column, .large-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
    float: left;
  }
  .large-up-2 > .column, .large-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
    float: left;
  }
  .large-up-3 > .column, .large-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
    float: left;
  }
  .large-up-4 > .column, .large-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
    float: left;
  }
  .large-up-5 > .column, .large-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
    float: left;
  }
  .large-up-6 > .column, .large-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
    float: left;
  }
  .large-up-7 > .column, .large-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
    float: left;
  }
  .large-up-8 > .column, .large-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
    float: left;
  }
  .large-up-9 > .column, .large-up-9 > .columns {
    float: left;
    width: 11.11111%;
  }
  .large-up-9 > .column:nth-of-type(1n), .large-up-9 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-9 > .column:nth-of-type(9n+1), .large-up-9 > .columns:nth-of-type(9n+1) {
    clear: both;
  }
  .large-up-9 > .column:last-child, .large-up-9 > .columns:last-child {
    float: left;
  }
  .large-up-10 > .column, .large-up-10 > .columns {
    float: left;
    width: 10%;
  }
  .large-up-10 > .column:nth-of-type(1n), .large-up-10 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-10 > .column:nth-of-type(10n+1), .large-up-10 > .columns:nth-of-type(10n+1) {
    clear: both;
  }
  .large-up-10 > .column:last-child, .large-up-10 > .columns:last-child {
    float: left;
  }
  .large-up-11 > .column, .large-up-11 > .columns {
    float: left;
    width: 9.09091%;
  }
  .large-up-11 > .column:nth-of-type(1n), .large-up-11 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-11 > .column:nth-of-type(11n+1), .large-up-11 > .columns:nth-of-type(11n+1) {
    clear: both;
  }
  .large-up-11 > .column:last-child, .large-up-11 > .columns:last-child {
    float: left;
  }
  .large-up-12 > .column, .large-up-12 > .columns {
    float: left;
    width: 8.33333%;
  }
  .large-up-12 > .column:nth-of-type(1n), .large-up-12 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-12 > .column:nth-of-type(12n+1), .large-up-12 > .columns:nth-of-type(12n+1) {
    clear: both;
  }
  .large-up-12 > .column:last-child, .large-up-12 > .columns:last-child {
    float: left;
  }
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .large-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .large-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
  .large-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .large-centered, .large-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .large-uncentered,
  .large-push-0,
  .large-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (min-width: 75em) {
  .xlarge-1 {
    width: 8.33333%;
  }
  .xlarge-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .xlarge-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .xlarge-offset-0 {
    margin-left: 0%;
  }
  .xlarge-2 {
    width: 16.66667%;
  }
  .xlarge-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .xlarge-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .xlarge-offset-1 {
    margin-left: 8.33333%;
  }
  .xlarge-3 {
    width: 25%;
  }
  .xlarge-push-3 {
    position: relative;
    left: 25%;
  }
  .xlarge-pull-3 {
    position: relative;
    left: -25%;
  }
  .xlarge-offset-2 {
    margin-left: 16.66667%;
  }
  .xlarge-4 {
    width: 33.33333%;
  }
  .xlarge-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .xlarge-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .xlarge-offset-3 {
    margin-left: 25%;
  }
  .xlarge-5 {
    width: 41.66667%;
  }
  .xlarge-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .xlarge-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .xlarge-offset-4 {
    margin-left: 33.33333%;
  }
  .xlarge-6 {
    width: 50%;
  }
  .xlarge-push-6 {
    position: relative;
    left: 50%;
  }
  .xlarge-pull-6 {
    position: relative;
    left: -50%;
  }
  .xlarge-offset-5 {
    margin-left: 41.66667%;
  }
  .xlarge-7 {
    width: 58.33333%;
  }
  .xlarge-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .xlarge-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .xlarge-offset-6 {
    margin-left: 50%;
  }
  .xlarge-8 {
    width: 66.66667%;
  }
  .xlarge-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .xlarge-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .xlarge-offset-7 {
    margin-left: 58.33333%;
  }
  .xlarge-9 {
    width: 75%;
  }
  .xlarge-push-9 {
    position: relative;
    left: 75%;
  }
  .xlarge-pull-9 {
    position: relative;
    left: -75%;
  }
  .xlarge-offset-8 {
    margin-left: 66.66667%;
  }
  .xlarge-10 {
    width: 83.33333%;
  }
  .xlarge-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .xlarge-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .xlarge-offset-9 {
    margin-left: 75%;
  }
  .xlarge-11 {
    width: 91.66667%;
  }
  .xlarge-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .xlarge-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .xlarge-offset-10 {
    margin-left: 83.33333%;
  }
  .xlarge-12 {
    width: 100%;
  }
  .xlarge-offset-11 {
    margin-left: 91.66667%;
  }
  .xlarge-up-1 > .column, .xlarge-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .xlarge-up-1 > .column:nth-of-type(1n), .xlarge-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-1 > .column:nth-of-type(1n+1), .xlarge-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .xlarge-up-1 > .column:last-child, .xlarge-up-1 > .columns:last-child {
    float: left;
  }
  .xlarge-up-2 > .column, .xlarge-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .xlarge-up-2 > .column:nth-of-type(1n), .xlarge-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-2 > .column:nth-of-type(2n+1), .xlarge-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .xlarge-up-2 > .column:last-child, .xlarge-up-2 > .columns:last-child {
    float: left;
  }
  .xlarge-up-3 > .column, .xlarge-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .xlarge-up-3 > .column:nth-of-type(1n), .xlarge-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-3 > .column:nth-of-type(3n+1), .xlarge-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .xlarge-up-3 > .column:last-child, .xlarge-up-3 > .columns:last-child {
    float: left;
  }
  .xlarge-up-4 > .column, .xlarge-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .xlarge-up-4 > .column:nth-of-type(1n), .xlarge-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-4 > .column:nth-of-type(4n+1), .xlarge-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .xlarge-up-4 > .column:last-child, .xlarge-up-4 > .columns:last-child {
    float: left;
  }
  .xlarge-up-5 > .column, .xlarge-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .xlarge-up-5 > .column:nth-of-type(1n), .xlarge-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-5 > .column:nth-of-type(5n+1), .xlarge-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .xlarge-up-5 > .column:last-child, .xlarge-up-5 > .columns:last-child {
    float: left;
  }
  .xlarge-up-6 > .column, .xlarge-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .xlarge-up-6 > .column:nth-of-type(1n), .xlarge-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-6 > .column:nth-of-type(6n+1), .xlarge-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .xlarge-up-6 > .column:last-child, .xlarge-up-6 > .columns:last-child {
    float: left;
  }
  .xlarge-up-7 > .column, .xlarge-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .xlarge-up-7 > .column:nth-of-type(1n), .xlarge-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-7 > .column:nth-of-type(7n+1), .xlarge-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .xlarge-up-7 > .column:last-child, .xlarge-up-7 > .columns:last-child {
    float: left;
  }
  .xlarge-up-8 > .column, .xlarge-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .xlarge-up-8 > .column:nth-of-type(1n), .xlarge-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-8 > .column:nth-of-type(8n+1), .xlarge-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .xlarge-up-8 > .column:last-child, .xlarge-up-8 > .columns:last-child {
    float: left;
  }
  .xlarge-up-9 > .column, .xlarge-up-9 > .columns {
    float: left;
    width: 11.11111%;
  }
  .xlarge-up-9 > .column:nth-of-type(1n), .xlarge-up-9 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-9 > .column:nth-of-type(9n+1), .xlarge-up-9 > .columns:nth-of-type(9n+1) {
    clear: both;
  }
  .xlarge-up-9 > .column:last-child, .xlarge-up-9 > .columns:last-child {
    float: left;
  }
  .xlarge-up-10 > .column, .xlarge-up-10 > .columns {
    float: left;
    width: 10%;
  }
  .xlarge-up-10 > .column:nth-of-type(1n), .xlarge-up-10 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-10 > .column:nth-of-type(10n+1), .xlarge-up-10 > .columns:nth-of-type(10n+1) {
    clear: both;
  }
  .xlarge-up-10 > .column:last-child, .xlarge-up-10 > .columns:last-child {
    float: left;
  }
  .xlarge-up-11 > .column, .xlarge-up-11 > .columns {
    float: left;
    width: 9.09091%;
  }
  .xlarge-up-11 > .column:nth-of-type(1n), .xlarge-up-11 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-11 > .column:nth-of-type(11n+1), .xlarge-up-11 > .columns:nth-of-type(11n+1) {
    clear: both;
  }
  .xlarge-up-11 > .column:last-child, .xlarge-up-11 > .columns:last-child {
    float: left;
  }
  .xlarge-up-12 > .column, .xlarge-up-12 > .columns {
    float: left;
    width: 8.33333%;
  }
  .xlarge-up-12 > .column:nth-of-type(1n), .xlarge-up-12 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-12 > .column:nth-of-type(12n+1), .xlarge-up-12 > .columns:nth-of-type(12n+1) {
    clear: both;
  }
  .xlarge-up-12 > .column:last-child, .xlarge-up-12 > .columns:last-child {
    float: left;
  }
  .xlarge-collapse > .column, .xlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .xlarge-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .xlarge-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .xlarge-uncollapse > .column, .xlarge-uncollapse > .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
  .xlarge-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .xlarge-centered, .xlarge-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .xlarge-uncentered,
  .xlarge-push-0,
  .xlarge-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

@media screen and (min-width: 90em) {
  .xxlarge-1 {
    width: 8.33333%;
  }
  .xxlarge-push-1 {
    position: relative;
    left: 8.33333%;
  }
  .xxlarge-pull-1 {
    position: relative;
    left: -8.33333%;
  }
  .xxlarge-offset-0 {
    margin-left: 0%;
  }
  .xxlarge-2 {
    width: 16.66667%;
  }
  .xxlarge-push-2 {
    position: relative;
    left: 16.66667%;
  }
  .xxlarge-pull-2 {
    position: relative;
    left: -16.66667%;
  }
  .xxlarge-offset-1 {
    margin-left: 8.33333%;
  }
  .xxlarge-3 {
    width: 25%;
  }
  .xxlarge-push-3 {
    position: relative;
    left: 25%;
  }
  .xxlarge-pull-3 {
    position: relative;
    left: -25%;
  }
  .xxlarge-offset-2 {
    margin-left: 16.66667%;
  }
  .xxlarge-4 {
    width: 33.33333%;
  }
  .xxlarge-push-4 {
    position: relative;
    left: 33.33333%;
  }
  .xxlarge-pull-4 {
    position: relative;
    left: -33.33333%;
  }
  .xxlarge-offset-3 {
    margin-left: 25%;
  }
  .xxlarge-5 {
    width: 41.66667%;
  }
  .xxlarge-push-5 {
    position: relative;
    left: 41.66667%;
  }
  .xxlarge-pull-5 {
    position: relative;
    left: -41.66667%;
  }
  .xxlarge-offset-4 {
    margin-left: 33.33333%;
  }
  .xxlarge-6 {
    width: 50%;
  }
  .xxlarge-push-6 {
    position: relative;
    left: 50%;
  }
  .xxlarge-pull-6 {
    position: relative;
    left: -50%;
  }
  .xxlarge-offset-5 {
    margin-left: 41.66667%;
  }
  .xxlarge-7 {
    width: 58.33333%;
  }
  .xxlarge-push-7 {
    position: relative;
    left: 58.33333%;
  }
  .xxlarge-pull-7 {
    position: relative;
    left: -58.33333%;
  }
  .xxlarge-offset-6 {
    margin-left: 50%;
  }
  .xxlarge-8 {
    width: 66.66667%;
  }
  .xxlarge-push-8 {
    position: relative;
    left: 66.66667%;
  }
  .xxlarge-pull-8 {
    position: relative;
    left: -66.66667%;
  }
  .xxlarge-offset-7 {
    margin-left: 58.33333%;
  }
  .xxlarge-9 {
    width: 75%;
  }
  .xxlarge-push-9 {
    position: relative;
    left: 75%;
  }
  .xxlarge-pull-9 {
    position: relative;
    left: -75%;
  }
  .xxlarge-offset-8 {
    margin-left: 66.66667%;
  }
  .xxlarge-10 {
    width: 83.33333%;
  }
  .xxlarge-push-10 {
    position: relative;
    left: 83.33333%;
  }
  .xxlarge-pull-10 {
    position: relative;
    left: -83.33333%;
  }
  .xxlarge-offset-9 {
    margin-left: 75%;
  }
  .xxlarge-11 {
    width: 91.66667%;
  }
  .xxlarge-push-11 {
    position: relative;
    left: 91.66667%;
  }
  .xxlarge-pull-11 {
    position: relative;
    left: -91.66667%;
  }
  .xxlarge-offset-10 {
    margin-left: 83.33333%;
  }
  .xxlarge-12 {
    width: 100%;
  }
  .xxlarge-offset-11 {
    margin-left: 91.66667%;
  }
  .xxlarge-up-1 > .column, .xxlarge-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .xxlarge-up-1 > .column:nth-of-type(1n), .xxlarge-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-1 > .column:nth-of-type(1n+1), .xxlarge-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .xxlarge-up-1 > .column:last-child, .xxlarge-up-1 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-2 > .column, .xxlarge-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .xxlarge-up-2 > .column:nth-of-type(1n), .xxlarge-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-2 > .column:nth-of-type(2n+1), .xxlarge-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .xxlarge-up-2 > .column:last-child, .xxlarge-up-2 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-3 > .column, .xxlarge-up-3 > .columns {
    float: left;
    width: 33.33333%;
  }
  .xxlarge-up-3 > .column:nth-of-type(1n), .xxlarge-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-3 > .column:nth-of-type(3n+1), .xxlarge-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .xxlarge-up-3 > .column:last-child, .xxlarge-up-3 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-4 > .column, .xxlarge-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .xxlarge-up-4 > .column:nth-of-type(1n), .xxlarge-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-4 > .column:nth-of-type(4n+1), .xxlarge-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .xxlarge-up-4 > .column:last-child, .xxlarge-up-4 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-5 > .column, .xxlarge-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .xxlarge-up-5 > .column:nth-of-type(1n), .xxlarge-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-5 > .column:nth-of-type(5n+1), .xxlarge-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .xxlarge-up-5 > .column:last-child, .xxlarge-up-5 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-6 > .column, .xxlarge-up-6 > .columns {
    float: left;
    width: 16.66667%;
  }
  .xxlarge-up-6 > .column:nth-of-type(1n), .xxlarge-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-6 > .column:nth-of-type(6n+1), .xxlarge-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .xxlarge-up-6 > .column:last-child, .xxlarge-up-6 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-7 > .column, .xxlarge-up-7 > .columns {
    float: left;
    width: 14.28571%;
  }
  .xxlarge-up-7 > .column:nth-of-type(1n), .xxlarge-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-7 > .column:nth-of-type(7n+1), .xxlarge-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .xxlarge-up-7 > .column:last-child, .xxlarge-up-7 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-8 > .column, .xxlarge-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .xxlarge-up-8 > .column:nth-of-type(1n), .xxlarge-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-8 > .column:nth-of-type(8n+1), .xxlarge-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .xxlarge-up-8 > .column:last-child, .xxlarge-up-8 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-9 > .column, .xxlarge-up-9 > .columns {
    float: left;
    width: 11.11111%;
  }
  .xxlarge-up-9 > .column:nth-of-type(1n), .xxlarge-up-9 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-9 > .column:nth-of-type(9n+1), .xxlarge-up-9 > .columns:nth-of-type(9n+1) {
    clear: both;
  }
  .xxlarge-up-9 > .column:last-child, .xxlarge-up-9 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-10 > .column, .xxlarge-up-10 > .columns {
    float: left;
    width: 10%;
  }
  .xxlarge-up-10 > .column:nth-of-type(1n), .xxlarge-up-10 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-10 > .column:nth-of-type(10n+1), .xxlarge-up-10 > .columns:nth-of-type(10n+1) {
    clear: both;
  }
  .xxlarge-up-10 > .column:last-child, .xxlarge-up-10 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-11 > .column, .xxlarge-up-11 > .columns {
    float: left;
    width: 9.09091%;
  }
  .xxlarge-up-11 > .column:nth-of-type(1n), .xxlarge-up-11 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-11 > .column:nth-of-type(11n+1), .xxlarge-up-11 > .columns:nth-of-type(11n+1) {
    clear: both;
  }
  .xxlarge-up-11 > .column:last-child, .xxlarge-up-11 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-12 > .column, .xxlarge-up-12 > .columns {
    float: left;
    width: 8.33333%;
  }
  .xxlarge-up-12 > .column:nth-of-type(1n), .xxlarge-up-12 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-12 > .column:nth-of-type(12n+1), .xxlarge-up-12 > .columns:nth-of-type(12n+1) {
    clear: both;
  }
  .xxlarge-up-12 > .column:last-child, .xxlarge-up-12 > .columns:last-child {
    float: left;
  }
  .xxlarge-collapse > .column, .xxlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .xxlarge-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .xxlarge-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .xxlarge-uncollapse > .column, .xxlarge-uncollapse > .columns {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
  .xxlarge-centered {
    margin-right: auto;
    margin-left: auto;
  }
  .xxlarge-centered, .xxlarge-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .xxlarge-uncentered,
  .xxlarge-push-0,
  .xxlarge-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0;
  }
}

.column-block {
  margin-bottom: 0.71429rem;
}

.column-block > :last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 48em) {
  .column-block {
    margin-bottom: 1.14286rem;
  }
  .column-block > :last-child {
    margin-bottom: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .column-block {
    margin-bottom: 1.14286rem;
  }
  .column-block > :last-child {
    margin-bottom: 0;
  }
}

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.3;
  text-rendering: optimizeLegibility;
}

em,
i {
  font-style: italic;
  line-height: inherit;
}

strong,
b {
  font-weight: bold;
  line-height: inherit;
}

small {
  font-size: 80%;
  line-height: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: bold;
  color: inherit;
  text-rendering: optimizeLegibility;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  line-height: 0;
  color: #dddddd;
}

h1 {
  font-size: 1.28571rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h2 {
  font-size: 1.14286rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h3 {
  font-size: 1rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h4 {
  font-size: 1rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h5 {
  font-size: 1rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h6 {
  font-size: 1rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

@media print, screen and (min-width: 48em) {
  h1 {
    font-size: 1.42857rem;
  }
  h2 {
    font-size: 1.14286rem;
  }
  h3 {
    font-size: 1rem;
  }
  h4 {
    font-size: 1rem;
  }
  h5 {
    font-size: 1rem;
  }
  h6 {
    font-size: 1rem;
  }
}

@media print, screen and (min-width: 64em) {
  h1 {
    font-size: 1.42857rem;
  }
  h2 {
    font-size: 1.14286rem;
  }
  h3 {
    font-size: 1rem;
  }
  h4 {
    font-size: 1rem;
  }
  h5 {
    font-size: 1rem;
  }
  h6 {
    font-size: 1rem;
  }
}

a {
  line-height: inherit;
  color: #1153AD;
  text-decoration: none;
  cursor: pointer;
}

a:hover, a:focus {
  color: #0f4795;
}

a img {
  border: 0;
}

hr {
  clear: both;
  max-width: 92.85714rem;
  height: 0;
  margin: 1.42857rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #dddddd;
  border-left: 0;
}

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.3;
}

li {
  font-size: inherit;
}

ul {
  margin-left: 1.25rem;
  list-style-type: disc;
}

ol {
  margin-left: 1.25rem;
}

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}

dl {
  margin-bottom: 1rem;
}

dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold;
}

blockquote {
  margin: 0 0 1rem;
  padding: 0.64286rem 1.42857rem 0 1.35714rem;
  border-left: 1px solid #dddddd;
}

blockquote, blockquote p {
  line-height: 1.3;
  color: #79796A;
}

cite {
  display: block;
  font-size: 0.92857rem;
  color: #79796A;
}

cite:before {
  content: "— ";
}

abbr, abbr[title] {
  border-bottom: 1px dotted #0a0a0a;
  cursor: help;
  text-decoration: none;
}

figure {
  margin: 0;
}

code {
  padding: 0.14286rem 0.35714rem 0.07143rem;
  border: 1px solid #dddddd;
  background-color: #e8e5e5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
}

kbd {
  margin: 0;
  padding: 0.14286rem 0.28571rem 0;
  background-color: #e8e5e5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #0a0a0a;
  border-radius: 0.18rem;
}

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #79796A;
}

.lead {
  font-size: 17.5px;
  line-height: 1.6;
}

.stat {
  font-size: 2.5rem;
  line-height: 1;
}

p + .stat {
  margin-top: -1rem;
}

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.text-justify {
  text-align: justify;
}

@media print, screen and (min-width: 48em) {
  .medium-text-left {
    text-align: left;
  }
  .medium-text-right {
    text-align: right;
  }
  .medium-text-center {
    text-align: center;
  }
  .medium-text-justify {
    text-align: justify;
  }
}

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }
  .large-text-right {
    text-align: right;
  }
  .large-text-center {
    text-align: center;
  }
  .large-text-justify {
    text-align: justify;
  }
}

@media screen and (min-width: 75em) {
  .xlarge-text-left {
    text-align: left;
  }
  .xlarge-text-right {
    text-align: right;
  }
  .xlarge-text-center {
    text-align: center;
  }
  .xlarge-text-justify {
    text-align: justify;
  }
}

@media screen and (min-width: 90em) {
  .xxlarge-text-left {
    text-align: left;
  }
  .xxlarge-text-right {
    text-align: right;
  }
  .xxlarge-text-center {
    text-align: center;
  }
  .xxlarge-text-justify {
    text-align: justify;
  }
}

.show-for-print {
  display: none !important;
}

@media print {
  * {
    background: transparent !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: black !important;
    text-shadow: none !important;
  }
  .show-for-print {
    display: block !important;
  }
  .hide-for-print {
    display: none !important;
  }
  table.show-for-print {
    display: table !important;
  }
  thead.show-for-print {
    display: table-header-group !important;
  }
  tbody.show-for-print {
    display: table-row-group !important;
  }
  tr.show-for-print {
    display: table-row !important;
  }
  td.show-for-print {
    display: table-cell !important;
  }
  th.show-for-print {
    display: table-cell !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: '';
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  pre,
  blockquote {
    border: 1px solid #79796A;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .print-break-inside {
    page-break-inside: auto;
  }
}

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  font-family: inherit;
  padding: 0.6em 0.95em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0.18rem;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 1rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #1153AD;
  color: #fefefe;
}

[data-whatinput='mouse'] .button {
  outline: 0;
}

.button:hover, .button:focus {
  background-color: #0e4793;
  color: #fefefe;
}

.button.tiny {
  font-size: 0.6rem;
}

.button.small {
  font-size: 0.75rem;
}

.button.large {
  font-size: 1.35rem;
}

.button.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}

.button.primary {
  background-color: #1153AD;
  color: #fefefe;
}

.button.primary:hover, .button.primary:focus {
  background-color: #0e428a;
  color: #fefefe;
}

.button.secondary {
  background-color: #767676;
  color: #fefefe;
}

.button.secondary:hover, .button.secondary:focus {
  background-color: #5e5e5e;
  color: #fefefe;
}

.button.success {
  background-color: #3adb76;
  color: #fefefe;
}

.button.success:hover, .button.success:focus {
  background-color: #22bb5b;
  color: #fefefe;
}

.button.warning {
  background-color: #ffae00;
  color: #fefefe;
}

.button.warning:hover, .button.warning:focus {
  background-color: #cc8b00;
  color: #fefefe;
}

.button.alert {
  background-color: #cc4b37;
  color: #fefefe;
}

.button.alert:hover, .button.alert:focus {
  background-color: #a53b2a;
  color: #fefefe;
}

.button.off-black {
  background-color: #313131;
  color: #fefefe;
}

.button.off-black:hover, .button.off-black:focus {
  background-color: #272727;
  color: #fefefe;
}

.button.light-gray {
  background-color: #e8e5e5;
  color: #fefefe;
}

.button.light-gray:hover, .button.light-gray:focus {
  background-color: #bdb4b4;
  color: #fefefe;
}

.button.accent {
  background-color: #F9A519;
  color: #fefefe;
}

.button.accent:hover, .button.accent:focus {
  background-color: #d68806;
  color: #fefefe;
}

.button.green {
  background-color: #2F9F46;
  color: #fefefe;
}

.button.green:hover, .button.green:focus {
  background-color: #267f38;
  color: #fefefe;
}

.button.red {
  background-color: #cc4b37;
  color: #fefefe;
}

.button.red:hover, .button.red:focus {
  background-color: #a53b2a;
  color: #fefefe;
}

.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus {
  background-color: #1153AD;
  color: #fefefe;
}

.button.disabled.primary, .button[disabled].primary {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
  background-color: #1153AD;
  color: #fefefe;
}

.button.disabled.secondary, .button[disabled].secondary {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
  background-color: #767676;
  color: #fefefe;
}

.button.disabled.success, .button[disabled].success {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus {
  background-color: #3adb76;
  color: #fefefe;
}

.button.disabled.warning, .button[disabled].warning {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus {
  background-color: #ffae00;
  color: #fefefe;
}

.button.disabled.alert, .button[disabled].alert {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus {
  background-color: #cc4b37;
  color: #fefefe;
}

.button.disabled.off-black, .button[disabled].off-black {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.off-black, .button.disabled.off-black:hover, .button.disabled.off-black:focus, .button[disabled].off-black, .button[disabled].off-black:hover, .button[disabled].off-black:focus {
  background-color: #313131;
  color: #fefefe;
}

.button.disabled.light-gray, .button[disabled].light-gray {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.light-gray, .button.disabled.light-gray:hover, .button.disabled.light-gray:focus, .button[disabled].light-gray, .button[disabled].light-gray:hover, .button[disabled].light-gray:focus {
  background-color: #e8e5e5;
  color: #fefefe;
}

.button.disabled.accent, .button[disabled].accent {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.accent, .button.disabled.accent:hover, .button.disabled.accent:focus, .button[disabled].accent, .button[disabled].accent:hover, .button[disabled].accent:focus {
  background-color: #F9A519;
  color: #fefefe;
}

.button.disabled.green, .button[disabled].green {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.green, .button.disabled.green:hover, .button.disabled.green:focus, .button[disabled].green, .button[disabled].green:hover, .button[disabled].green:focus {
  background-color: #2F9F46;
  color: #fefefe;
}

.button.disabled.red, .button[disabled].red {
  opacity: 0.25;
  cursor: not-allowed;
}

.button.disabled.red, .button.disabled.red:hover, .button.disabled.red:focus, .button[disabled].red, .button[disabled].red:hover, .button[disabled].red:focus {
  background-color: #cc4b37;
  color: #fefefe;
}

.button.hollow {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.hollow, .button.hollow:hover, .button.hollow:focus {
  background-color: transparent;
}

.button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
  background-color: transparent;
}

.button.hollow:hover, .button.hollow:focus {
  border-color: #092a57;
  color: #092a57;
}

.button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.hollow.primary {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: #092a57;
  color: #092a57;
}

.button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.hollow.secondary {
  border: 1px solid #767676;
  color: #767676;
}

.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}

.button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] {
  border: 1px solid #767676;
  color: #767676;
}

.button.hollow.success {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: #157539;
  color: #157539;
}

.button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.hollow.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: #805700;
  color: #805700;
}

.button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.hollow.alert {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: #67251a;
  color: #67251a;
}

.button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.hollow.off-black {
  border: 1px solid #313131;
  color: #313131;
}

.button.hollow.off-black:hover, .button.hollow.off-black:focus {
  border-color: #191919;
  color: #191919;
}

.button.hollow.off-black:hover.disabled, .button.hollow.off-black:hover[disabled], .button.hollow.off-black:focus.disabled, .button.hollow.off-black:focus[disabled] {
  border: 1px solid #313131;
  color: #313131;
}

.button.hollow.light-gray {
  border: 1px solid #e8e5e5;
  color: #e8e5e5;
}

.button.hollow.light-gray:hover, .button.hollow.light-gray:focus {
  border-color: #7a6c6c;
  color: #7a6c6c;
}

.button.hollow.light-gray:hover.disabled, .button.hollow.light-gray:hover[disabled], .button.hollow.light-gray:focus.disabled, .button.hollow.light-gray:focus[disabled] {
  border: 1px solid #e8e5e5;
  color: #e8e5e5;
}

.button.hollow.accent {
  border: 1px solid #F9A519;
  color: #F9A519;
}

.button.hollow.accent:hover, .button.hollow.accent:focus {
  border-color: #865503;
  color: #865503;
}

.button.hollow.accent:hover.disabled, .button.hollow.accent:hover[disabled], .button.hollow.accent:focus.disabled, .button.hollow.accent:focus[disabled] {
  border: 1px solid #F9A519;
  color: #F9A519;
}

.button.hollow.green {
  border: 1px solid #2F9F46;
  color: #2F9F46;
}

.button.hollow.green:hover, .button.hollow.green:focus {
  border-color: #185023;
  color: #185023;
}

.button.hollow.green:hover.disabled, .button.hollow.green:hover[disabled], .button.hollow.green:focus.disabled, .button.hollow.green:focus[disabled] {
  border: 1px solid #2F9F46;
  color: #2F9F46;
}

.button.hollow.red {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.hollow.red:hover, .button.hollow.red:focus {
  border-color: #67251a;
  color: #67251a;
}

.button.hollow.red:hover.disabled, .button.hollow.red:hover[disabled], .button.hollow.red:focus.disabled, .button.hollow.red:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.clear, .button.clear:hover, .button.clear:focus {
  background-color: transparent;
}

.button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
  background-color: transparent;
}

.button.clear:hover, .button.clear:focus {
  border-color: #092a57;
  color: #092a57;
}

.button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] {
  border-color: transparent;
}

.button.clear.primary {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.clear.primary:hover, .button.clear.primary:focus {
  border-color: #092a57;
  color: #092a57;
}

.button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
  border: 1px solid #1153AD;
  color: #1153AD;
}

.button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
  border-color: transparent;
}

.button.clear.secondary {
  border: 1px solid #767676;
  color: #767676;
}

.button.clear.secondary:hover, .button.clear.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}

.button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
  border: 1px solid #767676;
  color: #767676;
}

.button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
  border-color: transparent;
}

.button.clear.success {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.clear.success:hover, .button.clear.success:focus {
  border-color: #157539;
  color: #157539;
}

.button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
  border-color: transparent;
}

.button.clear.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.clear.warning:hover, .button.clear.warning:focus {
  border-color: #805700;
  color: #805700;
}

.button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
  border-color: transparent;
}

.button.clear.alert {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear.alert:hover, .button.clear.alert:focus {
  border-color: #67251a;
  color: #67251a;
}

.button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
  border-color: transparent;
}

.button.clear.off-black {
  border: 1px solid #313131;
  color: #313131;
}

.button.clear.off-black:hover, .button.clear.off-black:focus {
  border-color: #191919;
  color: #191919;
}

.button.clear.off-black:hover.disabled, .button.clear.off-black:hover[disabled], .button.clear.off-black:focus.disabled, .button.clear.off-black:focus[disabled] {
  border: 1px solid #313131;
  color: #313131;
}

.button.clear.off-black, .button.clear.off-black.disabled, .button.clear.off-black[disabled], .button.clear.off-black:hover, .button.clear.off-black:hover.disabled, .button.clear.off-black:hover[disabled], .button.clear.off-black:focus, .button.clear.off-black:focus.disabled, .button.clear.off-black:focus[disabled] {
  border-color: transparent;
}

.button.clear.light-gray {
  border: 1px solid #e8e5e5;
  color: #e8e5e5;
}

.button.clear.light-gray:hover, .button.clear.light-gray:focus {
  border-color: #7a6c6c;
  color: #7a6c6c;
}

.button.clear.light-gray:hover.disabled, .button.clear.light-gray:hover[disabled], .button.clear.light-gray:focus.disabled, .button.clear.light-gray:focus[disabled] {
  border: 1px solid #e8e5e5;
  color: #e8e5e5;
}

.button.clear.light-gray, .button.clear.light-gray.disabled, .button.clear.light-gray[disabled], .button.clear.light-gray:hover, .button.clear.light-gray:hover.disabled, .button.clear.light-gray:hover[disabled], .button.clear.light-gray:focus, .button.clear.light-gray:focus.disabled, .button.clear.light-gray:focus[disabled] {
  border-color: transparent;
}

.button.clear.accent {
  border: 1px solid #F9A519;
  color: #F9A519;
}

.button.clear.accent:hover, .button.clear.accent:focus {
  border-color: #865503;
  color: #865503;
}

.button.clear.accent:hover.disabled, .button.clear.accent:hover[disabled], .button.clear.accent:focus.disabled, .button.clear.accent:focus[disabled] {
  border: 1px solid #F9A519;
  color: #F9A519;
}

.button.clear.accent, .button.clear.accent.disabled, .button.clear.accent[disabled], .button.clear.accent:hover, .button.clear.accent:hover.disabled, .button.clear.accent:hover[disabled], .button.clear.accent:focus, .button.clear.accent:focus.disabled, .button.clear.accent:focus[disabled] {
  border-color: transparent;
}

.button.clear.green {
  border: 1px solid #2F9F46;
  color: #2F9F46;
}

.button.clear.green:hover, .button.clear.green:focus {
  border-color: #185023;
  color: #185023;
}

.button.clear.green:hover.disabled, .button.clear.green:hover[disabled], .button.clear.green:focus.disabled, .button.clear.green:focus[disabled] {
  border: 1px solid #2F9F46;
  color: #2F9F46;
}

.button.clear.green, .button.clear.green.disabled, .button.clear.green[disabled], .button.clear.green:hover, .button.clear.green:hover.disabled, .button.clear.green:hover[disabled], .button.clear.green:focus, .button.clear.green:focus.disabled, .button.clear.green:focus[disabled] {
  border-color: transparent;
}

.button.clear.red {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear.red:hover, .button.clear.red:focus {
  border-color: #67251a;
  color: #67251a;
}

.button.clear.red:hover.disabled, .button.clear.red:hover[disabled], .button.clear.red:focus.disabled, .button.clear.red:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}

.button.clear.red, .button.clear.red.disabled, .button.clear.red[disabled], .button.clear.red:hover, .button.clear.red:hover.disabled, .button.clear.red:hover[disabled], .button.clear.red:focus, .button.clear.red:focus.disabled, .button.clear.red:focus[disabled] {
  border-color: transparent;
}

.button.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.4em;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #fefefe transparent transparent;
  position: relative;
  top: 0.4em;
  display: inline-block;
  float: right;
  margin-left: 0.95em;
}

.button.dropdown.hollow::after {
  border-top-color: #1153AD;
}

.button.dropdown.hollow.primary::after {
  border-top-color: #1153AD;
}

.button.dropdown.hollow.secondary::after {
  border-top-color: #767676;
}

.button.dropdown.hollow.success::after {
  border-top-color: #3adb76;
}

.button.dropdown.hollow.warning::after {
  border-top-color: #ffae00;
}

.button.dropdown.hollow.alert::after {
  border-top-color: #cc4b37;
}

.button.dropdown.hollow.off-black::after {
  border-top-color: #313131;
}

.button.dropdown.hollow.light-gray::after {
  border-top-color: #e8e5e5;
}

.button.dropdown.hollow.accent::after {
  border-top-color: #F9A519;
}

.button.dropdown.hollow.green::after {
  border-top-color: #2F9F46;
}

.button.dropdown.hollow.red::after {
  border-top-color: #cc4b37;
}

.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 2.67143rem;
  margin: 0 0 1.14286rem;
  padding: 0.57143rem;
  border: 1px solid #dddddd;
  border-radius: 0.18rem;
  background-color: #fefefe;
  -webkit-box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
          box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.6;
  color: #0a0a0a;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

[type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
textarea:focus {
  outline: none;
  border: 1px solid #dddddd;
  background-color: #fefefe;
  -webkit-box-shadow: 0 0 5px #dddddd;
          box-shadow: 0 0 5px #dddddd;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}

textarea {
  max-width: 100%;
}

textarea[rows] {
  height: auto;
}

input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #79796A;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: #79796A;
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #79796A;
}

input::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #79796A;
}

input::placeholder,
textarea::placeholder {
  color: #79796A;
}

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e8e5e5;
  cursor: not-allowed;
}

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0.18rem;
}

input[type='search'] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1.14286rem;
}

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.57143rem;
  margin-right: 1.14286rem;
  margin-bottom: 0;
}

[type='checkbox'] + label[for],
[type='radio'] + label[for] {
  cursor: pointer;
}

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.57143rem;
}

[type='file'] {
  width: 100%;
}

label {
  display: block;
  margin: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.6;
  color: #0a0a0a;
}

label.middle {
  margin: 0 0 1.14286rem;
  padding: 0.64286rem 0;
}

.help-text {
  margin-top: -0.57143rem;
  font-size: 0.92857rem;
  font-style: italic;
  color: #0a0a0a;
}

.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1.14286rem;
}

.input-group > :first-child {
  border-radius: 0.18rem 0 0 0.18rem;
}

.input-group > :last-child > * {
  border-radius: 0 0.18rem 0.18rem 0;
}

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap;
  display: table-cell;
  vertical-align: middle;
}

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #dddddd;
  background: #e8e5e5;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  width: 1%;
  height: 100%;
}

.input-group-label:first-child {
  border-right: 0;
}

.input-group-label:last-child {
  border-left: 0;
}

.input-group-field {
  border-radius: 0;
  height: 2.71429rem;
}

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  width: 1%;
  height: 100%;
}

.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  height: 2.71429rem;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1rem;
}

.input-group .input-group-button {
  display: table-cell;
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

legend {
  max-width: 100%;
  margin-bottom: 0.57143rem;
}

.fieldset {
  margin: 1.28571rem 0;
  padding: 1.42857rem;
  border: 1px solid #dddddd;
}

.fieldset legend {
  margin: 0;
  margin-left: -0.21429rem;
  padding: 0 0.21429rem;
}

select {
  height: 2.67143rem;
  margin: 0 0 1.14286rem;
  padding: 0.57143rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #dddddd;
  border-radius: 0.18rem;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.6;
  color: #0a0a0a;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28121, 121, 106%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1.14286rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.71429rem;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}

@media screen and (min-width: 0\0) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}

select:focus {
  outline: none;
  border: 1px solid #dddddd;
  background-color: #fefefe;
  -webkit-box-shadow: 0 0 5px #dddddd;
          box-shadow: 0 0 5px #dddddd;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}

select:disabled {
  background-color: #e8e5e5;
  cursor: not-allowed;
}

select::-ms-expand {
  display: none;
}

select[multiple] {
  height: auto;
  background-image: none;
}

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #f9ecea;
}

.is-invalid-input:not(:focus)::-webkit-input-placeholder {
  color: #cc4b37;
}

.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #cc4b37;
}

.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #cc4b37;
}

.is-invalid-input:not(:focus)::-ms-input-placeholder {
  color: #cc4b37;
}

.is-invalid-input:not(:focus)::placeholder {
  color: #cc4b37;
}

.is-invalid-label {
  color: #cc4b37;
}

.form-error {
  display: none;
  margin-top: -0.57143rem;
  margin-bottom: 1.14286rem;
  font-size: 0.85714rem;
  font-weight: bold;
  color: #cc4b37;
}

.form-error.is-visible {
  display: block;
}

.accordion {
  margin-left: 0;
  background: #fefefe;
  list-style-type: none;
}

.accordion[disabled] .accordion-title {
  cursor: not-allowed;
}

.accordion-item:first-child > :first-child {
  border-radius: 0.18rem 0.18rem 0 0;
}

.accordion-item:last-child > :last-child {
  border-radius: 0 0 0.18rem 0.18rem;
}

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #dddddd;
  border-bottom: 0;
  font-size: 0.85714rem;
  line-height: 1;
  color: #1153AD;
}

:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #dddddd;
  border-radius: 0 0 0.18rem 0.18rem;
}

.accordion-title:hover, .accordion-title:focus {
  background-color: #e8e5e5;
}

.accordion-title::before {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  content: '+';
}

.is-active > .accordion-title::before {
  content: '\2013';
}

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #dddddd;
  border-bottom: 0;
  background-color: #fefefe;
  color: #0a0a0a;
}

:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #dddddd;
}

.accordion-menu li {
  width: 100%;
}

.accordion-menu a {
  padding: 0.7rem 1rem;
}

.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem;
}

.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem;
}

.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0;
}

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative;
}

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1153AD transparent transparent;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 1rem;
}

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  left: auto;
  right: 1rem;
}

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem;
}

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

.is-accordion-submenu-parent {
  position: relative;
}

.has-submenu-toggle > a {
  margin-right: 40px;
}

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  width: 40px;
  height: 40px;
}

.submenu-toggle::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1153AD transparent transparent;
  top: 0;
  bottom: 0;
  margin: auto;
}

.submenu-toggle[aria-expanded='true']::after {
  -webkit-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

.submenu-toggle-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0;
}

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.65rem;
  text-align: center;
  background: #1153AD;
  color: #fefefe;
}

.badge.primary {
  background: #1153AD;
  color: #fefefe;
}

.badge.secondary {
  background: #767676;
  color: #fefefe;
}

.badge.success {
  background: #3adb76;
  color: #0a0a0a;
}

.badge.warning {
  background: #ffae00;
  color: #0a0a0a;
}

.badge.alert {
  background: #cc4b37;
  color: #fefefe;
}

.badge.off-black {
  background: #313131;
  color: #fefefe;
}

.badge.accent {
  background: #F9A519;
  color: #0a0a0a;
}

.badge.green {
  background: #2F9F46;
  color: #0a0a0a;
}

.badge.red {
  background: #cc4b37;
  color: #fefefe;
}

.breadcrumbs {
  margin: 0.5rem 0 0.5rem 0;
  list-style: none;
}

.breadcrumbs::before, .breadcrumbs::after {
  display: table;
  content: ' ';
}

.breadcrumbs::after {
  clear: both;
}

.breadcrumbs li {
  float: left;
  font-size: 0.92857rem;
  color: #0a0a0a;
  cursor: default;
}

.breadcrumbs li:not(:last-child)::after {
  position: relative;
  margin: 0 0.25rem;
  opacity: 1;
  content: "/";
  color: #79796A;
}

.breadcrumbs a {
  color: #313131;
}

.breadcrumbs a:hover {
  text-decoration: underline;
}

.breadcrumbs .disabled {
  color: #dddddd;
  cursor: not-allowed;
}

.button-group {
  margin-bottom: 1rem;
  font-size: 0;
}

.button-group::before, .button-group::after {
  display: table;
  content: ' ';
}

.button-group::after {
  clear: both;
}

.button-group .button {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 1rem;
}

.button-group .button:last-child {
  margin-right: 0;
}

.button-group.tiny .button {
  font-size: 0.6rem;
}

.button-group.small .button {
  font-size: 0.75rem;
}

.button-group.large .button {
  font-size: 1.35rem;
}

.button-group.expanded {
  margin-right: -1px;
}

.button-group.expanded::before, .button-group.expanded::after {
  display: none;
}

.button-group.expanded .button:first-child:last-child {
  width: 100%;
}

.button-group.expanded .button:first-child:nth-last-child(2), .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button {
  display: inline-block;
  width: calc(50% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(2):last-child, .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(3), .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button {
  display: inline-block;
  width: calc(33.33333% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(3):last-child, .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(4), .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button {
  display: inline-block;
  width: calc(25% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(4):last-child, .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(5), .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button {
  display: inline-block;
  width: calc(20% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(5):last-child, .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.expanded .button:first-child:nth-last-child(6), .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button {
  display: inline-block;
  width: calc(16.66667% - 1px);
  margin-right: 1px;
}

.button-group.expanded .button:first-child:nth-last-child(6):last-child, .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child {
  margin-right: -6px;
}

.button-group.primary .button {
  background-color: #1153AD;
  color: #fefefe;
}

.button-group.primary .button:hover, .button-group.primary .button:focus {
  background-color: #0e428a;
  color: #fefefe;
}

.button-group.secondary .button {
  background-color: #767676;
  color: #fefefe;
}

.button-group.secondary .button:hover, .button-group.secondary .button:focus {
  background-color: #5e5e5e;
  color: #fefefe;
}

.button-group.success .button {
  background-color: #3adb76;
  color: #fefefe;
}

.button-group.success .button:hover, .button-group.success .button:focus {
  background-color: #22bb5b;
  color: #fefefe;
}

.button-group.warning .button {
  background-color: #ffae00;
  color: #fefefe;
}

.button-group.warning .button:hover, .button-group.warning .button:focus {
  background-color: #cc8b00;
  color: #fefefe;
}

.button-group.alert .button {
  background-color: #cc4b37;
  color: #fefefe;
}

.button-group.alert .button:hover, .button-group.alert .button:focus {
  background-color: #a53b2a;
  color: #fefefe;
}

.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
  width: 100%;
}

.button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 48em) {
  .button-group.stacked-for-small .button {
    width: auto;
    margin-bottom: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button {
    width: auto;
    margin-bottom: 0;
  }
}

@media screen and (max-width: 47.9375em) {
  .button-group.stacked-for-small.expanded {
    display: block;
  }
  .button-group.stacked-for-small.expanded .button {
    display: block;
    margin-right: 0;
  }
}

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0.18rem;
  background-color: white;
  color: #0a0a0a;
}

.callout > :first-child {
  margin-top: 0;
}

.callout > :last-child {
  margin-bottom: 0;
}

.callout.primary {
  background-color: #d3e4fb;
  color: #0a0a0a;
}

.callout.secondary {
  background-color: #eaeaea;
  color: #0a0a0a;
}

.callout.success {
  background-color: #e1faea;
  color: #0a0a0a;
}

.callout.warning {
  background-color: #fff3d9;
  color: #0a0a0a;
}

.callout.alert {
  background-color: #f7e4e1;
  color: #0a0a0a;
}

.callout.small {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}

.callout.large {
  padding-top: 3rem;
  padding-right: 3rem;
  padding-bottom: 3rem;
  padding-left: 3rem;
}

.card {
  margin-bottom: 1rem;
  border: 1px solid #dddddd;
  border-radius: 0.18rem;
  background: #fefefe;
  -webkit-box-shadow: none;
          box-shadow: none;
  overflow: hidden;
  color: #0a0a0a;
}

.card > :last-child {
  margin-bottom: 0;
}

.card-divider {
  padding: 1rem;
  background: #e8e5e5;
}

.card-divider > :last-child {
  margin-bottom: 0;
}

.card-section {
  padding: 1rem;
}

.card-section > :last-child {
  margin-bottom: 0;
}

.card-image {
  min-height: 1px;
}

.close-button {
  position: absolute;
  color: #79796A;
  cursor: pointer;
}

[data-whatinput='mouse'] .close-button {
  outline: 0;
}

.close-button:hover, .close-button:focus {
  color: #0a0a0a;
}

.close-button.small {
  right: 0.66rem;
  top: 0.33em;
  font-size: 1.5em;
  line-height: 1;
}

.close-button, .close-button.medium {
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
}

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
}

[data-whatinput='mouse'] .menu li {
  outline: 0;
}

.menu a,
.menu .button {
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  display: block;
  padding: 0.7rem 1rem;
}

.menu input,
.menu select,
.menu a,
.menu button {
  margin-bottom: 0;
}

.menu input {
  display: inline-block;
}

.menu li, .menu.horizontal li {
  display: inline-block;
}

.menu.vertical li {
  display: block;
}

.menu.expanded {
  display: table;
  width: 100%;
}

.menu.expanded > li {
  display: table-cell;
  vertical-align: middle;
}

.menu.simple li + li {
  margin-left: 1rem;
}

.menu.simple a {
  padding: 0;
}

@media print, screen and (min-width: 48em) {
  .menu.medium-horizontal li {
    display: inline-block;
  }
  .menu.medium-vertical li {
    display: block;
  }
  .menu.medium-expanded {
    display: table;
    width: 100%;
  }
  .menu.medium-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.medium-simple {
    display: table;
    width: 100%;
  }
  .menu.medium-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}

@media print, screen and (min-width: 64em) {
  .menu.large-horizontal li {
    display: inline-block;
  }
  .menu.large-vertical li {
    display: block;
  }
  .menu.large-expanded {
    display: table;
    width: 100%;
  }
  .menu.large-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.large-simple {
    display: table;
    width: 100%;
  }
  .menu.large-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}

@media screen and (min-width: 75em) {
  .menu.xlarge-horizontal li {
    display: inline-block;
  }
  .menu.xlarge-vertical li {
    display: block;
  }
  .menu.xlarge-expanded {
    display: table;
    width: 100%;
  }
  .menu.xlarge-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.xlarge-simple {
    display: table;
    width: 100%;
  }
  .menu.xlarge-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}

@media screen and (min-width: 90em) {
  .menu.xxlarge-horizontal li {
    display: inline-block;
  }
  .menu.xxlarge-vertical li {
    display: block;
  }
  .menu.xxlarge-expanded {
    display: table;
    width: 100%;
  }
  .menu.xxlarge-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.xxlarge-simple {
    display: table;
    width: 100%;
  }
  .menu.xxlarge-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}

.menu.nested {
  margin-right: 0;
  margin-left: 1rem;
}

.menu.icons img,
.menu.icons i,
.menu.icons svg {
  vertical-align: middle;
}

.menu.icons img + span,
.menu.icons i + span,
.menu.icons svg + span {
  vertical-align: middle;
}

.menu.icon-left li a img,
.menu.icon-left li a i,
.menu.icon-left li a svg {
  margin-right: 0.25rem;
  display: inline-block;
}

.menu.icon-right li a img,
.menu.icon-right li a i,
.menu.icon-right li a svg {
  margin-left: 0.25rem;
  display: inline-block;
}

.menu.icon-top li a {
  text-align: center;
}

.menu.icon-top li a img,
.menu.icon-top li a i,
.menu.icon-top li a svg {
  display: block;
  margin: 0 auto 0.25rem;
}

.menu.icon-bottom li a {
  text-align: center;
}

.menu.icon-bottom li a img,
.menu.icon-bottom li a i,
.menu.icon-bottom li a svg {
  display: block;
  margin: 0.25rem auto 0;
}

.menu .is-active > a {
  background: #1153AD;
  color: #fefefe;
}

.menu .active > a {
  background: #1153AD;
  color: #fefefe;
}

.menu.align-left {
  text-align: left;
}

.menu.align-right {
  text-align: right;
}

.menu.align-right .submenu li {
  text-align: left;
}

.menu.align-right.vertical .submenu li {
  text-align: right;
}

.menu.align-right .nested {
  margin-right: 1rem;
  margin-left: 0;
}

.menu.align-center {
  text-align: center;
}

.menu.align-center .submenu li {
  text-align: left;
}

.menu .menu-text {
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit;
}

.menu-centered > .menu {
  text-align: center;
}

.menu-centered > .menu .submenu li {
  text-align: left;
}

.no-js [data-responsive-menu] ul {
  display: none;
}

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer;
}

.menu-icon::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #fefefe;
  -webkit-box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
          box-shadow: 0 7px 0 #fefefe, 0 14px 0 #fefefe;
  content: '';
}

.menu-icon:hover::after {
  background: #dddddd;
  -webkit-box-shadow: 0 7px 0 #dddddd, 0 14px 0 #dddddd;
          box-shadow: 0 7px 0 #dddddd, 0 14px 0 #dddddd;
}

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer;
}

.menu-icon.dark::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #0a0a0a;
  -webkit-box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
          box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a;
  content: '';
}

.menu-icon.dark:hover::after {
  background: #79796A;
  -webkit-box-shadow: 0 7px 0 #79796A, 0 14px 0 #79796A;
          box-shadow: 0 7px 0 #79796A, 0 14px 0 #79796A;
}

.is-drilldown {
  position: relative;
  overflow: hidden;
}

.is-drilldown li {
  display: block;
}

.is-drilldown.animate-height {
  -webkit-transition: height 0.5s;
  transition: height 0.5s;
}

.drilldown a {
  padding: 0.7rem 1rem;
  background: #fefefe;
}

.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #fefefe;
  -webkit-transition: -webkit-transform 0.15s linear;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear;
}

.drilldown .is-drilldown-submenu.is-active {
  z-index: 1;
  display: block;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}

.drilldown .is-drilldown-submenu.is-closing {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

.drilldown .is-drilldown-submenu a {
  padding: 0.7rem 1rem;
}

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0;
}

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%;
}

.drilldown .is-drilldown-submenu-parent > a {
  position: relative;
}

.drilldown .is-drilldown-submenu-parent > a::after {
  position: absolute;
  top: 50%;
  margin-top: -6px;
  right: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1153AD;
}

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  left: auto;
  right: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1153AD;
}

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  right: auto;
  left: 1rem;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1153AD transparent transparent;
}

.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1153AD transparent transparent;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem;
  border-left-width: 0;
}

.dropdown-pane {
  position: absolute;
  z-index: 10;
  width: 300px;
  padding: 1rem;
  visibility: hidden;
  display: none;
  border: 1px solid #dddddd;
  border-radius: 0.18rem;
  background-color: #fff;
  font-size: 1rem;
}

.dropdown-pane.is-opening {
  display: block;
}

.dropdown-pane.is-open {
  visibility: visible;
  display: block;
}

.dropdown-pane.tiny {
  width: 100px;
}

.dropdown-pane.small {
  width: 200px;
}

.dropdown-pane.large {
  width: 400px;
}

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto;
}

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0;
}

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem;
}

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1153AD transparent transparent;
  right: 5px;
  margin-top: -3px;
}

.dropdown.menu a {
  padding: 0.7rem 1rem;
}

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0;
}

.dropdown.menu .is-active > a {
  background: transparent;
  color: #1153AD;
}

.no-js .dropdown.menu ul {
  display: none;
}

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0;
}

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0;
}

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto;
  top: 0;
}

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}

.dropdown.menu.vertical > li > a::after {
  right: 14px;
}

.dropdown.menu.vertical > li.opens-left > a::after {
  right: auto;
  left: 5px;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1153AD transparent transparent;
}

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1153AD;
}

@media print, screen and (min-width: 48em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1153AD transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1153AD transparent transparent;
  }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1153AD;
  }
}

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1153AD transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1153AD transparent transparent;
  }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1153AD;
  }
}

@media screen and (min-width: 75em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1153AD transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0;
  }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1153AD transparent transparent;
  }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1153AD;
  }
}

@media screen and (min-width: 90em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1153AD transparent transparent;
    right: 5px;
    margin-top: -3px;
  }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto;
    top: 0;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    right: auto;
    left: 5px;
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1153AD transparent transparent;
  }
  .dropdown.menu.xxlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1153AD;
  }
}

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto;
}

.is-dropdown-menu.vertical {
  width: 100px;
}

.is-dropdown-menu.vertical.align-right {
  float: right;
}

.is-dropdown-submenu-parent {
  position: relative;
}

.is-dropdown-submenu-parent a::after {
  position: absolute;
  top: 50%;
  right: 5px;
  margin-top: -6px;
}

.is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
  top: 100%;
  left: auto;
}

.is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto;
}

.is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 200px;
  border: 1px solid #dddddd;
  background: #fefefe;
}

.dropdown .is-dropdown-submenu a {
  padding: 0.7rem 1rem;
}

.is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
  right: 14px;
}

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
  right: auto;
  left: 5px;
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1153AD transparent transparent;
}

.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1153AD;
}

.is-dropdown-submenu .is-dropdown-submenu {
  margin-top: -1px;
}

.is-dropdown-submenu > li {
  width: 100%;
}

.is-dropdown-submenu.js-dropdown-active {
  display: block;
}

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1.14286rem;
  padding-bottom: 75%;
  overflow: hidden;
}

.responsive-embed iframe,
.responsive-embed object,
.responsive-embed embed,
.responsive-embed video,
.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.responsive-embed.widescreen,
.flex-video.widescreen {
  padding-bottom: 56.25%;
}

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0.18rem;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #1153AD;
  color: #fefefe;
}

.label.primary {
  background: #1153AD;
  color: #fefefe;
}

.label.secondary {
  background: #767676;
  color: #fefefe;
}

.label.success {
  background: #3adb76;
  color: #0a0a0a;
}

.label.warning {
  background: #ffae00;
  color: #0a0a0a;
}

.label.alert {
  background: #cc4b37;
  color: #fefefe;
}

.media-object {
  display: block;
  margin-bottom: 1rem;
}

.media-object img {
  max-width: none;
}

@media screen and (max-width: 47.9375em) {
  .media-object.stack-for-small .media-object-section {
    padding: 0;
    padding-bottom: 1rem;
    display: block;
  }
  .media-object.stack-for-small .media-object-section img {
    width: 100%;
  }
}

.media-object-section {
  display: table-cell;
  vertical-align: top;
}

.media-object-section:first-child {
  padding-right: 1rem;
}

.media-object-section:last-child:not(:nth-child(2)) {
  padding-left: 1rem;
}

.media-object-section > :last-child {
  margin-bottom: 0;
}

.media-object-section.middle {
  vertical-align: middle;
}

.media-object-section.bottom {
  vertical-align: bottom;
}

.is-off-canvas-open {
  overflow: hidden;
}

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(254, 254, 254, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}

.js-off-canvas-overlay.is-visible {
  opacity: 1;
  visibility: visible;
}

.js-off-canvas-overlay.is-closable {
  cursor: pointer;
}

.js-off-canvas-overlay.is-overlay-absolute {
  position: absolute;
}

.js-off-canvas-overlay.is-overlay-fixed {
  position: fixed;
}

.off-canvas-wrapper {
  position: relative;
  overflow: hidden;
}

.off-canvas {
  position: fixed;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #e8e5e5;
}

[data-whatinput='mouse'] .off-canvas {
  outline: 0;
}

.off-canvas.is-transition-push {
  z-index: 12;
}

.off-canvas.is-closed {
  visibility: hidden;
}

.off-canvas.is-transition-overlap {
  z-index: 13;
}

.off-canvas.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
          box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}

.off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #e8e5e5;
}

[data-whatinput='mouse'] .off-canvas-absolute {
  outline: 0;
}

.off-canvas-absolute.is-transition-push {
  z-index: 12;
}

.off-canvas-absolute.is-closed {
  visibility: hidden;
}

.off-canvas-absolute.is-transition-overlap {
  z-index: 13;
}

.off-canvas-absolute.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
          box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}

.off-canvas-absolute.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.position-left {
  top: 0;
  left: 0;
  width: 250px;
  height: 100%;
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
  overflow-y: auto;
}

.off-canvas-content .off-canvas.position-left {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}

.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-left.has-transition-push {
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}

.position-left.is-transition-push {
  -webkit-box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
}

.position-right {
  top: 0;
  right: 0;
  width: 250px;
  height: 100%;
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
  overflow-y: auto;
}

.off-canvas-content .off-canvas.position-right {
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}

.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-right.has-transition-push {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}

.position-right.is-transition-push {
  -webkit-box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
}

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  height: 250px;
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
  overflow-x: auto;
}

.off-canvas-content .off-canvas.position-top {
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}

.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-top.has-transition-push {
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}

.position-top.is-transition-push {
  -webkit-box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
}

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  height: 250px;
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
  overflow-x: auto;
}

.off-canvas-content .off-canvas.position-bottom {
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}

.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-bottom.has-transition-push {
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}

.position-bottom.is-transition-push {
  -webkit-box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
}

.off-canvas-content {
  -webkit-transform: none;
          transform: none;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.off-canvas-content.has-transition-push {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content .off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media print, screen and (min-width: 48em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-medium ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-medium ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-large ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-large ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media screen and (min-width: 75em) {
  .position-left.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-xlarge ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-xlarge ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-xlarge ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-xlarge ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media screen and (min-width: 90em) {
  .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-xxlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-xxlarge ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-xxlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-xxlarge ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-xxlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-xxlarge ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-xxlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-xxlarge ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}

@media print, screen and (min-width: 48em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-medium .close-button {
    display: none;
  }
}

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-large .close-button {
    display: none;
  }
}

@media screen and (min-width: 75em) {
  .off-canvas.in-canvas-for-xlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-xlarge.position-left, .off-canvas.in-canvas-for-xlarge.position-right, .off-canvas.in-canvas-for-xlarge.position-top, .off-canvas.in-canvas-for-xlarge.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-xlarge .close-button {
    display: none;
  }
}

@media screen and (min-width: 90em) {
  .off-canvas.in-canvas-for-xxlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-xxlarge.position-left, .off-canvas.in-canvas-for-xxlarge.position-right, .off-canvas.in-canvas-for-xxlarge.position-top, .off-canvas.in-canvas-for-xxlarge.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-xxlarge .close-button {
    display: none;
  }
}

.orbit {
  position: relative;
}

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
}

.orbit-slide {
  width: 100%;
}

.orbit-slide.no-motionui.is-active {
  top: 0;
  left: 0;
}

.orbit-figure {
  margin: 0;
}

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(10, 10, 10, 0.5);
  color: #fefefe;
}

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fefefe;
}

[data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
  outline: 0;
}

.orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next:focus {
  background-color: rgba(10, 10, 10, 0.5);
}

.orbit-previous {
  left: 0;
}

.orbit-next {
  left: auto;
  right: 0;
}

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center;
}

[data-whatinput='mouse'] .orbit-bullets {
  outline: 0;
}

.orbit-bullets button {
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.1rem;
  border-radius: 50%;
  background-color: #dddddd;
}

.orbit-bullets button:hover {
  background-color: #79796A;
}

.orbit-bullets button.is-active {
  background-color: #79796A;
}

.pagination {
  margin-left: 0;
  margin-bottom: 1rem;
}

.pagination::before, .pagination::after {
  display: table;
  content: ' ';
}

.pagination::after {
  clear: both;
}

.pagination li {
  margin-right: 0.07143rem;
  border-radius: 0.18rem;
  font-size: 1rem;
  display: none;
}

.pagination li:last-child, .pagination li:first-child {
  display: inline-block;
}

@media print, screen and (min-width: 48em) {
  .pagination li {
    display: inline-block;
  }
}

.pagination a,
.pagination button {
  display: block;
  padding: 0.21429rem 0.71429rem;
  border-radius: 0.18rem;
  color: #0a0a0a;
}

.pagination a:hover,
.pagination button:hover {
  background: #e8e5e5;
}

.pagination .current {
  padding: 0.21429rem 0.71429rem;
  background: #1153AD;
  color: #fefefe;
  cursor: default;
}

.pagination .disabled {
  padding: 0.21429rem 0.71429rem;
  color: #dddddd;
  cursor: not-allowed;
}

.pagination .disabled:hover {
  background: transparent;
}

.pagination .ellipsis::after {
  padding: 0.21429rem 0.71429rem;
  content: '\2026';
  color: #0a0a0a;
}

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab';
}

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb';
}

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0.18rem;
  background-color: #dddddd;
}

.progress.primary .progress-meter {
  background-color: #1153AD;
}

.progress.secondary .progress-meter {
  background-color: #767676;
}

.progress.success .progress-meter {
  background-color: #3adb76;
}

.progress.warning .progress-meter {
  background-color: #ffae00;
}

.progress.alert .progress-meter {
  background-color: #cc4b37;
}

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #1153AD;
  border-radius: 0.18rem;
}

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #fefefe;
  white-space: nowrap;
  border-radius: 0.18rem;
}

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e8e5e5;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none;
}

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #dddddd;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.slider-fill.is-dragging {
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
}

.slider-handle {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0.18rem;
  background-color: #1153AD;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

[data-whatinput='mouse'] .slider-handle {
  outline: 0;
}

.slider-handle:hover {
  background-color: #0e4793;
}

.slider-handle.is-dragging {
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
}

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1);
}

.slider.vertical .slider-fill {
  top: 0;
  width: 0.5rem;
  max-height: 100%;
}

.slider.vertical .slider-handle {
  position: absolute;
  top: 0;
  left: 50%;
  width: 1.4rem;
  height: 1.4rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.sticky-container {
  position: relative;
}

.sticky {
  position: relative;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%;
}

.sticky.is-stuck.is-at-top {
  top: 0;
}

.sticky.is-stuck.is-at-bottom {
  bottom: 0;
}

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto;
}

.sticky.is-anchored.is-at-bottom {
  bottom: 0;
}

body.is-reveal-open {
  overflow: hidden;
}

html.is-reveal-open,
html.is-reveal-open body {
  min-height: 100%;
  overflow: hidden;
  position: fixed;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(10, 10, 10, 0.45);
  overflow-y: scroll;
}

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: none;
  border-radius: 3px;
  background-color: #fefefe;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
}

[data-whatinput='mouse'] .reveal {
  outline: 0;
}

@media print, screen and (min-width: 48em) {
  .reveal {
    min-height: 0;
  }
}

.reveal .column, .reveal .columns {
  min-width: 0;
}

.reveal > :last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 48em) {
  .reveal {
    width: 600px;
    max-width: 92.85714rem;
  }
}

.reveal.collapse {
  padding: 0;
}

@media print, screen and (min-width: 48em) {
  .reveal.tiny {
    width: 30%;
    max-width: 92.85714rem;
  }
}

@media print, screen and (min-width: 48em) {
  .reveal.small {
    width: 50%;
    max-width: 92.85714rem;
  }
}

@media print, screen and (min-width: 48em) {
  .reveal.large {
    width: 90%;
    max-width: 92.85714rem;
  }
}

.reveal.full {
  top: 0;
  left: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  height: 100vh;
  min-height: 100vh;
  margin-left: 0;
  border: 0;
  border-radius: 0;
}

@media screen and (max-width: 47.9375em) {
  .reveal {
    top: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0;
    border: 0;
    border-radius: 0;
  }
}

.reveal.without-overlay {
  position: fixed;
}

/*@include foundation-switch;*/
table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0.18rem;
}

thead,
tbody,
tfoot {
  border: 1px solid #f1f1f1;
  background-color: #fefefe;
}

caption {
  padding: 0.42857rem 0.57143rem 0.57143rem;
  font-weight: bold;
}

thead {
  background: #f8f8f8;
  color: #0a0a0a;
}

tfoot {
  background: #f1f1f1;
  color: #0a0a0a;
}

thead tr,
tfoot tr {
  background: transparent;
}

thead th,
thead td,
tfoot th,
tfoot td {
  padding: 0.42857rem 0.57143rem 0.57143rem;
  font-weight: bold;
  text-align: left;
}

tbody th,
tbody td {
  padding: 0.42857rem 0.57143rem 0.57143rem;
}

tbody tr {
  border-bottom: 0;
  border-bottom: 1px solid #f1f1f1;
  background-color: #fefefe;
}

table.striped tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: #f1f1f1;
}

@media screen and (max-width: 63.9375em) {
  table.stack thead {
    display: none;
  }
  table.stack tfoot {
    display: none;
  }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block;
  }
  table.stack td {
    border-top: 0;
  }
}

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto;
}

table.hover thead tr:hover {
  background-color: #f3f3f3;
}

table.hover tfoot tr:hover {
  background-color: #ececec;
}

table.hover tbody tr:hover {
  background-color: #f9f9f9;
}

table.hover.striped tr:nth-of-type(even):hover {
  background-color: #ececec;
}

.table-scroll {
  overflow-x: auto;
}

.table-scroll table {
  width: auto;
}

.tabs {
  margin: 0;
  border: 1px solid #dddddd;
  background: #fefefe;
  list-style-type: none;
}

.tabs::before, .tabs::after {
  display: table;
  content: ' ';
}

.tabs::after {
  clear: both;
}

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto;
}

.tabs.simple > li > a {
  padding: 0;
}

.tabs.simple > li > a:hover {
  background: transparent;
}

.tabs.primary {
  background: #1153AD;
}

.tabs.primary > li > a {
  color: #fefefe;
}

.tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
  background: #125abc;
}

.tabs-title {
  float: left;
}

.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 0.85714rem;
  line-height: 1;
  color: #1153AD;
}

.tabs-title > a:hover {
  background: #fefefe;
  color: #0f4795;
}

.tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
  background: #e8e5e5;
  color: #1153AD;
}

.tabs-content {
  border: 1px solid #dddddd;
  border-top: 0;
  background: #fefefe;
  color: #0a0a0a;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.tabs-content.vertical {
  border: 1px solid #dddddd;
  border-left: 0;
}

.tabs-panel {
  display: none;
  padding: 1rem;
}

.tabs-panel.is-active {
  display: block;
}

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #fefefe;
  border-radius: 0.18rem;
  -webkit-box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
          box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
  line-height: 0;
}

a.thumbnail {
  -webkit-transition: -webkit-box-shadow 200ms ease-out;
  transition: -webkit-box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out, -webkit-box-shadow 200ms ease-out;
}

a.thumbnail:hover, a.thumbnail:focus {
  -webkit-box-shadow: 0 0 6px 1px rgba(17, 83, 173, 0.5);
          box-shadow: 0 0 6px 1px rgba(17, 83, 173, 0.5);
}

a.thumbnail image {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.title-bar {
  padding: 0.5rem;
  background: #0a0a0a;
  color: #fefefe;
}

.title-bar::before, .title-bar::after {
  display: table;
  content: ' ';
}

.title-bar::after {
  clear: both;
}

.title-bar .menu-icon {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.title-bar-left {
  float: left;
}

.title-bar-right {
  float: right;
  text-align: right;
}

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #79796A;
  font-weight: bold;
  cursor: help;
}

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0.18rem;
  background-color: #0a0a0a;
  font-size: 80%;
  color: #fefefe;
}

.tooltip::before {
  position: absolute;
}

.tooltip.bottom::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-top-width: 0;
  border-bottom-style: solid;
  border-color: transparent transparent #0a0a0a;
  bottom: 100%;
}

.tooltip.bottom.align-center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.tooltip.top::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #0a0a0a transparent transparent;
  top: 100%;
  bottom: auto;
}

.tooltip.top.align-center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.tooltip.left::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #0a0a0a;
  left: 100%;
}

.tooltip.left.align-center::before {
  bottom: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.tooltip.right::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #0a0a0a transparent transparent;
  right: 100%;
  left: auto;
}

.tooltip.right.align-center::before {
  bottom: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.tooltip.align-top::before {
  bottom: auto;
  top: 10%;
}

.tooltip.align-bottom::before {
  bottom: 10%;
  top: auto;
}

.tooltip.align-left::before {
  left: 10%;
  right: auto;
}

.tooltip.align-right::before {
  left: auto;
  right: 10%;
}

.top-bar {
  padding: 0.5rem;
}

.top-bar::before, .top-bar::after {
  display: table;
  content: ' ';
}

.top-bar::after {
  clear: both;
}

.top-bar,
.top-bar ul {
  background-color: #e8e5e5;
}

.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}

.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}

.top-bar input.button {
  width: auto;
}

.top-bar .top-bar-left,
.top-bar .top-bar-right {
  width: 100%;
}

@media print, screen and (min-width: 48em) {
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    width: auto;
  }
}

@media screen and (max-width: 63.9375em) {
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    width: 100%;
  }
}

@media screen and (max-width: 74.9375em) {
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    width: 100%;
  }
}

@media screen and (max-width: 89.9375em) {
  .top-bar.stacked-for-xlarge .top-bar-left,
  .top-bar.stacked-for-xlarge .top-bar-right {
    width: 100%;
  }
}

.top-bar.stacked-for-xxlarge .top-bar-left,
.top-bar.stacked-for-xxlarge .top-bar-right {
  width: 100%;
}

.top-bar-title {
  display: inline-block;
  float: left;
  padding: 0.5rem 1rem 0.5rem 0;
}

.top-bar-title .menu-icon {
  bottom: 2px;
}

.top-bar-left {
  float: left;
}

.top-bar-right {
  float: right;
}

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

@media screen and (max-width: 47.9375em) {
  .hide-for-small-only {
    display: none !important;
  }
}

@media screen and (max-width: 0em), screen and (min-width: 48em) {
  .show-for-small-only {
    display: none !important;
  }
}

@media print, screen and (min-width: 48em) {
  .hide-for-medium {
    display: none !important;
  }
}

@media screen and (max-width: 47.9375em) {
  .show-for-medium {
    display: none !important;
  }
}

@media screen and (min-width: 48em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important;
  }
}

@media screen and (max-width: 47.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important;
  }
}

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important;
  }
}

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important;
  }
}

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important;
  }
}

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important;
  }
}

@media screen and (min-width: 75em) {
  .hide-for-xlarge {
    display: none !important;
  }
}

@media screen and (max-width: 74.9375em) {
  .show-for-xlarge {
    display: none !important;
  }
}

@media screen and (min-width: 75em) and (max-width: 89.9375em) {
  .hide-for-xlarge-only {
    display: none !important;
  }
}

@media screen and (max-width: 74.9375em), screen and (min-width: 90em) {
  .show-for-xlarge-only {
    display: none !important;
  }
}

@media screen and (min-width: 90em) {
  .hide-for-xxlarge {
    display: none !important;
  }
}

@media screen and (max-width: 89.9375em) {
  .show-for-xxlarge {
    display: none !important;
  }
}

@media screen and (min-width: 90em) {
  .hide-for-xxlarge-only {
    display: none !important;
  }
}

@media screen and (max-width: 89.9375em) {
  .show-for-xxlarge-only {
    display: none !important;
  }
}

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0;
}

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
  -webkit-clip-path: none;
          clip-path: none;
}

.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}

@media screen and (orientation: landscape) {
  .show-for-landscape,
  .hide-for-portrait {
    display: block !important;
  }
}

@media screen and (orientation: portrait) {
  .show-for-landscape,
  .hide-for-portrait {
    display: none !important;
  }
}

.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}

@media screen and (orientation: landscape) {
  .hide-for-landscape,
  .show-for-portrait {
    display: none !important;
  }
}

@media screen and (orientation: portrait) {
  .hide-for-landscape,
  .show-for-portrait {
    display: block !important;
  }
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-center {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.clearfix::before, .clearfix::after {
  display: table;
  content: ' ';
}

.clearfix::after {
  clear: both;
}

.slide-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.slide-in-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.slide-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.slide-in-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

.slide-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
}

.slide-out-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}

.slide-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

.slide-out-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}

.fade-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 0;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.fade-in.mui-enter.mui-enter-active {
  opacity: 1;
}

.fade-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 1;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.fade-out.mui-leave.mui-leave-active {
  opacity: 0;
}

.hinge-in-from-top.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-bottom.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-middle-x.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-middle-y.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-out-from-top.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hinge-out-from-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.hinge-out-from-bottom.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0;
}

.hinge-out-from-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0;
}

.hinge-out-from-middle-x.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hinge-out-from-middle-y.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.scale-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}

.scale-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}

.scale-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0;
}

.scale-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0;
}

.spin-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  opacity: 1;
}

.spin-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0;
}

.spin-in-ccw.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  opacity: 1;
}

.spin-out-ccw.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0;
}

.slow {
  -webkit-transition-duration: 750ms !important;
          transition-duration: 750ms !important;
}

.fast {
  -webkit-transition-duration: 250ms !important;
          transition-duration: 250ms !important;
}

.linear {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}

.ease {
  -webkit-transition-timing-function: ease !important;
          transition-timing-function: ease !important;
}

.ease-in {
  -webkit-transition-timing-function: ease-in !important;
          transition-timing-function: ease-in !important;
}

.ease-out {
  -webkit-transition-timing-function: ease-out !important;
          transition-timing-function: ease-out !important;
}

.ease-in-out {
  -webkit-transition-timing-function: ease-in-out !important;
          transition-timing-function: ease-in-out !important;
}

.bounce-in {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounce-out {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounce-in-out {
  -webkit-transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.short-delay {
  -webkit-transition-delay: 300ms !important;
          transition-delay: 300ms !important;
}

.long-delay {
  -webkit-transition-delay: 700ms !important;
          transition-delay: 700ms !important;
}

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7;
}

@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%);
  }
}

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%);
  }
}

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn;
}

@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

.spin-ccw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn;
}

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg;
}

@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms;
}

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important;
}

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important;
}

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important;
}

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important;
}

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important;
}

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important;
}

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important;
}

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important;
}

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important;
}

/*
@import this file directly into your existing Scss files to use these mixins
*/
.bsiGraphic {
  width: 186px;
  height: 92px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -10px -10px no-repeat;
}

.calibration {
  width: 60px;
  height: 56px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -206px -10px no-repeat;
}

.carticon {
  width: 49px;
  height: 45px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -276px -10px no-repeat;
}

.cartIconSmall {
  width: 34px;
  height: 32px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -335px -10px no-repeat;
}

.Clearance {
  width: 40px;
  height: 55px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -379px -10px no-repeat;
}

.conradFooter {
  width: 200px;
  height: 19px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -429px -10px no-repeat;
}

.educationLogo {
  width: 129px;
  height: 45px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -639px -10px no-repeat;
}

.educationLogoSmall {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -778px -10px no-repeat;
}

.educationLogoSmall {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -778px -10px no-repeat;
}

.facebookIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -904px -10px no-repeat;
}

.icon_euflag {
  width: 108px;
  height: 63px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -950px -10px no-repeat;
}

.icon_module_3D_pdflrg {
  width: 40px;
  height: 47px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1068px -10px no-repeat;
}

.icon_module_td_pdfsm {
  width: 14px;
  height: 16px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1118px -10px no-repeat;
}

.icon_module_Technical-Specification_pdflrg {
  width: 40px;
  height: 47px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1142px -10px no-repeat;
}

.icon_ukflag {
  width: 108px;
  height: 63px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1192px -10px no-repeat;
}

.icon_usflag {
  width: 108px;
  height: 63px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1310px -10px no-repeat;
}

.instagramIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1428px -10px no-repeat;
}

.linkedinIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1474px -10px no-repeat;
}

.New {
  width: 55px;
  height: 55px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1520px -10px no-repeat;
}

.paymentIcons {
  width: 259px;
  height: 30px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1585px -10px no-repeat;
}

.paypallogo {
  width: 145px;
  height: 42px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -1854px -10px no-repeat;
}

.rapidaccount {
  width: 136px;
  height: 32px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2009px -10px no-repeat;
}

.rapidLogo {
  width: 147px;
  height: 38px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2155px -10px no-repeat;
}

.rapidLogoSmall {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2312px -10px no-repeat;
}

.SpecialOffer {
  width: 55px;
  height: 53px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2438px -10px no-repeat;
}

.twitterIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2503px -10px no-repeat;
}

.uniLogo {
  width: 129px;
  height: 45px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2549px -10px no-repeat;
}

.uniLogoSmall {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2688px -10px no-repeat;
}

.youtubeIcon {
  width: 36px;
  height: 36px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2814px -10px no-repeat;
}

@media screen and (min-width: 64em) {
  .fixedWidth {
    min-height: 500px;
  }
}

.button.accent, .button.light-gray {
  color: #0a0a0a;
}

/*duplicates of PDF icon*/
/*.icon_module_Manual_pdflrg, .icon_module_REACH-Certificate_pdflrg, .icon_module_Health-and-Safety_pdflrg, .icon_module_Document-Of-Conformity_pdflrg {
	@include sprite($icon-module-technical-specification-pdflrg);  
}*/
.icon_rohsexempt {
  display: inline-block;
  background: green;
  color: #fff;
  font-size: 1em;
  font-weight: bold;
  line-height: 1.4em;
  border-radius: 3em;
  -moz-border-radius: 3em;
  -webkit-border-radius: 3em;
  margin-left: 3px;
  text-align: center;
  min-width: 1.3em;
  min-height: 1.3em;
  vertical-align: middle;
}

.reachalert {
  display: inline-block;
  background: #000080;
  color: yellow;
  font-size: 1em;
  font-weight: bold;
  line-height: 1.2em;
  border-radius: 3em;
  -moz-border-radius: 3em;
  -webkit-border-radius: 3em;
  margin-left: 3px;
  text-align: center;
  min-width: 1.2em;
  min-height: 1.2em;
  vertical-align: middle;
}

@media print {
  a[href]:after {
    content: none !important;
  }
}

.disabledButton {
  cursor: not-allowed;
  background: grey !important;
  color: darkgrey !important;
}

.no-javascript {
  top: 0;
  left: 0;
  right: 0;
  background-color: firebrick;
  color: #fff;
  text-align: center;
  padding: 10px;
  font-weight: bold;
  -webkit-box-shadow: 1px 0 3px #000;
          box-shadow: 1px 0 3px #000;
}

.no-javascript a {
  text-decoration: underline;
  color: #fff;
}

/*Grey Overlay*/
.app_greyOverlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10004;
  display: none;
}

.showOverlay {
  display: block !important;
  background-color: rgba(192, 192, 192, 0.6);
}

.reveal-overlay {
  z-index: 99999;
}

/*For over 18*/
.stack-outer {
  color: red;
}

.fa-plus18 {
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  text-align: center;
  font-size: 80%;
  font-weight: bold;
}

.fa-plus18:before {
  content: "18+";
  color: white;
}

.reveal {
  -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
          box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  outline: none;
}

.reveal:focus {
  outline: none;
}

@media print, screen and (min-width: 48em) {
  .reveal {
    width: 660px;
    max-width: 92.85714rem;
  }
}

.popupTitle {
  font-size: 18px;
  font-weight: 600;
  margin-top: 0px;
  padding-top: 0px;
  margin-bottom: 16px;
}

.sidePlayer {
  display: none;
}

@media screen and (min-width: 64em) {
  .sidePlayer {
    display: block;
    -webkit-font-smoothing: subpixel-antialiased;
    -webkit-perspective: 1000;
    -webkit-transition: all 150ms ease-in-out;
    transition: all 150ms ease-in-out;
    position: fixed;
    width: 120px;
    right: 10px;
    bottom: 10px;
    z-index: 1500;
  }
  .sidePlayer .controlBar .button {
    margin: 0 0 0.25rem 0;
  }
  .sidePlayer .videoTitleBar {
    padding: 0.35714rem 0.35714rem 0 0.35714rem;
    background: rgba(10, 10, 10, 0.96);
    text-align: center;
  }
  .sidePlayer .videoTitleBar h3 {
    margin-bottom: 0;
    color: #fefefe;
    line-height: 1.1rem;
    font-size: 0.75rem;
  }
  .sidePlayer .responsive-embed {
    border: 0.35714rem solid rgba(10, 10, 10, 0.96);
    -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
            box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }
  .sidePlayer.expanded {
    top: 50%;
    bottom: auto;
    left: 50%;
    width: 640px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 10010;
  }
  .sidePlayer.expanded h3 {
    line-height: 1.3rem;
    font-size: 1rem;
  }
}

@media screen and (min-width: 90em) {
  .sidePlayer {
    width: 180px;
  }
  .sidePlayer .videoTitleBar h3 {
    line-height: 1.3rem;
    font-size: 1rem;
  }
  .sidePlayer .responsive-embed {
    border: 0.35714rem solid rgba(10, 10, 10, 0.96);
    -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
            box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
  }
}

.ErrorDisplay {
  position: fixed;
  top: 2px;
  z-index: 9999999;
  margin: 0 auto;
  display: none;
  max-width: 1300px;
  left: 0px;
  right: 0px;
  padding: 3px;
  font-weight: bold;
  font-size: 1.14286rem;
}

.ErrorDisplay .callout.success {
  color: #0a0a0a;
  border-top: 10px solid #8dc58d;
}

.ErrorDisplay .callout.alert {
  color: #0a0a0a;
  border-top: 10px solid #e21e1e;
}

.ErrorDisplay .callout.secondary {
  color: #0a0a0a;
  border-top: 10px solid #767676;
}

.green-text {
  color: #008000;
}

.blue-text {
  color: #103cca;
}

.big-red-text {
  color: Red;
  font-size: 16px;
}

.orange-text, .orangeText {
  color: #ffa500;
}

.red-text, .redText {
  color: #b22222 !important;
}

.gray-text {
  color: #79796A;
}

.grey-text {
  color: #79796A;
  font-weight: normal;
}

.pastel-blue-text {
  color: #92acff;
}

.pastel-green-text {
  color: #8df981;
}

.pastel-red-text {
  color: #ff7b7b;
}

.pastel-orange-text {
  color: #ffcd72;
}

@media screen and (max-width: 63.9375em) {
  ul.breadcrumbs {
    border-bottom: 1px solid #e8e5e5;
    padding: 0.21429rem;
  }
  ul.breadcrumbs li {
    display: none;
    float: none;
    padding: 0.21429rem;
    font-size: 1.07143rem;
  }
  ul.breadcrumbs li.breadcrumbStage:hover {
    background: #e8e5e5;
  }
  ul.breadcrumbs li.breadcrumbStage.breadcrumbExpand {
    display: block;
  }
  ul.breadcrumbs li.lastBreadcrumb {
    display: block;
    font-weight: bold;
    padding-bottom: 0.57143rem;
  }
  .breadcrumbExpandLink {
    width: 50px;
    display: inline-block;
    border-left: 1px solid #e8e5e5;
    float: right;
    text-align: center;
    cursor: pointer;
  }
  .breadcrumbExpandLink i {
    color: #79796A;
  }
}

/*@include sprites($spritesheet-sprites);*/
.breadcrumbContainer {
  margin-top: 0.71429rem;
  margin-bottom: 0.71429rem;
}

.breadcrumbContainer a {
  color: #79796A;
  font-size: 1rem;
}

.breadcrumbContainer a:hover {
  color: #0a0a0a;
}

@media screen and (max-width: 63.9375em) {
  .mobileMenu .vertical.menu {
    /*li:last-child a {
            border:0px;
        }*/
  }
  .mobileMenu .vertical.menu a {
    background: none;
    border-bottom: 1px solid #dddddd;
    font-weight: bold;
  }
  .mobileMenu h3 {
    border-bottom: 1px solid #dddddd;
    padding: 10px 5px;
    margin: 0;
    background: #e8e5e5;
  }
}

.mobileMenu .vertical.menu a {
  color: #0a0a0a;
}

.mobileMenu .vertical.menu a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: black;
          text-decoration-color: black;
}

@media print, screen and (min-width: 64em) {
  .mobileMenu .vertical.menu a {
    padding-left: 0;
    padding-right: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .mobileMenu .column-block {
    min-height: 7.14286rem;
  }
}

/*Gray Section Header*/
h2.sectionHeader, h1.sectionHeader {
  background: #e8e5e5;
  padding: 0.42857rem;
}

h2.sectionHeaderPurchaseTip {
  background-color: darkorange;
  padding: 0.42857rem;
  color: #fff;
  font-size: 1.3em;
  font-weight: normal;
  vertical-align: central;
}

.smallProdImage {
  width: 5.35714rem;
  height: 5.35714rem;
  padding: 0.35714rem;
}

.prices-strikethrough {
  font-size: 0.85714rem;
  color: #79796A;
  text-decoration: line-through;
}

.smallLabel {
  color: #79796A;
  font-size: 0.92857rem;
}

/*Inc VAT Checkbox*/
.checkbox {
  position: relative;
}

.checkbox input[type="checkbox"] {
  top: 0;
  left: 0;
  visibility: hidden;
  position: absolute;
}

.checkbox .custom-checkbox {
  display: inline-block;
  vertical-align: top;
  margin: 0 3px 0 0;
  width: 18px;
  height: 18px;
  border: 1px solid #1583cc;
  position: relative;
}

.checkbox .custom-checkbox {
  background: #1583cc;
  -webkit-box-shadow: inset 0 0 0 12px #fff;
          box-shadow: inset 0 0 0 12px #fff;
  text-align: left;
}

.checkbox .icon-check {
  width: 20px;
  height: 20px;
  background-size: cover;
  position: absolute;
  top: 0px;
  left: 0px;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transition: all 180ms ease;
  transition: all 180ms ease;
}

.icon-check:before {
  position: absolute;
  content: '\2713';
  width: 12px;
  font-size: 12.66667px;
  text-align: center;
  line-height: 16px;
  color: #fff;
  font-weight: bold;
}

.checkbox input[type="checkbox"]:checked + .custom-checkbox {
  border-color: #2095F0;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.checkbox input[type="checkbox"]:checked + .custom-checkbox .icon-check {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.checkbox .accent {
  border: 1px solid #F9A519;
}

.checkbox input[type="checkbox"]:checked + .accent {
  background: #F9A519;
  border: 1px solid #F9A519;
}

/*search field button group input*/
input.searchInput, input.searchInput:focus {
  border: 0px;
}

/*scroll table large breakpoint fix*/
@media print, screen and (min-width: 64em) {
  .table-scroll table {
    width: 100%;
  }
}

label.fieldHeading, label.smallLabel {
  font-size: 0.85714rem;
  color: #79796A;
}

label.fieldHeading.inline, label.smallLabel.inline {
  display: inline;
}

label.fieldHeading.alt, label.smallLabel.alt {
  color: #0a0a0a;
}

.button.inline {
  margin-bottom: 0px;
  margin-left: 0.35714rem;
  margin-right: 0.35714rem;
}

.button {
  font-weight: bold;
}

.mainImgContainer {
  text-align: center;
  position: relative;
}

@media screen and (max-width: 47.9375em) {
  .mainImgContainer {
    width: 65%;
    margin: 0 auto;
  }
}

.mainImgContainer .badgeOverlay {
  position: absolute;
  left: 5px;
  top: 5px;
  z-index: 5;
}

.mainImgContainer .Magic360-container {
  border: none;
}

.MagicScroll .mcs-item img {
  border: 1px solid #dddddd;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.starOuter {
  color: #79796A;
  padding: 0.35rem 0;
}

.starOuter a {
  color: #79796A;
}

.starOuter a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: #79796A;
          text-decoration-color: #79796A;
}

.starOuter a.reviewStars {
  text-decoration: none;
}

.starOuter .fa-star {
  color: #fbd923;
}

.pricePerItem {
  text-align: right;
  color: #79796A;
  font-size: 1rem;
  font-weight: bold;
}

.largePriceTable {
  margin-bottom: .25rem;
  margin-top: 0.45rem;
}

.getQuoteLink {
  color: black;
  display: block;
  text-align: center;
  margin-top: 0.6rem;
  margin-bottom: 0.6rem;
}

.getQuoteLink h2 {
  font-size: 1.12em;
}

.skuPromoAppliedLabel {
  font-size: .85714rem;
  color: #79796A;
  text-align: right;
  display: block;
}

.pricePanel {
  padding: 0px 7px 5px 7px;
  background: #f7f6f6;
  border: 3px solid #e8e5e5;
}

.pricePanel .input-group {
  display: table;
  margin-bottom: 0.4rem;
}

.pricePanel #options-vat {
  padding: .5em 0 0;
  text-align: right;
}

.smallPriceTable .priceTable table th, .smallPriceTable .priceTable table td {
  padding: .42857rem .27143rem .57143rem;
  text-align: center;
}

.smallPriceTable .priceTable table td, .smallPriceTable .priceTable table th {
  font-size: 0.92857rem;
  line-height: 1.1rem;
}

.smallPriceTable .input-group {
  margin-bottom: 0.35714rem;
}

.productVariation {
  /*border: 1px solid $dark-gray;*/
  border: 1px solid #e8e5e5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 20px;
  position: relative;
  /*background:$light-gray;*/
  background: #f7f6f6;
  padding: 10px;
}

.productVariation ul {
  list-style-type: none;
  margin: 0.21429rem;
}

.productVariation p {
  font-size: 14px;
  font-weight: bold;
  margin-left: 0;
  padding-top: 0px;
  margin-top: 0px;
}

.productVariation span {
  border: 1px solid #ccc;
  display: inline-block;
  padding: 5px;
  border-radius: 4px;
  background: white;
  margin: 5px 0;
  cursor: pointer;
}

.productVariation span.selected {
  border: 1px solid #b57e7e;
  cursor: default;
}

.productVariation span.selected:hover {
  background: white;
}

.productVariation span:hover {
  background: #eee;
  border: 1px solid #b57e7e;
}

.app_AttributeVariationProducts ul {
  list-style-type: none;
}

.app_AttributeVariationProducts ul li {
  display: block;
  border-bottom: 0.5px dotted lightgrey;
  padding: 10px;
}

.app_AttributeVariationProducts ul li::after {
  content: "";
  clear: both;
  display: table;
}

.app_AttributeVariationProducts span {
  display: inline-block;
  float: left;
  padding: 5px;
  margin: 5px;
  border: 2px solid lightgrey;
  cursor: pointer;
  border-radius: 5px;
}

.app_AttributeVariationProducts span.selected {
  border: 2px solid indianred;
}

.app_AttributeVariationProducts span.disabled {
  border: 2px solid white;
  text-decoration: line-through;
  color: lightgray;
}

.productWidget {
  list-style-type: none;
  border: 1px solid #e8e5e5;
  margin: auto;
  border-radius: 2px;
}

.productWidget li {
  padding: 5px 5px 0 5px;
  clear: both;
  border-bottom: 1px solid #e8e5e5;
  overflow: hidden;
}

.productWidget li:last-child {
  border-bottom: none;
}

.productWidget li a {
  display: block;
  color: black;
}

.productWidget li p {
  margin-bottom: 0.42857rem;
}

.widgetHeader {
  background: #e8e5e5;
  color: #0a0a0a;
  font-weight: bold;
  font-size: 1.14286rem;
  text-align: center;
  padding: 0.57143rem 0.35714rem 0.64286rem 0.35714rem !important;
}

.widgetProductLeft {
  float: left;
  width: 45%;
  text-align: center;
}

.widgetProductLeft img {
  width: 60%;
}

.widgetProductRight {
  float: left;
  width: 53%;
}

.product-tile-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  grid-gap: 10px;
  -webkit-box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
          box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
}

.product-tile {
  max-width: 250px;
  padding: .5em;
}

.product-tile--details h3 {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.product-tile--controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.product-tile--controls button {
  margin: 0;
}

.product-tile--controls label {
  display: inline-block;
}

.product-tile--controls label input {
  margin: 0;
}

.productItem {
  position: relative;
  border-bottom: 1px solid #e8e5e5;
  margin-bottom: 0.35714rem;
  min-height: 200px;
}

@media screen and (max-width: 63.9375em) {
  .productItem {
    text-align: center;
  }
}

.productItem h3 {
  color: #0a0a0a;
}

.otherControls {
  position: absolute;
  left: 3px;
  bottom: 5px;
  text-align: left;
}

.otherControls label {
  margin-right: 3px;
}

.otherControls span, .otherControls label, .otherControls a {
  display: inline-block;
}

.quickViewLink {
  font-size: 12px;
  border: 1px solid #ccc;
  padding: 8px 5px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
          box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
  background: white;
  color: #0a0a0a;
}

.quickViewLink:hover {
  background: #F9A519;
  color: #0a0a0a;
}

.smallImgContainer {
  text-align: center;
  margin: 0 auto;
  position: relative;
}

.smallImgContainer img {
  max-width: 140px;
}

.smallBadgeOverlay {
  position: absolute;
  right: 5px;
  bottom: 5px;
}

.smallStockMessage {
  font-weight: bold;
  text-align: left;
  font-size: 1rem;
}

@media screen and (max-width: 47.9375em) {
  .smallStockMessage {
    margin-bottom: 1.14286rem;
  }
}

.quickViewPopupContent {
  max-height: 750px;
  overflow-y: auto;
}

.attributeFilters {
  list-style-type: none;
  border: 1px solid #e8e5e5;
  margin: auto;
  border-radius: 2px;
  z-index: 10006;
  position: relative;
  background: white;
}

.attributeFilters li {
  padding: 5px 5px 0 5px;
  clear: both;
  border-bottom: 1px solid #e8e5e5;
  position: relative;
}

@media screen and (max-width: 47.9375em) {
  .attributeFilters li {
    padding: 10px 5px 0 10px;
  }
}

.attributeFilters li:last-child {
  border-bottom: none;
}

.attributeFilters li a {
  display: block;
  color: black;
  width: 95%;
  overflow: auto;
  padding: 5px 0 5px 10px;
  position: relative;
  text-decoration: none;
}

.attributeFilters li .attributeName {
  display: none;
}

@media print, screen and (min-width: 48em) {
  .attributeFilters li .attributeName {
    display: block;
  }
}

@media print, screen and (min-width: 48em) {
  .attributeFilters li .attributeListHolder {
    width: 20rem;
    top: -50%;
    left: 100%;
    position: absolute;
    background-color: #fff;
    -webkit-box-shadow: 2px 3px 22px -5px rgba(0, 0, 0, 0.58);
            box-shadow: 2px 3px 22px -5px rgba(0, 0, 0, 0.58);
    z-index: 2000000000;
    padding: 0.71429rem;
  }
}

.attributeFilters li .attributeListHolder i {
  display: none;
}

@media print, screen and (min-width: 48em) {
  .attributeFilters li .attributeListHolder i {
    position: absolute;
    top: 7px;
    right: 7px;
    display: block;
  }
}

.attributeFilters li .attributeListHolder i:hover {
  color: firebrick;
  cursor: pointer;
}

.attributeFilters li .attributeListHolder .attributeList {
  list-style: none;
  margin-left: 0px;
}

@media screen and (max-width: 47.9375em) {
  .attributeFilters li .attributeListHolder .attributeList {
    max-height: 28.57143rem;
  }
}

li.search_attributes_redundant_section a {
  pointer-events: none;
  cursor: default;
  color: #e8e5e5;
}

.searchfilterTop {
  padding: 0 0 0.57143rem 0;
}

.searchfilterTop span {
  font-weight: bold;
}

.searchfilterTop div {
  width: 43%;
  margin: 2%;
  display: inline-block;
}

.searchfilterTop select {
  width: 86%;
  margin: 2%;
  padding: 4px;
  border: 1px solid #ccc;
}

.searchfilterMiddle {
  padding: 8px;
  border: 1px solid #ccc;
  overflow-y: auto;
}

@media print, screen and (min-width: 48em) {
  .searchfilterMiddle {
    max-height: 300px;
  }
}

.searchfilterFooter span {
  line-height: 44px;
  display: inline-block;
  padding: 0px;
}

.searchfilterFooter button {
  margin-bottom: 0px;
  margin-top: 10px;
  float: right;
}

.attributeFiltersHeader {
  background: #e8e5e5;
  color: #0a0a0a;
  font-weight: bold;
  font-size: 1.14286rem;
  text-align: center;
  padding: 0.57143rem 0.35714rem 0.64286rem 0.35714rem !important;
}

.appliedFilters {
  overflow-y: auto;
  max-height: 300px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.filterSection {
  padding: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
}

.filterSectionHeader {
  border-bottom: 1px solid #ccc;
  overflow: hidden;
  line-height: 20px;
  margin-top: 2px;
}

.filterSectionTitle {
  color: #000;
  font-weight: bold;
  float: left;
  margin: 3px;
}

.removeFilterSection {
  cursor: pointer;
  color: #337ab7;
  text-decoration: underline;
  font-size: 12px;
  line-height: 15px;
  float: right;
  margin: 3px;
}

.search_attributes_selected_section a {
  font-weight: 700;
}

.searchTag {
  position: relative;
  display: table;
  border-radius: 4px;
  color: #fff;
  background-color: #F9A519;
  border: 1px solid #F9A519;
  max-width: 176px;
  margin: 4px;
  float: left;
}

.searchTag:hover {
  background-color: #D9534F;
  border: 1px solid #d43f3a;
}

.searchTag span {
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  padding: 4px 8px;
}

.searchTag .removeTag {
  color: #fff;
  background: rgba(0, 0, 0, 0.15);
  cursor: pointer;
  display: table-cell;
  vertical-align: middle;
  padding: 4px 8px;
}

.attributeFilters .checkbox {
  cursor: pointer;
  display: inline-block;
  padding: 0.57143rem 0;
}

/*Range Slider*/
input[type=range].rangeSlider {
  -webkit-appearance: none;
  width: 100%;
  margin: 6.85px 0;
}

input[type=range].rangeSlider:focus {
  outline: none;
}

input[type=range].rangeSlider::-webkit-slider-runnable-track {
  width: 100%;
  height: 4.3px;
  cursor: pointer;
  -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
          box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
  background: #e8e5e5;
  border-radius: 0px;
  border: 0.2px solid rgba(0, 0, 0, 0);
}

input[type=range].rangeSlider::-webkit-slider-thumb {
  -webkit-box-shadow: 0px 0px 0px rgba(103, 0, 0, 0), 0px 0px 0px rgba(129, 0, 0, 0);
          box-shadow: 0px 0px 0px rgba(103, 0, 0, 0), 0px 0px 0px rgba(129, 0, 0, 0);
  border: 0px solid rgba(0, 0, 0, 0);
  height: 18px;
  width: 12px;
  border-radius: 0px;
  background: #f9a519;
  cursor: pointer;
  -webkit-appearance: none;
  margin-top: -7.05px;
}

input[type=range].rangeSlider:focus::-webkit-slider-runnable-track {
  background: #e8e5e5;
}

input[type=range].rangeSlider::-moz-range-track {
  width: 100%;
  height: 4.3px;
  cursor: pointer;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
  background: #e8e5e5;
  border-radius: 0px;
  border: 0.2px solid rgba(0, 0, 0, 0);
}

input[type=range].rangeSlider::-moz-range-thumb {
  box-shadow: 0px 0px 0px rgba(103, 0, 0, 0), 0px 0px 0px rgba(129, 0, 0, 0);
  border: 0px solid rgba(0, 0, 0, 0);
  height: 18px;
  width: 12px;
  border-radius: 0px;
  background: #f9a519;
  cursor: pointer;
}

input[type=range].rangeSlider::-ms-track {
  width: 100%;
  height: 4.3px;
  cursor: pointer;
  background: transparent;
  border-color: transparent;
  color: transparent;
}

input[type=range].rangeSlider::-ms-fill-lower {
  background: #e8e5e5;
  border: 0.2px solid rgba(0, 0, 0, 0);
  border-radius: 0px;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
}

input[type=range].rangeSlider::-ms-fill-upper {
  background: #e8e5e5;
  border: 0.2px solid rgba(0, 0, 0, 0);
  border-radius: 0px;
  box-shadow: 0px 0px 0px rgba(0, 0, 0, 0), 0px 0px 0px rgba(13, 13, 13, 0);
}

input[type=range].rangeSlider::-ms-thumb {
  box-shadow: 0px 0px 0px rgba(103, 0, 0, 0), 0px 0px 0px rgba(129, 0, 0, 0);
  border: 0px solid rgba(0, 0, 0, 0);
  height: 18px;
  width: 12px;
  border-radius: 0px;
  background: #f9a519;
  cursor: pointer;
  height: 4.3px;
}

input[type=range].rangeSlider:focus::-ms-fill-lower {
  background: #e8e5e5;
}

input[type=range].rangeSlider:focus::-ms-fill-upper {
  background: #e8e5e5;
}

.paginationBar {
  background: #e8e5e5;
  margin-bottom: 1.07143rem;
}

.paginationBar input, .paginationBar select {
  margin: 0.35714rem;
}

@media screen and (max-width: 63.9375em) {
  .paginationBar {
    text-align: center;
  }
}

.searchResultsCount {
  display: inline-block;
  padding: 0.57143rem;
}

@media screen and (max-width: 63.9375em) {
  .searchResultsCount {
    text-align: center;
  }
}

.ProductsPagination {
  margin-top: 0.92857rem;
  margin-right: 0.42857rem;
  display: inline-block;
}

@media screen and (max-width: 63.9375em) {
  .ProductsPagination {
    text-align: center;
    margin-bottom: 0.71429rem;
  }
}

@media print, screen and (min-width: 64em) {
  .ProductsPagination {
    float: right;
  }
}

.ProductsPagination a {
  padding: 0.35714rem 0.64286rem;
  margin-left: 0.28571rem;
  color: #4f4f4f;
  cursor: pointer;
  border-radius: 3px;
  background: #d6d3d3;
}

.ProductsPagination a.currentPage {
  background: #313131;
  color: #fefefe;
}

.ProductsPagination a.paging {
  background: #aba6a6;
  color: #fefefe;
}

.ProductsPagination a:hover {
  background: #313131;
  color: #fefefe;
}

.tierWrapper {
  margin-top: 0.71429rem;
  margin-bottom: 0.71429rem;
}

.tierImage {
  text-align: center;
}

.tierImage a {
  display: block;
  text-decoration: none;
  color: #0a0a0a;
}

.tierImage a .tierImageText {
  display: block;
  line-height: 1.25rem;
  margin-top: 0.35714rem;
  font-size: 0.92857rem;
}

.tierImage a i {
  color: #79796A;
  font-size: 0.78571rem;
}

@media screen and (max-width: 47.9375em) {
  .tierImage.searchTierStructureTierItem, .tierImage.popularCategoryItem {
    padding: 0.71429rem;
    margin-bottom: 0px;
    border-bottom: 1px solid #e8e5e5;
    text-align: left;
  }
  .tierImage.searchTierStructureTierItem img, .tierImage.popularCategoryItem img {
    display: none;
  }
  .tierImage.searchTierStructureTierItem .tierImageText, .tierImage.popularCategoryItem .tierImageText {
    display: inline;
  }
}

@media screen and (max-width: 47.9375em) {
  .searchTierStructureTierItem:last-child {
    margin-bottom: 10px;
  }
}

.searchTierBlockList {
  list-style: none;
  margin-top: .5rem;
  /*@include breakpoint(medium) {
        margin-top: rem-calc(-10);
    }*/
  margin-left: 0.57143rem;
}

.searchTierBlockList li {
  cursor: pointer;
}

@media screen and (max-width: 47.9375em) {
  .searchTierBlockList li {
    padding: 0.71429rem 0;
    border-bottom: 1px solid #e8e5e5;
  }
}

.searchTierBlockList li:hover {
  text-decoration: underline;
}

.searchBreadcrumb {
  font-weight: bold;
  color: #0a0a0a;
  display: inline-block;
  margin-bottom: .2rem;
  line-height: 1.3;
}

a.searchBreadcrumb {
  white-space: initial !important;
  color: #0a0a0a;
}

#suggestedBreadcrumb {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  overflow-x: auto;
  white-space: nowrap;
  max-width: 100% !important;
}

.accordionA {
  cursor: pointer;
  border: none;
  border-radius: 0;
  outline: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: left;
  width: 100%;
  padding: .4rem;
  border-bottom: 1px solid #ddd;
}

.panelA {
  background-color: white;
  display: none;
  overflow: hidden;
}

.column.column-block, .column-block.columns {
  position: relative;
}

.accordionA span:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f107";
  font-size: 1.4rem;
  color: #aaa;
}

.active span:after {
  content: "\f106";
}

.toggleCategory {
  display: none;
}

@media print, screen and (min-width: 64em) {
  .imagesTableWrapper {
    width: 36.66667%;
    float: left;
    padding-right: 0;
    padding-left: 0;
    padding-right: 0px !important;
  }
  .imagesTableWrapper:last-child:not(:first-child) {
    float: right;
  }
}

.attributesTableWrapper {
  position: relative;
  overflow-x: auto;
}

@media screen and (max-width: 63.9375em) {
  .attributesTableWrapper {
    display: none;
  }
}

@media print, screen and (min-width: 64em) {
  .attributesTableWrapper {
    width: 63.33333%;
    float: left;
    padding-right: 0;
    padding-left: 0;
  }
  .attributesTableWrapper:last-child:not(:first-child) {
    float: right;
  }
}

.compareQuickView label {
  margin-right: 3px;
}

.compareQuickView span, .compareQuickView label, .compareQuickView a {
  display: inline-block;
}

.searchTableBrandLogo {
  max-width: 65px;
  margin-top: -20px;
}

@media screen and (max-width: 89.9375em) {
  .attributesTableHeader {
    font-size: 0.85714rem;
    line-height: 1rem;
  }
}

.searchResultsRow h3 {
  color: #0a0a0a;
}

@media screen and (max-width: 63.9375em) {
  #t1 {
    min-width: auto !important;
    text-align: center;
  }
  #t1 .compareQuickView {
    text-align: left;
    position: absolute;
    bottom: -4px;
  }
  #t1 .searchResultsProductDetails {
    position: relative;
  }
}

#t2 {
  text-align: center;
}

#t2 tbody td {
  border: 1px solid #f1f1f1;
  border-top: none;
  border-left: none;
}

.floatThead-table thead th {
  text-align: center;
}

.searchTableProductImageContainer {
  position: relative;
}

.basketItemsOuter {
  padding: 0.35714rem;
}

label.basketHeading {
  color: #79796A;
  text-align: left;
}

.basketItem {
  border-bottom: 1px solid #e8e5e5;
  margin-bottom: 0.71429rem;
  padding: 0.35714rem;
}

.basketItem h3 {
  color: #0a0a0a;
}

.basketItem .updateItem {
  cursor: pointer;
}

@media screen and (max-width: 47.9375em) {
  .basketItem {
    text-align: center;
  }
  .basketItem label.middle {
    margin-bottom: 0.35714rem;
  }
}

.basketItem.invalid {
  /*text-align: center;*/
  background-color: #f7e4e1;
}

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

.basketItemRemove {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemRemove {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemRemove {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemRemove:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemRemove {
    width: 4.16667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemRemove {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemRemove {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemRemove:last-child:not(:first-child) {
    float: right;
  }
}

.basketItemImg {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemImg {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemImg {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemImg:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemImg {
    width: 5.83333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemImg {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemImg {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemImg:last-child:not(:first-child) {
    float: right;
  }
}

.basketItemDesc {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemDesc {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemDesc {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemDesc:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemDesc {
    width: 32.5%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemDesc {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemDesc {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemDesc:last-child:not(:first-child) {
    float: right;
  }
}

.basketItemQty {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemQty {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemQty {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemQty:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemQty {
    width: 20.83333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemQty {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemQty {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemQty:last-child:not(:first-child) {
    float: right;
  }
}

.basketItemStatus {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .basketItemStatus {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .basketItemStatus {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.basketItemStatus:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 48em) {
  .basketItemStatus {
    width: 20%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .basketItemStatus {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .basketItemStatus {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .basketItemStatus:last-child:not(:first-child) {
    float: right;
  }
}

.addressesOption ul {
  max-width: 8.21429rem;
}

.addressesOption ul a {
  color: #0a0a0a;
  font-weight: bold;
  padding: 0.64286rem 0.28571rem;
}

.addressesOption ul li .sub {
  border: 1px solid #e8e5e5;
}

.addressesOption ul li .sub a {
  padding: 15px 8px !important;
  font-weight: normal;
  cursor: pointer;
}

.addressesOption ul li .sub a:hover {
  background: lightgrey;
}

.addressesOption .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  border-color: #0a0a0a transparent transparent;
}

.adddressBlock {
  cursor: pointer;
  padding: 0.35714rem 0.57143rem;
}

.adddressBlock:hover {
  background: #f9f9f9;
}

.notificationsPanel {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 9999999999999;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);
  min-width: 250px;
}

.notificationsPanel.open {
  top: 30px;
  bottom: 40px;
}

.notificationsPanel .notificationPanelCount {
  background: #F95A61;
  color: white;
  font-weight: normal;
  font-size: 16px;
  padding: 5px;
  border-radius: 5px 5px 0 0;
  text-align: center;
  cursor: pointer;
}

.notificationsPanel .notificationList {
  background: rgba(49, 49, 49, 0.9);
  color: white;
  font-weight: normal;
  overflow-y: auto;
  height: 100%;
  padding: 5px;
}

.notificationsPanel .notificationList .row {
  cursor: pointer;
  border-bottom: 1px solid #fefefe;
}

.notificationsPanel .notificationList .row i {
  font-size: 1.42857rem;
  padding-top: 5px;
  visibility: hidden;
}

.notificationsPanel .notificationList .row i:hover {
  color: #F95A61;
}

.notificationsPanel .notificationList .row:hover {
  background: rgba(49, 49, 49, 0.9);
}

.notificationsPanel .notificationList .row:hover i {
  visibility: visible;
}

.notificationsPanel .notificationList .row .columns {
  padding-top: 0.35714rem;
  padding-bottom: 0.35714rem;
}

.openLabel {
  position: absolute;
  left: -100%;
  width: 40%;
  height: 100%;
  background: #a9a8a4;
  -webkit-transition: 0.4s;
  transition: 0.4s;
  padding: 5px;
  text-align: center;
}

.openLabel h3 {
  padding-top: 1.07143rem;
}

.notificationItem {
  position: relative;
}

.notificationItem:hover .openLabel {
  -webkit-transition: 0.4s;
  transition: 0.4s;
  left: 0;
}

.notificationItem p {
  margin-bottom: 0.35714rem;
}

.notificationItem label {
  text-align: right;
  font-size: 12px;
  color: white;
}

.notificationPanelCount:hover .bounceDown {
  -webkit-animation: bounceDown 2s infinite alternate ease-in-out;
  animation: bounceDown 2s infinite alternate ease-in-out;
}

.notificationPanelCount:hover .bounceUp {
  -webkit-animation: bounceUp 2s infinite alternate ease-in-out;
  animation: bounceUp 2s infinite alternate ease-in-out;
}

.notificationPanelCount .fa-angle-down {
  float: left;
  padding-left: 15px;
  margin-right: -15px;
  font-size: 30px;
  line-height: 23px;
  font-weight: bold;
}

.notificationPanelCount .fa-angle-up {
  float: left;
  padding-left: 15px;
  margin-right: -15px;
  font-size: 30px;
  line-height: 23px;
  font-weight: bold;
}

@-webkit-keyframes bounceDown {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  60% {
    -webkit-transform: translateY(12px);
    transform: translateY(12px);
  }
}

@keyframes bounceDown {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
  60% {
    -webkit-transform: translateY(12px);
    transform: translateY(12px);
  }
}

@-webkit-keyframes bounceUp {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px);
  }
}

@keyframes bounceUp {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-12px);
    transform: translateY(-12px);
  }
}

/*Move to messages*/
.notificationItemRow {
  padding-top: 0.64286rem;
  padding-bottom: 0.64286rem;
  padding-left: 0.57143rem;
  border-bottom: 1px solid #ECEFF1;
  cursor: pointer;
}

.notificationItemRow:hover {
  background: rgba(49, 49, 49, 0.03);
}

.notificationItemRow h3 {
  margin-bottom: 0;
  padding: 2px 0;
}

.notificationItemRow p {
  margin-bottom: 0;
  padding: 2px 0;
}

.notificationItemRow label {
  margin-bottom: 0;
  padding: 2px 0;
}

.notificationItemRow .unreadNotification {
  border-left: 3px solid #F95A61;
}

@media print, screen and (min-width: 48em) {
  .messageBodyCol {
    padding-left: 0.71429rem;
  }
}

.messageBodyCol .closeBar {
  position: relative;
  height: 32px;
  background: #fbfbfb;
  border-radius: 5px;
  margin-bottom: 15px;
}

.messageBodyCol .closeBar .close-button {
  right: 0.5rem;
  top: 0.25rem;
}

.noWidth {
  width: 0%;
  display: inline;
}

.notVisible {
  opacity: 0;
  visibility: hidden;
}

.transition {
  -webkit-transition: 0.4s;
  transition: 0.4s;
  opacity: 1;
  visibility: visible;
}

h2.unreadCount {
  color: #F95A61;
}

.moreInfo {
  text-align: center;
  margin-top: 25px;
}

.recentOrders label {
  display: inline-block;
}

.recentOrders > .row {
  border-bottom: 1px solid #e8e5e5;
  padding-top: 0.42857rem;
  padding-bottom: 0.42857rem;
  cursor: pointer;
}

.recentOrders > .row:hover {
  background: #e8e5e5;
}

#slider-container {
  background-size: contain;
  position: relative;
}

.slider-img {
  width: 100%;
}

.slider-nav {
  position: absolute;
  top: 40%;
  color: #ffffffcc;
  font-size: 50px;
  cursor: pointer;
  display: none;
}

.siteTypePopUp {
  text-align: center;
}

.siteTypePopUp h2 {
  font-size: 18px;
  line-height: 22px;
  color: #4f4f4f;
  padding-top: 5px;
}

.siteTypePopUp a, .siteTypePopUp p {
  font-size: 16px;
  line-height: 22px;
  color: black;
}

.siteTypePopUp a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: #063c7c;
          text-decoration-color: #063c7c;
}

.siteTypePopUp ul {
  text-align: left;
}

.cookieMessage p {
  color: #3a3636;
  font-size: 11px;
  margin-top: 20px;
}

.pop-box-hold {
  display: none;
  opacity: 1;
  position: fixed;
  right: 22px;
  top: 22px;
  z-index: 999999999;
  padding: 15px;
  width: 270px;
  border-radius: 3px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
  background-color: #fff;
  color: black;
}

.pop-box-hold h2 {
  color: black;
  font-size: 15px;
  margin: 0;
  padding-top: 0px;
  padding-bottom: 5px;
}

.pop-box-hold span, .pop-box-hold a, .pop-box-hold p {
  color: black !important;
}

.cart-detail {
  margin-top: 15px;
  text-align: right;
}

.cart-detail a {
  margin-top: 10px !important;
  margin-bottom: 3px !important;
}

.pop-box-hold .button.green, .pop-box-hold .button.green:hover {
  background: #2F9F46;
  color: white !important;
}

.cart-price {
  font-size: 18px;
}

.red-text, .redText {
  color: #b22222 !important;
}

.currencyFlags {
  width: 100%;
  text-align: center;
}

.currencyFlags button {
  border: 0;
  cursor: pointer;
}

.cookie-policy-wrap {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10009;
  background-color: rgba(10, 10, 10, 0.45);
  display: none;
}

.cookie-policy {
  font-size: 16px;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 99999;
  width: 90%;
  background-color: #ffffff;
  padding: 2em;
  border: none;
  -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
          box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
  color: #000000;
  font-weight: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 3px;
}

.cookie-policy [class^="cookie-policy-"] {
  margin-top: 1em;
}

.cookie-policy [class^="cookie-policy-"]:first-child {
  margin-top: 0;
}

@media print, screen and (min-width: 64em) {
  .cookie-policy {
    max-width: 920px;
  }
}

.cookie-policy .cookie-policy--text {
  font-size: 1em;
}

.cookie-policy .cookie-policy--text a {
  font-weight: normal;
  color: #130c00;
  text-decoration: underline;
}

.cookie-policy .cookie-policy--btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media print, screen and (min-width: 48em) {
  .cookie-policy .cookie-policy--btns {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.cookie-policy .cookie-policy--btns .button {
  margin: .5em .5em 0;
}

@media print, screen and (min-width: 48em) {
  .cookie-policy .cookie-policy--btns .button {
    margin-top: 0;
    margin: 1em 1em;
  }
}

.cookie-policy .cookie-policy--btns .button-outline {
  background-color: white;
  color: black;
  border-color: #d3d3d3;
}

/*Vertical Menu Trigger*/
.verticalMenu-trigger:hover {
  background-color: #0a0a0a;
  color: #fefefe;
}

a.verticalMenu-trigger {
  padding-right: 2.57143rem;
}

a.verticalMenu-trigger, a.verticalMenu-trigger:focus, a.verticalMenu-trigger:hover {
  color: #fefefe;
}

.verticalMenu-trigger::before,
.verticalMenu-trigger::after {
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -1px;
  height: 2px;
  width: 9px;
  background: #ffffff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: width 0.3s, -webkit-transform 0.3s;
  transition: width 0.3s, -webkit-transform 0.3s;
  transition: width 0.3s, transform 0.3s;
  transition: width 0.3s, transform 0.3s, -webkit-transform 0.3s;
}

.verticalMenu-trigger::before {
  right: 22px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.verticalMenu-trigger::after {
  right: 17px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.verticalMenu-trigger.dropdown-is-active::before,
.verticalMenu-trigger.dropdown-is-active::after {
  width: 14px;
}

.verticalMenu-trigger.dropdown-is-active::before {
  -webkit-transform: translateX(5px) rotate(-45deg);
  transform: translateX(5px) rotate(-45deg);
}

.verticalMenu-trigger.dropdown-is-active::after {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}

.verticalMenu-trigger.dropdown-is-active {
  background: #F9A519;
  color: #0a0a0a;
}

.verticalMenu-trigger {
  display: block;
  position: relative;
  padding: 0 36px 0 20px;
  line-height: 40px;
  background-color: #313131;
  color: #fefefe;
  font-size: 14px;
  border: none;
  font-weight: 700;
  z-index: 20000;
}

.displayBlock {
  display: block !important;
}

.TierMenu {
  display: none;
}

.TierMenu.dropdown-is-active {
  display: block;
  opacity: 1;
  z-index: 9999999;
}

.top-bar,
.top-bar ul {
  background: none;
}

.top-bar {
  padding: .05rem;
}

.title-bar {
  display: block;
  float: none;
  padding: 0.1rem 0.6rem;
  background: none;
}

.title-bar .menu-icon {
  bottom: -0.35714rem;
}

.mainNav .is-drilldown {
  max-width: 1200px !important;
  margin-top: 0.71429rem;
  display: none;
}

.show-drilldown .is-drilldown {
  display: block;
  margin-bottom: 15px;
}

.mainNav .drilldown a {
  background: none;
  border-bottom: 1px solid #79796A;
}

.TierMenu li.tierHeader {
  font-size: 1rem;
  line-height: 20px;
  padding: 5px 10px;
  font-weight: 700;
  background: #0a0a0a;
}

.mainNav .drilldown .is-drilldown-submenu-parent > a::after {
  border-color: transparent transparent transparent #fefefe;
}

.mainNav .drilldown .is-drilldown-submenu {
  background: #313131;
  min-height: 100%;
}

@media screen and (max-width: 63.9375em) {
  .TierMenu-wrapper.expanded .menu li {
    display: block;
  }
  .TierMenu-wrapper .drilldown .js-drilldown-back > a::before {
    border-color: transparent #fefefe transparent transparent;
  }
  .hide-on-cat-open {
    display: none !important;
  }
  .mainNav {
    position: relative;
    width: 100%;
  }
  .mainNav .top-bar-left {
    display: none;
    width: 100%;
    border-top: 1px solid #dddddd;
  }
  .TierMenu-wrapper.expanded {
    position: absolute;
    width: 100%;
    background: #313131;
  }
  .headerWrapper .TierMenu label {
    padding: 8px;
    background: black;
  }
  .tierHeader {
    font-weight: bold;
  }
  .tierThreeMargin {
    padding-left: 1.78571rem;
  }
}

@media screen and (min-width: 64em) {
  .TierMenu {
    position: absolute;
    top: 100%;
    right: auto;
    left: 0;
  }
  .nearBottom > ul {
    top: auto !important;
    bottom: 0px;
    height: auto;
  }
  .relative {
    position: relative;
  }
  .TierMenu.dropdown-is-active {
    background: white;
  }
  .mainNav .vertical.menu.nested {
    background: white;
    -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  }
  .mainNav .vertical.menu a {
    color: #0a0a0a !important;
  }
}

@media screen and (max-width: 47.9375em) {
  .no-js .top-bar {
    display: none;
  }
}

@media print, screen and (min-width: 64em) {
  .no-js .title-bar {
    display: none;
  }
}

/*Tier Menu Content*/
@media screen and (min-width: 64em) {
  .title-bar {
    display: none;
  }
  .mainNav .is-drilldown {
    display: none;
  }
  .hide-on-cat-open {
    display: inline-block;
  }
  .TierMenu {
    min-width: 320px;
  }
  .TierMenu li.tierHeader {
    font-size: 1rem;
    line-height: 1.42857rem;
    padding: 0.35714rem 0.71429rem;
    font-weight: 700;
    color: #000;
    background: #f4f4f4;
  }
  .TierMenu > li {
    border-top: 1px solid #ebebeb;
  }
  .TierMenu > li > a {
    line-height: 1.42857rem;
    padding-top: 0.35714rem !important;
    padding-bottom: 0.35714rem !important;
    font-size: 0.85714rem;
  }
  .TierMenu.dropdown.menu.vertical > li.opens-right > a::after {
    border-color: transparent transparent transparent #79796A;
  }
  .TierMenu.dropdown.menu .is-active > a {
    border-left: solid 3px;
    border-color: #0a0a0a;
    padding-left: 0.8rem;
  }
  .TierMenu.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
    width: 515px;
    padding: 5px;
  }
  .mainNav .vertical.menu.nested div a {
    white-space: inherit;
    line-height: 1.3rem;
    font-weight: 400;
    display: block;
    padding-left: 0;
    padding-bottom: 0;
    font-size: 0.85714rem;
  }
  .mainNav .vertical.menu.nested div a.tierThreeMargin {
    padding-left: 0.57143rem;
  }
  .tierOneHeader {
    color: #0a0a0a !important;
    font-size: 1.14286rem;
    font-weight: 700;
    padding-bottom: 5px;
    display: inline-block;
  }
  .headerWrapper .TierMenu label {
    color: #0a0a0a;
  }
  .mainNav .vertical.menu.nested div a.tierHeader, .mainNav .vertical.menu.nested div label {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.42857rem;
  }
  .tierDocCount {
    color: #79796A;
    font-size: 0.64286rem;
  }
  .mainNav .vertical.menu.nested li {
    display: block;
  }
  .mainNav .vertical.menu.nested div {
    float: left;
    width: 245px;
    height: auto;
    padding: 4px 8px;
    color: #333;
  }
}

.footerContainer {
  background-color: #313131;
}

.footerBottom {
  max-width: 92.85714rem;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.footerBottom::before, .footerBottom::after {
  display: table;
  content: ' ';
}

.footerBottom::after {
  clear: both;
}

@media print, screen and (min-width: 64em) {
  .footerBottom .footer-col {
    text-align: left;
  }
}

.footerContainer a, .footerContainer p, .footerContainer li, .footerContainer label {
  color: #fefefe;
  font-size: 1rem;
}

.footerContainer a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: #fefefe;
          text-decoration-color: #fefefe;
}

.conradFooter {
  margin: 0 auto;
}

.termsPrivacy {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  padding-bottom: 0.35714rem;
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .termsPrivacy {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .termsPrivacy {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.termsPrivacy:last-child:not(:first-child) {
  float: right;
}

.registerNewsletter {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .registerNewsletter {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .registerNewsletter {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.registerNewsletter:last-child:not(:first-child) {
  float: right;
}

.registerNewsletter button {
  font-weight: bold;
}

.footerBottom .certificate-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (min-width: 64em) {
  .footerBottom .certificate-wrap {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

.footerContainer .bsiGraphic {
  margin: 0 auto;
}

.copyrightContent {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .copyrightContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .copyrightContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.copyrightContent:last-child:not(:first-child) {
  float: right;
}

.bsiContent {
  width: 50%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .bsiContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .bsiContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.bsiContent:last-child:not(:first-child) {
  float: right;
}

.bsiContent img {
  max-height: 100px;
  margin-left: 0.25rem;
}

.paymentLogoContent {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  margin-top: 0.5rem;
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .paymentLogoContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .paymentLogoContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.paymentLogoContent:last-child:not(:first-child) {
  float: right;
}

.socialIconContent {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  margin-top: 0.5rem;
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .socialIconContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .socialIconContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.socialIconContent:last-child:not(:first-child) {
  float: right;
}

.trustPilotContent {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .trustPilotContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .trustPilotContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.trustPilotContent:last-child:not(:first-child) {
  float: right;
}

.trustPilotContent .trustpilot-widget iframe {
  max-height: 130px;
  width: 80%;
}

.footerContainer .accordion, .footerContainer .accordion-content {
  background: #313131;
  border-left: none;
  border-right: none;
}

.footerContainer .accordion-title::before {
  top: 45%;
  font-weight: bold;
  font-size: 1.3rem;
}

.footerContainer .accordion-title:hover, .accordion-title:focus {
  background-color: #0a0a0a;
}

.footerContainer .accordion-title {
  font-size: 1.14286rem;
  border-left: none;
  border-right: none;
}

.footerContainer .accordion-item:last-child > :last-child {
  border-radius: 0px;
}

:last-child:not(.is-active) > .accordion-title {
  border-radius: 0px;
}

.footerContainer .accordion-content ul {
  margin-left: 0px;
}

.footerContainer .accordion-content ul li {
  list-style: none;
  text-indent: unset;
  line-height: 1.57143rem;
}

.footerContainer .socialIconContainer {
  display: inline-block;
  margin: 0 auto;
}

.footerContainer .socialIconContainer a {
  margin: 0.5rem;
}

@media screen and (min-width: 64em) {
  #footerAccordion > li > a.disabled {
    pointer-events: none;
    cursor: default;
    margin-top: 0.71429rem;
    margin-bottom: 1.07143rem;
    font-weight: bold;
  }
  #footerAccordion > li > a[disabled] {
    pointer-events: none;
    cursor: default;
    margin-top: 0.71429rem;
    margin-bottom: 1.07143rem;
    font-weight: bold;
  }
  :last-child > .accordion-content:last-child {
    border-bottom: none;
  }
  .footerContainer ul.accordion {
    max-width: 92.85714rem;
    margin-right: auto;
    margin-left: auto;
    background: none;
  }
  .footerContainer ul.accordion::before, .footerContainer ul.accordion::after {
    display: table;
    content: ' ';
  }
  .footerContainer ul.accordion::after {
    clear: both;
  }
  #footerAccordion .accordion-content {
    display: block !important;
  }
  .footerContainer .accordion-content {
    display: block;
    padding: 0;
    border: none;
    background-color: rgba(254, 254, 254, 0);
    color: #fefefe;
  }
  .footerContainer li.accordion-item {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .footerContainer li.accordion-item {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .footerContainer li.accordion-item {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .footerContainer li.accordion-item:last-child:not(:first-child) {
    float: right;
  }
  .footerContainer li.accordion-item:last-child:not(:first-child) {
    float: left;
  }
  .footerContainer > ul > li > a:hover {
    color: #fefefe;
  }
  .footerContainer > ul > li > a:focus {
    color: #fefefe;
  }
  .footerContainer li > a.accordion-title {
    border-bottom: none !important;
  }
  .footerContainer .accordion-title {
    position: initial;
    display: block;
    padding: 0;
    border: none;
    border-bottom: none;
    line-height: normal;
    line-height: initial;
    color: #fefefe;
  }
  .footerContainer .accordion-title:hover {
    background-color: rgba(254, 254, 254, 0);
  }
  .footerContainer .accordion-title:focus {
    background-color: rgba(254, 254, 254, 0);
  }
  .footerContainer .accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    content: '';
  }
  .registerNewsletter {
    width: 33.33333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .registerNewsletter {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .registerNewsletter {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .registerNewsletter:last-child:not(:first-child) {
    float: right;
  }
  .termsPrivacy {
    width: 33.33333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    text-align: left;
    float: right;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .termsPrivacy {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .termsPrivacy {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .termsPrivacy:last-child:not(:first-child) {
    float: right;
  }
  .copyrightContent {
    width: 50%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    text-align: center;
    text-align: left;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .copyrightContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .copyrightContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .copyrightContent:last-child:not(:first-child) {
    float: right;
  }
  .paymentLogoContent {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    margin-top: 0.85714rem;
    /*.paymentIcons {
            float: right;
            margin: 0px;
        }*/
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .paymentLogoContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .paymentLogoContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .paymentLogoContent:last-child:not(:first-child) {
    float: right;
  }
  .paymentLogoContent img {
    float: left;
    margin-left: 1.625rem;
  }
  .bsiContent {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    margin-right: 6rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .bsiContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .bsiContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .bsiContent:last-child:not(:first-child) {
    float: right;
  }
  .trustPilotContent {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .trustPilotContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .trustPilotContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .trustPilotContent:last-child:not(:first-child) {
    float: right;
  }
  .socialIconContent {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .socialIconContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .socialIconContent {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .socialIconContent:last-child:not(:first-child) {
    float: right;
  }
  .socialIconContent .socialIconContainer {
    float: left;
  }
}

/*Cart Icon*/
.shoppingCartIcon {
  width: 34px;
  height: 32px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -335px -10px no-repeat;
}

@media print, screen and (min-width: 64em) {
  .shoppingCartIcon {
    width: 49px;
    height: 45px;
    display: inline-block;
    background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -276px -10px no-repeat;
  }
}

.shoppingCartIcon {
  position: relative;
  margin-right: 1.07143rem;
}

.shoppingCartIcon .badge {
  position: absolute;
  top: -8px;
  right: -8px;
  font-weight: bold;
  color: #0a0a0a;
  font-size: 0.78571rem;
  min-width: 2.2em;
}

/*End Cart Icon*/
/*Header Layout*/
.topHeaderContent, .mainHeaderContent {
  max-width: 92.85714rem;
  margin-right: auto;
  margin-left: auto;
  max-width: none;
  background: #0a0a0a;
  position: relative;
}

.topHeaderContent::before, .topHeaderContent::after, .mainHeaderContent::before, .mainHeaderContent::after {
  display: table;
  content: ' ';
}

.topHeaderContent::after, .mainHeaderContent::after {
  clear: both;
}

.topHeaderContent, .topHeaderContent a, .topHeaderContent input {
  line-height: 2rem;
  font-size: 1rem;
  margin: 0px;
}

.mainHeaderContent {
  padding-top: 1.28571rem;
}

.mainHeaderContent, .mainHeaderContent a {
  font-size: 1rem;
}

.mainNav, .mainNav a {
  font-size: 1rem;
}

.topHeaderContent .changeSite {
  width: 33.33333%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .topHeaderContent .changeSite {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .topHeaderContent .changeSite {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.topHeaderContent .changeSite:last-child:not(:first-child) {
  float: right;
}

.topHeaderContent .topBasketOptions {
  width: 66.66667%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .topHeaderContent .topBasketOptions {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .topHeaderContent .topBasketOptions {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.topHeaderContent .topBasketOptions:last-child:not(:first-child) {
  float: right;
}

.topHeaderContent .topBasketOptions .access-wrap {
  margin-right: 1em;
  display: inline-block;
}

@media print, screen and (min-width: 48em) {
  .topHeaderContent .topBasketOptions .access-wrap {
    position: relative;
  }
}

.topHeaderContent .topBasketOptions .access-wrap .access-toggle i {
  font-size: 1.2em;
}

.topHeaderContent .topBasketOptions .access-wrap .access-popup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  width: 240px;
  height: 50px;
  background-color: #313131;
  z-index: 1;
  border-radius: 0 0 4px 4px;
  top: 28px;
  right: 50%;
}

@media screen and (max-width: 47.9375em) {
  .topHeaderContent .topBasketOptions .access-wrap .access-popup {
    -webkit-transform: translateX(50%);
            transform: translateX(50%);
  }
}

@media print, screen and (min-width: 48em) {
  .topHeaderContent .topBasketOptions .access-wrap .access-popup {
    right: calc(100% + 1em);
    top: 0;
  }
}

.topHeaderContent .topBasketOptions .access-wrap .access-popup label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.topHeaderContent .topBasketOptions .access-wrap .access-popup label .custom-checkbox {
  margin-right: .5em;
}

.topHeaderContent .thc_Section:last-child {
  text-align: right;
}

.topHeaderContent .thc_Section span {
  display: inline-block;
  text-decoration: none;
  color: #fefefe;
}

.topHeaderContent .thc_Section span > span {
  margin-left: 1em;
}

.topHeaderContent .thc_Section.right span {
  cursor: pointer;
}

.headerBasketContent {
  float: right;
}

.headerLoginContent {
  float: left;
  margin-right: 0.71429rem;
}

@media screen and (max-width: 63.9375em) {
  .headerLoginContent {
    float: right;
  }
}

.logoSection {
  width: 40%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.logoSection:last-child:not(:first-child) {
  float: right;
}

.loginSection {
  width: 60%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.loginSection:last-child:not(:first-child) {
  float: right;
}

.searchBarSection {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
  margin-top: 1.42857rem;
  position: relative;
}

@media print, screen and (min-width: 48em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.searchBarSection:last-child:not(:first-child) {
  float: right;
}

.searchBarSection.tempFix {
  z-index: auto !important;
}

@media screen and (min-width: 64em) {
  .mainHeaderContent {
    padding-bottom: 1.28571rem;
  }
  .topHeaderContent .changeSite {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .topHeaderContent .changeSite {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .topHeaderContent .changeSite {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .topHeaderContent .changeSite:last-child:not(:first-child) {
    float: right;
  }
  .topHeaderContent .contactTop {
    width: 50%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    text-align: center;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .topHeaderContent .contactTop {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .topHeaderContent .contactTop {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .topHeaderContent .contactTop:last-child:not(:first-child) {
    float: right;
  }
  .topHeaderContent .topBasketOptions {
    width: 25%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .topHeaderContent .topBasketOptions {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .topHeaderContent .topBasketOptions {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .topHeaderContent .topBasketOptions:last-child:not(:first-child) {
    float: right;
  }
  .logoSection {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .logoSection:last-child:not(:first-child) {
    float: right;
  }
  .searchBarSection {
    width: 50%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: -33.33333%;
    margin-top: 0px;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .searchBarSection:last-child:not(:first-child) {
    float: right;
  }
  .searchBarSection.tempFix {
    z-index: auto !important;
  }
  .loginSection {
    width: 33.33333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: 50%;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .loginSection:last-child:not(:first-child) {
    float: right;
  }
}

@media screen and (min-width: 75em) {
  .logoSection {
    width: 12.5%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 75em) and (min-width: 48em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) and (min-width: 64em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) {
  .logoSection:last-child:not(:first-child) {
    float: right;
  }
  .searchBarSection {
    width: 58.75%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: -28.75%;
  }
}

@media screen and (min-width: 75em) and (min-width: 48em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) and (min-width: 64em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) {
  .searchBarSection:last-child:not(:first-child) {
    float: right;
  }
  .loginSection {
    width: 28.5%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: 58.75%;
  }
}

@media screen and (min-width: 75em) and (min-width: 48em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) and (min-width: 64em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 75em) {
  .loginSection:last-child:not(:first-child) {
    float: right;
  }
}

@media screen and (min-width: 90em) {
  .logoSection {
    width: 15.55556%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 90em) and (min-width: 48em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) and (min-width: 64em) {
  .logoSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) {
  .logoSection:last-child:not(:first-child) {
    float: right;
  }
  .searchBarSection {
    width: 60%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: -28.33333%;
  }
}

@media screen and (min-width: 90em) and (min-width: 48em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) and (min-width: 64em) {
  .searchBarSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) {
  .searchBarSection:last-child:not(:first-child) {
    float: right;
  }
  .loginSection {
    width: 24.44444%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    position: relative;
    left: 58.33333%;
  }
}

@media screen and (min-width: 90em) and (min-width: 48em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) and (min-width: 64em) {
  .loginSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 90em) {
  .loginSection:last-child:not(:first-child) {
    float: right;
  }
}

.headerWrapper {
  position: relative;
}

.headerWrapper, .headerWrapper a, .headerWrapper label {
  color: #fefefe;
}

.topHeaderContent {
  border-bottom: 1px solid #313131;
}

/*END Header Layout*/
/*SiteType Tabs*/
.siteSelectTabs {
  cursor: pointer;
  -webkit-box-shadow: inset 0 0 10px #000;
  box-shadow: inset 0 0 10px #000;
}

.siteSelectTabs span.activeST {
  background-color: #F9A519;
}

.siteSelectTabs span.activeST a {
  color: #0a0a0a;
  font-weight: bold;
}

.siteSelectTabs span {
  padding: 0 5px;
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 63.9375em) {
  .siteSelectTabs span:last-child {
    padding-left: 0px;
  }
  .siteSelectTabs span:last-child span {
    padding: 0px;
  }
}

/*END SiteType Tabs*/
.basketHeaderTotal {
  line-height: 2.85714rem;
  float: left;
}

/*My Account/Login Menu*/
@media screen and (max-width: 63.9375em) {
  a.myAccountLink {
    padding-left: 0.28571rem !important;
  }
}

a.myAccountLink:hover, .myAccountLink a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: white;
          text-decoration-color: white;
}

a.myAccountLink, .myAccountLink a, .dropdown.menu a.myAccountLink {
  font-weight: bold;
  line-height: 2.85714rem;
  font-size: 1.14286rem;
  padding: 0 0.45rem;
}

.dropdown.menu.myAccountMenu > li.is-dropdown-submenu-parent > a::after {
  border-color: #fefefe transparent transparent;
}

.menu.myAccountMenu .is-active > a {
  color: #fefefe;
}

.dropdown.menu.myAccountMenu > li .menu {
  border: 1px solid #dddddd;
  z-index: 99999;
}

.dropdown.menu.myAccountMenu > li .menu a {
  color: #0a0a0a;
}

.dropdown.menu.myAccountMenu > li .menu a:hover {
  background-color: #F9A519;
}

/*END My Account/Login Menu*/
.mainNav {
  background: #313131;
  z-index: 10008;
  position: relative;
}

/*Chat Link*/
span.chatLink, span.chatLink span {
  cursor: pointer;
}

#site-domain-header {
  background-color: #2F9F46;
}

#site-domain-header .sticky {
  width: 100%;
  z-index: 99999999;
}

#site-domain-header .sticky .site-domain {
  width: 90%;
  margin: 0 auto;
  background-color: #2F9F46;
  padding: 5px;
  text-align: center;
  border-radius: 0 0 5px 5px;
  -webkit-transition: -webkit-box-shadow .1s ease-in-out;
  transition: -webkit-box-shadow .1s ease-in-out;
  transition: box-shadow .1s ease-in-out;
  transition: box-shadow .1s ease-in-out, -webkit-box-shadow .1s ease-in-out;
}

#site-domain-header .sticky .site-domain.stick {
  -webkit-box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
}

@media print, screen and (min-width: 64em) {
  #site-domain-header .sticky .site-domain {
    width: 33.33%;
  }
}

#site-domain-header .sticky h2 {
  color: white;
  font-weight: normal;
  margin: 0;
}

#site-domain-header .sticky h2 a {
  text-decoration: underline;
  color: white;
}

.live-chat-wrap {
  position: fixed;
  bottom: 1.5em;
  right: 1.5em;
  z-index: 1;
  -webkit-transition: all ease-in-out .2s;
  transition: all ease-in-out .2s;
}

.live-chat-wrap:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.live-chat-wrap .live-chat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  border-radius: 2.5em;
}

.live-chat-wrap .live-chat .bubble-text {
  display: none;
}

@media print, screen and (min-width: 48em) {
  .live-chat-wrap .live-chat {
    -webkit-animation: wobble-hor-bottom 8s both 2;
            animation: wobble-hor-bottom 8s both 2;
    -webkit-animation-delay: 8s;
            animation-delay: 8s;
  }
  .live-chat-wrap .live-chat .bubble-text {
    background-color: #d68806;
    border-radius: 2em;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 10em;
    position: relative;
    color: white;
    -webkit-animation: flip-in-ver-right 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
            animation: flip-in-ver-right 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
    -webkit-animation-delay: 2s;
            animation-delay: 2s;
    -webkit-transform-origin: right;
            transform-origin: right;
  }
  .live-chat-wrap .live-chat .bubble-text:after {
    background-color: #d68806;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -2rem;
    width: 4rem;
    content: '';
    z-index: -1;
  }
}

.live-chat-wrap .live-chat .bubble {
  background: #F9A519;
  border-radius: 2em;
  height: 4em;
  width: 4em;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  padding: 1em;
  -webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
          box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.4);
  -webkit-animation: heartbeat 4s ease-in-out infinite both;
          animation: heartbeat 4s ease-in-out infinite both;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
}

.live-chat-wrap .live-chat .bubble i {
  font-size: 2em;
  color: white;
}

@-webkit-keyframes wobble-hor-bottom {
  0%, 20% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
  }
  3% {
    -webkit-transform: translateX(-15px) rotate(-3deg);
            transform: translateX(-15px) rotate(-3deg);
  }
  6% {
    -webkit-transform: translateX(7px) rotate(3deg);
            transform: translateX(7px) rotate(3deg);
  }
  9% {
    -webkit-transform: translateX(-7px) rotate(-1.8deg);
            transform: translateX(-7px) rotate(-1.8deg);
  }
  12% {
    -webkit-transform: translateX(4px) rotate(1.2deg);
            transform: translateX(4px) rotate(1.2deg);
  }
  15% {
    -webkit-transform: translateX(-3px) rotate(-0.6deg);
            transform: translateX(-3px) rotate(-0.6deg);
  }
  20% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
  100% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
}

@keyframes wobble-hor-bottom {
  0%, 20% {
    -webkit-transform: translateX(0%);
            transform: translateX(0%);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
  }
  3% {
    -webkit-transform: translateX(-15px) rotate(-3deg);
            transform: translateX(-15px) rotate(-3deg);
  }
  6% {
    -webkit-transform: translateX(7px) rotate(3deg);
            transform: translateX(7px) rotate(3deg);
  }
  9% {
    -webkit-transform: translateX(-7px) rotate(-1.8deg);
            transform: translateX(-7px) rotate(-1.8deg);
  }
  12% {
    -webkit-transform: translateX(4px) rotate(1.2deg);
            transform: translateX(4px) rotate(1.2deg);
  }
  15% {
    -webkit-transform: translateX(-3px) rotate(-0.6deg);
            transform: translateX(-3px) rotate(-0.6deg);
  }
  20% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
  100% {
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
}

@-webkit-keyframes flip-in-ver-right {
  0% {
    -webkit-transform: rotateY(-80deg);
            transform: rotateY(-80deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
    opacity: 1;
  }
}

@keyframes flip-in-ver-right {
  0% {
    -webkit-transform: rotateY(-80deg);
            transform: rotateY(-80deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0);
            transform: rotateY(0);
    opacity: 1;
  }
}

@-webkit-keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  6% {
    -webkit-transform: scale(1.09);
            transform: scale(1.09);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  12% {
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  18% {
    -webkit-transform: scale(1.13);
            transform: scale(1.13);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  24% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes heartbeat {
  from {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  6% {
    -webkit-transform: scale(1.09);
            transform: scale(1.09);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  12% {
    -webkit-transform: scale(1.02);
            transform: scale(1.02);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  18% {
    -webkit-transform: scale(1.13);
            transform: scale(1.13);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
  }
  24% {
    -webkit-transform: scale(1);
            transform: scale(1);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

#suggestLayer {
  height: 1px;
  z-index: 99999;
  background: transparent;
  position: absolute;
  margin-top: -10px;
  left: 0;
  right: 0;
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  #suggestLayer {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  #suggestLayer {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

#suggestLayer:last-child:not(:first-child) {
  float: right;
}

ul.suggestLayerBlockText {
  margin: 0.71429rem;
}

ul.suggestLayerBlock, div.suggestLayerBlock {
  list-style: none;
  color: #0a0a0a;
  background-color: #fefefe;
  cursor: pointer;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

ul.suggestLayerBlock li, ul.suggestLayerBlockText li {
  list-style: none;
  display: block;
}

li.suggestHeader {
  font-weight: bold;
  border-bottom: 1px solid #dddddd;
  padding: 3px 10px 3px 5px;
}

span.suggestTextQuery {
  display: block;
  padding: 0.35714rem;
  margin: 0.21429rem;
}

li.suggestRow :hover {
  background-color: #dddddd;
}

.highlight {
  background: #E8E5E5;
}

.r_MyAccount_MyAccount_Section {
  height: 150px;
}

.r_MyAccount_MyAccount_Section a {
  display: block;
}

.account-info-box {
  border: dotted 2px #d0cdcd;
  padding: 5px 15px 5px 15px;
  border-radius: 7px;
  background-color: InfoBackground;
  margin-top: 5px;
}

.flex-account-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #d0cdcd;
  padding: 5px;
  background-color: #f2f0f0;
  color: #494848 !important;
  min-height: 90px;
  padding-top: 10px;
}

.flex-account-box:hover {
  background-color: #313131;
  color: #fff !important;
  text-decoration: none;
  border: solid 1px #d0cdcd;
  cursor: pointer;
}

.flex-account-box-child {
  -webkit-box-flex: 6;
      -ms-flex: 6;
          flex: 6;
  margin-right: 20px;
}

.flex-account-box-description {
  display: block;
  font-size: 90%;
}

@media only screen and (max-width: 600px) {
  .flex-account-box-description {
    display: none;
  }
}

.flex-account-box-inflight {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: solid 1px #d0cdcd;
  padding: 5px;
  background-color: #baefd8;
  color: #494848 !important;
}

.flex-account-box-inflight:hover {
  background-color: #313131;
  color: #fff !important;
  text-decoration: none;
  border: solid 1px #d0cdcd;
  cursor: pointer;
}

.grid-container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
}

.fa-stack[data-count]:after {
  position: absolute;
  right: 25%;
  top: 5%;
  content: attr(data-count);
  font-size: 35%;
  padding: .99em;
  border-radius: 999px;
  line-height: .99em;
  color: white;
  background: red;
  text-align: center;
  min-width: 3em;
  font-weight: bold;
}

h1.mainHeading {
  border-bottom: 1px solid #dddddd;
  margin-bottom: 0.71429rem;
}

table.expandTable tbody tr.detailRow:nth-child(4n-1) {
  border-bottom: 0;
  background-color: #e8e5e5;
}

.adminTableLink {
  color: #1153AD;
  text-decoration: underline;
  -webkit-text-decoration-color: #1153AD;
          text-decoration-color: #1153AD;
  cursor: pointer;
}

.expandedRow {
  border-bottom: 0;
  /*background-color: $light-gray;*/
}

.hiddenTableContent {
  padding: 0.35714rem;
  padding-top: 0.71429rem;
  border: 1px solid #e3e3e3;
  background: #fefefe;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}

.graph-wrap {
  position: relative;
  padding-bottom: calc(10 / 16 * 100%);
}

.graph-wrap .graph {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

@-webkit-keyframes chartjs-render-animation {
  from {
    opacity: .99;
  }
  to {
    opacity: 1;
  }
}

@keyframes chartjs-render-animation {
  from {
    opacity: .99;
  }
  to {
    opacity: 1;
  }
}

.chartjs-render-monitor {
  -webkit-animation: chartjs-render-animation 1ms;
          animation: chartjs-render-animation 1ms;
}

.chartjs-size-monitor, .chartjs-size-monitor-expand, .chartjs-size-monitor-shrink {
  position: absolute;
  direction: ltr;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  pointer-events: none;
  visibility: hidden;
  z-index: -1;
}

.chartjs-size-monitor-expand > div {
  position: absolute;
  width: 1000000px;
  height: 1000000px;
  left: 0;
  top: 0;
}

.chartjs-size-monitor-shrink > div {
  position: absolute;
  width: 200%;
  height: 200%;
  left: 0;
  top: 0;
}

.orderSummaryTable {
  display: table;
}

.orderSummaryTable tr {
  display: table-row !important;
}

.orderSummaryTable td {
  display: table-cell !important;
}

.orderSummaryTable tr > td:nth-of-type(2) {
  background-color: #e8e5e5;
  width: 8.92857rem;
  text-align: center;
}

.orderSummaryTable tr > td:nth-of-type(1) {
  font-weight: bold;
  padding-right: 0.35714rem;
  text-align: right;
  width: 7.85714rem;
}

.totalPriceCol {
  background: #e8e5e5;
}

@media screen and (max-width: 63.9375em) {
  .totalPriceCol {
    display: none !important;
  }
}

tfoot .totalPriceCol {
  font-size: 1.28571rem;
}

.promo-accordion-wrap {
  border-radius: 5px;
  overflow: hidden;
  -webkit-box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
}

[class|="promo-accordion-item"] {
  padding: 1rem;
  background-color: #e8e5e5;
  color: #313131;
  font-size: 1.3em;
  cursor: pointer;
  -webkit-transition: background-color .1s ease-in-out;
  transition: background-color .1s ease-in-out;
}

[class|="promo-accordion-item"].open, [class|="promo-accordion-item"]:hover {
  background-color: #e1dddd;
}

[class|="promo-accordion-item"]:before {
  content: "\f054";
  font-family: FontAwesome;
  margin-right: 1em;
}

[class|="promo-accordion-item"].open:before {
  content: "\f078";
}

[class|="promo-accordion-item"].disabled {
  color: rgba(49, 49, 49, 0.4);
  cursor: not-allowed;
}

[class|="promo-accordion-item"].disabled:hover {
  background-color: #e8e5e5 !important;
}

[class|="promo-content"] {
  max-height: 100vh;
  -webkit-transition: max-height .5s ease-in-out;
  transition: max-height .5s ease-in-out;
}

[class|="promo-content"].closed {
  max-height: 0;
  -webkit-transition: none;
  transition: none;
  overflow: hidden;
}

[class|="promo-content"] .promo-options {
  padding: 1em;
}

.button-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0;
  margin-top: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.button-group.save .button {
  margin-left: auto;
}

.button-group .promo-info_persistent {
  margin-left: auto;
  margin-right: 10px;
  padding: 6px 10px;
}

.button-group .button {
  margin-right: 10px;
}

.button-group .button:last-child {
  margin-right: 0;
}

.button-group-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 10px;
}

.button-group-left .button {
  margin: 0 10px 0 0;
}

.button-group-left .nb {
  margin-right: auto;
}

.button-group-left .nb .promo-info_persistent {
  padding: 5px 10px;
}

.promo-info {
  position: relative;
}

.promo-info.hover .promo-info_box, .promo-info.focus .promo-info_box {
  opacity: 1;
  visibility: visible;
}

.promo-info .promo-info_box {
  display: block;
  border-radius: 3px;
  background-color: #2F9F46;
  color: #fefefe;
  position: absolute;
  right: 0;
  bottom: 100%;
  height: auto;
  padding: 10px;
  font-size: .9rem;
  text-align: left;
  -webkit-transition: ease-in-out .3s all;
  transition: ease-in-out .3s all;
  opacity: 0;
  visibility: hidden;
  -webkit-box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
  z-index: 1;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.promo-info .promo-info_box:hover {
  cursor: default;
}

.promo-info_persistent {
  font-style: italic;
  display: block;
  border-radius: 3px;
  background-color: #575757;
  color: #fefefe;
  font-size: .9rem;
  padding: 10px;
  -webkit-box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.4);
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.promo-info_persistent.dark {
  background-color: #313131;
}

.switch-toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.switch-toggle .switch {
  display: inline-block;
  margin-left: auto;
  height: 34px;
  position: relative;
  width: 60px;
  cursor: pointer;
}

.switch-toggle .switch.disabled {
  cursor: not-allowed;
}

.switch-toggle .switch.disabled .slider-toggle:before {
  background-color: #e1dddd;
}

.switch-toggle .switch input {
  display: none;
}

.switch-toggle .switch input:checked + .slider-toggle:before {
  -webkit-transform: translateX(26px);
          transform: translateX(26px);
}

.switch-toggle .switch input:checked + .slider-toggle:after {
  content: "%";
  left: calc(26px / 2);
  -webkit-transform: translateX(26px);
          transform: translateX(26px);
}

.switch-toggle .switch .slider-toggle {
  background-color: #e1dddd;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transition: .4s;
  transition: .4s;
}

.switch-toggle .switch .slider-toggle.round {
  border-radius: 34px;
}

.switch-toggle .switch .slider-toggle.round:before {
  border-radius: 50%;
}

.switch-toggle .switch .slider-toggle:before {
  background-color: #fff;
  bottom: 4px;
  content: "";
  height: 26px;
  left: 4px;
  position: absolute;
  -webkit-transition: .4s;
  transition: .4s;
  width: 26px;
}

.switch-toggle .switch .slider-toggle:after {
  content: "£";
  position: absolute;
  left: calc(22px / 2);
  top: 5px;
  -webkit-transition: .4s;
  transition: .4s;
}

.skuTop {
  margin-top: 1rem;
  margin-bottom: 1rem;
  position: relative;
}

.prodKeyDetails {
  color: #0a0a0a;
  display: block;
  padding: 0.35714rem 0;
}

.prodKeyDetails a {
  color: #0a0a0a;
}

.prodBrandLogo {
  float: right;
  margin-right: 40%;
}

.orderCode {
  color: #0a0a0a;
}

.orderCode span {
  display: inline-block;
}

.orderCode h2 {
  display: inline-block;
  font-size: 1rem;
}

.orderCode a {
  color: #0a0a0a;
}

.orderCode a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: #0a0a0a;
          text-decoration-color: #0a0a0a;
}

.complianceList {
  list-style: none;
  margin-left: 0;
  margin-top: 0.35714rem;
  color: #0a0a0a;
}

.complianceList li {
  display: block;
  padding: 0.35714rem 0;
}

.complianceList li a {
  color: #0a0a0a;
}

h1.prodTitle {
  margin-top: 0.65rem;
}

.reportErrorLink {
  display: block;
  text-align: right;
  color: black;
  margin-top: -12px;
  padding-bottom: 4px;
}

@media screen and (max-width: 63.9375em) {
  .reportErrorLink {
    margin-bottom: 0.92857rem;
    text-align: left;
    display: inline-block;
  }
}

.reportErrorLink:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: black;
          text-decoration-color: black;
  color: #0a0a0a;
}

.stockMessage {
  font-weight: bold;
  text-align: left;
  font-size: 1rem;
  line-height: 1.42857rem;
}

.product-moq-text {
  display: block;
  text-align: right;
}

@media screen and (min-width: 40em) {
  .skuStickToBottom {
    position: absolute;
    bottom: 5px;
    width: 97%;
  }
}

.stockNotification {
  text-align: center;
}

.dataSheetItem {
  float: left;
  padding: 5px;
  margin: 10px;
}

.tabs-panel {
  overflow: auto;
}

.skuTabs {
  background: #f7f6f6;
}

.skuTabs .tabs-title {
  border-right: 1px solid #e8e5e5;
}

.skuTabs .tabs-title:last-child {
  border-right: none;
}

.skuTabs .tabs-title:hover {
  background: #e8e5e5;
}

.skuTabs .tabs-title a {
  padding: 1.25rem 0.85rem;
  font-size: 1.1rem;
  color: #0a0a0a;
}

.skuTabs .tabs-title a:hover {
  background: #e8e5e5;
}

.skuTabs .tabs-title.is-active a {
  color: #0a0a0a;
  font-weight: bold;
}

.skuTabs .accordion-title {
  color: #0a0a0a;
  font-size: 1.14286rem;
}

.skuTabs .accordion-title:focus, .skuTabs .footerContainer .accordion-title:hover {
  background-color: #fefefe;
}

.skuTabs .accordion-content {
  overflow: auto;
}

.skuTabs .accordion-item.is-active .accordion-title {
  color: #0a0a0a;
  font-weight: bold;
}

.skuTabs iframe {
  width: 50%;
  margin: 0 auto;
}

@media screen and (max-width: 47.9375em) {
  .skuTabs iframe {
    width: 95%;
  }
}

.viewFullRange {
  font-size: 1.07143rem;
}

.viewFullRange:hover {
  text-decoration: underline;
}

.skuTech th {
  background: #f7f6f6;
  font-weight: normal;
  width: 33%;
}

.product-attributes-table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 1rem 0;
}

.product-attributes-table tbody {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}

.product-attributes-table tbody tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.product-attributes-table tbody tr th {
  width: 40%;
  text-align: left;
  background-color: #e8e5e5;
}

@media screen and (min-width: 64em) {
  .product-attributes-table.stagger-table tbody tr {
    width: 50%;
  }
}

.stockMessage {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.smallStockMessage {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.smallStockMessage .stock-message-info_box {
  /*bottom: 100%;
        top: auto;*/
}

.stockMessage,
.smallStockMessage,
.stock-message-basket {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  position: relative;
}

.stockMessage span,
.smallStockMessage span,
.stock-message-basket span {
  display: block;
}

.stockMessage span:nth-child(2),
.smallStockMessage span:nth-child(2),
.stock-message-basket span:nth-child(2) {
  font-weight: normal;
}

.stockMessage .stock-message-text,
.smallStockMessage .stock-message-text,
.stock-message-basket .stock-message-text {
  text-align: right;
}

.stockMessage .stock-message-text a,
.smallStockMessage .stock-message-text a,
.stock-message-basket .stock-message-text a {
  color: inherit;
  text-decoration: underline;
}

.stockMessage .stock-message-info,
.smallStockMessage .stock-message-info,
.stock-message-basket .stock-message-info {
  color: #79796A;
  width: 19px;
  height: 19px;
  font-size: 18px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  font-weight: 400;
  margin-right: .2em;
  margin-top: .2em;
}

@media print, screen and (min-width: 64em) {
  .stockMessage .stock-message-info,
  .smallStockMessage .stock-message-info,
  .stock-message-basket .stock-message-info {
    position: relative;
  }
}

.stockMessage .stock-message-info_box,
.smallStockMessage .stock-message-info_box,
.stock-message-basket .stock-message-info_box {
  display: block;
  border-radius: 3px;
  background-color: #313131;
  color: #fefefe;
  position: absolute;
  width: 300px;
  height: auto;
  padding: 10px;
  font-size: .65em;
  text-align: left;
  -webkit-transition: ease-in-out .3s all;
  transition: ease-in-out .3s all;
  opacity: 0;
  visibility: hidden;
  -webkit-box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.4);
          box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.4);
  z-index: 1;
  top: calc(100% + .2em);
  bottom: auto;
  right: 0;
}

@media print, screen and (min-width: 48em) {
  .stockMessage .stock-message-info_box,
  .smallStockMessage .stock-message-info_box,
  .stock-message-basket .stock-message-info_box {
    right: 0;
    top: calc(100% + .2em);
    bottom: auto;
  }
}

@media print, screen and (min-width: 64em) {
  .stockMessage .stock-message-info_box,
  .smallStockMessage .stock-message-info_box,
  .stock-message-basket .stock-message-info_box {
    right: calc(100% + .2em);
    top: 0;
    bottom: auto;
  }
}

.stockMessage .stock-message-info_box.active,
.smallStockMessage .stock-message-info_box.active,
.stock-message-basket .stock-message-info_box.active {
  opacity: 1;
  visibility: visible;
}

.stockMessage .stock-message-info_box:hover,
.smallStockMessage .stock-message-info_box:hover,
.stock-message-basket .stock-message-info_box:hover {
  cursor: default;
}

@media print, screen and (min-width: 64em) {
  .stock-message-search .stock-message-info {
    position: relative;
  }
}

.stock-message-basket {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media print, screen and (min-width: 48em) {
  .stock-message-basket {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

.stock-message-basket .stock-message-text {
  text-align: left;
  margin-bottom: 2em;
}

@media print, screen and (min-width: 48em) {
  .stock-message-basket .stock-message-text {
    margin-bottom: 0;
  }
}

.stock-message-basket .stock-message-info {
  margin-left: 0;
}

.stock-message-basket .stock-message-info_box {
  top: calc(100% + .2em - 2em);
  bottom: auto;
  left: 0;
  right: auto;
}

@media print, screen and (min-width: 48em) {
  .stock-message-basket .stock-message-info_box {
    top: auto;
    bottom: calc(100% + .2em);
    left: 0;
    right: auto;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media print, screen and (min-width: 64em) {
  .stock-message-basket .stock-message-info_box {
    -webkit-transform: none;
            transform: none;
  }
}

@media print, screen and (min-width: 64em) {
  .stock-message-merge .stock-message-info_box {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

.stock-message-table .stock-message-info {
  margin-right: 0;
  margin-left: .2em;
}

@media print, screen and (min-width: 64em) {
  .stock-message-table .stock-message-info {
    position: relative;
  }
}

.stock-message-table .stock-message-info_box {
  right: 0;
  left: auto;
  top: calc(100% + .2em);
  bottom: auto;
}

@media print, screen and (min-width: 64em) {
  .stock-message-table .stock-message-info_box {
    right: auto;
    left: calc(100% + .2em);
    top: 0;
  }
}

.legacy-stock-message {
  text-align: right;
}

.tierHeading {
  margin-top: 0.35714rem;
}

.tierHeading h1 {
  float: left;
}

.tierNavSection {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.tierNavSection:last-child:not(:first-child) {
  float: right;
}

.tierMiddleWide {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.tierMiddleWide:last-child:not(:first-child) {
  float: right;
}

.tierMiddleMedium {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.tierMiddleMedium:last-child:not(:first-child) {
  float: right;
}

.tierMiddleSmall {
  width: 100%;
  float: left;
  padding-right: 0.35714rem;
  padding-left: 0.35714rem;
}

@media print, screen and (min-width: 48em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

.tierMiddleSmall:last-child:not(:first-child) {
  float: right;
}

@media screen and (min-width: 48em) {
  .tierNavSection {
    width: 24%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*&.tierandSide {
            @include grid-col-pos(-9.12);
        }

         &.tiersOnly {
             @include grid-col-pos(-9.12);
        }*/
  }
}

@media screen and (min-width: 48em) and (min-width: 48em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 64em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) {
  .tierNavSection:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleWide {
    width: 100%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 48em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 64em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) {
  .tierMiddleWide:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleMedium {
    width: 76%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*@include grid-col-pos(2.88);*/
  }
}

@media screen and (min-width: 48em) and (min-width: 48em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 64em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) {
  .tierMiddleMedium:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleSmall {
    width: 76%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*@include grid-col-pos(2.88);*/
  }
}

@media screen and (min-width: 48em) and (min-width: 48em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) and (min-width: 64em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 48em) {
  .tierMiddleSmall:last-child:not(:first-child) {
    float: right;
  }
  .tierRightSection {
    display: none;
  }
}

@media screen and (min-width: 64em) {
  .tierNavSection {
    width: 24%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*&.tierandSide {
            @include grid-col-pos(-6.6);
        }

         &.tiersOnly {
             @include grid-col-pos(-9.12);
        }*/
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierNavSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierNavSection:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleWide {
    width: 100%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierMiddleWide {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierMiddleWide:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleMedium {
    width: 76%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*@include grid-col-pos(2.88);*/
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierMiddleMedium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierMiddleMedium:last-child:not(:first-child) {
    float: right;
  }
  .tierMiddleSmall {
    width: 55%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    /*@include grid-col-pos(2.88);*/
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierMiddleSmall {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierMiddleSmall:last-child:not(:first-child) {
    float: right;
  }
  .tierRightSection {
    display: block;
    width: 21%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 48em) {
  .tierRightSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) and (min-width: 64em) {
  .tierRightSection {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (min-width: 64em) {
  .tierRightSection:last-child:not(:first-child) {
    float: right;
  }
}

ul.tierpageNav {
  list-style: none;
  margin-left: 0px;
  padding-left: 0.28571rem;
}

ul.tierpageNav li {
  margin: 0.35714rem 0;
  padding: 0.35714rem 0;
  border-bottom: 1px solid #e8e5e5;
}

@media print, screen and (min-width: 48em) {
  ul.tierpageNav li {
    margin: 0;
    padding: 0.3rem 0;
  }
}

ul.tierpageNav li:last-child {
  border-bottom: none;
}

ul.tierpageNav li a {
  color: black;
  font-size: 1.14286rem;
}

@media print, screen and (min-width: 48em) {
  ul.tierpageNav li a {
    font-size: 1.05rem;
  }
}

ul.tierpageNav li a:hover {
  text-decoration: underline;
}

.brandSection {
  text-align: center;
}

.brandSection h2 {
  text-align: left;
}

.brandSection a {
  display: inline-block;
  padding: 0px 20px 5px 20px;
}

.brandSection a img {
  padding-bottom: 2px;
  width: 100px;
  image-rendering: -moz-crisp-edges;
  image-rendering: -o-crisp-edges;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: optimize-contrast;
}

.brandSection a h3 {
  color: #79796A;
  font-weight: normal;
}

.brandSection a:hover h3 {
  color: #0a0a0a;
}

a.topBrandsViewAll {
  padding-top: 0.71429rem;
  text-align: right;
  display: block;
  color: #79796A;
}

a.topBrandsViewAll:hover {
  color: black;
}

.tierAdverts .column img, .tierAdverts .columns img {
  margin-bottom: 0.71429rem;
  image-rendering: -moz-crisp-edges;
  /* Firefox */
  image-rendering: -o-crisp-edges;
  /* Opera */
  image-rendering: -webkit-optimize-contrast;
  /* Webkit (non-standard naming) */
  image-rendering: crisp-edges;
  -ms-interpolation-mode: nearest-neighbor;
  /* IE (non-standard property) */
}

.tierAdverts .column a, .tierAdverts .columns a {
  color: #0a0a0a;
}

.moduleView .moduleBlock {
  text-align: center;
  padding: 0.71429rem;
}

.moduleView .moduleBlock a {
  color: black;
  display: block;
  line-height: 1.28571rem;
}

.moduleView .moduleBlock a img {
  width: 50%;
  padding-bottom: 5px;
  margin: 0 auto;
  display: block;
}

.moduleView .moduleBlock a:hover {
  color: black;
  text-decoration: underline;
}

.moduleView .moduleBlock a:hover img {
  text-decoration: none;
}

.parametricSearchButton {
  position: absolute;
  right: 10px;
}

@media screen and (max-width: 47.9375em) {
  .parametricSearchButton {
    position: relative;
    display: inline-block;
    float: right;
  }
  .parametricSearchButton:after {
    clear: both;
  }
}

.button.hollow.lighterGray {
  border: 1px solid #bdc3c7;
  color: #bdc3c7;
}

.button.lighterGray {
  background-color: #bdc3c7;
  color: #fefefe;
}

.button.lighterGray:focus {
  background-color: #313131;
  color: #fefefe;
}

.button.lighterGray:hover {
  background-color: #313131;
  color: #fefefe;
}

.button.hollow.lighterGray {
  border: 1px solid #bdc3c7;
  color: #bdc3c7;
  background: none;
}

.button.hollow.lighterGray:focus {
  border-color: #313131;
  color: #313131;
}

.button.hollow.lighterGray:hover {
  border-color: #313131;
  color: #313131;
}

.quickTaskFilters {
  list-style: none;
  margin-left: 0;
}

.quickTaskFilters label, .quickTaskFilters a {
  color: #3c3c3c;
  /*font-weight:bold;*/
  text-transform: uppercase;
  font-size: 1.1rem;
}

.quickTaskFilters li {
  font-size: 1.07143rem;
  padding: 0.78571rem 0.14286rem;
  cursor: pointer;
}

.quickTaskFilters li.taskFilterDivider {
  border-bottom: 1px solid #e8e5e5;
  line-height: 0px;
  padding: 0px;
}

.quickTaskFilters li.taskFilterDivider:hover {
  background: none;
}

.quickTaskFilters li select {
  border: none;
}

.quickTaskFilters li select:focus {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.quickTaskFilters li i {
  font-size: 20px !important;
  padding-right: 5px;
}

.quickTaskFilters li span {
  color: #3c3c3c;
  font-size: 0.78571rem;
}

.quickTaskFilters li select {
  margin-top: 0.85714rem;
}

.taskFiltersCol {
  /*@include grid-column;*/
  /*background:#F9FAFE !important;*/
  background: #EFEFF4 !important;
  /*@include breakpoint(large) {
        @include grid-column(2 of 12);
        //to match height of parent - only works as page is 2 columns so right col is floated right.
        height:100%  !important;
        position:absolute !important;
        border-right:1px solid $light-gray;
     }*/
}

@media screen and (max-width: 63.9375em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large {
    z-index: 999999 !important;
    padding: 0.35714rem;
  }
}

@media print, screen and (min-width: 64em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
    height: 100%  !important;
    position: absolute !important;
    border-right: 1px solid #e8e5e5;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 48em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .taskFiltersCol.off-canvas.in-canvas-for-large:last-child:not(:first-child) {
    float: right;
  }
}

.taskSwitch {
  padding: 3px 0px;
  display: block;
  text-align: center;
}

.taskSwitch:hover {
  color: #fefefe;
  background: #bdc3c7;
}

.taskPageCont span.label {
  border-radius: 0.71429rem;
  margin: 2.5px 5px 2.5px;
}

.taskPageCont span.label .secondary {
  background: #A1AAB2;
}

.taskRow {
  max-height: 200px;
  overflow: hidden;
  -webkit-transition: max-height 1.2s;
  transition: max-height 1.2s;
}

.taskRow.open {
  max-height: 1450px;
  overflow: visible;
}

.resultsCount {
  margin: 7px 0px;
  display: inline-block;
}

h1.taskPageTitle {
  display: inline-block;
  margin: 0.57143rem 0 0 0;
  color: #3c3c3c;
  font-size: 1.35rem;
}

.taskDetails {
  background: #F9F9F9;
  padding: 0.5rem;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

.taskDetails label {
  font-size: 1.07143rem;
  color: #79796A;
}

.taskDetails label span {
  color: #79796A;
  font-size: 0.78571rem;
}

.show-quickTaskFilters {
  display: block !important;
}

.taskHeaderBar {
  min-height: 3.64286rem;
  background: #fffff2;
  border-bottom: 1px solid #e8e5e5;
  /*box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);*/
  padding: 0.42857rem 0;
}

.taskHeaderBar.row.expanded {
  margin-right: -.57143rem;
  margin-left: -.57143rem;
}

.taskHeaderBar .button {
  margin: 0.25rem 0.25rem 0.25rem;
  padding: .55em .75em;
}

.taskPageCont {
  overflow: hidden;
  position: relative;
  margin-bottom: -1.57143rem;
  padding-bottom: 0.71429rem;
  min-height: 35.35714rem;
  /*background:#F5F5F6;*/
  background: #FAFAFA;
}

.tasksContainer {
  /*border:1px solid $light-gray;*/
  margin-top: 0.71429rem;
  max-width: 82.14286rem;
  padding: 0.42857rem;
  background: white;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}

@media print, screen and (min-width: 48em) {
  .tasksContainer {
    margin-left: 0.78571rem;
    margin-right: 0.78571rem;
  }
}

.taskRow {
  border-bottom: 1px solid #e8e5e5;
}

.taskRow:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.taskRow:hover {
  background: #e8e5e5;
}

.taskRow .nonEditable {
  margin: 5px;
  cursor: pointer;
}

@media screen and (max-width: 47.9375em) {
  .taskRow .nonEditable span {
    padding-top: 0.21429rem;
    padding-bottom: 0.21429rem;
  }
}

.taskRow .nonEditable .fa-star {
  color: #e81212;
}

.taskRow .nonEditable .hollow-sqaure-notification {
  border: 1px solid #313131;
  color: #313131;
  margin: 0;
  display: inline-block;
  border-radius: .18rem;
  padding: 0 .55em;
  font-weight: bold;
  float: right;
}

@media print, screen and (min-width: 48em) {
  .taskRow .nonEditable {
    line-height: 2.21429rem;
  }
}

.taskRow .nonEditable h2 {
  font-weight: normal;
  padding: 0.5rem 0;
  margin: 0;
  color: #3c3c3c;
}

.taskRow .nonEditable .editBtn {
  display: none;
  min-width: 5rem;
  border: 1px solid #e8e5e5;
  border-radius: 3px;
  background: #fefefe;
}

@media screen and (max-width: 47.9375em) {
  .taskRow .nonEditable .editBtn {
    margin: 0.71429rem auto;
    float: right;
  }
}

.taskRow .nonEditable .editBtn .btnIcon {
  display: inline-block;
  background: #F9A519;
}

.taskRow .nonEditable .editBtn .btnIcon i {
  padding: 0.35714rem;
  font-size: 1.28571rem;
}

.taskRow .nonEditable .editBtn .btnText {
  display: inline-block;
  padding: 0 0.42857rem;
}

.taskRow .nonEditable:hover .editBtn {
  display: inline-block;
  cursor: pointer;
}

.tabsArea .tabs-content {
  background: none;
  border: none;
}

.tabsArea .tabs-content .tabs-panel {
  padding: 0px;
  overflow: visible;
}

.tabsArea .tabs {
  border: none;
  border-bottom: 1px solid #e8e5e5;
  margin-bottom: 0.71429rem;
  background: none;
}

.tabsArea .tabs .tabs-title {
  width: 31%;
  text-align: center;
  padding-bottom: 4px;
  margin-right: 3px;
  background: #f8f9fa;
}

.tabsArea .tabs .tabs-title:hover {
  padding-bottom: 0px;
  border-bottom: 4px solid #e8e5e5;
}

.tabsArea .tabs .tabs-title a {
  padding: 0.57143rem;
}

.tabsArea .tabs .tabs-title a:focus {
  background: none;
}

.tabsArea .tabs .tabs-title a:hover {
  background: none;
}

.tabsArea .tabs .tabs-title a label {
  font-size: 1.14286rem;
  cursor: pointer;
  font-weight: normal;
}

.tabsArea .tabs .tabs-title.is-active {
  padding-bottom: 0px;
  border-bottom: 4px solid #F9A519;
  background: #f5f7f8;
}

.tabsArea .tabs .tabs-title.is-active a label {
  font-weight: bold;
}

.todoContainer, .taskNotesContainer {
  background: #fefefe;
  padding: 0 0.71429rem;
  overflow-y: auto;
  border: 1px solid #e8e5e5;
  border-radius: 4px;
  height: 22.5rem;
  margin-bottom: 0.71429rem;
}

.todoContainer .fa-star {
  color: #e81212;
}

.quill-outer .ql-tooltip, .quill-outer .ql-clipboard {
  z-index: 999999;
}

.quill-outer .quill-editor {
  background: #fefefe;
}

.quill-outer .quill-editor .ql-toolbar.ql-snow, .quill-outer .quill-editor .ql-container.ql-snow {
  border: 1px solid #e8e5e5;
}

.quill-outer button {
  margin: 10px 0px 0px 0px;
}

.quill-outer .ql-container {
  height: 15.71429rem;
}

.todoRow {
  border-bottom: 1px solid #e8e5e5;
  cursor: pointer;
  padding: 0.35714rem 0;
}

.todoRow .label {
  line-height: 1.3rem;
}

.todoRow p {
  margin-bottom: 0.14286rem;
}

.todoRow:hover {
  background: #e8e5e5;
}

.noteRow {
  border-bottom: 1px solid #e8e5e5;
}

.noteRow p {
  margin-bottom: -0.14286rem;
  margin-top: 0.21429rem;
}

.noteRow .noteDate {
  color: #79796A;
  font-size: 0.85714rem;
}

.taskSave {
  float: right;
  margin-bottom: 0.35714rem;
}

/*todo menu transition*/
.panel-slider {
  position: relative;
  max-height: 0;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: .4s;
          transition-duration: .4s;
  -webkit-transition-timing-function: cubic-bezier(1, 0, 0.5, 0);
          transition-timing-function: cubic-bezier(1, 0, 0.5, 0);
  background: #EFEFF4;
}

.panel-slider.open {
  max-height: 500px;
  margin-top: 8px;
  padding: 0.35714rem;
  border-radius: 0.28571rem;
}

.panel-slider.open .button {
  margin: 0.35714rem 0;
}

.panel-slider.open::before {
  border-right: solid 15px transparent;
  border-left: solid 15px transparent;
  border-bottom: solid 15px #EFEFF4;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  position: absolute;
  content: '';
  top: -15px;
  left: 50%;
  height: 0;
  width: 0;
}

.todoAttatchments {
  text-align: center;
  padding: 1.07143rem;
  background: #F6F7F8;
}

.todoAttatchments h2, .todoAttatchments h3 {
  color: #6f6f6f;
}

.todoAttatchments i {
  color: #c0c2c3;
}

@media print, screen and (min-width: 64em) {
  .todoAttatchments [type='file'] {
    width: 40%;
  }
}

.todoAttatchments hr {
  margin: 0.35714rem;
}

.bdmFileUploads {
  max-height: 10.35714rem;
  overflow-y: auto;
}

.bdmFileUploads .link {
  margin-bottom: 0.28571rem;
  cursor: pointer;
}

.bdmFileUploads .link:hover {
  background: #d6d8da;
}

.bdmLoading {
  position: fixed;
  z-index: 9999999999;
  height: 2em;
  width: 2em;
  overflow: visible;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

/* Transparent Overlay */
.bdmLoading:before {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

/* :not(:required) hides these rules from IE9 and below */
.bdmLoading:not(:required) {
  /* hide "bdmLoading..." text */
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.bdmLoading:not(:required):after {
  content: '';
  display: block;
  font-size: 10px;
  width: 1em;
  height: 1em;
  margin-top: -0.5em;
  -webkit-animation: spinner 1500ms infinite linear;
  animation: spinner 1500ms infinite linear;
  border-radius: 0.5em;
  -webkit-box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.5) -1.5em 0 0 0, rgba(0, 0, 0, 0.5) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
  box-shadow: rgba(0, 0, 0, 0.75) 1.5em 0 0 0, rgba(0, 0, 0, 0.75) 1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) 0 1.5em 0 0, rgba(0, 0, 0, 0.75) -1.1em 1.1em 0 0, rgba(0, 0, 0, 0.75) -1.5em 0 0 0, rgba(0, 0, 0, 0.75) -1.1em -1.1em 0 0, rgba(0, 0, 0, 0.75) 0 -1.5em 0 0, rgba(0, 0, 0, 0.75) 1.1em -1.1em 0 0;
}

/* Animation */
@-webkit-keyframes spinner {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

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

.bdmSearch .bdmSearchClose {
  display: inline-block;
  padding: 0 0.21429rem;
  float: right;
}

.bdmSearch .bdmSearchClose i {
  color: #EFEFF4;
  cursor: pointer;
}

.bdmSearch .bdmSearchClose i:hover {
  color: #a29e9e;
}

.bdmSearch h2 {
  padding-top: 0.35714rem;
}

.bdmSearch .highlight {
  background: yellow;
}

.bdmSearch .searchResult {
  margin: 0.28571rem 0;
  border-bottom: 1px solid #e8e5e5;
  cursor: pointer;
  padding: 0.42857rem 0.28571rem;
}

.bdmSearch .searchResult p {
  margin: 0px;
}

.bdmSearch .searchResult:hover {
  background: #e4e4e4;
}

@media print, screen and (min-width: 64em) {
  .todoForm {
    max-height: 35.71429rem;
    overflow-y: auto;
  }
  .todoForm thead [class|="todo"] {
    min-height: 85px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .todoForm [class|="todo"] {
    float: left;
    width: 9.09%;
    position: relative;
  }
  .todoForm .todo-comments {
    width: calc(100% - 140px - 32px);
    border-bottom: 0 !important;
  }
  .todoForm .todo-duplicate {
    width: 140px;
  }
  .todoForm .todo-duplicate .button {
    margin: 0;
    width: 100%;
    height: 100%;
  }
  .todoForm .todo-delete {
    width: 32px;
  }
}

.todoForm .cross-contain {
  display: block;
  text-align: left;
  padding: 30% 0;
}

@media print, screen and (min-width: 64em) {
  .todoForm table.quoteDetail thead {
    background-color: #fccc7c;
  }
}

.todoForm table.quoteDetail thead th {
  text-align: center;
}

.todoForm table.quoteDetail thead tr {
  border: solid 1px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm table.quoteDetail tbody td {
    height: 52px;
  }
}

.todoForm table.quoteDetail tbody td input,
.todoForm table.quoteDetail tbody td select {
  margin: 0;
  -webkit-transition: background-color .3s ease-in-out;
  transition: background-color .3s ease-in-out;
}

.todoForm table.quoteDetail tbody td input::placholder,
.todoForm table.quoteDetail tbody td select::placholder {
  color: black;
}

.todoForm table.quoteDetail tbody td .input-expand-wrap {
  position: relative;
}

.todoForm table.quoteDetail tbody td .input-expand-wrap.expanded {
  position: fixed;
  z-index: 2;
  width: 100%;
  max-width: calc(92.85714rem - 10%);
  left: 50%;
  top: 30%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.todoForm table.quoteDetail tbody td input[type=text],
.todoForm table.quoteDetail tbody td input[type=number] {
  position: relative;
  -webkit-transition: .3s ease-in-out all;
  transition: .3s ease-in-out all;
}

.todoForm table.quoteDetail tbody td input[type=text]:hover + .input-expand-icon,
.todoForm table.quoteDetail tbody td input[type=number]:hover + .input-expand-icon {
  display: block;
}

.todoForm table.quoteDetail tbody td input[type=text] + .input-expand-icon,
.todoForm table.quoteDetail tbody td input[type=number] + .input-expand-icon {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
  font-size: 12px;
}

.todoForm table.quoteDetail tbody td input[type=text] + .input-expand-icon:hover,
.todoForm table.quoteDetail tbody td input[type=number] + .input-expand-icon:hover {
  cursor: pointer;
  display: block;
}

.todoForm table.quoteDetail tbody tr {
  border: solid 1px #bcbcbe;
  position: relative;
}

@media print, screen and (min-width: 64em) {
  .todoForm table.quoteDetail tbody tr {
    background-color: #fccc7c;
  }
}

@media print, screen and (min-width: 64em) {
  .todoForm table.quoteDetail tbody .todo-delete {
    background-color: #fff;
  }
  .todoForm table.quoteDetail tbody .todo-direct {
    padding: 16px 5px;
  }
}

.todoForm .cat-quotes {
  background: #e3e3e4;
}

.todoForm th.cat-quotes,
.todoForm td.cat-quotes {
  border-bottom: solid 1px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm th.cat-quotes,
  .todoForm td.cat-quotes {
    border-right: none;
  }
}

.todoForm th.cat-quotes:nth-child(3),
.todoForm td.cat-quotes:nth-child(3) {
  border-bottom: solid 3px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm th.cat-quotes:nth-child(3),
  .todoForm td.cat-quotes:nth-child(3) {
    border-right: solid 3px #bcbcbe;
    border-bottom: solid 1px #bcbcbe;
  }
}

.todoForm .cat-pro {
  background-color: #fccc7c;
}

.todoForm th.cat-pro,
.todoForm td.cat-pro {
  text-align: center;
  border-bottom: solid 1px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm th.cat-pro,
  .todoForm td.cat-pro {
    border-right: none;
  }
}

.todoForm tr .delete-row {
  text-align: center;
  border-bottom: solid 5px #bcbcbe;
}

@media print, screen and (min-width: 64em) {
  .todoForm tr .delete-row {
    text-align: center;
    border-bottom: 0 !important;
    padding: 15px 5px;
  }
}

.todoForm tr:last-child .delete-row {
  border-bottom: solid 1px #bcbcbe;
}

.todoForm .missing-required {
  background-color: #e19488;
  border-color: #cc4b37;
}

.todoForm .missing-required:focus {
  background-color: #e19488;
  border-color: #cc4b37 !important;
}

.reveal.full {
  top: 0 !important;
}

.reveal.full .row {
  max-width: 100%;
}

.reveal.full .todoForm {
  max-height: 83vh;
}

input[id$="duplicated"] {
  background-color: #8add9b;
}

input[id$="duplicated"]:focus {
  background-color: #8add9b;
}

#expanded-overlay {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1;
  background-color: rgba(10, 10, 10, 0.45);
  visibility: hidden;
}

.lines-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 0.5em;
}

.lines-wrap h2 {
  display: inline-block;
}

.lines-wrap button {
  margin: 0 10px 0 auto;
}

.quick-view-popup {
  margin-bottom: 0.5em;
}

.quick-view-popup .quick-view-column {
  margin-bottom: 1.5em;
  /*@include breakpoint(medium) {
            margin-bottom: 0;
        }*/
}

.truncated-string {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  width: 100%;
  line-height: 1em;
}

.task-todo-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

@media print, screen and (min-width: 48em) {
  .task-todo-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

.task-todo-item_title,
.task-todo-item_info,
.task-todo-item_group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}

@media print, screen and (min-width: 48em) {
  .task-todo-item_title,
  .task-todo-item_info,
  .task-todo-item_group {
    width: 50%;
  }
}

.task-todo-item_group {
  width: 70%;
}

@media print, screen and (min-width: 48em) {
  .task-todo-item_group {
    width: 60%;
  }
}

.task-todo-item_info {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.todoRow.task-todo-item {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

.todoRow .task-todo-item_title {
  width: 30%;
}

@media print, screen and (min-width: 48em) {
  .todoRow .task-todo-item_title {
    width: 40%;
  }
}

.todoRow .task-todo-item_info {
  width: 80%;
}

.task-todo-item_duplicate {
  width: 20%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media print, screen and (min-width: 48em) {
  .task-todo-item_duplicate {
    width: 10%;
  }
}

@media print, screen and (min-width: 48em) {
  .searchAttributesCol {
    width: 35%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .searchAttributesCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .searchAttributesCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .searchAttributesCol:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 64em) {
  .searchAttributesCol {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 48em) {
  .searchAttributesCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .searchAttributesCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .searchAttributesCol:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 48em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    width: 35%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .resultsSection .off-canvas.in-canvas-for-medium:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 64em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    width: 16.66667%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 48em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .resultsSection .off-canvas.in-canvas-for-medium:last-child:not(:first-child) {
    float: right;
  }
}

@media screen and (max-width: 47.9375em) {
  .resultsSection .off-canvas.in-canvas-for-medium {
    z-index: 20000000000;
    background: white;
  }
}

@media screen and (max-width: 47.9375em) {
  .searchResultsCol {
    width: 100%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media screen and (max-width: 47.9375em) and (min-width: 48em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (max-width: 47.9375em) and (min-width: 64em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media screen and (max-width: 47.9375em) {
  .searchResultsCol:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 48em) {
  .searchResultsCol {
    width: 65%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 48em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) and (min-width: 64em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 48em) {
  .searchResultsCol:last-child:not(:first-child) {
    float: right;
  }
}

@media print, screen and (min-width: 64em) {
  .searchResultsCol {
    width: 83.33333%;
    float: left;
    padding-right: 0.35714rem;
    padding-left: 0.35714rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 48em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .searchResultsCol {
    padding-right: 0.57143rem;
    padding-left: 0.57143rem;
  }
}

@media print, screen and (min-width: 64em) {
  .searchResultsCol:last-child:not(:first-child) {
    float: right;
  }
}

.searchHeading {
  padding-top: 0.71429rem;
}

.searchHeading h1 {
  float: left;
}

table.compareTable td {
  border-left: 1px solid #e8e5e5;
}

table.compareTable tr td:not(:first-child) {
  max-width: 200px;
  min-width: 150px;
  text-align: center;
}

table.compareTable tr td:not(:first-child) a {
  color: #0a0a0a;
}

table.compareTable tr.alignTop {
  vertical-align: top;
}

table.compareTable tr.alignBottom {
  vertical-align: bottom;
}

table.compareTable .getQuoteLink {
  display: none;
}

table.compareTable ul {
  list-style: none;
}

table.compareTable tr td:first-child {
  background: #e8e5e5;
  font-weight: bold;
  max-width: 120px;
  vertical-align: top;
}

table.compareTable tr td table.largePriceTable th {
  text-align: center;
}

table.compareTable tr td table.largePriceTable td {
  min-width: auto;
  max-width: auto;
}

table.compareTable tr td table.largePriceTable tbody tr td:first-child {
  background-color: inherit;
  font-weight: normal;
}

.compareOptions {
  text-align: right;
}

.compareOptions a {
  color: #0a0a0a;
  font-size: 1.14286rem;
}

@media print {
  table.compareTable tr td:first-child {
    display: none;
  }
  table.compareTable tr td {
    width: 120px !important;
    max-width: 120px !important;
    padding: 0.35714rem;
  }
}

.signInLeft {
  background: url("//static.rapidonline.com/img/signin/signin.jpg") no-repeat;
  background-size: cover;
  background-position: top right;
  position: relative;
}

.signInLeft .trustpilot-widget {
  position: absolute !important;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: rgba(0, 0, 0, 0.5);
  padding: 10px 0;
}

@media screen and (max-width: 47.9375em) {
  .signInLeft .trustpilot-widget {
    display: none;
  }
}

@media print, screen and (min-width: 64em) {
  .signInRight {
    padding-left: 5.71429rem;
    padding-right: 5.71429rem;
  }
}

.signInGrayText {
  color: #79796A;
}

.signInRegisterLink {
  color: #0a0a0a;
  font-size: 1.07143rem;
}

.signInRegisterLink:hover {
  color: inherit;
  text-decoration: underline;
  -webkit-text-decoration-color: #0a0a0a;
          text-decoration-color: #0a0a0a;
}

.registerBenefits {
  background: #313131;
  padding: 1.07143rem;
}

.registerBenefits h3 {
  color: #fefefe;
}

.registerBenefits span {
  color: #fefefe;
  display: block;
}

.registerBenefits span i {
  color: #fefefe;
}

.brandItem {
  text-align: center;
}

@media print, screen and (min-width: 48em) {
  .brandItem {
    margin-bottom: 1.42857rem;
    margin-top: 1.42857rem;
  }
}

.brandItem img {
  margin-bottom: 0.71429rem;
}

.brandItem a {
  color: #79796A;
  display: inline-block;
}

.brandItem a:hover {
  color: #0a0a0a;
}

.brandItem h3 {
  font-weight: normal;
}

.brandsHeading {
  font-size: 1.28rem;
}

ul.brandNav {
  margin-left: 0;
  text-align: center;
  margin: 1.07143rem 0 0.71429rem 0;
}

ul.brandNav::before {
  display: table;
  content: ' ';
}

ul.brandNav::after {
  display: table;
  content: ' ';
}

ul.brandNav li {
  display: inline-block;
  margin-right: .07143rem;
  margin-bottom: 0.71429rem;
  font-size: 1rem;
}

ul.brandNav li a {
  display: block;
  color: #0a0a0a;
  background: #e8e5e5;
  padding: 0.42857rem 1rem;
}

ul.brandNav li a:hover {
  background: #F9A519;
  color: #fefefe;
}

.quoteItem {
  border-bottom: 1px solid #e8e5e5;
  margin-bottom: 0.71429rem;
}

.quoteItem h3 {
  color: #0a0a0a;
}

@media screen and (max-width: 47.9375em) {
  .quoteItem {
    text-align: center;
  }
  .quoteItem label.middle {
    margin-bottom: 0.35714rem;
  }
}

.smallQuoteImgContainer {
  text-align: center;
  margin: 0 auto;
  position: relative;
}

.smallQuoteImgContainer img {
  max-width: 110px;
}

.smallQuoteStockMessage {
  font-weight: bold;
  text-align: right;
  font-size: 1rem;
}

@media screen and (max-width: 47.9375em) {
  .smallQuoteStockMessage {
    margin-bottom: 1.14286rem;
  }
}

ul.quotesServices {
  margin-left: 1.78571rem;
}

ul.quotesServices li {
  padding-top: 0.35714rem;
  padding-bottom: 0.35714rem;
}

.quotesTeamInfo h3 {
  margin-bottom: 15px;
}

@media print, screen and (min-width: 48em) {
  .videoCol .responsive-embed {
    margin-top: 5rem;
  }
}

.basketPage {
  padding-top: 0.71429rem;
}

@media print, screen and (min-width: 48em) {
  .basketOptions {
    padding-top: 2.14286rem;
  }
}

.basketOptions a {
  margin-left: 0.35714rem;
  margin-right: 0.35714rem;
  color: #0a0a0a;
}

.promoCodeLine {
  display: inline-block;
}

.basketAddressOptions {
  position: absolute;
  bottom: 0;
}

.basketAddressOptions a {
  margin-bottom: 0;
}

.basketAddressOptions select {
  margin-bottom: 0;
}

.basketAdressBlock {
  padding-bottom: 50px;
  position: relative;
}

.basketCheckHeading {
  font-size: 1.14286rem;
  font-weight: bold;
}

.paymentOptions .columns {
  padding-bottom: 1.07143rem;
}

.paymentOptions label > [type=radio] {
  margin-bottom: 0;
  margin-top: 10px;
}

.paypallogo.disabled {
  opacity: .5;
  cursor: not-allowed;
}

@media print, screen and (min-width: 48em) {
  .horizontalRelatedProducts .productWidget li {
    float: left;
    width: 20%;
    border: none;
    clear: none;
  }
  .horizontalRelatedProducts .productWidget li.widgetHeader {
    padding: 5px !important;
    text-align: left;
    width: auto;
    float: none;
  }
}

#PaymentButton span {
  display: block;
  font-size: 1.42857rem;
}

@media screen and (max-width: 47.9375em) {
  .pasteArea {
    margin-top: 0.71429rem;
  }
}

.input-group-label.unit-label {
  border: none;
  background: none;
}

/* Customize the label (the container) */
.radio-container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Hide the browser's default radio button */
.radio-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

/* Create a custom radio button */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #eee;
  border-radius: 25%;
}

/* On mouse-over, add a grey background color */
.radio-container:hover input ~ .checkmark {
  background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.radio-container input:checked ~ .checkmark {
  background-color: darkorange;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.radio-container input:checked ~ .checkmark:after {
  display: block;
}

/* Style the indicator (dot/circle) */
.radio-container .checkmark:after {
  top: 6px;
  left: 6px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: white;
}

:-ms-input-placeholder {
  color: #ccc !important;
  font-weight: 400 !important;
}

select {
  -webkit-appearance: none;
}

.fa {
  font-family: FontAwesome !important;
}

/*Logo*/
.rapidLogo {
  width: 116px;
  height: 40px;
  display: inline-block;
  background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2312px -10px no-repeat;
}

@media screen and (min-width: 64em) {
  .rapidLogo {
    width: 147px;
    height: 38px;
    display: inline-block;
    background: url("//static.rapidonline.com/css/sprites/4.7.1/sprite.sprite.png") -2155px -10px no-repeat;
  }
}

/*End Logo*/
.home3Col {
  background: #EEE;
  margin-top: 1.07143rem;
  margin-bottom: 1.07143rem;
  padding-bottom: 1.07143rem;
}

.home3Col .home3ColSection {
  padding: 1.07143rem 2.14286rem;
  margin-top: 1.07143rem;
  background: #fefefe;
}

.home3Col .home3ColSection.punchout-contact {
  padding-left: 1rem;
  padding-right: 1rem;
}

.home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1rem;
}

@media print, screen and (min-width: 64em) {
  .home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-img {
  width: 50%;
}

@media print, screen and (min-width: 64em) {
  .home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-img {
    width: 35%;
  }
}

.home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-details {
  width: 100%;
  text-align: center;
  margin-top: 1rem;
}

.home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-details .grey-text {
  font-weight: bolder;
}

@media print, screen and (min-width: 64em) {
  .home3Col .home3ColSection .punchout_contacts-wrap .punchout_contacts-item .punchout_contact-details {
    text-align: left;
    margin-top: 0;
    margin-left: 1rem;
    width: calc(65% - 1rem);
  }
}

.home3Col .home3ColSection p {
  margin-bottom: 0.5rem;
}

.home3Col .home3ColSection p:last-of-type {
  margin-bottom: 0.8rem;
}

.home3Col .home3ColSection ul {
  margin-bottom: 0.5rem;
}

.home3Col .home3ColSection ul li a {
  color: #0a0a0a;
}

.home3Col .home3ColSection .myaccount-option {
  background-color: #f2f0f0;
  border: solid 1px #d0cdcd;
  padding: 0.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.home3Col .home3ColSection .myaccount-option h4 {
  margin-bottom: 0;
}

.home3Col .home3ColSection .myaccount-option h4, .home3Col .home3ColSection .myaccount-option i {
  color: #494848;
}

@media print, screen and (min-width: 48em) {
  .proposition-divider {
    border-right: 1px solid #aaa;
  }
  .proposition-divider:nth-child(3) {
    border-right: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .proposition-divider {
    border-right: 1px solid #aaa;
  }
  .proposition-divider:nth-child(3) {
    border-right: 1px solid #aaa;
  }
}

.proposition {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-right: 1px solid #aaa;
}

.proposition img {
  max-height: 25px;
  margin-right: .8rem;
}

.proposition:last-child {
  border: none;
}

.proposition h4 {
  margin-bottom: 0;
  color: #494848;
}

.proposition h4 a {
  color: #494848;
}

ul.rapidBenefits {
  margin-left: 3px;
}

ul.rapidBenefits li:before {
  font-family: FontAwesome;
  margin: 0 3px 0 -2px;
  content: "\f00c";
  color: #063c7c;
}

.blackLargeHeadingH1 {
  margin-top: 0.71429rem;
  background: #313131;
  padding: 1.07143rem;
  border-radius: 4px;
  text-align: center;
  color: #fefefe;
}

.blackLargeHeadingH1 a {
  color: #fefefe;
}

.blackLargeHeadingH1 a:hover {
  text-decoration: underline;
}

.blackLargeHeading {
  color: #000;
  margin: 5px 5px 10px 5px;
  line-height: 24px;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}

table.quickOrderWidget {
  table-layout: fixed;
  margin-bottom: 0;
}

table.quickOrderWidget tbody, table.quickOrderWidget tfoot, table.quickOrderWidget thead {
  border: none;
  background: none;
}

table.quickOrderWidget tbody tr {
  border-bottom: 0;
}

table.quickOrderWidget tr td:first-child {
  width: 60%;
}

table.quickOrderWidget tr td:first-child input {
  width: 90%;
}

table.quickOrderWidget td {
  padding: 0px;
}

table.quickOrderWidget td input {
  border: 1px solid #ccc;
  padding: 5px;
  font-size: 14px;
  line-height: 16px;
}

.extra-quick-order-options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 0.6rem;
}

#quickBuyButton {
  margin-bottom: 0;
}

@media print, screen and (min-width: 48em) {
  .homeNewsSection {
    border-right: 1px solid #e8e5e5;
  }
}

.homeNewsSection img {
  margin-bottom: 0.71429rem;
  margin-top: 0.35714rem;
  display: block;
}

.sectionHeader {
  margin-top: 1.07143rem;
}

.sectionHeader a {
  color: black;
}

.home2Col img {
  width: 100%;
}

.home-rightAdverts a {
  display: block;
}

.home-rightAdverts a:first-child {
  margin-bottom: 1.42857rem;
}

.text-hidden {
  font-size: 0;
  width: 1px;
  height: 1px;
  display: inline-block;
  overflow: hidden;
  position: absolute !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  clip: rect(1px, 1px, 1px, 1px);
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjEuY3NzIiwiLi4vdGhpcmQtcGFydHkvbWFnaWMtdG9vbGJveC9tYWdpYzM2MC5jc3MiLCIuLi90aGlyZC1wYXJ0eS9tYWdpYy10b29sYm94L21hZ2ljc2Nyb2xsLmNzcyIsIi4uL3RoaXJkLXBhcnR5L21hZ2ljLXRvb2xib3gvbWFnaWN6b29tcGx1cy5jc3MiLCJnbG9iYWwvX3NldHRpbmdzLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmFyaWFibGVzLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiZ2xvYmFsL19nbG9iYWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Zsb2F0LnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvX3NldHRpbmdzLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL19rZXlmcmFtZS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NsaWRlLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvZWZmZWN0cy9faGluZ2Uuc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19oaW5nZS5zY3NzIiwiLi4vdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zcGluLnNjc3MiLCIuLi90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL19hbmltYXRpb24uc2NzcyIsIi4uLy4uL3Nwcml0ZXMvc3ByaXRlLnNwcml0ZS5zY3NzIiwiZ2xvYmFsL2Jhc2UvX3Nwcml0ZS5zY3NzIiwiZ2xvYmFsL2Jhc2UvX3N0eWxlRml4ZXMuc2NzcyIsImdsb2JhbC9iYXNlL19vdmVybGF5LnNjc3MiLCJnbG9iYWwvYmFzZS9fcG9wdXAuc2NzcyIsImdsb2JhbC9iYXNlL19vbGRDb2xvckNsYXNzZXMuc2NzcyIsImdsb2JhbC9iYXNlL19icmVhZGNydW1icy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fYnJlYWRjcnVtYi5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fbWVudXMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX2dsb2JhbEJ1aWxkaW5nQmxvY2tzLnNjc3MiLCJnbG9iYWwvbW9kdWxlL19mb3JtRWxlbWVudHMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX21haW5JbWFnZS5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fcmV2aWV3U3RhcnMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX3ByaWNlVGFibGUuc2NzcyIsImdsb2JhbC9tb2R1bGUvX3F1aWNrQXR0cmlidXRlcy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fcHJvZHVjdFdpZGdldC5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fcHJvZHVjdC10aWxlLnNjc3MiLCJnbG9iYWwvbW9kdWxlL19wcm9kdWN0Um93cy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fYXR0cmlidXRlRmlsdGVycy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fc2VhcmNoUGFnaW5hdGlvbi5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fc2VhcmNoVGllcnMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX3NlYXJjaEF0dHJpYnV0ZXNUYWJsZS5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fYmFza2V0SXRlbXMuc2NzcyIsImdsb2JhbC9tb2R1bGUvX2FkZHJlc3Nlc0Jsb2NrLnNjc3MiLCJnbG9iYWwvbW9kdWxlL19ub3RpZmljYXRpb25zUGFuZWwuc2NzcyIsImdsb2JhbC9tb2R1bGUvX3JlY2VudE9yZGVycy5zY3NzIiwiZ2xvYmFsL21vZHVsZS9fc2xpZGVyLnNjc3MiLCJnbG9iYWwvbGF5b3V0L19jaGFuZ2VTaXRlUG9wdXAuc2NzcyIsImdsb2JhbC9sYXlvdXQvX2FkZGVkVG9CYXNrZXRQb3B1cC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fY3VycmVuY3lQb3B1cC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fY29va2llLXBvbGljeS5zY3NzIiwiZ2xvYmFsL2xheW91dC9fbWFpbk5hdi5zY3NzIiwiZ2xvYmFsL2xheW91dC9fZm9vdGVyTmF2LnNjc3MiLCJnbG9iYWwvbGF5b3V0L19oZWFkZXIuc2NzcyIsImdsb2JhbC9sYXlvdXQvX2xpdmUtY2hhdC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fc2VhcmNoU3VnZ2VzdGlvbnMuc2NzcyIsImdsb2JhbC9sYXlvdXQvX215QWNjb3VudC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fZ2xvYmFsQWRtaW4uc2NzcyIsImdsb2JhbC9sYXlvdXQvX29yZGVycy5zY3NzIiwiZ2xvYmFsL2xheW91dC9fcHJvbW90aW9ucy5zY3NzIiwiZ2xvYmFsL2xheW91dC9fc2t1LnNjc3MiLCJnbG9iYWwvbGF5b3V0L19zdG9jay1tZXNzYWdlLWluZm8uc2NzcyIsImdsb2JhbC9sYXlvdXQvX3RpZXIuc2NzcyIsImdsb2JhbC9sYXlvdXQvX3Rhc2tMaXN0LnNjc3MiLCJnbG9iYWwvbGF5b3V0L19zZWFyY2guc2NzcyIsImdsb2JhbC9sYXlvdXQvX2NvbXBhcmUuc2NzcyIsImdsb2JhbC9sYXlvdXQvX3NpZ25Jbi5zY3NzIiwiZ2xvYmFsL2xheW91dC9fYnJhbmRzLnNjc3MiLCJnbG9iYWwvbGF5b3V0L19xdW90ZVBhZ2Uuc2NzcyIsImdsb2JhbC9sYXlvdXQvX2Jhc2tldC5zY3NzIiwiZ2xvYmFsL2xheW91dC9fY3V0UGFzdGUuc2NzcyIsImdsb2JhbC9sYXlvdXQvX2J1eUFyZWEuc2NzcyIsImdsb2JhbC9sYXlvdXQvX3JldHVybnMtZXJyb3JzLnNjc3MiLCJlbGVjdHJvbmljcy9zdHlsZXNoZWV0cy9faGVhZGVyLnNjc3MiLCJlbGVjdHJvbmljcy9zdHlsZXNoZWV0cy9faG9tZS5zY3NzIl0s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RTtBUWg2R0Y7O0VBRUUsb0JBQW9CO0FSazZHMUI7O0FRLzVHSTs7TVJtNkdFO0FReDZHRjs7RUFXRSxtQkFBbUI7QVJpNkd6Qjs7QVE5NUdJOzs7TVJtNkdFO0FROTVHRjs7O0VBR0UsaUNBQWlDO0VBQUUsTUFBQTtFQUNuQyxjQUFjO0VBQUUsTUFBQTtBUms2R3RCOztBUS81R0k7O01SbTZHRTtBUS81R0Y7RUFDRSxrQkFBa0I7QVJpNkd4Qjs7QVE5NUdJOztNUms2R0U7QVE5NUdGO0VBQ0Usc0JBQXNCO0VBQ3RCLFdBQVc7QVJnNkdqQjs7QVE3NUdJOztNUmk2R0U7QVE3NUdGO0VBQ0UsY0FBYztBUis1R3BCOztBUTU1R0k7OztNUmk2R0U7QVE1NUdGOztFQUVFLGNBQWM7RUFDZCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLHdCQUF3QjtBUjg1RzlCOztBUTM1R0k7RUFDRSxlQUFlO0FSODVHckI7O0FRMzVHSTtFQUNFLFdBQVc7QVI4NUdqQjs7QVF6NUdJO21GUjQ1RytFO0FRejVHL0U7O01SNDVHRTtBUXg1R0Y7O0VBRUUscUJBQXFCO0FSMDVHM0I7O0FRdjVHSTs7TVIyNUdFO0FRdjVHRjtFQUNFLGFBQWE7RUFDYixTQUFTO0FSeTVHZjs7QVF0NUdJOztNUjA1R0U7QVF0NUdGO0VBQ0Usa0JBQWtCO0FSdzVHeEI7O0FRcjVHSTs7TVJ5NUdFO0FRcjVHRjtFQUNFLGdCQUFnQjtBUnU1R3RCOztBUWw1R0k7bUZScTVHK0U7QVFsNUcvRTs7O01SczVHRTtBUWo1R0Y7Ozs7O0VBS0UsdUJDelp1QjtFRHlaUyxNQUFBO0VBQ2hDLGVBQWU7RUFBRSxNQUFBO0VBS2YsaUJBQWlCO0VBQUUsTUFBQTtFQUVyQixTQUFTO0VBQUUsTUFBQTtBUms1R2pCOztBUS80R0k7O01SbTVHRTtBUS80R0Y7RUFDRSxpQkFBaUI7QVJpNUd2Qjs7QVE5NEdJOzs7TVJtNUdFO0FROTRHRjs7RUFDUyxNQUFBO0VBQ1Asb0JBQW9CO0FSaTVHMUI7O0FROTRHSTs7OztNUm81R0U7QVE5NEdGOzs7O0VBSUUsMEJBQTBCO0VBQUUsTUFBQTtBUmk1R2xDOztBUTk0R0k7Ozs7RUFLRTs7UVJpNUdFO0VReDRHRjs7UVIyNEdFO0FBQ1I7O0FRMTVHSTs7OztFQVVJLGtCQUFrQjtFQUNsQixVQUFVO0FSdTVHbEI7O0FRbDZHSTs7OztFQW1CSSw4QkFBOEI7QVJzNUd0Qzs7QVFsNUdJOztNUnM1R0U7QVFsNUdGO0VBQ0UsaUJBQWlCO0FSbzVHdkI7O0FRajVHSTs7O01SczVHRTtBQUNOOztFUWg1R00sOEJBQXNCO1VBQXRCLHNCQUFzQjtFQUFFLE1BQUE7RUFDeEIsVUFBVTtFQUFFLE1BQUE7QVJxNUdsQjs7QVFsNUdJOztNUnM1R0U7QUFDTjs7RVFqNUdNLFlBQVk7QVJvNUdsQjs7QVFqNUdJOzs7TVJzNUdFO0FBQ047RVFqNUdNLDZCQUE2QjtFQUFFLE1BQUE7RUFDL0Isb0JBQW9CO0VBQUUsTUFBQTtFQUV0Qjs7UVJxNUdFO0FBQ1I7O0FBRUE7RVFsNUdRLHdCQUF3QjtBUm81R2hDOztBUWg1R0k7OztNUnE1R0U7QVFoNUdGO0VBQ0UsMEJBQTBCO0VBQUUsTUFBQTtFQUM1QixhQUFhO0VBQUUsTUFBQTtBUm81R3JCOztBUWo1R0k7O01ScTVHRTtBUWo1R0Y7RUFDRSx5QkFBeUI7RUFDekIsYUFBYTtFQUNiLDhCQUE4QjtBUm01R3BDOztBUWg1R0k7Ozs7O01SdTVHRTtBUWg1R0Y7RUFDRSw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQUUsTUFBQTtFQUN4QixjQUFjO0VBQUUsTUFBQTtFQUNoQixlQUFlO0VBQUUsTUFBQTtFQUNqQixVQUFVO0VBQUUsTUFBQTtFQUNaLGNBQWM7RUFBRSxNQUFBO0VBQ2hCLG1CQUFtQjtFQUFFLE1BQUE7QVJ3NUczQjs7QVFyNUdJOzs7TVIwNUdFO0FRcjVHRjtFQUNFLHFCQUFxQjtFQUFFLE1BQUE7RUFDdkIsd0JBQXdCO0VBQUUsTUFBQTtBUnk1R2hDOztBUXQ1R0k7O01SMDVHRTtBUXQ1R0Y7RUFDRSxjQUFjO0FSdzVHcEI7O0FRbjVHSTttRlJzNUcrRTtBUW41Ry9FOztNUnM1R0U7QVFsNUdGO0VBQ0UsY0FBYztBUm81R3BCOztBUWo1R0k7O01ScTVHRTtBUWo1R0Y7RUFDRSxrQkFBa0I7QVJtNUd4Qjs7QVFoNUdJOztNUm81R0U7QVFoNUdGO0VBQ0UsY0FBYztBUms1R3BCOztBUXozR0k7bUZSNDNHK0U7QVF6M0cvRTs7TVI0M0dFO0FReDNHRjtFQUNFLHFCQUFxQjtBUjAzRzNCOztBUXYzR0k7O01SMjNHRTtBUXYzR0Y7RUFDRSxhQUFhO0FSeTNHbkI7O0FRcDNHSTttRlJ1M0crRTtBUXAzRy9FOztNUnUzR0U7QUFDTjtFUW4zR00sYUFBYTtBUnEzR25COztBVy80SEU7RUFDRSx3RUFBZ0Q7QVhrNUhwRDs7QVEvOUhJO0VHaUZBLDhCQUFzQjtVQUF0QixzQkFBc0I7RUFDdEIsZVB4RW1CO0FKMDlIdkI7O0FXOTRIRTs7O0VBR0UsMkJBQW1CO1VBQW5CLG1CQUFtQjtBWGk1SHZCOztBUWw5SEk7RUdzRUEsU0FBUztFQUNULFVBQVU7RUFFVixnQlB0RWlCO0VPd0VqQix5Q1BwRU07RU9xRU4sbUJQaEV5QjtFT2lFekIsZ0JQeEZtQjtFT3lGbkIsY1BoRlc7RU9tRlQsbUNBQW1DO0VBQ25DLGtDQUFrQztBWDQ0SHhDOztBUWpxSEk7RUdyT0EscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUd0QixlQUFlO0VBQ2YsWUFBWTtFQUNaLCtCQUErQjtBWHc0SG5DOztBUTUrR0k7RUd2WkEsWUFBWTtFQUNaLGdCQUFnQjtFQUNoQixzQlB2Rm1CO0FKODlIdkI7O0FXbjRIRTtFQUNFLDhCQUFzQjtVQUF0QixzQkFBc0I7RUFDdEIsV0FBVztFQUNYLHNCUDlGbUI7QUpvK0h2Qjs7QVdqNEhFOzs7Ozs7RUFLSSwwQkFBMEI7QVhxNEhoQzs7QVFwcEhJO0VHek9BLFVBQVU7RUFFVix3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQixTQUFTO0VBQ1Qsc0JQcEhtQjtFT3FIbkIsdUJBQXVCO0VBRXZCLGNBQWM7QVgrM0hsQjs7QUFFQTtFWTM0SEksVUFBVTtBWjY0SGQ7O0FRaDJISTtFRzlCQSxjQUFjO0FYazRIbEI7O0FRenJISTs7Ozs7RUdoTUEsb0JBQW9CO0FYaTRIeEI7O0FXNzNIRTtFQUNFLHlCQUF5QjtBWGc0SDdCOztBVzczSEU7RUFDRSx3QkFBd0I7QVhnNEg1Qjs7QWFubElFO0VDc0VBLHNCQ1R1RDtFRDFCckQsa0JBQWtCO0VBQ2xCLGlCQUFpQjtBZHFqSXJCOztBWXg4SEU7RUFFRSxjQUFjO0VBQ2QsWUFBWTtBWjA4SGhCOztBWWw4SEU7RUFDRSxXQUFXO0FacThIZjs7QWFsbUlFO0VHTEUsZ0JEdUVTO0VDdEVULGVEc0VTO0FmcWlJYjs7QWF2bUlFO0VDeURFLHlCQUYrRDtFQUcvRCx3QkFIK0Q7QWRxakluRTs7QU14K0hNO0VPcElKO0lDeURFLHlCQUYrRDtJQUcvRCx3QkFIK0Q7RWQyaklqRTtBQUNGOztBTS8rSE07RU9wSUo7SUN5REUseUJBRitEO0lBRy9ELHdCQUgrRDtFZGtrSWpFO0FBQ0Y7O0FNai9ITTtFT3pJSjtJQ3lERSx5QkFGK0Q7SUFHL0Qsd0JBSCtEO0VkeWtJakU7QUFDRjs7QU14L0hNO0VPeklKO0lDeURFLHlCQUYrRDtJQUcvRCx3QkFIK0Q7RWRnbElqRTtBQUNGOztBYXhvSUU7RUFlTSxlQUFlO0VBQ2YsY0FBYztBYjZuSXRCOztBYTdvSUU7RUNzRUEsZUFIYTtBZDhrSWY7O0FhanBJRTtFQXlCTSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FiNG5JekI7O0FhdHBJRTtFQ3NFQSxlQUhhO0FkdWxJZjs7QWExcElFO0VHTEUseUJBRnFDO0VBR3JDLHdCQUhxQztBaEJzcUl6Qzs7QWEvcElFO0VHTEUseUJBRnFDO0VBR3JDLHdCQUhxQztBaEIycUl6Qzs7QWFwcUlFO0VHTEUseUJBRnFDO0VBR3JDLHdCQUhxQztBaEJnckl6Qzs7QWF6bklFO0VJN0RBLFdDZXFEO0VBK0JyRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCdXJJekM7O0FNNWlJTTtFT3BGSjtJR3JERSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjZySXZDO0FBQ0Y7O0FNbmpJTTtFT3BGSjtJR3JERSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm9zSXZDO0FBQ0Y7O0FrQnRwSUk7RUFDRSxZUGlEc0Q7QVh3bUk1RDs7QW1CN3FJRTtFQUNFLFdSbUV1RDtBWDZtSTNEOztBYTFvSUU7RUFDRSxXQUFXO0FiNm9JZjs7QWF6b0lFO0VBQ0UsZUFBZTtFQUNmLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsZUFBZTtBYjRvSW5COztBYXRvSU07RUl4RkosZUNlcUQ7QWxCbXRJdkQ7O0FhcG9JUTtFTTdGSixrQkFBa0I7RUFDbEIsY0FIbUQ7QW5Cd3VJdkQ7O0Fhcm9JUTtFTWpHSixrQkFBa0I7RUFDbEIsZUFIbUQ7QW5CNnVJdkQ7O0FhbG9JTTtFTTlFSixlRGhCZ0M7QWxCb3VJbEM7O0FheHBJTTtFSXhGSixnQkNlcUQ7QWxCcXVJdkQ7O0FhdHBJUTtFTTdGSixrQkFBa0I7RUFDbEIsZUFIbUQ7QW5CMHZJdkQ7O0FhdnBJUTtFTWpHSixrQkFBa0I7RUFDbEIsZ0JBSG1EO0FuQit2SXZEOztBYXBwSU07RU05RUoscUJEYnFEO0FsQm12SXZEOztBYTFxSU07RUl4RkosVUNlcUQ7QWxCdXZJdkQ7O0FheHFJUTtFTTdGSixrQkFBa0I7RUFDbEIsU0FIbUQ7QW5CNHdJdkQ7O0FhenFJUTtFTWpHSixrQkFBa0I7RUFDbEIsVUFIbUQ7QW5CaXhJdkQ7O0FhdHFJTTtFTTlFSixzQkRicUQ7QWxCcXdJdkQ7O0FhNXJJTTtFSXhGSixnQkNlcUQ7QWxCeXdJdkQ7O0FhMXJJUTtFTTdGSixrQkFBa0I7RUFDbEIsZUFIbUQ7QW5COHhJdkQ7O0FhM3JJUTtFTWpHSixrQkFBa0I7RUFDbEIsZ0JBSG1EO0FuQm15SXZEOztBYXhySU07RU05RUosZ0JEYnFEO0FsQnV4SXZEOztBYTlzSU07RUl4RkosZ0JDZXFEO0FsQjJ4SXZEOztBYTVzSVE7RU03Rkosa0JBQWtCO0VBQ2xCLGVBSG1EO0FuQmd6SXZEOztBYTdzSVE7RU1qR0osa0JBQWtCO0VBQ2xCLGdCQUhtRDtBbkJxekl2RDs7QWExc0lNO0VNOUVKLHNCRGJxRDtBbEJ5eUl2RDs7QWFodUlNO0VJeEZKLFVDZXFEO0FsQjZ5SXZEOztBYTl0SVE7RU03Rkosa0JBQWtCO0VBQ2xCLFNBSG1EO0FuQmswSXZEOztBYS90SVE7RU1qR0osa0JBQWtCO0VBQ2xCLFVBSG1EO0FuQnUwSXZEOztBYTV0SU07RU05RUosc0JEYnFEO0FsQjJ6SXZEOztBYWx2SU07RUl4RkosZ0JDZXFEO0FsQit6SXZEOztBYWh2SVE7RU03Rkosa0JBQWtCO0VBQ2xCLGVBSG1EO0FuQm8xSXZEOztBYWp2SVE7RU1qR0osa0JBQWtCO0VBQ2xCLGdCQUhtRDtBbkJ5MUl2RDs7QWE5dUlNO0VNOUVKLGdCRGJxRDtBbEI2MEl2RDs7QWFwd0lNO0VJeEZKLGdCQ2VxRDtBbEJpMUl2RDs7QWFsd0lRO0VNN0ZKLGtCQUFrQjtFQUNsQixlQUhtRDtBbkJzMkl2RDs7QWFud0lRO0VNakdKLGtCQUFrQjtFQUNsQixnQkFIbUQ7QW5CMjJJdkQ7O0FhaHdJTTtFTTlFSixzQkRicUQ7QWxCKzFJdkQ7O0FhdHhJTTtFSXhGSixVQ2VxRDtBbEJtMkl2RDs7QWFweElRO0VNN0ZKLGtCQUFrQjtFQUNsQixTQUhtRDtBbkJ3M0l2RDs7QWFyeElRO0VNakdKLGtCQUFrQjtFQUNsQixVQUhtRDtBbkI2M0l2RDs7QWFseElNO0VNOUVKLHNCRGJxRDtBbEJpM0l2RDs7QWF4eUlNO0VJeEZKLGdCQ2VxRDtBbEJxM0l2RDs7QWF0eUlRO0VNN0ZKLGtCQUFrQjtFQUNsQixlQUhtRDtBbkIwNEl2RDs7QWF2eUlRO0VNakdKLGtCQUFrQjtFQUNsQixnQkFIbUQ7QW5CKzRJdkQ7O0FhcHlJTTtFTTlFSixnQkRicUQ7QWxCbTRJdkQ7O0FhMXpJTTtFSXhGSixnQkNlcUQ7QWxCdTRJdkQ7O0FheHpJUTtFTTdGSixrQkFBa0I7RUFDbEIsZUFIbUQ7QW5CNDVJdkQ7O0FhenpJUTtFTWpHSixrQkFBa0I7RUFDbEIsZ0JBSG1EO0FuQmk2SXZEOztBYXR6SU07RU05RUosc0JEYnFEO0FsQnE1SXZEOztBYTUwSU07RUl4RkosV0NlcUQ7QWxCeTVJdkQ7O0FhOXpJTTtFTTlFSixzQkRicUQ7QWxCNjVJdkQ7O0FhM3pJTTtFT3pHRixXVDhGdUQ7RVM3RnZELFdBQXVCO0FwQnc2STNCOztBYWgwSU07RU9qRkEsV0FBVztBcEJxNUlqQjs7QWFwMElNO0VPN0VBLFdBQVc7QXBCcTVJakI7O0FheDBJTTtFT3pFQSxXVDhEcUQ7QVh1MUkzRDs7QWE1MElNO0VPekdGLFdUOEZ1RDtFUzdGdkQsVUFBdUI7QXBCeTdJM0I7O0FhajFJTTtFT2pGQSxXQUFXO0FwQnM2SWpCOztBYXIxSU07RU83RUEsV0FBVztBcEJzNklqQjs7QWF6MUlNO0VPekVBLFdUOERxRDtBWHcySTNEOztBYTcxSU07RU96R0YsV1Q4RnVEO0VTN0Z2RCxnQkFBdUI7QXBCMDhJM0I7O0FhbDJJTTtFT2pGQSxXQUFXO0FwQnU3SWpCOztBYXQySU07RU83RUEsV0FBVztBcEJ1N0lqQjs7QWExMklNO0VPekVBLFdUOERxRDtBWHkzSTNEOztBYTkySU07RU96R0YsV1Q4RnVEO0VTN0Z2RCxVQUF1QjtBcEIyOUkzQjs7QWFuM0lNO0VPakZBLFdBQVc7QXBCdzhJakI7O0FhdjNJTTtFTzdFQSxXQUFXO0FwQnc4SWpCOztBYTMzSU07RU96RUEsV1Q4RHFEO0FYMDRJM0Q7O0FhLzNJTTtFT3pHRixXVDhGdUQ7RVM3RnZELFVBQXVCO0FwQjQrSTNCOztBYXA0SU07RU9qRkEsV0FBVztBcEJ5OUlqQjs7QWF4NElNO0VPN0VBLFdBQVc7QXBCeTlJakI7O0FhNTRJTTtFT3pFQSxXVDhEcUQ7QVgyNUkzRDs7QWFoNUlNO0VPekdGLFdUOEZ1RDtFUzdGdkQsZ0JBQXVCO0FwQjYvSTNCOztBYXI1SU07RU9qRkEsV0FBVztBcEIwK0lqQjs7QWF6NUlNO0VPN0VBLFdBQVc7QXBCMCtJakI7O0FhNzVJTTtFT3pFQSxXVDhEcUQ7QVg0NkkzRDs7QWFqNklNO0VPekdGLFdUOEZ1RDtFUzdGdkQsZ0JBQXVCO0FwQjhnSjNCOztBYXQ2SU07RU9qRkEsV0FBVztBcEIyL0lqQjs7QWExNklNO0VPN0VBLFdBQVc7QXBCMi9JakI7O0FhOTZJTTtFT3pFQSxXVDhEcUQ7QVg2N0kzRDs7QWFsN0lNO0VPekdGLFdUOEZ1RDtFUzdGdkQsWUFBdUI7QXBCK2hKM0I7O0FhdjdJTTtFT2pGQSxXQUFXO0FwQjRnSmpCOztBYTM3SU07RU83RUEsV0FBVztBcEI0Z0pqQjs7QWEvN0lNO0VPekVBLFdUOERxRDtBWDg4STNEOztBYW44SU07RU96R0YsV1Q4RnVEO0VTN0Z2RCxnQkFBdUI7QXBCZ2pKM0I7O0FheDhJTTtFT2pGQSxXQUFXO0FwQjZoSmpCOztBYTU4SU07RU83RUEsV0FBVztBcEI2aEpqQjs7QWFoOUlNO0VPekVBLFdUOERxRDtBWCs5STNEOztBYXA5SU07RU96R0YsV1Q4RnVEO0VTN0Z2RCxVQUF1QjtBcEJpa0ozQjs7QWF6OUlNO0VPakZBLFdBQVc7QXBCOGlKakI7O0FhNzlJTTtFTzdFQSxXQUFXO0FwQjhpSmpCOztBYWorSU07RU96RUEsV1Q4RHFEO0FYZy9JM0Q7O0FhcitJTTtFT3pHRixXVDhGdUQ7RVM3RnZELGVBQXVCO0FwQmtsSjNCOztBYTErSU07RU9qRkEsV0FBVztBcEIrakpqQjs7QWE5K0lNO0VPN0VBLFdBQVc7QXBCK2pKakI7O0FhbC9JTTtFT3pFQSxXVDhEcUQ7QVhpZ0ozRDs7QWF0L0lNO0VPekdGLFdUOEZ1RDtFUzdGdkQsZUFBdUI7QXBCbW1KM0I7O0FhMy9JTTtFT2pGQSxXQUFXO0FwQmdsSmpCOztBYS8vSU07RU83RUEsV0FBVztBcEJnbEpqQjs7QWFuZ0pNO0VPekVBLFdUOERxRDtBWGtoSjNEOztBYWpnSkk7RUcvR0EsZ0JEdUVTO0VDdEVULGVEc0VTO0FmOGlKYjs7QWF0Z0pJO0VBSUksZUFBZTtFQUNmLGNBQWM7QWJzZ0p0Qjs7QWFsZ0pJO0VBQ0UsZUFBZTtFQUNmLGNBQWM7QWJxZ0pwQjs7QWFsZ0pJO0VHN0hBLHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCc29KekM7O0FhbGdKSTtFTWpJQSxrQkFBa0I7RUFDbEIsaUJBQWlCO0FuQnVvSnJCOztBbUI1b0pJO0VBQ0UsV0FBVztFQUNYLFdBQVc7QW5CK29KakI7O0FhdmdKSTs7O0VNNUhGLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsZUFBZTtFQUNmLGNBQWM7QW5CeW9KaEI7O0FNOWdKTTtFT3pEQTtJSXhGSixlQ2VxRDtFbEJxcEpyRDtFYXRrSk07SU03Rkosa0JBQWtCO0lBQ2xCLGNBSG1EO0VuQnlxSnJEO0VhdGtKTTtJTWpHSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CNnFKckQ7RWFsa0pJO0lNOUVKLGVEaEJnQztFbEJtcUpoQztFYXZsSkk7SUl4RkosZ0JDZXFEO0VsQm1xSnJEO0VhcGxKTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CdXJKckQ7RWFwbEpNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CMnJKckQ7RWFobEpJO0lNOUVKLHFCRGJxRDtFbEI4cUpyRDtFYXJtSkk7SUl4RkosVUNlcUQ7RWxCaXJKckQ7RWFsbUpNO0lNN0ZKLGtCQUFrQjtJQUNsQixTQUhtRDtFbkJxc0pyRDtFYWxtSk07SU1qR0osa0JBQWtCO0lBQ2xCLFVBSG1EO0VuQnlzSnJEO0VhOWxKSTtJTTlFSixzQkRicUQ7RWxCNHJKckQ7RWFubkpJO0lJeEZKLGdCQ2VxRDtFbEIrckpyRDtFYWhuSk07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQm10SnJEO0VhaG5KTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQnV0SnJEO0VhNW1KSTtJTTlFSixnQkRicUQ7RWxCMHNKckQ7RWFqb0pJO0lJeEZKLGdCQ2VxRDtFbEI2c0pyRDtFYTluSk07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQml1SnJEO0VhOW5KTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQnF1SnJEO0VhMW5KSTtJTTlFSixzQkRicUQ7RWxCd3RKckQ7RWEvb0pJO0lJeEZKLFVDZXFEO0VsQjJ0SnJEO0VhNW9KTTtJTTdGSixrQkFBa0I7SUFDbEIsU0FIbUQ7RW5CK3VKckQ7RWE1b0pNO0lNakdKLGtCQUFrQjtJQUNsQixVQUhtRDtFbkJtdkpyRDtFYXhvSkk7SU05RUosc0JEYnFEO0VsQnN1SnJEO0VhN3BKSTtJSXhGSixnQkNlcUQ7RWxCeXVKckQ7RWExcEpNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkI2dkpyRDtFYTFwSk07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJpd0pyRDtFYXRwSkk7SU05RUosZ0JEYnFEO0VsQm92SnJEO0VhM3FKSTtJSXhGSixnQkNlcUQ7RWxCdXZKckQ7RWF4cUpNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkIyd0pyRDtFYXhxSk07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkIrd0pyRDtFYXBxSkk7SU05RUosc0JEYnFEO0VsQmt3SnJEO0VhenJKSTtJSXhGSixVQ2VxRDtFbEJxd0pyRDtFYXRySk07SU03Rkosa0JBQWtCO0lBQ2xCLFNBSG1EO0VuQnl4SnJEO0VhdHJKTTtJTWpHSixrQkFBa0I7SUFDbEIsVUFIbUQ7RW5CNnhKckQ7RWFsckpJO0lNOUVKLHNCRGJxRDtFbEJneEpyRDtFYXZzSkk7SUl4RkosZ0JDZXFEO0VsQm14SnJEO0VhcHNKTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CdXlKckQ7RWFwc0pNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CMnlKckQ7RWFoc0pJO0lNOUVKLGdCRGJxRDtFbEI4eEpyRDtFYXJ0Skk7SUl4RkosZ0JDZXFEO0VsQml5SnJEO0VhbHRKTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CcXpKckQ7RWFsdEpNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CeXpKckQ7RWE5c0pJO0lNOUVKLHNCRGJxRDtFbEI0eUpyRDtFYW51Skk7SUl4RkosV0NlcUQ7RWxCK3lKckQ7RWFwdEpJO0lNOUVKLHNCRGJxRDtFbEJrekpyRDtFYWh0Skk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxXQUF1QjtFcEI0ekp6QjtFYXB0Skk7SU9qRkEsV0FBVztFcEJ3eUpmO0VhdnRKSTtJTzdFQSxXQUFXO0VwQnV5SmY7RWExdEpJO0lPekVBLFdUOERxRDtFWHd1SnpEO0VhN3RKSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQnkwSnpCO0VhanVKSTtJT2pGQSxXQUFXO0VwQnF6SmY7RWFwdUpJO0lPN0VBLFdBQVc7RXBCb3pKZjtFYXZ1Skk7SU96RUEsV1Q4RHFEO0VYcXZKekQ7RWExdUpJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQnMxSnpCO0VhOXVKSTtJT2pGQSxXQUFXO0VwQmswSmY7RWFqdkpJO0lPN0VBLFdBQVc7RXBCaTBKZjtFYXB2Skk7SU96RUEsV1Q4RHFEO0VYa3dKekQ7RWF2dkpJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCbTJKekI7RWEzdkpJO0lPakZBLFdBQVc7RXBCKzBKZjtFYTl2Skk7SU83RUEsV0FBVztFcEI4MEpmO0VhandKSTtJT3pFQSxXVDhEcUQ7RVgrd0p6RDtFYXB3Skk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEJnM0p6QjtFYXh3Skk7SU9qRkEsV0FBVztFcEI0MUpmO0VhM3dKSTtJTzdFQSxXQUFXO0VwQjIxSmY7RWE5d0pJO0lPekVBLFdUOERxRDtFWDR4SnpEO0VhanhKSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEI2M0p6QjtFYXJ4Skk7SU9qRkEsV0FBVztFcEJ5MkpmO0VheHhKSTtJTzdFQSxXQUFXO0VwQncySmY7RWEzeEpJO0lPekVBLFdUOERxRDtFWHl5SnpEO0VhOXhKSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEIwNEp6QjtFYWx5Skk7SU9qRkEsV0FBVztFcEJzM0pmO0VhcnlKSTtJTzdFQSxXQUFXO0VwQnEzSmY7RWF4eUpJO0lPekVBLFdUOERxRDtFWHN6SnpEO0VhM3lKSTtJT3pHRixXVDhGdUQ7SVM3RnZELFlBQXVCO0VwQnU1SnpCO0VhL3lKSTtJT2pGQSxXQUFXO0VwQm00SmY7RWFsekpJO0lPN0VBLFdBQVc7RXBCazRKZjtFYXJ6Skk7SU96RUEsV1Q4RHFEO0VYbTBKekQ7RWF4ekpJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQm82SnpCO0VhNXpKSTtJT2pGQSxXQUFXO0VwQmc1SmY7RWEvekpJO0lPN0VBLFdBQVc7RXBCKzRKZjtFYWwwSkk7SU96RUEsV1Q4RHFEO0VYZzFKekQ7RWFyMEpJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCaTdKekI7RWF6MEpJO0lPakZBLFdBQVc7RXBCNjVKZjtFYTUwSkk7SU83RUEsV0FBVztFcEI0NUpmO0VhLzBKSTtJT3pFQSxXVDhEcUQ7RVg2MUp6RDtFYWwxSkk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxlQUF1QjtFcEI4N0p6QjtFYXQxSkk7SU9qRkEsV0FBVztFcEIwNkpmO0VhejFKSTtJTzdFQSxXQUFXO0VwQnk2SmY7RWE1MUpJO0lPekVBLFdUOERxRDtFWDAySnpEO0VhLzFKSTtJT3pHRixXVDhGdUQ7SVM3RnZELGVBQXVCO0VwQjI4SnpCO0VhbjJKSTtJT2pGQSxXQUFXO0VwQnU3SmY7RWF0MkpJO0lPN0VBLFdBQVc7RXBCczdKZjtFYXoySkk7SU96RUEsV1Q4RHFEO0VYdTNKekQ7RWF0MkpFO0lHL0dBLGdCRHVFUztJQ3RFVCxlRHNFUztFZms1Slg7RWExMkpFO0lBSUksZUFBZTtJQUNmLGNBQWM7RWJ5MkpwQjtFYXIySkU7SUFDRSxlQUFlO0lBQ2YsY0FBYztFYnUySmxCO0VhcDJKRTtJRzdIQSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnUrSnZDO0VhbjJKRTtJTWpJQSxrQkFBa0I7SUFDbEIsaUJBQWlCO0VuQnUrSm5CO0VtQjUrSkU7SUFDRSxXQUFXO0lBQ1gsV0FBVztFbkI4K0pmO0VhdDJKRTs7O0lNNUhGLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsZUFBZTtJQUNmLGNBQWM7RW5CdStKZDtBQUNGOztBTTcySk07RU96REE7SUl4RkosZUNlcUQ7RWxCby9KckQ7RWFyNkpNO0lNN0ZKLGtCQUFrQjtJQUNsQixjQUhtRDtFbkJ3Z0tyRDtFYXI2Sk07SU1qR0osa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQjRnS3JEO0VhajZKSTtJTTlFSixlRGhCZ0M7RWxCa2dLaEM7RWF0N0pJO0lJeEZKLGdCQ2VxRDtFbEJrZ0tyRDtFYW43Sk07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQnNoS3JEO0VhbjdKTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQjBoS3JEO0VhLzZKSTtJTTlFSixxQkRicUQ7RWxCNmdLckQ7RWFwOEpJO0lJeEZKLFVDZXFEO0VsQmdoS3JEO0VhajhKTTtJTTdGSixrQkFBa0I7SUFDbEIsU0FIbUQ7RW5Cb2lLckQ7RWFqOEpNO0lNakdKLGtCQUFrQjtJQUNsQixVQUhtRDtFbkJ3aUtyRDtFYTc3Skk7SU05RUosc0JEYnFEO0VsQjJoS3JEO0VhbDlKSTtJSXhGSixnQkNlcUQ7RWxCOGhLckQ7RWEvOEpNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJraktyRDtFYS84Sk07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJzaktyRDtFYTM4Skk7SU05RUosZ0JEYnFEO0VsQnlpS3JEO0VhaCtKSTtJSXhGSixnQkNlcUQ7RWxCNGlLckQ7RWE3OUpNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJna0tyRDtFYTc5Sk07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJva0tyRDtFYXo5Skk7SU05RUosc0JEYnFEO0VsQnVqS3JEO0VhOStKSTtJSXhGSixVQ2VxRDtFbEIwaktyRDtFYTMrSk07SU03Rkosa0JBQWtCO0lBQ2xCLFNBSG1EO0VuQjhrS3JEO0VhMytKTTtJTWpHSixrQkFBa0I7SUFDbEIsVUFIbUQ7RW5Ca2xLckQ7RWF2K0pJO0lNOUVKLHNCRGJxRDtFbEJxa0tyRDtFYTUvSkk7SUl4RkosZ0JDZXFEO0VsQndrS3JEO0Vhei9KTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CNGxLckQ7RWF6L0pNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CZ21LckQ7RWFyL0pJO0lNOUVKLGdCRGJxRDtFbEJtbEtyRDtFYTFnS0k7SUl4RkosZ0JDZXFEO0VsQnNsS3JEO0VhdmdLTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CMG1LckQ7RWF2Z0tNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5COG1LckQ7RWFuZ0tJO0lNOUVKLHNCRGJxRDtFbEJpbUtyRDtFYXhoS0k7SUl4RkosVUNlcUQ7RWxCb21LckQ7RWFyaEtNO0lNN0ZKLGtCQUFrQjtJQUNsQixTQUhtRDtFbkJ3bktyRDtFYXJoS007SU1qR0osa0JBQWtCO0lBQ2xCLFVBSG1EO0VuQjRuS3JEO0VhamhLSTtJTTlFSixzQkRicUQ7RWxCK21LckQ7RWF0aUtJO0lJeEZKLGdCQ2VxRDtFbEJrbktyRDtFYW5pS007SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQnNvS3JEO0VhbmlLTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQjBvS3JEO0VhL2hLSTtJTTlFSixnQkRicUQ7RWxCNm5LckQ7RWFwaktJO0lJeEZKLGdCQ2VxRDtFbEJnb0tyRDtFYWpqS007SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQm9wS3JEO0VhampLTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQndwS3JEO0VhN2lLSTtJTTlFSixzQkRicUQ7RWxCMm9LckQ7RWFsa0tJO0lJeEZKLFdDZXFEO0VsQjhvS3JEO0VhbmpLSTtJTTlFSixzQkRicUQ7RWxCaXBLckQ7RWEvaUtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsV0FBdUI7RXBCMnBLekI7RWFuaktJO0lPakZBLFdBQVc7RXBCdW9LZjtFYXRqS0k7SU83RUEsV0FBVztFcEJzb0tmO0VhempLSTtJT3pFQSxXVDhEcUQ7RVh1a0t6RDtFYTVqS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEJ3cUt6QjtFYWhrS0k7SU9qRkEsV0FBVztFcEJvcEtmO0VhbmtLSTtJTzdFQSxXQUFXO0VwQm1wS2Y7RWF0a0tJO0lPekVBLFdUOERxRDtFWG9sS3pEO0VhemtLSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEJxckt6QjtFYTdrS0k7SU9qRkEsV0FBVztFcEJpcUtmO0VhaGxLSTtJTzdFQSxXQUFXO0VwQmdxS2Y7RWFubEtJO0lPekVBLFdUOERxRDtFWGltS3pEO0VhdGxLSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQmtzS3pCO0VhMWxLSTtJT2pGQSxXQUFXO0VwQjhxS2Y7RWE3bEtJO0lPN0VBLFdBQVc7RXBCNnFLZjtFYWhtS0k7SU96RUEsV1Q4RHFEO0VYOG1LekQ7RWFubUtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCK3NLekI7RWF2bUtJO0lPakZBLFdBQVc7RXBCMnJLZjtFYTFtS0k7SU83RUEsV0FBVztFcEIwcktmO0VhN21LSTtJT3pFQSxXVDhEcUQ7RVgybkt6RDtFYWhuS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxnQkFBdUI7RXBCNHRLekI7RWFwbktJO0lPakZBLFdBQVc7RXBCd3NLZjtFYXZuS0k7SU83RUEsV0FBVztFcEJ1c0tmO0VhMW5LSTtJT3pFQSxXVDhEcUQ7RVh3b0t6RDtFYTduS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxnQkFBdUI7RXBCeXVLekI7RWFqb0tJO0lPakZBLFdBQVc7RXBCcXRLZjtFYXBvS0k7SU83RUEsV0FBVztFcEJvdEtmO0Vhdm9LSTtJT3pFQSxXVDhEcUQ7RVhxcEt6RDtFYTFvS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxZQUF1QjtFcEJzdkt6QjtFYTlvS0k7SU9qRkEsV0FBVztFcEJrdUtmO0VhanBLSTtJTzdFQSxXQUFXO0VwQml1S2Y7RWFwcEtJO0lPekVBLFdUOERxRDtFWGtxS3pEO0VhdnBLSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEJtd0t6QjtFYTNwS0k7SU9qRkEsV0FBVztFcEIrdUtmO0VhOXBLSTtJTzdFQSxXQUFXO0VwQjh1S2Y7RWFqcUtJO0lPekVBLFdUOERxRDtFWCtxS3pEO0VhcHFLSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQmd4S3pCO0VheHFLSTtJT2pGQSxXQUFXO0VwQjR2S2Y7RWEzcUtJO0lPN0VBLFdBQVc7RXBCMnZLZjtFYTlxS0k7SU96RUEsV1Q4RHFEO0VYNHJLekQ7RWFqcktJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZUFBdUI7RXBCNnhLekI7RWFycktJO0lPakZBLFdBQVc7RXBCeXdLZjtFYXhyS0k7SU83RUEsV0FBVztFcEJ3d0tmO0VhM3JLSTtJT3pFQSxXVDhEcUQ7RVh5c0t6RDtFYTlyS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxlQUF1QjtFcEIweUt6QjtFYWxzS0k7SU9qRkEsV0FBVztFcEJzeEtmO0VhcnNLSTtJTzdFQSxXQUFXO0VwQnF4S2Y7RWF4c0tJO0lPekVBLFdUOERxRDtFWHN0S3pEO0VhcnNLRTtJRy9HQSxnQkR1RVM7SUN0RVQsZURzRVM7RWZpdktYO0VhenNLRTtJQUlJLGVBQWU7SUFDZixjQUFjO0Vid3NLcEI7RWFwc0tFO0lBQ0UsZUFBZTtJQUNmLGNBQWM7RWJzc0tsQjtFYW5zS0U7SUc3SEEseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzMEt2QztFYWxzS0U7SU1qSUEsa0JBQWtCO0lBQ2xCLGlCQUFpQjtFbkJzMEtuQjtFbUIzMEtFO0lBQ0UsV0FBVztJQUNYLFdBQVc7RW5CNjBLZjtFYXJzS0U7OztJTTVIRixnQkFBZ0I7SUFDaEIsV0FBVztJQUNYLGVBQWU7SUFDZixjQUFjO0VuQnMwS2Q7QUFDRjs7QU12c0tNO0VPOURBO0lJeEZKLGVDZXFEO0VsQm0xS3JEO0VhcHdLTTtJTTdGSixrQkFBa0I7SUFDbEIsY0FIbUQ7RW5CdTJLckQ7RWFwd0tNO0lNakdKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkIyMktyRDtFYWh3S0k7SU05RUosZURoQmdDO0VsQmkyS2hDO0VhcnhLSTtJSXhGSixnQkNlcUQ7RWxCaTJLckQ7RWFseEtNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJxM0tyRDtFYWx4S007SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJ5M0tyRDtFYTl3S0k7SU05RUoscUJEYnFEO0VsQjQyS3JEO0VhbnlLSTtJSXhGSixVQ2VxRDtFbEIrMktyRDtFYWh5S007SU03Rkosa0JBQWtCO0lBQ2xCLFNBSG1EO0VuQm00S3JEO0VhaHlLTTtJTWpHSixrQkFBa0I7SUFDbEIsVUFIbUQ7RW5CdTRLckQ7RWE1eEtJO0lNOUVKLHNCRGJxRDtFbEIwM0tyRDtFYWp6S0k7SUl4RkosZ0JDZXFEO0VsQjYzS3JEO0VhOXlLTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CaTVLckQ7RWE5eUtNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CcTVLckQ7RWExeUtJO0lNOUVKLGdCRGJxRDtFbEJ3NEtyRDtFYS96S0k7SUl4RkosZ0JDZXFEO0VsQjI0S3JEO0VhNXpLTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CKzVLckQ7RWE1ektNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CbTZLckQ7RWF4ektJO0lNOUVKLHNCRGJxRDtFbEJzNUtyRDtFYTcwS0k7SUl4RkosVUNlcUQ7RWxCeTVLckQ7RWExMEtNO0lNN0ZKLGtCQUFrQjtJQUNsQixTQUhtRDtFbkI2NktyRDtFYTEwS007SU1qR0osa0JBQWtCO0lBQ2xCLFVBSG1EO0VuQmk3S3JEO0VhdDBLSTtJTTlFSixzQkRicUQ7RWxCbzZLckQ7RWEzMUtJO0lJeEZKLGdCQ2VxRDtFbEJ1NktyRDtFYXgxS007SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQjI3S3JEO0VheDFLTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQis3S3JEO0VhcDFLSTtJTTlFSixnQkRicUQ7RWxCazdLckQ7RWF6MktJO0lJeEZKLGdCQ2VxRDtFbEJxN0tyRDtFYXQyS007SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQnk4S3JEO0VhdDJLTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQjY4S3JEO0VhbDJLSTtJTTlFSixzQkRicUQ7RWxCZzhLckQ7RWF2M0tJO0lJeEZKLFVDZXFEO0VsQm04S3JEO0VhcDNLTTtJTTdGSixrQkFBa0I7SUFDbEIsU0FIbUQ7RW5CdTlLckQ7RWFwM0tNO0lNakdKLGtCQUFrQjtJQUNsQixVQUhtRDtFbkIyOUtyRDtFYWgzS0k7SU05RUosc0JEYnFEO0VsQjg4S3JEO0VhcjRLSTtJSXhGSixnQkNlcUQ7RWxCaTlLckQ7RWFsNEtNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJxK0tyRDtFYWw0S007SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJ5K0tyRDtFYTkzS0k7SU05RUosZ0JEYnFEO0VsQjQ5S3JEO0VhbjVLSTtJSXhGSixnQkNlcUQ7RWxCKzlLckQ7RWFoNUtNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJtL0tyRDtFYWg1S007SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkJ1L0tyRDtFYTU0S0k7SU05RUosc0JEYnFEO0VsQjArS3JEO0VhajZLSTtJSXhGSixXQ2VxRDtFbEI2K0tyRDtFYWw1S0k7SU05RUosc0JEYnFEO0VsQmcvS3JEO0VhOTRLSTtJT3pHRixXVDhGdUQ7SVM3RnZELFdBQXVCO0VwQjAvS3pCO0VhbDVLSTtJT2pGQSxXQUFXO0VwQnMrS2Y7RWFyNUtJO0lPN0VBLFdBQVc7RXBCcStLZjtFYXg1S0k7SU96RUEsV1Q4RHFEO0VYczZLekQ7RWEzNUtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCdWdMekI7RWEvNUtJO0lPakZBLFdBQVc7RXBCbS9LZjtFYWw2S0k7SU83RUEsV0FBVztFcEJrL0tmO0VhcjZLSTtJT3pFQSxXVDhEcUQ7RVhtN0t6RDtFYXg2S0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxnQkFBdUI7RXBCb2hMekI7RWE1NktJO0lPakZBLFdBQVc7RXBCZ2dMZjtFYS82S0k7SU83RUEsV0FBVztFcEIrL0tmO0VhbDdLSTtJT3pFQSxXVDhEcUQ7RVhnOEt6RDtFYXI3S0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEJpaUx6QjtFYXo3S0k7SU9qRkEsV0FBVztFcEI2Z0xmO0VhNTdLSTtJTzdFQSxXQUFXO0VwQjRnTGY7RWEvN0tJO0lPekVBLFdUOERxRDtFWDY4S3pEO0VhbDhLSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQjhpTHpCO0VhdDhLSTtJT2pGQSxXQUFXO0VwQjBoTGY7RWF6OEtJO0lPN0VBLFdBQVc7RXBCeWhMZjtFYTU4S0k7SU96RUEsV1Q4RHFEO0VYMDlLekQ7RWEvOEtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQjJqTHpCO0VhbjlLSTtJT2pGQSxXQUFXO0VwQnVpTGY7RWF0OUtJO0lPN0VBLFdBQVc7RXBCc2lMZjtFYXo5S0k7SU96RUEsV1Q4RHFEO0VYdStLekQ7RWE1OUtJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQndrTHpCO0VhaCtLSTtJT2pGQSxXQUFXO0VwQm9qTGY7RWFuK0tJO0lPN0VBLFdBQVc7RXBCbWpMZjtFYXQrS0k7SU96RUEsV1Q4RHFEO0VYby9LekQ7RWF6K0tJO0lPekdGLFdUOEZ1RDtJUzdGdkQsWUFBdUI7RXBCcWxMekI7RWE3K0tJO0lPakZBLFdBQVc7RXBCaWtMZjtFYWgvS0k7SU83RUEsV0FBVztFcEJna0xmO0Vhbi9LSTtJT3pFQSxXVDhEcUQ7RVhpZ0x6RDtFYXQvS0k7SU96R0YsV1Q4RnVEO0lTN0Z2RCxnQkFBdUI7RXBCa21MekI7RWExL0tJO0lPakZBLFdBQVc7RXBCOGtMZjtFYTcvS0k7SU83RUEsV0FBVztFcEI2a0xmO0VhaGdMSTtJT3pFQSxXVDhEcUQ7RVg4Z0x6RDtFYW5nTEk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEIrbUx6QjtFYXZnTEk7SU9qRkEsV0FBVztFcEIybExmO0VhMWdMSTtJTzdFQSxXQUFXO0VwQjBsTGY7RWE3Z0xJO0lPekVBLFdUOERxRDtFWDJoTHpEO0VhaGhMSTtJT3pHRixXVDhGdUQ7SVM3RnZELGVBQXVCO0VwQjRuTHpCO0VhcGhMSTtJT2pGQSxXQUFXO0VwQndtTGY7RWF2aExJO0lPN0VBLFdBQVc7RXBCdW1MZjtFYTFoTEk7SU96RUEsV1Q4RHFEO0VYd2lMekQ7RWE3aExJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZUFBdUI7RXBCeW9MekI7RWFqaUxJO0lPakZBLFdBQVc7RXBCcW5MZjtFYXBpTEk7SU83RUEsV0FBVztFcEJvbkxmO0VhdmlMSTtJT3pFQSxXVDhEcUQ7RVhxakx6RDtFYXBpTEU7SUcvR0EsZ0JEdUVTO0lDdEVULGVEc0VTO0VmZ2xMWDtFYXhpTEU7SUFJSSxlQUFlO0lBQ2YsY0FBYztFYnVpTHBCO0VhbmlMRTtJQUNFLGVBQWU7SUFDZixjQUFjO0VicWlMbEI7RWFsaUxFO0lHN0hBLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCcXFMdkM7RWFqaUxFO0lNaklBLGtCQUFrQjtJQUNsQixpQkFBaUI7RW5CcXFMbkI7RW1CMXFMRTtJQUNFLFdBQVc7SUFDWCxXQUFXO0VuQjRxTGY7RWFwaUxFOzs7SU01SEYsZ0JBQWdCO0lBQ2hCLFdBQVc7SUFDWCxlQUFlO0lBQ2YsY0FBYztFbkJxcUxkO0FBQ0Y7O0FNdGlMTTtFTzlEQTtJSXhGSixlQ2VxRDtFbEJrckxyRDtFYW5tTE07SU03Rkosa0JBQWtCO0lBQ2xCLGNBSG1EO0VuQnNzTHJEO0Vhbm1MTTtJTWpHSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CMHNMckQ7RWEvbExJO0lNOUVKLGVEaEJnQztFbEJnc0xoQztFYXBuTEk7SUl4RkosZ0JDZXFEO0VsQmdzTHJEO0Vham5MTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5Cb3RMckQ7RWFqbkxNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5Cd3RMckQ7RWE3bUxJO0lNOUVKLHFCRGJxRDtFbEIyc0xyRDtFYWxvTEk7SUl4RkosVUNlcUQ7RWxCOHNMckQ7RWEvbkxNO0lNN0ZKLGtCQUFrQjtJQUNsQixTQUhtRDtFbkJrdUxyRDtFYS9uTE07SU1qR0osa0JBQWtCO0lBQ2xCLFVBSG1EO0VuQnN1THJEO0VhM25MSTtJTTlFSixzQkRicUQ7RWxCeXRMckQ7RWFocExJO0lJeEZKLGdCQ2VxRDtFbEI0dExyRDtFYTdvTE07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQmd2THJEO0VhN29MTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQm92THJEO0Vhem9MSTtJTTlFSixnQkRicUQ7RWxCdXVMckQ7RWE5cExJO0lJeEZKLGdCQ2VxRDtFbEIwdUxyRDtFYTNwTE07SU03Rkosa0JBQWtCO0lBQ2xCLGVBSG1EO0VuQjh2THJEO0VhM3BMTTtJTWpHSixrQkFBa0I7SUFDbEIsZ0JBSG1EO0VuQmt3THJEO0VhdnBMSTtJTTlFSixzQkRicUQ7RWxCcXZMckQ7RWE1cUxJO0lJeEZKLFVDZXFEO0VsQnd2THJEO0VhenFMTTtJTTdGSixrQkFBa0I7SUFDbEIsU0FIbUQ7RW5CNHdMckQ7RWF6cUxNO0lNakdKLGtCQUFrQjtJQUNsQixVQUhtRDtFbkJneExyRDtFYXJxTEk7SU05RUosc0JEYnFEO0VsQm13THJEO0VhMXJMSTtJSXhGSixnQkNlcUQ7RWxCc3dMckQ7RWF2ckxNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkIweExyRDtFYXZyTE07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkI4eExyRDtFYW5yTEk7SU05RUosZ0JEYnFEO0VsQml4THJEO0VheHNMSTtJSXhGSixnQkNlcUQ7RWxCb3hMckQ7RWFyc0xNO0lNN0ZKLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJ3eUxyRDtFYXJzTE07SU1qR0osa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkI0eUxyRDtFYWpzTEk7SU05RUosc0JEYnFEO0VsQit4THJEO0VhdHRMSTtJSXhGSixVQ2VxRDtFbEJreUxyRDtFYW50TE07SU03Rkosa0JBQWtCO0lBQ2xCLFNBSG1EO0VuQnN6THJEO0VhbnRMTTtJTWpHSixrQkFBa0I7SUFDbEIsVUFIbUQ7RW5CMHpMckQ7RWEvc0xJO0lNOUVKLHNCRGJxRDtFbEI2eUxyRDtFYXB1TEk7SUl4RkosZ0JDZXFEO0VsQmd6THJEO0VhanVMTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CbzBMckQ7RWFqdUxNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CdzBMckQ7RWE3dExJO0lNOUVKLGdCRGJxRDtFbEIyekxyRDtFYWx2TEk7SUl4RkosZ0JDZXFEO0VsQjh6THJEO0VhL3VMTTtJTTdGSixrQkFBa0I7SUFDbEIsZUFIbUQ7RW5CazFMckQ7RWEvdUxNO0lNakdKLGtCQUFrQjtJQUNsQixnQkFIbUQ7RW5CczFMckQ7RWEzdUxJO0lNOUVKLHNCRGJxRDtFbEJ5MExyRDtFYWh3TEk7SUl4RkosV0NlcUQ7RWxCNDBMckQ7RWFqdkxJO0lNOUVKLHNCRGJxRDtFbEIrMExyRDtFYTd1TEk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxXQUF1QjtFcEJ5MUx6QjtFYWp2TEk7SU9qRkEsV0FBVztFcEJxMExmO0VhcHZMSTtJTzdFQSxXQUFXO0VwQm8wTGY7RWF2dkxJO0lPekVBLFdUOERxRDtFWHF3THpEO0VhMXZMSTtJT3pHRixXVDhGdUQ7SVM3RnZELFVBQXVCO0VwQnMyTHpCO0VhOXZMSTtJT2pGQSxXQUFXO0VwQmsxTGY7RWFqd0xJO0lPN0VBLFdBQVc7RXBCaTFMZjtFYXB3TEk7SU96RUEsV1Q4RHFEO0VYa3hMekQ7RWF2d0xJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQm0zTHpCO0VhM3dMSTtJT2pGQSxXQUFXO0VwQisxTGY7RWE5d0xJO0lPN0VBLFdBQVc7RXBCODFMZjtFYWp4TEk7SU96RUEsV1Q4RHFEO0VYK3hMekQ7RWFweExJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCZzRMekI7RWF4eExJO0lPakZBLFdBQVc7RXBCNDJMZjtFYTN4TEk7SU83RUEsV0FBVztFcEIyMkxmO0VhOXhMSTtJT3pFQSxXVDhEcUQ7RVg0eUx6RDtFYWp5TEk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxVQUF1QjtFcEI2NEx6QjtFYXJ5TEk7SU9qRkEsV0FBVztFcEJ5M0xmO0VheHlMSTtJTzdFQSxXQUFXO0VwQnczTGY7RWEzeUxJO0lPekVBLFdUOERxRDtFWHl6THpEO0VhOXlMSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEIwNUx6QjtFYWx6TEk7SU9qRkEsV0FBVztFcEJzNExmO0VhcnpMSTtJTzdFQSxXQUFXO0VwQnE0TGY7RWF4ekxJO0lPekVBLFdUOERxRDtFWHMwTHpEO0VhM3pMSTtJT3pHRixXVDhGdUQ7SVM3RnZELGdCQUF1QjtFcEJ1Nkx6QjtFYS96TEk7SU9qRkEsV0FBVztFcEJtNUxmO0VhbDBMSTtJTzdFQSxXQUFXO0VwQms1TGY7RWFyMExJO0lPekVBLFdUOERxRDtFWG0xTHpEO0VheDBMSTtJT3pHRixXVDhGdUQ7SVM3RnZELFlBQXVCO0VwQm83THpCO0VhNTBMSTtJT2pGQSxXQUFXO0VwQmc2TGY7RWEvMExJO0lPN0VBLFdBQVc7RXBCKzVMZjtFYWwxTEk7SU96RUEsV1Q4RHFEO0VYZzJMekQ7RWFyMUxJO0lPekdGLFdUOEZ1RDtJUzdGdkQsZ0JBQXVCO0VwQmk4THpCO0VhejFMSTtJT2pGQSxXQUFXO0VwQjY2TGY7RWE1MUxJO0lPN0VBLFdBQVc7RXBCNDZMZjtFYS8xTEk7SU96RUEsV1Q4RHFEO0VYNjJMekQ7RWFsMkxJO0lPekdGLFdUOEZ1RDtJUzdGdkQsVUFBdUI7RXBCODhMekI7RWF0MkxJO0lPakZBLFdBQVc7RXBCMDdMZjtFYXoyTEk7SU83RUEsV0FBVztFcEJ5N0xmO0VhNTJMSTtJT3pFQSxXVDhEcUQ7RVgwM0x6RDtFYS8yTEk7SU96R0YsV1Q4RnVEO0lTN0Z2RCxlQUF1QjtFcEIyOUx6QjtFYW4zTEk7SU9qRkEsV0FBVztFcEJ1OExmO0VhdDNMSTtJTzdFQSxXQUFXO0VwQnM4TGY7RWF6M0xJO0lPekVBLFdUOERxRDtFWHU0THpEO0VhNTNMSTtJT3pHRixXVDhGdUQ7SVM3RnZELGVBQXVCO0VwQncrTHpCO0VhaDRMSTtJT2pGQSxXQUFXO0VwQm85TGY7RWFuNExJO0lPN0VBLFdBQVc7RXBCbTlMZjtFYXQ0TEk7SU96RUEsV1Q4RHFEO0VYbzVMekQ7RWFuNExFO0lHL0dBLGdCRHVFUztJQ3RFVCxlRHNFUztFZis2TFg7RWF2NExFO0lBSUksZUFBZTtJQUNmLGNBQWM7RWJzNExwQjtFYWw0TEU7SUFDRSxlQUFlO0lBQ2YsY0FBYztFYm80TGxCO0VhajRMRTtJRzdIQSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm9nTXZDO0VhaDRMRTtJTWpJQSxrQkFBa0I7SUFDbEIsaUJBQWlCO0VuQm9nTW5CO0VtQnpnTUU7SUFDRSxXQUFXO0lBQ1gsV0FBVztFbkIyZ01mO0VhbjRMRTs7O0lNNUhGLGdCQUFnQjtJQUNoQixXQUFXO0lBQ1gsZUFBZTtJQUNmLGNBQWM7RW5Cb2dNZDtBQUNGOztBYXA0TEU7RUcxRkUseUJEYXFEO0FmcTlMekQ7O0FnQmgrTEk7RUFDRSxnQkFBZ0I7QWhCbStMdEI7O0FNbDVMTTtFT01KO0lHMUZFLHlCRGFxRDtFZjg5THZEO0VnQnorTEU7SUFDRSxnQkFBZ0I7RWhCMitMcEI7QUFDRjs7QU0zNUxNO0VPTUo7SUcxRkUseUJEYXFEO0VmdStMdkQ7RWdCbC9MRTtJQUNFLGdCQUFnQjtFaEJvL0xwQjtBQUNGOztBcUJwMExFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBbUJFLFNBQVM7RUFDVCxVQUFVO0FyQnUwTGQ7O0FxQm4wTEU7RUFDRSxtQmpCeEgwQjtFaUIwSDFCLGtCQUFrQjtFQUNsQixnQmpCNUhzQjtFaUI2SHRCLGtDakIzSHlDO0FKZzhMN0M7O0FxQmowTEU7O0VBRUUsa0JBQWtCO0VBQ2xCLG9CQUFvQjtBckJvMEx4Qjs7QXFCaDBMRTs7RUFFRSxpQmpCMU1xQjtFaUIyTXJCLG9CQUFvQjtBckJtMEx4Qjs7QVFseExJO0VhNUNBLGNqQmxKaUI7RWlCbUpqQixvQkFBb0I7QXJCazBMeEI7O0FxQjl6TEU7Ozs7OztFQU1FLHlDakJqT007RWlCa09OLGtCakJqTXNCO0VpQmtNdEIsaUJqQjdOcUI7RWlCOE5yQixjakI5TGtCO0VpQitMbEIsa0NqQmxLc0M7QUptK0wxQzs7QXFCMzBMRTs7Ozs7O0VBYUksY0FBYztFQUNkLGNqQnRQZTtBSjZqTXJCOztBUWppTUk7RWF1T1EscUJOdlA2QztFTW1RN0MsZ0JqQjNOVztFaUJtT1gsYUFBYTtFQU9iLHFCakJ6T2lCO0FKK2dNN0I7O0FxQnIwTFE7RUFJSSxxQk52UDZDO0VNbVE3QyxnQmpCM05XO0VpQm1PWCxhQUFhO0VBT2IscUJqQnpPaUI7QUpzaE03Qjs7QXFCNTBMUTtFQUlJLGVOdlA2QztFTW1RN0MsZ0JqQjNOVztFaUJtT1gsYUFBYTtFQU9iLHFCakJ6T2lCO0FKNmhNN0I7O0FxQm4xTFE7RUFJSSxlTnZQNkM7RU1tUTdDLGdCakIzTlc7RWlCbU9YLGFBQWE7RUFPYixxQmpCek9pQjtBSm9pTTdCOztBcUIxMUxRO0VBSUksZU52UDZDO0VNbVE3QyxnQmpCM05XO0VpQm1PWCxhQUFhO0VBT2IscUJqQnpPaUI7QUoyaU03Qjs7QXFCajJMUTtFQUlJLGVOdlA2QztFTW1RN0MsZ0JqQjNOVztFaUJtT1gsYUFBYTtFQU9iLHFCakJ6T2lCO0FKa2pNN0I7O0FNcGhNTTtFRXZERjtJYXVPUSxxQk52UDZDO0VmZ21NdkQ7RXFCNzJMTTtJQUlJLHFCTnZQNkM7RWZtbU12RDtFcUJoM0xNO0lBSUksZU52UDZDO0Vmc21NdkQ7RXFCbjNMTTtJQUlJLGVOdlA2QztFZnltTXZEO0VxQnQzTE07SUFJSSxlTnZQNkM7RWY0bU12RDtFcUJ6M0xNO0lBSUksZU52UDZDO0VmK21NdkQ7QUFDRjs7QU16aU1NO0VFdkRGO0lhdU9RLHFCTnZQNkM7RWZxbk12RDtFcUJsNExNO0lBSUkscUJOdlA2QztFZnduTXZEO0VxQnI0TE07SUFJSSxlTnZQNkM7RWYybk12RDtFcUJ4NExNO0lBSUksZU52UDZDO0VmOG5NdkQ7RXFCMzRMTTtJQUlJLGVOdlA2QztFZmlvTXZEO0VxQjk0TE07SUFJSSxlTnZQNkM7RWZvb012RDtBQUNGOztBUXA5TEk7RWEwR0Esb0JBQW9CO0VBQ3BCLGNqQjVTbUM7RWlCNlNuQyxxQmpCM015QjtFaUI2TXpCLGVBQWU7QXJCNjJMbkI7O0FxQmwzTEU7RUFTSSxjakJsTjJEO0FKK2pNakU7O0FxQnQzTEU7RUFnQkksU0FBUztBckIwMkxmOztBUWhoTUk7RWE0S0EsV0FBVztFQUVYLHNCTmxUcUQ7RU1tVHJELFNBQVM7RUFDVCx1QmpCOU55QjtFaUJnT3pCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0NqQnBVaUI7RWlCcVVqQixjQUFjO0FyQnMyTGxCOztBcUJsMkxFOzs7RUFHRSxtQmpCeFAwQjtFaUJ5UDFCLDRCakJ2T3lCO0VpQndPekIsZ0JqQjNQc0I7QUpnbU0xQjs7QXFCajJMRTtFQUNFLGtCQUFrQjtBckJvMkx0Qjs7QXFCaDJMRTtFQUNFLG9CakJqUHNCO0VpQmtQdEIscUJqQnBQa0I7QUp1bE10Qjs7QXFCLzFMRTtFQUNFLG9CakJ2UHNCO0FKeWxNMUI7O0FxQjkxTEU7RUFFSSxvQmpCNVAyQjtFaUI2UDNCLGdCQUFnQjtBckJnMkx0Qjs7QXFCMzFMRTtFQUNFLG1CakJsUXlCO0FKZ21NN0I7O0FxQi8xTEU7RUFJSSxxQmpCblE4QjtFaUJvUTlCLGlCakI1Vm1CO0FKMnJNekI7O0FxQjExTEU7RUFDRSxnQmpCalMwQjtFaUJrUzFCLDJDTjFXcUQ7RU0yV3JELDhCakJ2WGlCO0FKb3RNckI7O0FxQmgyTEU7RUFNSSxnQmpCdlNvQjtFaUJ3U3BCLGNqQnpYYTtBSnV0TW5COztBcUJ6MUxFO0VBQ0UsY0FBYztFQUNkLHFCTnRYcUQ7RU11WHJELGNqQmpZZTtBSjZ0TW5COztBcUIvMUxFO0VBTUksYWpCclJnQjtBSmtuTXRCOztBcUJ4MUxFO0VBQ0UsaUNqQnhZVztFaUJ5WVgsWUFBWTtFQUNaLHFCQUFxQjtBckIyMUx6Qjs7QVF2bU1JO0VhaVJBLFNBQVM7QXJCMDFMYjs7QXFCdDFMRTtFQUNFLHlDTjVZcUQ7RU04WXJELHlCakIxWmlCO0VpQjJaakIseUJqQjdaZ0I7RWlCK1poQiw0RGpCM1dLO0VpQjRXTCxtQmpCNVl5QjtFaUI2WXpCLGNqQjNaVztBSmt2TWY7O0FxQm4xTEU7RUFDRSxTQUFTO0VBQ1QsZ0NOcFpTO0VNc1pULHlCakJ6YWdCO0VpQjJhaEIsNERqQnZYSztFaUJ3WEwsY2pCdGFXO0VpQnlhVCxzQmpCelppQjtBSjJ1TXZCOztBc0I1eE1FO0VBQ0Usa0JsQjJKeUI7RWtCMUp6QixxQmxCMko0QjtFa0J6SjVCLG1CbEIyQ3lCO0VrQjFDekIsZ0JsQm9Kc0I7RWtCbkp0QixjbEJ5QmU7QUpxd01uQjs7QXNCMXhNRTtFQUNFLGlCbEI0SXFDO0VrQjNJckMsZ0JsQjRJaUI7QUppcE1yQjs7QXNCenhNRTtFQUNFLGlCbEI2SW1CO0VrQjVJbkIsY0FBYztBdEI0eE1sQjs7QXNCMXhNSTtFQUNFLGlCQUFpQjtBdEI2eE12Qjs7QXNCenhNRTtFQUdJLGNBQWdDO0VBQ2hDLGdCQUFnQjtBdEIweE10Qjs7QXVCeDFNVTtFQUNFLGdCQVJlO0F2Qm0yTTNCOztBdUI1MU1VO0VBQ0UsaUJBUnNCO0F2QnUyTWxDOztBdUJoMk1VO0VBQ0Usa0JBUjhCO0F2QjIyTTFDOztBdUJwMk1VO0VBQ0UsbUJBUnVDO0F2QisyTW5EOztBTXZ0TU07RWlCdEpJO0lBQ0UsZ0JBSGU7RXZCbzNNekI7RXVCbDNNUTtJQUNFLGlCQUhzQjtFdkJ1M01oQztFdUJyM01RO0lBQ0Usa0JBSDhCO0V2QjAzTXhDO0V1QngzTVE7SUFDRSxtQkFIdUM7RXZCNjNNakQ7QUFDRjs7QU10dU1NO0VpQnRKSTtJQUNFLGdCQUhlO0V2Qm00TXpCO0V1Qmo0TVE7SUFDRSxpQkFIc0I7RXZCczRNaEM7RXVCcDRNUTtJQUNFLGtCQUg4QjtFdkJ5NE14QztFdUJ2NE1RO0lBQ0UsbUJBSHVDO0V2QjQ0TWpEO0FBQ0Y7O0FNaHZNTTtFaUIzSkk7SUFDRSxnQkFIZTtFdkJrNU16QjtFdUJoNU1RO0lBQ0UsaUJBSHNCO0V2QnE1TWhDO0V1Qm41TVE7SUFDRSxrQkFIOEI7RXZCdzVNeEM7RXVCdDVNUTtJQUNFLG1CQUh1QztFdkIyNU1qRDtBQUNGOztBTS92TU07RWlCM0pJO0lBQ0UsZ0JBSGU7RXZCaTZNekI7RXVCLzVNUTtJQUNFLGlCQUhzQjtFdkJvNk1oQztFdUJsNk1RO0lBQ0Usa0JBSDhCO0V2QnU2TXhDO0V1QnI2TVE7SUFDRSxtQkFIdUM7RXZCMDZNakQ7QUFDRjs7QXdCcjZNRTtFQUFrQix3QkFBd0I7QXhCeTZNNUM7O0F3QnY2TUU7RUFDRTtJQUVJLGtDQUFrQztJQUdwQyxtQ0FBMkI7WUFBM0IsMkJBQTJCO0lBRTNCLHVCQUF1QjtJQUN2Qiw0QkFBNEI7RXhCczZNaEM7RXdCajdNQTtJQWNvQix5QkFBeUI7RXhCczZNN0M7RXdCcjZNRTtJQUFrQix3QkFBd0I7RXhCdzZNNUM7RXdCdDZNRTtJQUF1Qix5QkFBeUI7RXhCeTZNbEQ7RXdCeDZNRTtJQUF1QixzQ0FBc0M7RXhCMjZNL0Q7RXdCMTZNRTtJQUF1QixtQ0FBbUM7RXhCNjZNNUQ7RXdCNTZNRTtJQUFvQiw2QkFBNkI7RXhCKzZNbkQ7RXdCOTZNRTtJQUFvQiw4QkFBOEI7RXhCaTdNcEQ7RXdCaDdNRTtJQUFvQiw4QkFBOEI7RXhCbTdNcEQ7RXdCaDdNRTs7SUFDWSwwQkFBMEI7RXhCbTdNeEM7RXdCajdNSTtJQUFnQiw0QkFBNEI7RXhCbzdNaEQ7RXdCaDdNRTs7O0lBRXFCLFdBQVc7RXhCbTdNbEM7RXdCaDdNRTtJQUFvQiw2QkFBNkI7RXhCbTdNbkQ7RXdCaDdNRTs7SUFFRSx5QnBCdUJhO0lvQnRCYix3QkFBd0I7RXhCazdNNUI7RXdCOTZNRTtJQUFRLDJCQUEyQjtFeEJpN01yQztFd0IvNk1FOztJQUNNLHdCQUF3QjtFeEJrN01oQztFUWxtTUU7SWdCOVVNLDBCQUEwQjtFeEJtN01sQztFd0JqN01FO0lBQVEsYUFBYTtFeEJvN012QjtFd0JsN01FOzs7SUFHRSxVQUFVO0lBQ1YsU0FBUztFeEJvN01iO0V3Qmg3TUU7O0lBQ0ssdUJBQXVCO0V4Qm03TTlCO0V3Qmg3TUU7SUFDRSx1QkFBdUI7RXhCazdNM0I7QUFDRjs7QXlCaHdNRTtFQWhMQSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGtCckIyTGtDO0VxQjFMbEMsb0JyQndMMEI7RXFCOUt4QixxQnJCK0t5QjtFcUI1SzNCLHdCQUF3QjtFQUN4Qiw2QkFBNkI7RUFDN0Isc0JyQlBxQjtFcUJRckIseUVyQmlNa0I7RXFCak1sQixpRXJCaU1rQjtFcUIvTGxCLGVyQmdMMEQ7RXFCL0sxRCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGVBQWU7RUFxQ2YseUJyQjFFcUM7RXFCMkVyQyxjckIvRGE7QUptOE1mOztBQUVBO0VZNTBNSSxVQUFVO0FaODBNZDs7QXlCdDRNRTtFQUNFLHlCckIrSHVFO0VxQjlIdkUsY3JCbkVXO0FKNDhNZjs7QXlCM3hNRTtFQU1NLGlCckJlcUI7QUowd003Qjs7QXlCL3hNRTtFQU1NLGtCckJlcUM7QUo4d003Qzs7QXlCbnlNRTtFQU1NLGtCckJlb0U7QUpreE01RTs7QXlCdnlNRTtFQWpKRSxjQUFjO0VBQ2QsV0FBVztFQUNYLGVBQWU7RUFDZixjQUFjO0F6QjQ3TWxCOztBeUI5eU1FO0VBbkhBLHlCckIxRXFDO0VxQjJFckMsY3JCL0RhO0FKbytNZjs7QXlCbjZNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUp5K01mOztBeUJ4ek1FO0VBbkhBLHlCckIxRXlEO0VxQjJFekQsY3JCL0RhO0FKOCtNZjs7QXlCNzZNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUptL01mOztBeUJsME1FO0VBbkhBLHlCckIxRTJFO0VxQjJFM0UsY3JCL0RhO0FKdy9NZjs7QXlCdjdNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUo2L01mOztBeUI1ME1FO0VBbkhBLHlCckIxRTZGO0VxQjJFN0YsY3JCL0RhO0FKa2dOZjs7QXlCajhNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUp1Z05mOztBeUJ0MU1FO0VBbkhBLHlCckIxRTZHO0VxQjJFN0csY3JCL0RhO0FKNGdOZjs7QXlCMzhNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUppaE5mOztBeUJoMk1FO0VBbkhBLHlCckJuRWlCO0VxQm9FakIsY3JCL0RhO0FKc2hOZjs7QXlCcjlNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUoyaE5mOztBeUIxMk1FO0VBbkhBLHlCckJ4RWtCO0VxQnlFbEIsY3JCL0RhO0FKZ2lOZjs7QXlCLzlNRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUpxaU5mOztBeUJwM01FO0VBbkhBLHlCckJqRWM7RXFCa0VkLGNyQi9EYTtBSjBpTmY7O0F5QnorTUU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKK2lOZjs7QXlCOTNNRTtFQW5IQSx5QnJCaEVhO0VxQmlFYixjckIvRGE7QUpvak5mOztBeUJuL01FO0VBQ0UseUJBUG9GO0VBUXBGLGNyQm5FVztBSnlqTmY7O0F5Qng0TUU7RUFuSEEseUJyQi9EVztFcUJnRVgsY3JCL0RhO0FKOGpOZjs7QXlCNy9NRTtFQUNFLHlCQVBvRjtFQVFwRixjckJuRVc7QUpta05mOztBeUJsNU1FO0VBMURBLGFyQjBGNEI7RXFCekY1QixtQkFBbUI7QXpCZzlNckI7O0F5Qjk4TUU7RUFDRSx5QnJCdkltQztFcUJ3SW5DLGNyQjVIVztBSjZrTmY7O0F5QjU1TUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekIwOU1yQjs7QXlCeDlNRTtFQUNFLHlCckJ2SW1DO0VxQndJbkMsY3JCNUhXO0FKdWxOZjs7QXlCdDZNRTtFQTFEQSxhckIwRjRCO0VxQnpGNUIsbUJBQW1CO0F6Qm8rTXJCOztBeUJsK01FO0VBQ0UseUJyQnZJdUQ7RXFCd0l2RCxjckI1SFc7QUppbU5mOztBeUJoN01FO0VBMURBLGFyQjBGNEI7RXFCekY1QixtQkFBbUI7QXpCOCtNckI7O0F5QjUrTUU7RUFDRSx5QnJCdkl5RTtFcUJ3SXpFLGNyQjVIVztBSjJtTmY7O0F5QjE3TUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekJ3L01yQjs7QXlCdC9NRTtFQUNFLHlCckJ2STJGO0VxQndJM0YsY3JCNUhXO0FKcW5OZjs7QXlCcDhNRTtFQTFEQSxhckIwRjRCO0VxQnpGNUIsbUJBQW1CO0F6QmtnTnJCOztBeUJoZ05FO0VBQ0UseUJyQnZJMkc7RXFCd0kzRyxjckI1SFc7QUorbk5mOztBeUI5OE1FO0VBMURBLGFyQjBGNEI7RXFCekY1QixtQkFBbUI7QXpCNGdOckI7O0F5QjFnTkU7RUFDRSx5QnJCaEllO0VxQmlJZixjckI1SFc7QUp5b05mOztBeUJ4OU1FO0VBMURBLGFyQjBGNEI7RXFCekY1QixtQkFBbUI7QXpCc2hOckI7O0F5QnBoTkU7RUFDRSx5QnJCcklnQjtFcUJzSWhCLGNyQjVIVztBSm1wTmY7O0F5QmwrTUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekJnaU5yQjs7QXlCOWhORTtFQUNFLHlCckI5SFk7RXFCK0haLGNyQjVIVztBSjZwTmY7O0F5QjUrTUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekIwaU5yQjs7QXlCeGlORTtFQUNFLHlCckI3SFc7RXFCOEhYLGNyQjVIVztBSnVxTmY7O0F5QnQvTUU7RUExREEsYXJCMEY0QjtFcUJ6RjVCLG1CQUFtQjtBekJvak5yQjs7QXlCbGpORTtFQUNFLHlCckI1SFM7RXFCNkhULGNyQjVIVztBSmlyTmY7O0F5QmhnTkU7RUFuRkEseUJyQjFHcUM7RXFCMkdyQyxjckIzR3FDO0FKa3NOdkM7O0F5QjdtTkU7RUFFRSw2QkFBNkI7QXpCK21OakM7O0F5QjFtTkk7RUFFRSw2QkFBNkI7QXpCNG1ObkM7O0F5QjdsTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCdW1OakU7O0F5Qi9sTkk7RUFFRSx5QnJCbEhpQztFcUJtSGpDLGNyQm5IaUM7QUpvdE52Qzs7QXlCdmhORTtFQW5GQSx5QnJCMUdxQztFcUIyR3JDLGNyQjNHcUM7QUp5dE52Qzs7QXlCNW1ORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekJzbk5qRTs7QXlCOW1OSTtFQUVFLHlCckJsSGlDO0VxQm1IakMsY3JCbkhpQztBSm11TnZDOztBeUJ0aU5FO0VBbkZBLHlCckIxR3lEO0VxQjJHekQsY3JCM0d5RDtBSnd1TjNEOztBeUIzbk5FO0VBQ0UscUJBTjZEO0VBTzdELGNBUDZEO0F6QnFvTmpFOztBeUI3bk5JO0VBRUUseUJyQmxIcUQ7RXFCbUhyRCxjckJuSHFEO0FKa3ZOM0Q7O0F5QnJqTkU7RUFuRkEseUJyQjFHMkU7RXFCMkczRSxjckIzRzJFO0FKdXZON0U7O0F5QjFvTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCb3BOakU7O0F5QjVvTkk7RUFFRSx5QnJCbEh1RTtFcUJtSHZFLGNyQm5IdUU7QUppd043RTs7QXlCcGtORTtFQW5GQSx5QnJCMUc2RjtFcUIyRzdGLGNyQjNHNkY7QUpzd04vRjs7QXlCenBORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekJtcU5qRTs7QXlCM3BOSTtFQUVFLHlCckJsSHlGO0VxQm1IekYsY3JCbkh5RjtBSmd4Ti9GOztBeUJubE5FO0VBbkZBLHlCckIxRzZHO0VxQjJHN0csY3JCM0c2RztBSnF4Ti9HOztBeUJ4cU5FO0VBQ0UscUJBTjZEO0VBTzdELGNBUDZEO0F6QmtyTmpFOztBeUIxcU5JO0VBRUUseUJyQmxIeUc7RXFCbUh6RyxjckJuSHlHO0FKK3hOL0c7O0F5QmxtTkU7RUFuRkEseUJyQm5HaUI7RXFCb0dqQixjckJwR2lCO0FKNnhObkI7O0F5QnZyTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCaXNOakU7O0F5QnpyTkk7RUFFRSx5QnJCM0dhO0VxQjRHYixjckI1R2E7QUp1eU5uQjs7QXlCam5ORTtFQW5GQSx5QnJCeEdrQjtFcUJ5R2xCLGNyQnpHa0I7QUppek5wQjs7QXlCdHNORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekJndE5qRTs7QXlCeHNOSTtFQUVFLHlCckJoSGM7RXFCaUhkLGNyQmpIYztBSjJ6TnBCOztBeUJob05FO0VBbkZBLHlCckJqR2M7RXFCa0dkLGNyQmxHYztBSnl6TmhCOztBeUJydE5FO0VBQ0UscUJBTjZEO0VBTzdELGNBUDZEO0F6Qit0TmpFOztBeUJ2dE5JO0VBRUUseUJyQnpHVTtFcUIwR1YsY3JCMUdVO0FKbTBOaEI7O0F5Qi9vTkU7RUFuRkEseUJyQmhHYTtFcUJpR2IsY3JCakdhO0FKdTBOZjs7QXlCcHVORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekI4dU5qRTs7QXlCdHVOSTtFQUVFLHlCckJ4R1M7RXFCeUdULGNyQnpHUztBSmkxTmY7O0F5QjlwTkU7RUFuRkEseUJyQi9GVztFcUJnR1gsY3JCaEdXO0FKcTFOYjs7QXlCbnZORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekI2dk5qRTs7QXlCcnZOSTtFQUVFLHlCckJ2R087RXFCd0dQLGNyQnhHTztBSisxTmI7O0F5QjdxTkU7RUFuRkEseUJyQjFHcUM7RXFCMkdyQyxjckIzR3FDO0FKKzJOdkM7O0F5QjF4TkU7RUFFRSw2QkFBNkI7QXpCNHhOakM7O0F5QnZ4Tkk7RUFFRSw2QkFBNkI7QXpCeXhObkM7O0F5QjF3TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCb3hOakU7O0F5QjV3Tkk7RUFFRSx5QnJCbEhpQztFcUJtSGpDLGNyQm5IaUM7QUppNE52Qzs7QXlCcHNORTtFQWdFVSx5QkFBeUI7QXpCd29OckM7O0F5QnhzTkU7RUFuRkEseUJyQjFHcUM7RXFCMkdyQyxjckIzR3FDO0FKMDROdkM7O0F5Qjd4TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCdXlOakU7O0F5Qi94Tkk7RUFFRSx5QnJCbEhpQztFcUJtSGpDLGNyQm5IaUM7QUpvNU52Qzs7QXlCdnRORTtFQTZFYyx5QkFBeUI7QXpCOG9OekM7O0F5QjN0TkU7RUFuRkEseUJyQjFHeUQ7RXFCMkd6RCxjckIzR3lEO0FKNjVOM0Q7O0F5Qmh6TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCMHpOakU7O0F5Qmx6Tkk7RUFFRSx5QnJCbEhxRDtFcUJtSHJELGNyQm5IcUQ7QUp1Nk4zRDs7QXlCMXVORTtFQTZFYyx5QkFBeUI7QXpCaXFOekM7O0F5Qjl1TkU7RUFuRkEseUJyQjFHMkU7RXFCMkczRSxjckIzRzJFO0FKZzdON0U7O0F5Qm4wTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCNjBOakU7O0F5QnIwTkk7RUFFRSx5QnJCbEh1RTtFcUJtSHZFLGNyQm5IdUU7QUowN043RTs7QXlCN3ZORTtFQTZFYyx5QkFBeUI7QXpCb3JOekM7O0F5Qmp3TkU7RUFuRkEseUJyQjFHNkY7RXFCMkc3RixjckIzRzZGO0FKbThOL0Y7O0F5QnQxTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCZzJOakU7O0F5QngxTkk7RUFFRSx5QnJCbEh5RjtFcUJtSHpGLGNyQm5IeUY7QUo2OE4vRjs7QXlCaHhORTtFQTZFYyx5QkFBeUI7QXpCdXNOekM7O0F5QnB4TkU7RUFuRkEseUJyQjFHNkc7RXFCMkc3RyxjckIzRzZHO0FKczlOL0c7O0F5QnoyTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCbTNOakU7O0F5QjMyTkk7RUFFRSx5QnJCbEh5RztFcUJtSHpHLGNyQm5IeUc7QUpnK04vRzs7QXlCbnlORTtFQTZFYyx5QkFBeUI7QXpCMHROekM7O0F5QnZ5TkU7RUFuRkEseUJyQm5HaUI7RXFCb0dqQixjckJwR2lCO0FKaytObkI7O0F5QjUzTkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCczROakU7O0F5QjkzTkk7RUFFRSx5QnJCM0dhO0VxQjRHYixjckI1R2E7QUo0K05uQjs7QXlCdHpORTtFQTZFYyx5QkFBeUI7QXpCNnVOekM7O0F5QjF6TkU7RUFuRkEseUJyQnhHa0I7RXFCeUdsQixjckJ6R2tCO0FKMC9OcEI7O0F5Qi80TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCeTVOakU7O0F5Qmo1Tkk7RUFFRSx5QnJCaEhjO0VxQmlIZCxjckJqSGM7QUpvZ09wQjs7QXlCejBORTtFQTZFYyx5QkFBeUI7QXpCZ3dOekM7O0F5QjcwTkU7RUFuRkEseUJyQmpHYztFcUJrR2QsY3JCbEdjO0FKc2dPaEI7O0F5Qmw2TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCNDZOakU7O0F5QnA2Tkk7RUFFRSx5QnJCekdVO0VxQjBHVixjckIxR1U7QUpnaE9oQjs7QXlCNTFORTtFQTZFYyx5QkFBeUI7QXpCbXhOekM7O0F5QmgyTkU7RUFuRkEseUJyQmhHYTtFcUJpR2IsY3JCakdhO0FKd2hPZjs7QXlCcjdORTtFQUNFLHFCQU42RDtFQU83RCxjQVA2RDtBekIrN05qRTs7QXlCdjdOSTtFQUVFLHlCckJ4R1M7RXFCeUdULGNyQnpHUztBSmtpT2Y7O0F5Qi8yTkU7RUE2RWMseUJBQXlCO0F6QnN5TnpDOztBeUJuM05FO0VBbkZBLHlCckIvRlc7RXFCZ0dYLGNyQmhHVztBSjBpT2I7O0F5Qng4TkU7RUFDRSxxQkFONkQ7RUFPN0QsY0FQNkQ7QXpCazlOakU7O0F5QjE4Tkk7RUFFRSx5QnJCdkdPO0VxQndHUCxjckJ4R087QUpvak9iOztBeUJsNE5FO0VBNkVjLHlCQUF5QjtBekJ5ek56Qzs7QXlCOTZORTtFYmhMQSxjQUFjO0VBQ2QsUUFBUTtFQUNSLFNBQVM7RUFFVCxtQmF3S1k7RWJ0S1osV0FBVztFQUdULHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsNkNBQXFEO0VhdUtyRCxrQkFBa0I7RUFDbEIsVUFBVTtFQUVWLHFCQUFxQjtFQUNyQixZQUFPO0VBQ1AsbUJyQjZDeUI7QUowNE43Qjs7QXlCdDVORTtFQWlHUSx5QnJCOVI2QjtBSnVsT3ZDOztBeUIxNU5FO0VBdUdZLHlCckJwU3lCO0FKMmxPdkM7O0F5Qjk1TkU7RUF1R1kseUJyQnBTNkM7QUorbE8zRDs7QXlCbDZORTtFQXVHWSx5QnJCcFMrRDtBSm1tTzdFOztBeUJ0Nk5FO0VBdUdZLHlCckJwU2lGO0FKdW1PL0Y7O0F5QjE2TkU7RUF1R1kseUJyQnBTaUc7QUoybU8vRzs7QXlCOTZORTtFQXVHWSx5QnJCN1JLO0FKd21PbkI7O0F5Qmw3TkU7RUF1R1kseUJyQmxTTTtBSmluT3BCOztBeUJ0N05FO0VBdUdZLHlCckIzUkU7QUo4bU9oQjs7QXlCMTdORTtFQXVHWSx5QnJCMVJDO0FKaW5PZjs7QXlCOTdORTtFQXVHWSx5QnJCelJEO0FKb25PYjs7QXlCbDhORTtFQWdISSxXQUFXO0VBQ1gsV0FBVztFQUNYLGNBQWdDO0F6QnMxTnRDOztBQUVBOztFMEJ4bk9FLGNBQWM7RUFDZCw4QkFBc0I7VUFBdEIsc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxrQkFMc0o7RUFNdEosc0JYSHVEO0VXSXZELG1CdEIwVCtCO0VzQnhUL0IseUJ0QmxCbUI7RXNCbUJuQixzQnRCQ3FCO0VzQkFyQix5QnRCWmE7RXNCYWIseUR0QmpCYTtVc0JpQmIsaUR0QmpCYTtFc0JtQmIsb0J0QjBTeUI7RXNCelN6QixlWFp1RDtFV2F2RCxtQnRCUDJCO0VzQlEzQixnQnRCL0JxQjtFc0JnQ3JCLGN0QnZCYTtFc0IwQlgsMkV0QmlUMEI7RXNCalQxQixtRXRCaVQwQjtFc0JqVDFCLDJEdEJpVDBCO0VzQmpUMUIsb0Z0QmlUMEI7RXNCNVIxQix3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtBMUJtbU9wQjs7QUFFQTs7RTBCcm5PSSxhQUFhO0VBQ2IseUJ0QnBDaUI7RXNCcUNqQix5QnRCN0JXO0VzQjhCWCxtQ3RCdENpQjtVc0JzQ2pCLDJCdEJ0Q2lCO0VzQnlDZiwyRXRCc1N3QjtFc0J0U3hCLG1FdEJzU3dCO0VzQnRTeEIsMkR0QnNTd0I7RXNCdFN4QixvRnRCc1N3QjtBSmcxTjlCOztBUS9wTkk7RWtCeGNBLGVBQWU7QTFCMm1PbkI7O0EwQjVtT0U7RUFJSSxZQUFZO0ExQjRtT2xCOztBMEJ4bU9FO0VBSUksY3RCNlAyQjtBSjQyTmpDOztBMEI3bU9FO0VBSUksY3RCNlAyQjtBSjQyTmpDOztBMEI3bU9FO0VBSUksY3RCNlAyQjtBSjQyTmpDOztBMEI3bU9FO0VBSUksY3RCNlAyQjtBSjQyTmpDOztBMEI3bU9FOztFQUlJLGN0QjZQMkI7QUo0Mk5qQzs7QTBCN21PRTs7O0VBVUkseUJ0QjNFYztFc0I0RWQsbUJ0Qm1RNkI7QUpzMk5uQzs7QUFFQTs7RTBCcG1PSSx3QkFBZ0I7S0FBaEIscUJBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQixzQnRCOURtQjtBSnFxT3ZCOztBMEJubU9FO0VBQ0UsOEJBQXNCO1VBQXRCLHNCQUFzQjtBMUJzbU8xQjs7QUFFQTs7O0UyQi92T0ksc0JaNEVxRDtBZnVyT3pEOztBQUVBOztFMkIvdk9JLHFCQUFxQjtFQUNyQix3QkFBd0I7RUFFeEIsdUJBQWtEO0VBQ2xELHdCWmtFcUQ7RVlqRXJELGdCQUFnQjtBM0Jpd09wQjs7QUFFQTs7RTJCaHdPTSxlQUFlO0EzQm13T3JCOztBMkI5dk9FOztFQUVFLHdCQUFtRDtBM0Jpd092RDs7QUFFQTtFMkI5dk9JLFdBQVc7QTNCZ3dPZjs7QTRCNXZPRTtFQWpCQSxjQUFjO0VBQ2QsU0FBUztFQUVULGViNER1RDtFYTNEdkQsbUJ4QmlFMkI7RXdCaEUzQixnQnhCeUNxQjtFd0J4Q3JCLGN4QmlEYTtBSit0T2Y7O0E0QnJ3T0U7RUFMQSxzQmJtRHVEO0VhbER2RCxxQkFBOEQ7QTVCOHdPaEU7O0E2Qi94T0U7RUFHRSx1QkFGdUM7RUFHdkMscUJkK0RxRDtFYzlEckQsa0J6QnFXd0I7RXlCcFd4QixjekJxRFc7QUoydU9mOztBOEJqeU9FO0VBQ0UsY0FBd0M7RUFDeEMsV0FBVztFQUNYLHlCZjJEcUQ7QWZ5dU96RDs7QThCdnlPRTtFQVVJLGtDMUI0RGlCO0FKcXVPdkI7O0E4QjN5T0U7RUFlTSxrQ0FBaUg7QTlCZ3lPekg7O0E4QjN4T0U7Ozs7RUFDRSxTQUFTO0VBQ1QsbUJBQW1CO0VBR2pCLG1CQUFtQjtFQUNuQixzQkFBc0I7QTlCK3hPNUI7O0E4QjN4T0U7RUFFRSxlMUJ5VXVCO0UwQnhVdkIseUIxQmlCaUI7RTBCaEJqQixtQjFCY2dCO0UwQlpoQixjMUJrQlc7RTBCakJYLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFRakIsU0FBUztFQUNULFlBQVk7QTlCcXhPbEI7O0E4QnR5T0U7RUFzQk0sZUFBaUM7QTlCb3hPekM7O0E4QjF5T0U7RUEwQk0sY0FBZ0M7QTlCb3hPeEM7O0E4Qi93T0U7RUFFRSxnQkFBZ0I7RUFRZCxrQkF6RTZDO0E5Qm0xT25EOztBOEJ0d09FO0VBRUUsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFNaEIsU0FBUztFQUNULFlBQVk7QTlCbXdPbEI7O0E4Qjl3T0U7Ozs7RUFtQkksa0JBaEc2QztFQWlHN0MsY0FBYztFQUNkLGlCQUFpQjtFQUVqQixlZnBDbUQ7QWZxeU96RDs7QThCM3ZPTTtFQUNJLG1CQUFtQjtBOUI4dk83Qjs7QVF6MU5JO0V1QmpnQkEsU0FBUztFQUNULFVBQVU7RUFDVixTQUFTO0EvQjgxT2I7O0FRbDFOSTtFdUJ4Z0JBLGVBQWU7RUFDZix5QkFBa0M7QS9CODFPdEM7O0ErQjMxT0U7RUF4QkEsb0JoQm9FVztFZ0JuRVgsbUJoQjhEdUQ7RWdCN0R2RCx5QjNCaURtQjtBSnMwT3JCOztBK0JyM09FO0VBRUUsU0FBUztFQUNULHdCaEJ3RHFEO0VnQnZEckQscUJoQnVEcUQ7QWZnME96RDs7QVc3dE9FO0VxQnBLQSxrQkFGc0o7RUFHdEosc0JqQmdFdUQ7RWlCL0R2RCxtQjVCNlgrQjtFNEIzWC9CLHdCQUFnQjtLQUFoQixxQkFBZ0I7VUFBaEIsZ0JBQWdCO0VBQ2hCLHlCNUJnRG1CO0U0Qi9DbkIsc0I1Qm1FcUI7RTRCbEVyQix5QjVCc0RhO0U0QnBEYixvQjVCNld5QjtFNEI1V3pCLGVqQnVEdUQ7RWlCdER2RCxtQjVCNEQyQjtFNEIzRDNCLGdCNUJvQ3FCO0U0Qm5DckIsYzVCNENhO0VReUViLHdPQUF5TjtFb0JqSHZOLDhCQUE4QjtFQUM5Qiw2Q0FBMEQ7RUFDMUQsNEJBQTRCO0VBQzVCLHdCQUF3QjtFQUV4Qix5QkFBdUQ7RUFJdkQsMkU1QjBXMEI7RTRCMVcxQixtRTVCMFcwQjtFNEIxVzFCLDJENUIwVzBCO0U0QjFXMUIsb0Y1QjBXMEI7QUptaE85Qjs7QVlueE9FO0VEZ0NBO0lDN0JJLHVXQUF1VztFWnF4TzNXO0FBQ0Y7O0FnQy8zT0U7RUFDRSxhQUFhO0VBQ2IseUI1QnFCaUI7RTRCcEJqQix5QjVCNEJXO0U0QjNCWCxtQzVCbUJpQjtVNEJuQmpCLDJCNUJtQmlCO0U0QmhCZiwyRTVCK1Z3QjtFNEIvVnhCLG1FNUIrVndCO0U0Qi9WeEIsMkQ1QitWd0I7RTRCL1Z4QixvRjVCK1Z3QjtBSmlpTzlCOztBZ0MzM09FO0VBQ0UseUI1QlFnQjtFNEJQaEIsbUI1QnNWK0I7QUp3aU9uQzs7QWdDMTNPRTtFQUNFLGFBQWE7QWhDNjNPakI7O0FnQzEzT0U7RUFDRSxZQUFZO0VBQ1osc0JBQXNCO0FoQzYzTzFCOztBaUM5NU9FO0VBQ0UscUI3QjJCMkc7RTZCMUIzRyx5QkFBK0Q7QWpDaTZPbkU7O0FpQ2g2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3A2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3A2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3A2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3A2T0k7RUFDRSxjN0J3QnlHO0FKMjRPL0c7O0FpQ3o0T0k7RUFDRSxjN0JIeUc7QUorNE8vRzs7QWlDdjRPRTtFQXpCQSxhQUFhO0VBQ2IsdUJBQWdDO0VBQ2hDLHlCbEIrQnVEO0VrQjdCdkQscUJsQjZCdUQ7RWtCNUJ2RCxpQjdCbUN1QjtFNkJsQ3ZCLGM3Qlc2RztBSnc1Ty9HOztBaUNoNU9FO0VBSUksY0FBYztBakNnNU9wQjs7QWtDejFPRTtFQXZGQSxjQUFnQztFQUNoQyxtQjlCK0JhO0U4QjlCYixxQkFBcUI7QWxDbzdPdkI7O0FrQ2w3T0k7RUFDRSxtQkFBbUI7QWxDcTdPekI7O0FrQzk2T0U7RUFDRSxrQ0FBZ0Q7QWxDaTdPcEQ7O0FrQzk2T0U7RUFDRSxrQzlCMkJtQjtBSnM1T3ZCOztBa0NuMk9FO0VBbEVBLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2QscUI5QjJJbUM7RThCekluQyx5QjlCVG1CO0U4QlVuQixnQkFBZ0I7RUFFaEIscUJuQkF1RDtFbUJDdkQsY0FBYztFQUNkLGM5QmxCcUM7QUp5N092Qzs7QWtDcjZPRTtFQUNFLGdDOUJqQmlCO0U4QmtCakIsa0M5QkVtQjtBSnM2T3ZCOztBa0NyNk9FO0VBRUUseUI5QnpCZ0I7QUpnOE9wQjs7QWtDbjZPSTtFQUNFLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsV0FBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLFlBQVk7QWxDczZPbEI7O0FrQ242T0k7RUFDRSxnQkFBZ0I7QWxDczZPdEI7O0FrQy8zT0U7RUEzQkEsYUFBYTtFQUNiLGE5QnFHOEI7RThCbkc5Qix5QjlCbkRtQjtFOEJvRG5CLGdCQUFnQjtFQUNoQix5QjlCN0NhO0U4QitDYixjOUJuRGE7QUorOE9mOztBa0MxNU9FO0VBQ0UsZ0M5QjFEaUI7QUp1OU9yQjs7QW1DeDlPRTtFQVdJLFdBQVc7QW5DaTlPakI7O0FtQzU5T0U7RUFrQkksb0IvQkkyQjtBSjA4T2pDOztBbUNoK09FO0VBc0JJLG9CL0JBMkI7QUo4OE9qQzs7QW1DcCtPRTtFQzJKRSxlQUFpQztFQUNqQyxpQmhDckk0QjtBSms5T2hDOztBbUN6K09FO0VDdUpFLGtCaENoSTRCO0VnQ2lJNUIsY0FBZ0M7QXBDczFPcEM7O0FtQ3BnUEU7RUFDRSxrQkFBa0I7QW5DdWdQdEI7O0FtQ3JnUEk7RXZCWEYsY0FBYztFQUNkLFFBQVE7RUFDUixTQUFTO0VBRVQsaUJSK0w0QjtFUTdMNUIsV0FBVztFQUdULHNCQUFzQjtFQUN0Qix1QkFBdUI7RUFDdkIsNkNBQXFEO0V1QkVuRCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLGdCQUFnRDtFQUNoRCxXQUFzQjtBbkMrZ1A1Qjs7QW1DNWdQRTtFQUNFLFVBQVU7RUFDVixXQUFXO0FuQytnUGY7O0FtQzdnUEU7RUFDRSxXQUFXO0VBQ1gsVUFBVTtBbkNnaFBkOztBbUMzZ1BFO0VBdUNNLGlDQUF5QjtVQUF6Qix5QkFBeUI7RUFDekIsaUNBQXlCO1VBQXpCLHlCQUF5QjtBbkN3K09qQzs7QW1DNTlPRTtFQUNFLGtCQUFrQjtBbkMrOU90Qjs7QW1DNTlPRTtFQUNFLGtCL0IwR3FDO0FKcTNPekM7O0FtQzM5T0U7RUFDRSxrQkFBa0I7RUFDbEIsTUFBTTtFQUNOLFFBQW1CO0VBQ25CLGVBQWU7RUFFZixXL0JnR3FDO0UrQi9GckMsWS9CK0ZxQztBSjgzT3pDOztBbUNwK09FO0V2QjNGQSxjQUFjO0VBQ2QsUUFBUTtFQUNSLFNBQVM7RUFFVCxpQnVCd0c2QjtFdkJ0RzdCLFdBQVc7RUFHVCxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBQ3ZCLDZDQUFxRDtFdUJtR25ELE1BQU07RUFDTixTQUFTO0VBQ1QsWUFBWTtBbkM2OU9sQjs7QW1DeDlPRTtFQUNFLDZCQUFxQjtVQUFyQixxQkFBcUI7RUFDckIsaUNBQXlCO1VBQXpCLHlCQUF5QjtBbkMyOU83Qjs7QW1DeDlPRTtFdkI4Q0EsNkJBQTZCO0VBQzdCLFVBQVU7RUFDVixXQUFXO0VBQ1gsVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLDZCQUFxQjtVQUFyQixxQkFBcUI7RUFDckIsU0FBUztBWjg2T1g7O0FxQzFsUEU7RUFYQSxxQkFBcUI7RUFDckIsZ0JqQ3dOb0I7RWlDdk5wQixjakNzTm1CO0VpQ3BObkIsa0JBQWtCO0VBRWxCLGtCakNvTnVCO0VpQ25OdkIsa0JBQWtCO0VBT2hCLG1CakNvQm1DO0VpQ25CbkMsY2pDK0JXO0FKa2tQZjs7QXFDcm1QRTtFQVFNLG1CakNlK0I7RWlDZC9CLGNqQzBCTztBSnVrUGY7O0FxQzFtUEU7RUFRTSxtQmpDZW1EO0VpQ2RuRCxjakMwQk87QUo0a1BmOztBcUMvbVBFO0VBUU0sbUJqQ2VxRTtFaUNkckUsY2pDc0JPO0FKcWxQZjs7QXFDcG5QRTtFQVFNLG1CakNldUY7RWlDZHZGLGNqQ3NCTztBSjBsUGY7O0FxQ3puUEU7RUFRTSxtQmpDZXVHO0VpQ2R2RyxjakMwQk87QUoybFBmOztBcUM5blBFO0VBUU0sbUJqQ3NCVztFaUNyQlgsY2pDMEJPO0FKZ21QZjs7QXFDbm9QRTtFQVFNLG1CakN3QlE7RWlDdkJSLGNqQ3NCTztBSnltUGY7O0FxQ3hvUEU7RUFRTSxtQmpDeUJPO0VpQ3hCUCxjakNzQk87QUo4bVBmOztBcUM3b1BFO0VBUU0sbUJqQzBCSztFaUN6QkwsY2pDMEJPO0FKK21QZjs7QXNDdmxQRTtFQTNDQSx5QmxDa01vQztFa0NqTXBDLGdCQUFnQjtBdENzb1BsQjs7QVk1aFBFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVo4aFBoQjs7QVl0aFBFO0VBQ0UsV0FBVztBWnloUGY7O0FzQzVvUEU7RUFDRSxXQUFPO0VBRVAscUJ2QmdCcUQ7RXVCZnJELGNsQ09XO0VrQ05YLGVBQWU7QXRDOG9QbkI7O0FzQ3BvUE07RUFDRSxrQkFBa0I7RUFDbEIsaUJsQ2tMeUI7RWtDakx6QixVQUFVO0VBQ1YsWWxDbUw2QjtFa0NsTDdCLGNsQ1hXO0FKa3BQbkI7O0FzQzluUEU7RUFDRSxjbENwQmU7QUpxcFBuQjs7QXNDL25QSTtFQUNFLDBCQUEwQjtBdENrb1BoQzs7QXNDNW5QRTtFQUlJLGNsQ3BDZTtFa0NxQ2YsbUJBQW1CO0F0QzRuUHpCOztBdUMxaVBFO0VBL0pBLG1CbkN3UXVCO0VtQ2hRckIsWUFBWTtBdkNzc1BoQjs7QVl0a1BFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVp3a1BoQjs7QVloa1BFO0VBQ0UsV0FBVztBWm1rUGY7O0F1QzVzUEU7RUFDRSxTQUFTO0VBQ1QsaUJuQzRQcUI7RW1DM1ByQixrQm5DMlBxQjtFbUMxUHJCLGVuQ3VPd0Q7QUp3K081RDs7QXVDenNQSTtFQUNFLGVBQWlDO0F2QzRzUHZDOztBdUNua1BFO0VBTU0saUJuQ2lGcUI7QUpnL083Qjs7QXVDdmtQRTtFQU1NLGtCbkNpRnFDO0FKby9PN0M7O0F1QzNrUEU7RUFNTSxrQm5DaUZvRTtBSncvTzVFOztBdUMva1BFO0VBNUdFLGtCbkNzTnFCO0FKeStPekI7O0F1QzdyUEk7RUFFRSxhQUFhO0F2QytyUG5COztBdUNyclBNO0VBQ0UsV0FDRjtBdkN1clBOOztBdUNsclBVO0VBQ0UscUJBQXFCO0VBQ3JCLHNCQUFnRDtFQUNoRCxpQm5DOExhO0FKdS9PekI7O0F1Q25yUFk7RUFDRSxrQkFBbUU7QXZDc3JQakY7O0F1QzVyUFU7RUFDRSxxQkFBcUI7RUFDckIsNEJBQWdEO0VBQ2hELGlCbkM4TGE7QUppZ1B6Qjs7QXVDN3JQWTtFQUNFLGtCQUFtRTtBdkNnc1BqRjs7QXVDdHNQVTtFQUNFLHFCQUFxQjtFQUNyQixzQkFBZ0Q7RUFDaEQsaUJuQzhMYTtBSjJnUHpCOztBdUN2c1BZO0VBQ0Usa0JBQW1FO0F2QzBzUGpGOztBdUNodFBVO0VBQ0UscUJBQXFCO0VBQ3JCLHNCQUFnRDtFQUNoRCxpQm5DOExhO0FKcWhQekI7O0F1Q2p0UFk7RUFDRSxrQkFBbUU7QXZDb3RQakY7O0F1QzF0UFU7RUFDRSxxQkFBcUI7RUFDckIsNEJBQWdEO0VBQ2hELGlCbkM4TGE7QUoraFB6Qjs7QXVDM3RQWTtFQUNFLGtCQUFtRTtBdkM4dFBqRjs7QXVDN29QRTtFZGpEQSx5QnJCMUVxQztFcUIyRXJDLGNyQi9EYTtBSml3UGY7O0F5QmhzUEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKc3dQZjs7QXVDdnBQRTtFZGpEQSx5QnJCMUV5RDtFcUIyRXpELGNyQi9EYTtBSjJ3UGY7O0F5QjFzUEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKZ3hQZjs7QXVDanFQRTtFZGpEQSx5QnJCMUUyRTtFcUIyRTNFLGNyQi9EYTtBSnF4UGY7O0F5QnB0UEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKMHhQZjs7QXVDM3FQRTtFZGpEQSx5QnJCMUU2RjtFcUIyRTdGLGNyQi9EYTtBSit4UGY7O0F5Qjl0UEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKb3lQZjs7QXVDcnJQRTtFZGpEQSx5QnJCMUU2RztFcUIyRTdHLGNyQi9EYTtBSnl5UGY7O0F5Qnh1UEU7RUFDRSx5QkFQb0Y7RUFRcEYsY3JCbkVXO0FKOHlQZjs7QXVDOXZQRTtFQUtJLFdBQVc7QXZDNnZQakI7O0F1QzF2UEk7RUFDRSxnQkFBZ0I7QXZDNnZQdEI7O0FNM3VQTTtFaUNTSjtJQUtJLFdBQVc7SUFFYixnQkFBZ0I7RXZDaXVQbEI7QUFDRjs7QU1sdlBNO0VpQ1NKO0lBS0ksV0FBVztJQUViLGdCQUFnQjtFdkN3dVBsQjtBQUNGOztBTXB2UE07RWlDK0JKO0lBZ0RNLGNBQWM7RXZDMHFQcEI7RXVDMXRQQTtJQW1EUSxjQUFjO0lBQ2QsZUFBaUM7RXZDMHFQekM7QUFDRjs7QXdDMTBQRTtFQTFDQSxrQkFBa0I7RUFDbEIsa0JwQ3VReUI7RW9DdFF6QixhcEN1UW9CO0VvQ3JRcEIsd0NwQzhCYTtFb0M3QmIsc0JwQzZDcUI7RW9DNUJyQix1QkFGc0U7RUFHdEUsY3BDV2E7QUo0MVBmOztBd0N0M1BFO0VBQ0UsYUFBYTtBeEN5M1BqQjs7QXdDdDNQRTtFQUNFLGdCQUFnQjtBeEN5M1BwQjs7QXdDNTFQRTtFQXBCQSx5QkFGc0U7RUFHdEUsY3BDV2E7QUp5MlBmOztBd0NqMlBFO0VBcEJBLHlCQUZzRTtFQUd0RSxjcENXYTtBSjgyUGY7O0F3Q3QyUEU7RUFwQkEseUJBRnNFO0VBR3RFLGNwQ1dhO0FKbTNQZjs7QXdDMzJQRTtFQXBCQSx5QkFGc0U7RUFHdEUsY3BDV2E7QUp3M1BmOztBd0NoM1BFO0VBcEJBLHlCQUZzRTtFQUd0RSxjcENXYTtBSjYzUGY7O0F3Q3IzUEU7RUFmQSxtQkF5QmdDO0VBeEJoQyxxQkF3QmdDO0VBdkJoQyxzQkF1QmdDO0VBdEJoQyxvQkFzQmdDO0F4Q2szUGxDOztBd0M1M1BFO0VBZkEsaUJBNkI4QjtFQTVCOUIsbUJBNEI4QjtFQTNCOUIsb0JBMkI4QjtFQTFCOUIsa0JBMEI4QjtBeENxM1BoQzs7QXlDNTJQRTtFQWxEQSxtQnJDOEJrQjtFcUM1QmxCLHlCckNhbUI7RXFDWm5CLHNCckNnQ3FCO0VxQzlCckIsbUJyQ2tCYTtFcUNqQmIsd0JyQytQZ0I7VXFDL1BoQixnQnJDK1BnQjtFcUM3UGhCLGdCQUFnQjtFQUNoQixjckNVYTtBSnE1UGY7O0F5Qzc1UEU7RUFDRSxnQkFBZ0I7QXpDZzZQcEI7O0F5Q3QzUEU7RUE1QkEsYXJDS21CO0VxQ0puQixtQnJDZGtCO0FKbzZQcEI7O0F5Q3A1UEU7RUFDRSxnQkFBZ0I7QXpDdTVQcEI7O0F5QzMzUEU7RUFoQkEsYXJDWG1CO0FKMDVQckI7O0F5Qzc0UEU7RUFDRSxnQkFBZ0I7QXpDZzVQcEI7O0F5QzczUEU7RUFDRSxlQUFlO0F6Q2c0UG5COztBMEMvNVBFO0VBWEEsa0JBQWtCO0VBQ2xCLGN0Q1BpQjtFc0NRakIsZUFBZTtBMUM4NlBqQjs7QUFFQTtFWXp6UEksVUFBVTtBWjJ6UGQ7O0EwQ2g3UEU7RUFFRSxjdENWVztBSjQ3UGY7O0EwQzc2UEU7RUF2QkEsY3RDaVE4QztFc0NoUTlDLFd0Q2lRMkM7RXNDaFEzQyxnQnRDaVErQjtFc0NoUS9CLGN0Q2lRd0I7QUp1c1AxQjs7QTBDcDdQRTtFQXZCQSxXdENpUTREO0VzQ2hRNUQsV3RDaVEyRDtFc0NoUTNELGN0Q2lRNEM7RXNDaFE1QyxjdENpUXdCO0FKOHNQMUI7O0FvQ3RyUEU7RUFoVEEsVUFBVTtFQUNWLFNBQVM7RUFDVCxnQkFBZ0I7RUFDaEIsa0JBQWtCO0FwQzArUHBCOztBQUVBO0VZdDFQSSxVQUFVO0FadzFQZDs7QW9DbitQRTs7RUFFRSxjQUFjO0VBQ2QscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixjQUFjO0VBQ2Qsb0JoQ3lCNkI7QUo2OFBqQzs7QW9DbCtQRTs7OztFQUlFLGdCQUFnQjtBcENxK1BwQjs7QW9DbCtQRTtFQUNFLHFCQUFxQjtBcENxK1B6Qjs7QW9DcjRQTTtFQUNFLHFCQUFxQjtBcEN3NFA3Qjs7QW9DOTNQTTtFQUNFLGNBQWM7QXBDaTRQdEI7O0FvQzd0UEU7RUFwUUUsY0FBYztFQUNkLFdBQVc7QXBDcStQZjs7QW9DbitQSTtFQUNFLG1CQUFtQjtFQUNuQixzQkFBc0I7QXBDcytQNUI7O0FvQzEzUEU7RUFDRSxpQmhDZ09xQjtBSjZwUHpCOztBb0MxM1BFO0VBQ0UsVUFBVTtBcEM2M1BkOztBTXA3UE07RThCcUJBO0lBQ0UscUJBQXFCO0VwQ202UDNCO0VvQ3o1UEk7SUFDRSxjQUFjO0VwQzI1UHBCO0VvQ3Z2UEE7SUFwUUUsY0FBYztJQUNkLFdBQVc7RXBDOC9QYjtFb0M1L1BFO0lBQ0UsbUJBQW1CO0lBQ25CLHNCQUFzQjtFcEM4L1AxQjtFb0MvdlBBO0lBcFFFLGNBQWM7SUFDZCxXQUFXO0VwQ3NnUWI7RW9DcGdRRTtJQUNFLG1CQUFtQjtJQUNuQixzQkFBc0I7RXBDc2dRMUI7QUFDRjs7QU03OFBNO0U4QnFCQTtJQUNFLHFCQUFxQjtFcEM0N1AzQjtFb0NsN1BJO0lBQ0UsY0FBYztFcENvN1BwQjtFb0NoeFBBO0lBcFFFLGNBQWM7SUFDZCxXQUFXO0VwQ3VoUWI7RW9DcmhRRTtJQUNFLG1CQUFtQjtJQUNuQixzQkFBc0I7RXBDdWhRMUI7RW9DeHhQQTtJQXBRRSxjQUFjO0lBQ2QsV0FBVztFcEMraFFiO0VvQzdoUUU7SUFDRSxtQkFBbUI7SUFDbkIsc0JBQXNCO0VwQytoUTFCO0FBQ0Y7O0FNaitQTTtFOEJnQkE7SUFDRSxxQkFBcUI7RXBDcTlQM0I7RW9DMzhQSTtJQUNFLGNBQWM7RXBDNjhQcEI7RW9DenlQQTtJQXBRRSxjQUFjO0lBQ2QsV0FBVztFcENnalFiO0VvQzlpUUU7SUFDRSxtQkFBbUI7SUFDbkIsc0JBQXNCO0VwQ2dqUTFCO0VvQ2p6UEE7SUFwUUUsY0FBYztJQUNkLFdBQVc7RXBDd2pRYjtFb0N0alFFO0lBQ0UsbUJBQW1CO0lBQ25CLHNCQUFzQjtFcEN3alExQjtBQUNGOztBTTEvUE07RThCZ0JBO0lBQ0UscUJBQXFCO0VwQzgrUDNCO0VvQ3ArUEk7SUFDRSxjQUFjO0VwQ3MrUHBCO0VvQ2wwUEE7SUFwUUUsY0FBYztJQUNkLFdBQVc7RXBDeWtRYjtFb0N2a1FFO0lBQ0UsbUJBQW1CO0lBQ25CLHNCQUFzQjtFcEN5a1ExQjtFb0MxMFBBO0lBcFFFLGNBQWM7SUFDZCxXQUFXO0VwQ2lsUWI7RW9DL2tRRTtJQUNFLG1CQUFtQjtJQUNuQixzQkFBc0I7RXBDaWxRMUI7QUFDRjs7QW9DbjFQRTtFQTlIRSxlQUFpQztFQUNqQyxpQmhDckk0QjtBSjBsUWhDOztBb0N4OFBJOzs7RUFHRSxzQkFBc0I7QXBDMjhQNUI7O0FvQ3o4UE07OztFQUNFLHNCQUFzQjtBcEM4OFA5Qjs7QW9DaDhQTTs7O0VBR0UscUJoQzBLbUI7RWdDdktqQixxQkFBcUI7QXBDaThQL0I7O0FvQ3Q3UE07OztFQUdFLG9CaEN5Sm1CO0VnQ3RKakIscUJBQXFCO0FwQ3U3UC9COztBb0NqN1BJO0VBS0ksa0JBQWtCO0FwQ2c3UDFCOztBb0M3NlBNOzs7RUFJSSxjQUFjO0VBQ2Qsc0JoQ21JaUI7QUo0eVAzQjs7QW9DcDZQSTtFQUtJLGtCQUFrQjtBcENtNlAxQjs7QW9DaDZQTTs7O0VBSUksY0FBYztFQUNkLHNCQUF1QjtBcENrNlBqQzs7QW9DeDRQRTtFQUxBLG1CaEN2UnFDO0VnQ3dSckMsY2hDNVFhO0FKNnBRZjs7QW9DNzRQRTtFQUxBLG1CaEN2UnFDO0VnQ3dSckMsY2hDNVFhO0FKa3FRZjs7QW9DbDVQRTtFQW5QSSxnQnpCR3FEO0FYc29RM0Q7O0FvQ3Q1UEU7RUEzTkksaUJ6QnBCc0Q7QVh5b1E1RDs7QW9Dbm5RTTtFQUNFLGdCekJ4Qm1EO0FYOG9RM0Q7O0FvQ2xuUVE7RUFDRSxpQnpCNUJrRDtBWGlwUTVEOztBb0NsNlBFO0VBbElFLGtCaENoSTRCO0VnQ2lJNUIsY0FBZ0M7QXBDd2lRcEM7O0FvQ3Y2UEU7RUFsTUksa0JBQWtCO0FwQzZtUXhCOztBb0MzbVFNO0VBQ0UsZ0J6QmpEbUQ7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QkFBeUI7RUFDekIseURBQWlFO0FabzFSckU7O0E4Qy8wUkU7RWxDL0JBLGNBQWM7RUFDZCxRQUFRO0VBQ1IsU0FBUztFQUVULGlCUnNUMkI7RVFwVDNCLFdBQVc7RUFhVCxxQkFBcUI7RUFDckIsd0JBQXdCO0VBQ3hCLHlEUk1tQztBSjgxUnZDOztBOEM3clJFO0VBd0JNLGdCMUM4R2lCO0FKMmpSekI7O0E4Q2pzUkU7RUE2QkksV0FBVztBOUN3cVJqQjs7QThDcnNSRTtFQW1DSSxjQUFjO0E5Q3NxUnBCOztBK0NuNFJFOztFQW5CQSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULHlCaEMwRHVEO0VnQ3pEdkQsbUJDdUNzQjtFRHRDdEIsZ0JBQWdCO0EvQzI1UmxCOztBK0N6NVJFOzs7Ozs7OztFQUlFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBa0I7RUFDbEIsV0FBVztFQUNYLFlBQVk7QS9DZzZSaEI7O0ErQzM1UkU7O0VBUU0sc0JDZWdCO0FoRHk0UnhCOztBaUQ3NVJFO0VBWkEscUJBQXFCO0VBQ3JCLDBCN0MrWCtCO0U2QzdYL0Isc0I3Q3VEcUI7RTZDckRyQixpQjdDMFhzQjtFNkN6WHRCLGNBQWM7RUFDZCxtQkFBbUI7RUFDbkIsZUFBZTtFQU9iLG1CN0NtQm1DO0U2Q2xCbkMsYzdDOEJXO0FKdTRSZjs7QWlEejZSRTtFQVFNLG1CN0NjK0I7RTZDYi9CLGM3Q3lCTztBSjQ0UmY7O0FpRDk2UkU7RUFRTSxtQjdDY21EO0U2Q2JuRCxjN0N5Qk87QUppNVJmOztBaURuN1JFO0VBUU0sbUI3Q2NxRTtFNkNickUsYzdDcUJPO0FKMDVSZjs7QWlEeDdSRTtFQVFNLG1CN0NjdUY7RTZDYnZGLGM3Q3FCTztBSis1UmY7O0FpRDc3UkU7RUFRTSxtQjdDY3VHO0U2Q2J2RyxjN0N5Qk87QUpnNlJmOztBa0QzNlJFO0VBbkRBLGNBQXdDO0VBQ3hDLG1COUNvRWtCO0FKODVScEI7O0FrRGg3UkU7RUFJSSxlQUFlO0FsRGc3UnJCOztBTXoxUk07RTRDM0ZKO0lBakJBLFVBQVU7SUFDVixvQjlDbUNtQjtJOEM1QmpCLGNBQWM7RWxEbzhSaEI7RWtEajhSQTtJQUNFLFc5Q3dXa0M7RUoybFJwQztBQUNGOztBa0R6NlJFO0VBMURFLG1CQUFtQjtFQUNuQixtQkFBbUI7QWxEdStSdkI7O0FrRHArUkU7RUFDRSxtQjlDa0RpQjtBSnE3UnJCOztBa0RwK1JFO0VBQ0Usa0I5QzhDaUI7QUp5N1JyQjs7QWtEcCtSRTtFQUNFLGdCQUFnQjtBbER1K1JwQjs7QWtEMTdSRTtFQVVNLHNCQUFzQjtBbERvN1I5Qjs7QWtEOTdSRTtFQWNNLHNCQUFzQjtBbERvN1I5Qjs7QW1EcDlSRTtFQUNFLGdCQUFnQjtBbkR1OVJwQjs7QW1EbjlSRTtFQUNFLGtCQUFrQjtFQUNsQixNQUFNO0VBQ04sT0FBTztFQUNQLFcvQ21YeUI7RStDalh6QixXQUFXO0VBQ1gsWUFBWTtFQUVaLDJEL0NtWDhCO0UrQ25YOUIsbUQvQ21YOEI7RStDalg5QixxQy9DVFc7RStDV1gsVUFBVTtFQUNWLGtCQUFrQjtFQUVsQixnQkFBZ0I7QW5EaTlScEI7O0FtRGorUkU7RUFtQkksVUFBVTtFQUNWLG1CQUFtQjtBbkRrOVJ6Qjs7QW1EdCtSRTtFQXdCSSxlQUFlO0FuRGs5UnJCOztBbUQxK1JFO0VBNEJJLGtCQUFrQjtBbkRrOVJ4Qjs7QW1EOStSRTtFQWdDSSxlQUFlO0FuRGs5UnJCOztBbUQxc1JFO0VBalFBLGtCQUFrQjtFQUNsQixnQkFBZ0I7QW5EKzhSbEI7O0FtRDFzUkU7RUF6UEUsZUFBZTtFQU9qQixXL0M2VHdCO0UrQ3RUeEIsK0MvQzBUZ0M7RStDMVRoQyx1Qy9DMFRnQztFK0MxVGhDLCtCL0MwVGdDO0UrQzFUaEMsNEQvQzBUZ0M7RStDelRoQyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0VBRTNCLG1CL0M3RWtCO0FKdWdTcEI7O0FBRUE7RVl0NFJJLFVBQVU7QVp3NFJkOztBbURyOFJFO0VBQ0UsVy9DeVRzQjtBSitvUjFCOztBbUQvN1JFO0VBQ0Usa0JBQWtCO0FuRGs4UnRCOztBbUQ5N1JFO0VBQ0UsVy9DMlN5QjtBSnNwUjdCOztBbUQvN1JJO0VBQ0Usa0QvQ25GUztVK0NtRlQsMEMvQ25GUztBSnFoU2Y7O0FtRDc3UkU7RUFDRSxrQ0FBMEI7VUFBMUIsMEJBQTBCO0FuRGc4UjlCOztBbUQvdFJFO0VBalFFLGtCQUFrQjtFQUlwQixXL0M2VHdCO0UrQ3RUeEIsK0MvQzBUZ0M7RStDMVRoQyx1Qy9DMFRnQztFK0MxVGhDLCtCL0MwVGdDO0UrQzFUaEMsNEQvQzBUZ0M7RStDelRoQyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0VBRTNCLG1CL0M3RWtCO0FKdWlTcEI7O0FBRUE7RVl0NlJJLFVBQVU7QVp3NlJkOztBbURyK1JFO0VBQ0UsVy9DeVRzQjtBSitxUjFCOztBbUQvOVJFO0VBQ0Usa0JBQWtCO0FuRGsrUnRCOztBbUQ5OVJFO0VBQ0UsVy9DMlN5QjtBSnNyUjdCOztBbUQvOVJJO0VBQ0Usa0QvQ25GUztVK0NtRlQsMEMvQ25GUztBSnFqU2Y7O0FtRDc5UkU7RUFDRSxrQ0FBMEI7VUFBMUIsMEJBQTBCO0FuRGcrUjlCOztBbUQxdlJFO0VBM05FLE1BQU07RUFDTixPQUFPO0VBQ1AsWS9DNlFrQjtFK0M1UWxCLFlBQVk7RUFFWixxQ0FBNkI7VUFBN0IsNkJBQTZCO0VBQzdCLGdCQUFnQjtBbkR3OVJwQjs7QW1EcjlSWTtFQUNOLHFDQUE2QjtVQUE3Qiw2QkFBNkI7QW5EdzlSbkM7O0FtRHo5Ulk7RUFHSixrQ0FBMEI7VUFBMUIsMEJBQTBCO0FuRDA5UmxDOztBbURyOVJZO0VBRUosb0NBQTRCO1VBQTVCLDRCQUE0QjtBbkR1OVJwQzs7QW1EcjRSSTtFdkM3UEEsbUVSb0RXO1VRcERYLDJEUm9EVztBSmtsU2Y7O0FtRGx4UkU7RUFwTUUsTUFBTTtFQUNOLFFBQVE7RUFDUixZL0NxUGtCO0UrQ3BQbEIsWUFBWTtFQUVaLG9DQUE0QjtVQUE1Qiw0QkFBNEI7RUFDNUIsZ0JBQWdCO0FuRHk5UnBCOztBbUR0OVJZO0VBQ04sb0NBQTRCO1VBQTVCLDRCQUE0QjtBbkR5OVJsQzs7QW1EMTlSWTtFQUdKLGtDQUEwQjtVQUExQiwwQkFBMEI7QW5EMjlSbEM7O0FtRHQ5Ulk7RUFFSixxQ0FBNkI7VUFBN0IsNkJBQTZCO0FuRHc5UnJDOztBbUQ5NVJJO0V2Q2hRQSxrRVJ1RFc7VVF2RFgsMERSdURXO0FKMm1TZjs7QW1EMXlSRTtFQTdLRSxNQUFNO0VBQ04sT0FBTztFQUVQLFdBQVc7RUFDWCxhL0M0TjJCO0UrQzFOM0IscUNBQTZCO1VBQTdCLDZCQUE2QjtFQUM3QixnQkFBZ0I7QW5EeTlScEI7O0FtRHQ5Ulk7RUFDTixxQ0FBNkI7VUFBN0IsNkJBQTZCO0FuRHk5Um5DOztBbUQxOVJZO0VBR0osa0NBQTBCO1VBQTFCLDBCQUEwQjtBbkQyOVJsQzs7QW1EdDlSWTtFQUVKLG9DQUE0QjtVQUE1Qiw0QkFBNEI7QW5EdzlScEM7O0FtRHY3Ukk7RXZDMVBBLG1FUmlEVztVUWpEWCwyRFJpRFc7QUpvb1NmOztBbURsMFJFO0VBckpFLFNBQVM7RUFDVCxPQUFPO0VBRVAsV0FBVztFQUNYLGEvQ21NMkI7RStDak0zQixvQ0FBNEI7VUFBNUIsNEJBQTRCO0VBQzVCLGdCQUFnQjtBbkR5OVJwQjs7QW1EdDlSWTtFQUNOLG9DQUE0QjtVQUE1Qiw0QkFBNEI7QW5EeTlSbEM7O0FtRDE5Ulk7RUFHSixrQ0FBMEI7VUFBMUIsMEJBQTBCO0FuRDI5UmxDOztBbUR0OVJZO0VBRUoscUNBQTZCO1VBQTdCLDZCQUE2QjtBbkR3OVJyQzs7QW1EaDlSSTtFdkNuUUEsa0VSMERXO1VRMURYLDBEUjBEVztBSjZwU2Y7O0FtRHoxUkU7RUF2R0EsdUJBQWU7VUFBZixlQUFlO0VBQ2YsK0MvQ2dLZ0M7RStDaEtoQyx1Qy9DZ0tnQztFK0NoS2hDLCtCL0NnS2dDO0UrQ2hLaEMsNEQvQ2dLZ0M7RStDL0poQyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0FuRG84UjdCOztBbURqOFJFO0VBQ0Usa0NBQTBCO1VBQTFCLDBCQUEwQjtBbkRvOFI5Qjs7QW1EaDhSRTtFQUNFLGtDQUEwQjtVQUExQiwwQkFBMEI7QW5EbThSOUI7O0FNNWxTTTtFNkM2UEU7SUExRk4sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRDg3Um5CO0VtRHg3UkE7SUFDRSxhQUFhO0VuRDA3UmY7RW1EdDdSQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkR3N1JqQjtFbURyN1JRO0lBQ04sa0IvQzhHa0I7RUp5MFJwQjtFbURuN1JBO0lBQ0Usa0IvQ3lHa0I7RUo0MFJwQjtFbUQvMlJNO0lBOUZOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkRnOVJuQjtFbUQxOFJBO0lBQ0UsYUFBYTtFbkQ0OFJmO0VtRHg4UkE7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5EMDhSakI7RW1EdjhSUTtJQUNOLG1CL0M4R2tCO0VKMjFScEI7RW1EcjhSQTtJQUNFLG1CL0N5R2tCO0VKODFScEI7RW1ENzNSTTtJQWxHTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5EaytSbkI7RW1ENTlSQTtJQUNFLGFBQWE7RW5EODlSZjtFbUQxOVJBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRDQ5UmpCO0VtRHo5UlE7SUFDTixpQi9DOEdrQjtFSjYyUnBCO0VtRHY5UkE7SUFDRSxpQi9DeUdrQjtFSmczUnBCO0VtRDM0Uk07SUF0R04sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRG8vUm5CO0VtRDkrUkE7SUFDRSxhQUFhO0VuRGcvUmY7RW1ENStSQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkQ4K1JqQjtFbUQzK1JRO0lBQ04sb0IvQzhHa0I7RUorM1JwQjtFbUR6K1JBO0lBQ0Usb0IvQ3lHa0I7RUprNFJwQjtBQUNGOztBTXZxU007RTZDNlBFO0lBMUZOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkR5Z1NuQjtFbURuZ1NBO0lBQ0UsYUFBYTtFbkRxZ1NmO0VtRGpnU0E7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5EbWdTakI7RW1EaGdTUTtJQUNOLGtCL0M4R2tCO0VKbzVScEI7RW1EOS9SQTtJQUNFLGtCL0N5R2tCO0VKdTVScEI7RW1EMTdSTTtJQTlGTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5EMmhTbkI7RW1EcmhTQTtJQUNFLGFBQWE7RW5EdWhTZjtFbURuaFNBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRHFoU2pCO0VtRGxoU1E7SUFDTixtQi9DOEdrQjtFSnM2UnBCO0VtRGhoU0E7SUFDRSxtQi9DeUdrQjtFSnk2UnBCO0VtRHg4Uk07SUFsR04sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRDZpU25CO0VtRHZpU0E7SUFDRSxhQUFhO0VuRHlpU2Y7RW1EcmlTQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkR1aVNqQjtFbURwaVNRO0lBQ04saUIvQzhHa0I7RUp3N1JwQjtFbURsaVNBO0lBQ0UsaUIvQ3lHa0I7RUoyN1JwQjtFbUR0OVJNO0lBdEdOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkQralNuQjtFbUR6alNBO0lBQ0UsYUFBYTtFbkQyalNmO0VtRHZqU0E7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5EeWpTakI7RW1EdGpTUTtJQUNOLG9CL0M4R2tCO0VKMDhScEI7RW1EcGpTQTtJQUNFLG9CL0N5R2tCO0VKNjhScEI7QUFDRjs7QU03dVNNO0U2Q3dQRTtJQTFGTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5Eb2xTbkI7RW1EOWtTQTtJQUNFLGFBQWE7RW5EZ2xTZjtFbUQ1a1NBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRDhrU2pCO0VtRDNrU1E7SUFDTixrQi9DOEdrQjtFSis5UnBCO0VtRHprU0E7SUFDRSxrQi9DeUdrQjtFSmsrUnBCO0VtRHJnU007SUE5Rk4sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRHNtU25CO0VtRGhtU0E7SUFDRSxhQUFhO0VuRGttU2Y7RW1EOWxTQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkRnbVNqQjtFbUQ3bFNRO0lBQ04sbUIvQzhHa0I7RUppL1JwQjtFbUQzbFNBO0lBQ0UsbUIvQ3lHa0I7RUpvL1JwQjtFbURuaFNNO0lBbEdOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkR3blNuQjtFbURsblNBO0lBQ0UsYUFBYTtFbkRvblNmO0VtRGhuU0E7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5Ea25TakI7RW1EL21TUTtJQUNOLGlCL0M4R2tCO0VKbWdTcEI7RW1EN21TQTtJQUNFLGlCL0N5R2tCO0VKc2dTcEI7RW1EamlTTTtJQXRHTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5EMG9TbkI7RW1EcG9TQTtJQUNFLGFBQWE7RW5Ec29TZjtFbURsb1NBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRG9vU2pCO0VtRGpvU1E7SUFDTixvQi9DOEdrQjtFSnFoU3BCO0VtRC9uU0E7SUFDRSxvQi9DeUdrQjtFSndoU3BCO0FBQ0Y7O0FNeHpTTTtFNkN3UEU7SUExRk4sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRCtwU25CO0VtRHpwU0E7SUFDRSxhQUFhO0VuRDJwU2Y7RW1EdnBTQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkR5cFNqQjtFbUR0cFNRO0lBQ04sa0IvQzhHa0I7RUowaVNwQjtFbURwcFNBO0lBQ0Usa0IvQ3lHa0I7RUo2aVNwQjtFbURobFNNO0lBOUZOLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFcvQ3lJMEI7SStDeEkxQix3QkFBZ0I7SUFBaEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtFbkRpclNuQjtFbUQzcVNBO0lBQ0UsYUFBYTtFbkQ2cVNmO0VtRHpxU0E7SUFDRSx1QkFBZTtZQUFmLGVBQWU7RW5EMnFTakI7RW1EeHFTUTtJQUNOLG1CL0M4R2tCO0VKNGpTcEI7RW1EdHFTQTtJQUNFLG1CL0N5R2tCO0VKK2pTcEI7RW1EOWxTTTtJQWxHTix1QkFBZTtZQUFmLGVBQWU7SUFDZixXL0N5STBCO0krQ3hJMUIsd0JBQWdCO0lBQWhCLGdCQUFnQjtJQUNoQixtQkFBbUI7RW5EbXNTbkI7RW1EN3JTQTtJQUNFLGFBQWE7RW5EK3JTZjtFbUQzclNBO0lBQ0UsdUJBQWU7WUFBZixlQUFlO0VuRDZyU2pCO0VtRDFyU1E7SUFDTixpQi9DOEdrQjtFSjhrU3BCO0VtRHhyU0E7SUFDRSxpQi9DeUdrQjtFSmlsU3BCO0VtRDVtU007SUF0R04sdUJBQWU7WUFBZixlQUFlO0lBQ2YsVy9DeUkwQjtJK0N4STFCLHdCQUFnQjtJQUFoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0VuRHF0U25CO0VtRC9zU0E7SUFDRSxhQUFhO0VuRGl0U2Y7RW1EN3NTQTtJQUNFLHVCQUFlO1lBQWYsZUFBZTtFbkQrc1NqQjtFbUQ1c1NRO0lBQ04sb0IvQzhHa0I7RUpnbVNwQjtFbUQxc1NBO0lBQ0Usb0IvQ3lHa0I7RUptbVNwQjtBQUNGOztBTXg0U007RTZDb1JFO0lBbkZOLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLDJCQUFtQjtJQUFuQixtQkFBbUI7RW5ENHNTbkI7RW1EenNTQTtJQUlFLHdCQUFnQjtZQUFoQixnQkFBZ0I7SUFDaEIsdUJBQWU7WUFBZixlQUFlO0VuRHdzU2pCO0VtRHJzU0E7SUFDRSxhQUFhO0VuRHVzU2Y7QUFDRjs7QU0zNVNNO0U2Q29SRTtJQW5GTixtQkFBbUI7SUFDbkIsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsY0FBYztJQUNkLGlCQUFpQjtJQUNqQiwyQkFBbUI7SUFBbkIsbUJBQW1CO0VuRCt0U25CO0VtRDV0U0E7SUFJRSx3QkFBZ0I7WUFBaEIsZ0JBQWdCO0lBQ2hCLHVCQUFlO1lBQWYsZUFBZTtFbkQydFNqQjtFbUR4dFNBO0lBQ0UsYUFBYTtFbkQwdFNmO0FBQ0Y7O0FNejZTTTtFNkMrUUU7SUFuRk4sbUJBQW1CO0lBQ25CLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLGNBQWM7SUFDZCxpQkFBaUI7SUFDakIsMkJBQW1CO0lBQW5CLG1CQUFtQjtFbkRrdlNuQjtFbUQvdVNBO0lBSUUsd0JBQWdCO1lBQWhCLGdCQUFnQjtJQUNoQix1QkFBZTtZQUFmLGVBQWU7RW5EOHVTakI7RW1EM3VTQTtJQUNFLGFBQWE7RW5ENnVTZjtBQUNGOztBTTU3U007RTZDK1FFO0lBbkZOLG1CQUFtQjtJQUNuQixZQUFZO0lBQ1osZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixjQUFjO0lBQ2QsaUJBQWlCO0lBQ2pCLDJCQUFtQjtJQUFuQixtQkFBbUI7RW5EcXdTbkI7RW1EbHdTQTtJQUlFLHdCQUFnQjtZQUFoQixnQkFBZ0I7SUFDaEIsdUJBQWU7WUFBZixlQUFlO0VuRGl3U2pCO0VtRDl2U0E7SUFDRSxhQUFhO0VuRGd3U2Y7QUFDRjs7QW9EejlTRTtFQXBHQSxrQkFBa0I7QXBEaWtUcEI7O0FvRHo5U0U7RUFuR0Esa0JBQWtCO0VBQ2xCLFNBQVM7RUFDVCxTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBcERna1RsQjs7QW9ENzlTRTtFQTlGQSxXQUFXO0FwRCtqVGI7O0FvRDVqVEk7RUFDRSxNQUFNO0VBQ04sT0FBTztBcEQralRiOztBb0RsK1NFO0VBdkZBLFNBQVM7QXBENmpUWDs7QW9EbCtTRTtFQXRGQSxXQUFXO0VBQ1gsZUFBZTtFQUNmLFNBQVM7QXBENGpUWDs7QW9EcCtTRTtFQW5GQSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIsYWhENFgwQjtFZ0QxWDFCLHVDaERqQmE7RWdEa0JiLGNoRGRhO0FKd2tUZjs7QW9EMStTRTtFeEM0REEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixtQ0FBMkI7VUFBM0IsMkJBQTJCO0V3Q3ZJM0IsV2hEcVh1QjtFZ0RwWHZCLGFoRG1YMEI7RWdEbFgxQixjaER2QmE7QUppbFRmOztBQUVBO0VZMTlTSSxVQUFVO0FaNDlTZDs7QW9ENWpURTtFQUdFLHVDaERoQ1c7QUo2bFRmOztBb0R2L1NFO0VBaEVBLE9BQWtCO0FwRDJqVHBCOztBb0R0L1NFO0VBaEVBLFVBQXFCO0VBQ3JCLFFBQW1CO0FwRDBqVHJCOztBb0R0L1NFO0VBOURBLGtCQUFrQjtFQUNsQixrQmhEcVY4QjtFZ0RwVjlCLHFCaERxVmlDO0VnRHBWakMsa0JBQWtCO0FwRHdqVHBCOztBQUVBO0VZbC9TSSxVQUFVO0Faby9TZDs7QW9EMWpURTtFQUNFLGFoRDhVMEI7RWdEN1UxQixjaEQ2VTBCO0VnRDVVMUIsY2hENlV3QjtFZ0QzVXhCLGtCQUFrQjtFQUNsQix5QmhEakVpQjtBSjZuVHJCOztBb0QxalRJO0VBQ0UseUJoRGxFYTtBSituVG5COztBb0QxalRJO0VBQ0UseUJoRHRFYTtBSm1vVG5COztBcURoalRFO0VBbkZBLGNBQWdDO0VBQ2hDLG1CakRZa0I7QUoyblRwQjs7QVkxaVRFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVo0aVRoQjs7QVlwaVRFO0VBQ0UsV0FBVztBWnVpVGY7O0FxRDdvVEU7RUFDRSx3QnRDS3FEO0VzQ0pyRCxzQmpEWW1CO0VpRFhuQixldENHcUQ7RXNDR25ELGFBQWE7QXJEMm9UbkI7O0FxRHpvVE07RUFFRSxxQkFBcUI7QXJEMm9UN0I7O0FNM2tUTTtFK0M3RUo7SUF1Qk0scUJBQXFCO0VyRHNvVDNCO0FBQ0Y7O0FxRGpvVEU7O0VBRUUsY0FBYztFQUNkLDhCdEMxQnFEO0VzQzJCckQsc0JqRG5CbUI7RWlEb0JuQixjakRwQ1c7QUp3cVRmOztBcURsb1RJOztFQUNFLG1CakQ3Q2M7QUptclRwQjs7QXFENWxURTtFQS9CQSw4QnRDMUN1RDtFc0MyQ3ZELG1CakQzRHFDO0VpRDREckMsY2pEaERhO0VpRGlEYixlQUFlO0FyRCtuVGpCOztBcURubVRFO0VBcEJBLDhCdENyRHVEO0VzQ3NEdkQsY2pEbEVtQjtFaURtRW5CLG1CQUFtQjtBckQyblRyQjs7QXFEem5URTtFQUNFLHVCQUF1QjtBckQ0blQzQjs7QXFEN21URTtFQU5BLDhCdENuRXVEO0VzQ29FdkQsZ0JBQWdCO0VBQ2hCLGNqRDdFYTtBSm9zVGY7O0FxRGxtVEk7O0VBRUUscUJBQXFCO0VBQ3JCLG9CQUFzQztFQUN0QyxnQkFBZ0I7QXJEcW1UdEI7O0FxRGxtVEk7O0VBRUUscUJBQXFCO0VBQ3JCLG1CQUFxQztFQUNyQyxnQkFBZ0I7QXJEcW1UdEI7O0FzRHh2VEU7RUFwQ0EsWWxEMmVvQjtFa0QxZXBCLG1CbERvRmtCO0VrRG5GbEIsc0JsRHdGcUI7RWtEdkZyQix5QmxEbUVtQjtBSjZ0VHJCOztBc0QvdlRFO0VBTVEseUJsRHdCNkI7QUpxdVR2Qzs7QXNEbndURTtFQU1RLHlCbER3QmlEO0FKeXVUM0Q7O0FzRHZ3VEU7RUFNUSx5QmxEd0JtRTtBSjZ1VDdFOztBc0Qzd1RFO0VBTVEseUJsRHdCcUY7QUppdlQvRjs7QXNEL3dURTtFQU1RLHlCbER3QnFHO0FKcXZUL0c7O0FzRHR3VEU7RUF6Q0Esa0JBQWtCO0VBQ2xCLGNBQWM7RUFDZCxTQUFTO0VBQ1QsWUFBWTtFQUNaLHlCbERzRHFDO0VrRG5EbkMsc0JsRDJFbUI7QUpzdVR2Qjs7QXNEMXdURTtFMUNrTUEsa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1Qsd0NBQWdDO1VBQWhDLGdDQUFnQztFMENyT2hDLGtCQUFrQjtFQUNs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RFc7QUorZ1VmOztBMER2OVRFOztFQUlJLHVCQUF1QjtBMUR3OVQ3Qjs7QTBENTlURTs7OztFQVVJLHlDM0MxRG1EO0UyQzJEbkQsaUJ0RHBEbUI7RXNEcURuQixnQkFBWTtBMUR5OVRsQjs7QTBEcDlURTs7RUFHSSx5QzNDcEVtRDtBZjBoVXpEOztBMEQ1Z1VFO0VBQ0UsZ0JBQWdCO0VBQ2hCLGdDQ1Y2QztFRFc3Qyx5QnREckJXO0FKb2lVZjs7QTBEbGlVTTtFQUNFLGdCQUFnQjtFQUNoQix5QkNNeUM7QTNEK2hVakQ7O0FNejlUTTtFb0R1SEY7SUFDRSxhQUFhO0UxRHMyVGpCO0UwRGwyVEE7SUFDRSxhQUFhO0UxRG8yVGY7RTBEajJUQTs7O0lBR0UsY0FBYztFMURtMlRoQjtFMERoMlRBO0lBQ0UsYUFBYTtFMURrMlRmO0FBQ0Y7O0EwRHAxVEU7RUF2R0EsY0FBYztFQUNkLFdBQVc7RUFDWCxnQkFBZ0I7QTFEKzdUbEI7O0EwRHg3VEk7RUFDRSx5QnRENlptRTtBSjhoVHpFOztBMERyN1RJO0VBQ0UseUJ0RHdabUU7QUpnaVR6RTs7QTBEbDdUSTtFQUNFLHlCdER5WXlEO0FKNGlUL0Q7O0EwRDk1VE07RUFDRSx5QnREa1htRjtBSitpVDNGOztBMERsMlRFO0VBQ0UsZ0JBQWdCO0ExRHEyVHBCOztBMER0MlRFO0VBSUksV0FBVztBMURzMlRqQjs7QTREMWhVRTtFQWhGQSxTeERpa0JZO0V3RGhrQloseUJ4RFNtQjtFd0RSbkIsbUJ4RGdCYTtFd0RmYixxQkFBcUI7QTVEOG1VdkI7O0FZdmdVRTtFQUVFLGNBQWM7RUFDZCxZQUFZO0FaeWdVaEI7O0FZamdVRTtFQUNFLFdBQVc7QVpvZ1VmOztBNERsblVFO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxXQUFXO0E1RHFuVWY7O0E0RHRpVUU7RUFFSSxVQUFVO0E1RHdpVWhCOztBNEQxaVVFO0VBS00sdUJBQXVCO0E1RHlpVS9COztBNERuaVVFO0VBQ0UsbUJ4RGhHbUM7QUpzb1V2Qzs7QTREdmlVRTtFQUlJLGN4RHZGUztBSjhuVWY7O0E0RDNpVUU7RUFRTSxtQkRqRnlDO0EzRHduVWpEOztBNERsaVVFO0VBMUZBLFdBQU87QTVEZ29VVDs7QTREOW5VRTtFQUNFLGNBQWM7RUFDZCx1QnhENGlCNkI7RXdEM2lCN0IscUI3Q1BxRDtFNkNRckQsY0FBYztFQUNkLGN4RHpCbUM7QUowcFV2Qzs7QTREL25VSTtFQUNFLG1CeERoQlM7RXdEaUJULGNBQTRDO0E1RGtvVWxEOztBNEQvblVJO0VBRUUsbUJ4RGhDYztFd0RpQ2QsY3hEbkNpQztBSm9xVXZDOztBNERwalVFO0VBbEVBLHlCeEQxQ21CO0V3RDJDbkIsYUFBYTtFQUNiLG1CeERwQ2E7RXdEcUNiLGN4RHpDYTtFd0QwQ2IsaUNBQXlCO0VBQXpCLHlCQUF5QjtBNUQwblUzQjs7QTREeGpVRTtFQTNEQSx5QnhEckRtQjtFd0RzRG5CLGNBQWdDO0E1RHVuVWxDOztBNER6alVFO0VBdkRBLGFBQWE7RUFDYixheERxZ0J3QjtBSittVDFCOztBNERsblVFO0VBQ0UsY0FBYztBNURxblVsQjs7QTZEdnNVRTtFQXpCQSxxQkFBcUI7RUFDckIsZUFBZTtFQUNmLG1CekR1RGtCO0V5RHJEbEIseUJ6RDhDYTtFeUQ3Q2Isc0J6RHlEcUI7RXlEeERyQixtRHpEd0NhO1V5RHhDYiwyQ3pEd0NhO0V5RHRDYixjQUFjO0E3RGt1VWhCOztBNkQ3c1VFO0VBakJBLHFEekR3bUI4QztFeUR4bUI5Qyw2Q3pEd21COEM7RXlEeG1COUMscUN6RHdtQjhDO0V5RHhtQjlDLHdFekR3bUI4QztBSjBuVGhEOztBNkRodVVFO0VBRUUsc0R6RHNCbUM7VXlEdEJuQyw4Q3pEc0JtQztBSjRzVXZDOztBNkQvdFVFO0VBQ0Usd0JBQWdCO1VBQWhCLGdCQUFnQjtBN0RrdVVwQjs7QThEbnZVRTtFQUNFLGUxRHNuQnFCO0UwRHJuQnJCLG1CMUR5Q1c7RTBEeENYLGMxRDRDVztBSjBzVWY7O0FZbG5VRTtFQUVFLGNBQWM7RUFDZCxZQUFZO0Fab25VaEI7O0FZNW1VRTtFQUNFLFdBQVc7QVorbVVmOztBOERsd1VFO0VBZUksb0IxRDRtQnlCO0Uw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a0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLGdDQUZ5QjtVQUV6Qix3QkFGeUI7RUN2QnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUd6QyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0F2RW92Vi9COztBbUVsdlZJO0VHb0JBLG1DQUZ5QjtVQUV6QiwyQkFGeUI7QXRFb3VWN0I7O0FtRWx3Vkk7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLGdDQUZ5QjtVQUV6Qix3QkFGeUI7RUN2QnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUd6QyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0F2RWd3Vi9COztBbUU5dlZJO0VHb0JBLG9DQUZ5QjtVQUV6Qiw0QkFGeUI7QXRFZ3ZWN0I7O0FtRTl3Vkk7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLGdDQUZ5QjtVQUV6Qix3QkFGeUI7RUN2QnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUd6QyxtQ0FBMkI7VUFBM0IsMkJBQTJCO0F2RTR3Vi9COztBbUUxd1ZJO0VHb0JBLG9DQUZ5QjtVQUV6Qiw0QkFGeUI7QXRFNHZWN0I7O0FtRTF4Vkk7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLFVGaENrQztFSUFsQyxvQ0FBNEI7RUFBNUIsNEJBQTRCO0F4RWl5VmhDOztBbUVyeFZJO0VHb0JBLFVGaENxQztBcEVxeVZ6Qzs7QW1FcnlWSTtFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIsVUYvQmtDO0VJRGxDLG9DQUE0QjtFQUE1Qiw0QkFBNEI7QXhFNHlWaEM7O0FtRWh5Vkk7RUdvQkEsVUYvQnFDO0FwRSt5VnpDOztBbUVoelZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixzREdyQ21DO1VIcUNuQyw4Q0dyQ21DO0VIcUNuQyw2QkY1Qm1EO1VFNEJuRCxxQkY1Qm1EO0VNR2pELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUVpelZqQzs7QW1FN3lWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRTR5VmpDOztBbUU5elZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixzREdwQ3FDO1VIb0NyQyw4Q0dwQ3FDO0VIb0NyQywrQkYzQnFEO1VFMkJyRCx1QkYzQnFEO0VNRW5ELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUUrelZqQzs7QW1FM3pWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRTB6VmpDOztBbUU1MFZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixxREduQ2lDO1VIbUNqQyw2Q0duQ2lDO0VIbUNqQyxnQ0YxQnNEO1VFMEJ0RCx3QkYxQnNEO0VNQ3BELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUU2MFZqQzs7QW1FejBWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRXcwVmpDOztBbUUxMVZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixxREdsQytCO1VIa0MvQiw2Q0dsQytCO0VIa0MvQiw4QkZ6Qm9EO1VFeUJwRCxzQkZ6Qm9EO0VNQWxELHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUUyMVZqQzs7QW1FdjFWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRXMxVmpDOztBbUV4MlZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixzREdyQ21DO1VIcUNuQyw4Q0dyQ21DO0VIcUNuQyxnQ0dDZTtVSERmLHdCR0NlO0VDMUJiLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUV5MlZqQzs7QW1FcjJWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRW8yVmpDOztBbUV0M1ZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixzREdwQ3FDO1VIb0NyQyw4Q0dwQ3FDO0VIb0NyQyxnQ0dDZTtVSERmLHdCR0NlO0VDMUJiLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBMUV1M1ZqQzs7QW1FbjNWSTtFR29CQSxtREdWNEM7VUhVNUMsMkNHVjRDO0VDSjFDLFVBQTJCO0ExRWszVmpDOztBbUVwNFZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLDZCRnRCbUQ7VUVzQm5ELHFCRnRCbUQ7RU1IakQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRXE0VnBDOztBbUVqNFZJO0VHb0JBLHNER3JDbUM7VUhxQ25DLDhDR3JDbUM7RUN1QmpDLFVBQThCO0ExRWc0VnBDOztBbUVsNVZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLCtCRnJCcUQ7VUVxQnJELHVCRnJCcUQ7RU1KbkQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRW01VnBDOztBbUUvNFZJO0VHb0JBLHNER3BDcUM7VUhvQ3JDLDhDR3BDcUM7RUNzQm5DLFVBQThCO0ExRTg0VnBDOztBbUVoNlZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLGdDRnBCc0Q7VUVvQnRELHdCRnBCc0Q7RU1McEQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRWk2VnBDOztBbUU3NVZJO0VHb0JBLHFER25DaUM7VUhtQ2pDLDZDR25DaUM7RUNxQi9CLFVBQThCO0ExRTQ1VnBDOztBbUU5NlZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLDhCRm5Cb0Q7VUVtQnBELHNCRm5Cb0Q7RU1ObEQsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRSs2VnBDOztBbUUzNlZJO0VHb0JBLHFER2xDK0I7VUhrQy9CLDZDR2xDK0I7RUNvQjdCLFVBQThCO0ExRTA2VnBDOztBbUU1N1ZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLGdDR0NlO1VIRGYsd0JHQ2U7RUMxQmIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRTY3VnBDOztBbUV6N1ZJO0VHb0JBLHNER3JDbUM7VUhxQ25DLDhDR3JDbUM7RUN1QmpDLFVBQThCO0ExRXc3VnBDOztBbUUxOFZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtREdSOEM7VUhROUMsMkNHUjhDO0VIUTlDLGdDR0NlO1VIRGYsd0JHQ2U7RUMxQmIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0ExRTI4VnBDOztBbUV2OFZJO0VHb0JBLHNER3BDcUM7VUhvQ3JDLDhDR3BDcUM7RUNzQm5DLFVBQThCO0ExRXM4VnBDOztBbUV4OVZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYiw2QkFGeUI7VUFFekIscUJBRnlCO0VLM0J2Qix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkI7QTNFNDlWakM7O0FtRXA5Vkk7RUdvQkEsMkJBRnlCO1VBRXpCLG1CQUZ5QjtFS2hCdkIsVUFBMkI7QTNFdTlWakM7O0FtRXIrVkk7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLDZCQUZ5QjtVQUV6QixxQkFGeUI7RUszQnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBM0V5K1ZqQzs7QW1FaitWSTtFR29CQSwyQkFGeUI7VUFFekIsbUJBRnlCO0VLaEJ2QixVQUEyQjtBM0VvK1ZqQzs7QW1FbC9WSTtFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIsMkJBRnlCO1VBRXpCLG1CQUZ5QjtFSzNCdkIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0EzRXMvVnBDOztBbUU5K1ZJO0VHb0JBLDZCQUZ5QjtVQUV6QixxQkFGeUI7RUtoQnZCLFVBQThCO0EzRWkvVnBDOztBbUUvL1ZJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYiwyQkFGeUI7VUFFekIsbUJBRnlCO0VLM0J2Qix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBOEI7QTNFbWdXcEM7O0FtRTMvVkk7RUdvQkEsNkJBRnlCO1VBRXpCLHFCQUZ5QjtFS2hCdkIsVUFBOEI7QTNFOC9WcEM7O0FtRTVnV0k7RUNsQkYsa0NDa0JjO1VEbEJkLDBCQ2tCYztFRGpCZCwwQ0NpQ2U7VURqQ2Ysa0NDaUNlO0VDZ0JiLG9DQUZ5QjtVQUV6Qiw0QkFGeUI7RU0zQnZCLHVEQUF1QztFQUF2QywrQ0FBdUM7RUFBdkMsdUNBQXVDO0VBQXZDLDBEQUF1QztFQUN2QyxVQUEyQjtBNUVnaFdqQzs7QW1FeGdXSTtFR29CQSw0QkFGeUI7VUFFekIsb0JBRnlCO0VNaEJ2QixVQUEyQjtBNUUyZ1dqQzs7QW1FemhXSTtFQ2xCRixrQ0NrQmM7VURsQmQsMEJDa0JjO0VEakJkLDBDQ2lDZTtVRGpDZixrQ0NpQ2U7RUNnQmIsNEJBRnlCO1VBRXpCLG9CQUZ5QjtFTTNCdkIsdURBQXVDO0VBQXZDLCtDQUF1QztFQUF2Qyx1Q0FBdUM7RUFBdkMsMERBQXVDO0VBQ3ZDLFVBQThCO0E1RTZoV3BDOztBbUVyaFdJO0VHb0JBLG1DQUZ5QjtVQUV6QiwyQkFGeUI7RU1oQnZCLFVBQThCO0E1RXdoV3BDOztBbUV0aVdJO0VDbEJGLGtDQ2tCYztVRGxCZCwwQkNrQmM7RURqQmQsMENDaUNlO1VEakNmLGtDQ2lDZTtFQ2dCYixtQ0FGeUI7VUFFekIsMkJBRnlCO0VNM0J2Qix1REFBdUM7RUFBdkMsK0NBQXVDO0VBQXZDLHVDQUF1QztFQUF2QywwREFBdUM7RUFDdkMsVUFBMkI7QTVFMGlXakM7O0FtRWxpV0k7RUdvQkEsNEJBRnlCO1VBRXpCLG9CQUZ5QjtFTWhCdkIsVUFB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Rzs7QStFN3dXQTtFRGdCQyxZQUFZO0VBQ1osWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixzR0FBc0c7QTlFaXdXdkc7O0ErRXB4V0E7RURnQkMsWUFBWTtFQUNaLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsc0dBQXNHO0E5RXd3V3ZHOztBK0VueFdBO0VEY0MsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsc0dBQXNHO0E5RXl3V3ZHOztBK0V0eFdBO0VEZ0JDLFlBQVk7RUFDWixZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHNHQUFzRztBOUUwd1d2Rzs7QStFenhXQTtFRGtCQyxXQUFXO0VBQ1gsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQix1R0FBdUc7QTlFMndXeEc7O0ErRTV4V0E7RURvQkMsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsdUdBQXVHO0E5RTR3V3hHOztBK0UveFdBO0VEc0JDLFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHVHQUF1RztBOUU2d1d4Rzs7QStFbHlXQTtFRHdCQyxZQUFZO0VBQ1osWUFBWTtFQUNaLHFCQUFxQjtFQUNyQix1R0FBdUc7QTlFOHdXeEc7O0ErRXJ5V0E7RUQwQkMsWUFBWTtFQUNaLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsdUdBQXVHO0E5RSt3V3hHOztBK0V4eVdBO0VENEJDLFdBQVc7RUFDWCxZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHVHQUF1RztBOUVneFd4Rzs7QStFM3lXQTtFRDhCQyxXQUFXO0VBQ1gsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQix1R0FBdUc7QTlFaXhXeEc7O0ErRTl5V0E7RURnQ0MsV0FBVztFQUNYLFlBQVk7RUFDWixxQkFBcUI7RUFDckIsdUdBQXVHO0E5RWt4V3hHOztBK0VqeldBO0VEa0NDLFlBQVk7RUFDWixZQUFZO0VBQ1oscUJBQXFCO0VBQ3JCLHVHQUF1RztBOUVteFd4Rzs7QStFcHpXQTtFRG9DQyxZQUFZO0VBQ1osWUFBWTtFQUNaLHFCQUFxQjtFQUNyQix1R0FBdUc7QTlFb3hXeEc7O0Er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aVhyQzs7QW1GOXFYQTtFQUNJLGNBQWE7QW5GaXJYakI7O0FtRjlxWEE7RUFDSSxjQUFhO0FuRmlyWGpCOztBbUY5cVhBO0VBQ0ksVUFBVTtFQUNWLGVBQWU7QW5GaXJYbkI7O0FtRjlxWEE7RUFDSSxjQUFjO0FuRmlyWGxCOztBbUY5cVhBO0VBQ0kseUJBQXdCO0FuRmlyWDVCOztBbUY5cVhBO0VBQ0ksY0FBYTtBbkZpclhqQjs7QW1GOXFYQTtFQUNJLGNBQWM7RUFDZCxtQkFBbUI7QW5GaXJYdkI7O0FtRjlxWEE7RUFDSSxjQUFjO0FuRmlyWGxCOztBbUY5cVhBO0VBQ0ksY0FBYztBbkZpclhsQjs7QW1GOXFYQTtFQUNJLGNBQWM7QW5GaXJYbEI7O0FtRjlxWEE7RUFDSSxjQUFjO0FuRmlyWGxCOztBb0Y1dFhBO0VBQ0k7SUFDSSxnQ2hGd0VZO0lnRnZFWixtQnJFcUZpRDtFZjBvWHZEO0VvRmp1WEU7SUFJUSxhQUFZO0lBQ1osV0FBVTtJQUNWLG1CckVpRjZDO0lxRWhGN0MscUJyRWdGNkM7RWZncFh2RDtFb0Z2dVhFO0lBV1ksbUJoRjhESTtFSmlxWGxCO0VvRjF1WEU7SUFjWSxjQUFhO0VwRit0WDNCO0VvRjd1WEU7SUFrQlEsY0FBYTtJQUNiLGlCQUFnQjtJQUNoQiwwQnJFbUU2QztFZjJwWHZEO0VvRjN0WEU7SUFDSSxXQUFVO0lBQ1YscUJBQW9CO0lBQ3BCLDhCaEYrQ1k7SWdGOUNaLFlBQVc7SUFDWCxrQkFBaUI7SUFDakIsZUFBYztFcEY2dFhwQjtFb0ZudVhFO0lBU1EsY2hGNkNPO0VKZ3JYakI7QUFDRjs7QXlEcnNYQSwwQ0FBQTtBNEIxREE7RUFDSSxzQnRFdUZxRDtFc0V0RnJELHlCdEVzRnFEO0FmNnFYekQ7O0FxRnJ3WEE7RUFLWSxjakZ5RU87RWlGeEVQLGV0RWtGNkM7QWZrclh6RDs7QXFGMXdYQTtFQVFvQixjakZ3RUw7QUo4clhmOztBc0Y5d1hBO0VBQ007SUFPRTs7VXRGNHdYRTtFQUNSO0VzRnB4WEk7SUFFTSxnQkFBZ0I7SUFDaEIsZ0NsRndFUztJa0Z2RVQsaUJBQWdC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bUVxRDtFa0ZsRXJELHdCbEZrRXFEO0VrRmpFckQscUJBQW9CO0FqR3VuWnhCOztBTTErWU07RTJGaEpOO0lBS1Esa0JBQWlCO0lBQ2pCLHlCbEY4RGlEO0VmNGpadkQ7QUFDRjs7QU10L1lNO0UyRjNJTjtJQVNRLFlBQVc7RWpHNm5aakI7QUFDRjs7QWlHdm9aQTtFQWFRLDhCbEZ1RGlEO0VrRnREakQsdUJsRnNEaUQ7RWtGckRqRCxjQUFjO0VBQ2QsZUFBYztFQUNkLGtCQUFrQjtFQUNsQixtQkFBa0I7QWpHOG5aMUI7O0FpR2hwWkE7RUFvQlksbUI3RnVDTztFNkZ0Q1AsYzdGMkNHO0FKcWxaZjs7QWlHcnBaQTtFQXdCWSxtQkFBa0I7RUFDbEIsYzdGdUNHO0FKMGxaZjs7QWlHMXBaQTtFQTRCWSxtQjdGK0JPO0U2RjlCUCxjN0ZtQ0c7QUorbFpmOztBa0duclpBO0VBQ0ksc0JuRnVGcUQ7RW1GdEZyRCx5Qm5Gc0ZxRDtBZmdtWnpEOztBa0duclpBO0VBQ0ksa0JBQWtCO0FsR3NyWnRCOztBa0d2clpBO0VBSVEsY0FBYztFQUNkLHFCQUFxQjtFQUNyQixjOUZxRU87QUprblpmOztBa0c3clpBO0VBU1ksY0FBYztFQUNkLG9CQUFvQjtFQUNwQixzQm5Gd0U2QztFbUZ2RTdDLHFCbkZ1RTZDO0FmaW5aekQ7O0FrR3BzWkE7RUFnQlksYzlGeURPO0U4RnhEUCxxQm5Ga0U2QztBZnNuWnpEOztBTTFpWk07RTRGeklOO0lBRVEsbUJuRjJEaUQ7SW1GMURqRCxrQkFBa0I7SUFDbEIsZ0M5RjJDWTtJOEYxQ1osZ0JBQWdCO0VsR3NyWnRCO0VrRzNyWkY7SUFRWSxhQUFhO0VsR3NyWnZCO0VrRzlyWkY7SUFZWSxlQUFlO0VsR3FyWnpCO0FBQ0Y7O0FNempaTTtFNEZ4SE47SUFFUSxtQkFBbUI7RWxHb3JaekI7QUFDRjs7QWtHanJaQTtFQUNJLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFFakI7O01sR29yWkU7RWtHaHJaRix1Qm5GOEJxRDtBZm9wWnpEOztBa0cxclpBO0VBZ0JRLGVBQWU7QWxHOHFadkI7O0FNNWtaTTtFNEZsSE47SUFZWSxxQm5GK0JDO0ltRjlCRCxnQzlGV1E7RUo0cVpsQjtBQUNGOztBa0dyc1pBO0VBbUJZLDBCQUEwQjtBbEdzclp0Qzs7QWtHanJaQTtFQUNJLGlCQUFpQjtFQUNqQixjOUZJVztFOEZIWCxxQkFBcUI7RUFDckIsb0JBQW9CO0VBQ3BCLGdCQUFnQjtBbEdvclpwQjs7QWtHanJaQTtFQUNJLCtCQUErQjtFQUMvQixjOUZKVztBSndyWmY7O0FrR2pyWkE7RUFDSSwyQkFBb0I7RUFBcEIsMkJBQW9CO0VBQXBCLG9CQUFvQjtFQUNwQixnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLDBCQUEwQjtBbEdvclo5Qjs7QWtHanJaQTtFQUNJLGVBQWU7RUFDZixZQUFZO0VBQ1osZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLDhCQUFtQjtFQUFuQiw2QkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQix5QkFBOEI7TUFBOUIsc0JBQThCO1VBQTlCLDhCQUE4QjtFQUM5QixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGNBQWM7RUFDZCw2QkFBNkI7QWxHb3JaakM7O0FrR2pyWkE7RUFDSSx1QkFBdUI7RUFDdkIsYUFBYTtFQUNiLGdCQUFnQjtBbEdvclpwQjs7QWtHanJaQTtFQUNJLGtCQUFrQjtBbEdvclp0Qjs7QWtHanJaQTtFQUNJLGtDQUFrQztFQUNsQyxnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixXQUFXO0FsR29yWmY7O0FrR2pyWkE7RUFDSSxnQkFBZ0I7QWxHb3JacEI7O0FrR2pyWkE7RUFDSSxhQUFhO0FsR29yWmpCOztBTXhwWk07RTZGL0pOO0lsRmNFLGdCQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCxnQkR1RVM7SUN0RVQsZURzRVM7SW9GMUZMLDZCQUE0QjtFbkc2elpsQztFa0I3dlpFO0lBQ0UsWVBpRHNEO0VYOHNaMUQ7QUFDRjs7QW1HN3paQTtFQUNJLGtCQUFrQjtFQUNsQixnQkFBZ0I7QW5HZzBacEI7O0FNcnFaTTtFNkY3Sk47SUFJUyxhQUFZO0VuR20wWm5CO0FBQ0Y7O0FNaHJaTTtFNkZ4Sk47SWxGT0UsZ0JDZXFEO0lBK0JyRCxXUHdEeUQ7SUs5RnZELGdCRHVFUztJQ3RFVCxlRHNFUztFZjB2Wlg7RWtCcHhaRTtJQUNFLFlQaURzRDtFWHF1WjFEO0FBQ0Y7O0FtR3gwWkE7RUFFUSxpQkFBZ0I7QW5HMDBaeEI7O0FtRzUwWkE7RUFLUSxxQkFBb0I7QW5HMjBaNUI7O0FtR3YwWkE7RUFDSSxlQUFlO0VBQ2YsaUJBQWlCO0FuRzAwWnJCOztBTXBzWk07RTZGbklOO0lBRVEscUJwRnFEaUQ7SW9GcERqRCxpQnBGb0RpRDtFZnN4WnZEO0FBQ0Y7O0FtR3YwWkE7RUFDSSxjL0Z1Q1c7QUpteVpmOztBTS9zWk07RTZGeEhOO0lBRVEsMEJBQXlCO0lBQ3pCLGtCQUFpQjtFbkcwMFp2QjtFbUc3MFpGO0lBS1ksZ0JBQWU7SUFDZixrQkFBaUI7SUFDakIsWUFBVztFbkcyMFpyQjtFbUdsMVpGO0lBV1ksa0JBQWlCO0VuRzAwWjNCO0FBQ0Y7O0FtR3QwWkE7RUFDSSxrQkFBaUI7QW5HeTBackI7O0FtRzEwWkE7RUFHUSx5QkFBd0I7RUFDeEIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtBbkcyMFp6Qjs7QW1HdjBaQTtFQUNJLGtCQUFpQjtBbkcwMFpyQjs7QW1HdjBaQTtFQUNJLGtCQUFpQjtBbkcwMFpyQjs7QW9HcDVaQTtFQUNJLG1CckZ1RnFEO0FmZzBaekQ7O0FvR3A1WkE7RUFDSSxjQUFjO0VBQ2QsZ0JBQWdCO0FwR3U1WnBCOztBb0dwNVpBO0VBQ0ksZ0NoR2dFZ0I7RWdHL0RoQix5QnJGNkVxRDtFcUY1RXJELG1CckY0RXFEO0FmMjBaekQ7O0FvRzE1WkE7RUFNUSxjaEdpRU87QUp1MVpmOztBb0c5NVpBO0VBVVEsZUFBYztBcEd3NVp0Qjs7QU12d1pNO0U4RjNKTjtJQWNRLGtCQUFrQjtFcEd5NVp4QjtFb0d2NlpGO0lBaUJZLHlCckY4RDZDO0VmMjFadkQ7QUFDRjs7QW9HMzZaQTtFQXNCUSxzQkFBQTtFQUNBLHlCQUF5QjtBcEd5NVpqQzs7QW9HaDdaQTtFQTJCUSxpQkFBaUI7QXBHeTVaekI7O0FvR3I1WkE7RW5GMUJFLFdDeUIyRDtFQXFCM0QsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQmc3WnpDOztBTXJ5Wk07RThGdkhOO0lwRmxCSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnM3WnZDO0FBQ0Y7O0FNNXlaTTtFOEZ2SE47SXBGbEJJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNjdadkM7QUFDRjs7QWtCLzRaSTtFQUNFLFlQaURzRDtBWGkyWjVEOztBTXZ6Wk07RThGdkhOO0luRjFCRSxlQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIwOFp2QztBQUNGOztBTWgwWk07RThGdkhOO0lwRmxCSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmk5WnZDO0FBQ0Y7O0FNdjBaTTtFOEZ2SE47SXBGbEJJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdzladkM7QUFDRjs7QU05MFpNO0VZNUZGO0lBQ0UsWVBpRHNEO0VYNjNaMUQ7QUFDRjs7QW9HbjhaQTtFbkZsQ0UsV0N5QjJEO0VBcUIzRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCcytaekM7O0FNMzFaTTtFOEYvR047SXBGMUJJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNCtadkM7QUFDRjs7QU1sMlpNO0U4Ri9HTjtJcEYxQkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJtL1p2QztBQUNGOztBa0JyOFpJO0VBQ0UsWVBpRHNEO0FYdTVaNUQ7O0FNNzJaTTtFOEYvR047SW5GbENFLGVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmdnYXZDO0FBQ0Y7O0FNdDNaTTtFOEYvR047SXBGMUJJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdWdhdkM7QUFDRjs7QU03M1pNO0U4Ri9HTjtJcEYxQkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4Z2F2QztBQUNGOztBTXA0Wk07RVk1RkY7SUFDRSxZUGlEc0Q7RVhtN1oxRDtBQUNGOztBb0dqL1pBO0VuRjFDRSxXQ3lCMkQ7RUFxQjNELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztBaEI0aGF6Qzs7QU1qNVpNO0U4RnZHTjtJcEZsQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJraWF2QztBQUNGOztBTXg1Wk07RThGdkdOO0lwRmxDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnlpYXZDO0FBQ0Y7O0FrQjMvWkk7RUFDRSxZUGlEc0Q7QVg2OFo1RDs7QU1uNlpNO0U4RnZHTjtJbkYxQ0UsWUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCc2phdkM7QUFDRjs7QU01NlpNO0U4RnZHTjtJcEZsQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI2amF2QztBQUNGOztBTW43Wk07RThGdkdOO0lwRmxDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm9rYXZDO0FBQ0Y7O0FNMTdaTTtFWTVGRjtJQUNFLFlQaURzRDtFWHkrWjFEO0FBQ0Y7O0FvRy9oYUE7RW5GbERFLFdDeUIyRDtFQXFCM0QsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQmtsYXpDOztBTXY4Wk07RThGL0ZOO0lwRjFDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQndsYXZDO0FBQ0Y7O0FNOThaTTtFOEYvRk47SXBGMUNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK2xhdkM7QUFDRjs7QWtCamphSTtFQUNFLFlQaURzRDtBWG1nYTVEOztBTXo5Wk07RThGL0ZOO0luRmxERSxnQkN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNG1hdkM7QUFDRjs7QU1sK1pNO0U4Ri9GTjtJcEYxQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJtbmF2QztBQUNGOztBTXorWk07RThGL0ZOO0lwRjFDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjBuYXZDO0FBQ0Y7O0FNaC9aTTtFWTVGRjtJQUNFLFlQaURzRDtFWCtoYTFEO0FBQ0Y7O0FvRzdrYUE7RW5GMURFLFdDeUIyRDtFQXFCM0QsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQndvYXpDOztBTTcvWk07RThGdkZOO0lwRmxESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjhvYXZDO0FBQ0Y7O0FNcGdhTTtFOEZ2Rk47SXBGbERJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCcXBhdkM7QUFDRjs7QWtCdm1hSTtFQUNFLFlQaURzRDtBWHlqYTVEOztBTS9nYU07RThGdkZOO0luRjFERSxVQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJrcWF2QztBQUNGOztBTXhoYU07RThGdkZOO0lwRmxESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnlxYXZDO0FBQ0Y7O0FNL2hhTTtFOEZ2Rk47SXBGbERJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCZ3JhdkM7QUFDRjs7QU10aWFNO0VZNUZGO0lBQ0UsWVBpRHNEO0VYcWxhMUQ7QUFDRjs7QXFHM3NhQTtFQUVRLHFCdEZzRmlEO0FmdW5hekQ7O0FxRy9zYUE7RUFLWSxjakcyRUc7RWlHMUVILGlCQUFpQjtFQUNqQiw4QnRGaUY2QztBZjZuYXpEOztBcUdydGFBO0VBWWdCLHlCakc4REk7QUorb2FwQjs7QXFHenRhQTtFQWVvQiw0QkFBNEI7RUFDNUIsbUJBQW1CO0VBQ25CLGVBQWM7QXJHOHNhbEM7O0FxRy90YUE7RUFvQndCLHFCQUFxQjtBckcrc2E3Qzs7QXFHbnVhQTtFQTRCUSw2Q0FBNEM7QXJHMnNhcEQ7O0FxR3ZzYUE7RUFDSSxlQUFlO0VBQ2YsOEJ0RnNEcUQ7QWZvcGF6RDs7QXFHNXNhQTtFQUlRLG1CQUFtQjtBckc0c2EzQjs7QXNHaHZhQTtFQUNJLGVBQWU7RUFDZixPQUFPO0VBQ1AsU0FBUztFQUNULHNCQUFzQjtFQUN0QixrREFBNEM7VUFBNUMsMENBQTRDO0VB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QUFnQjtJQUNoQixXQUFXO0U3R3dzYmpCO0FBQ0Y7O0E4RzVpY0E7RUFDSSx5QjFHOEVlO0FKaStibkI7O0E4RzVpY0E7RWhHNkZFLHNCQ1R1RDtFRDFCckQsa0JBQWtCO0VBQ2xCLGlCQUFpQjtFZ0d4RGpCLGtCQUFrQjtBOUdnamN0Qjs7QVkzNGJFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVo2NGJoQjs7QVlyNGJFO0VBQ0UsV0FBVztBWnc0YmY7O0FNajZiTTtFd0czSk47SUFPWSxnQkFBZ0I7RTlHMGpjMUI7QUFDRjs7QThHdGpjQTtFQUNJLGMxR21FVztFMEdsRVgsZS9Gc0VxRDtBZm0vYnpEOztBOEd0amNBO0VBQ0ksMEJBQXlCO0VBQ3pCLHNDQUE2QjtVQUE3Qiw4QkFBNkI7QTlHeWpjakM7O0ErRTFqY0E7RStCS0ksY0FBYTtBOUd5amNqQjs7QThHdGpjQTtFN0ZoQkUsV0NlcUQ7RUErQnJELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztFOEZZckMsMEJBQTBCO0VBQzFCLGtCQUFrQjtBOUc0amN0Qjs7QU05N2JNO0V3R2pJTjtJOUZSSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQitrY3ZDO0FBQ0Y7O0FNcjhiTTtFd0dqSU47STlGUkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzbGN2QztBQUNGOztBa0J4aWNJO0VBQ0UsWVBpRHNEO0FYMC9iNUQ7O0E4RzNrY0E7RTdGdEJFLFdDZXFEO0VBK0JyRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCa21jekM7O0FNdjliTTtFd0czSE47STlGZEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ3bWN2QztBQUNGOztBTTk5Yk07RXdHM0hOO0k5RmRJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK21jdkM7QUFDRjs7QWtCamtjSTtFQUNFLFlQaURzRDtBWG1oYzVEOztBOEdwbWNBO0VBSVEsaUJBQWlCO0E5R29tY3pCOztBOEdobWNBO0VBQ0ksb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYixXQUFXO0VBQ1gsd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUI7QTlHbW1jM0I7O0FNbi9iTTtFd0duSE47SUFNUSx1QkFBMkI7UUFBM0Isb0JBQTJCO1lBQTNCLDJCQUEyQjtFOUdxbWNqQztBQUNGOztBOEdsbWNBO0VBQ0ksY0FBYztBOUdxbWNsQjs7QThHbG1jQTtFN0Y1Q0UsV0NlcUQ7RUErQnJELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztFOEZ3Q3JDLGtCQUFpQjtBOUd3bWNyQjs7QU1yZ2NNO0V3R3JHTjtJOUZwQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzcGN2QztBQUNGOztBTTVnY007RXdHckdOO0k5RnBDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjZwY3ZDO0FBQ0Y7O0FrQi9tY0k7RUFDRSxZUGlEc0Q7QVhpa2M1RDs7QThHdm5jQTtFN0ZqREUsVUN5QjJEO0VBcUIzRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCeXFjekM7O0FNOWhjTTtFd0doR047STlGekNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK3FjdkM7QUFDRjs7QU1yaWNNO0V3R2hHTjtJOUZ6Q0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzcmN2QztBQUNGOztBa0J4b2NJO0VBQ0UsWVBpRHNEO0FYMGxjNUQ7O0E4R2hwY0E7RUFJUSxpQkFBaUI7RUFDakIsb0JBQW9CO0E5R2dwYzVCOztBOEc1b2NBO0U3RjFERSxXQ2VxRDtFQStCckQsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0U4RnNEckMsa0JBQWtCO0VBQ2xCLGtCQUFrQjtBOUdrcGN0Qjs7QU05amNNO0V3R3ZGTjtJOUZsREkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIrc2N2QztBQUNGOztBTXJrY007RXdHdkZOO0k5RmxESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnN0Y3ZDO0FBQ0Y7O0FrQnhxY0k7RUFDRSxZUGlEc0Q7QVgwbmM1RDs7QThHanFjQTtFN0ZoRUUsV0NlcUQ7RUErQnJELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztFOEY0RHJDLGtCQUFrQjtFQUNsQixrQkFBa0I7QTlHdXFjdEI7O0FNemxjTTtFd0dqRk47STlGeERJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMHVjdkM7QUFDRjs7QU1obWNNO0V3R2pGTjtJOUZ4REkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJpdmN2QztBQUNGOztBa0Juc2NJO0VBQ0UsWVBpRHNEO0FYcXBjNUQ7O0E4R3JyY0E7RTdGdkVFLFdDeUIyRDtFQXFCM0QsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQjZ2Y3pDOztBTWxuY007RXdHMUVOO0k5Ri9ESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm13Y3ZDO0FBQ0Y7O0FNem5jTTtFd0cxRU47STlGL0RJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMHdjdkM7QUFDRjs7QWtCNXRjSTtFQUNFLFlQaURzRDtBWDhxYzVEOztBOEc5c2NBO0VBSVEsaUJBQWlCO0VBQ2pCLFVBQVU7QTlHOHNjbEI7O0E4RzFzY0E7RUFDSSxtQjFHaEJlO0UwR2lCZixpQkFBZ0I7RUFDaEIsa0JBQWlCO0E5RzZzY3JCOztBOEcxc2NBO0VBQ0ksUUFBUTtFQUNSLGlCQUFpQjtFQUNqQixpQkFBaUI7QTlHNnNjckI7O0E4RzFzY0E7RUFDSSx5QjFHM0JXO0FKd3VjZjs7QThHMXNjQTtFQUNJLHFCL0Z2QnFEO0UrRndCckQsaUJBQWdCO0VBQ2hCLGtCQUFpQjtBOUc2c2NyQjs7QThHMXNjQTtFQUNJLGtCQUFrQjtBOUc2c2N0Qjs7QWtDdHVjRTtFNEU2QkUsa0JBQWtCO0E5RzZzY3RCOztBOEcxc2NBO0VBQ0ksZ0JBQWU7QTlHNnNjbkI7O0E4RzlzY0E7RUFHUSxnQkFBZTtFQUNmLGtCQUFpQjtFQUNqQix1Qi9GekNpRDtBZnd2Y3pEOztBOEczc2NBO0VBQ0kscUJBQW9CO0VBQ3BCLGNBQWE7QTlHOHNjakI7O0E4RzNzY0E7RUFDSSxjQUFhO0E5RzhzY2pCOztBOEcxc2NBO0VBR0k7SUFDSSxvQkFBb0I7SUFDcEIsZUFBZTtJQUNmLHNCL0Y3RGlEO0krRjhEakQseUIvRjlEaUQ7SStGK0RqRCxpQkFBaUI7RTlHMnNjdkI7RThHeHNjRTtJQUNJLG9CQUFvQjtJQUNwQixlQUFlO0lBQ2Ysc0IvRnJFaUQ7SStGc0VqRCx5Qi9GdEVpRDtJK0Z1RWpELGlCQUFpQjtFOUcwc2N2QjtFa0NwdWNBO0k0RThCTSxtQkFBbUI7RTlHeXNjekI7RThHdHNjRTtJaEdyRUYsc0JDVHVEO0lEMUJyRCxrQkFBa0I7SUFDbEIsaUJBQWlCO0lnR3lHYixnQkFBZ0I7RTlHMHNjdEI7RVl0c2NBO0lBRUUsY0FBYztJQUNkLFlBQVk7RVp1c2NkO0VZL3JjQTtJQUNFLFdBQVc7RVppc2NiO0U4RzlzY0U7SUFDSSx5QkFBeUI7RTlHZ3RjL0I7RThHN3NjRTtJQUNJLGNBQWM7SUFDZCxVQUFVO0lBQ1YsWUFBWTtJQUNaLHdDMUcvRk87STBHZ0dQLGMxR2hHTztFSit5Y2I7RThHNXNjRTtJN0Z6S0YsVUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCcTNjdkM7QUFDRjs7QU0zdWNNO0V3R3dCRjtJOUZqS0EseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI0M2N2QztBQUNGOztBTWx2Y007RXdHd0JGO0k5RmpLQSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm00Y3ZDO0FBQ0Y7O0E4R3p3Y0E7RTVGNUVJO0lBQ0UsWVBpRHNEO0VYd3ljMUQ7RWtCMTFjRTtJNEZ5SEksV0FBVztFOUdvdWNqQjtFOEdqdWNFO0lBRVEsYzFHN0dHO0VKKzBjYjtFOEdwdWNFO0lBTVEsYzFHakhHO0VKazFjYjtFOEc3dGNFO0lBQ0ksOEJBQThCO0U5Ryt0Y3BDO0U4RzN6Y0Y7SUFnR1EsaUJBQWlCO0lBQ2pCLGNBQWM7SUFDZCxVQUFVO0lBQ1YsWUFBWTtJQUNaLG1CQUFtQjtJQUNuQixtQkFBbUI7SUFDbkIsb0JBQW9CO0lBQ3BCLGMxR2pJTztFSisxY2I7RThHdHVjRTtJQVdRLHdDMUdwSUc7RUprMmNiO0U4R3p1Y0U7SUFlUSx3QzFHeElHO0VKcTJjYjtFOEdyMWNGO0lBNEhZLGtCQUFrQjtJQUNsQixRQUFRO0lBQ1IsV0FBVztJQUNYLG1CQUFtQjtJQUNuQixXQUFXO0U5RzR0Y3JCO0U4RzU1Y0Y7STdGdEJFLGdCQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJrN2N2QztBQUNGOztBTXh5Y007RXdHM0hOO0k5RmRJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeTdjdkM7QUFDRjs7QU0veWNNO0V3RzNITjtJOUZkSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmc4Y3ZDO0FBQ0Y7O0E4R3QwY0E7RTVGNUVJO0lBQ0UsWVBpRHNEO0VYcTJjMUQ7RThHNTdjRjtJN0ZoQkUsZ0JDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0k4RjBOakMsZ0JBQWdCO0lBQ2hCLFlBQVk7RTlHbXZjbEI7QUFDRjs7QU1wMGNNO0V3R2pJTjtJOUZSSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnE5Y3ZDO0FBQ0Y7O0FNMzBjTTtFd0dqSU47STlGUkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI0OWN2QztBQUNGOztBOEdsMmNBO0U1RjVFSTtJQUNFLFlQaURzRDtFWGk0YzFEO0U4RzU3Y0Y7STdGNUNFLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0k4RmdPakMsa0JBQWtCO0lBQ2xCLGdCQUFnQjtFOUd5d2N0QjtBQUNGOztBTWgyY007RXdHckdOO0k5RnBDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmkvY3ZDO0FBQ0Y7O0FNdjJjTTtFd0dyR047STlGcENJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdy9jdkM7QUFDRjs7QThHOTNjQTtFNUY1RUk7SUFDRSxZUGlEc0Q7RVg2NWMxRDtFOEcxOGNGO0k3RjFERSxVQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJOEZzT2pDLHNCL0ZsS2lEO0krRm1LakQ7OztVOUdpeWNFO0VBQ1I7QUFDRjs7QU0vM2NNO0V3R3ZGTjtJOUZsREkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJnaGR2QztBQUNGOztBTXQ0Y007RXdHdkZOO0k5RmxESSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnVoZHZDO0FBQ0Y7O0E4Rzc1Y0E7RTVGNUVJO0lBQ0UsWVBpRHNEO0VYNDdjMUQ7RThHenpjRTtJQVFRLFdBQVc7SUFDWCxxQkFBcUI7RTlHb3pjL0I7RThHdC9jRjtJN0ZqREUsZ0JDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0k4Rm1QakMsa0JBQWtCO0U5R3F6Y3hCO0FBQ0Y7O0FNOTVjTTtFd0doR047STlGekNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK2lkdkM7QUFDRjs7QU1yNmNNO0V3R2hHTjtJOUZ6Q0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzamR2QztBQUNGOztBOEc1N2NBO0U1RjVFSTtJQUNFLFlQaURzRDtFWDI5YzFEO0U4RzMvY0Y7STdGdkVFLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmtrZHZDO0FBQ0Y7O0FNeDdjTTtFd0cxRU47STlGL0RJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeWtkdkM7QUFDRjs7QU0vN2NNO0V3RzFFTjtJOUYvREkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJnbGR2QztBQUNGOztBOEd0OWNBO0U1RjVFSTtJQUNFLFlQaURzRDtFWHEvYzFEO0U4RzVoZEY7STdGaEVFLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjRsZHZDO0FBQ0Y7O0FNbDljTTtFd0dqRk47STlGeERJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCbW1kdkM7QUFDRjs7QU16OWNNO0V3R2pGTjtJOUZ4REkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIwbWR2QztBQUNGOztBOEdoL2NBO0U1RjVFSTtJQUNFLFlQaURzRDtFWCtnZDFEO0U4R3IzY0U7SUFJUSxXQUFXO0U5R28zY3JCO0FBQ0Y7O0ErR3hvZEEsWUFBQTtBQUVBO0VqQ29CQyxXQUFXO0VBQ1gsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixzR0FBc0c7QTlFdW5kdkc7O0FNai9jTTtFeUc3Sk47SWpDY0MsV0FBVztJQUNYLFlBQVk7SUFDWixxQkFBcUI7SUFDckIsc0dBQXNHO0U5RXFvZHJHO0FBQ0Y7O0ErR3ZwZEE7RUFVSSxrQkFBa0I7RUFDbEIsd0JoRzJFcUQ7QWZza2R6RDs7QStHOW9kQTtFQUNJLGtCQUFrQjtFQUNsQixTQUFTO0VBQ1QsV0FBVztFQUNYLGlCQUFpQjtFQUNqQixjM0cyRFc7RTJHMURYLHFCaEdrRXFEO0VnR2pFckQsZ0JBQWU7QS9HaXBkbkI7O0ErRzlvZEEsZ0JBQUE7QUFFQSxnQkFBQTtBQUVBO0VqR21FRSxzQkNUdUQ7RUQxQnJELGtCQUFrQjtFQUNsQixpQkFBaUI7RUFrQ25CLGVBSGE7RWlHN0RYLG1CM0crQ1c7RTJHOUNYLGtCQUFpQjtBL0dpcGRyQjs7QVl2Z2RFO0VBRUUsY0FBYztFQUNkLFlBQVk7QVp5Z2RoQjs7QVlqZ2RFO0VBQ0UsV0FBVztBWm9nZGY7O0ErR3ZwZEE7RUFDSSxpQmhHa0RxRDtFZ0dqRHJELGVoR2lEcUQ7RWdHaERyRCxXQUFXO0EvRzBwZGY7O0ErR3ZwZEE7RUFDSSx1QmhHNENxRDtBZjhtZHpEOztBK0d2cGRBO0VBQ0ksZWhHd0NxRDtBZmtuZHpEOztBK0d2cGRBO0VBQ0ksZWhHb0NxRDtBZnNuZHpEOztBK0d2cGRBO0U5RnpDRSxnQkN5QjJEO0VBcUIzRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCaXNkekM7O0FNdGpkTTtFeUd4R047SS9GakNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdXNkdkM7QUFDRjs7QU03amRNO0V5R3hHTjtJL0ZqQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4c2R2QztBQUNGOztBa0JocWRJO0VBQ0UsWVBpRHNEO0FYa25kNUQ7O0ErRzVxZEE7RTlGN0NFLGdCQ3lCMkQ7RUFxQjNELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztBaEIwdGR6Qzs7QU0va2RNO0V5R3BHTjtJL0ZyQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJndWR2QztBQUNGOztBTXRsZE07RXlHcEdOO0kvRnJDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnV1ZHZDO0FBQ0Y7O0FrQnpyZEk7RUFDRSxZUGlEc0Q7QVgyb2Q1RDs7QStHcnNkQTtFQUlRLGlCQUFpQjtFQUNqQixxQkFBcUI7QS9HcXNkN0I7O0FNdG1kTTtFeUdwR047SUFRWSxrQkFBa0I7RS9HdXNkNUI7QUFDRjs7QStHaHRkQTtFQWFnQixnQkFBZ0I7QS9HdXNkaEM7O0ErR3B0ZEE7RUFrQlksb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix3QkFBdUI7TUFBdkIscUJBQXVCO1VBQXZCLHVCQUF1QjtFQUN2Qix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLFlBQVk7RUFDWix5QjNHSk87RTJHS1AsVUFBVTtFQUNWLDBCQUEwQjtFQUMxQixTQUFTO0VBQ1QsVUFBVTtBL0dzc2R0Qjs7QU16bmRNO0V5R3pHTjtJQStCZ0Isa0NBQTBCO1lBQTFCLDBCQUEwQjtFL0d3c2R4QztBQUNGOztBTXBvZE07RXlHcEdOO0lBbUNnQix1QkFBdUI7SUFDdkIsTUFBTTtFL0cwc2RwQjtBQUNGOztBK0cvdWRBO0VBd0NnQixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0VBQ3ZCLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0EvRzJzZG5DOztBK0dydmRBO0VBNkNvQixrQkFBa0I7QS9HNHNkdEM7O0ErR3JzZEE7RUFDSSxpQkFBaUI7QS9Hd3NkckI7O0ErR3JzZEE7RUFDSSxxQkFBcUI7RUFDckIscUJBQW9CO0VBQ3BCLGMzR2xDVztBSjB1ZGY7O0ErRzNzZEE7RUFNUSxnQkFBZ0I7QS9HeXNkeEI7O0ErR3JzZEE7RUFDSSxlQUFjO0EvR3dzZGxCOztBK0dyc2RBO0VBQ0ksWUFBWTtBL0d3c2RoQjs7QStHcnNkQTtFQUNJLFdBQVc7RUFDWCx3QmhHL0NxRDtBZnV2ZHpEOztBTTNxZE07RXlHL0JOO0lBSVEsWUFBVztFL0cyc2RqQjtBQUNGOztBK0d4c2RBO0U5Ri9IRSxVQ3lCMkQ7RUFxQjNELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztBaEJ3MGR6Qzs7QU03cmRNO0V5R2xCTjtJL0Z2SEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4MGR2QztBQUNGOztBTXBzZE07RXlHbEJOO0kvRnZISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnExZHZDO0FBQ0Y7O0FrQnZ5ZEk7RUFDRSxZUGlEc0Q7QVh5dmQ1RDs7QStHN3RkQTtFOUZuSUUsVUN5QjJEO0VBcUIzRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCaTJkekM7O0FNdHRkTTtFeUdkTjtJL0YzSEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ1MmR2QztBQUNGOztBTTd0ZE07RXlHZE47SS9GM0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCODJkdkM7QUFDRjs7QWtCaDBkSTtFQUNFLFlQaURzRDtBWGt4ZDVEOztBK0dsdmRBO0U5RnZJRSxXQ3lCMkQ7RUFxQjNELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztFK0ZtSXJDLHNCaEcvRHFEO0VnR2dFckQsa0JBQWtCO0EvR3d2ZHRCOztBTWp2ZE07RXlHVk47SS9GL0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCazRkdkM7QUFDRjs7QU14dmRNO0V5R1ZOO0kvRi9ISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnk0ZHZDO0FBQ0Y7O0FrQjMxZEk7RUFDRSxZUGlEc0Q7QVg2eWQ1RDs7QStHN3dkQTtFQU1RLHdCQUF3QjtBL0cyd2RoQzs7QStHcndkQTtFQXRIQTtJQTBIUSwwQmhHN0VpRDtFZm0xZHZEO0UrR3AzZEY7STlGekNFLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjY1ZHZDO0FBQ0Y7O0FNbnhkTTtFeUd4R047SS9GakNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCbzZkdkM7QUFDRjs7QU0xeGRNO0V5R3hHTjtJL0ZqQ0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIyNmR2QztBQUNGOztBK0cveGRBO0U3RjlGSTtJQUNFLFlQaURzRDtFWGcxZDFEO0UrR3p4ZEU7STlGOUpGLFVDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0krRjBKakMsa0JBQWtCO0UvRzh4ZHhCO0FBQ0Y7O0FNOXlkTTtFeUdhRjtJL0Z0SkEseUJBRnFDO0lBR3JDLHdCQUhxQztFaEIrN2R2QztBQUNGOztBTXJ6ZE07RXlHYUY7SS9GdEpBLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCczhkdkM7QUFDRjs7QStHMXpkQTtFN0Y5Rkk7SUFDRSxZUGlEc0Q7RVgyMmQxRDtFK0dyNmRGO0k5RjdDRSxVQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJrOWR2QztBQUNGOztBTXgwZE07RXlHcEdOO0kvRnJDSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnk5ZHZDO0FBQ0Y7O0FNLzBkTTtFeUdwR047SS9GckNJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCZytkdkM7QUFDRjs7QStHcDFkQTtFN0Y5Rkk7SUFDRSxZUGlEc0Q7RVhxNGQxRDtFK0c3MmRGO0k5Ri9IRSxnQkN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNCtkdkM7QUFDRjs7QU1sMmRNO0V5R2xCTjtJL0Z2SEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJtL2R2QztBQUNGOztBTXoyZE07RXlHbEJOO0kvRnZISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjAvZHZDO0FBQ0Y7O0ErRzkyZEE7RTdGOUZJO0lBQ0UsWVBpRHNEO0VYKzVkMUQ7RStHLzNkRjtJOUZ2SUUsVUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7SUdMckMsa0JBQWtCO0lBQ2xCLGdCQUhtRDtJNEZnTC9DLGVBQWU7RS9HZzJkckI7QUFDRjs7QU0vM2RNO0V5R1ZOO0kvRi9ISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmdoZXZDO0FBQ0Y7O0FNdDRkTTtFeUdWTjtJL0YvSEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ1aGV2QztBQUNGOztBK0czNGRBO0U3RjlGSTtJQUNFLFlQaURzRDtFWDQ3ZDFEO0UrRzU1ZEY7SUEyQ1ksd0JBQXdCO0UvR28zZGxDO0UrR242ZEY7STlGbklFLGdCQ3lCMkQ7SUFxQjNELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJR0xyQyxrQkFBa0I7SUFDbEIsU0FIbUQ7RW5CK2llckQ7QUFDRjs7QU05NWRNO0V5R2ROO0kvRjNISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQitpZXZDO0FBQ0Y7O0FNcjZkTTtFeUdkTjtJL0YzSEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJzamV2QztBQUNGOztBK0cxNmRBO0U3RjlGSTtJQUNFLFlQaURzRDtFWDI5ZDFEO0FBQ0Y7O0ErR3I0ZEE7RUEvREE7STlGL0hFLFlDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnFrZXZDO0FBQ0Y7O0FNMzdkTTtFeUdsQk47SS9GdkhJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNGtldkM7QUFDRjs7QU1sOGRNO0V5R2xCTjtJL0Z2SEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJtbGV2QztBQUNGOztBK0c1NWRBO0U3RnpJSTtJQUNFLFlQaURzRDtFWHcvZDFEO0UrR3g5ZEY7STlGdklFLGFDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0lHTHJDLGtCQUFrQjtJQUNsQixhQUhtRDtFbkJ3bWVyRDtBQUNGOztBTXY5ZE07RXlHVk47SS9GL0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCd21ldkM7QUFDRjs7QU05OWRNO0V5R1ZOO0kvRi9ISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQittZXZDO0FBQ0Y7O0ErR3g3ZEE7RTdGeklJO0lBQ0UsWVBpRHNEO0VYb2hlMUQ7RStHeC9kRjtJOUZuSUUsWUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7SUdMckMsa0JBQWtCO0lBQ2xCLFlBSG1EO0VuQm9vZXJEO0FBQ0Y7O0FNbi9kTTtFeUdkTjtJL0YzSEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJvb2V2QztBQUNGOztBTTEvZE07RXlHZE47SS9GM0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMm9ldkM7QUFDRjs7QStHcDlkQTtFN0Z6SUk7SUFDRSxZUGlEc0Q7RVhnamUxRDtBQUNGOztBK0d6OGRBO0VBaEZBO0k5Ri9IRSxnQkN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMHBldkM7QUFDRjs7QU1oaGVNO0V5R2xCTjtJL0Z2SEkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJpcWV2QztBQUNGOztBTXZoZU07RXlHbEJOO0kvRnZISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQndxZXZDO0FBQ0Y7O0ErR2grZEE7RTdGMUpJO0lBQ0UsWVBpRHNEO0VYNmtlMUQ7RStHN2llRjtJOUZ2SUUsVUN5QjJEO0lBcUIzRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7SUdMckMsa0JBQWtCO0lBQ2xCLGdCQUhtRDtFbkI2cmVyRDtBQUNGOztBTTVpZU07RXlHVk47SS9GL0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNnJldkM7QUFDRjs7QU1uamVNO0V5R1ZOO0kvRi9ISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm9zZXZDO0FBQ0Y7O0ErRzUvZEE7RTdGMUpJO0lBQ0UsWVBpRHNEO0VYeW1lMUQ7RStHN2tlRjtJOUZuSUUsZ0JDeUIyRDtJQXFCM0QsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0lHTHJDLGtCQUFrQjtJQUNsQixlQUhtRDtFbkJ5dGVyRDtBQUNGOztBTXhrZU07RXlHZE47SS9GM0hJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeXRldkM7QUFDRjs7QU0va2VNO0V5R2ROO0kvRjNISSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmd1ZXZDO0FBQ0Y7O0ErR3hoZUE7RTdGMUpJO0lBQ0UsWVBpRHNEO0VYcW9lMUQ7QUFDRjs7QStHN2dlQTtFQUNJLGtCQUFpQjtBL0dnaGVyQjs7QStHN2dlQTtFQUNJLGMzRy9KVztBSitxZWY7O0ErRzdnZUE7RUFDSSxnQzNHeEtlO0FKd3JlbkI7O0ErRzVnZUEsb0JBQUE7QUFHQSxnQkFBQTtBQUVBO0VBQ0ksZUFBZTtFQUVmLHVDQUF1QztFQUN2QywrQkFBK0I7QS9HNGdlbkM7O0ErR3pnZUE7RUFDSSx5QjNHdkxZO0FKbXNlaEI7O0ErR3pnZUE7RUFDSSxjM0c1TFc7RTJHNkxYLGlCQUFpQjtBL0c0Z2VyQjs7QStHemdlQTtFQUNJLGNBQWM7RUFDZCxxQkFBcUI7RUFDckIsOEJBQXNCO1VBQXRCLHNCQUFzQjtBL0c0Z2UxQjs7QU0zbmVNO0V5RzRHTjtJQU1ZLGlCQUFnQjtFL0c4Z2UxQjtFK0dwaGVGO0lBUWdCLFlBQVc7RS9HK2dlekI7QUFDRjs7QStHMWdlQSxvQkFBQTtBQUlBO0VBQ0ksdUJoRzNNcUQ7RWdHNE1yRCxXQUFXO0EvRzBnZWY7O0ErR3BnZUEsd0JBQUE7QXpHdElNO0V5R3dJTjtJQUVRLG1DQUFxQztFL0dzZ2UzQztBQUNGOztBK0duZ2VBO0VBQ0ksMEJBQXlCO0VBQ3pCLG9DQUEyQjtVQUEzQiw0QkFBMkI7QS9Hc2dlL0I7O0ErR25nZUE7RUFDSSxpQkFBaUI7RUFDakIsdUJoR2pPcUQ7RWdHa09yRCxxQmhHbE9xRDtFZ0dtT3JELGtCQUFrQjtBL0dzZ2V0Qjs7QStHbmdlQTtFQUNJLDZDQUE0QztBL0dzZ2VoRDs7QStHbmdlQTtFQUNJLGMzRy9PVztBSnF2ZWY7O0ErR25nZUE7RUFDSSx5QjNHM1BpQjtFMkc0UGpCLGNBQWM7QS9Hc2dlbEI7O0ErR25nZUE7RUFDSSxjM0c1UFc7QUprd2VmOztBK0duZ2VBO0VBQ0kseUIzRy9QWTtBSnF3ZWhCOztBK0duZ2VBLDRCQUFBO0FGcktJO0VFeUtBLG1CM0d4UWU7RTJHeVFmLGNBQWM7RUFDZCxrQkFBaUI7QS9Hb2dlckI7O0ErRy8vZEEsWUFBQTtBQUVBO0VBQ0ksZUFBYztBL0dpZ2VsQjs7QStHOS9kQTtFQUNJLHlCM0duUlc7QUpveGVmOztBK0dsZ2VBO0VBS1EsV0FBVztFQUNYLGlCQUFpQjtBL0dpZ2V6Qjs7QStHdmdlQTtFQVNZLFVBQVU7RUFDVixjQUFjO0VBQ2QseUIzRzdSRztFMkc4UkgsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQiwwQkFBMEI7RUFDMUIsc0RBQXNDO0VBQXRDLDhDQUFzQztFQUF0QyxzQ0FBc0M7RUFBdEMsMEVBQXNDO0EvR2tnZWxEOztBK0dqaGVBO0VBa0JnQixzREFBMkM7VUFBM0MsOENBQTJDO0EvR21nZTNEOztBTTF0ZU07RXlHcU1OO0lBc0JnQixhQUFhO0UvR29nZTNCO0FBQ0Y7O0ErRzNoZUE7RUE0QlksWUFBWTtFQUNaLG1CQUFtQjtFQUNuQixTQUFTO0EvR21nZXJCOztBK0dqaWVBO0VBaUNnQiwwQkFBMEI7RUFDMUIsWUFBWTtBL0dvZ2U1Qjs7QWdIMTRlQTtFQUNJLGVBQWU7RUFDZixhQUFhO0VBQ2IsWUFBWTtFQUNaLFVBQVU7RUFDVix1Q0FBK0I7RUFBL0IsK0JBQStCO0FoSDY0ZW5DOztBZ0hsNWVBO0VBUVEsNkJBQXFCO1VBQXJCLHFCQUFxQjtBaEg4NGU3Qjs7QWdIdDVlQTtFQVlRLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsZUFBZTtFQUNmLG9CQUFvQjtBaEg4NGU1Qjs7QWdINTVlQTtFQWlCWSxhQUFhO0FoSCs0ZXpCOztBTWp3ZU07RTBHL0pOO0lBcUJZLDhDQUFzQztZQUF0QyxzQ0FBc0M7SUFDdEMsMkJBQW1CO1lBQW5CLG1CQUFtQjtFaEhnNWU3QjtFZ0h0NmVGO0lBeUJnQix5QkFBeUI7SUFDekIsa0JBQWtCO0lBQ2xCLDJCQUFvQjtJQUFwQiwyQkFBb0I7SUFBcEIsb0JBQW9CO0lBQ3BCLHdCQUF1QjtRQUF2QixxQkFBdUI7WUFBdkIsdUJBQXVCO0lBQ3ZCLHlCQUFtQjtRQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CO0lBQ25CLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsWUFBWTtJQUNaLG1GQUErRTtZQUEvRSwyRUFBK0U7SUFDL0UsMkJBQW1CO1lBQW5CLG1CQUFtQjtJQUNuQiwrQkFBdUI7WUFBdkIsdUJBQXVCO0VoSGc1ZXJDO0VnSG43ZUY7SUFzQ29CLHlCQUF5QjtJQUN6QixrQkFBa0I7SUFDbEIsTUFBTTtJQUNOLFNBQVM7SUFDVCxZQUFZO0lBQ1osV0FBVztJQUNYLFdBQVc7SUFDWCxXQUFXO0VoSGc1ZTdCO0FBQ0Y7O0FnSDk3ZUE7RUFtRFksbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsVUFBVTtFQUNWLDJCQUFvQjtFQUFwQiwyQkFBb0I7RUFBcEIsb0JBQW9CO0VBQ3BCLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0VBQ3ZCLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osa0RBQXNDO1VBQXRDLDBDQUFzQztFQUN0Qyx5REFBaUQ7VUFBakQsaURBQWlEO0VBQ2pELDJCQUFtQjtVQUFuQixtQkFBbUI7QWhIKzRlL0I7O0FnSDc4ZUE7RUFpRWdCLGNBQWM7RUFDZCxZQUFZO0FoSGc1ZTVCOztBZ0gxNGVBO0VBQ0k7SUFDSSxpQ0FBeUI7WUFBekIseUJBQXlCO0lBQ3pCLGlDQUF5QjtZQUF6Qix5QkFBeUI7RWhINjRlL0I7RWdIMTRlRTtJQUNJLGtEQUEwQztZQUExQywwQ0FBMEM7RWhINDRlaEQ7RWdIejRlRTtJQUNJLCtDQUF1QztZQUF2Qyx1Q0FBdUM7RWhIMjRlN0M7RWdIeDRlRTtJQUNJLG1EQUEyQztZQUEzQywyQ0FBMkM7RWhIMDRlakQ7RWdIdjRlRTtJQUNJLGlEQUF5QztZQUF6Qyx5Q0FBeUM7RWhIeTRlL0M7RWdIdDRlRTtJQUNJLG1EQUEyQztZQUEzQywyQ0FBMkM7RWhIdzRlakQ7RWdIcjRlRTtJQUNJLDBDQUFrQztZQUFsQyxrQ0FBa0M7RWhIdTRleEM7RWdIcDRlRTtJQUNJLDBDQUFrQztZQUFsQyxrQ0FBa0M7RWhIczRleEM7QUFDRjs7QWdIdDZlQTtFQUNJO0lBQ0ksaUNBQXlCO1lBQXpCLHlCQUF5QjtJQUN6QixpQ0FBeUI7WUFBekIseUJBQXlCO0VoSDY0ZS9CO0VnSDE0ZUU7SUFDSSxrREFBMEM7WUFBMUMsMENBQTBDO0VoSDQ0ZWhEO0VnSHo0ZUU7SUFDSSwrQ0FBdUM7WUFBdkMsdUNBQXVDO0VoSDI0ZTdDO0VnSHg0ZUU7SUFDSSxtREFBMkM7WUFBM0MsMkNBQTJDO0VoSDA0ZWpEO0VnSHY0ZUU7SUFDSSxpREFBeUM7WUFBekMseUNBQXlDO0VoSHk0ZS9DO0VnSHQ0ZUU7SUFDSSxtREFBMkM7WUFBM0MsMkNBQTJDO0VoSHc0ZWpEO0VnSHI0ZUU7SUFDSSwwQ0FBa0M7WUFBbEMsa0NBQWtDO0VoSHU0ZXhDO0VnSHA0ZUU7SUFDSSwwQ0FBa0M7WUFBbEMsa0NBQWtDO0VoSHM0ZXhDO0FBQ0Y7O0FnSG40ZUE7RUFDSTtJQUNJLGtDQUEwQjtZQUExQiwwQkFBMEI7SUFDMUIsVUFBVTtFaEhzNGVoQjtFZ0huNGVFO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQjtJQUNyQixVQUFVO0VoSHE0ZWhCO0FBQ0Y7O0FnSDk0ZUE7RUFDSTtJQUNJLGtDQUEwQjtZQUExQiwwQkFBMEI7SUFDMUIsVUFBVTtFaEhzNGVoQjtFZ0huNGVFO0lBQ0ksNkJBQXFCO1lBQXJCLHFCQUFxQjtJQUNyQixVQUFVO0VoSHE0ZWhCO0FBQ0Y7O0FnSGw0ZUE7RUFDSTtJQUNJLDJCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsdUNBQStCO1lBQS9CLCtCQUErQjtJQUMvQiwyQ0FBbUM7WUFBbkMsbUNBQW1DO0VoSHE0ZXpDO0VnSGw0ZUU7SUFDSSw4QkFBc0I7WUFBdEIsc0JBQXNCO0lBQ3RCLDBDQUFrQztZQUFsQyxrQ0FBa0M7RWhIbzRleEM7RWdIajRlRTtJQUNJLDhCQUFzQjtZQUF0QixzQkFBc0I7SUFDdEIsMkNBQW1DO1lBQW5DLG1DQUFtQztFaEhtNGV6QztFZ0hoNGVFO0lBQ0ksOEJBQXNCO1lBQXRCLHNCQUFzQjtJQUN0QiwwQ0FBa0M7WUFBbEMsa0NBQWtDO0VoSGs0ZXhDO0VnSC8zZUU7SUFDSSwyQkFBbUI7WUFBbkIsbUJBQW1CO0lBQ25CLDJDQUFtQztZQUFuQyxtQ0FBbUM7RWhIaTRlekM7RWdIOTNlRTtJQUNJLDJCQUFtQjtZQUFuQixtQkFBbUI7RWhIZzRlekI7QUFDRjs7QWdINzVlQTtFQUNJO0lBQ0ksMkJBQW1CO1lBQW5CLG1CQUFtQjtJQUNuQix1Q0FBK0I7WUFBL0IsK0JBQStCO0lBQy9CLDJDQUFtQztZQUFuQyxtQ0FBbUM7RWhIcTRlekM7RWdIbDRlRTtJQUNJLDhCQUFzQjtZQUF0QixzQkFBc0I7SUFDdEIsMENBQWtDO1lBQWxDLGtDQUFrQztFaEhvNGV4QztFZ0hqNGVFO0lBQ0ksOEJBQXNCO1lBQXRCLHNCQUFzQjtJQUN0QiwyQ0FBbUM7WUFBbkMsbUNBQW1DO0VoSG00ZXpDO0VnSGg0ZUU7SUFDSSw4QkFBc0I7WUFBdEIsc0JBQXNCO0lBQ3RCLDBDQUFrQztZQUFsQyxrQ0FBa0M7RWhIazRleEM7RWdILzNlRTtJQUNJLDJCQUFtQjtZQUFuQixtQkFBbUI7SUFDbkIsMkNBQW1DO1lBQW5DLG1DQUFtQztFaEhpNGV6QztFZ0g5M2VFO0lBQ0ksMkJBQW1CO1lBQW5CLG1CQUFtQjtFaEhnNGV6QjtBQUNGOztBaUhwaGZBO0VBQ0MsV0FBVztFQUNYLGNBQWM7RUFDZCx1QkFBdUI7RUFDcEIsa0JBQWlCO0VBQ2pCLGlCQUFnQjtFQUNoQixPQUFNO0VBQ04sUUFBTztFaEdPVCxXQ3lCMkQ7RUFxQjNELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztBaEI4Z2Z6Qzs7QU1uNGVNO0UyRy9KTjtJakdzQkkseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJvaGZ2QztBQUNGOztBTTE0ZU07RTJHL0pOO0lqR3NCSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjJoZnZDO0FBQ0Y7O0FrQjcrZUk7RUFDRSxZUGlEc0Q7QVgrN2U1RDs7QWlIemlmQTtFQUNJLGtCbEc0RXFEO0FmZytlekQ7O0FpSHppZkE7RUFDQyxnQkFBZ0I7RUFDaEIsYzdHK0RjO0U2RzlEZCx5QjdHa0VjO0U2R2pFZCxlQUFlO0VBQ2YsMkNBQTJDO0VBQzNDLGlEQUF5QztVQUF6Qyx5Q0FBeUM7RUFDdEMsOEJBQXFCO1VBQXJCLHNCQUFxQjtBakg0aWZ6Qjs7QWlIemlmQTtFQUNDLGdCQUFnQjtFQUNoQixjQUFjO0FqSDRpZmY7O0FpSHZpZkE7RUFFQyxpQkFBaUI7RUFDakIsZ0M3R3lDb0I7RTZHeENwQix5QkFBeUI7QWpIeWlmMUI7O0FpSHJpZkE7RUFDQyxjQUFhO0VBQ1YsbUJsRzhDcUQ7RWtHN0NyRCxrQmxHNkNxRDtBZjIvZXpEOztBaUhyaWZBO0VBQ0MseUI3RzZCb0I7QUoyZ2ZyQjs7QWlIcmlmQTtFQUNJLG1CQUFtQjtBakh3aWZ2Qjs7QWtIMWxmQTtFQUNJLGFBQWE7QWxINmxmakI7O0FrSDlsZkE7RUFHSSxjQUFhO0FsSCtsZmpCOztBa0gzbGZBO0VBQ0ksMEJBQTBCO0VBQzFCLDBCQUEwQjtFQUMxQixrQkFBa0I7RUFDbEIsZ0NBQWdDO0VBQ2hDLGVBQWU7QWxIOGxmbkI7O0FrSDNsZkE7RUFDSSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHlCQUF5QjtFQUN6QixZQUFZO0VBQ1oseUJBQXlCO0VBQ3pCLHlCQUF5QjtFQUN6QixnQkFBZ0I7RUFDaEIsaUJBQWlCO0FsSDhsZnJCOztBa0gzbGZBO0VBQ0kseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0QixxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLGVBQWU7QWxIOGxmbkI7O0FrSDNsZkE7RUFDSSxtQkFBTztNQUFQLFdBQU87VUFBUCxPQUFPO0VBQ1Asa0JBQWtCO0FsSDhsZnRCOztBa0gzbGZBO0VBQ0ksY0FBYztFQUNkLGNBQWM7QWxIOGxmbEI7O0FrSDNsZkE7RUFMQTtJQU9RLGFBQWE7RWxIOGxmbkI7QUFDRjs7QWtIM2xmQTtFQUNJLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQXlCO0VBQ3pCLFlBQVk7RUFDWix5QkFBeUI7RUFDekIseUJBQXlCO0FsSDhsZjdCOztBa0gzbGZBO0VBQ0kseUJBQXlCO0VBQ3pCLHNCQUFzQjtFQUN0QixxQkFBcUI7RUFDckIseUJBQXlCO0VBQ3pCLGVBQWU7QWxIOGxmbkI7O0FrSDNsZkE7RUFDSSxhQUFhO0VBQ2IsOEJBQThCO0VBQzlCLGNBQWM7QWxIOGxmbEI7O0FrSDNsZkE7RUFDSSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLE9BQU87RUFDUCx5QkFBeUI7RUFDekIsY0FBYztFQUNkLGNBQWM7RUFDZCxvQkFBb0I7RUFDcEIsa0JBQWtCO0VBQ2xCLFlBQVk7RUFDWixlQUE2QjtFQUM3QixrQkFBa0I7RUFDbEIsY0FBYztFQUNkLGlCQUFpQjtBbEg4bGZyQjs7QW1IbnJmQTtFQUNJLGdDL0cyRWlCO0UrRzFFakIseUJwR3NGcUQ7QWZnbWZ6RDs7QW1IbnJmQTtFQUNJLGdCQUFnQjtFQUNoQix5Qi9HbUVnQjtBSm1uZnBCOztBbUhucmZBO0VBQ0ksY0FBYztFQUNkLDBCQUEwQjtFQUMxQixzQ0FBOEI7VUFBOUIsOEJBQThCO0VBQzlCLGVBQWU7QW5Ic3JmbkI7O0FtSG5yZkE7RUFDSSxnQkFBZ0I7RUFDaEIsaUNBQUE7QW5Ic3JmSjs7QW1IbnJmQTtFQUNJLG1CcEdpRXFEO0VvR2hFckQsdUJwR2dFcUQ7RW9HL0RyRCx5QkFBeUI7RUFDekIsbUIvRzBEVztFK0d6RFgsdURBQW1EO0VBQ25ELCtDQUEyQztBbkhzcmYvQzs7QW1IbnJmQTtFQUNJLGtCQUFrQjtFQUNsQixvQ0FBb0M7QW5Ic3JmeEM7O0FtSHhyZkE7RUFLUSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFlBQVk7RUFDWixPQUFPO0VBQ1AsUUFBUTtFQUNSLE1BQU07RUFDTixTQUFTO0FuSHVyZmpCOztBbUhscmZBO0VBQW9DO0lBQUssWUFBVztFbkh1cmZsRDtFbUh2cmZtRDtJQUFHLFVBQVM7RW5IMHJmL0Q7QUFDRjs7QW1IM3JmQTtFQUFvQztJQUFLLFlBQVc7RW5IdXJmbEQ7RW1IdnJmbUQ7SUFBRyxVQUFTO0VuSDByZi9EO0FBQ0Y7O0FtSDNyZm1FO0VBQXdCLCtDQUFzQztVQUF0Qyx1Q0FBc0M7QW5IK3Jmakk7O0FtSC9yZmtJO0VBQWdGLGtCQUFpQjtFQUFDLGNBQWE7RUFBQyxPQUFNO0VBQUMsTUFBSztFQUFDLFFBQU87RUFBQyxTQUFRO0VBQUMsZ0JBQWU7RUFBQyxvQkFBbUI7RUFBQyxrQkFBaUI7RUFBQyxXQUFVO0FuSDRzZmhWOztBbUg1c2ZpVjtFQUFpQyxrQkFBaUI7RUFBQyxnQkFBZTtFQUFDLGlCQUFnQjtFQUFDLE9BQU07RUFBQyxNQUFLO0FuSG90ZmpiOztBbUhwdGZrYjtFQUFpQyxrQkFBaUI7RUFBQyxXQUFVO0VBQUMsWUFBVztFQUFDLE9BQU07RUFBQyxNQUFLO0FuSDR0ZnhnQjs7QW9IMXdmQTtFQUNJLGNBQWE7QXBINndmakI7O0FvSDF3ZkE7RUFDSSw2QkFBNEI7QXBINndmaEM7O0FvSDF3ZkE7RUFDSSw4QkFBNkI7QXBINndmakM7O0FvSDF3ZkE7RUFDQyx5QmhINERtQjtFZ0gzRG5CLGlCckd5RXdEO0VxR3hFeEQsa0JBQWtCO0FwSDZ3Zm5COztBb0gxd2ZBO0VBQ0MsaUJBQWlCO0VBQ2pCLHlCckdtRXdEO0VxR2xFeEQsaUJBQWlCO0VBQ2pCLGlCckdpRXdEO0FmNHNmekQ7O0FvSDF3ZkE7RUFDSSxtQmhIK0NnQjtBSjh0ZnBCOztBTXBvZk07RThHMUlOO0lBR1Esd0JBQXVCO0VwSGd4ZjdCO0FBQ0Y7O0FvSDV3ZkE7RUFDSSxxQnJHcURxRDtBZjB0ZnpEOztBcUhsemZBO0VBQ0ksa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixzREFBMkM7VUFBM0MsOENBQTJDO0FySHF6Zi9DOztBQUVBO0VxSG56ZkksYUFBYTtFQUNiLHlCakhrRWdCO0VpSGhFaEIsY2pIcUVlO0VpSHBFZixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLG9EQUE0QztFQUE1Qyw0Q0FBNEM7QXJIb3pmaEQ7O0FBRUE7RXFIbHpmUSx5QkFBeUM7QXJIb3pmakQ7O0FBRUE7RXFIbHpmUSxnQkFBZ0I7RUFDaEIsd0JBQXdCO0VBQ3hCLGlCQUFpQjtBckhvemZ6Qjs7QUFFQTtFcUhqemZZLGdCQUFnQjtBckhtemY1Qjs7QUFFQTtFcUhoemZRLDRCakg4Q1c7RWlIN0NYLG1CQUFtQjtBckhremYzQjs7QUFFQTtFcUhqemZZLG9DQUF3QztBckhtemZwRDs7QUFFQTtFcUgveWZJLGlCQUFpQjtFQUNqQiw4Q0FBc0M7RUFBdEMsc0NBQXNDO0FySGl6ZjFDOztBQUVBO0VxSGh6ZlEsYUFBYTtFQUNiLHdCQUFnQjtFQUFoQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0FySGt6ZnhCOztBQUVBO0VxSGh6ZlEsWUFBWTtBckhremZwQjs7QXVDcHFmRTtFOEV6SUUsb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0FySGl6ZnZCOztBcUhyemZBO0VBUVksaUJBQWlCO0FySGl6ZjdCOztBcUh6emZBO0VBYVEsaUJBQWlCO0VBQ2pCLGtCQUFrQjtFQUNsQixpQkFBaUI7QXJIZ3pmekI7O0F1Q3owZkU7RThFNkJNLGtCQUFrQjtBckhnemYxQjs7QXVDbjBmSTtFOEVzQlEsZUFBZTtBckhpemYzQjs7QXFINXlmQTtFQUNJLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IseUJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsbUJBQW1CO0FySCt5ZnZCOztBcUhsemZBO0VBTVEsa0JBQWtCO0FySGd6ZjFCOztBcUh0emZBO0VBVVEsa0JBQWtCO0FySGd6ZjFCOztBcUgxemZBO0VBYVksaUJBQWlCO0FySGl6ZjdCOztBcUg1eWZBO0VBQ0ksa0JBQWtCO0FySCt5ZnRCOztBcUhoemZBO0VBTVksVUFBVTtFQUNWLG1CQUFtQjtBckg4eWYvQjs7QXFIcnpmQTtFQVlRLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIseUJqSGxDTztFaUhtQ1AsY2pIakNPO0VpSGtDUCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFlBQVk7RUFDWixZQUFZO0VBQ1osYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsdUNBQStCO0VBQS9CLCtCQUErQjtFQUMvQixVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLHNEQUEyQztVQUEzQyw4Q0FBMkM7RUFDM0MsVUFBVTtFQUNWLG9CQUFvQjtFQUNwQix5QkFBaUI7S0FBakIsc0JBQWlCO01BQWpCLHFCQUFpQjtVQUFqQixpQkFBaUI7QXJINnlmekI7O0FxSDEwZkE7RUFnQ1ksZUFBZTtBckg4eWYzQjs7QXFIenlmQTtFQUNJLGtCQUFrQjtFQUNsQixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLHlCQUEwQztFQUMxQyxjakg1RFc7RWlINkRYLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2Isc0RBQTJDO1VBQTNDLDhDQUEyQztFQUMzQyxvQkFBb0I7RUFDcEIseUJBQWlCO0tBQWpCLHNCQUFpQjtNQUFqQixxQkFBaUI7VUFBakIsaUJBQWlCO0FySDR5ZnJCOztBcUh0emZBO0VBYVEseUJqSHpFVztBSnMzZm5COztBcUh0eWZBO0VBQ0ksb0JBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7QXJIeXlmakI7O0FxSDF5ZkE7RUFJUSxxQkFBcUI7RUFDckIsaUJBQWlCO0VBQ2pCLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsV0FBVztFQUNYLGVBQWU7QXJIMHlmdkI7O0FxSG56ZkE7RUFZWSxtQkFBbUI7QXJIMnlmL0I7O0FxSHZ6ZkE7RUFnQm9CLHlCQUF5QztBckgyeWY3RDs7QXFIM3pmQTtFQXNCWSxhQUFhO0FySHl5ZnpCOztBcUgvemZBO0VBNEJ3QixtQ0FBMkI7VUFBM0IsMkJBQTJCO0FySHV5Zm5EOztBcUhuMGZBO0VBZ0N3QixZQUFZO0VBQ1osb0JBQW9CO0VBQ3BCLG1DQUEyQjtVQUEzQiwyQkFBMkI7QXJIdXlmbkQ7O0FxSHowZkE7RUF5Q1kseUJBQXlDO0VBQ3pDLFNBQVM7RUFDVCxPQUFPO0VBQ1Asa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixNQUFNO0VBQ04sdUJBQWU7RUFBZixlQUFlO0FySG95ZjNCOztBcUhuMWZBO0VBa0RnQixtQkFBbUI7QXJIcXlmbkM7O0FxSHYxZkE7RUFxRG9CLGtCQUFrQjtBckhzeWZ0Qzs7QXFIMzFmQTtFQTBEZ0Isc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxXQUFXO0VBQ1gsWUFBWTtFQUNaLFNBQVM7RUFDVCxrQkFBa0I7RUFDbEIsdUJBQWU7RUFBZixlQUFlO0VBQ2YsV0FBVztBckhxeWYzQjs7QXFIdDJmQTtFQXFFZ0IsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixvQkFBb0I7RUFDcEIsUUFBUTtFQUNSLHVCQUFlO0VBQWYsZUFBZTtBckhxeWYvQjs7QXNIN2dnQkE7RUFDSSxnQkFBZ0I7RUFDaEIsbUJBQW1CO0VBQ25CLGtCQUFrQjtBdEhnaGdCdEI7O0FzSDdnZ0JBO0VBQ0ksY2xIeUVXO0VrSHhFWCxjQUFjO0VBQ2QscUJ2R29GUztBZjQ3ZmI7O0FzSG5oZ0JBO0VBTVEsY2xIb0VPO0FKNjhmZjs7QXNIN2dnQkE7RUFDSSxZQUFZO0VBQ1osaUJBQWlCO0F0SGdoZ0JyQjs7QXNIN2dnQkE7RUFDSSxjbEgwRFc7QUpzOWZmOztBc0hqaGdCQTtFQUlRLHFCQUFxQjtBdEhpaGdCN0I7O0FzSHJoZ0JBO0VBUVEscUJBQXFCO0VBQ3JCLGVBQWU7QXRIaWhnQnZCOztBc0gxaGdCQTtFQWFRLGNsSDhDTztBSm0rZmY7O0FzSDloZ0JBO0VBZ0JZLDBCQUEwQjtFQUMxQixzQ2xIMENHO1VrSDFDSCw4QmxIMENHO0FKdytmZjs7QXNIN2dnQkE7RUFDSSxnQkFBZ0I7RUFDaEIsY0FBYztFQUNkLHNCdkcwQ3FEO0V1R3pDckQsY2xIaUNXO0FKKytmZjs7QXNIcGhnQkE7RUFPUSxjQUFjO0VBQ2QscUJ2RzBDSztBZnUrZmI7O0FzSHpoZ0JBO0VBV1ksY2xIMEJHO0FKdy9mZjs7QXNIN2dnQkE7RUFDSSxtQkFBbUI7QXRIZ2hnQnZCOztBc0g3Z2dCQTtFQUNJLGNBQWM7RUFDZCxpQkFBaUI7RUFDakIsWUFBWTtFQUNaLGlCQUFpQjtFQUNqQixtQkFBbUI7QXRIZ2hnQnZCOztBTWg3Zk07RWdIckdOO0lBT1EseUJ2R2tCaUQ7SXVHakJqRCxnQkFBZ0I7SUFDaEIscUJBQW9CO0V0SG1oZ0IxQjtBQUNGOztBc0g3aGdCQTtFQVlRLDBCQUEwQjtFQUMxQixvQ0FBNEI7VUFBNUIsNEJBQTRCO0VBQzVCLGNsSEdPO0FKa2hnQmY7O0FzSGpoZ0JBO0VBQ0ksaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixldkdJcUQ7RXVHSHJELHVCdkdHcUQ7QWZpaGdCekQ7O0FzSGpoZ0JBO0VBQ0ksY0FBYztFQUNkLGlCQUFpQjtBdEhvaGdCckI7O0FzSGpoZ0JBO0VBQ0k7SUFDSSxrQkFBa0I7SUFDbEIsV0FBVztJQUNYLFVBQVU7RXRIb2hnQmhCO0FBQ0Y7O0FzSGpoZ0JBO0VBQ0ksa0JBQWtCO0F0SG9oZ0J0Qjs7QXNIamhnQkE7RUFDSSxXQUFXO0VBQ1gsWUFBWTtFQUNaLFlBQVk7QXRIb2hnQmhCOztBNERoOGZFO0UwRGhGRSxjQUFjO0F0SG9oZ0JsQjs7QXNIamhnQkE7RUFDSSxtQkFBa0I7QXRIb2hnQnRCOztBc0hyaGdCQTtFQUdRLCtCbEg1Q1k7QUpra2dCcEI7O0FzSHpoZ0JBO0VBS1ksa0JBQWlCO0F0SHdoZ0I3Qjs7QXNIN2hnQkE7RUFRWSxtQmxIakRRO0FKMGtnQnBCOztBc0hqaWdCQTtFQVdZLHdCQUF3QjtFQUN4QixpQkFBaUI7RUFDakIsY2xIaERHO0FKMGtnQmY7O0FzSHZpZ0JBO0VBZWdCLG1CbEh4REk7QUpvbGdCcEI7O0FzSDNpZ0JBO0VBcUJnQixjbEh4REQ7RWtIeURDLGlCQUFpQjtBdEgwaGdCakM7O0FzSGhqZ0JBO0VBMkJRLGNsSDlETztFa0grRFAscUJ2R3ZEaUQ7QWZnbGdCekQ7O0FzSHJqZ0JBO0VBZ0NRLHlCbEgvRE87QUp3bGdCZjs7QXNIempnQkE7RUFvQ1EsY0FBYTtBdEh5aGdCckI7O0FzSDdqZ0JBO0VBeUNZLGNsSDVFRztFa0g2RUgsaUJBQWdCO0F0SHdoZ0I1Qjs7QXNIbGtnQkE7RUErQ1EsVUFBUztFQUNULGNBQWE7QXRIdWhnQnJCOztBTXRoZ0JNO0VnSGpETjtJQWtEWSxVQUFTO0V0SDBoZ0JuQjtBQUNGOztBc0h0aGdCQTtFQUNJLHFCdkduRnFEO0FmNG1nQnpEOztBc0gxaGdCQTtFQUlRLDBCQUEwQjtBdEgwaGdCbEM7O0FzSHRoZ0JBO0VBRVEsbUJBQW1CO0VBQ25CLG1CQUFtQjtFQUNuQixVQUFTO0F0SHdoZ0JqQjs7QXNIcGhnQkE7RUFDSSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLFdBQVc7RUFDWCxjQUFjO0F0SHVoZ0JsQjs7QXNIMWhnQkE7RUFNUSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLG1CQUFlO01BQWYsZUFBZTtFQUNmLFdBQVc7QXRId2hnQm5COztBc0hoaWdCQTtFQVdZLG9CQUFhO0VBQWIsb0JBQWE7RUFBYixhQUFhO0VBQ2IsV0FBVztBdEh5aGdCdkI7O0FzSHJpZ0JBO0VBZWdCLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIseUJsSGpJSTtBSjJwZ0JwQjs7QU1qa2dCTTtFZ0hzQk47SUF5QmdCLFVBQVU7RXRIdWhnQnhCO0FBQ0Y7O0FzSDFwZ0JBO0VDaEZJLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0F2SDh1Z0IzQjs7QStGeHJnQkE7RXdCekNJLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0F2SHF1Z0IzQjs7QXVIdHVnQkE7RUFTUTttQnZIaXVnQlc7QUFDbkI7O0F1SDd0Z0JBOzs7RUFHSSxvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHFCQUF5QjtNQUF6QixrQkFBeUI7VUFBekIseUJBQXlCO0VBQ3pCLGtCQUFrQjtBdkhndWdCdEI7O0F1SHJ1Z0JBOzs7RUFRUSxjQUFjO0F2SG11Z0J0Qjs7QXVIM3VnQkE7OztFQVdZLG1CQUFtQjtBdkhzdWdCL0I7O0F1SGp2Z0JBOzs7RUFnQlEsaUJBQWlCO0F2SHV1Z0J6Qjs7QXVIdnZnQkE7OztFQW1CWSxjQUFjO0VBQ2QsMEJBQTBCO0F2SDB1Z0J0Qzs7QXVIOXZnQkE7OztFQXlCUSxjbkgwQlc7RW1IeEJYLFdBQVc7RUFDWCxZQUFZO0VBQ1osZUFBZTtFQUNmLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0VBQ3ZCLHlCQUFtQjtNQUFuQixzQkFBbUI7VUFBbkIsbUJBQW1CO0VBQ25CLGVBQWU7RUFDZiwyQkFBb0I7RUFBcEIsMkJBQW9CO0VBQXBCLG9CQUFvQjtFQUNwQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtBdkgwdWdCeEI7O0FNMW9nQk07RWlIcElOOzs7SUF1Q1ksa0JBQWtCO0V2SDh1Z0I1QjtBQUNGOztBdUh0eGdCQTs7O0VBNENRLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIseUJuSE1XO0VtSExYLGNuSFVPO0VtSFRQLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osWUFBWTtFQUNaLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLHVDQUErQjtFQUEvQiwrQkFBK0I7RUFDL0IsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixvREFBNkM7VUFBN0MsNENBQTZDO0VBQzdDLFVBQVU7RUFDVixzQkFBc0I7RUFDdEIsWUFBWTtFQUNaLFFBQVE7QXZIZ3ZnQmhCOztBTXpxZ0JNO0VpSHBJTjs7O0lBZ0VZLFFBQVE7SUFDUixzQkFBc0I7SUFDdEIsWUFBWTtFdkhvdmdCdEI7QUFDRjs7QU1ucmdCTTtFaUhwSU47OztJQXNFWSx3QkFBd0I7SUFDeEIsTUFBTTtJQUNOLFlBQVk7RXZId3ZnQnRCO0FBQ0Y7O0F1SGowZ0JBOzs7RUE0RVksVUFBVTtFQUNWLG1CQUFtQjtBdkgydmdCL0I7O0F1SHgwZ0JBOzs7RUFpRlksZUFBZTtBdkg2dmdCM0I7O0FNMXNnQk07RWlIOUNOO0lBR1ksa0JBQWtCO0V2SDB2Z0I1QjtBQUNGOztBdUh0dmdCQTtFQUNJLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0VBQ3ZCLHdCQUF1QjtNQUF2QixxQkFBdUI7VUFBdkIsdUJBQXVCO0F2SHl2Z0IzQjs7QU1ydGdCTTtFaUh0Q047SUFLUSxxQkFBeUI7UUFBekIsa0JBQXlCO1lBQXpCLHlCQUF5QjtFdkgydmdCL0I7QUFDRjs7QXVIandnQkE7RUFTUSxnQkFBZ0I7RUFDaEIsa0JBQWtCO0F2SDR2Z0IxQjs7QU1odWdCTTtFaUh0Q047SUFhWSxnQkFBZ0I7RXZIOHZnQjFCO0FBQ0Y7O0F1SDV3Z0JBO0VBa0JRLGNBQWM7QXZIOHZnQnRCOztBdUhoeGdCQTtFQXNCUSw0QkFBNEI7RUFDNUIsWUFBWTtFQUNaLE9BQU87RUFDUCxXQUFXO0F2SDh2Z0JuQjs7QU1qdmdCTTtFaUh0Q047SUE0QlksU0FBUztJQUNULHlCQUF5QjtJQUN6QixPQUFPO0lBQ1AsV0FBVztJQUNYLG1DQUEyQjtZQUEzQiwyQkFBMkI7RXZIZ3dnQnJDO0FBQ0Y7O0FNM3ZnQk07RWlIdENOO0lBb0NZLHVCQUFlO1lBQWYsZUFBZTtFdkhrd2dCekI7QUFDRjs7QU1qd2dCTTtFaUhHTjtJQUdZLG1DQUEyQjtZQUEzQiwyQkFBMkI7RXZIZ3dnQnJDO0FBQ0Y7O0F1SDV2Z0JBO0VBTVEsZUFBZTtFQUNmLGlCQUFpQjtBdkgwdmdCekI7O0FNNXdnQk07RWlIV047SUFVWSxrQkFBa0I7RXZINHZnQjVCO0FBQ0Y7O0F1SHZ3Z0JBO0VBZVEsUUFBUTtFQUNSLFVBQVU7RUFDVixzQkFBc0I7RUFDdEIsWUFBWTtBdkg0dmdCcEI7O0FNenhnQk07RWlIV047SUFxQlksV0FBVztJQUNYLHVCQUF1QjtJQUN2QixNQUFNO0V2SDh2Z0JoQjtBQUNGOztBdUgxdmdCQTtFQUNJLGlCQUFpQjtBdkg2dmdCckI7O0F3SG44Z0JBO0VBQ0ksc0J6R3NGcUQ7QWZnM2dCekQ7O0F3SHY4Z0JBO0VBR1EsV0FBVTtBeEh3OGdCbEI7O0F3SHI4Z0JBO0V2R09FLFdDZXFEO0VBK0JyRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCKzdnQnpDOztBTXB6Z0JNO0VrSHhKTjtJeEdlSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnE4Z0J2QztBQUNGOztBTTN6Z0JNO0VrSHhKTjtJeEdlSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjQ4Z0J2QztBQUNGOztBa0I5NWdCSTtFQUNFLFlQaURzRDtBWGczZ0I1RDs7QXdIMTlnQkE7RXZHR0UsV0NlcUQ7RUErQnJELFdQd0R5RDtFSzlGdkQseUJBRnFDO0VBR3JDLHdCQUhxQztBaEJ3OWdCekM7O0FNNzBnQk07RWtIcEpOO0l4R1dJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCODlnQnZDO0FBQ0Y7O0FNcDFnQk07RWtIcEpOO0l4R1dJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCcStnQnZDO0FBQ0Y7O0FrQnY3Z0JJO0VBQ0UsWVBpRHNEO0FYeTRnQjVEOztBd0gvK2dCQTtFdkdERSxXQ2VxRDtFQStCckQsV1B3RHlEO0VLOUZ2RCx5QkFGcUM7RUFHckMsd0JBSHFDO0FoQmkvZ0J6Qzs7QU10MmdCTTtFa0hoSk47SXhHT0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ1L2dCdkM7QUFDRjs7QU03MmdCTTtFa0hoSk47SXhHT0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4L2dCdkM7QUFDRjs7QWtCaDlnQkk7RUFDRSxZUGlEc0Q7QVhrNmdCNUQ7O0F3SHBnaEJBO0V2R0xFLFdDZXFEO0VBK0JyRCxXUHdEeUQ7RUs5RnZELHlCQUZxQztFQUdyQyx3QkFIcUM7QWhCMGdoQnpDOztBTS8zZ0JNO0VrSDVJTjtJeEdHSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmdoaEJ2QztBQUNGOztBTXQ0Z0JNO0VrSDVJTjtJeEdHSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnVoaEJ2QztBQUNGOztBa0J6K2dCSTtFQUNFLFlQaURzRDtBWDI3Z0I1RDs7QXdIeGhoQkE7RUFqQkE7SXZHT0UsVUNlcUQ7SUErQnJELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJd0dVakM7Ozs7OztVeEhnaWhCRTtFQUNSO0FBQ0Y7O0FNajZnQk07RWtIeEpOO0l4R2VJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCa2poQnZDO0FBQ0Y7O0FNeDZnQk07RWtIeEpOO0l4R2VJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeWpoQnZDO0FBQ0Y7O0F3SHRqaEJBO0V0RzJDSTtJQUNFLFlQaURzRDtFWDg5Z0IxRDtFd0h4a2hCRjtJdkdHRSxXQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnFraEJ2QztBQUNGOztBTTM3Z0JNO0VrSHBKTjtJeEdXSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjRraEJ2QztBQUNGOztBTWw4Z0JNO0VrSHBKTjtJeEdXSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm1saEJ2QztBQUNGOztBd0hobGhCQTtFdEcyQ0k7SUFDRSxZUGlEc0Q7RVh3L2dCMUQ7RXdIOWxoQkY7SXZHREUsVUNlcUQ7SUErQnJELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJd0cwQmpDLCtCQUFBO0V4SHNraEJOO0FBQ0Y7O0FNdDlnQk07RWtIaEpOO0l4R09JLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdW1oQnZDO0FBQ0Y7O0FNNzlnQk07RWtIaEpOO0l4R09JLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCOG1oQnZDO0FBQ0Y7O0F3SDNtaEJBO0V0RzJDSTtJQUNFLFlQaURzRDtFWG1oaEIxRDtFd0hybmhCRjtJdkdMRSxVQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0l3RytCakMsK0JBQUE7RXhINGxoQk47QUFDRjs7QU1qL2dCTTtFa0g1SU47SXhHR0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJrb2hCdkM7QUFDRjs7QU14L2dCTTtFa0g1SU47SXhHR0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJ5b2hCdkM7QUFDRjs7QXdIdG9oQkE7RXRHMkNJO0lBQ0UsWVBpRHNEO0VYOGloQjFEO0V3SDdtaEJFO0lBQ0ksYUFBWTtFeEgrbWhCbEI7QUFDRjs7QXdIMW1oQkE7RUF0REE7SXZHT0UsVUNlcUQ7SUErQnJELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJd0crQ2pDOzs7Ozs7VXhIa25oQkU7RUFDUjtBQUNGOztBTXhoaEJNO0VrSHhKTjtJeEdlSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQnlxaEJ2QztBQUNGOztBTS9oaEJNO0VrSHhKTjtJeEdlSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmdyaEJ2QztBQUNGOztBd0h4b2hCQTtFdEdNSTtJQUNFLFlQaURzRDtFWHFsaEIxRDtFd0gvcmhCRjtJdkdHRSxXQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjRyaEJ2QztBQUNGOztBTWxqaEJNO0VrSHBKTjtJeEdXSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm1zaEJ2QztBQUNGOztBTXpqaEJNO0VrSHBKTjtJeEdXSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjBzaEJ2QztBQUNGOztBd0hscWhCQTtFdEdNSTtJQUNFLFlQaURzRDtFWCttaEIxRDtFd0hydGhCRjtJdkdERSxVQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0l3RytEakMsK0JBQUE7RXhId3BoQk47QUFDRjs7QU03a2hCTTtFa0hoSk47SXhHT0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEI4dGhCdkM7QUFDRjs7QU1wbGhCTTtFa0hoSk47SXhHT0kseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJxdWhCdkM7QUFDRjs7QXdIN3JoQkE7RXRHTUk7SUFDRSxZUGlEc0Q7RVgwb2hCMUQ7RXdINXVoQkY7SXZHTEUsVUNlcUQ7SUErQnJELFdQd0R5RDtJSzlGdkQseUJBRnFDO0lBR3JDLHdCQUhxQztJd0dvRWpDLCtCQUFBO0V4SDhxaEJOO0FBQ0Y7O0FNeG1oQk07RWtINUlOO0l4R0dJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCeXZoQnZDO0FBQ0Y7O0FNL21oQk07RWtINUlOO0l4R0dJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCZ3doQnZDO0FBQ0Y7O0F3SHh0aEJBO0V0R01JO0lBQ0UsWVBpRHNEO0VYcXFoQjFEO0V3SHB1aEJFO0lBc0NJLGNBQWE7SXZHOUVuQixVQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjZ3aEJ2QztBQUNGOztBTW5vaEJNO0VrSHpHRjtJeEdoQ0EseUJBRnFDO0lBR3JDLHdCQUhxQztFaEJveGhCdkM7QUFDRjs7QU0xb2hCTTtFa0h6R0Y7SXhHaENBLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMnhoQnZDO0FBQ0Y7O0F3SG52aEJBO0V0R01JO0lBQ0UsWVBpRHNEO0VYZ3NoQjFEO0FBQ0Y7O0F3SHB0aEJBO0VBQ0ksZ0JBQWU7RUFDZixnQkFBZTtFQUNmLHdCekdicUQ7QWZvdWhCekQ7O0F3SDF0aEJBO0VBS1Esb0J6R1ZLO0V5R1dMLHFCekdYSztFeUdnQkwsZ0NwSG5DWTtBSnd2aEJwQjs7QU1ucWhCTTtFa0g3RE47SUFRWSxTekdiQztJeUdjRCxpQnpHZEM7RWYydWhCWDtBQUNGOztBd0h2dWhCQTtFQWFZLG1CQUFrQjtBeEg4dGhCOUI7O0F3SDN1aEJBO0VBZ0JZLFlBQVc7RUFDWCxxQnpHM0I2QztBZjB2aEJ6RDs7QU1ucmhCTTtFa0g3RE47SUFtQmdCLGtCekc3QnlDO0VmK3ZoQnZEO0FBQ0Y7O0F3SHR2aEJBO0VBc0JnQiwwQkFBeUI7QXhIb3VoQnpDOztBd0gxdGhCQTtFQUNJLGtCQUFpQjtBeEg2dGhCckI7O0F3SDl0aEJBO0VBR1ksZ0JBQWU7QXhIK3RoQjNCOztBd0hsdWhCQTtFQU1RLHFCQUFvQjtFQUNwQiwwQkFBeUI7QXhIZ3VoQmpDOztBd0h2dWhCQTtFQVNZLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsaUNBQWdDO0VBQ2hDLCtCQUE4QjtFQUM5QiwwQ0FBeUM7RUFDekMsa0NBQWlDO0F4SGt1aEI3Qzs7QXdIaHZoQkE7RUFpQlksY3BIckVPO0VvSHNFUCxtQkFBa0I7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QU01NGpCTTtFb0h0Sk47SXpHS0UsZ0JDZXFEO0lBK0JyRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCK2hrQnZDO0FBQ0Y7O0FNcjVqQk07RW9IdEpOO0kxR2FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCc2lrQnZDO0FBQ0Y7O0FNNTVqQk07RW9IdEpOO0kxR2FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNmlrQnZDO0FBQ0Y7O0FNbjZqQk07RVk1RkY7SUFDRSxZUGlEc0Q7RVhrOWpCMUQ7QUFDRjs7QU1wNmpCTTtFb0gzSk47SUFRUSxvQkFBb0I7SUFDcEIsaUJBQWlCO0UxSDRqa0J2QjtBQUNGOztBTTM2akJNO0VvSDlJTjtJekdSRSxXQ2VxRDtJQStCckQsV1B3RHlEO0lLOUZ2RCx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQm1ra0J2QztBQUNGOztBTXo3akJNO0VvSHpJTjtJMUdBSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQjBra0J2QztBQUNGOztBTWg4akJNO0VvSHpJTjtJMUdBSSx5QkFGcUM7SUFHckMsd0JBSHFDO0VoQmlsa0J2QztBQUNGOztBTWw4akJNO0VZakdGO0lBQ0UsWVBpRHNEO0VYcy9qQjFEO0FBQ0Y7O0FNNzhqQk07RW9IeklOO0l6R1JFLFVDZXFEO0lBK0JyRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCZ21rQnZDO0FBQ0Y7O0FNdDlqQk07RW9IeklOO0kxR0FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCdW1rQnZDO0FBQ0Y7O0FNNzlqQk07RW9IeklOO0kxR0FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCOG1rQnZDO0FBQ0Y7O0FNcCtqQk07RVk1RkY7SUFDRSxZUGlEc0Q7RVhtaGtCMUQ7QUFDRjs7QU0xK2pCTTtFb0h6SU47SXpHUkUsZ0JDZXFEO0lBK0JyRCxXUHdEeUQ7SUs5RnZELHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCNm5rQnZDO0FBQ0Y7O0FNbi9qQk07RW9IeklOO0kxR0FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCb29rQnZDO0FBQ0Y7O0FNMS9qQk07RW9IeklOO0kxR0FJLHlCQUZxQztJQUdyQyx3QkFIcUM7RWhCMm9rQnZDO0FBQ0Y7O0FNamdrQk07RVk1RkY7SUFDRSxZUGlEc0Q7RVhnamtCMUQ7QUFDRjs7QTBIcG9rQkE7RUFDSSx1QjNHcURxRDtBZmtsa0J6RDs7QTBIeG9rQkE7RUFHUSxXQUFVO0ExSHlva0JsQjs7QTJIOXFrQkE7RUFFUSw4QnZId0VZO0FKd21rQnBCOztBMkhscmtCQTtFQU1RLGdCQUFlO0VBQ2YsZ0JBQWU7RUFDZixrQkFBaUI7QTNIZ3JrQnpCOztBMkh4cmtCQTtFQVVZLGN2SHNFRztBSjRta0JmOztBMkg1cmtCQTtFQWNRLG1CQUFrQjtBM0hrcmtCMUI7O0EySGhza0JBO0VBaUJRLHNCQUFxQjtBM0htcmtCN0I7O0EySHBza0JBO0VBb0JRLGFBQVk7QTNIb3JrQnBCOztBMkh4c2tCQTtFQXVCUSxnQkFBZTtBM0hxcmtCdkI7O0EySGpya0JBO0VBQ0ksbUJ2SDhDZ0I7RXVIN0NoQixpQkFBZ0I7RUFDaEIsZ0JBQWU7RUFDZixtQkFBa0I7QTNIb3JrQnRCOztBMkhqcmtCQTtFQUVRLGtCQUFpQjtBM0htcmtCekI7O0EySHJya0JBO0VBS1EsZUFBYztFQUNkLGVBQWM7QTNIb3JrQnRCOztBMkhocmtCQTtFQUNJLHlCQUF3QjtFQUN4QixtQkFBa0I7QTNIbXJrQnRCOztBMkhocmtCQTtFQUNJLGlCQUFnQjtBM0htcmtCcEI7O0EySHBya0JBO0VBR1EsY3ZINEJPO0V1SDNCUCxxQjVHbUNpRDtBZmtwa0J6RDs7QTJIanJrQkE7RUE5QkE7SUFnQ1EsYUFBWTtFM0hvcmtCbEI7RTJIanJrQkU7SUFFUSx1QkFBc0I7SUFDdEIsMkJBQTBCO0lBQzFCLG1CNUdzQjZDO0VmNHBrQnZEO0FBQ0Y7O0E0SHJ2a0JBO0VBQ0ksMkVBQTJFO0VBQzNFLHNCQUFxQjtFQUNyQiw4QkFBNkI7RUFDN0Isa0JBQWlCO0E1SHd2a0JyQjs7QTRINXZrQkE7RUFNUSw2QkFBNEI7RUFDNUIsV0FBVztFQUNYLFNBQVM7RUFDVCxVQUFVO0VBQ1YsOEJBQTJCO0VBQzNCLGVBQWU7QTVIMHZrQnZCOztBTWpta0JNO0VzSHBLTjtJQWFZLGFBQVk7RTVINnZrQnRCO0FBQ0Y7O0FNNW1rQk07RXNIN0lOO0lBRVEsd0I3R29FaUQ7STZHbkVqRCx5QjdHbUVpRDtFZnlya0J2RDtBQUNGOztBNEh6dmtCQTtFQUNJLGN4SG9EZTtBSndza0JuQjs7QTRIenZrQkE7RUFDSSxjeEhrRFc7RXdIakRYLHFCN0d5RHFEO0FmbXNrQnpEOztBNEg5dmtCQTtFQUlRLGNBQWE7RUFDYiwwQkFBeUI7RUFDekIsc0N4SDZDTztVd0g3Q1AsOEJ4SDZDTztBSml0a0JmOztBNEgxdmtCQTtFQUNJLG1CeEh1Q2U7RXdIdENmLG1CN0crQ3FEO0FmOHNrQnpEOztBNEgvdmtCQTtFQUlRLGN4SHlDTztBSnN0a0JmOztBNEhud2tCQTtFQU9RLGN4SHNDTztFd0hyQ1AsY0FBYTtBNUhnd2tCckI7O0E0SHh3a0JBO0VBVVksY3hIbUNHO0FKK3RrQmY7O0E2SG56a0JBO0VBQ0ksa0JBQWlCO0E3SHN6a0JyQjs7QU14cGtCTTtFdUgvSk47SUFHUSx5QjlHcUZpRDtJOEdwRmpELHNCOUdvRmlEO0VmcXVrQnZEO0FBQ0Y7O0E2SDl6a0JBO0VBT1MseUI5R2lGZ0Q7QWYwdWtCekQ7O0E2SGwwa0JBO0VBVVMsY3pIb0VVO0V5SG5FVixxQkFBb0I7QTdINHprQjdCOztBNkh2MGtCQTtFQWFhLGN6SG1FRTtBSjJ2a0JmOztBNkgzMGtCQTtFQWlCUyxtQkFBa0I7QTdIOHprQjNCOztBNkgxemtCQTtFQUNJLGtCQUFpQjtBN0g2emtCckI7O0E2SDF6a0JBO0VBQ0ksY0FBYztFQUNkLGtCQUFrQjtFQUNsQixpQzlHaUVTO0FmNHZrQmI7O0E2SGgwa0JBO0VBS1EsY0FBYztFQUNkLFlBQVk7QTdIK3prQnBCOztBNkhyMGtCQTtFQVNRLGNBQWM7RUFDZCxZQUFZO0E3SGcwa0JwQjs7QTZIMTBrQkE7RUFhUSxxQkFBb0I7RUFDcEIsdUJBQXVCO0VBQ3ZCLHlCOUdnRGlEO0U4Ry9DakQsZUFBZTtBN0hpMGtCdkI7O0E2SGoxa0JBO0VBa0JZLGNBQWM7RUFDZCxjQUFjO0VBQ2QsbUJ6SDZCUTtFeUg1QlIsd0I5RzBDNkM7QWZ5eGtCekQ7O0E2SHgxa0JBO0VBdUJnQixtQnpIaUNBO0V5SGhDQSxjekhtQ0Q7QUpreWtCZjs7QThIdDNrQkE7RUFDSSxnQzFIeUVnQjtFMEh4RWhCLHlCL0dzRnFEO0FmbXlrQnpEOztBOEgzM2tCQTtFQUlRLGMxSDRFTztBSit5a0JmOztBTTN0a0JNO0V3SHBLTjtJQU9RLGtCQUFpQjtFOUg2M2tCdkI7RThIcDRrQkY7SUFTWSx5Qi9HK0U2QztFZit5a0J2RDtBQUNGOztBOEgxM2tCQTtFQUNJLGtCQUFpQjtFQUNqQixjQUFhO0VBQ2Isa0JBQWlCO0E5SDYza0JyQjs7QThIaDRrQkE7RUFLUSxnQkFBZTtBOUgrM2tCdkI7O0E4SDMza0JBO0VBQ0ksaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQixlL0c4RHFEO0FmZzBrQnpEOztBTXB2a0JNO0V3SDdJTjtJQUtRLHlCL0c0RGlEO0VmcTBrQnZEO0FBQ0Y7O0E4SDkza0JBO0VBQ0ksdUIvR3VEcUQ7QWYwMGtCekQ7O0E4SGw0a0JBO0VBR1EsdUIvR3FEaUQ7RStHcERqRCwwQi9Hb0RpRDtBZiswa0J6RDs7QThILzNrQkE7RUFDSSxtQkFBa0I7QTlIazRrQnRCOztBTTV3a0JNO0V3SG5ITjtJQUVRLGdCL0cwQ2lEO0VmdzFrQnZEO0FBQ0Y7O0ErSGo3a0JBO0VBQ0ksdUJoSHVGcUQ7QWY2MWtCekQ7O0FNdHhrQk07RXlINUpOO0lBRVEsdUJoSG1GaUQ7RWZrMmtCdkQ7QUFDRjs7QStIeDdrQkE7RUFNUSx1QmhIK0VpRDtFZ0g5RWpELHdCaEg4RWlEO0VnSDdFakQsYzNIcUVPO0FKaTNrQmY7O0ErSGw3a0JBO0VBQ0kscUJBQW9CO0EvSHE3a0J4Qjs7QStIbDdrQkE7RUFDSSxrQkFBaUI7RUFDakIsU0FBUTtBL0hxN2tCWjs7QStIdjdrQkE7RUFJUSxnQkFBZTtBL0h1N2tCdkI7O0ErSDM3a0JBO0VBT1Es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LHlCQUE4QjtNQUE5QixzQkFBOEI7VUFBOUIsOEJBQThCO0VBQzlCLHFCQUFxQjtBcEk4bWxCekI7O0FvSTNtbEJBO0VBQ0ksZ0JBQWdCO0FwSThtbEJwQjs7QU1wcWxCTTtFOEh5RE47SUFFUSwrQmhJaEpZO0VKOHZsQmxCO0FBQ0Y7O0FvSWpubEJBO0VBTVEseUJySHRJaUQ7RXFIdUlqRCxzQnJIdklpRDtFcUh3SWpELGNBQWM7QXBJK21sQnRCOztBb0kzbWxCQTtFQUNJLHNCckg3SXFEO0FmMnZsQnpEOztBb0kvbWxCQTtFQUlRLFlBQVk7QXBJK21sQnBCOztBb0kzbWxCQTtFQUVRLFdBQVc7QXBJNm1sQm5COztBb0l6bWxCQTtFQUVRLGNBQWM7QXBJMm1sQnRCOztBb0k3bWxCQTtFQUtZLHlCckgvSjZDO0FmMndsQnpEOztBb0l2bWxCQTtFQUNJLFlBQVk7RUFDWixVQUFVO0VBQ1YsV0FBVztFQUNYLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsNkJBQTZCO0VBQzdCLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIsb0JBQW9CO0VBQ3BCLDhCQUEyQjtBcEkwbWxCL0IiLCJmaWxlIjoiMS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKlxuXG5cbiAgIE1hZ2ljIDM2MCB2NC42LjggXG4gICBDb3B5cmlnaHQgMjAxNyBNYWdpYyBUb29sYm94XG4gICBCdXkgYSBsaWNlbnNlOiBodHRwczovL3d3dy5tYWdpY3Rvb2xib3guY29tL21hZ2ljMzYwL1xuICAgTGljZW5zZSBhZ3JlZW1lbnQ6IGh0dHBzOi8vd3d3Lm1hZ2ljdG9vbGJveC5jb20vbGljZW5zZS9cblxuXG4qL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnbWFnaWMzNjAnO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHNyYzogdXJsKFwiLi4vbWFnaWMtdG9vbGJveC1mb250cy9tYWdpYzM2MC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdtYWdpYzM2MCc7XG4gIHNyYzogdXJsKFwiZGF0YTphcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07YmFzZTY0LGQwOUdSZ0FCQUFBQUFBNUlBQThBQUFBQUdWQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCSFUxVkNBQUFCV0FBQUFETUFBQUJDc1A2ejdVOVRMeklBQUFHTUFBQUFRd0FBQUZZK0lFa0ZZMjFoY0FBQUFkQUFBQUNBQUFBQ0NxbTE3U3RqZG5RZ0FBQUNVQUFBQUFvQUFBQUtBQUFBQUdad1oyMEFBQUpjQUFBRmxBQUFDM0NJa0pCWloyRnpjQUFBQi9BQUFBQUlBQUFBQ0FBQUFCQm5iSGxtQUFBSCtBQUFBMXNBQUFVZ1FYL2g4V2hsWVdRQUFBdFVBQUFBTUFBQUFEWUpQYW9WYUdobFlRQUFDNFFBQUFBZEFBQUFKQWM5QTE5b2JYUjRBQUFMcEFBQUFCOEFBQUEwTEhVQUFHeHZZMkVBQUF2RUFBQUFIQUFBQUJ3SHJnajJiV0Y0Y0FBQUMrQUFBQUFnQUFBQUlBQ2pDN051WVcxbEFBQU1BQUFBQVhjQUFBTE56SjBjSG5CdmMzUUFBQTE0QUFBQVp3QUFBTzB0N1JQRmNISmxjQUFBRGVBQUFBQmxBQUFBZTkxckE0VjRuR05nWkdCZzRHS1FZOUJoWUhSeDh3bGg0R0JnWVlBQWtBeGpUbVo2SWxBTXlnUEtzWUJwRGlCbWc0Z0NBSW9qQTA4QWVKeGpZR1RPWnB6QXdNckF3RlRGdEllQmdhRUhRak0rWURCa1pBS0tNckF5TTJBRkFXbXVLUXdPTHhoZWNETUgvYzlpaUdJT1lwZ0dGR1lFeVFFQTRxZ0xvd0I0bk8yUjNRMENNUXlEdjNMaCtMbU93Z0FNeEJOVE1aNjNPSnhjSkphZzBtY3BidG9IR3pnRGkzbVlnUEZta09kbGQ1Uy9jQzgvZU5aT3BLOXQzNjJrZW83U2szZkRQNjVjdUhMenU0M3BpNVgvbWFXZjN5UU9LczNHQ2FJbVcxR1QrYXJKeHRRNGFkUTRjOVE0ZmRTNEI5UmtrMnJjalZzOFlINEJzOEFmY1FBQUFBQUFBQUFBQUFBQUFIaWNyVlpwY3hOSEVKM1ZZY3MyUG9JUEVqYUJXY1p5akhaV21Nc0lFTWJzU2hiZ0hQS1Y3RUtPWFV0MjdvdFAvQWI5bWw2UlZKRnYvTFM4SGgzWVlDZFZWQ2hLL2FiMzdVejM2NTVlazlDU3hGNVlqNlRjZkNtbXRqWnBaT2RKU0Rkc1dvN2lROW5aQ3lsVFRQNHVpSUpvdGRTKzdUZ2tJaEtCcW5XRkpZTFk5OGpTSk9ORGp6SmF0aVc5YWxKdTZVbDMyUm9QNnEzNjl0UFFVWTdkQ1NVMW02RkQ2NUV0cWNLb0VrVXk3WkdTTmkzRDFWOUpXdUhuSzh4ODFRd2xndWdra3NhYllReVA1R2ZqakZZWnJjWjJIRVdSVFpZYlJZcEVNenlJSW8reVdtS2ZYREZCUVBtZ0dWSmUrVFNpZklRZmtSVjdsTk1LY2NsMm10LzNKVC9wSGM2L0pPSjZpN0lsQi81QWRtUUhlNmNyK1NMUzJncmpwcDFzUjZHSzhIUjlKOFFqbTVQcW4reFJYdE5vNEhaRnBpZk5DSmJLVjVCWStRbGw5Zy9KYXVGOHlwYzhHdFdTZzV3SVdpOXpZbC95RHJRZVIweUpheWJJZ3U2T1RvaWc3cGVjb2RoaityajQ0NzFkTEJjaEJNZzRsdldPU3JnUVJpbGhzNW9rYlFRNWlKS3lSWlhVZWtkTW5QSTZMZUl0WWI5TzdlaExaN1JKcURzeG5xMkhqcTJjcU9SNE5LblRUS1pPN2FUbTBaUUdVVW82RXp6bTF3R1VIOUVrcjdheG1zVEtvMmxzTTJNa2tWQ2doWE5wS29obEo1WTBCZEU4bXRHYnUyR2FhOWVpUlpvOFVNODllazl2Ym9XYk96Mm43Y0EvYS94bmRTcW1nNzB3blo0T3lFcDhtbmE1U2RHNmZucUdmeWJ4UTlZQ0twRXROc09VeFVPMmZnZmw1V05ManNKckEyejNudk1yNkgzMlJNaWtnZmdiOEI0djFTa0ZUSVdZVlZBTDNiVFd0U3pMMUdwV2kxUms2cnNoVFN0ZjFta0NUVGtPZldOZnhqaityNWtaUzB3SjMrL0U2ZGtSbDU2NTlpWElOSWZjWmwyUDVuVnFzVjJBem16UDZUVEw5bjJkNXRoK29OTTgyL002SFdGcjYzU1U3WWM2TGJEOVNLZGpiQzlvUVpQdU93UnlFWUZjd0FZU2diQjFFQWpiU3dpRXJVSWdiQmNSQ05zaUFtRzdoRURZZm94QTJDNGpFTGFYdGF5YWZpcHBIRHNUeXdCRmlBT2pPZTdJWlc0cVYxUEpwUkt1aTBhbk51UXBjcXVrb25oVy9Tc0QvZUtSTjZ5QnRVQzZSTmI4aWttdWZGU1Y0NCt1YUhuVHhMa0NqbFYvZTNOY254TVBaYjlZK0ZQd3Y5cWFxcVJYckhsa2NoVjVJOUNUNDBUWEpoV1BydW55dWFwSDEvK0xpZzVyZ1g0RHBSQUxSVm1XRGI2WmtQQlJwOU5RRFZ6bEVETWJNdy9YOWJwbHpjL2gvSnNZSVF2b2Z2dzNGQm9MM0lOT1dVbFo3V0N2MWRlUFpibTNCK1d3SjFpU1lyN002MXZoaTR6TVN2dEZaaWw3UHZKNXdCVXdLcFZocXcxY3JlRE5leEx6a09sTjhrd1F0eFZsZzZTTng1a2dzWUZqSGpCdnZwTWdKRXhkdFlIYUtaeXdnYnhnekNuWTc0UkRWRytVNVhCN29YMGVqWlIvYTFmc3lCa1ZUUkQ0YmZaRzJPdXpVUEpicklHRUo3L1UxMEJWSVUzRnVLbUFTeVBsaG1yd1lWeXQyMFl5VHFDdnFOZ055N0tLRHg5SDNIZEtqbVVnK1VnUnEwZEhQNjI5UXAzVXVmM0tLRzdmTy8wSWdrRnBZdjcydnBuaW9KUjN0WkpsVm0wRFU3Y2FsVlBYbXNQRnF3N2R6YVB1ZThmWkozTFdOTjEwVDl6MHZxWlZ0NE9EdVZrUTdkc2NsS1ZNTHFqcnd3NGJxTXZOcGREcVpWeVMzbllQTUN3d29OK2hGUnYvVi9keCtEeFhxZ3FqNDBpOW5hZ2ZvODlpRFBJUE9IOUg5UVhvNXpGTXVZYVU1M3VYRTU5dTNNUFpNbDNGWGF5ZjR0L0FyTFhtWnVrYWNFUFREWmlIckZvZHVzb05mS2NHT2ozUzNJNzBFUEN4N2dyeEFHQVR3R0x3aWU1YXh2TXBnUEY4eGh3ZjRIUG1NR2d5aDhFV2N4aHNNMmNOWUljNURIYVp3MkNQT1F5K1lNNDZ3SmZNWVJBeWgwSEVIQVpQbUJNQVBHVU9nNitZdytCcjVqRDRoam4zQWI1bERvT1lPUXdTNWpEWTEzUnJLSE9MRjNRWHFHMVFGZWpBOUJNVzk3QTQxRlFac3IvamhXRi9ieEN6ZnpDSXFUOXF1ajJrL3NRTFEvM1pJS2IrWWhCVGY5VjBaMGo5alJlRytydEJUUDNESUtZKzB5L0djcG5CWDBhK1M0VUR5aTQybi9QM3hQc0h3aHBBdGdBQkFBSC8vd0FQZUp5RmxNOXZFMGNVeCtmTlpIY1RoOWhadk40RlFVbWNDQzlTQ0s3SWo1VUFOWWtqRlpzRGEzTkNITkdLSCtGQVNUZ2dCTjUxeUFIMVFtU3RJRUtSbWt1clhpbzFha3V5RVFnT3VkamNMQTVWUVlRZWloQi9BaUlMYjJadGZpbW9sM2t6Yjk1OFA5L1ptVmxDQ1huM2hPMmdyNGxNdWtqN1h6R2xqZERCQVVpcnBtSmFZQ2hHV2pYZ0dSeHhxczVDdU9Rc1hBM1hIZm82WEwrMjRGVERYekFMUjY0U1Fyak9JcHRqdlUyZHJnNEpVTWN5aFJBSUdXdHhDdmJoQ2paMzkxejRqek5mZGNLL3B4WWRlbi9lZ2N5NXU2UU5OWDVpdDlnM1FrTWp1MGpYZUV4UGJlL2VwbEJvR3h6WWE2bHBDMDBwaG1JcWFsTVRoRkdUZGJ2aHN1ZlpZYVBpRmNzZTJKVUtIOVBycm1lNzNrVXYvSDNXdGVrQjF5MTZGYkEzYjdpelVNVHBBK0V5MXJ2dS83TVZOWTFjUUw1aHFSRHRDNUNQWDRnK1FwN3IybThibm11WEJSZjVMbXg0M3ZHeW0rYWtpazJ6bGJKZFJwTmhiNFc3bWFWWlhJU3B5dGJzWFVZeTBkVWhVN0h2VkwvWTk4Z1F0MkFPcFhETFRESDZSd3lMSGMxdjVGZnR6Y2Npd0VzUk5sWjVzUEl2OG9FTmQ2SVpSWVR3Um9EWlZiSTFjMmRLNjI0eFd6RGNiZ0tZSmFEQWlZWkNiMGJNbS9mc2xRSTgvMEhRNk1NWGhSVjc1U1QyQTV0ZVdiSHZmZjhjd3Q2QWoybjIzenpXa3VZOVdXYW5XQ2ZaUWI3RmV6S1kxdHI1ZmRNU1lPaWFyUFQzWmN5UjRlK2dCNnpSZ3oyZ1EwcUxReFlVdVM4TG1lRXhNRFBEbzliUVFSMStsb0ppVEV1OFNXaWc3KzRzQm5KY0hwZmdUNjIzbzltWDFrcGlYZ2VwWFFwS3NUMVlHTWR5dWcwTDVERVpubjR5aU12TmlwYkhnSjFnakJqQzQvNmVwUENZMHVUTUYxWU9BMXBwZWgrQXZvdzFNanlxZi9EK0d6b3JCVkszTkNiTFFiRVQ4WEUwL3JHcjdZbVZ1RmswY3dqSHRLTzBKa25qV0k4VnUzVWR6aXR5MUl0L01pdk9EazFlb1A3bjkwV054eFJHOE95U1puUjRocmdpZTAxeGVHcDBpZFl1RlJyNW1jbkptWHlqQUdjbWVPQ0pDYmh6dWRBb3pQeVJtOGJNZnhNem1BeC94V1k2MStMTjBhV3Y4UXlobll4QUVHSFZ5RU51bXN2bmNvSjM2eU9QTGwwK2huSHp3U1EzUkZVeEU1N0c1dEprNnd5bTJDdDI0c1AvaFBIL1VpcDZjY25vL2ZuMStaby9VZk1oOE91M3Nhbk4xMzM2WTkwUGovcTFMVFJpaWt5NXhtZVBsNit1MXVCc3RWNnQrVzMxS2w4TGI3Z1lac2g3ZndOTnJnQjRuR05nWkdCZ0FPSTlmZ0sxOGZ3Mlh4bTRtVjhBUlJndVN4dGJJZWovV2N3dm1JT0FYQTRHSnBBb0FCUjFDWmg0bkdOZ1pHQmdEdnFmQlNSZk1ERDgvdzhrZ1NJb2dCY0FoOVlGb2dBQUFIaWNZMzdCd01Bc0FjUXRRTHdBRFVkQ01GTTJFSVBrWDBBd0FNTkRCNXNBQUFBQUFBQWtBRVlBaEFEQ0FQd0JPQUdLQWRvQ0VnSk1BbTRDa0FBQkFBQUFEUUF4QUFRQUFBQUFBQUlBQUFBUUFITUFBQUFlQzNBQUFBQUFlSngxa010T3drQVVoditSaXdxSkdrM2NPaXNETVpaTElnc1NFaElNYkhSRERGdFRTbWxMU29kTUJ4SmV3M2Z3WVh3Sm44V2ZkakFHWXB2cGZPZWJNMmRPQjhBMXZpR1FQMDhjT1F1Y01jcjVCS2ZvV1M3UVAxc3VrbDhzbDFERm0rVXkvYnZsQ2g0UVdLN2lCaCtzSUlybmpCYjR0Q3h3SlM0dG4rQkMzRmt1MEQ5YUxwSjdsa3U0RmErV3kvU2U1UW9tSXJWY3hiMzRHcWpWVmtkQmFHUnRVSmZ0WnFzanAxdXBxS0xFamFXN05xSFNxZXpMdVVxTUg4Zks4ZFJ5ejJNL1dNZXUzb2Y3ZWVMck5GS0piRG5OdlJyNWlhOWQ0ODkyMWROTjBEWm1MdWRhTGVYUVpzaVZWZ3ZmTTA1b3pLcmJhUHc5RHdNb3JMQ0ZSc1NyQ21FZ1VhT3RjMjZqaVJZNnBDa3pKRFB6ckFnSlhNUTBMdGJjRVdZcktlTSt4NXhSUXVzekl5WTc4UGhkSHZreEtlRCttRlgwMGVwaFBDSHR6b2d5TDltWHcrNE9zMGFrSk10ME16djc3VDNGaHFlMWFRMTM3YnJVV1ZjU3c0TWFrdmV4VzF2UWVQUk9kaXVHdG9zRzMzLys3d2ZqYVlSUEFIaWNiY3c3Q29Bd0VBVFFIZisvUkMrU0lva1hzbEFRMXNabzQra1Z0TWlDVXczN21LV0UzalQwSDRVRUtUTGtLRkNpUW8wR0xUb29hR3IzT2F6WGJKYVRXWDg5YkJPenNTb2lZN3NZKzVnbVBnYXhmQTVpNitSako5Qkw5QUpIaVNQUkRWb0xQc1VBZUp4ajhON0JjQ0lvWWlNalkxL2tCc2FkSEF3Y0RNa0ZHeGxZblRZeU1HaEJhQTRVZWljREF3TW5Nb3Vad1dXakNtTkhZTVFHaDQ2SWpjd3BMaHZWUUx4ZEhBME1qQ3dPSGNraEVTQWxrVUN3a1lGSGF3ZmovOVlOTEwwYm1SaGNBQWZUSXJnQUFBQT1cIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiZGF0YTphcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07YmFzZTY0LEFBRUFBQUFQQUlBQUF3QndSMU5WUXJEK3MrMEFBQUQ4QUFBQVFrOVRMekkrSUVrRkFBQUJRQUFBQUZaamJXRndxYlh0S3dBQUFaZ0FBQUlLWTNaMElBQUFBQUFBQUExWUFBQUFDbVp3WjIySWtKQlpBQUFOWkFBQUMzQm5ZWE53QUFBQUVBQUFEVkFBQUFBSVoyeDVaa0YvNGZFQUFBT2tBQUFGSUdobFlXUUpQYW9WQUFBSXhBQUFBRFpvYUdWaEJ6MERYd0FBQ1B3QUFBQWthRzEwZUN4MUFBQUFBQWtnQUFBQU5HeHZZMkVIcmdqMkFBQUpWQUFBQUJ4dFlYaHdBS01Mc3dBQUNYQUFBQUFnYm1GdFpjeWRIQjRBQUFtUUFBQUN6WEJ2YzNRdDdSUEZBQUFNWUFBQUFPMXdjbVZ3M1dzRGhRQUFHTlFBQUFCN0FBRUFBQUFLQUI0QUxBQUJSRVpNVkFBSUFBUUFBQUFBQUFBQUFRQUFBQUZzYVdkaEFBZ0FBQUFCQUFBQUFRQUVBQVFBQUFBQkFBZ0FBUUFHQUFBQUFRQUFBQUFBQVFOckFaQUFCUUFBQW5vQ3ZBQUFBSXdDZWdLOEFBQUI0QUF4QVFJQUFBSUFCUU1BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVVHWkZaQUJBNkFEb0N3TlMvMm9BV2dOU0FKWUFBQUFCQUFBQUFBQUFBQUFBQlFBQUFBTUFBQUFzQUFBQUJBQUFBV29BQVFBQUFBQUFaQUFEQUFFQUFBQXNBQU1BQ2dBQUFXb0FCQUE0QUFBQUJBQUVBQUVBQU9nTC8vOEFBT2dBLy84QUFBQUJBQVFBQUFBQkFBSUFBd0FFQUFVQUJnQUhBQWdBQ1FBS0FBc0FEQUFBQVFZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBREFBQUFBQUFvQUFBQUFBQUFBQU1BQURvQUFBQTZBQUFBQUFCQUFEb0FRQUE2QUVBQUFBQ0FBRG9BZ0FBNkFJQUFBQURBQURvQXdBQTZBTUFBQUFFQUFEb0JBQUE2QVFBQUFBRkFBRG9CUUFBNkFVQUFBQUdBQURvQmdBQTZBWUFBQUFIQUFEb0J3QUE2QWNBQUFBSUFBRG9DQUFBNkFnQUFBQUpBQURvQ1FBQTZBa0FBQUFLQUFEb0NnQUE2QW9BQUFBTEFBRG9Dd0FBNkFzQUFBQU1BQUFBQWdBQS85UURHQUxxQUFZQURRQUl0UW9IQkFBQ0xTc0JJUkVuQnljM0FSY0hGeUVSRndIY0FUeGtrbVNZL3FCa21Icit4R1FDNnY3RWZKaGtrdjZtWkpKa0FUeDZBQUFBQWdBQS81d0RoQU1nQUFZQURRQUl0UTBKQlFFQ0xTczNKeUVSSndjbkFRY1hJUkVYTjV4cUFTaGtrbVFEaEpwby90cGtrSkprL3RocW5HUUN2SkJrQVNab21nQUVBQUQvbndPUEF4MEFCZ0FOQUJRQUd3QU5RQW9XRlJJUURBY0NBUVF0S3lVM0VTRTNKemNCQnhjSEp3Y1JBUWNYSVJFWE53RVJKd2NuTnljREVILytzWUNBVC83U2dZQlFmb0FCVDRHQi9yR0FnQUo5ZjRCUGY0QnZnUDZ3Z245UEFpNS9mMUNBZ1FGUC9ZTi9nZ0ZRZ0lBQ0x2NnhnWUJRZjM4QUJBQUEvNThEandNZEFBWUFEUUFVQUJzQURVQUtGaFVTRUF3SEFnRUVMU3NsQnhFaEJ4Y0hBVGNuTnhjM0VRRTNKeUVSSndjQkVSYzNGd2NYQXNDQUFVOS9mMC84MG9CL1QzNkIvckdBZ0FGUGdYOEIzNENBVG41L0lZSUJVSUNCVHdJdmdYNVBmbi8rc2Y0Z2dZRCtzSUtDQWk4QlQzOStUMzZCQUFRQUFQK2ZBNDhESFFBR0FBMEFGQUFiQUExQUNoc1hFdzhOQ1FZQ0JDMHJKVGNWSXpjbk53RUhOVE1IRndjQkp6TVZKd2NuQXdjWEl6VVhOd05IU045SXVFLzl5MGpmU0xoUEFlWkkzMGk0VDkrNFNOOUl1RGRJNEVpNVR3R1hTTjlJdUU4QkIwamZTTGhQL29PNVNPQkl1QUFBQkFBQS81OERqd01kQUFZQURRQVVBQnNBRFVBS0dSVVVFQTBKQmdJRUxTc2xCelV6QnhjSEFTYzNGemNQQVFNM0p6TVZKd2NCSXpVWE54Y0hBb2hJMzBpNFQvMkl0ayszU1FIZWNMaEkzMGk0QXIvZ1NiZFB0MWhJMzBpNVR3SjR0MCsyUnQ0Qi9pQzVTTjlJdVFJdjRVaTJUN2NBQUFBQUFnQUEvN0VEV2dNTEFCZ0FNQUFJdFMwaEZBZ0NMU3NCRkE4QkZ4WVVCZ2NqSWlZbk5UUStBUjhCTnpZeUh3RVdBUlVVRGdFdkFRY0dJaThCSmpRL0FTY21ORFkzTXpJV0FhVUZ1VkFLRkEvNkR4UUJGaHdMVUxrR0RnWkFCUUcwRkNBSlVMa0dEZ1pBQlFXNlVRb1VEL29QRmdFRkNBVzVVUW9lRkFFV0R2b1BGQUlNVUxrR0JqOEdBZHY2RHhRQ0RGQzVCZ1kvQmc0R3VWRUtIaFFCRmdBQUFBQUNBQUQvdVFOU0F3TUFGd0F3QUFpMUxCOFRDQUl0S3dFVkZBWW1Md0VIQmlJdkFTWTBQd0VuSmpRMk93RXlGZ0VVRHdFWEZoUUdLd0VpSmpjMU5EWVdId0UzTmpJZkFSWUJyUlljQzFHNUJSQUZQd1lHdVZBTEZnNzZEaFlCcFFhNVVBc1dEdm9PRmdFVUhncFJ1UVlPQmo4R0FUcjZEaFlDQ1ZHNkJRVkFCUkFGdVZBTEhCWVdBV2tIQnJsUUN4d1dGZzc2RGhZQ0NWRzZCUVZBQlFBQUJBQUFBQUFDYXdLVUFBWUFEUUFVQUJzQURVQUtHeGNSRGdvSEF3QUVMU3NUSndjMU13Y1hCeGNIRnlNMUZ5VW5OeWN6RlNjUk54VWpOeWMzdW5GSjBraHpRME56U05KSkFXWkJjMGpTU1VuU1NITkJBWmQwU2RKSmM3TkNja2pTU2VWQmMwblNTUDZvU2RKSWNrSUFBQVFBQUFBQUFvUUNvQUFHQUEwQUZBQWJBQTFBQ2hzWEVRNEtCd01BQkMwckV4YzNGU00zSnhNbk55Y3pGU2NCRndjWEl6VVhFUWMxTXdjWEIwSnlTZEpJYzBKQ2MwalNTUUdQUVhOSTBrbEowa2h6UVFLZ2RFclNTSFA5dlVOeFNkSklBaEZCYzBqU1NmNWlTTkpKY1VNQUFBQUFBZ0FBLzJvRDZBTlNBQVlBRFFBSXRRMEpBd0FDTFNzVkVSYzNGd2NYRXpjbklSRW5CNVRLa01tVVFjbVVBYm1VeXBZQnVaVEprTXFVQW9yS2xQNUhsTWtBQUFBQ0FBRC9hZ1BvQTFJQUJnQU5BQWkxQ2djR0FnSXRLeFUzSnlFUkp3Y0JFUmMzRndjWHlaUUJ1WkxKQVdlU3lwTEpsQVRLa3Y1SGxNa0IrZ0c1bE1tU3lwSUFBQUVBQUFBQkFBQzhUaEI5WHc4ODlRQUxBK2dBQUFBQTB4c3pPZ0FBQUFEVEd6TTZBQUQvYWdQb0ExSUFBQUFJQUFJQUFBQUFBQUFBQVFBQUExTC9hZ0FBQStnQUFQLy9BK2dBQVFBQUFBQUFBQUFBQUFBQUFBQUFBQTBENkFBQUF4Z0FBQU9FQUFBRG9BQUFBNkFBQUFPZ0FBQURvQUFBQTFrQUFBTlpBQUFDYXdBQUFvUUFBQVBvQUFBRDZBQUFBQUFBQUFBa0FFWUFoQURDQVB3Qk9BR0tBZG9DRWdKTUFtNENrQUFCQUFBQURRQXhBQVFBQUFBQUFBSUFBQUFRQUhNQUFBQWVDM0FBQUFBQUFBQUFFZ0RlQUFFQUFBQUFBQUFBTlFBQUFBRUFBQUFBQUFFQUNBQTFBQUVBQUFBQUFBSUFCd0E5QUFFQUFBQUFBQU1BQ0FCRUFBRUFBQUFBQUFRQUNBQk1BQUVBQUFBQUFBVUFDd0JVQUFFQUFBQUFBQVlBQ0FCZkFBRUFBQUFBQUFvQUt3Qm5BQUVBQUFBQUFBc0FFd0NTQUFNQUFRUUpBQUFBYWdDbEFBTUFBUVFKQUFFQUVBRVBBQU1BQVFRSkFBSUFEZ0VmQUFNQUFRUUpBQU1BRUFFdEFBTUFBUVFKQUFRQUVBRTlBQU1BQVFRSkFBVUFGZ0ZOQUFNQUFRUUpBQVlBRUFGakFBTUFBUVFKQUFvQVZnRnpBQU1BQVFRSkFBc0FKZ0hKUTI5d2VYSnBaMmgwSUNoREtTQXlNREUySUdKNUlHOXlhV2RwYm1Gc0lHRjFkR2h2Y25NZ1FDQm1iMjUwWld4c2J5NWpiMjFtYjI1MFpXeHNiMUpsWjNWc1lYSm1iMjUwWld4c2IyWnZiblJsYkd4dlZtVnljMmx2YmlBeExqQm1iMjUwWld4c2IwZGxibVZ5WVhSbFpDQmllU0J6ZG1jeWRIUm1JR1p5YjIwZ1JtOXVkR1ZzYkc4Z2NISnZhbVZqZEM1b2RIUndPaTh2Wm05dWRHVnNiRzh1WTI5dEFFTUFid0J3QUhrQWNnQnBBR2NBYUFCMEFDQUFLQUJEQUNrQUlBQXlBREFBTVFBMkFDQUFZZ0I1QUNBQWJ3QnlBR2tBWndCcEFHNEFZUUJzQUNBQVlRQjFBSFFBYUFCdkFISUFjd0FnQUVBQUlBQm1BRzhBYmdCMEFHVUFiQUJzQUc4QUxnQmpBRzhBYlFCbUFHOEFiZ0IwQUdVQWJBQnNBRzhBVWdCbEFHY0FkUUJzQUdFQWNnQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVpnQnZBRzRBZEFCbEFHd0FiQUJ2QUZZQVpRQnlBSE1BYVFCdkFHNEFJQUF4QUM0QU1BQm1BRzhBYmdCMEFHVUFiQUJzQUc4QVJ3QmxBRzRBWlFCeUFHRUFkQUJsQUdRQUlBQmlBSGtBSUFCekFIWUFad0F5QUhRQWRBQm1BQ0FBWmdCeUFHOEFiUUFnQUVZQWJ3QnVBSFFBWlFCc0FHd0Fid0FnQUhBQWNnQnZBR29BWlFCakFIUUFMZ0JvQUhRQWRBQndBRG9BTHdBdkFHWUFid0J1QUhRQVpRQnNBR3dBYndBdUFHTUFid0J0QUFBQUFBSUFBQUFBQUFBQUNnQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRFFFQ0FRTUJCQUVGQVFZQkJ3RUlBUWtCQ2dFTEFRd0JEUUVPQUF0eVpYTnBlbVV0Wm5Wc2JBNXlaWE5wZW1VdGMyMWhiR3d0TVExeVpYTnBlbVV0Wm5Wc2JDMHhESEpsYzJsNlpTMXpiV0ZzYkE5eVpYTnBlbVV0Wm5Wc2JDMWhiSFFRY21WemFYcGxMWE50WVd4c0xXRnNkQTF5WlhOcGVtVXRablZzYkMweURuSmxjMmw2WlMxemJXRnNiQzB5RFhKbGMybDZaUzFtZFd4c0xUTU9jbVZ6YVhwbExYTnRZV3hzTFRNTmNtVnphWHBsTFdaMWJHd3ROQTV5WlhOcGVtVXRjMjFoYkd3dE5BQUFBQUFBQUFFQUFmLy9BQThBQUFBQUFBQUFBQUFBQUFDd0FDd2dzQUJWV0VWWklDQkx1QUFPVVV1d0JsTmFXTEEwRzdBb1dXQm1JSXBWV0xBQ0pXRzVDQUFJQUdOakkySWJJU0d3QUZtd0FFTWpSTElBQVFCRFlFSXRzQUVzc0NCZ1ppMndBaXdnWkNDd3dGQ3dCQ1phc2lnQkNrTkZZMFZTVzFnaEl5RWJpbGdnc0ZCUVdDR3dRRmtiSUxBNFVGZ2hzRGhaV1NDeEFRcERSV05GWVdTd0tGQllJYkVCQ2tORlkwVWdzREJRV0NHd01Ga2JJTERBVUZnZ1ppQ0tpbUVnc0FwUVdHQWJJTEFnVUZnaHNBcGdHeUN3TmxCWUliQTJZQnRnV1ZsWkc3QUJLMWxaSTdBQVVGaGxXVmt0c0FNc0lFVWdzQVFsWVdRZ3NBVkRVRml3QlNOQ3NBWWpRaHNoSVZtd0FXQXRzQVFzSXlFaklTQmtzUVZpUWlDd0JpTkNzUUVLUTBWanNRRUtRN0FBWUVWanNBTXFJU0N3QmtNZ2lpQ0tzQUVyc1RBRkpiQUVKbEZZWUZBYllWSlpXQ05aSVNDd1FGTllzQUVyR3lHd1FGa2pzQUJRV0dWWkxiQUZMTEFIUXl1eUFBSUFRMkJDTGJBR0xMQUhJMElqSUxBQUkwSmhzQUppWnJBQlk3QUJZTEFGS2kyd0J5d2dJRVVnc0F0RFk3Z0VBR0lnc0FCUVdMQkFZRmxtc0FGallFU3dBV0F0c0Fnc3NnY0xBRU5GUWlvaHNnQUJBRU5nUWkyd0NTeXdBRU1qUkxJQUFRQkRZRUl0c0Fvc0lDQkZJTEFCS3lPd0FFT3dCQ1ZnSUVXS0kyRWdaQ0N3SUZCWUliQUFHN0F3VUZpd0lCdXdRRmxaSTdBQVVGaGxXYkFESlNOaFJFU3dBV0F0c0Fzc0lDQkZJTEFCS3lPd0FFT3dCQ1ZnSUVXS0kyRWdaTEFrVUZpd0FCdXdRRmtqc0FCUVdHVlpzQU1sSTJGRVJMQUJZQzJ3REN3Z3NBQWpRcklMQ2dORldDRWJJeUZaS2lFdHNBMHNzUUlDUmJCa1lVUXRzQTRzc0FGZ0lDQ3dERU5Lc0FCUVdDQ3dEQ05DV2JBTlEwcXdBRkpZSUxBTkkwSlpMYkFQTENDd0VHSm1zQUZqSUxnRUFHT0tJMkd3RGtOZ0lJcGdJTEFPSTBJakxiQVFMRXRVV0xFRVpFUlpKTEFOWlNONExiQVJMRXRSV0V0VFdMRUVaRVJaR3lGWkpMQVRaU040TGJBU0xMRUFEME5WV0xFUEQwT3dBV0ZDc0E4cldiQUFRN0FDSlVLeERBSWxRckVOQWlWQ3NBRVdJeUN3QXlWUVdMRUJBRU5nc0FRbFFvcUtJSW9qWWJBT0tpRWpzQUZoSUlvalliQU9LaUVic1FFQVEyQ3dBaVZDc0FJbFliQU9LaUZac0F4RFI3QU5RMGRnc0FKaUlMQUFVRml3UUdCWlpyQUJZeUN3QzBOanVBUUFZaUN3QUZCWXNFQmdXV2F3QVdOZ3NRQUFFeU5Fc0FGRHNBQStzZ0VCQVVOZ1FpMndFeXdBc1FBQ1JWUllzQThqUWlCRnNBc2pRckFLSTdBQVlFSWdZTEFCWWJVUUVBRUFEZ0JDUW9wZ3NSSUdLN0J5S3hzaVdTMndGQ3l4QUJNckxiQVZMTEVCRXlzdHNCWXNzUUlUS3kyd0Z5eXhBeE1yTGJBWUxMRUVFeXN0c0Jrc3NRVVRLeTJ3R2l5eEJoTXJMYkFiTExFSEV5c3RzQndzc1FnVEt5MndIU3l4Q1JNckxiQWVMQUN3RFN1eEFBSkZWRml3RHlOQ0lFV3dDeU5Dc0FvanNBQmdRaUJnc0FGaHRSQVFBUUFPQUVKQ2ltQ3hFZ1lyc0hJckd5SlpMYkFmTExFQUhpc3RzQ0Fzc1FFZUt5MndJU3l4QWg0ckxiQWlMTEVESGlzdHNDTXNzUVFlS3kyd0pDeXhCUjRyTGJBbExMRUdIaXN0c0NZc3NRY2VLeTJ3Snl5eENCNHJMYkFvTExFSkhpc3RzQ2tzSUR5d0FXQXRzQ29zSUdDd0VHQWdReU93QVdCRHNBSWxZYkFCWUxBcEtpRXRzQ3Nzc0NvcnNDb3FMYkFzTENBZ1J5QWdzQXREWTdnRUFHSWdzQUJRV0xCQVlGbG1zQUZqWUNOaE9DTWdpbFZZSUVjZ0lMQUxRMk80QkFCaUlMQUFVRml3UUdCWlpyQUJZMkFqWVRnYklWa3RzQzBzQUxFQUFrVlVXTEFCRnJBc0tyQUJGVEFiSWxrdHNDNHNBTEFOSzdFQUFrVlVXTEFCRnJBc0tyQUJGVEFiSWxrdHNDOHNJRFd3QVdBdHNEQXNBTEFCUldPNEJBQmlJTEFBVUZpd1FHQlpackFCWTdBQks3QUxRMk80QkFCaUlMQUFVRml3UUdCWlpyQUJZN0FCSzdBQUZyUUFBQUFBQUVRK0l6aXhMd0VWS2kyd01Td2dQQ0JISUxBTFEyTzRCQUJpSUxBQVVGaXdRR0JaWnJBQlkyQ3dBRU5oT0Myd01pd3VGend0c0RNc0lEd2dSeUN3QzBOanVBUUFZaUN3QUZCWXNFQmdXV2F3QVdOZ3NBQkRZYkFCUTJNNExiQTBMTEVDQUJZbElDNGdSN0FBSTBLd0FpVkppb3BISTBjallTQllZaHNoV2JBQkkwS3lNd0VCRlJRcUxiQTFMTEFBRnJBRUpiQUVKVWNqUnlOaHNBbERLMldLTGlNZ0lEeUtPQzJ3Tml5d0FCYXdCQ1d3QkNVZ0xrY2pSeU5oSUxBRUkwS3dDVU1ySUxCZ1VGZ2dzRUJSV0xNQ0lBTWdHN01DSmdNYVdVSkNJeUN3Q0VNZ2lpTkhJMGNqWVNOR1lMQUVRN0FDWWlDd0FGQllzRUJnV1dhd0FXTmdJTEFCS3lDS2ltRWdzQUpEWUdRanNBTkRZV1JRV0xBQ1EyRWJzQU5EWUZtd0F5V3dBbUlnc0FCUVdMQkFZRmxtc0FGallTTWdJTEFFSmlOR1lUZ2JJN0FJUTBhd0FpV3dDRU5ISTBjallXQWdzQVJEc0FKaUlMQUFVRml3UUdCWlpyQUJZMkFqSUxBQkt5T3dCRU5nc0FFcnNBVWxZYkFGSmJBQ1lpQ3dBRkJZc0VCZ1dXYXdBV093QkNaaElMQUVKV0JrSTdBREpXQmtVRmdoR3lNaFdTTWdJTEFFSmlOR1lUaFpMYkEzTExBQUZpQWdJTEFGSmlBdVJ5TkhJMkVqUERndHNEZ3NzQUFXSUxBSUkwSWdJQ0JHSTBld0FTc2pZVGd0c0Rrc3NBQVdzQU1sc0FJbFJ5TkhJMkd3QUZSWUxpQThJeUVic0FJbHNBSWxSeU5ISTJFZ3NBVWxzQVFsUnlOSEkyR3dCaVd3QlNWSnNBSWxZYmtJQUFnQVkyTWpJRmhpR3lGWlk3Z0VBR0lnc0FCUVdMQkFZRmxtc0FGallDTXVJeUFnUElvNEl5RlpMYkE2TExBQUZpQ3dDRU1nTGtjalJ5TmhJR0N3SUdCbXNBSmlJTEFBVUZpd1FHQlpackFCWXlNZ0lEeUtPQzJ3T3l3aklDNUdzQUlsUmxKWUlEeFpMckVyQVJRckxiQThMQ01nTGthd0FpVkdVRmdnUEZrdXNTc0JGQ3N0c0Qwc0l5QXVSckFDSlVaU1dDQThXU01nTGthd0FpVkdVRmdnUEZrdXNTc0JGQ3N0c0Q0c3NEVXJJeUF1UnJBQ0pVWlNXQ0E4V1M2eEt3RVVLeTJ3UHl5d05pdUtJQ0E4c0FRalFvbzRJeUF1UnJBQ0pVWlNXQ0E4V1M2eEt3RVVLN0FFUXk2d0t5c3RzRUFzc0FBV3NBUWxzQVFtSUM1SEkwY2pZYkFKUXlzaklEd2dMaU00c1NzQkZDc3RzRUVzc1FnRUpVS3dBQmF3QkNXd0JDVWdMa2NqUnlOaElMQUVJMEt3Q1VNcklMQmdVRmdnc0VCUldMTUNJQU1nRzdNQ0pnTWFXVUpDSXlCSHNBUkRzQUppSUxBQVVGaXdRR0JaWnJBQlkyQWdzQUVySUlxS1lTQ3dBa05nWkNPd0EwTmhaRkJZc0FKRFlSdXdBME5nV2JBREpiQUNZaUN3QUZCWXNFQmdXV2F3QVdOaHNBSWxSbUU0SXlBOEl6Z2JJU0FnUmlOSHNBRXJJMkU0SVZteEt3RVVLeTJ3UWl5d05Tc3VzU3NCRkNzdHNFTXNzRFlySVNNZ0lEeXdCQ05DSXppeEt3RVVLN0FFUXk2d0t5c3RzRVFzc0FBVklFZXdBQ05Dc2dBQkFSVVVFeTZ3TVNvdHNFVXNzQUFWSUVld0FDTkNzZ0FCQVJVVUV5NndNU290c0VZc3NRQUJGQk93TWlvdHNFY3NzRFFxTGJCSUxMQUFGa1VqSUM0Z1Jvb2pZVGl4S3dFVUt5MndTU3l3Q0NOQ3NFZ3JMYkJLTExJQUFFRXJMYkJMTExJQUFVRXJMYkJNTExJQkFFRXJMYkJOTExJQkFVRXJMYkJPTExJQUFFSXJMYkJQTExJQUFVSXJMYkJRTExJQkFFSXJMYkJSTExJQkFVSXJMYkJTTExJQUFENHJMYkJUTExJQUFUNHJMYkJVTExJQkFENHJMYkJWTExJQkFUNHJMYkJXTExJQUFFQXJMYkJYTExJQUFVQXJMYkJZTExJQkFFQXJMYkJaTExJQkFVQXJMYkJhTExJQUFFTXJMYkJiTExJQUFVTXJMYkJjTExJQkFFTXJMYkJkTExJQkFVTXJMYkJlTExJQUFEOHJMYkJmTExJQUFUOHJMYkJnTExJQkFEOHJMYkJoTExJQkFUOHJMYkJpTExBM0t5NnhLd0VVS3kyd1l5eXdOeXV3T3lzdHNHUXNzRGNyc0R3ckxiQmxMTEFBRnJBM0s3QTlLeTJ3Wml5d09Dc3VzU3NCRkNzdHNHY3NzRGdyc0RzckxiQm9MTEE0SzdBOEt5MndhU3l3T0N1d1BTc3RzR29zc0RrckxyRXJBUlFyTGJCckxMQTVLN0E3S3kyd2JDeXdPU3V3UENzdHNHMHNzRGtyc0QwckxiQnVMTEE2S3k2eEt3RVVLeTJ3Ynl5d09pdXdPeXN0c0hBc3NEb3JzRHdyTGJCeExMQTZLN0E5S3kyd2NpeXpDUVFDQTBWWUlSc2pJVmxDSzdBSVpiQURKRkI0c0FFVk1DMEFTN2dBeUZKWXNRRUJqbG13QWJrSUFBZ0FZM0N4QUFWQ3NRQUFLckVBQlVLeEFBZ3FzUUFGUXJFQUNDcXhBQVZDdVFBQUFBa3FzUUFGUXJrQUFBQUpLckVEQUVTeEpBR0lVVml3UUloWXNRTmtSTEVtQVloUldMb0lnQUFCQkVDSVkxUllzUU1BUkZsWldWbXhBQXdxdUFIL2hiQUVqYkVDQUVRQVwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cblxuLyogQ29yZSAqL1xuLk1hZ2ljMzYwLFxuLk1hZ2ljMzYwLWNvbnRhaW5lciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmM2YzZjM7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94ICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpYzM2MC1jb250YWluZXIgLk1hZ2ljMzYwLFxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW4gLk1hZ2ljMzYwIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpYzM2MCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5NYWdpYzM2MC1jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5NYWdpYzM2MC1jb250YWluZXIgLk1hZ2ljMzYwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLk1hZ2ljMzYwLWNvbnRhaW5lciAuTWFnaWMzNjAubTM2MC1zcGluLXgge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MC5tMzYwLXNwaW4teSB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG5cbi5NYWdpYzM2MC5kZXNrdG9wLnpvb20taW4ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogLXdlYmtpdC16b29tLWluO1xuICBjdXJzb3I6IC1tb3otem9vbS1pbjtcbiAgY3Vyc29yOiB6b29tLWluO1xufVxuXG4uTWFnaWMzNjAgaW1nIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLk1hZ2ljMzYwID4gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEZ1bGxzY3JlZW4gaWNvbnMgKi9cbmJ1dHRvbi5tMzYwLWljb24ge1xuICBjb2xvcjogI2I0YjRiNCAhaW1wb3J0YW50O1xuICBmb250OiBub3JtYWwgOTAwIDMwcHgvMSAnbWFnaWMzNjAnICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTAwMDAwMCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE4MCwgMTgwLCAxODAsIDApICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBzcGVhazogbm9uZTtcbiAgd2lkdGg6IDQ0cHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiA0NHB4ICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbmJ1dHRvbi5tMzYwLWljb246aG92ZXIsXG4ubW9iaWxlLW1hZ2ljIGJ1dHRvbi5tMzYwLWljb246YWN0aXZlIHtcbiAgY29sb3I6ICM1NTUgIWltcG9ydGFudDtcbiAgY29sb3I6IHJnYmEoNDksIDUxLCA2MSwgMC43NikgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm0zNjAtaWNvbjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBmb250OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm0zNjAtaWNvbi5tMzYwLWljb24tZnVsbHNjcmVlbi1vcGVuLFxuYnV0dG9uLm0zNjAtaWNvbi5tMzYwLWljb24tZnVsbHNjcmVlbi1jbG9zZSB7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICByaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubTM2MC1pY29uLm0zNjAtaWNvbi1mdWxsc2NyZWVuLWNsb3NlIHtcbiAgd2lkdGg6IDYwcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tMzYwLWljb24ubTM2MC1pY29uLWZ1bGxzY3JlZW4tb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODAwJztcbn1cblxuYnV0dG9uLm0zNjAtaWNvbi5tMzYwLWljb24tZnVsbHNjcmVlbi1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODAxJztcbn1cblxuLmx0LWllOS1tYWdpYyBidXR0b24ubTM2MC1pY29uIHtcbiAgYm9yZGVyOiAwO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIGJ1dHRvbi5tMzYwLWljb246aG92ZXIge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbn1cblxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW46LXdlYmtpdC1mdWxsLXNjcmVlbiB7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLmx0LWllNy1tYWdpYyAuTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MCB7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgei1pbmRleDogMjE0NzQ4MzY0MCAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbjotd2Via2l0LWZ1bGwtc2NyZWVuIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbjotbXMtZnVsbHNjcmVlbiB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuIC5NYWdpYzM2MCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uTWFnaWMzNjAtbWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNBQUFBQUE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiAjMDAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiA2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDMzJTtcbiAgbGVmdDogMzMlO1xuICB6LWluZGV4OiAxMDA7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4ICMwMDA7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuIC5NYWdpYzM2MC1tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMzNEO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNzYpO1xuICBib3JkZXItY29sb3I6ICNjY2M7XG4gIGNvbG9yOiAjZmZmO1xuICB0b3A6IDE1cHg7XG59XG5cbi8qKlxuICogSGludCAmIExvYWRlclxuICovXG4ubTM2MC1oaW50LW1lc3NhZ2UsXG4ubTM2MC1sb2FkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNzYpO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udDogbm9ybWFsIDE0cHgvMS4yZW0gJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsIFZlcmRhbmEsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm0zNjAtaGludCxcbi5tMzYwLWxvYWRlciB7XG4gIGRpcmVjdGlvbjogbHRyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbn1cblxuLm0zNjAtaGludCB7XG4gIGJvdHRvbTogOHB4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMCAxMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB6LWluZGV4IDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgei1pbmRleCAwLjI1cyBlYXNlO1xufVxuXG4ubTM2MC1oaW50LW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgcGFkZGluZzogLjNlbSAxLjVlbTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubTM2MC1oaW50LW1lc3NhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBSGdBQUFBcUNBWUFBQUI0SXA4dUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBMlJwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVNQzFqTURZd0lEWXhMakV6TkRjM055d2dNakF4TUM4d01pOHhNaTB4Tnpvek1qb3dNQ0FnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdUVTA5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5dGJTOGlJSGh0Ykc1ek9uTjBVbVZtUFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdmMxUjVjR1V2VW1WemIzVnlZMlZTWldZaklpQjRiV3h1Y3pwNGJYQTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzhpSUhodGNFMU5Pazl5YVdkcGJtRnNSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdlRzF3VFUwNlJHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEb3hRamhET0RNek5rTTNNRUl4TVVVelFrTXpORUpDUXpJMk9VRkdNVU5DUVNJZ2VHMXdUVTA2U1c1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRveFFqaERPRE16TlVNM01FSXhNVVV6UWtNek5FSkNRekkyT1VGR01VTkNRU0lnZUcxd09rTnlaV0YwYjNKVWIyOXNQU0pCWkc5aVpTQlFhRzkwYjNOb2IzQWdRMU0xSUZkcGJtUnZkM01pUGlBOGVHMXdUVTA2UkdWeWFYWmxaRVp5YjIwZ2MzUlNaV1k2YVc1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRwR1FUQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0lnYzNSU1pXWTZaRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSXZQaUE4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRnUEM5eVpHWTZVa1JHUGlBOEwzZzZlRzF3YldWMFlUNGdQRDk0Y0dGamEyVjBJR1Z1WkQwaWNpSS9QcTZtTmNJQUFBcWlTVVJCVkhqYTdGeDlhRlhuR2IvbmZuL2tmaWUyU3FxcEM5dWdxL1lEbkdXRjJuYXNtajhxT1A5d2hlbUdveFFIbG94MktPeXYrckV3a080VEptTVFLYVRVQnFsdHNPb2lnUkJhV1VpTmRqRnptZEZZalNSM0prWmprcHVQZS9mOFRwOVgzcDZlYys4NTk5d2J0NXY3d3N2OWZ0L25QTi9QNzNuUFZiTFpyS015eW5lNHpYNVJVWlNTRVZIdVNsWXEzcG5obTdPaTR4VUxOcTJvV2dXcnNOY1M3eFFONzdML0t3SlcyQk80YUhyNDlSek5lWnFaaXFEejhrN3dUZkFPZkp1bHVjRDhzeldjUlJLdW4yYlZ5Wk1uSCt2cjYzdXh2cjQrZ3Rlc1FFcEZqam1GRzlpMmJWdjgrdlhycjR5TmpiMEpIakx2UEVVSm9RalVacWJCQUlFaEluREYxTlRVc1N5UCtmbjV3YmEydHFmcHM2Z1pJWnVsNGY5MTV1QmQrUERodzkrZW01dnJFN3pMWkRMVGx5OWZmb1UraTlQMDV1S2RxYjF0RUtrd0FmSEp5Y2wzSU5mWjJkbGVla3lEMElXRmhhdTdkdTE2QkFxUVR4T1hvSURCT3g5NE56TXowMG04K29KNDJFeUdNY0JDbmlSTFhnY0ZZRVY0SUFKV05iQy92MzhMRVpScWIyOS9obDVYNDVFSUhnR2hkKzdjK1RPOWx5aUdKcGFaZ09IVklsZXZYdDFKMXZ2UGZmdjJmWU5lMThBZ3lFaDZ3RHNTL0NsNkw4bUtvQlFzWUJ2eHd5czBjR2hvNkZVV0pHSnY5WlVyVjM0aTNNMmhRNGUreVpwWVVEd3VRd0VMNjAyUWNDK2NPM2V1Z2QweFBGMmlzN1B6T1hoRDhLK2pvK05aNXAxenNRV01EVU93Vm1nZ0M5ZlBRZ1JCMVNLdXBGS3B0NkNkTEh5UFZTR1hvWURCdTZxelo4OCtUOWI2ZDRsM0xuNU1UazlQdDdFSC9BdC83bGxzQWFzdUJzSWJIUjNkS3lWVElENk1CQXZFaVZpTStNS0NyaW8zY0tVQUpvTlBzWW1KaWJkdjNyejVCaXUrV3dwN01TUlp6THN2MkUzNzlReWpsQUpXM1RQaVJVdEx5eHA2SG1UQk9kbHRuOHBxQnBVQnIrVnlOMHRJd0lKM3ZScmVDZmV0VmlVSWI1S2IxaldNVWdsWWRjK2JOMjlHUXZCdmV2NFFDODdQTTA2cC8rTkU0SVNjK25OR0hWeUV1bGdMdkhoNStqUlR2Ty9oN3pwTGxTTm9hRVBkdTRKRFcxd25pY0xySk53M2VNZFdIdFBMcG9zbFlCbHQ4WEV5OE5EeDQ4ZGZIaDhmLzRpZTE3R1E0eHd2bHRGY1FSYjdDeUhnZS9mdXRYSWNEdkk2Ymw1VEtaSkFaZm9DclBFUlpreU1hZE9iNG5NQnpBUjREZFAwV1dTeWFodzlQVDB2VFUxTkhlZTl2Wm9sY1IwSlZDRGdIVXBRb3poc1ptKzNTVXZ3aWl4NDkrN2RpWWFHaHUrdVdiTm1xNklvajF5N2R1MFB5V1J5cGNmalVhK0U0c1pzWTJQalQydHJhMXRJQzdmUSs5OGpZYmZ5bW41bVlGWUhrc3Zhc05UNzlPM1pzeWU2WThlT3A2TFI2S3BJSlBJZHA5TVpkN3ZkcS9VV0FDQkQzbVdjbVBrUGlvbERSNDRjK2F5cHFXbWlTUFFaMHJ4OCtmSnZVUmo3bk5mTTZHRDRHUkxzcFhBNDdQQjZ2WS9xWU5XMnNHaVpjV3AyZC83OCtXZnI2dW8yaGtLaFRTUkEvOGpJU0svUDV3c1RFZi9xNnVvNlFnVFBCQUtCelByMTYzdEI0TjY5ZTJIRjZkT25UNysrYWRPbUR6WnUzTmlCZGNtU0Q5UHZucWJITnFvQi83WjI3ZG91WnVDTUJVYm1wSStVenA5T3A3dUp0bTRJamhTd1YveVE2WE5RQnZ1RWVHL2x5cFZQa0FLRVZxMWF0ZVBBZ1FOLzNMOS8vNHhOK3ZMUzd2ZjdheWxUSGpKb0ttQ1BEQlNPK09wd3VWeTFCczJjZ2dsd3N4dU9kM2QzZngrSkZFcWVHemR1L0p5VEFyamp1bHUzYnIxLzVzeVpIOUh6aDluRmhkZzZQVkxzQ3pOa0tUNlBZUTJzaFRXeE52YVE2c0I4dGJJWitoSzhYbFJ5dlZYOEc1RW5oS1QzSS94ZE5jUllwYytpaXdaZllxUjhMWDE5ZlpzTmtpZXNYNFVTVkNDLzlmWDFOVXkzN1Jpc2xqL0FSeWxHdkEvb2JIQnc4TWZNdENoZkpCS3FaYVNCWjQ0ZE8vWU1FK25TY1NPSzVENWRVcHdNTUZNVFdCdkpCdmJDbnBxU3diQTh5ME9mVDNMWkxpbTdWelRUS1hrQ3Q1U0loYXpRWjVISjJDTkd2UHVZcytPZ2dZQ0RBSWhFRGtOaHA0NzVaa3ZBY29aM0FUVVlvMUJ4Q2NSd0NneVZ0UHRUdHBpQUJmY2hHT3NXR1RmMndGN1lFM3ZuV004c2ZZcE5sTWtTZlFVSUdHVmtPM3Uya01HMUJpQlVJZURtNXViSDlMNXI5ZnB3WVpIaDRlSGRuTDI5eDVsdmxTYWp2QSt6TVlQOUJjUUhZZDFZdXdaN1lVL3N6VmJpTkNqUGN0Slh4RTZQYWZvS0VYQWU0MURZc2hOQ3dLMnRyVThXS3VDdnVRY2tIS29LQlFJYnlDMGxOUzVQdURwUTdVcWxVck1HQkFxMzU5YXBMNFdWcUdVTjlzQmVxdi85Y3UrY01UZ1hmWlJnT1pVOEI2Q1VMNGVMSnI1ZmJQcUtWZks1S2U2NmRCVGNNa2prMUtUbmN5ZE9uUGlRSlA4ZktpK1c3ZHk1ODhUUTBOQVBXYVBDckVVcVFFRGx4VjBpSXE0VDM1d2JObXlvb1ZuTkZoQ1V3QVRCUEx3WHhOcllBM3RoVCt6TnAwSDBUTXNzZlQ0U25KY0Y2QkpDRjZPRTlKa2V4THQ3Vk1McE5mUkJXM1ZuWitlVFc3ZHVEWWszS2FHZGxnNEFLSGEwUjhWSjBlRkFDMUJxNEE4QVVlRzRzWnptNnJ0MzczNXk4T0RCNXpSWk5CZ1RRZnpBNzhmSHh3OXhjcEpnQVloRUppNTZuNHgwcGJpckVzdVJTWnVsTHlsbDBuR21MVndxK2dwTXN0clFOZEpKc3JCMkhJbWREUE1DRmFUUzlKZE1ZNkY3ZjZVTkdFTjhSVG92R3ZoaUVIRXBxaTNiVVlqMzkvZi83dWpSb3cxRTdBc2NKOENvQko1TFAwa2pobkc1RVJOdE1lbXpGbzdsc1h4OVl6UDBRUmpJVXRIY0FQNk5yZzFtcWVncnNFeDZCMzEwblRJSlhpUUtZV3F1YVpKN3huNjdBaFpNOUxDMkpKREJnVm5JL0lBcFU0S1F2WDM3TmdTZEpTdEdTd3NXbERVenFIai9QWmN6TWF6SjJhR3dIck90eEp6MFpXMk1RdWl6eUdSWWFIUnNiT3pYcUxYWnU3aTBVQ1p3ZXhuTDUwNWNRa3VESFN4YXJtRkRyTDFKRk55azZWc3VYcno0VzNKdkY0Z2h3NlJ0bjZmVDZaRmNqQU1reVBWcVhJSXJCZmJyTFFDWE5xUVBBQUl4OERld1BIUnNNTVVKazFMUVo1SEo2aWtZQ0JjMFNtMVdyUnRQeU8xV2lzc1A2OVhNeFdnMnlIV2hseThZVEtpbFF2MW5vNk9qNzlMelJ4bmRTc2dUTVF4YVNOLzVGUk1ZWThhNWRFQUh1NTBqbWI2bzFQZ3duTVdpcjVCbUE4SUI0ckJCczBFOUVJQjhBcnJIcDJWaWVnQlFLZHFGd25MQ1RVMU5qNVBsZnNaSlZsUURBK0lZNk91TmpZMnJwVnJWNHloQmlhRzVHRm5nSGlscDhtdnBRMDNMQ0ZIQ0pFeGFySGFoSHdvRnIySFFMaFI1aHVyS0pjVmIxSWEveURRSE9makxCYnRBdThDNGFwN0JValg2Q3dBMlpEemI3N0I1L3RoR3c3K0hzLzRxVGNOZjhDL0lodU56R0p5c0xBVG9NRjNLWVgxS2JEcTJiOS8rb29UN2ZxVkxOVEF3OEJLNW91WlNXUzhERjVZbTE3RG9ERTJoNDhWMWJjYXhlRVBsSGZHbGM5MjZkVCtROEhKaEhBRVdycHd4TC9yZElTcU1oMVNmajNjS1YzUGZlZ0hRTTZUNFY2TVRDVXYweUk0S3BLRFpnSTZWNCt1SDdoSTRxY3BaL2RzNW9OdVNINXYxSVd0RmxpZmR4UUROaTRzRUFVUnlRVjkyaCsxc01GbVIzZlNsUzVlMlNhVllFb0NLeU83NThIdklWZ1p2OS9BMmluSWl0SXM3TFRWNHhHcyt2TjNCeFBzY2xZUHZXZzhZZ1hCUndqRUlVd05VVFNCb2ZLUW41MDBEcFJhd1UyU0Vvam1PZ2x5Y3pBY0t4SGM3UlBLNTU2Vjg2d3J1NmFKeWJRem9tNEJmOGNnUTZnTzlkVVZZY1podlZ4bVc0VDlHYXZMZVFMVkVCU3lzT0lSU0RaN09BUGYyT0I3Z3pXY3liQmlGeHFGdW84VGdUOUl4RjUrWjJMdEVCU3pLdFRCeUdTU3NBRFVzNFBLbTlsWk1uNTAxYnJQS3NLRkFaY1NKeEhrekpjZ1MvbzhPTFRBajN6eS9rSzg4TWdWRkZrSEFEaDFZTCt1dzhEY0VsVDlodWM4M3BkaDhLOVovZEJUdFB5V1c2TWlXQ3RDby9NdE9tUThsVy9ranRMSWUveFZnQU9TRFMyMC9wTUZOQUFBQUFFbEZUa1N1UW1DQ1wiKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1pbWFnZS1zZXQodXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFIZ0FBQUFxQ0FZQUFBQjRJcDh1QUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUEyUnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU1DMWpNRFl3SURZeExqRXpORGMzTnl3Z01qQXhNQzh3TWk4eE1pMHhOem96TWpvd01DQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1RVMDlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl0YlM4aUlIaHRiRzV6T25OMFVtVm1QU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2YzFSNWNHVXZVbVZ6YjNWeVkyVlNaV1lqSWlCNGJXeHVjenA0YlhBOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOGlJSGh0Y0UxTk9rOXlhV2RwYm1Gc1JHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJZ2VHMXdUVTA2Ukc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRveFFqaERPRE16TmtNM01FSXhNVVV6UWtNek5FSkNRekkyT1VGR01VTkNRU0lnZUcxd1RVMDZTVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRG94UWpoRE9ETXpOVU0zTUVJeE1VVXpRa016TkVKQ1F6STJPVUZHTVVOQ1FTSWdlRzF3T2tOeVpXRjBiM0pVYjI5c1BTSkJaRzlpWlNCUWFHOTBiM05vYjNBZ1ExTTFJRmRwYm1SdmQzTWlQaUE4ZUcxd1RVMDZSR1Z5YVhabFpFWnliMjBnYzNSU1pXWTZhVzV6ZEdGdVkyVkpSRDBpZUcxd0xtbHBaRHBHUVRBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdjM1JTWldZNlpHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEcEdPVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJdlBpQThMM0prWmpwRVpYTmpjbWx3ZEdsdmJqNGdQQzl5WkdZNlVrUkdQaUE4TDNnNmVHMXdiV1YwWVQ0Z1BEOTRjR0ZqYTJWMElHVnVaRDBpY2lJL1BxNm1OY0lBQUFxaVNVUkJWSGphN0Z4OWFGWG5HYi9uZm4va2ZpZTJTcXFwQzl1Z3EvWURuR1dGMm5hc21qOHFPUDl3aGVtR294UUhsb3gyS095dityRXdrTzRUSm1NUUthVFVCcWx0c09vaWdSQmFXVWlOZGpGem1kRllqU1IzSmtaamtwdVBlL2Y4VHA5WDNwNmVjKzg1OTl3YnQ1djd3c3Y5ZnQvblBOL1A3M25QVmJMWnJLTXl5bmU0elg1UlVaU1NFVkh1U2xZcTNwbmhtN09pNHhVTE5xMm9XZ1dyc05jUzd4UU43N0wvS3dKVzJCTzRhSHI0OVJ6TmVacVppcUR6OGs3d1RmQU9mSnVsdWNEOHN6V2NSUkt1bjJiVnlaTW5IK3ZyNjN1eHZyNCtndGVzUUVwRmpqbUZHOWkyYlZ2OCt2WHJyNHlOamIwSkhqTHZQRVVKb1FqVVpxYkJBSUVoSW5ERjFOVFVzU3lQK2ZuNXdiYTJ0cWZwczZnWkladWw0ZjkxNXVCZCtQRGh3OStlbTV2ckU3ekxaRExUbHk5ZmZvVStpOVAwNXVLZHFiMXRFS2t3QWZISnljbDNJTmZaMmRsZWVreUQwSVdGaGF1N2R1MTZCQXFRVHhPWG9JREJPeDk0TnpNejAwbTgrb0o0MkV5R01jQkNuaVJMWGdjRllFVjRJQUpXTmJDL3YzOExFWlJxYjI5L2hsNVg0NUVJSGdHaGQrN2MrVE85bHlpR0pwYVpnT0hWSWxldlh0MUoxdnZQZmZ2MmZZTmUxOEFneUVoNndEc1MvQ2w2TDhtS29CUXNZQnZ4d3lzMGNHaG82RlVXSkdKdjlaVXJWMzRpM00yaFE0ZSt5WnBZVUR3dVF3RUw2MDJRY0MrY08zZXVnZDB4UEYyaXM3UHpPWGhEOEsram8rTlo1cDF6c1FXTURVT3dWbWdnQzlmUFFnUkIxU0t1cEZLcHQ2Q2RMSHlQVlNHWG9ZREJ1NnF6Wjg4K1Q5YjZkNGwzTG41TVRrOVB0N0VIL0F0LzdsbHNBYXN1QnNJYkhSM2RLeVZUSUQ2TUJBdkVpVmlNK01LQ3JpbzNjS1VBSm9OUHNZbUppYmR2M3J6NUJpdStXd3A3TVNSWnpMc3YyRTM3OVF5amxBSlczVFBpUlV0THl4cDZIbVRCT2RsdG44cHFCcFVCcitWeU4wdEl3SUozdlJyZUNmZXRWaVVJYjVLYjFqV01VZ2xZZGMrYk4yOUdRdkJ2ZXY0UUM4N1BNMDZwLytORTRJU2Mrbk5HSFZ5RXVsZ0x2SGg1K2pSVHZPL2g3enBMbFNOb2FFUGR1NEpEVzF3bmljTHJKTnczZU1kV0h0UExwb3NsWUJsdDhYRXk4TkR4NDhkZkhoOGYvNGllMTdHUTR4d3ZsdEZjUVJiN0N5SGdlL2Z1dFhJY0R2STZibDVUS1pKQVpmb0NyUEVSWmt5TWFkT2I0bk1CekFSNERkUDBXV1N5YWh3OVBUMHZUVTFOSGVlOXZab2xjUjBKVkNEZ0hVcFFvemhzWm0rM1NVdndpaXg0OSs3ZGlZYUdodSt1V2JObXE2SW9qMXk3ZHUwUHlXUnlwY2ZqVWErRTRzWnNZMlBqVDJ0cmExdElDN2ZRKzk4alliZnltbjVtWUZZSGtzdmFzTlQ3OU8zWnN5ZTZZOGVPcDZMUjZLcElKUElkcDlNWmQ3dmRxL1VXQUNCRDNtV2NtUGtQaW9sRFI0NGMrYXlwcVdtaVNQUVowcng4K2ZKdlVSajduTmZNNkdENEdSTHNwWEE0N1BCNnZZL3FZTlcyc0dpWmNXcDJkLzc4K1dmcjZ1bzJoa0toVFNSQS84aklTSy9QNXdzVEVmL3E2dW82UWdUUEJBS0J6UHIxNjN0QjRONjllMkhGNmRPblQ3KythZE9tRHpadTNOaUJkY21TRDlQdm5xYkhOcW9CLzdaMjdkb3VadUNNQlVibXBJK1V6cDlPcDd1SnRtNElqaFN3Vi95UTZYTlFCdnVFZUcvbHlwVlBrQUtFVnExYXRlUEFnUU4vM0w5Ly80eE4rdkxTN3ZmN2F5bFRIakpvS21DUERCU08rT3B3dVZ5MUJzMmNnZ2x3c3h1T2QzZDNmeCtKRkVxZUd6ZHUvSnlUQXJqanVsdTNicjEvNXN5Wkg5SHpoOW5GaGRnNlBWTHNDek5rS1Q2UFlRMnNoVFd4TnZhUTZzQjh0YklaK2hLOFhsUnl2Vlg4RzVFbmhLVDNJL3hkTmNSWXBjK2lpd1pmWXFSOExYMTlmWnNOa2llc1g0VVNWQ0MvOWZYMU5VeTM3UmlzbGovQVJ5bEd2QS9vYkhCdzhNZk10Q2hmSkJLcVphU0JaNDRkTy9ZTUUrblNjU09LNUQ1ZFVwd01NRk1UV0J2SkJ2YkNucHFTd2JBOHkwT2ZUM0xaTGltN1Z6VFRLWGtDdDVTSWhhelFaNUhKMkNOR3ZQdVlzK09nZ1lDREFJaEVEa05ocDQ3NVprdkFjb1ozQVRVWW8xQnhDY1J3Q2d5VnRQdFR0cGlBQmZjaEdPc1dHVGYyd0Y3WUUzdm5XTThzZllwTmxNa1NmUVVJR0dWa08zdTJrTUcxQmlCVUllRG01dWJIOUw1cjlmcHdZWkhoNGVIZG5MMjl4NWx2bFNhanZBK3pNWVA5QmNRSFlkMVl1d1o3WVUvc3pWYmlOQ2pQY3RKWHhFNlBhZm9LRVhBZTQxRFlzaE5Dd0sydHJVOFdLdUN2dVFja0hLb0tCUUlieUMwbE5TNVB1RHBRN1VxbFVyTUdCQXEzNTlhcEw0V1ZxR1VOOXNCZXF2LzljdStjTVRnWGZaUmdPWlU4QjZDVUw0ZUxKcjVmYlBxS1ZmSzVLZTY2ZEJUY01ramsxS1RuY3lkT25QaVFKUDhmS2krVzdkeTU4OFRRME5BUFdhUENyRVVxUUVEbHhWMGlJcTRUMzV3Yk5teW9vVm5ORmhDVXdBVEJQTHdYeE5yWUEzdGhUK3pOcDBIMFRNc3NmVDRTbkpjRjZCSkNGNk9FOUprZXhMdDdWTUxwTmZSQlczVm5aK2VUVzdkdURZazNLYUdkbGc0QUtIYTBSOFZKMGVGQUMxQnE0QThBVWVHNHNaem02cnQzNzM1eThPREI1elJaTkJnVFFmekE3OGZIeHc5eGNwSmdBWWhFSmk1Nm40eDBwYmlyRXN1UlNadWxMeWxsMG5HbUxWd3ErZ3BNc3RyUU5kSkpzckIySEltZERQTUNGYVRTOUpkTVk2RjdmNlVOR0VOOFJUb3ZHdmhpRUhFcHFpM2JVWWozOS9mLzd1alJvdzFFN0FzY0o4Q29CSjVMUDBramhuRzVFUk50TWVtekZvN2xzWHg5WXpQMFFSaklVdEhjQVA2TnJnMW1xZWdyc0V4NkIzMTBuVElKWGlRS1lXcXVhWko3eG42N0FoWk05TEMySkpEQmdWbkkvSUFwVTRLUXZYMzdOZ1NkSlN0R1N3c1dsRFV6cUhqL1BaY3pNYXpKMmFHd0hyT3R4SnowWlcyTVF1aXp5R1JZYUhSc2JPelhxTFhadTdpMFVDWndleG5MNTA1Y1FrdURIU3hhcm1GRHJMMUpGTnlrNlZzdVhyejRXM0p2RjRnaHc2UnRuNmZUNlpGY2pBTWt5UFZxWElJckJmYnJMUUNYTnFRUEFBSXg4RGV3UEhSc01NVUprMUxRWjVISjZpa1lDQmMwU20xV3JSdFB5TzFXaXNzUDY5WE14V2cyeUhXaGx5OFlUS2lsUXYxbm82T2o3OUx6UnhuZFNzZ1RNUXhhU04vNUZSTVlZOGE1ZEVBSHU1MGptYjZvMVBnd25NV2lyNUJtQThJQjRyQkJzMEU5RUlCOEFyckhwMlZpZWdCUUtkcUZ3bkxDVFUxTmo1UGxmc1pKVmxRREErSVk2T3VOalkycnBWclY0eWhCaWFHNUdGbmdIaWxwOG12cFEwM0xDRkhDSkV4YXJIYWhId29GcjJIUUxoUjVodXJLSmNWYjFJYS95RFFIT2ZqTEJidEF1OEM0YXA3QlVqWDZDd0EyWkR6Yjc3QjUvdGhHdzcrSHMvNHFUY05mOEMvSWh1TnpHSnlzTEFUb01GM0tZWDFLYkRxMmI5Lytvb1Q3ZnFWTE5UQXc4Qks1b3VaU1dTOERGNVltMTdEb0RFMmg0OFYxYmNheGVFUGxIZkdsYzkyNmRUK1E4SEpoSEFFV3Jwd3hML3JkSVNxTWgxU2ZqM2NLVjNQZmVnSFFNNlQ0VjZNVENVdjB5STRLcEtEWmdJNlY0K3VIN2hJNHFjcFovZHM1b051U0g1djFJV3RGbGlmZHhRRE5pNHNFQVVSeVFWOTJoKzFzTUZtUjNmU2xTNWUyU2FWWUVvQ0t5Tzc1OEh2SVZnWnY5L0EyaW5JaXRJczdMVFY0eEdzK3ZOM0J4UHNjbFlQdldnOFlnWEJSd2pFSVV3TlVUU0JvZktRbjUwMERwUmF3VTJTRW9qbU9nbHljekFjS3hIYzdSUEs1NTZWODZ3cnU2YUp5YlF6b200QmY4Y2dRNmdPOWRVVlljWmh2VnhtVzRUOUdhdkxlUUxWRUJTeXNPSVJTRFo3T0FQZjJPQjdneldjeWJCaUZ4cUZ1bzhUZ1Q5SXhGNStaMkx0RUJTekt0VEJ5R1NTc0FEVXM0UEttOWxaTW41MDFiclBLc0tGQVpjU0p4SGt6SmNnUy9vOE9MVEFqM3p5L2tLODhNZ1ZGRmtIQURoMVlMK3V3OERjRWxUOWh1YzgzcGRoOEs5Wi9kQlR0UHlXVzZNaVdDdENvL010T21ROGxXL2tqdExJZS94VmdBT1NEUzIwL3BNRk5BQUFBQUVsRlRrU3VRbUNDXCIpIDF4LCB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQVBBQUFBQlVDQVlBQUFDODJMcHFBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQTJScFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrSUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1TUMxak1EWXdJRFl4TGpFek5EYzNOeXdnTWpBeE1DOHdNaTh4TWkweE56b3pNam93TUNBZ0lDQWdJQ0FnSWo0Z1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNGdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlnZUcxc2JuTTZlRzF3VFUwOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOXRiUzhpSUhodGJHNXpPbk4wVW1WbVBTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZjMVI1Y0dVdlVtVnpiM1Z5WTJWU1pXWWpJaUI0Yld4dWN6cDRiWEE5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM4aUlIaHRjRTFOT2s5eWFXZHBibUZzUkc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRwR09UQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0lnZUcxd1RVMDZSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRG94TlRRMk5EZEVNVU0zTUVJeE1VVXpRakkyUWtJMk5UWkVPVVpETWpjMk9TSWdlRzF3VFUwNlNXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEb3hOVFEyTkRkRU1FTTNNRUl4TVVVelFqSTJRa0kyTlRaRU9VWkRNamMyT1NJZ2VHMXdPa055WldGMGIzSlViMjlzUFNKQlpHOWlaU0JRYUc5MGIzTm9iM0FnUTFNMUlGZHBibVJ2ZDNNaVBpQThlRzF3VFUwNlJHVnlhWFpsWkVaeWIyMGdjM1JTWldZNmFXNXpkR0Z1WTJWSlJEMGllRzF3TG1scFpEcEdRVEExTTBFM1FqQTRRemRGTXpFeE9UVXhRamhDTnpjd01EaERRak13T0NJZ2MzUlNaV1k2Wkc5amRXMWxiblJKUkQwaWVHMXdMbVJwWkRwR09UQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0l2UGlBOEwzSmtaanBFWlhOamNtbHdkR2x2Ymo0Z1BDOXlaR1k2VWtSR1BpQThMM2c2ZUcxd2JXVjBZVDRnUEQ5NGNHRmphMlYwSUdWdVpEMGljaUkvUGpNR1RLc0FBQnlIU1VSQlZIamE3RjBMa0ZSVmVqNzluTzU1OUR5WUVVZkVBU0V4WUpSRkM4TktRS2drdTF2UjZHcmNEZXVqeWtSclRiUmlhcmRTY2F3S2VXaDhzQlZkSDlFc3RVUVJEYkFHalV1eHUxaGdzR0JWbE1JSEtqRG96REE2UEdaR1oyQmdHS2FuSHpuLzlmdzkvejE5YnZlOTNiZGZ6RGxWcDNxbSsvYTk1L3o5ZitmL3ovODZubVF5eVhUVFRiZktiRjVOQXQxMDB3RFdUVGZkTklCMTAwMDNKODJ2U2FEYjJkUThIay9aajlGTnU1Ti9NaFBTYldMcXBwdVd3Tkk2UUxHbWZ5N2Rpc1JyeXJWZUE5ZytFVDBaQUp6VWdOYXRRRHpuc1FCeWt2U3k0ajEvR1JMUmEwRk1JRnBDSXFRR3NtNzU4cDJIOEozTWUwbUo3eExsQm1KL0dSTFJSMTU5RW5oajRqVk8zdk5vRU91V0k5OGhZSkhYL0FwTUlKOUZCZDhsUkFmN1NiTFV0aDV2bVlEWFN3Z1lFajFBVmtXZitEL01lNVc0emt2Rzc5SDhxRnNPNEtXOFZVWEIyOTdlSGlIWCtnaFBvb0R4ZU1yQVV1c3RFL0I2QlhGQ09LWTllL1lzR0J3Yy9QR3BVNmNlNDYvdEd6ZHViQ05hUTBnQll0MTB5MFhqQTc0THd2ODdkdXk0NU15Wk0rdTVZUDNxNFljZjdrNGtFcDhEL3ozNjZLUE40bm9FdVU5U3Qwdlh3STFTaUc2VGtENUJ2R3JlbTZCdjNyejU4bWcwdWllWjNtSkRRME9QenA0OXUwVmMyeWdrY29BUXMyem1yM3RwdWszSjZ4ZGdyRVcrNit2cit3ZmdNUVhmSlRtUUI3aEErVFpleTN1TjRGdGZMbnpuNm54TFNFaXFGZ01ZbTdadjMvNkhRS3hraG5iNjlPbi9JU0NPU05MWW93R3NBV3hUYUtUNDdzaVJJL2Nrc3pUT2w2UEFuMFI0Vk9jcVBDb2R3UElxQ0NCczRtcks3OGJqOFMrU05ocElZcklhMW9yNytEU0FkYmZKZDdEb053RC9iTm15NVFvT3psTjIrRzU4ZlB6QTBxVkx6eFY4Vnk4Smowa0Y0RFRWZVhSMDlEZElLQTdrSTN6dnNZYjMvNEsvVmNUODhNTVAvOHdOVlZvei9hUUNNUEtkb1RvREdQbDI3UVBjb2cwTUROeS9hdFdxMzJ0dmI1OXgrUERodXptd1Q4aDhOenc4L1BOOFZlbEtCM0RhS3RqWjJYbVRoWXJjQkgvRGUya2I0bGlzaTZ5R2tWeWxzR2I2U1FGZ3BmVHQ3Ky8vUjhGT1kxMWRYYmNTWUJwOXg0NGRWNm0yZEx0MjdWb21ybWtnVW5oU0FKaXVnalVJVUZCTkVMeUVnQzJpRy8rclFBeUdoM3ozSkpycEp3MkFUWHdIaXo5cWR5QnRKYjZieWp0WW5wdmVmLy85UDFYWVlYNlpqeFN1ZEFDYlZzRkRodzdkam1yekF3ODhNRXRhQmFjZ2lFR3RrZFZwK0QvRG5zU1dpVjh6L2FRQWNKcjBSY1BWbVROblhpUDgxaWo0cUo3d1h4TnM1V1FGRVBiT3VVcmhTZ1V3OWJ1bExJQjhEL0l1VUtTbnArZUhoSkFSc1UrcEZRUXlWa080Umw0TllRRWczNnNqeFBUWmtjYWE2Yzk2QU11V1owUHI0MXV3VDRGL1FFMG1RS3dSMTRTcGl3a0VpN3dmQmhzTjRUdXEvWlVPd0VWd29QdW81Um4yRW1qZGswQ0lFVmNoUWtoak5lVFg3cVdFNUF2QWI4WG56UVQ4MVFURUJYRzJhN0JVSElCVGZQZkpKNTljSjNqbmJTSjVhOFExQVJLWlZZZDhCOFlyMmEyMGZQbnk4d2pQMnJiQnVEbmZZa1l4eVJFd2JNNmNPZGZENjhEQXdDb1NkeG9UTWFlMFk4d3o2Ky92WDBWdkdnZ0VGdklWc2hIalU0bXFWRk1Xa1RLNmxWdmtGV3RyYTdzUlhvOGVQZnFjRk8rY2tIZ09ZKzhoTXZCNTAwMDludERLbFN1dkVmL2EwdmJPaGxCS0x5VmtiVzN0OWJBTmVmTEpKLzlYZkQ1T0NJbVpJS2lhR0lSODhNRUhOOEYzeUQxOXQ5OSsrN1VRYXNrbCtyekRody8vWVBmdTNaZVJRQkVOWU4xU2ZNZlZaMTkxZGZYVm5JZSt2UGZlZXplTHoyTUt2a3NRRUxObHk1YnQ0OXJmZS9TbVU2ZE8vWE55LzlLRVZoWkpoYVpxVEMxR1hVa1dQYlFrQjhtSzVrZUxJYWpidmIyOWY4MVh6YiszOGcxajI3OS8vdzFrYitKaldvV2VyQ28wNWJzNmFsVUd3eFRaKzVyaUNNUjkwRjVUTFlWYm10Um9Za1NsYXZSWnR3ZW0xbWZEd2dkT2N5QUNBTkxDaW93QU5xeUdZQzIwRXkzRHdkMUgvTWhocHo2NmZBQ3NXOW5GNEtmeEhVVHhBWjkwZEhRc1Y0VGplc2g5MHI2N2J0MjZTMlYrZ3dWQnNrWm5GUmhsdFFkMlFFaFRrbjVkWGQxU2VOMjJiZHRXOFY3Q0F2akcvbmZEaGcwLzV2Y2R5VFlldnJKdS9PeXp6K0lzdllyQ1pOamo1ZEluRTIxWU9CeGVBSHZjbDE1NmFUZFJuNjM0aEtyVDdLYWJidXJsVXJlWFhzRDMwNHNsTmIyeVZHaWJBRVkxQmd4THpUTm56cHdLNmdkRVV3ay83em5FZWh5VUxJSFZ3c0xjRE5JNm13UW1ib0Y2bGtlTWRKbEpZRlhsQ0ZyMHdHL1JrWTVXbi92SWRrVlZrYUxTSmJDWGtaQmQwTXlBN3lCOGtwbkRjT0VhcitKZXFFYlhFSi93THlpL2NjMXdPek1IZFdSMUo1VzFGZG9qR2pPSHIva0lRL2xXcjE1OUdWanhSa1pHM3BaVVpwL0VXTWhjSUZHOVYxNTU1UXZqNCtPN3JKN05GNFNPSlV1V2ZLU1E2SlVrYmJKVktQRkpBUFJuQUxLZDkzMks5MzNTc3l0UllxZFpuMTk4OGNYZkI3NkRkRlZKd2xxdHZrbFpDcDg4ZVhJM3ZTQVlERjVXU2o3enVnbGEzbFRTQWEzQjZFejNjYlZqTG55UDc0TVBTSjhGaGRSRUh6QytHbEtrdTdzN3NXWExsaCt4cjh1YnBMWGp4NCt2WitaNlJoN0o4bDA2YTZFOVpyT2luOThDdURMTmtGNlpPcjBXdisvUHNqRDR5cHgrbWVpYTR2UHAwNmNiZkhmaXhBbTBKaWNrb0ZxQk9GVUxxN2UzOXdPSjl5T2JOMitlU1RUTm90TEdteS9URWRENkxGWjhWT05DUWwycDR2dmYrWENEam82T3p3aUFmUkx6VW1aSkxRVFhYbnR0NTFkZmZmWHZpdkhFT2JoZlZVaGZyd0lJdmpKZ1JobTAyZWhIRjdXdytEc29xY2d5MEZUZEo5MDdTSDhiOGd5Vit1MHJJL281cFRQWVhTNkIxODdPem84SmdDM0JtNXpReVZNUytMbm5udXNRR21HcXplVk5JWUdMUWhOL0hxdWFyS0o0Q05pOFpEVksrOUZyYW1wK0IyNXcrdlRwNUtaTm01Yk5tREdqbWFzaThlYm01cG1oVUtnYUg4VDNLMEJFRDcvdVdHdHI2K09Db1dMWFhYZmQwMis4OGNaMy9YNC9FbzZOalkyOWRldXR0L2FTUlNsTUNCK1hYdVZxZzhXc2N1bVVma3BHV0xwMGFmQ1JSeDZaMDlqWU9KVXpaaXU4eCtrNjIrZnoxV1I2ZUR3ZTV6dVhrYytFT25oMGFHaW9yNzI5ZlQrblo1VFF6cXRRSXlrTlMwbS9YR2tONnU1c2VOMndZVU9YQkdBSzFreUdMTTh6enp3ejh0UlRUL1Y2dlY0czhjUWFHaG91NGkrL0tzbFd3MkUxQTdvdm82czNnSzVPR0FWTUtWazMzSEREK2R1M2I3K1dTOXQvN2VycTJzeFZrSTg0RXlWNFQzSkphblRPVUVrT1FIQUJxU29oR08rLysrNjczK1AzbThZNytOMmFkKzNhOVNlMEJNb1hYM3p4ZDJqc0V0ZWNzM2p4NGxaNVBHS01kV0xNVklvNXFuT1VZelVJeC9TRGNEMXdWVURxRzEvSVhnRURqTjBFZENjTjdnbjNobWZBcytDWkpGU3dLUFJ6MlloRjQrNk5zWE0rT2dSRkk4aGNMQTFZa2lFcmxjWEV2blpwYnJNUkYrMHB4dHo5RHRVUVdlM3pNNmtpQVVTNjhEM0IwdlBPTysrUHd1SHdZcjVTelkzRlltQmdZbnppOE5BeC9wNkhNd3ZIN2xkYitiNzFBSmNjbzhlT0hkc2JDQVNpZkpWTS9RcTMzSEtMb2VvOC8venpsK3pmdjM5UXJJSmp3Q3dMRnk1OGorOWxWa1Vpa2J2QUdQakVFMDlzb3VOOTU1MTN2cmxnd1lKWCtRKzJiM1IwZE9lUkkwZGV2K2FhYTk0UUxpWlVEekhTSmtaVTcwSVU4TTZaZmxUTEVELytHVERXY2ZxQktqZktGNzk5Zkk3amh3OGZob1hScE5vaC9jQjRZM0lKOERadDJyUkwrRXVBMHg3dUgrWjB2NGcvNnlMK0c4emp6NzIrcGFXRnJWKy9ucjN3d2d2bFFMOThKYkJCVjg1MzV4TWpxTjB4cGhtNk9QMTdxNnFxcUNGcmRzbU1wUTZUb1ZGaTFGSnBBZEVva0JBTk9idFMxc1lZWDUxZTUxTDNKMisrK2VZZDk5OS8vN0xISDM4Y0pHZHljSEFRSXJBZ2ZSQU1BTERTVDBWVHZhSlBZUlBKQ2pYQ1JUVGxycnZ1bWc2cktrZ05jUTErZitxbm4zNzZsMktsSENOUzVnU01FY1pLSW1oUXF0UVNpWksxeGxhT3llU082UWR6NExSNkdENkhnbjhXOUhHdHd6UGdXZkRNWXRQUFpRbHN5djlkczJiTnhVSmEvb0taQXk4TWFabmhmaGpRa1lySTRyVDVON200QkV2UEQvWVdZKzUyTXpuOHhDZmJnSU1GQUlHNkJkRlBKQkxxQ3k0WmYzcmd3SUh2Q1JVVy9MendlZ0VBOXJYWFhyc1pydU1yK21vQjN2T0ZIN2lSbWRNSWF5U2pUUld4dUlZRmlKc2diQklxZWdqd1J0RFhqR0FHUm9PeHdKaG96UzBZTTR3ZDVrQ0kzeURtU011SGV2SUFjRjcwazBCQ3dkSW83dE1nNWh3UmFtMGRvVit0ZUY2MTlCNWVoOS9EK3pTcVZQaGkwcThBQUU2Rjd1N2V2ZnVQWWR4OEhrOHlSUjZ2RFFDblVtQ2hBSUFjVXNuTU5kcktBc0MwY3FTcEJDZnNqZmdxOUJNaUxXSmN6ZG9NUDdSQ2NrNFJBSVg5Ni9SOSsvYmRMZmFzL3lLQWZZNEFJd1ZzVUFyb2tIMlhDT1FHNlhuVWxSSmhFNG5acVE1amhMSGkvaG5tQUhPUjludTF4QktyWkVJSGNiajUwQThaclo0c2J0VnNJbWRWNVJxU1hVUXFWNVBzY3NMN0lkaVJkZzNGcEorTEFFNUxJY1N5VGJEb3NBd2hsQmtBbkNvR0FHR1lzZzJCTEdRWUUxMVNBRnZXejRVa0JMNlArSVJHb3BEcUJMS2hBMWY4QnBURW4zLysrUXI0SGxkeC8wYUFsLzdnMlh5UEt2OHlNbDlBNFg1QmFWMHJNeU9NR2NaT0tnNStRc3FHeW1OS1V3ZXpBTmd0K3RVUW9GWXBGamNyRjQrZDdsZTRrMlEvZkZpTUljM0FWZ2o2dVF4Z1U5VlRTSVNCY2NKckRnRDJVUUNqTktjTjRxU1p6YVNHWWdIWUp6TWZWM3QvQk9vQzdzK2tLaHBOUkpLR0pmVzNWa2ppbGkrLy9QSVJrVEgwQTZMMnBvNVNzZkVEcVlJZXZNdzZ4SkNxM1RXeVZCWlZQc1pRRllJNU1oc2xhMjBBMkEzNlpmUHpwc1UyTzZCZnB2Qk1Lejl4UWVsWFNBQmpKaEdwNEZKSEZoaFBsbnNpZ09zWnlhU2pqU3hlOWNVRXNEZUw0UVZONkpEOC9GZXRyYTJQUVNnYStBSzd1N3Z2YUd0cjIwZ3NkV09peDBpWGsvSVRnVUFBQ01laTBlZ3BabjN5V3lhalcxTDQ3S3g2UXVyNGZCd1RqdE40RnN3QjVnTFh3TnhnampCWE5EQktZSEZpL1hTYmZnWU5BU2VrcHpXNzlKTzlTTmdsbXNtMEt4YjlYQS9pNEh3WEVmRUNJd29yc3kxN0wvNHhNakl5S24vWTBOQVFVVm0vU3hHSkpaOGJBeGxERjUxNzdya1A0Z1hEdzhOUFhYamhoYjhpRXhzbkRCZVRRVXNCNXZQNVFpSklJNTRoOG9YbEFXU21BSE5jR2x0TWpObTRIdWJDNS9RTTNodm1Dbk1XL3dZY1JoeTVTajhacUVYd1NwaUFYUUw2RmFSaGdBdm51MmcrNUJHLzM3ajhRWWkzWW9NM1V5aWxLUWg4NGNLRmY0dVNCTnA3NzczM01ySDBKU1N3SmlSQWVhUVZERlF4aUZzZUxwYW5MSU4wVG1BMEdwL1RTK1E3UVRGbnhuTExac3FiZnNVQ3JNT0ZzbGowSzRndkdOb1pDRWJJMDBmZDJkbVpsdGJxOVhxRDJaNWRpT2Ezb1FheTZ1cnE3OUFQd3VGd1FCR2dZSXVRZktJQm9jcEVuUkpTUHM3UkJRYjNLT2FFL3kvTllZNkZwRi8rbkZ4WjlITnpBVWQxSHZodTFBbTRTR1pkYWc1Y2hZN2JWZDFMSllIbFNaamlhK2ZNbVhNakJxV3d6QWtDbHBNWUhCdzhZNWVBaWhSRlBKL1Zia0E5elVxUmpWeEd6YU81YytmK2hmVGNSaGVCNDVoK1pNNTVnellUL1VUUCtDenlXVW5vNTlJaUV4V3F0TThKM1JTR1BydmFWOGtCVEVQSE91Z0hFTDdZMjl2N2ZmRnZnbGdyWmIrdFpRcGFhMnRyeE1GS0tCOEM3bE04dzRwd3Fxd2ZHZ29JS1dMZnI2dXJ1NU4raWN3NTE2b2VydERQTHNqY29KL3FHUXJnRjR0K2hWRTUvZjZnQTgxUFJUZlcwdElTdEFuZ2dnUFptMlhmbUJEUzhrWDVnbW5UcHYxSGYzOC8vZEVDeFBWaEZZVGhqY2ZqWTBSOU4yWGlxQnE1QnYyUk5Xd2k2RVA1REFYeHFGRUpBd3lNQm5PQXVjanpHeG9hV3FmWVF6dmRkN3RPUDA0U253enFUQzBYK2tuZkx3WDlDcUZDbzJwZjQxQndZSUNMSDM5UExueEM4b1Y4d1JxVnRxWkZrY0xaQUd5b1I0c1dMWHBPTHFrSlB6WmZpUjZLUnFQL0IrVmNDYUZvekc4VmtTNkdiekVHV1Ewc1pkYjNLMVF5SzUra3Y3MjlQYkp1M2Jyem1UazZKc1RNTWJneWtHbmlBQllkWXpCbUdEdk1nVWsrT3o3WEQySE9STTNORmNCdTBFOEY2RXdCSEdjRC9Wd0hNQi9yU2FGUitHeCtMN1ZvTFYrK1BBVHp4VTYwUjVWeERBMTM0YUpJNFF5cFdLYndNVGgyRVlLMnJkTFI0SVFFY09wTDhic1lSZ2toazVBL09mUFlzV00vZyt2ZmV1c3RDT1RBT0doNFJpMHpod2ZTNEFIREdZOVZBU0dVRDZyck0zWFlZUTB6QjBHZzFFaWR4UVJqdFpvSHpCSG15dExqWmIxV2RDc2cvZVRvTEl4OXBwSlVGVnBaa2ZRclVDQ0hVVTRXNjZtUjRCbkxRQTRDWHFDQkVmcWE3ZUI1T0YwRTBqRTVqbmRBcEpaNFJvZ1ZPQW90V3lRUkZnUXp3dWpnakJnWVlKYTgwc0ZUcDA2dDYrN3V2bTNseXBVWEVRRFA0SDFXVjFmWG95SnlCWnova0kwRVNRN0F0QzNNSEtTUEFmWjRZcHh4d0psTU5EaWtTcEczaWtIMWxKR056MVJudnBLd3hoM2tnRFc1VG5VdWtWaDUwUThPUFdmMnNvZ2FGYlNyT1BvVktCYmFBRENlcXdYelpWbENLU1VBbThyUlptdlNzYmNGbjNzbUJwU1BaRXpGd3ZKOXozMTJrc29oR1g5a1pPVER2cjYrTlh4VnV1L1paNSs5L3VEQmcwWXExdDY5ZTlzRmdOdllSRkxEbEd6TWFzWDBrR1ZDNGxIcFNYT1kyV1RKZ0RBWG1KUDBYZm5ZU0tjQXpwdCtRakovQUVYSUlVUVJWbmFMSkh2YnZaenBWeUFBRzZHc2tMVUdZNFY2NU14R0xEVFo4OWVpQmtWVEs2MGFPV2U0bmsxRW9oVnM3aDdLZUxJQlVyRUhTcVZKd1hsRWQ5OTk5eDBORFExM1dya000TjVRRmdlMnZad1JZVzhFeWM5d3BBclViKzduYXMwYmZyOC9PalkydHJlcXFpckJyenMyT0RoNEpKUEtmOFVWVi94YWhDT3FXcHlyaDVzNk9qcFd6NTgvbjFhdmpPTStqWStuR3dxUmlmRU5IVDkrZk5YVFR6Kzllc1dLRlVQRUtoeGw2dU0yVEhOVHVCNWNwWjlWaThmajNYd2V3NXltVUlFek9qdzhiQ1R1ODduM2NRWTlXcW4wYzhsbFIvZWhxV3d3cnZITjVaSnhKMFNNMWRmWHJ4QnpHaE92TWRrbkxseVVOSnNNU2p1dGhtSUhWcytHWWdHY3Y2L0diVEg3T2xvTmczUUtNM2ViUjRMUzR4a2pUQ3I1QW9IaWVFaTNRcVVBMVNwNTh1UkpvM3dPWCtsUjNUTCs1Nm9KN01sQTBoZ1MyNjBHcHhoQzNpWTVwU0VsUVdDc01HYUZOSXV3aVRJckdRK3NjbmlrYXM3MEsxVXJCZjBLbWRBUDJ4RnhsTThyTFAxSUZVK1dORUpEZTlxelo4KzNiZFlrYjJRWnpnd3U5dEVxVkIya3hkYnJtWlJpdG5Ianh2bFFyUURQL0VVQVE3MHJMbkZUZ0RWU2NmaDcrRDhVdHdNQXEycGk1ZHFnOWk4eEpxUnlXeVUxa2FxSzFTdzloOVd0aWh3NTA2OVVyUlQwSzBCTkxGdzBHOFhpTXlwcVF0T2k3c29zT0lVYWJtenZySDRicUZUQzBwUDZDNTRMblVtRlZrV3pxQXFPS3lzdnJGbXpwdldxcTY1YXdOV1Z5NzFlN3plNHFqeWZnOWJ3d1RVMU5SbHFOVmRuakdkQ0hEZ0V5UEJySU5ReUw0MEMxRXN1T1I0aG1UNmd2b3lLOFdHYUY2MVdpVlVXNDh4QlRTY2JLclFyOU9PMHVveHZMNzRCQmNUbGlLNUN0RkxTejJVVm1yclJRQnA2dU9id0Z1ZXpjemlQelNacWJreW8wQW5GdmFnYUhjS2dsV25UcHYybk5KZVJ0V3ZYL3NGdHQ5MTJsRTNVYlJzdnl2YkI0ZEVnOG9rTGN0Sjh2Y0p3QXVWdG9ON1ZlWTg5OXRpM3RtN2RlZzlmeGZyNGFqamUyZGxwVktuazZ2V1FWVlZLQjFVVlQwQzFCY2tORTJIbUdzY0JsbDZ0SXNETVNlY2VwM1FyTVAxU2ZkdTJiZDhFTnc0WXRLQVNJcWxTT2VoQ1ZjcVMwODlsQ2V3aHdETWtNTitxL1FibVNpemxLU3Q1bG1UK2xEVWI2RU5MSUlreVBUOWw2VFd4aWxKT0tOZXpmVHlLTUxPZ3d2ZllJRlNQcWNMU0REV3daaDAvZnR3b3kvblFRdzlkSlN6UjA4WG5zTithQWdTRzQwUnBSNktMY2k2bWJUWllhY21QUW91c1VaVk9kVVJKenNYSjh6d2J5UW45SEZ1YUs1VitCUUF3U3Q4SWRRV1JFd1ZOQlFjc0FKeDJ6Q2d0YWdkSDNaSnlPdlZXZnU5eUE3QWRac1N5TEZqRm9Wa0FkV1pQVDgrVE1QbWRPM2Yra1BpQ2JibVM2T0ZTVURVUnBCSkxyMm9oRjFiek1wZFA1M1B4Y0xOczlLc1dOS3dsZTlIR1hOMUk1VXkvQWdEWUpEM0J0eTdxWXQybkFKekhSazJzaU94U0luNWw2dmN1V2tWT3Z3c3FlSkxzUFpKazM0US9jRnd5cFFlNHlnenVEelpyMWl3SVZQaTErR3hjMmxQUlV3SThKT1owbU85bFBqcHc0TUEvWFhycHBUdkpOWEZ5anhncnZ4ckZ1ZEtQWlFHUDFYRWVTdnFCKzRuVDhLT0RCdyt1dVBqaWkzZVM3OFdsMzhCRVA2dlVReGNTcG9vUlNtbndYa2RIeDc0Wk0yWkFldWNsRm5TMTRwRUVvWS8zemp2djdMLzU1cHRmcmFxcW1yTmt5WkwxNkVXeXNBTVVuSUVLZGJ5b1hKa2lKRmJDbHRXclY4OEhoaGdaR2RraTFPdXB6RndQU2k2c2hsYmJLUysvL1BJQ29XcGpieVlCQnlHN1ZsQTM2VlpnK3FuT1Q1TFBUYktxUGtucFowZ1BxYlowb3lKODByU2ZkWGljWnpsSllOa1NqVzZ3UVZMSDJTUTFNL3dPWGprMEUxeEdKQnkxbm13M3NwWVBLb1VWbWptMUprcjNvdGJXYW1IdC9BQ3NxbHdLeitHcVRaeFlCT1BTQ2tZemxtcUlidzFQQmFCZ0Jlc2ZyYlZWMElYUERXbmtGQVNLbEVKUEJxdTN2QkNFaVJVWkpVcFNDcmhJWkpLNGJrbmdJbGlobWJUb0dja0ZvNk9qL3gwS2hiNnpmdjM2ZVhCZ3R3ZzZ3WkpHQ1RwdlJSNDBkbG8yRnEzMGNrV2Fvc3pkNndiQlZGMmh4dEJEc3NBUHZBc2lrRjU1NVpYTGljcVl1Z2JzQTlDWitVQ3RVV1l1cXBZNlRIblJva1VvbGNwV1hYWkN2d3gwelZiRVQxV1VEdnVJNktjRUxXa3RMbFBVbElQeGxMdjZUUGtPSWdDTkNMT2x2RWxiakd4NTBMU1BDK0JIaGVDeEJkeENORzhKaUdrUWNtQmdZQ3U4dHJXMUxTYVJNeXBpSnFVOW5vOEFOZEhUMC9OZHZoaTgydGZYTjA2dXJiVERxSXRCOTRUQzFwQlFnUGRzbmovNytPT1BYNGZYcHFhbXF5VytVeFUxa0szUWRIc1haT21SVmtWUG0vU1dpcEJyMTY0RlFzWnJhMnUvcFRJb1dKUTBDYUtrNXNDOVlYeDgvTGNYWEhEQktnanRFNGR1eFRWd3M5SSt5VElmRDNvMnpqc2xPSll0VzdhUDc0Tjdnc0hnRXNpUFp1bUh3RE5KYlVaTHRzY0NQMVVsNVRrM0RCSU9GZ3M4U2NGd2cwU2owYmRoendGK1NwYWVJU0lua2h0R0dEZ1JnSjVzQUEyT3VtQVRmcjFBTVJZbU53MDZrM0pGS1k0UmkwazhaQVRLUU9DRmNBRmhFWG9hRjAyVElGTGZVWjNHQUJsT2JPS1lVdHZWTjh2TkQyeDd1OGVrSkhlc2xnK0JCSkpWc0lwWVdxc1lTV2VEYStWVU9CSndIOVlBMWdCVzhKM0pId3krYjh5SEpoYjVPbVl1YVlSZWt6VC91ZUM3QWNKM29ja0M0TFFNRVFnd2gzeFNFZ21FZ1FTWVRKN0twWVdJRnprZmxSeXVqTUhwL21Lb05CckFGUVhnTk8wUEN5dVFvMWJvd2VVMUZMeWc5Y201d0JEVlJhUjNWVmtBdU1DRXBHcDBLajUxZUhqNDU1SVVSaERqRVpodzNSU1Y5SVV3UU9MWHJIZEt5RUl5a3U2bDZWbTB2eXBVaWVHVVJVVW9KSzF1a2pxaUZyZDZsTytrdzh5Q2t3WEFhZXFNcU5NRTJTQXhraytKQjNwam9JYmhPTWNqTFVrSzF5K1orbUJsRFdBTjRJemFIM1RJZVFZKzRrTGtaNFNQZ09mdzFFdzRrTzRlZWUvTEJja0w1UHBxcDl1MlNnZHdtanFEK3d1K0doNGlLMXN6Z2hmZVV4V0VJOFl2MDJITjVhREs2VjVXQUZZYXN6QTJXbVFVUGMya3VIRnhrSGRNWXJzeHdxTTU4VjBsQTFoV1oxTFZFbkZ2Q3lvTnlSWnBnci9oUGNVcXVJNDVTT0hTQUo3MEFGWktZVWpvb0pWQndiQUtCZkFVV1Z0SnFhWldZNjU4ZHpZQU9FMEtZOVZBa3FaMUNMcFY1VCt5YjdFc1hhb0JyQUdzNER2VFhsZ0lqd0diVlVyZUp2blNFZUl0S1puUUtBVWhMVmREMlZSdjBjWklxWmRHc2dmSjZSUTh6ZlNUQnNDVTcwekNBN1M4YkZWQ3VkRDRsSlQ1YlpSY2xwTVN3R2xCR3JDNldha3VlQUo4WjJmblRTdzk2VHpuSXl3MTAwOHFBRnNLRHloWVo2WHhnV3BOaXRWbnJIYzlXUUFzcjRhcDRBNG02aWJMUml2dzIwbko1N1N5dmxjRFdIY0hmRWRWNlZya0tkaVc4VDN1UDBQaE9uSEt3blp5a29NS3ZONVNBOWhUcExTdWJNU2tNYWVwczJ1Z3NOdThlZlBhdU5ROWV1T05OL2FRNzBFMkVzMml5VG1lVndkZ25GM05BZC9KVlZDeXVZS0ExNkpNa2JsVlNwNHJCd0F6bG41MHBWVkNmc2FxRVJyQXVqbEljVlNsQzZwc0tja01QRmR5b2VFdk1iMHgvUzlCL2s4d2MzYUloNm56WGt0OWJLVnVGUjdOS1Y0VEVuK3AwbGtwdnlXazc1ZTArY3VNa0I2SlNLcGN5N0t2YzZWYnhZR1lDaEthQzV5VWVLL3NlTTVmWnNSTXN2UnlNRXhCT0ExYzNRb0Y0bVNXNjVnR3NEMkNhcURxVmtyZXE0am0xYitaYnJwVmJ2TnJFdWgyVm9uUVNlWlY4R3RDNnFaYjVUYXRRdXVtbXdhd2JycnBWb3IyL3dJTUFDWXJsT28wNkFiZUFBQUFBRWxGVGtTdVFtQ0NcIikgMngpO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHNwZWFrOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xufVxuXG4ubTM2MC1zcGluLXggLm0zNjAtaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4O1xufVxuXG4ubTM2MC1zcGluLXkgLm0zNjAtaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4O1xufVxuXG4ubTM2MC1sb2FkZXIge1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBmb250LXNpemU6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGxlZnQ6IDhweDtcbiAgYm90dG9tOiA4cHg7XG59XG5cbi5tMzYwLWxvYWRlcjphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1wcm9ncmVzcyk7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4ubTM2MC1sb2FkZXI6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBtYXJnaW46IGF1dG87XG4gIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm0zNjAtbG9hZGVyLnNob3duIHtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogMTAwMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzO1xufVxuXG4ubTM2MC1sb2FkZXIuc2hvd246YmVmb3JlIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4tbG9hZGluZyAycyBpbmZpbml0ZSBsaW5lYXI7XG4gIGFuaW1hdGlvbjogc3Bpbi1sb2FkaW5nIDJzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4tbG9hZGluZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3Bpbi1sb2FkaW5nIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gIH1cbn1cblxuLmx0LWllMTAtbWFnaWMgLm0zNjAtbG9hZGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMmVtO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IC44ZW0gMS4yZW07XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tMzYwLWxvYWRlcjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubTM2MC1sb2FkZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIkxvYWRpbmcuLi4gICBcIiBhdHRyKGRhdGEtcHJvZ3Jlc3MpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5sdC1pZTktbWFnaWMgLm0zNjAtaGludC1tZXNzYWdlLFxuLmx0LWllOS1tYWdpYyAubTM2MC1sb2FkZXIuc2hvd24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGU9MCxTdGFydENvbG9yU3RyPScjN2MzMTMzM0QnLCBFbmRDb2xvclN0cj0nIzdjMzEzMzNEJyk7XG59XG5cbi5sdC1pZTktbWFnaWMgLm0zNjAtaGludC1oaWRkZW4ge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG59XG5cbi5sdC1pZTktbWFnaWMgLm0zNjAtbG9hZGVyIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDk2cHg7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWMzNjAtZnVsbHNjcmVlbiAubTM2MC1sb2FkZXIge1xuICBsZWZ0OiA4cHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4vKiBNYWduaWZpZXIgKi9cbi5NYWdpYzM2MC1jb250YWluZXIgLm0zNjAtbWFnbmlmaWVyLFxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW4gLm0zNjAtbWFnbmlmaWVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggI2NjYztcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgd2hpdGUsIGJsYWNrKTtcbn1cblxuLmx0LWllOS1tYWdpYyAubTM2MC1tYWduaWZpZXIge1xuICBib3JkZXI6IDNweCByaWRnZSAjZTdlN2U3O1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLW1hZ25pZmllci5tMzYwLW1hZ25pZmllci1pbm5lciB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyLmRlc2t0b3AgLm0zNjAtbWFnbmlmaWVyLm0zNjAtbWFnbmlmaWVyLWlubmVyLFxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW4uZGVza3RvcCAubTM2MC1tYWduaWZpZXIubTM2MC1tYWduaWZpZXItaW5uZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDtcbiAgY3Vyc29yOiAtbW96LXpvb20tb3V0O1xuICBjdXJzb3I6IHpvb20tb3V0O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubTM2MC1tYWduaWZpZXIgaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmllOS1tYWdpYyAubTM2MC1tYWduaWZpZXItbG9hZGVyLWhvbGRlcixcbi5sdC1pZTktbWFnaWMgLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NjApO1xufVxuXG4ubTM2MC1tYWduaWZpZXItbG9hZGVyLWhvbGRlciAubTM2MC1sb2FkZXIge1xuICBvcGFjaXR5OiAxO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbn1cblxuLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIgLm0zNjAtbG9hZGVyOmJlZm9yZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgMnMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IHNwaW4tbG9hZGluZyAycyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbi8qXG5cblxuICAgTWFnaWMgU2Nyb2xsIHYyLjAuMjkgXG4gICBDb3B5cmlnaHQgMjAxNyBNYWdpYyBUb29sYm94XG4gICBCdXkgYSBsaWNlbnNlOiBodHRwczovL3d3dy5tYWdpY3Rvb2xib3guY29tL21hZ2ljc2Nyb2xsL1xuICAgTGljZW5zZSBhZ3JlZW1lbnQ6IGh0dHBzOi8vd3d3Lm1hZ2ljdG9vbGJveC5jb20vbGljZW5zZS9cblxuXG4qL1xuLk1hZ2ljU2Nyb2xsLFxuLm1jcy1jYXB0aW9uLFxuLm1jcy1idXR0b24sXG4ubWNzLWl0ZW0sXG4ubWNzLWl0ZW0gaW1nLFxuLm1jcy1pdGVtID4gKixcbi5tY3MtYnVsbGV0LFxuLm1jcy1idWxsZXQ6YmVmb3JlLFxuLm1jcy1idWxsZXQ6YWZ0ZXIsXG4ubWNzLXdyYXBwZXIsXG4ubWNzLWl0ZW1zLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogMDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5NYWdpY1Njcm9sbCxcbi5tY3MtaXRlbSxcbi5tY3MtaXRlbSBhLFxuLm1jcy1pdGVtIGltZyxcbi5tY3MtaXRlbXMtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uTWFnaWNTY3JvbGwsXG4ubWNzLWl0ZW0sXG4ubWNzLXdyYXBwZXIsXG4ubWNzLWl0ZW1zLWNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuXG4ubWNzLXdyYXBwZXIsXG4ubWNzLWl0ZW0gaW1nIHtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG59XG5cbi5NYWdpY1Njcm9sbCB7XG4gIHotaW5kZXg6IDE7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICBjdXJzb3I6IC1vLWdyYWI7XG4gIGN1cnNvcjogLW1zLWdyYWI7XG4gIGN1cnNvcjogZ3JhYjtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCB7XG4gIC1tb3otdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC12ZXJ0aWNhbCB7XG4gIC1tb3otdG91Y2gtYWN0aW9uOiBwYW4teDtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG5cbmJvZHkubWNzLWRyYWdnaW5nIHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW8tZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1zLWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG5ib2R5Lm1jcy1kcmFnZ2luZyAuTWFnaWNTY3JvbGwsXG5ib2R5Lm1jcy1kcmFnZ2luZyBidXR0b24ubWNzLWJ1dHRvbi5tY3MtaG9yaXpvbnRhbC5tY3MtYnV0dG9uLWFycm93IHtcbiAgY3Vyc29yOiBpbmhlcml0O1xufVxuXG4ubWNzLWl0ZW0sXG4uTWFnaWNTY3JvbGwgZmlndXJlLFxuLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1jcy1pdGVtIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNTY3JvbGwgPiAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5NYWdpY1Njcm9sbCA+ICo6Zmlyc3QtY2hpbGQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5NYWdpY1Njcm9sbCA+ICo6bnRoLWNoaWxkKG4rMikge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uTWFnaWNTY3JvbGwgPiBhIHtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG59XG5cbi5NYWdpY1Njcm9sbCBpbWcge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLWl0ZW0gaW1nIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1jcy1idXR0b24sXG4ubWNzLWJ1bGxldHMsXG4ubWNzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5NYWdpY1Njcm9sbDpiZWZvcmUsXG4uTWFnaWNTY3JvbGwgZmlnY2FwdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBoZWlnaHQ6IDA7XG59XG5cbi5tY3Mtd3JhcHBlciB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgei1pbmRleDogMTAwO1xufVxuXG4ubWNzLWl0ZW1zLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tY3MtaXRlbSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgem9vbTogMTtcbiAgZm9udC1zaXplOiA5cHQgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm1jcy1pdGVtOmFmdGVyLFxuLm1jcy1pdGVtID4gYTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1pdGVtIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubWNzLWl0ZW0gPiBhLFxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1pdGVtcy1jb250YWluZXIgPiAqIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWNzLWl0ZW0gYSxcbi5tY3MtaXRlbSBpbWcge1xuICBib3JkZXI6IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbn1cblxuLm1jcy1pdGVtIGEge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tY3MtaXRlbSBpbWcge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uTWFnaWNTY3JvbGwgZmlndXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDA7XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3MtaXRlbSA+IGEgPiBpbWcge1xuICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4ubHQtaWU5LW1hZ2ljIGZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmx0LWllMTAtbWFnaWMgLm1jcy1pdGVtIGEgaW1nIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uaWU3LW1hZ2ljIC5tY3MtaXRlbSBpbWcsXG4uaWU3LW1hZ2ljIC5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWl0ZW0gYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmllNy1tYWdpYyAuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5tY3MtYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5pZTExLW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtcy1jb250YWluZXIsXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gLm1jcy1pdGVtcy1jb250YWluZXIsXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY292ZXItZmxvd1wiXSAubWNzLWl0ZW1zLWNvbnRhaW5lciB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgLW1vei1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAtby1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi14OiA1MCU7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luLXk6IDUwJTtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIC5tY3MtaXRlbSxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIC5tY3MtaXRlbSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLW1vei10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAtby10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4uTWFnaWNTY3JvbGwgZmlnY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICBjbGVhcjogYm90aDtcbiAgei1pbmRleDogMTUwO1xufVxuXG4uTWFnaWNTY3JvbGwgZmlnY2FwdGlvbixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjYXJvdXNlbFwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gIGxlZnQ6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMXB4KSB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMXB4KSB0cmFuc2xhdGVYKC01MCUpO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGwgZmlnY2FwdGlvbixcbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsIGZpZ3VyZSBpbWcge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLXJlZmxlY3Rpb24ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxlZnQ6IDBweDtcbiAgei1pbmRleDogMTtcbn1cblxuLk1hZ2ljU2Nyb2xsIC5tY3MtaXRlbS5tY3Mtbm9pbWcge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUI0QUFBQWVDQVlBQUFBN01LNmlBQUFHQjBsRVFWUklTNVdYYTJ3VVZSVEgvM2RtbjIxMzZiNWEydTJMc29vZ0VpR0dCR25sWVVKTWlFcGkxTVNZR05Idm9BamZORVEvaWFMNFhUQW14a1FTRTN6RmFFU1FyWklRSXhIbGFWdEsyMjI3M1VkaHR0M25QRHgzWm1jN3U5dHRkWkxON3M2Y2UzN25mODg1OTk1aCtHOFgreVhVTVNobzRsNHdiVHRqaUFETVp3elY1alFOdzB4anZ5bE0rWFpIWWpyS2I2N2tsaTFuY0JRUUhnK0dEektSSFcvdTc0RjNRd1ROYTdyaERQb2dOcm4wb1VvMmowSnlEZ3UzSnlGZCt3Y0xvK1BRRk8zUTJXVHNCSTFYRy9sdkNJNkdPbDltZ25qS3YzVVQyaDdmQnB1ZFpLU1RVS1c3MEhKWmFISko5OG5vQVhNM1FmQzJndm1ENExkbnoxNUUrdElWYUtxeWZ6QXg5Y2xTOENYQkY5ckNiN3Y4dmpkN1hud2FUb2NLWldKVWg5RVVHN0FhVCthODBwVHJRWWpkL1NnVUJZeC85aFh5NmJsM0hwdU52VlVMcndOSFErRVRua2p2Z2U1bjl3QmpONkZtN3VsQVZzWTFtcUlLbk5MTEF4QThxNEMrZFJnLy9RUG1SOFkvR2t6RURscmhWWDZpd2E1M3ZldjZqdlRzMndIbHhwK0FYS3dEbXFwckZYQ1lYbXJsQjRRSGJBNkk2eC9HK0puenlOd1llMjhnT1huRUhGY0I4NXk2MmdLbitsOTRBc3IxeXdUVWRHanQ5SzZzdUJ3QWNUbWNleEhYYjhIbzU5OGpQNXVxNUZ6M2N4b1F3NnU3NWY2WG5vSVl1d0dteUJWb09wbEVScEowYjE2dkY0RmcwTWh6T1NMTmxFcjNVbVFybFcwOVpPc0xCQTI0YUlNU2ZnQ2puMzZOMk15RTdUbHFCaDBjRFlaZkR6enk0UEZRMkFFdGN4ZENXV2s2blVZbWswSDdseGQxV1B5WmJmQjZQQWdHQW5XRm1reWxJTlhZZXNqVzUvTlRUNUZ1VHlzU3NTSlN2MTg5TkppTWZjREJiS2k5UzQwOHZ4dEM3SmFoVkZjRTNKbU1WYUFtU1llM3RDRGthNjNBRTNOM0ljM1BMMm5iRXc3cmVlZksxZkI5R1A3aUhBYmlrd0s3RUZ5OXc3T201M3c0NGdhb1pZUXlsTVBIcHVOMXppckttNXNRV3VWRjRwNEVhU0hiMEs2M28xMnZjbjBsb1ZhTERlZVF1VDIray9GS1hqMzQwQkd2SERlVVdzRHB6QUl5dVZ4anVOc05hWm5uSHJjTFBrK0xEalpVQTVLdEhUUFJ2NDR4NnR0bzMrNk5BdzVwU29jS2VzOHU5bTA2bTRPVUx6U0VtL20zSnAybncrTjBJdERzTGxjMktTN0RDOTVPalA5OE5jcUcyc0l6YTdmM3RRc0xjeGFvQVRaYktaWExReXFVMEhubVVsMVIxZDZZMnJjVlhxY2RBVkpyS05VN1d2OXd1TnJzdzhpdlkzRUNkeFVpVy93T0ZQTlZhczBwMTF1SHR3cUJwWktNM3U4dU40VGYyYnNaWHJzTmZnTHphM0dLRFRnSHcrSEM4Qi9wb2c1ZXU4SGxZSnE2TEpnN1NwVVVTTEtLeUk5LzE4R0g5MnlFMXlZZ1lCY1hWNjlLYmhmQkdoTXdjaTNQd2VHWjd2dWQ3VGFCZXMyUzMxckZjeVVWODRxSzllZHVObFI4ZmRjNnRJZ0NXdTI4TitvVjh4bVFWWWFKVzRXNFhseHRrZVlCcDYxVURiYnNSRnhsanFDYmhrWlh6UEdWZ1g2NENlNGg5WXZ3Y3A0SlhKRHRTQXhucWJpQ1hjZThmZDdEVFM1ajJ6UFhZck80c2dUTlUzSTJYN3hUQjcyOHJiZmhmU2UxUnhNRllDREw3VVEvczNrMzdvMWxqdWtMaUN1NDZyekhYNmhxSng1Q2dmSmVYQWJLblJlV2VXNG5KUzZ5TVF1TGYyZlNUdVNUOTNZYVMyWmJsK3JwRVNGU01TN21tUmF5Rlp5YTRCSWxyOUdNbUdDZVg0Vk9KNWtKRlQvRko4VEtKdUVJT0k0N2ZJcEZOY05TRHZuMDhsRTJ5OFlzazFlRkhOZkN1YTJOYk0zRm96Z25vcGdxVmpZSmZWdnNiTytXSFIwTWduTlJ0WmxVMHlGM1pLeHUxYnV5dmtBUW5IOWJiYTI1VlF0QWNWckRWTnl5TFhJRE9nanNGOXoyazJJYkxlZFVrT2FVaS9URHhKZ3IwSktsemM5Ymx1TGttNExDZzlFVFRMOW5xZEJ5cFZjSEVsTW4rZmlxMEhtRm80VWRCdC9ydVpPYUtxOGJZSW1nNnNoanFXSjlHcEwwbWRlV1B2cVlQdmhoRDAzQ0FTVklDNHJSaXZwbGJiT2xGRnZieG54T1RRRXhTU096NnZLSFBYTUFWNjQ1Y2Jqa0ozY09RN24xcXZsYjk5cWdIM09MZ0QxTmFTcWdTbW10a0RvUlE2SE9WMGp5eDNJelVQTFE2Y0ZXSDBEdElQMVlLeE13dzJCYjRQT3RWbkphYTFzYmZOWHpvOFlyekd0TVlPL0xWTzJ5UzRQc01JTFF6Q1cxRExNVkNaYW5EMVd2cG1wdjBDdk1oelQrLzcvQ1dDUGdBZXdLZFF3d1RYeVNNZTFSbXZxMU5TOXRJeHE5dEdsTStlWmNZbnBvT2FEcDkxL2hyczRZMnI3RkRRQUFBQUJKUlU1RXJrSmdnZz09XCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xufVxuXG4vKlxuICogQ2FwdGlvblxuICovXG4ubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE1MDtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gLm1jcy1pdGVtIGZpZ2NhcHRpb24ubWNzLWNhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gLm1jcy1pdGVtIGZpZ2NhcHRpb24ubWNzLWNhcHRpb24ge1xuICB0b3A6IDEwMCU7XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtIGZpZ3VyZSxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIGZpZ3VyZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBib3R0b206IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjI1cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXM7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNTAlKTtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW06aG92ZXIgLm1jcy1jYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW06aG92ZXIgLm1jcy1jYXB0aW9uIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbixcbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgYm90dG9tOiAtMTUwJTtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbTpob3ZlciAubWNzLWNhcHRpb24sXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtOmhvdmVyIC5tY3MtY2FwdGlvbiB7XG4gIGJvdHRvbTogMCU7XG59XG5cbi8qKlxuICogQnV0dG9ucyAmIEFycm93c1xuICovXG4ubWNzLWJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTAwMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgbGluZWFyO1xufVxuXG4uTWFnaWNTY3JvbGw6aG92ZXIgPiAubWNzLWJ1dHRvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tY3MtYnV0dG9uLWFycm93IHtcbiAgei1pbmRleDogMTIwO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDBweDtcbiAgbGVmdDogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogYXV0bztcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gLm1jcy1pdGVtLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gLm1jcy1pdGVtIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qXG4gKiBCdWxsZXRzXG4gKi9cbi5tY3MtYnVsbGV0cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDA7XG4gIHRvcDogMTAwJTtcbn1cblxuLm1jcy1idWxsZXRzLnNob3cge1xuICBvcGFjaXR5OiAxLjA7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuNXM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjVzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idWxsZXRzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGxlZnQ6IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1bGxldHMge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1jcy1idWxsZXQge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbjogNHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogOTk5OXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ubWNzLWJ1bGxldC5hY3RpdmUge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogQW5pbWF0aW9uIG1vZGVcbiAqL1xuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBkaXZbZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBkaXZbZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjM1cztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjM1cztcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIGRpdltkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xMiwgMC4zNywgMC4yNSwgMSk7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjEyLCAwLjM3LCAwLjI1LCAxKTtcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gIGFuaW1hdGlvbi1uYW1lOiBub25lO1xuICBhbmltYXRpb24tZHVyYXRpb246IDA7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjFcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4xNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4xNXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjJcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4ycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCIzXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMjVzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuMjVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCI0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuM3M7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiNVwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjM1cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjM1cztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hbmltYXRpb24tbnRoPVwiNlwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjRzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNHM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjdcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC40NXM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC40NXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjhcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCI5XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNTVzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNTVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCIxMFwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1lbnRlcmluZ10sXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZXhpdGVkXSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMDAwMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMDAwMHB4KTtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBbZGF0YS1lbnRlcmluZ10sXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIFtkYXRhLWV4aXRlZF0ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwMDAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMDAwMHB4KTtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1lbnRlcmluZ10sXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIFtkYXRhLWV4aXRlZF0ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwMDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwMDBweCk7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIFtkYXRhLWVudGVyaW5nXSxcbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIFtkYXRhLWV4aXRlZF0ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwMDAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMDAwMHB4KTtcbn1cblxuLyoqXG4gKiBTbGlkZUluIGFuaW1hdGlvblxuICovXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0sXG4ubWNzLXNsaWRlaW5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0sXG4ubWNzLXNsaWRlaW5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xMiwgMC4zNywgMC4yNSwgMSk7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjEyLCAwLjM3LCAwLjI1LCAxKTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuMzVzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuMzVzO1xufVxuXG4vKiBIb3Jpem9udGFsIEZvcndhcmQgKi9cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZXhpdC1zbGlkZWluO1xuICBhbmltYXRpb24tbmFtZTogaC1mb3J3YXJkLWV4aXQtc2xpZGVpbjtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1mb3J3YXJkLWVudGVyLXNsaWRlaW47XG4gIGFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZW50ZXItc2xpZGVpbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtZm9yd2FyZC1leGl0LXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaC1mb3J3YXJkLWV4aXQtc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02MDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02MDBweCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtZm9yd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxODBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaC1mb3J3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxODBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDE4MHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cblxuLyogSG9yaXpvbnRhbCBCYWNrd2FyZCAqL1xuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1leGl0LXNsaWRlaW47XG4gIGFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWV4aXQtc2xpZGVpbjtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWVudGVyLXNsaWRlaW47XG4gIGFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWVudGVyLXNsaWRlaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWJhY2t3YXJkLWV4aXQtc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNjAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaC1iYWNrd2FyZC1leGl0LXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwMHB4KTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1iYWNrd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoLWJhY2t3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTgwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxufVxuXG4vKiBWZXJ0aWNhbCBGb3J3YXJkICovXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZXhpdC1zbGlkZWluO1xuICBhbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWV4aXQtc2xpZGVpbjtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZW50ZXItc2xpZGVpbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1lbnRlci1zbGlkZWluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1mb3J3YXJkLWV4aXQtc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC02MDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB2LWZvcndhcmQtZXhpdC1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwMHB4KTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1mb3J3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxODBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE4MHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB2LWZvcndhcmQtZW50ZXItc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE4MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTgwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgfVxufVxuXG4vKiBWZXJ0aWNhbCBCYWNrd2FyZCAqL1xuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWV4aXQtc2xpZGVpbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZXhpdC1zbGlkZWluO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1lbnRlci1zbGlkZWluO1xuICBhbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1lbnRlci1zbGlkZWluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1iYWNrd2FyZC1leGl0LXNsaWRlaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtYmFja3dhcmQtZXhpdC1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MDBweCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtYmFja3dhcmQtZW50ZXItc2xpZGVpbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xODBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xODBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdi1iYWNrd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE4MHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE4MHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cbn1cblxuLyoqXG4gKiBCb3VuY2UgYW5pbWF0aW9uXG4gKi9cbi5tY3MtYm91bmNlW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC44NCwgMCwgMSwgMSk7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjg0LCAwLCAxLCAxKTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNHM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbiAgLyotd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDBzOyovXG59XG5cbi5tY3MtYm91bmNlW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTIsIDAuMzcsIDAuMjUsIDEpO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xMiwgMC4zNywgMC4yNSwgMSk7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjRzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuNHM7XG59XG5cbi8qIEhvcml6b250YWwgRm9yd2FyZCAqL1xuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1leGl0LWJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1leGl0LWJvdW5jZTtcbn1cblxuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZW50ZXItYm91bmNlO1xuICBhbmltYXRpb24tbmFtZTogaC1mb3J3YXJkLWVudGVyLWJvdW5jZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtZm9yd2FyZC1leGl0LWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVaKC0xcHgpO1xuICB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpIHRyYW5zbGF0ZVooLTFweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoLWZvcndhcmQtZXhpdC1ib3VuY2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgfVxuICA0MCUge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KSB0cmFuc2xhdGVaKC0xcHgpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWZvcndhcmQtZW50ZXItYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gIH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtZm9yd2FyZC1lbnRlci1ib3VuY2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMDAwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgfVxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICB9XG59XG5cbi8qIEhvcml6b250YWwgQmFja3dhcmQgKi9cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1leGl0LWJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZXhpdC1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZW50ZXItYm91bmNlO1xuICBhbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1lbnRlci1ib3VuY2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWJhY2t3YXJkLWV4aXQtYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVooLTFweCk7XG4gIH1cbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHRyYW5zbGF0ZVooLTFweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoLWJhY2t3YXJkLWV4aXQtYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVooLTFweCk7XG4gIH1cbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHRyYW5zbGF0ZVooLTFweCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtYmFja3dhcmQtZW50ZXItYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMDAwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gIH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtYmFja3dhcmQtZW50ZXItYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMDAwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gIH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgfVxufVxuXG4vKiBWZXJ0aWNhbCBGb3J3YXJkICovXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gZGl2W2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1leGl0LWJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1leGl0LWJvdW5jZTtcbn1cblxuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIGRpdltkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWVudGVyLWJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1lbnRlci1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1lbnRlcmluZ10ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwMDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwMDBweCk7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1leGl0ZWRdIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1mb3J3YXJkLWV4aXQtYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdi1mb3J3YXJkLWV4aXQtYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWZvcndhcmQtZW50ZXItYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtZm9yd2FyZC1lbnRlci1ib3VuY2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMDAwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB9XG59XG5cbi8qIFZlcnRpY2FsIEJhY2t3YXJkICovXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIGRpdltkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWV4aXQtYm91bmNlO1xuICBhbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1leGl0LWJvdW5jZTtcbn1cblxuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBkaXZbZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZW50ZXItYm91bmNlO1xuICBhbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1lbnRlci1ib3VuY2U7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWJhY2t3YXJkLWV4aXQtYm91bmNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC42O1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtYmFja3dhcmQtZXhpdC1ib3VuY2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWJhY2t3YXJkLWVudGVyLWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB2LWJhY2t3YXJkLWVudGVyLWJvdW5jZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB9XG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cbn1cblxuLypcbiAqIEFycm93c1xuICovXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2OmJlZm9yZSxcbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LW5leHQ6YmVmb3JlLFxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LXByZXY6YmVmb3JlLFxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItd2lkdGg6IDNweDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNik7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjE1cyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMTVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldjpiZWZvcmUge1xuICBsZWZ0OiA2MiU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWigtNDVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKC00NWRlZyk7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LW5leHQ6YmVmb3JlIHtcbiAgbGVmdDogNDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooMTM1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWigxMzVkZWcpO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctcHJldjpiZWZvcmUge1xuICB0b3A6IDYyJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWig0NWRlZyk7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0OmJlZm9yZSB7XG4gIHRvcDogNDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooLTEzNWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooLTEzNWRlZyk7XG59XG5cbi5tY3MtYnV0dG9uLWFycm93Lm1jcy1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuMDEgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsID4gLm1jcy1idXR0b24tYXJyb3cge1xuICAvKmZvbnQtc2l6ZTogMjBweDsqL1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW46IGF1dG87XG4gIG9wYWNpdHk6IDAuNjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgbGluZWFyO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiBhdXRvO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5NYWdpY1Njcm9sbDpob3ZlciA+IC5tY3MtYnV0dG9uLWFycm93OmhvdmVyOm5vdCgubWNzLWRpc2FibGVkKSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5NYWdpY1Njcm9sbDpob3ZlciA+IC5tY3MtYnV0dG9uLWFycm93OmhvdmVyOm5vdCgubWNzLWRpc2FibGVkKTpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMzMTMzM2Q7XG59XG5cbi5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMTUzLCAxNTMsIDE1MywgMC41KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgbGluZWFyO1xufVxuXG4uTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdzpiZWZvcmUge1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZTpob3ZlciA+IC5tY3MtYnV0dG9uLWFycm93OmhvdmVyOm5vdCgubWNzLWRpc2FibGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Nik7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIGxlZnQ6IDVweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgcmlnaHQ6IDVweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIHRvcDogNXB4O1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgYm90dG9tOiA1cHg7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNTMsIDE1MywgMTUzLCAwLjUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3MtYnV0dG9uLWFycm93OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzgzODU4Qjtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGw6aG92ZXIgPiAubWNzLWJ1dHRvbi1hcnJvdzpob3ZlcjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMzMTMzM0Q7XG59XG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3c6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzEzMzNEO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTYwKTtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdzpob3ZlciB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT05Nik7XG59XG5cbi5sdC1pZTktbWFnaWMgLm1jcy1idXR0b24tYXJyb3cubWNzLWRpc2FibGVkIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTAuMDEpICFpbXBvcnRhbnQ7XG59XG5cbi8qXG4gKiBCdWxsZXRzXG4gKi9cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnVsbGV0cyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWJ1bGxldHMge1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idWxsZXRzIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsLk1hZ2ljU2Nyb2xsLWJ1bGxldHMge1xuICBtYXJnaW4tcmlnaHQ6IDM1cHg7XG59XG5cbi5tY3MtYnVsbGV0IHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgzODU4Qjtcbn1cblxuLm1jcy1idWxsZXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE1YTVhO1xufVxuXG4ubWNzLWJ1bGxldC5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzVhNWE1YTtcbn1cblxuLyogQ2FwdGlvbiAqL1xuLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogNXB4IDA7XG4gIGZvbnQ6IG5vcm1hbCA5cHQvMS4yZW0gJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCAnTHVjaWRhIEdyYW5kZScsICdMdWNpZGEgU2FucyBVbmljb2RlJywgVmVyZGFuYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRleHQtcmVuZGVyaW5nOiBnZW9tZXRyaWNQcmVjaXNpb247XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMzM0Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDksIDUxLCA2MSwgMC43KTtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24sXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT02MCk7XG59XG5cbi8qIENhcm91c2VsICYgQ292ZXIgRmxvdyAqL1xuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0ge1xuICBiYWNrZ3JvdW5kOiAjNGY0ZjRmO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gaW1nLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gaW1nIHtcbiAgYm94LXNoYWRvdzogMHB4IDE1cHggMzBweCAtMTBweCAjMDAwO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gZmlnY2FwdGlvbixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIGZpZ2NhcHRpb24ge1xuICBwYWRkaW5nOiA0cHggMCAwO1xuICBmb250LXNpemU6IDEwcHQ7XG4gIGZvbnQtZmFtaWx5OiAnTHVjaWRhIEdyYW5kZScsICdMdWNpZGEgU2FucyBVbmljb2RlJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbn1cblxuLyogTWlzYyAqL1xuLk1hZ2ljU2Nyb2xsLm1jcy1zaGFkb3dzIHtcbiAgYm94LXNoYWRvdzogMCAxcHggNnB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLWJvcmRlciAubWNzLWl0ZW0ge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbC5tY3MtYm9yZGVyIC5tY3MtaXRlbSB7XG4gIG1hcmdpbjogMCAzcHg7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5tY3MtYm9yZGVyIC5tY3MtaXRlbSB7XG4gIG1hcmdpbjogM3B4IDA7XG59XG5cbi8qXG4gKiBMb2FkZXJcbiAqL1xuLm1jcy1sb2FkZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAwO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICByaWdodDogMHB4O1xuICBib3R0b206IDBweDtcbn1cblxuLm1jcy1sb2FkZXIgLm1jcy1sb2FkZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMzVweDtcbiAgd2lkdGg6IDcwcHg7XG4gIGhlaWdodDogMjBweDtcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNik7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgaGVpZ2h0OiAxMXB4O1xuICB3aWR0aDogMTFweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBNYWdpY0NpcmNsZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNDhzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IGxpbmVhcjtcbiAgYW5pbWF0aW9uLW5hbWU6IE1hZ2ljQ2lyY2xlO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuNDhzO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWRpcmVjdGlvbjogbGluZWFyO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDEge1xuICBsZWZ0OiAwO1xuICB0b3A6IDI1cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjE4cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjE4cztcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzAyIHtcbiAgbGVmdDogN3B4O1xuICB0b3A6IDdweDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMjRzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuMjRzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDMge1xuICBsZWZ0OiAyNXB4O1xuICB0b3A6IDA7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wNCB7XG4gIHJpZ2h0OiA3cHg7XG4gIHRvcDogN3B4O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4zNnM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4zNnM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wNSB7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDI1cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjQycztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjQycztcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzA2IHtcbiAgcmlnaHQ6IDdweDtcbiAgYm90dG9tOiA3cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjQ4cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjQ4cztcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzA3IHtcbiAgbGVmdDogMjVweDtcbiAgYm90dG9tOiAwO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC41NHM7XG4gIGFuaW1hdGlvbi1kZWxheTogMC41NHM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wOCB7XG4gIGxlZnQ6IDdweDtcbiAgYm90dG9tOiA3cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBNYWdpY0NpcmNsZSB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBNYWdpY0NpcmNsZSB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIH1cbn1cblxuLm1jcy1pdGVtLWxvYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2UvZ2lmO2Jhc2U2NCxSMGxHT0RsaEtnQXFBT1p5QUZsV1YvWDA5RVJBUVMwcEt0N2Qzckt3c2NqSHlKeWFtM0J0Ym9hRGhPZm01dmYzOTlYVjFYTndjZGJXMXJXMHRJT0JnY1hFeEdKZllKU1NrajQ2Ty9iMjlwR1BqK1BqNDhqSHgvMzkvZURmMzl2YjI2U2lvN3U2dXF5cXE4ckp5Zkh4OGZuNSthMnJyTzNzN2MvT3orcnE2cWlucDBkRVJlTGk0bHRZV2JxNHVmRHc4SkNPai92NysvUHo4MjVzYk9qbzZJS0FnWldUbFBqNCtORFAwT2JsNXZYMTlmejgvUHI2K3Z6Nys5ZlcxK0hnNE96czdMZTJ0dVRrNUdkbFpZMkxqTnJaMmRqWDE4dkt5dWpuNTU2Y25hR2dvSmFVbGIyOHZNTEJ3akFzTGUvdjcrL3U3c1REdzg3TnplN3Q3ZVhsNWNHL3dOTFIwZDNkM2RuWTJIVnpjMzk4Zlc5dGJkVFQwNk9ob3JDdnJ6bzNPTFN5czdhMXRXUmhZbEJOVHVMaDRkSFEwS0tob2ZMeThybTR1SjJibk16THk4bkl5WGwyZDVpV2xwK2RuYWFrcFh4NmVvcUlpTUhBd2R6YzNNN096aUllSC8vLy93QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ0gvQzA1RlZGTkRRVkJGTWk0d0F3RUFBQUFoK1FRSkNnQnlBQ3dBQUFBQUtnQXFBQUFILzRCeWdvT0VoWWFIaUltS2hpcHhjU3FMa1pLQ0FJNEFrNWdNUHl3Z2haVnhsNFU0TXhtWWhSU09MSjZXb2dFQkZhYUVTbzV4RjRTZm9ZSVpyZ0Uyc1lORnRMbHl1SVFMdkMyL2c2aU9HSVBGZ2plOHNNcUNHTFFVejZ5Q0ZidzMxZHJOZ2d3VUZBelJ2QXVZT2lkYldZVVh0T2VIdTY2bGhDc2FLQ0dHVndQL0p6NFFVbEhGZzZJV0lYSVFxb0NDZ0VNWWhvNzhteWdCU3JVV0NoeHFaR0pvak1TSi81RDhDcUJ4NHoxRFVDU0FaUE9yUkVrRnlSWjlPUEZQeXk4WERsRlFtL1JCUjdVUU84RUpIVXBVVHBNR1NKTTIyQ0EwZ0lPblVCMDhFU1NncXRXcUtZU1NNTUMxSzFlcVY2MW1CYmZWYTFkQlI1VWlaUXJPYWRTblU5YUx5cDJiU1VPMUZUeE1NWGdCQUVDVVgyQUtGT2lRZDFFSkNIMzdwdm4xUWJEZ0NMNE9CZkNRT1BHUVh3b2NPeGFDd3hEbHloQktWTE1SUVhNQklZYUFKSDR4VDVDVU1tY1VCWEZqZHhDUERvNEZGdEx3d2t1WFFpTVFDUGVCYU1TQjR5NEtUZW5SWVFXbUNjSVJzQzJoUm8xb09UV09IM2d3ZEVQMEdJTkVXTEFnWXBBSjdUV0V4b2pPVm81NDhvT3lIemNCTGtyMENZVGVseC8wUUR1V2FtaEVOMEorNCswbmlBdmFpVkhOZWdqMFVJaCtoVGd4WHpVK2xORkRVTzRWV0VnSVRuUXdJRjBRMHBYSUcrTzlJZUtKZ2dRQ0FDSDVCQVVLQUhJQUxBQUFBQUFxQUNvQUFBZi9nSEtDZzRTRmhvZUlpWXFHS25GeEtvdVJrb0lBamdDVG1EcFhSMk9GbFhHWGhDQXNQd3lZaFNjREEwZWVsb1VzamhTbmhGdXFBMUNFbjZHQ0Y0NXhTck9EV2JZU3VhNkRuM0ZGd1lPcHFoL0l4M0lZdnJMTWdoKzJKOUdnZ3hTK0dOZURFcmJRY2d3VUZLYlR2cnVSR3lsZklvVlF0anFJREw0WGhTMDJGUm1HckFnWW1JSUdJU1JzdENqeVVBWFNvQnNWQWtpY1ljakl3SXNOaUZ6THNFQ2lSeHlHWEZpOE9MQkpzQndlUHlZaTBvQmttMkFoVWk0QXVJaEdpb0ZrZ3JXUVdPSEdLUm9iTnZvVVI3U28wVUZESUNoZENrRUQwUkFLb2twVkVJQVNnS3RZQWJ3Z2lvS0ExNjllcldhOXVsVmNWN0JmQlNWbHF0U3BPS2hUMnFOV1BVcTNMcVlOUHE0RkFIRnFRd3dFQ000RUsySEFBQW0raTBaTUFBeDRUYkFnaFFzN29IaW9RZy9HaktVRWV4STU4b1VjaGk1am5qRGkyZ3dIblEzc0sxU0djWXlnZzZoNENLTUlEQWtGb2toRURtTElSd3cwVVFvdFNVQWNCcUlWQlpMYktLVEFESW01a2pnUVQ3QkQwQWdUSmtyTDRaRzhRSVNpTzZiTEdQVGd3SUVIZ3pwMDUwRlV4dlRxZ3NxZkg4UTllUWR4SDZaeklDUWYvYUFJM1UxeERSRFRMY0dmZWY0SllrTjNQVnpqWGdKSkZOSmZJVUxZZHcwTUhpU3hnSVFJRm9LREVCK3NZSmNjRTQ2SWlBYm11V1hpaUlFQUFDSDVCQWtLQUhJQUxBRUFBUUFvQUNnQUFBZi9nSEtDZzRTRmcwZ0RBMGlHakkyT2hoS0pFbytVaGh0V1JpNkZrUU9UbFo5eUtRSUNScHVTb0o5Zm93SkVoSnllcUk4aXF3MnVwN0dVb3FNMGc2KzRsRFNyS2IyM3Y0NE5xN3h5T2ljbk9zWnlHaTllWFlWRXF4dS9SVW9VRElSQUFPRXYzb05OYldTNEdCUng3RCtFSHVIeEVDWFFGd0RzK0N5RUFmRHg0VU8vVk9ETEI4SlFDUWorMHZ5cU1oREFoVWNNWG9TTDhzc0RPd29ZUURIUUFJMUJSbWdnUTRxVUkyV0N5Wk1UZklUTXNLQ2x5d1U1RU1pY0tUTkd5QW9CY3VyTVNaT21UWkE0ZCtvc2lkS2tTcEFzWDdiTU1iS3AwMDg3WUVBTFVRSFVEaGtKRW9UNTVZSUFBUlJWSFMzaGtEVXJsMTh3dkhwVjBNTFFnaVJscHN0UytSVkFyVm9tR1FqQmpjdGhDYlFXQ3V3U1lQS3VySXdkaERSMENQS294SlFuaENxZ1VDdDFFQXdaUUQ0VWNuR2c4NGhHQVF5SW5sRm9oUVlVSVQ0OTZIeWdocUFWSFRxc0VBUkN0QUVISUd1d05qRW9Rb0VDRVFhUnNGM1FtQW5XcmdYNUJqNm90bWdTeHJDd2ZrQm9lZkJCRG13citDV0d0YWJldjY4TG1tSGJ6Sy9qQjV3VXNsN293dk5mSXpvNFNWMDlmS0VjRjRJRWVNcithU01GdjIySFN5QUFJZmtFQ1FvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9aTkFnSk5pNUdTZ2cyT0RaT1lHa0FlQVlXVkFwZUVZMGRYT3BpRkx3QUFIcDZXaFVjREF5ZW5oRjZxQUNXRW42R0NVTEVEVzdTRFhiY1F1cTZERXI5WndvT3BxZ3lEdTRNZnY3UE5nZ3kzTDlMSWNpZS9IOWlERUxmUmNoc3BLUnVDMWJFU21ENHhhRkdGSmJjYWlEcS9VSVZGU2hUT0VTcURvR0FNZG9PR3BLbVhTQXNiSklRd1VJaEQ4WWVoSGdVelRoaUI3UUlBaWlCWkdLcUFNV05CS2NKVWdBd0pBdEdJQ1NiWENLdXlFc0NGU0J0aUZEd2p6QU5GQ2hoT2JmQ0JqVUhRY1VpVEtoMUVoWVBUcHh4Z0lOVjI2NVlLUVFteWFzMHFBK25FbFNDeGJ0WGFkZHhYc0hFRU5ZWHFWT280cWxYWEFWeGRTcmN1cGhvY20yVzRjYXFHaVFNSGdnaHJFU0JBQmI2TFhEd0FETmlOc0JtRkN5L0lnQ2lFRThhTTg5SEtFVGt5amtPWE1UOXdnUzNEZ3M0QlBoZnF3TmhFRFVJS1BvQlI1S0pFcDBFM0trU2VZV2lFQ1RGWUN0a29RSHhGWlFMSVd4UnFZYU1DNVVrUmlCZmdJU2dBQ1JLM0t5QW5vQ0FwRCtrZEJqa3dZTURCSUJUYkt5RHRJSjI2b1BIbEIybEhqbUxjRk9rUkNNRTNQMGpCZHVQTjlDQ2REZnFSeDU4Z0xXeW5tVERzRlNCRUlmc1Z3Z1I5Mkt6d2dSQ3FpV2RnSVJrd0FVTUlkc2tSWVlpSVBFSGVFeVNtR0FnQUlma0VCUW9BY2dBc0FBQUFBQ29BS2dBQUIvK0Fjb0tEaElXR2g0aUppb1pEQUFCRGk1R1NnaENPRUpPWVBtVTlGWVdWQUplRUxrWldHNWlGTVFnSVBaNldoVVlDQWltbmhHaXFDQ09FbjZHQ1JMRUNYN1NEVWJjVHVxNkREYjhpd29PcHFxYVV5SEkwdjdQTmdodTNNWU83Z3ltL05OaURFN2ZSR2k4dkdvTFZzUTJZTURKQUg0VWp0ejZJRzc5RWhWbGJKem9NZVVoQVVNWU9RbExXbkZGRXBrMFRRaDlPREpoNHhWQVNnaGc1TE1FR1JjTEVqMGNNTGJpSWtTQVZZVWcrZ2h5RGFBbUhrbHlFc1ZFcEFVcWtIVElJaGhHbVplSUplcGgyd01DbUEraTRvMGlUQ3RMd29LblRCN25HTVhCRTFaRUtRUWV5YXMxcTRpaUZPR0REZ3NXNlZXdlhjVi9GaGwzNjFHbFViRlBUcTFwVlNyZnVLUjRyNEdLNDI2RkFBVERDUElDbHNIZVJqUWgrL1pJUTlrTXNnQXVJY0FoSm5GaUJNQlZxNDdBQVlXZ3k1UWcyc0YwQW9KYUZvUStKTy9BZzlDUklDVVV0UXVRZ2hDRnRuQitHVm5Ub01hWFFEQVBBQXlES0VLQjRoa0pGbEZCZ2dNa0JjQU9jNVlSQWdTS0VvQnZGQXl4QUN1TDVZa0VLQ0JDd0xLaEM5aHRIU1R5UExpZjgrRUhZaTNmQ3B1QzVBMEx1eVF0YWtMMEZOalBQellDZmVQckpRVnh4b1RXam5nR1FEZmdlSVRqSWgwMEFRVnd3bTRNRkNvTERETWZabFo5ZGlnUWdubkFnbGloSElBQWgrUVFKQ2dCeUFDd0JBQUVBS0FBb0FBQUgvNEJ5Z29PRWhZTlNDQWhTaG95TmpvWVRpUk9QbElZd0hra0xoWkVJazRRQkhrQWFsWVl5Q1FsSm01S0ZIZ0FBTDZTRlFLY0pTNFNjbm9JbHJnQmVzWVFmdEJ5M3E0TVF2RjIvaEthbk80TzRnd3k4c01xRE83UXl6OFZ5TDd3TTFZUWN0TTV5UGpFeFBvTFNyaENrSXlaaVdJVkx0RENOR3J3bGhTSmZLUnVFSFE0SU5GR0RFQlV1WVI1RlNUT0VFSTBVQWlKYUllUkVvTVVITHNBSkl0SWdva2NqaEVKVXRDaHdWTFVtSGo5bUxPVGlBVWszNE5xa2JFRGtVUTBUQW9PQUl4TXhCWTFZTlVab2xMUGg1OUNqU0pQS1VSQ2hxZE1JSzVEcWtFQzFxZ1FrQmJKcXpkb0I2WWtCWU1PQzNicTE2OUd2WXNNeWZkbzA2dEdwVnE2cElsRkt0eTRwRUFIc09nSkJ3b0FCZlhvSnpYRGcxKytVd0lKeVhDaGMrQWxpT1lzWk81anhXRTZRd2lSQWZJS3hzcEdIS2lwaUJTQmhSa0doRmdSU2gyakVJSTdyQzBnVnBDWlFRVkNHQ2hVeUNNTGdPZzZBb3hWbW94aTBJRUFBVFlJbzlNWXdGTVhzMm9LS0h4L0UyelVGalN0bW15WnVITGtnQUwyTGdOTXd1d1VoNmQ0aDkxWUN6amtCSm9YUUYySmhIVndJR0V4MG4rOWVDQVNMSDkvVUpWOWxnK1JnWEE3Z0JBSUFJZmtFQ1FvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9aVUNRbFVpNUdTZ2h5T0hKT1lJeDFPSVlXVkNaZUVGVDFsUHBpRkpnY0hUcDZXaFQwSUNER25oR0txQnk2RW42R0NJN0VJYUxTRFdMY1B1cTZERTc5UndvT3BxaldEdTRNYnY3UE5nalczSnRMSWNqRy9HOWlERDdmUmNqQXlNakNDMWJFVG1Dc2RQVk9GTHJjamlENi8rWVJkWGk4MEdQcFFvR0FISG9RMHVBbWk2TXdhS1lRWXZBQkFFWWdoSVFVelJyQ0JyUVFFaWlBOUdNS0JNV05CQmNLR2dBd1pBSkdOQ0NaSkNFdXpFa0tKU0R3NkZBUWpMQXJGRnd4TzhWaUJUVVBRY1VpVEtoMzB4SUhUcHc1YWp0dlFvS3JWQmswRUdkaktkYXZNY1NrRWlCMHJWbXRYcmwreGhTVTdWbEJUcUU3YXBXS2plclZxMXFWNDgyS3EwS21aamcrbktxQWdRQ0FYTFMwREJwd0F2S2lGQXNLRWI5SzZraml4QkNpSU1qQ0JERmt1SmlTVkt4OFpZMmd6WndVdHNFR1JFSHJBRVVNd0lLT29RQ2pIak5TSlBGUlJRZWpEaWNwWERJVkFvWUVvb1F3QmttZEF4Q0NPOHd1RnNtdzVvUVBUZ3VRQmJnaGlRSUhDVVF6TzR3QkllZ003YlVFQW5JOFhSQ0U4QnFRVnNHdEhyMzRRZU9jVXhyWEF2b0JRZXZIK2hWY0VOalpndDl3Zy82MG55QVhoS1lGTmZBSGdVRWlDaGJDQUh6WVp6Q0RoaFBVUkFnSUxQeHlWRjRWNkphS0NjN3lWcUtJY2dRQUFJZmtFQlFvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9ZYUJ3Y2FpNUdTZ2crT0Q1T1lLeDlDT0lXVkI1ZUVDMGtlTUppRkhRVUZRcDZXaFVrSkNUS25oRDJxQlRhRW42R0NTN0VKUUxTRFU3Y1J1cTZESEw4ZndvT3BxanlEdTRNN3Y3UE5nankzSGRMSWNqSy9POWlERWJmUmNpTW1KaU9DMWJFY21BRWtaZ3FGTnJjcmlEQy9TNFZSYURGOEdBcGlvQ0FKRUlRVWtBQ2pLQXdYS29RMnhFQkFzWXloQ3dVek9waUJiY1FFaWlCN0dNcUJNV1BCSjhLa2dBeFpBZEVNQnlhbkNGdXpjZ0s3UlNCSUZDd2g3QXpGR0J0T2dRaUF6VWZRY1VpVEtoMFVRSUhUcHdwQ0lOVUFvYXBWQ0VNRUVkaktkU3NLcEM4QWlCMHJWbXRYcmwvSGhTVTdWbEJUcUU3Y3BZNmplclZxMXFWNDgySzZrUUhiQmhxbmJsUUlFS0NGTURJQ0JLUUF2Q2pEQXNLRTVaNnlramh4QXlLSmNFQ0duRU5ZazhxVmpiZ3dwSG56Z3I3TmlEUUFMY0NJb1JtUUs5d2dwT0tIQjBWYTJDQWhSQ05GWlN1R01sU3dZWmpRaFRqSUdTRFNNYUE1bEVJaXZxUTRLZ2tBOGpnWUJER2dRRUc1bkEvTkIwaElpdUU2aFVIVzR3QVlkQ0k4czNFVXJtY1hsSDY5SVBETlQ0d3JjdDArZmVUK3lTRkJlRmxnbzhSMUZ4QlNIeUZRaExjRk52SEZ3VUloQ3hKeVJIN1lNUEFEQ3dncENHQWhZeHh4aFE1NnlWRmhpWWVvZ0p3S0tMWVlDQUFoK1FRSkNnQnlBQ3dCQUFFQUtBQW9BQUFILzRCeWdvT0VoWU1LQlFVS2hveU5qb1lSaVJHUGxJWUJRUmM1aFpFRms0UWhUaDBqbFlZa0JnWVhtNUtGVGdjSEpxU0ZacWNHTTRTY25vSXVyZ2Rpc1lRS3RBNjNxNE1QdkZpL2hLYW5JSU80Z3pXOHNNcURJTFFrejhWeUpydzExWVFPdE01eUt4MGRLNExTcmcra0lTZ2E2WVF6dEFHTkk3d3VoUjlBTWpDRU1BZ0lSRkdCMEpNcEpSNEZjYU9CMEE0WkNTSjZJTVJFb0VVRkxjQUpXc0lob3Nja2hESlV0Q2pRWGpVcUhqOHVNTlJDQWNtRTFiaWs1TERrVVFVVUF2VlZDeE5SeG81WUZVSm9sQVBqNTlDalNKUEt5YkdncWRNRkdaRDZtRUMxNmdRcEFiSnF6VnJ3YUF3RVlNT0MzYnExNjlDdllzTXlmZG8wNnRHcFZxYXBTbEZLdHk0cERBeUdhc2g3bDBLY09CT3JSUUVBNEFYZlJoY0EvUDFiQlJ3UXdvUWh3Q1FFZ3NYaXhTckFEWUVNMllOSlFaWXZBMGlsc1FRRXpnQUNDL3F4bUFLR2FtVGFOQ0hFNEFWa0lMUXBLQ2tDYm9PQTMwUUtkZkh5b3FGR0hTZE82QkJFNDdlQUJuWUZTUmd3UU1LZ0ZNNXBSSjllZlZEejN5bTJVN2MrcUlGekVYYTVreGRFeFBtWDlPTUxHUUVQdnpzaEYwYXNiS2kvUG5vaEpOUWhBVTRnQUNINUJBa0tBSElBTEFBQUFBQXFBQ29BQUFmL2dIS0NnNFNGaG9lSWlZcUdUd1lHVDR1UmtvSU9qZzZUbUNFd1RCbUZsUWFYaERoQ0h5dVloU2dFQkV5ZWxvVkNCUVVkcDRRYXFnUXRoSitoZ2pheEJUMjBneXUzQ3JxdWd4Ry9VOEtEcWFvVmc3dURQTCt6ellJVnR5alN5SElkdnp6WWd3cTMwWElCSkNRQmd0V3hFWmdaRlRhNWhDMjNJWWdydnphRldHSW1SaGlhRWFCZ2hSdUVBcFJ3b1FnTUNXT0RhcGc0UVBHYXFJSVlGM1JxNXVJQnhZOU9EdUhBaURHSE1BMGZRZVk3bEdFQnlaV24zS1I4d0hEUmpRb0Y2NTBLUXRGRWpWTTNOZ29iOFhPYzBhTklCNmtBd0xRcEFBWkdTNGlZU2xYRUcwRnhzbXJOU3NHb0dndGd3NExGdWxWcjEzRmZ4WVlWdE5RcFU2amowNlJXblhvMXFkMjdtRERBRlZiaXdpa01GTEo2RU1ZQXJCcS9peTRBMkZwRkdCZXhJa0FnQXNHaWJCd1Z3dDZvdFlCaGhxSEtXd0VnRmdaQ2hGb01objZZUlQwSXlSVXRpcUtrR1VMb1Fsb0xYQXd4b0tDa1NDRW9BNExyUUtTaGFZbENjTktvT1Q1SlF2QUJId1J0U0pGaWd5QUdUU0VjL2ZEOHhLQUdBZ1EwR1BTaTZkNW1KNTVIRndSZS9DRHNURitNeS9KY0FxSDI0d2RCYU5vRjI1Ym5VTndYWG42Q2xOQ1VGOWlrTjhBUmhlQlhpQWZ4WWFQREZVZU0wZUNBaFFUZ0FSQWE0Q1dIZ3g0aTBrUjRUWVJvWWlBQUlma0VCUW9BY2dBc0FBQUFBQ29BS2dBQUIvK0Fjb0tEaElXR2g0aUppb1lCQkFRQmk1R1NnZ3FPQ3BPWUdUTTRocFVFbDRRNUYwR1FtSVFWQVFHY2hKNmdneGNHQmlTbWhEYXBBUm1zbG9RenNRWm10SU10dHd1Nm40UU92cTdCcUtrM2c2MkRJTDZ6d1lNM3R4WFF1NElrdmlEV2hBdTN6M0loS0NnaGd0T3hEcGdNRkVwRmhSbTN1WWNCdmpPRlV6MGRLNForeEJsSUFVT29FQzBVbFpqeWhCQ1BEZ1VpZmpERVlxQkZBQmZDMllnUXNhTVFReUFxV2h5b0lwaUNqaDVYR2JvQVlHU1ZZQ1JRUnJBUkNRT0ZnUjZDZ1luWWdZY3BEQXpDcmZBWnJxalJvNGRVQUZqS0ZFRFFvaU1lU0ozNlFJT2drU01wR0RWeG9LdlhybGV4RXR6Njlhc2dwVTJYUGcwWGxhcFVxMGpWNDhvTjlrRkhPQmc3VEgwNE1XQ0FsbUJoRWlTUWtYY1JGQWw5KzdJSjVrR3dZQTVMRUkwNWtqZ3hrbUJVSER0T1Vxd1E1Y29Tb0lSYndrRnpnaVNHcmlRK01YRlFFeXRrRkoxWkk0WFFEaG1PY3hiU2NXSkxsa0pFQkFqZmdNZ0hndU1qQ24wQUlnTUdwZ2JDQmRBUXBPSEZDN2diamlPWWNKUkc5QlNESUN5Rk1DaUdkdUpGVTBTZkxrZzhBUEtDc2grUFVWUkU5QWFFM01NWE5FRjdsSEJmUkVkRWZ1TVJNb0oyYUlTam5nQkdGS0pmSVQzTUY4NEdWaGpoZ29NRm50SkRHVDdNMVY2R0hpSXl4RkpEaEdpaUlJRUFBQ0g1QkFVS0FISUFMQUVBQVFBb0FDZ0FBQWYvZ0hLQ2c0U0ZnemtCQVRtR2pJMk9oZ3VKQzQrVWhndy9MQ0NGa1FHVGhCbE1NQ0dWaGhSeGNTeWJrb1ZNQkFRb3BJVktwM0VYaEp5ZWdpMnVCQnF4aEVXMEFMZXJnd3E4SzcrRXBxY1lnN2lERmJ5d3lvTVl0QlRQeFhJb3ZCWFZoQUMwem5JWkZSVVpndEt1Q3VDRUY3UU1qU0c4TFlVS1ppUUJzU3BWSG84dVN1d2JCSUtFZ1lOQjNKR2E0ZUNnUTFzS0h6MXgrSEJSUkVkVEtEcVljWkZTaVlNa05IV3NGRURreUpNb0tTR1J3TEtsQkIwWFYwU1lTVE9DZ2dFNGMrSThjYkZEZ1o5QWYrclV5VE9pejZCQVY3cGtDVE9pekpvejI2V2NTblVRalEwS1I5U0lSU09GQUFGa3dBVTVjTURFVmtkRUduejkyZ1pjQjdKa3JSKzRNT1RDeU5xMVRjQnBnQXZYeWFoQmR1ODJJS0xReFFPK0I1d1FzckkyQlExQ1E0QkVlUlNHQ3hWQ05VekE3VUJvUTRvdklncVZBRURhRnlNWUNWSXZLWVJGaklrUnBDQ1FCaUJQam84WU1Yd0kycEU2QVllSURHYS9HRFFCQVlJSmcyVDAzcUh3eGV6YWNvb2ZIOFE3dFF4M1hXWkRJQ1FkK1NBT3ZUK0E4eks3QkhmajNnVXQ2UTBFbkhNQS84NVBKNVRFdWw0Z0hnWVNSNzhwaVFjWUtYVlhsU0ZTR0NjRk9JRUFBRHM9XCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTFlMWUxO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtYXJyb3dzLW91dHNpZGUge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQgLm1jcy1idXR0b24tYXJyb3cge1xuICBjb2xvcjogcmdiYSg0OSwgNTEsIDYxLCAwLjYpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIC4xNXMgbGluZWFyLCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBjb2xvciAuMTVzIGxpbmVhciwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGxpbmVhcjtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3cge1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3cge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMHB4O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwIDEwcHggMTBweCAwO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gIHRvcDogMDtcbiAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICBib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZCAubWNzLWJ1dHRvbi1hcnJvdy5tY3MtZGlzYWJsZWQge1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZ2JhKDQ5LCA1MSwgNjEsIDAuMSk7XG4gIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1hcnJvd3Mtb3V0c2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIGJhY2tncm91bmQ6ICNlZmVmZWY7XG4gIG9wYWNpdHk6IDE7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgxNTMsIDE1MywgMTUzLCAwLjUpO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdzpob3Zlcjpub3QoLm1jcy1kaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTYpO1xuICBjb2xvcjogIzMxMzMzZDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMTUzLCAxNTMsIDE1MywgMC41KTtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgYm9yZGVyLXdpZHRoOiAwIDFweCAwIDA7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gIGJvcmRlci13aWR0aDogMCAwIDAgMXB4O1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtdmVydGljYWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDA7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICBib3JkZXItd2lkdGg6IDFweCAwIDAgMDtcbn1cblxuLmx0LWllOS1tYWdpYyAubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwgLm1jcy1idXR0b24tYXJyb3cge1xuICBjb2xvcjogIzgzODU4Qjtcbn1cblxuLmx0LWllOS1tYWdpYyAubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT03NSk7XG59XG5cbi5sdC1pZTktbWFnaWMgLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3c6aG92ZXIge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9OTYpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZCAubWNzLWJ1dHRvbi1hcnJvdy5tY3MtZGlzYWJsZWQge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzUpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjY2NjO1xufVxuXG4vKlxuXG5cbiAgIE1hZ2ljIFpvb20gUGx1cyB2NS4yLjQgXG4gICBDb3B5cmlnaHQgMjAxNyBNYWdpYyBUb29sYm94XG4gICBCdXkgYSBsaWNlbnNlOiBodHRwczovL3d3dy5tYWdpY3Rvb2xib3guY29tL21hZ2ljem9vbXBsdXMvXG4gICBMaWNlbnNlIGFncmVlbWVudDogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9saWNlbnNlL1xuXG5cbiovXG4vKipcbiAqIENvcmUgc3R5bGVzXG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJtYWdpY3Rvb2xib3gtdGhpblwiO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHNyYzogdXJsKFwiLi4vbWFnaWMtdG9vbGJveC1mb250cy9tYWdpY3Rvb2xib3gtdGhpbi5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCJkYXRhOmZvbnQvb3BlbnR5cGU7YmFzZTY0LEFBRUFBQUFOQUlBQUF3QlFSa1pVVFhKTFNFZ0FBQWRBQUFBQUhFZEVSVVlBS1FBUEFBQUhJQUFBQUI1UFV5OHlBbFlMNFFBQUFWZ0FBQUJXWTIxaGNFQVlZNzBBQUFIVUFBQUJTbWRoYzNELy93QURBQUFIR0FBQUFBaG5iSGxtTU1WT0p3QUFBelFBQUFHSWFHVmhaQW1XVVlNQUFBRGNBQUFBTm1ob1pXRVA5UWFtQUFBQkZBQUFBQ1JvYlhSNEwwRUFRQUFBQWJBQUFBQWtiRzlqWVFHR0FnQUFBQU1nQUFBQUZHMWhlSEFBVUFBY0FBQUJPQUFBQUNCdVlXMWw2TVBnZEFBQUJMd0FBQUgxY0c5emRMYVR1eUlBQUFhMEFBQUFaQUFCQUFBQUFRQUFFV2R4ejE4UFBQVUFDd2dBQUFBQUFORHRnL01BQUFBQTBPMkQ4d0FBL2dJSW5BYWVBQUFBQ0FBQ0FBQUFBQUFBQUFFQUFBYWUvZ0lBdUFpYkFBRC8vd2ljQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFKQUFFQUFBQUpBQmtBQlFBQUFBQUFBZ0FBQUFFQUFRQUFBRUFBQUFBQUFBQUFBUVplQVpBQUJRQUlCVE1GbVFBQUFSNEZNd1daQUFBRDF3Qm1BaElBQUFBQUJRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ0FBQUFBQUFBVUdaRlpBQkFvQUdnQmdabS9tWUF1QWFlQWY0QUFBQUJBQUFBQUFBQUJBQUFBQUFBQUFBQ3FnQUFDSnNBQUFPbEFBQURwUUFBQ0pzQUFBaWJBQUFIZkFCQUFBQUFBd0FBQUFNQUFBQWNBQUVBQUFBQUFFUUFBd0FCQUFBQUhBQUVBQ2dBQUFBR0FBUUFBUUFDQUFDZ0J2Ly9BQUFBQUtBQi8vOEFBR0FDQUFFQUFBQUFBQUFBQUFFR0FBQUJBQUFBQUFBQUFBRUNBQUFBQWdBQUFBQUFBQUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQXFBQ29BS2dCTUFHQUFkQUNJQUp3QXhBQUZBQUFBQUFRQUJab0FBZ0FGQUFnQUN3QVBBQUFURVFrQklRRTNBUkVKQVNFREVTRVJaZ0ZkL3VFQ3VQNmtQUUZkL21ZQlhQMUlwQVFBQk5mNzdBSUsvWmtDQzF6OTlnUVUvbElDQ3ZyTkJacjZaZ0FCQUFEK0FnaWNCcDRBQ3dBQUNRRUhDUUVuQ1FFM0NRRVhCSEVFS3lQNzFmdlZJd1FyKzlVakJDc0VLeU1DVVB2Vkl3UXIrOVVqQkNzRUt5UDcxUVFySXdBQUFBRUFBUDRDQTZZR25nQUZBQUFSQVJjSkFRY0RpeHY4aVFOMUd3SlFCRTRYKzhuN3lSY0FBQUFCQUFEK0FnT21CcDRBQlFBQUNRRW5DUUUzQTZiOGR4c0RkL3lIR3dKUSs3SVhCRGNFTnhjQUFRQUFBRGNJbkFQZEFBVUFBQ1VCTndrQkZ3Uk8rN0lYQkRjRU54YzNBNG9hL0lrRGVSb0FBQUVBQUFBM0NKd0QzUUFGQUFBSkFRY0pBU2NFVGdST0YvdkorOGtYQTkzOGR4c0RkL3lIR3dBQ0FFQUFRQUhBQWNBQURRQVlBQUFsQnljR0l5SW1ORFl5RmhVVUR3RVdNekkyTkNZaUJoVVVBY0FYY1NrM1AxbFpmbGtoMXljNU9GQlFjRkJYRjNFaFdYNVpXVDgyS1FJblVIQlFVRGc1QUFBQURBQ1dBQUVBQUFBQUFBRUFFUUFrQUFFQUFBQUFBQUlBQkFCQUFBRUFBQUFBQUFNQUxRQ2hBQUVBQUFBQUFBUUFFUUR6QUFFQUFBQUFBQVVBQ3dFZEFBRUFBQUFBQUFZQUVRRk5BQU1BQVFRSkFBRUFJZ0FBQUFNQUFRUUpBQUlBQ0FBMkFBTUFBUVFKQUFNQVdnQkZBQU1BQVFRSkFBUUFJZ0RQQUFNQUFRUUpBQVVBRmdFRkFBTUFBUVFKQUFZQUlnRXBBRTBBWVFCbkFHa0FZd0JVQUc4QWJ3QnNBR0lBYndCNEFDMEFWQUJvQUdrQWJnQUFUV0ZuYVdOVWIyOXNZbTk0TFZSb2FXNEFBRlFBYUFCcEFHNEFBRlJvYVc0QUFFWUFid0J1QUhRQVJnQnZBSElBWndCbEFDQUFNZ0F1QURBQUlBQTZBQ0FBVFFCaEFHY0FhUUJqQUZRQWJ3QnZBR3dBWWdCdkFIZ0FMUUJVQUdnQWFRQnVBQ0FBT2dBZ0FESUFOd0F0QURFQUxRQXlBREFBTVFBMUFBQkdiMjUwUm05eVoyVWdNaTR3SURvZ1RXRm5hV05VYjI5c1ltOTRMVlJvYVc0Z09pQXlOeTB4TFRJd01UVUFBRTBBWVFCbkFHa0FZd0JVQUc4QWJ3QnNBR0lBYndCNEFDMEFWQUJvQUdrQWJnQUFUV0ZuYVdOVWIyOXNZbTk0TFZSb2FXNEFBRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUFBQVZtVnljMmx2YmlBeExqQUFBRTBBWVFCbkFHa0FZd0JVQUc4QWJ3QnNBR0lBYndCNEFDMEFWQUJvQUdrQWJnQUFUV0ZuYVdOVWIyOXNZbTk0TFZSb2FXNEFBQUFBQUFJQUFBQUFBQUQvbWdCbUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUUFBQUFFQUFnRUNBUU1CQkFFRkFRWUJCd2QxYm1sQk1EQXhCM1Z1YVVFd01ESUhkVzVwUVRBd013ZDFibWxCTURBMEIzVnVhVUV3TURVSGRXNXBRVEF3TmdBQUFBSC8vd0FDQUFFQUFBQU1BQUFBRmdBQUFBSUFBUUFEQUFnQUFRQUVBQUFBQWdBQUFBQUFBQUFCQUFBQUFOQndRR0VBQUFBQTBPMkQ4d0FBQUFEUTdZUHpcIik7XG59XG5cbi5NYWdpY1pvb20sXG4ubXotZmlndXJlLFxuLm16LWxlbnMsXG4ubXotem9vbS13aW5kb3csXG4ubXotbG9hZGluZyxcbi5tei1oaW50LFxuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLFxuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlIC5tei1pbWFnZS1zdGFnZSxcbi5tei1leHBhbmQgLm16LWltYWdlLXN0YWdlID4gZmlndXJlIC5tei1jYXB0aW9uLFxuLm16LXRodW1iIGltZyxcbi5tei1leHBhbmQtdGh1bWJuYWlscyxcbi5tei1leHBhbmQtY29udHJvbHMsXG4ubXotYnV0dG9uIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uTWFnaWNab29tLFxuLm16LWZpZ3VyZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgZGlyZWN0aW9uOiBsdHIgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uTWFnaWNab29tIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuZmlndXJlLm16LWZpZ3VyZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi5NYWdpY1pvb20gaW1nLFxuLm16LWZpZ3VyZSBpbWcge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNab29tID4gaW1nLFxuLm16LWZpZ3VyZSA+IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pZTgtbWFnaWMgLk1hZ2ljWm9vbSA+IGltZyxcbi5pZTgtbWFnaWMgLm16LWZpZ3VyZSA+IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm16LWZpZ3VyZS5tei1uby16b29tLm16LW5vLWV4cGFuZCxcbi5tei1leHBhbmQgLm16LWZpZ3VyZS5tei1uby16b29tIHtcbiAgY3Vyc29yOiBkZWZhdWx0ICFpbXBvcnRhbnQ7XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlLFxuLm16LWV4cGFuZCB7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLm16LWxlbnMsXG4ubXotem9vbS13aW5kb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubXotbGVucyBpbWcsXG4ubXotem9vbS13aW5kb3cgaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tei1sZW5zIGltZyB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tei16b29tLXdpbmRvdyB7XG4gIHotaW5kZXg6IDIwMDAwMDAwMDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LW1hZ25pZmllciB7XG4gIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCB3aGl0ZSwgYmxhY2spO1xuICAtd2Via2l0LW1hc2stY2xpcDogY29udGVudDtcbiAgY3Vyc29yOiBub25lO1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZSAubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG8gIWltcG9ydGFudDtcbiAgY3Vyc29yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIubXotZXhwYW5kZWQge1xuICB6LWluZGV4OiAyMTQ3NDgzNjQ3O1xufVxuXG4ubXotem9vbS13aW5kb3cgaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogLTEwMDAlO1xuICByaWdodDogLTEwMDAlO1xuICB0b3A6IC0xMDAwJTtcbiAgYm90dG9tOiAtMTAwMCU7XG4gIG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgIWltcG9ydGFudDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJSAhaW1wb3J0YW50O1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcHJldmlldyBpbWcge1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotem9vbS13aW5kb3cgaW1nIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmQtY29udHJvbHMge1xuICB6LWluZGV4OiAyMTQ3NDgzNjQ3O1xufVxuXG4ubXotZmFkZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXM7XG59XG5cbi5tei1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubXotdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLWJnIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IGZsYXQgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBmbGF0ICFpbXBvcnRhbnQ7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUgLm16LWNhcHRpb24ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZC1jb250cm9scy5tei1mYWRlIHtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgPiAubXotem9vbS13aW5kb3cge1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kZWQtdmlldy1vcGVuLFxuLm16LWV4cGFuZGVkLXZpZXctb3BlbiBib2R5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kZWQtdmlldy1vcGVuIGJvZHkge1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLyoqXG4gKiBNYWluIGZpZ3VyZVxuICovXG4ubXotZmlndXJlLm16LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5tei1maWd1cmUubXotbm8tem9vbSxcbi5tei1maWd1cmUubXotY2xpY2stem9vbSxcbi5tei1maWd1cmUubXotYWN0aXZlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUubXotbm8tZXhwYW5kIHtcbiAgY3Vyc29yOiBjcm9zc2hhaXI7XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlLm16LWNsaWNrLXpvb20ubXotbm8tZXhwYW5kIHtcbiAgY3Vyc29yOiBjcm9zc2hhaXI7XG4gIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDtcbiAgY3Vyc29yOiAtbW96LXpvb20tb3V0O1xuICBjdXJzb3I6IHpvb20tb3V0O1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZS5tei1tYWduaWZpZXItem9vbS5tei1ob3Zlci16b29tLm16LW5vLWV4cGFuZCB7XG4gIGN1cnNvcjogbm9uZTtcbn1cblxuLm16LWZpZ3VyZS5tei1tYWduaWZpZXItem9vbS5tei1hY3RpdmUge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZSA+IGltZyB7XG4gIGZpbHRlcjogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxmaWx0ZXIgaWQ9J2dyYXlzY2FsZSc+PGZlQ29sb3JNYXRyaXggdHlwZT0nc2F0dXJhdGUnIHZhbHVlcz0nMCcvPjxmZUNvbXBvbmVudFRyYW5zZmVyPjxmZUZ1bmNBIHR5cGU9J2xpbmVhcicgc2xvcGU9JzAuNicvPjwvZmVDb21wb25lbnRUcmFuc2Zlcj48L2ZpbHRlcj48L3N2Zz4jZ3JheXNjYWxlXCIpO1xuICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDgwJSkgb3BhY2l0eSg2MCUpO1xuICBmaWx0ZXI6IGdyYXlzY2FsZSg4MCUpIG9wYWNpdHkoNjAlKTtcbn1cblxuLm5vLWNzc2ZpbHRlcnMtbWFnaWMgLm16LWZpZ3VyZS5tei1hY3RpdmUgPiBpbWcge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlID4gaW1nIHtcbiAgb3BhY2l0eTogMTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShncmF5U2NhbGU9MSxvcGFjaXR5PTAuNik7XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20sXG4ubHQtaWUxMS1tYWdpYyAubXotZXhwYW5kIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20sXG4ubHQtaWUxMS1tYWdpYyAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tID4gaW1nIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmx0LWllMTEtbWFnaWMgLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSxcbi5sdC1pZTExLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20gPiAubXotem9vbS13aW5kb3cge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubXotZXhwYW5kIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20sXG4ubHQtaWUxMC1tYWdpYyAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tID4gaW1nIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xufVxuXG4uaWU5LW1hZ2ljIC5tei1leHBhbmQgLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIFpvb20gbGVuc1xuICovXG4ubXotbGVucyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxNzAsIDE3MCwgMTcwLCAwLjcpO1xuICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgY3Vyc29yOiBub25lO1xuICB6LWluZGV4OiAxMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUgLm16LWxlbnMge1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSkgMC4xcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KSAwLjFzO1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZS5tei1tYWduaWZpZXItem9vbSAubXotbGVucyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBub25lO1xufVxuXG4vKipcbiAqIFpvb20gd2luZG93XG4gKi9cbi5tei16b29tLXdpbmRvdyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE3MCwgMTcwLCAxNzAsIDAuNyk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAyMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyLm16LXNxdWFyZSxcbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIubXotc3F1YXJlOmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotem9vbS13aW5kb3cge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTVlNWU1O1xufVxuXG4ubXotem9vbS13aW5kb3cubXotaW5uZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIENhcHRpb24gaW4gem9vbSB3aW5kb3cgKi9cbi5tei16b29tLXdpbmRvdyAubXotY2FwdGlvbiB7XG4gIGJhY2tncm91bmQ6ICM3Nzc7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEwcHQ7XG4gIG9wYWNpdHk6IDAuODtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE1MDtcbiAgcGFkZGluZzogM3B4O1xuICB3aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotem9vbS13aW5kb3cgLm16LWNhcHRpb24ge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9ODApO1xufVxuXG4ubXotem9vbS13aW5kb3cuY2FwdGlvbi1ib3R0b20gLm16LWNhcHRpb24ge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbn1cblxuLm16LXpvb20td2luZG93Lm16LWV4cGFuZGVkID4gLm16LWNhcHRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBab29tIHdpbmRvdyBhbmltYXRpb25zICovXG4ubXotem9vbS13aW5kb3cubXotZGVhY3RpdmF0aW5nLFxuLm16LXpvb20td2luZG93Lm16LWFjdGl2YXRpbmcge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSksIC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpLCB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1kZWFjdGl2YXRpbmcge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IC4yNXMsIC4yNXMsIC4yNXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4yNXMsIC4yNXMsIC4yNXM7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLXJpZ2h0LFxuLm16LXpvb20td2luZG93Lm16LXAtbGVmdCxcbi5tei16b29tLXdpbmRvdy5tei1wLXRvcCxcbi5tei16b29tLXdpbmRvdy5tei1wLWJvdHRvbSB7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDA7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLXJpZ2h0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMCUsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMCUsIDAsIDApO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1sZWZ0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXAtdG9wIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAlLCAwKTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXAtYm90dG9tIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMCUsIDApO1xufVxuXG4vKiBJbm5lciBtb2RlIGFuaW1hdGlvbiAqL1xuLm16LXpvb20td2luZG93ID4gaW1nIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlKDEpO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1pbm5lci5tei1kZWFjdGl2YXRpbmcgPiBpbWcsXG4ubXotem9vbS13aW5kb3cubXotcC1pbm5lci5tei1hY3RpdmF0aW5nID4gaW1nIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSkgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KSAhaW1wb3J0YW50O1xufVxuXG4vKiBNYWduaWZpZXIgbW9kZSBhbmltYXRpb24gKi9cbi5tei16b29tLXdpbmRvdy5tei1wLW1hZ25pZmllciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMSk7XG59XG5cbi8qIFByZXZpZXcgbW9kZSBhbmltYXRpb24gKi9cbi5tei16b29tLXdpbmRvdy5tei1wcmV2aWV3Lm16LWRlYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1wcmV2aWV3Lm16LWFjdGl2YXRpbmcsXG4ubXotem9vbS13aW5kb3cubXotY3VzdG9tLm16LWRlYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1jdXN0b20ubXotYWN0aXZhdGluZyB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXByZXZpZXcubXotZGVhY3RpdmF0aW5nLFxuLm16LXpvb20td2luZG93Lm16LWN1c3RvbS5tei1kZWFjdGl2YXRpbmcge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1wcmV2aWV3LFxuLm16LXpvb20td2luZG93Lm16LXAtY3VzdG9tIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLyoqXG4gKiBIaW50ICYgTG9hZGluZ1xuICovXG4ubXotaGludCxcbi5tei1sb2FkaW5nIHtcbiAgY29sb3I6ICNlZWU7XG4gIGJhY2tncm91bmQ6IHJnYmEoNDksIDUxLCA2MSwgMC43KTtcbiAgZm9udDogbm9ybWFsIDEycHgvMS4yZW0gJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsIFZlcmRhbmEsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXJlY3Rpb246IGx0cjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xufVxuXG4ubXotaGludCB7XG4gIGJvdHRvbTogOHB4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMCAxMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgei1pbmRleCAwLjI1cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIHotaW5kZXggMC4yNXMgZWFzZTtcbn1cblxuLm16LWhpbnQtbWVzc2FnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogcmdiYSg0OSwgNTEsIDYxLCAwLjcpO1xuICBib3JkZXItcmFkaXVzOiAyZW07XG4gIHBhZGRpbmc6IC43ZW0gMS4xZW07XG59XG5cbi5tei1oaW50LW1lc3NhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcMDIyOTUnO1xuICBmb250LWZhbWlseTogc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHNwZWFrOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiAtMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tei1oaW50LWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IC42cztcbiAgdHJhbnNpdGlvbi1kZWxheTogLjZzO1xufVxuXG4vKiBIaW50IGluIHRoZSBleHBhbmRlZCB2aWV3IG9uIG1vYmlsZSAqL1xuLm16LWV4cGFuZCAubXotaGludCB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB0b3A6IDUwJTtcbiAgYm90dG9tOiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG59XG5cbi5tei1leHBhbmQgLm16LWhpbnQtbWVzc2FnZSB7XG4gIHBhZGRpbmc6IDEuMWVtO1xufVxuXG4ubXotZXhwYW5kIC5tei1oaW50LW1lc3NhZ2U6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm16LWV4cGFuZCAubXotaGludC1oaWRkZW4ge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IDFzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxcztcbiAgb3BhY2l0eTogMDtcbn1cblxuLyogTG9hZGluZyBpbmRpY2F0b3IgKi9cbi5tei1sb2FkaW5nIHtcbiAgZm9udC1zaXplOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ubXotbG9hZGluZzphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tei1sb2FkaW5nLnNob3duIHtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDBzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzO1xufVxuXG4ubXotbG9hZGluZy5zaG93bjphZnRlciB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgLjlzIGluZmluaXRlIGxpbmVhcjtcbiAgYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgLjlzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4tbG9hZGluZyB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3Bpbi1sb2FkaW5nIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLmx0LWllMTAtbWFnaWMgLm16LWxvYWRpbmcge1xuICBib3JkZXItcmFkaXVzOiAyZW07XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogLjdlbSAxLjFlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmx0LWllMTAtbWFnaWMgLm16LWxvYWRpbmc6YWZ0ZXIge1xuICBjb250ZW50OiAnTG9hZGluZy4uLic7XG4gIHRleHQtaW5kZW50OiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotbG9hZGluZyB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMjZweDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei1oaW50LW1lc3NhZ2UsXG4ubHQtaWU5LW1hZ2ljIC5tei1sb2FkaW5nLnNob3duIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoR3JhZGllbnRUeXBlPTAsU3RhcnRDb2xvclN0cj0nIzdjMzEzMzNEJywgRW5kQ29sb3JTdHI9JyM3YzMxMzMzRCcpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei1oaW50LWhpZGRlbiB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbn1cblxuLyoqXG4gKiBFeHBhbmRlZCB2aWV3XG4gKi9cbi5tei1leHBhbmQsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBpbWcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBzdmcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyA+IGltZyxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyA+IHN2ZyB7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBzdmcge1xuICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDIxMDAwMDAwMDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNjAwcHg7XG4gIHBlcnNwZWN0aXZlOiA2MDBweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG59XG5cbi8qIEV4cGFuZGVkIHZpZXcgYmFja2dyb3VuZCAqL1xuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IC0xMDA7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKSBzY2FsZSgxMCkgcm90YXRlKDAuMDFkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCkgc2NhbGUoMTAsIDEwKSByb3RhdGUoMC4wMWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkgc2NhbGUoMTApIHJvdGF0ZSgwLjAxZGVnKTtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNjAwcHg7XG4gIHBlcnNwZWN0aXZlOiA2MDBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnID4gaW1nIHtcbiAgbWFyZ2luOiBhdXRvO1xuICBmaWx0ZXI6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48ZmlsdGVyIGlkPSdibHVyJz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSc4MCcgaW49J1NvdXJjZUdyYXBoaWMnPjwvZmVHYXVzc2lhbkJsdXI+PC9maWx0ZXI+PC9zdmc+I2JsdXJcIik7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDIwcHgpIGJyaWdodG5lc3MoNjAlKTtcbiAgZmlsdGVyOiBibHVyKDIwcHgpIGJyaWdodG5lc3MoNjAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBzdmcge1xuICBtYXJnaW46IGF1dG87XG4gIG9wYWNpdHk6IC42O1xufVxuXG5bZGF0YS1tYWdpYy11YT1lZGdlXSAubXotZXhwYW5kIC5tei1leHBhbmQtYmcsXG4ubHQtaWUxMC1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtYmcge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWV4cGFuZCB7XG4gIGJhY2tncm91bmQ6ICMxZjFmMWY7XG59XG5cbltkYXRhLW1hZ2ljLXVhPWVkZ2VdIC5tei1leHBhbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMxLCAzMSwgMzEsIDAuOTYpO1xufVxuXG4vKiogUGxhaW4gYmFja2dyb3VuZHM6IGRhcmstYmcsIHdoaXRlLWJnICoqL1xuLm16LWV4cGFuZC5wbGFpbi1iZyAubXotZXhwYW5kLWJnLFxuLm16LWV4cGFuZC5kYXJrLWJnIC5tei1leHBhbmQtYmcsXG4ubXotZXhwYW5kLndoaXRlLWJnIC5tei1leHBhbmQtYmcge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmQuZGFyay1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZjFmMWY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzEsIDMxLCAzMSwgMC45Nik7XG59XG5cbi5tei1leHBhbmQud2hpdGUtYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4vKiBFeHBhbmRlZCB2aWV3IHN0YWdlICovXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2Uge1xuICB6LWluZGV4OiAyMTAwMDAwMDAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlIHtcbiAgei1pbmRleDogNTA7XG4gIGxlZnQ6IDEyMHB4O1xuICByaWdodDogMTIwcHg7XG4gIHBhZGRpbmc6IDIwcHggMCA0MHB4IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiA2MDBweDtcbiAgcGVyc3BlY3RpdmU6IDYwMHB4O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMgLm16LWltYWdlLXN0YWdlIHtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UubXotem9vbS1pbiAubXotaW1hZ2Utc3RhZ2Uge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZTpiZWZvcmUsXG4ubXotZXhwYW5kIC5tei1pbWFnZS1zdGFnZTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMDtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tei1leHBhbmQgLm16LWZpZ3VyZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZCAubXotZmlndXJlID4gaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubXotZXhwYW5kIC5tei16b29tLWluIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZSxcbi5tei1leHBhbmQgLm16LXpvb20taW4gLm16LWltYWdlLXN0YWdlID4gZmlndXJlIC5tei1maWd1cmUubXotYWN0aXZhdGluZyxcbi5tei1leHBhbmQgLm16LXpvb20taW4gLm16LWltYWdlLXN0YWdlID4gZmlndXJlIC5tei1maWd1cmUubXotYWN0aXZlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm16LWV4cGFuZCAubXotZmlndXJlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLm16LWV4cGFuZCAubXotZmlndXJlLm16LWFjdGl2ZSB7XG4gIGN1cnNvcjogY3Jvc3NoYWlyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgY3Vyc29yOiB6b29tLW91dDtcbn1cblxuLyogV2hlbiBpbm5lciB6b29tIGlzIGFsd2F5cyBzaG93biAqL1xuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLm16LXpvb20taW4ubXotYWx3YXlzLXpvb20gLm16LWltYWdlLXN0YWdlID4gZmlndXJlID4gZmlndXJlID4gaW1nIHtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogLTUwMDBweCAhaW1wb3J0YW50O1xuICBib3R0b206IC01MDAwcHggIWltcG9ydGFudDtcbiAgbGVmdDogLTUwMDBweCAhaW1wb3J0YW50O1xuICByaWdodDogLTUwMDBweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLmx0LWllMTAtbWFnaWMgLm16LXpvb20td2luZG93Lm16LWV4cGFuZGVkIGltZyB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubXotZXhwYW5kIC5tei1maWd1cmUubXotbWFnbmlmaWVyLXpvb20ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbn1cblxuLyogQ2FwdGlvbiBpbiBleHBhbmRlZCB2aWV3ICovXG4ubXotZXhwYW5kIC5tei1jYXB0aW9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtc2hhZG93OiAwcHggMHB4IDQ2cHggIzAwMDtcbiAgcGFkZGluZzogMTBweCA0cHg7XG4gIGZvbnQ6IG5vcm1hbCAxMHB0LzFlbSAnTHVjaWRhIEdyYW5kZScsICdMdWNpZGEgU2FucyBVbmljb2RlJywgVmVyZGFuYSwgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1jYXB0aW9uLm16LXNob3cge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQ7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tei1leHBhbmQgLm16LWNhcHRpb24gYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tei1leHBhbmQud2hpdGUtYmcgLm16LWNhcHRpb24ge1xuICBjb2xvcjogIzU1NTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWV4cGFuZCAubXotY2FwdGlvbiB7XG4gIHRvcDogMTAwJTtcbn1cblxuLm16LWV4cGFuZCAubXotem9vbS13aW5kb3cge1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotZXhwYW5kIC5tei16b29tLXdpbmRvdyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyogRXhwYW5kZWQgdmlldyBvbiBtb2JpbGUgKi9cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZC1zdGFnZSAubXotZXhwYW5kLXRodW1ibmFpbHMsXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlIHtcbiAgbGVmdDogMHB4O1xuICByaWdodDogMHB4O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZS53aXRoLXRodW1icyB7XG4gIGJvdHRvbTogMHB4O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMgLm16LWltYWdlLXN0YWdlIHtcbiAgcGFkZGluZzogNXB4IDAgNjBweDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UubXotem9vbS1pbiAubXotaW1hZ2Utc3RhZ2Uge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtdGh1bWJuYWlscyB7XG4gIHBhZGRpbmc6IDA7XG4gIGhlaWdodDogNjBweDtcbn1cblxuLyoqXG4gKiBCdXR0b25zICYgQXJyb3dzXG4gKi9cbi5tei1leHBhbmQtY29udHJvbHMsXG5idXR0b24ubXotYnV0dG9uIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uIHtcbiAgY29sb3I6ICNiNGI0YjQgIWltcG9ydGFudDtcbiAgZm9udDogOTAwIDM0cHgvMSAnbWFnaWN0b29sYm94LXRoaW4nICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogOTAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxODAsIDE4MCwgMTgwLCAwKSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgc3BlYWs6IG5vbmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB3aWR0aDogNjBweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDYwcHggIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIGZvbnQ6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1wcmV2LFxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tbmV4dCB7XG4gIG1hcmdpbjogYXV0byAxMHB4ICFpbXBvcnRhbnQ7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICBib3R0b206IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1wcmV2IHtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1uZXh0IHtcbiAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tY2xvc2Uge1xuICBmb250LXNpemU6IDI2cHggIWltcG9ydGFudDtcbiAgbWFyZ2luOiAxMHB4ICFpbXBvcnRhbnQ7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICByaWdodDogMCAhaW1wb3J0YW50O1xuICB6LWluZGV4OiA5NSAhaW1wb3J0YW50O1xufVxuXG46cm9vdDpub3QoLm1vYmlsZS1tYWdpYykgYnV0dG9uLm16LWJ1dHRvbiB7XG4gIGNvbG9yOiByZ2JhKDE4MCwgMTgwLCAxODAsIDAuNzUpICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgLjI1cywgYm9yZGVyLWNvbG9yIC4yNXMsIC13ZWJraXQtdHJhbnNmb3JtIC4yNXMgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjI1cywgYm9yZGVyLWNvbG9yIC4yNXMsIHRyYW5zZm9ybSAuMjVzICFpbXBvcnRhbnQ7XG59XG5cbjpyb290Om5vdCgubW9iaWxlLW1hZ2ljKSBidXR0b24ubXotYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNiNGI0YjQgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4MCwgMTgwLCAxODAsIDAuNikgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSkgIWltcG9ydGFudDtcbn1cblxuLm1vYmlsZS1tYWdpYyBidXR0b24ubXotYnV0dG9uIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuMXMgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xcyAhaW1wb3J0YW50O1xufVxuXG4ubW9iaWxlLW1hZ2ljIGJ1dHRvbi5tei1idXR0b246YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4MCwgMTgwLCAxODAsIDAuNikgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOTUpICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45NSkgIWltcG9ydGFudDtcbn1cblxuLypidXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1jbG9zZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcYTAwMVwiOyB9XG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1wcmV2OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxhMDAyXCI7ICB9XG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1uZXh0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxhMDAzXCI7IH0qL1xuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tY2xvc2U6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lICFpbXBvcnRhbnQ7XG4gIGNvbnRlbnQ6IFwiXFxmMDBkXCIgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tcHJldjpiZWZvcmUge1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUgIWltcG9ydGFudDtcbiAgY29udGVudDogXCJcXGYxMDRcIiAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1uZXh0OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZSAhaW1wb3J0YW50O1xuICBjb250ZW50OiBcIlxcZjEwNVwiICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA3NjdweCkge1xuICBidXR0b24ubXotYnV0dG9uLXByZXYsXG4gIGJ1dHRvbi5tei1idXR0b24tbmV4dCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCBidXR0b24ubXotYnV0dG9uIHtcbiAgICB3aWR0aDogNDRweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNDRweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ5LCA1MSwgNjEsIDAuMykgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmx0LWllOS1tYWdpYyBidXR0b24ubXotYnV0dG9uIHtcbiAgYm9yZGVyOiAwO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIGJ1dHRvbi5tei1idXR0b246aG92ZXIge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MTAwKTtcbn1cblxuLyoqXG4gKiBUaHVtYm5haWxzXG4gKi9cbi8qIFRodW1ibmFpbHMgb24gdGhlIHBhZ2UgKi9cbmFbZGF0YS16b29tLWlkXSxcbi5tei10aHVtYiwgLm16LXRodW1iOmZvY3VzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMDtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuYVtkYXRhLXpvb20taWRdIGltZyxcbi5tei10aHVtYiBpbWcge1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm16LXRodW1iOmhvdmVyOm5vdCgubXotdGh1bWItc2VsZWN0ZWQpIGltZyB7XG4gIC13ZWJraXQtZmlsdGVyOiBicmlnaHRuZXNzKDc1JSk7XG4gIGZpbHRlcjogYnJpZ2h0bmVzcyg3NSUpO1xufVxuXG4ubXotdGh1bWItc2VsZWN0ZWQgaW1nIHtcbiAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoNjAlKTtcbiAgZmlsdGVyOiBicmlnaHRuZXNzKDYwJSk7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei10aHVtYjpob3Zlcixcbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei10aHVtYi5tei10aHVtYi1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei10aHVtYjpob3Zlcjpub3QoLm16LXRodW1iLXNlbGVjdGVkKSBpbWcge1xuICBvcGFjaXR5OiAuNzU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT03NSk7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei10aHVtYi1zZWxlY3RlZCBpbWcge1xuICBvcGFjaXR5OiAuNjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTYwKTtcbn1cblxuLmllOS1tYWdpYyAubXotdGh1bWIgaW1nIHtcbiAgYm94LXNoYWRvdzogMCAwIDRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4vKiBUaHVtYm5haWxzIGluIGV4cGFuZGVkIHZpZXcgKi9cbi5tei1leHBhbmQtdGh1bWJuYWlscyB7XG4gIHotaW5kZXg6IDUwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogNjVweDtcbiAgcmlnaHQ6IDY1cHg7XG4gIGhlaWdodDogODBweDtcbiAgcGFkZGluZzogMTBweCAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWIge1xuICBwYWRkaW5nOiAxMHB4IDJweDtcbn1cblxuLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYiA+IGltZyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3gtc2hhZG93OiAwIDAgNXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG5cbi5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWI6bm90KC5tYWdpYy10aHVtYi1zZWxlY3RlZCkgPiBpbWc6aG92ZXIge1xuICAtd2Via2l0LWZpbHRlcjogYnJpZ2h0bmVzcyg3MCUpO1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoNzAlKTtcbn1cblxuLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYi1zZWxlY3RlZCBpbWcge1xuICAtd2Via2l0LWZpbHRlcjogYnJpZ2h0bmVzcyg1MCUpO1xuICBmaWx0ZXI6IGJyaWdodG5lc3MoNTAlKTtcbn1cblxuLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLWJ1dHRvbi1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWI6aG92ZXI6bm90KC5tYWdpYy10aHVtYi1zZWxlY3RlZCkgaW1nIHtcbiAgb3BhY2l0eTogLjc7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT03MCk7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWItc2VsZWN0ZWQgaW1nIHtcbiAgb3BhY2l0eTogLjU7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG59XG5cbi8qKiBIaWRlIHRodW1ibmFpbHMgaW4gZXhwYW5kZWQgdmlldyB3aXRoIC5uby1leHBhbmQtdGh1bWJuYWlscyBjbGFzcyAqKi9cbi5tei1leHBhbmQubm8tZXhwYW5kLXRodW1ibmFpbHMgLm16LWV4cGFuZC1zdGFnZS53aXRoLXRodW1icyAubXotaW1hZ2Utc3RhZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm16LWV4cGFuZC5uby1leHBhbmQtdGh1bWJuYWlscyAubXotZXhwYW5kLXRodW1ibmFpbHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQubm8tZXhwYW5kLXRodW1ibmFpbHMgLm16LWV4cGFuZC1zdGFnZS53aXRoLXRodW1icyAubXotaW1hZ2Utc3RhZ2Uge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLFxuLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLXdyYXBwZXIsXG4ubWFnaWMtdGh1bWJzIHVsLFxuLm1hZ2ljLXRodW1icyBsaSxcbi5tYWdpYy10aHVtYnMgbGk6YmVmb3JlLFxuLm1hZ2ljLXRodW1icyBsaTphZnRlcixcbi5tYWdpYy10aHVtYnMgbGkgaW1nLFxuLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLWJ1dHRvbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogMDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWFnaWMtdGh1bWJzIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB6LWluZGV4OiAxMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nOiAwIDMwcHg7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4ubWFnaWMtdGh1bWJzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm1hZ2ljLXRodW1icy5uby1idXR0b25zIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ubWFnaWMtdGh1bWJzLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tYWdpYy10aHVtYnMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXNpemU6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5tYWdpYy10aHVtYnMubm8tYnV0dG9ucyB1bCB7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAtbXMtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWFnaWMtdGh1bWJzIHVsIGxpIHtcbiAgbWFyZ2luOiAwIDRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1hZ2ljLXRodW1icyB1bCBsaTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDA7XG59XG5cbi5tYWdpYy10aHVtYnMgdWwgbGkgPiBpbWcge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uaWU4LW1hZ2ljIC5tYWdpYy10aHVtYnMgdWwgbGkgPiBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiB2ZXJ0aWNhbCAqL1xuLm1hZ2ljLXRodW1icy5tYWdpYy10aHVtYnMtdmVydGljYWwge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwge1xuICBwYWRkaW5nOiAzMHB4IDA7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgdWwge1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHVsIGxpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCB1bCBsaSB7XG4gIG1hcmdpbjogNHB4IDA7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgdWwgbGkgPiBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaWU4LW1hZ2ljIC5tYWdpYy10aHVtYnMtdmVydGljYWwgdWwgbGkgPiBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyoqXG4gKiBCdXR0b25zXG4gKi9cbi5tYWdpYy10aHVtYnMgYnV0dG9uLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICBjb2xvcjogI2I0YjRiNCAhaW1wb3J0YW50O1xuICBmb250OiA5MDAgMjRweC8xICdtYWdpY3Rvb2xib3gtdGhpbicgIWltcG9ydGFudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiA5MCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tYWdpYy10aHVtYnMgYnV0dG9uLm1hZ2ljLXRodW1icy1idXR0b246YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBmb250OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLWJ1dHRvbi1wcmV2IHtcbiAgbGVmdDogMDtcbn1cblxuLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLWJ1dHRvbi1uZXh0IHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24tcHJldjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcYTAwMlwiO1xufVxuXG4ubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGEwMDNcIjtcbn1cblxuOnJvb3Q6bm90KC5tb2JpbGUtbWFnaWMpIC5tYWdpYy10aHVtYnMgYnV0dG9uLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICBjb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAwLjc1KSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC44NSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIC4yNXMsIC13ZWJraXQtdHJhbnNmb3JtIC4yNXMgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjI1cywgdHJhbnNmb3JtIC4yNXMgIWltcG9ydGFudDtcbn1cblxuOnJvb3Q6bm90KC5tb2JpbGUtbWFnaWMpIC5tYWdpYy10aHVtYnMgYnV0dG9uLm1hZ2ljLXRodW1icy1idXR0b246aG92ZXIge1xuICBjb2xvcjogI2I0YjRiNCAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKSAhaW1wb3J0YW50O1xufVxuXG4vKiBWZXJ0aWNhbCBidXR0b25zICovXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIC5tYWdpYy10aHVtYnMtYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzBweDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIC5tYWdpYy10aHVtYnMtYnV0dG9uLXByZXYge1xuICB0b3A6IDA7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgLm1hZ2ljLXRodW1icy1idXR0b24tbmV4dCB7XG4gIGJvdHRvbTogMDtcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCAubWFnaWMtdGh1bWJzLWJ1dHRvbi1wcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxhMDA1XCI7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgLm1hZ2ljLXRodW1icy1idXR0b24tbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcYTAwNFwiO1xufVxuXG4ubWFnaWMtdGh1bWJzLm5vLWJ1dHRvbnMgLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tYWdpYy10aHVtYnMtYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4yO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MjApO1xufVxuXG5bdi1jbG9ha10ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi40LjFcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmV2ZWFsLCAucmV2ZWFsLnRpbnksIC5yZXZlYWwuc21hbGwsIC5yZXZlYWwubGFyZ2Uge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cbi8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMiAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuZmlnY2FwdGlvbixcbmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG5cbi8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xufVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqL1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cbn1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqL1xufVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovXG59XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDhlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiO1xufVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBmb250LWZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbn1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG59XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnJvdyB7XG4gIG1heC13aWR0aDogOTIuODU3MTRyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5yb3c6OmJlZm9yZSwgLnJvdzo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4ucm93OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ucm93IC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjM1NzE0cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41NzE0M3JlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjU3MTQzcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC41NzE0M3JlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTAuNTcxNDNyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjU3MTQzcmVtO1xuICB9XG59XG5cbi5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5yb3cuZXhwYW5kZWQge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5yb3c6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1uLCAucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG4ucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1uLCAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbn1cblxuLnJvdy5ndXR0ZXItbGFyZ2UgPiAuY29sdW1uLCAucm93Lmd1dHRlci1sYXJnZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xufVxuXG4uY29sdW1uLCAuY29sdW1ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbHVtbiwgLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmNvbHVtbi5lbmQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOC4zMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04LjMzMzMzJTtcbn1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlO1xufVxuXG4uc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDE2LjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTE2LjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlO1xufVxuXG4uc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5zbWFsbC1wdXNoLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDI1JTtcbn1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTtcbn1cblxuLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMlO1xufVxuXG4uc21hbGwtcHVzaC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAzMy4zMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zMy4zMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1c2gtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNDEuNjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNDEuNjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlO1xufVxuXG4uc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5zbWFsbC1wdXNoLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDUwJTtcbn1cblxuLnNtYWxsLXB1bGwtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTUwJTtcbn1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTtcbn1cblxuLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMlO1xufVxuXG4uc21hbGwtcHVzaC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1OC4zMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01OC4zMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1c2gtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNjYuNjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNjYuNjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlO1xufVxuXG4uc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7XG59XG5cbi5zbWFsbC1wdXNoLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDc1JTtcbn1cblxuLnNtYWxsLXB1bGwtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTc1JTtcbn1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTtcbn1cblxuLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgzLjMzMzMzJTtcbn1cblxuLnNtYWxsLXB1bGwtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04My4zMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA5MS42NjY2NyU7XG59XG5cbi5zbWFsbC1wdWxsLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOTEuNjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTtcbn1cblxuLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclO1xufVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTAlO1xufVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDMzLjMzMzMzJTtcbn1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjAlO1xufVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE2LjY2NjY3JTtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNC4yODU3MSU7XG59XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTIuNSU7XG59XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC05ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTkgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTEuMTExMTElO1xufVxuXG4uc21hbGwtdXAtOSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtOSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtOSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOW4rMSksIC5zbWFsbC11cC05ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOW4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTkgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC05ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtMTAgPiAuY29sdW1uLCAuc21hbGwtdXAtMTAgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAlO1xufVxuXG4uc21hbGwtdXAtMTAgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTEwID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG5cbi5zbWFsbC11cC0xMCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTBuKzEpLCAuc21hbGwtdXAtMTAgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMG4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVwLTEwID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMTAgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC0xMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xMSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA5LjA5MDkxJTtcbn1cblxuLnNtYWxsLXVwLTExID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uc21hbGwtdXAtMTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDExbisxKSwgLnNtYWxsLXVwLTExID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTFuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11cC0xMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTExID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtMTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMTIgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogOC4zMzMzMyU7XG59XG5cbi5zbWFsbC11cC0xMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cblxuLnNtYWxsLXVwLTEyID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMm4rMSksIC5zbWFsbC11cC0xMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDEybisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdXAtMTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5zbWFsbC1jb2xsYXBzZSAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmV4cGFuZGVkLnJvdyAuc21hbGwtY29sbGFwc2Uucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG4uc21hbGwtY2VudGVyZWQge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdW5jZW50ZXJlZCxcbi5zbWFsbC1wdXNoLTAsXG4uc21hbGwtcHVsbC0wIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY2LjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uLCAubWVkaXVtLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbiwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbiwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbiwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNC4yODU3MSU7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTkgPiAuY29sdW1uLCAubWVkaXVtLXVwLTkgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDExLjExMTExJTtcbiAgfVxuICAubWVkaXVtLXVwLTkgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC05ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTkgPiAuY29sdW1uOm50aC1vZi10eXBlKDluKzEpLCAubWVkaXVtLXVwLTkgPiAuY29sdW1uczpudGgtb2YtdHlwZSg5bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC05ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTkgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTEwID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xMCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAlO1xuICB9XG4gIC5tZWRpdW0tdXAtMTAgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0xMCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0xMCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTBuKzEpLCAubWVkaXVtLXVwLTEwID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTBuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTEwID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEwID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0xMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDkuMDkwOTElO1xuICB9XG4gIC5tZWRpdW0tdXAtMTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0xMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0xMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTFuKzEpLCAubWVkaXVtLXVwLTExID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTExID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTExID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0xMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDguMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tdXAtMTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0xMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0xMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTJuKzEpLCAubWVkaXVtLXVwLTEyID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTEyID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEyID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmV4cGFuZGVkLnJvdyAubWVkaXVtLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxuICAubWVkaXVtLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLm1lZGl1bS1jZW50ZXJlZCwgLm1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVuY2VudGVyZWQsXG4gIC5tZWRpdW0tcHVzaC0wLFxuICAubWVkaXVtLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlO1xuICB9XG4gIC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlO1xuICB9XG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclO1xuICB9XG4gIC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlO1xuICB9XG4gIC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtOSA+IC5jb2x1bW4sIC5sYXJnZS11cC05ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMS4xMTExMSU7XG4gIH1cbiAgLmxhcmdlLXVwLTkgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTkgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC05ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg5bisxKSwgLmxhcmdlLXVwLTkgPiAuY29sdW1uczpudGgtb2YtdHlwZSg5bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTkgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC05ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTEwID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEwID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTEwID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0xMCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTEwID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMG4rMSksIC5sYXJnZS11cC0xMCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDEwbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTEwID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMTAgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtMTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDkuMDkwOTElO1xuICB9XG4gIC5sYXJnZS11cC0xMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0xMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTFuKzEpLCAubGFyZ2UtdXAtMTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0xMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTExID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTEyID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEyID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgfVxuICAubGFyZ2UtdXAtMTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTEyID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDEybisxKSwgLmxhcmdlLXVwLTEyID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtMTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAubGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5leHBhbmRlZC5yb3cgLmxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbiAgLmxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLmxhcmdlLWNlbnRlcmVkLCAubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsXG4gIC5sYXJnZS1wdXNoLTAsXG4gIC5sYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC54bGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclO1xuICB9XG4gIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAueGxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAueGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueGxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAueGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgfVxuICAueGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAueGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueGxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAueGxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAueGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAueGxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAueGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAueGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueGxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTtcbiAgfVxuICAueGxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAueGxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnhsYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueGxhcmdlLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTggPiAuY29sdW1uLCAueGxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtOSA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtOSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTEuMTExMTElO1xuICB9XG4gIC54bGFyZ2UtdXAtOSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTkgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54bGFyZ2UtdXAtOSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOW4rMSksIC54bGFyZ2UtdXAtOSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDluKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueGxhcmdlLXVwLTkgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtOSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdXAtMTAgPiAuY29sdW1uLCAueGxhcmdlLXVwLTEwID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMCU7XG4gIH1cbiAgLnhsYXJnZS11cC0xMCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTEwID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTEwID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMG4rMSksIC54bGFyZ2UtdXAtMTAgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtMTAgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMTAgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTExID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogOS4wOTA5MSU7XG4gIH1cbiAgLnhsYXJnZS11cC0xMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTExID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTExID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMW4rMSksIC54bGFyZ2UtdXAtMTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtMTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLXVwLTEyID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS11cC0xMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTEyID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueGxhcmdlLXVwLTEyID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMm4rMSksIC54bGFyZ2UtdXAtMTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdXAtMTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAueGxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZXhwYW5kZWQucm93IC54bGFyZ2UtY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG4gIC54bGFyZ2UtY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICAueGxhcmdlLWNlbnRlcmVkLCAueGxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54bGFyZ2UtdW5jZW50ZXJlZCxcbiAgLnhsYXJnZS1wdXNoLTAsXG4gIC54bGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7XG4gIH1cbiAgLnh4bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTtcbiAgfVxuICAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS11cC0zID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICB9XG4gIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueHhsYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS11cC02ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICB9XG4gIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueHhsYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNC4yODU3MSU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC54eGxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC54eGxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLXVwLTkgPiAuY29sdW1uLCAueHhsYXJnZS11cC05ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMS4xMTExMSU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtOSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC05ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC05ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg5bisxKSwgLnh4bGFyZ2UtdXAtOSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDluKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC05ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC05ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTAgPiAuY29sdW1uLCAueHhsYXJnZS11cC0xMCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAlO1xuICB9XG4gIC54eGxhcmdlLXVwLTEwID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTEwID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAueHhsYXJnZS11cC0xMCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMTBuKzEpLCAueHhsYXJnZS11cC0xMCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDEwbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTAgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTEwID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTEgPiAuY29sdW1uLCAueHhsYXJnZS11cC0xMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogOS4wOTA5MSU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtMTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC54eGxhcmdlLXVwLTExID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxMW4rMSksIC54eGxhcmdlLXVwLTExID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMTFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAueHhsYXJnZS11cC0xMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtMTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAueHhsYXJnZS11cC0xMiA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTEyID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgfVxuICAueHhsYXJnZS11cC0xMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC0xMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLnh4bGFyZ2UtdXAtMTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDEybisxKSwgLnh4bGFyZ2UtdXAtMTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC54eGxhcmdlLXVwLTEyID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC0xMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLnh4bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLnh4bGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5leHBhbmRlZC5yb3cgLnh4bGFyZ2UtY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLnh4bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbiAgLnh4bGFyZ2UtY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICAueHhsYXJnZS1jZW50ZXJlZCwgLnh4bGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLnh4bGFyZ2UtdW5jZW50ZXJlZCxcbiAgLnh4bGFyZ2UtcHVzaC0wLFxuICAueHhsYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5jb2x1bW4tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xufVxuXG4uY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sdW1uLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtO1xuICB9XG4gIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29sdW1uLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtO1xuICB9XG4gIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS4zO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5oMSBzbWFsbCxcbmgyIHNtYWxsLFxuaDMgc21hbGwsXG5oNCBzbWFsbCxcbmg1IHNtYWxsLFxuaDYgc21hbGwge1xuICBsaW5lLWhlaWdodDogMDtcbiAgY29sb3I6ICNkZGRkZGQ7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAxLjI4NTcxcmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDEuNDI4NTdyZW07XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDEuNDI4NTdyZW07XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICMxMTUzQUQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5hOmhvdmVyLCBhOmZvY3VzIHtcbiAgY29sb3I6ICMwZjQ3OTU7XG59XG5cbmEgaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDkyLjg1NzE0cmVtO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMS40Mjg1N3JlbSBhdXRvO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItbGVmdDogMDtcbn1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG5cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbn1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5kbCBkdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjY0Mjg2cmVtIDEuNDI4NTdyZW0gMCAxLjM1NzE0cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNkZGRkZGQ7XG59XG5cbmJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGNvbG9yOiAjNzk3OTZBO1xufVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbiAgY29sb3I6ICM3OTc5NkE7XG59XG5cbmNpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJQgXCI7XG59XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMGEwYTBhO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMC4xNDI4NnJlbSAwLjM1NzE0cmVtIDAuMDcxNDNyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTU7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjE0Mjg2cmVtIDAuMjg1NzFyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xufVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjNzk3OTZBO1xufVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTcuNXB4O1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxucCArIC5zdGF0IHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG59XG5cbnVsLm5vLWJ1bGxldCwgb2wubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLnhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAueGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLnh4bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLnh4bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAueHhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50O1xuICB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzc5Nzk2QTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTtcbiAgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gIH1cbn1cblxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgcGFkZGluZzogMC42ZW0gMC45NWVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGU0NzkzO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi50aW55IHtcbiAgZm9udC1zaXplOiAwLjZyZW07XG59XG5cbi5idXR0b24uc21hbGwge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi5idXR0b24ubGFyZ2Uge1xuICBmb250LXNpemU6IDEuMzVyZW07XG59XG5cbi5idXR0b24uZXhwYW5kZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5idXR0b24ucHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZTQyOGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ud2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmFsZXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5vZmYtYmxhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5vZmYtYmxhY2s6aG92ZXIsIC5idXR0b24ub2ZmLWJsYWNrOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MjcyNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ubGlnaHQtZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTU7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmxpZ2h0LWdyYXk6aG92ZXIsIC5idXR0b24ubGlnaHQtZ3JheTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZGI0YjQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmFjY2VudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOUE1MTk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmFjY2VudDpob3ZlciwgLmJ1dHRvbi5hY2NlbnQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDY4ODA2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyRjlGNDY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmdyZWVuOmhvdmVyLCAuYnV0dG9uLmdyZWVuOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI2N2YzODtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ucmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ucmVkOmhvdmVyLCAuYnV0dG9uLnJlZDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQsIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE1M0FEO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeSwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5IHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3Mge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZyB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmc6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZGlzYWJsZWQub2ZmLWJsYWNrLCAuYnV0dG9uW2Rpc2FibGVkXS5vZmYtYmxhY2sge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLm9mZi1ibGFjaywgLmJ1dHRvbi5kaXNhYmxlZC5vZmYtYmxhY2s6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQub2ZmLWJsYWNrOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5vZmYtYmxhY2ssIC5idXR0b25bZGlzYWJsZWRdLm9mZi1ibGFjazpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ub2ZmLWJsYWNrOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxMzEzMTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZGlzYWJsZWQubGlnaHQtZ3JheSwgLmJ1dHRvbltkaXNhYmxlZF0ubGlnaHQtZ3JheSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQubGlnaHQtZ3JheSwgLmJ1dHRvbi5kaXNhYmxlZC5saWdodC1ncmF5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmxpZ2h0LWdyYXk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmxpZ2h0LWdyYXksIC5idXR0b25bZGlzYWJsZWRdLmxpZ2h0LWdyYXk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmxpZ2h0LWdyYXk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5hY2NlbnQsIC5idXR0b25bZGlzYWJsZWRdLmFjY2VudCB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5idXR0b24uZGlzYWJsZWQuYWNjZW50LCAuYnV0dG9uLmRpc2FibGVkLmFjY2VudDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hY2NlbnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFjY2VudCwgLmJ1dHRvbltkaXNhYmxlZF0uYWNjZW50OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hY2NlbnQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlBNTE5O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5kaXNhYmxlZC5ncmVlbiwgLmJ1dHRvbltkaXNhYmxlZF0uZ3JlZW4ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLmdyZWVuLCAuYnV0dG9uLmRpc2FibGVkLmdyZWVuOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmdyZWVuOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5ncmVlbiwgLmJ1dHRvbltkaXNhYmxlZF0uZ3JlZW46aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmdyZWVuOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJGOUY0NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uZGlzYWJsZWQucmVkLCAuYnV0dG9uW2Rpc2FibGVkXS5yZWQge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLmRpc2FibGVkLnJlZCwgLmJ1dHRvbi5kaXNhYmxlZC5yZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQucmVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5yZWQsIC5idXR0b25bZGlzYWJsZWRdLnJlZDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucmVkOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24uaG9sbG93IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzExNTNBRDtcbiAgY29sb3I6ICMxMTUzQUQ7XG59XG5cbi5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwOTJhNTc7XG4gIGNvbG9yOiAjMDkyYTU3O1xufVxuXG4uYnV0dG9uLmhvbGxvdzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3c6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzExNTNBRDtcbiAgY29sb3I6ICMxMTUzQUQ7XG59XG5cbi5idXR0b24uaG9sbG93LnByaW1hcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTE1M0FEO1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzA5MmE1NztcbiAgY29sb3I6ICMwOTJhNTc7XG59XG5cbi5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTUzQUQ7XG4gIGNvbG9yOiAjMTE1M0FEO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cblxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gIGNvbG9yOiAjM2IzYjNiO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG5cbi5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gIGNvbG9yOiAjMTU3NTM5O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICBjb2xvcjogIzNhZGI3Njtcbn1cblxuLmJ1dHRvbi5ob2xsb3cud2FybmluZyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuXG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICBjb2xvcjogIzgwNTcwMDtcbn1cblxuLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgY29sb3I6ICNmZmFlMDA7XG59XG5cbi5idXR0b24uaG9sbG93LmFsZXJ0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgY29sb3I6ICM2NzI1MWE7XG59XG5cbi5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmJ1dHRvbi5ob2xsb3cub2ZmLWJsYWNrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzMxMzEzMTtcbiAgY29sb3I6ICMzMTMxMzE7XG59XG5cbi5idXR0b24uaG9sbG93Lm9mZi1ibGFjazpob3ZlciwgLmJ1dHRvbi5ob2xsb3cub2ZmLWJsYWNrOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTkxOTE5O1xuICBjb2xvcjogIzE5MTkxOTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cub2ZmLWJsYWNrOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5vZmYtYmxhY2s6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5vZmYtYmxhY2s6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lm9mZi1ibGFjazpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMzEzMTMxO1xuICBjb2xvcjogIzMxMzEzMTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cubGlnaHQtZ3JheSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIGNvbG9yOiAjZThlNWU1O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5saWdodC1ncmF5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5saWdodC1ncmF5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjN2E2YzZjO1xuICBjb2xvcjogIzdhNmM2Yztcbn1cblxuLmJ1dHRvbi5ob2xsb3cubGlnaHQtZ3JheTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cubGlnaHQtZ3JheTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmxpZ2h0LWdyYXk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmxpZ2h0LWdyYXk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgY29sb3I6ICNlOGU1ZTU7XG59XG5cbi5idXR0b24uaG9sbG93LmFjY2VudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGOUE1MTk7XG4gIGNvbG9yOiAjRjlBNTE5O1xufVxuXG4uYnV0dG9uLmhvbGxvdy5hY2NlbnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFjY2VudDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzg2NTUwMztcbiAgY29sb3I6ICM4NjU1MDM7XG59XG5cbi5idXR0b24uaG9sbG93LmFjY2VudDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWNjZW50OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuYWNjZW50OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hY2NlbnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Y5QTUxOTtcbiAgY29sb3I6ICNGOUE1MTk7XG59XG5cbi5idXR0b24uaG9sbG93LmdyZWVuIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzJGOUY0NjtcbiAgY29sb3I6ICMyRjlGNDY7XG59XG5cbi5idXR0b24uaG9sbG93LmdyZWVuOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5ncmVlbjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzE4NTAyMztcbiAgY29sb3I6ICMxODUwMjM7XG59XG5cbi5idXR0b24uaG9sbG93LmdyZWVuOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5ncmVlbjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmdyZWVuOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5ncmVlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMkY5RjQ2O1xuICBjb2xvcjogIzJGOUY0Njtcbn1cblxuLmJ1dHRvbi5ob2xsb3cucmVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5idXR0b24uaG9sbG93LnJlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucmVkOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICBjb2xvcjogIzY3MjUxYTtcbn1cblxuLmJ1dHRvbi5ob2xsb3cucmVkOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5yZWQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5yZWQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnJlZDpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmJ1dHRvbi5jbGVhciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTUzQUQ7XG4gIGNvbG9yOiAjMTE1M0FEO1xufVxuXG4uYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzA5MmE1NztcbiAgY29sb3I6ICMwOTJhNTc7XG59XG5cbi5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMTUzQUQ7XG4gIGNvbG9yOiAjMTE1M0FEO1xufVxuXG4uYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6Zm9jdXMsIC5idXR0b24uY2xlYXI6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhci5wcmltYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzExNTNBRDtcbiAgY29sb3I6ICMxMTUzQUQ7XG59XG5cbi5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDkyYTU3O1xuICBjb2xvcjogIzA5MmE1Nztcbn1cblxuLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTE1M0FEO1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG5cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgY29sb3I6ICMzYjNiM2I7XG59XG5cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cblxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5idXR0b24uY2xlYXIuc3VjY2VzcyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuXG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgY29sb3I6ICMxNTc1Mzk7XG59XG5cbi5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG5cbi5idXR0b24uY2xlYXIuc3VjY2VzcywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmNsZWFyLndhcm5pbmcge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cblxuLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gIGNvbG9yOiAjODA1NzAwO1xufVxuXG4uYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuXG4uYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhci5hbGVydCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICBjb2xvcjogIzY3MjUxYTtcbn1cblxuLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5idXR0b24uY2xlYXIuYWxlcnQsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cywgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmNsZWFyLm9mZi1ibGFjayB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMTMxMzE7XG4gIGNvbG9yOiAjMzEzMTMxO1xufVxuXG4uYnV0dG9uLmNsZWFyLm9mZi1ibGFjazpob3ZlciwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMxOTE5MTk7XG4gIGNvbG9yOiAjMTkxOTE5O1xufVxuXG4uYnV0dG9uLmNsZWFyLm9mZi1ibGFjazpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLm9mZi1ibGFjazpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzMxMzEzMTtcbiAgY29sb3I6ICMzMTMxMzE7XG59XG5cbi5idXR0b24uY2xlYXIub2ZmLWJsYWNrLCAuYnV0dG9uLmNsZWFyLm9mZi1ibGFjay5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2tbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLm9mZi1ibGFjazpob3ZlciwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIub2ZmLWJsYWNrOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5vZmYtYmxhY2s6Zm9jdXMsIC5idXR0b24uY2xlYXIub2ZmLWJsYWNrOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLm9mZi1ibGFjazpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZThlNWU1O1xuICBjb2xvcjogI2U4ZTVlNTtcbn1cblxuLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM3YTZjNmM7XG4gIGNvbG9yOiAjN2E2YzZjO1xufVxuXG4uYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIGNvbG9yOiAjZThlNWU1O1xufVxuXG4uYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXksIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIubGlnaHQtZ3JheTpmb2N1cywgLmJ1dHRvbi5jbGVhci5saWdodC1ncmF5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmxpZ2h0LWdyYXk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhci5hY2NlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRjlBNTE5O1xuICBjb2xvcjogI0Y5QTUxOTtcbn1cblxuLmJ1dHRvbi5jbGVhci5hY2NlbnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWNjZW50OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODY1NTAzO1xuICBjb2xvcjogIzg2NTUwMztcbn1cblxuLmJ1dHRvbi5jbGVhci5hY2NlbnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWNjZW50OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hY2NlbnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWNjZW50OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGOUE1MTk7XG4gIGNvbG9yOiAjRjlBNTE5O1xufVxuXG4uYnV0dG9uLmNsZWFyLmFjY2VudCwgLmJ1dHRvbi5jbGVhci5hY2NlbnQuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWNjZW50W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hY2NlbnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWNjZW50OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFjY2VudDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWNjZW50OmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFjY2VudDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hY2NlbnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmJ1dHRvbi5jbGVhci5ncmVlbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyRjlGNDY7XG4gIGNvbG9yOiAjMkY5RjQ2O1xufVxuXG4uYnV0dG9uLmNsZWFyLmdyZWVuOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmdyZWVuOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTg1MDIzO1xuICBjb2xvcjogIzE4NTAyMztcbn1cblxuLmJ1dHRvbi5jbGVhci5ncmVlbjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5ncmVlbjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuZ3JlZW46Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZ3JlZW46Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzJGOUY0NjtcbiAgY29sb3I6ICMyRjlGNDY7XG59XG5cbi5idXR0b24uY2xlYXIuZ3JlZW4sIC5idXR0b24uY2xlYXIuZ3JlZW4uZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZ3JlZW5bZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmdyZWVuOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmdyZWVuOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmdyZWVuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5ncmVlbjpmb2N1cywgLmJ1dHRvbi5jbGVhci5ncmVlbjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5ncmVlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmNsZWFyLnJlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uYnV0dG9uLmNsZWFyLnJlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5yZWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gIGNvbG9yOiAjNjcyNTFhO1xufVxuXG4uYnV0dG9uLmNsZWFyLnJlZDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5yZWQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnJlZDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5yZWQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5idXR0b24uY2xlYXIucmVkLCAuYnV0dG9uLmNsZWFyLnJlZC5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5yZWRbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnJlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5yZWQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucmVkOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5yZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIucmVkOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnJlZDpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNGVtO1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogI2ZlZmVmZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDAuNGVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDAuOTVlbTtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzExNTNBRDtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjMTE1M0FEO1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzc2NzY3Njtcbn1cblxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjM2FkYjc2O1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7XG59XG5cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7XG59XG5cbi5idXR0b24uZHJvcGRvd24uaG9sbG93Lm9mZi1ibGFjazo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjMzEzMTMxO1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5saWdodC1ncmF5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNlOGU1ZTU7XG59XG5cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LmFjY2VudDo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjRjlBNTE5O1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5ncmVlbjo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjMkY5RjQ2O1xufVxuXG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5yZWQ6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNztcbn1cblxuLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gIHRvcDogLTAuMWVtO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNjcxNDNyZW07XG4gIG1hcmdpbjogMCAwIDEuMTQyODZyZW07XG4gIHBhZGRpbmc6IDAuNTcxNDNyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDEwLCAxMCwgMTAsIDAuMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNkZGRkZGQ7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxudGV4dGFyZWFbcm93c10ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbmlucHV0OjpwbGFjZWhvbGRlcixcbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjNzk3OTZBO1xufVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5bdHlwZT0nc3VibWl0J10sXG5bdHlwZT0nYnV0dG9uJ10ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xufVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMS4xNDI4NnJlbTtcbn1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcblt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luLWxlZnQ6IDAuNTcxNDNyZW07XG4gIG1hcmdpbi1yaWdodDogMS4xNDI4NnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41NzE0M3JlbTtcbn1cblxuW3R5cGU9J2ZpbGUnXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbmxhYmVsLm1pZGRsZSB7XG4gIG1hcmdpbjogMCAwIDEuMTQyODZyZW07XG4gIHBhZGRpbmc6IDAuNjQyODZyZW0gMDtcbn1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjU3MTQzcmVtO1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTtcbn1cblxuLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbSAwIDAgMC4xOHJlbTtcbn1cblxuLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQgPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjE4cmVtIDAuMThyZW0gMDtcbn1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDElO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgaGVpZ2h0OiAyLjcxNDI5cmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgaGVpZ2h0OiAyLjcxNDI5cmVtO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNTcxNDNyZW07XG59XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4yODU3MXJlbSAwO1xuICBwYWRkaW5nOiAxLjQyODU3cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xufVxuXG4uZmllbGRzZXQgbGVnZW5kIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tbGVmdDogLTAuMjE0MjlyZW07XG4gIHBhZGRpbmc6IDAgMC4yMTQyOXJlbTtcbn1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjY3MTQzcmVtO1xuICBtYXJnaW46IDAgMCAxLjE0Mjg2cmVtO1xuICBwYWRkaW5nOiAwLjU3MTQzcmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMjEsIDEyMSwgMTA2JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xLjE0Mjg2cmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjcxNDI5cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7XG4gIH1cbn1cblxuc2VsZWN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjZGRkZGRkO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cblxuc2VsZWN0OmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuc2VsZWN0W211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWVjZWE7XG59XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjU3MTQzcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtO1xuICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW0gMC4xOHJlbSAwIDA7XG59XG5cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4xOHJlbSAwLjE4cmVtO1xufVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4xOHJlbSAwLjE4cmVtO1xufVxuXG4uYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbn1cblxuLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGNvbnRlbnQ6ICcrJztcbn1cblxuLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXDIwMTMnO1xufVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkZGRkO1xufVxuXG4uYWNjb3JkaW9uLW1lbnUgbGkge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFjY29yZGlvbi1tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cblxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG5cbi5hY2NvcmRpb24tbWVudSAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMxMTUzQUQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuXG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMXJlbTtcbn1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcmVtO1xufVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG59XG5cbi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xufVxuXG4uc3VibWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMxMTUzQUQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4uc3VibWVudS10b2dnbGUtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICBib3JkZXI6IDA7XG59XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAyLjFlbTtcbiAgcGFkZGluZzogMC4zZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAwLjY1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYmFkZ2UucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxMTUzQUQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYmFkZ2Uuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5iYWRnZS5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5iYWRnZS53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5iYWRnZS5hbGVydCB7XG4gIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYmFkZ2Uub2ZmLWJsYWNrIHtcbiAgYmFja2dyb3VuZDogIzMxMzEzMTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5iYWRnZS5hY2NlbnQge1xuICBiYWNrZ3JvdW5kOiAjRjlBNTE5O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmJhZGdlLmdyZWVuIHtcbiAgYmFja2dyb3VuZDogIzJGOUY0NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5iYWRnZS5yZWQge1xuICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwLjVyZW0gMCAwLjVyZW0gMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmJyZWFkY3J1bWJzOjpiZWZvcmUsIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4uYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5icmVhZGNydW1icyBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAuMjVyZW07XG4gIG9wYWNpdHk6IDE7XG4gIGNvbnRlbnQ6IFwiL1wiO1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuLmJyZWFkY3J1bWJzIGEge1xuICBjb2xvcjogIzMxMzEzMTtcbn1cblxuLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjZGRkZGRkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwO1xufVxuXG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLmJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uYnV0dG9uLWdyb3VwLnRpbnkgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xufVxuXG4uYnV0dG9uLWdyb3VwLnNtYWxsIC5idXR0b24ge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5cbi5idXR0b24tZ3JvdXAubGFyZ2UgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCB7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbn1cblxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMjUlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMjAlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSkgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG5cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNikgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG5cbi5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzExNTNBRDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwZTQyOGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWU1ZTVlO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTUzYjJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhbGxvdXQucHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2U0ZmI7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uY2FsbG91dC5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmNhbGxvdXQuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMWZhZWE7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uY2FsbG91dC53YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNkOTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5jYWxsb3V0LmFsZXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZTRlMTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5jYWxsb3V0LnNtYWxsIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cblxuLmNhbGxvdXQubGFyZ2Uge1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbn1cblxuLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmNhcmQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWRpdmlkZXIge1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG4uY2FyZC1kaXZpZGVyID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1zZWN0aW9uIHtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAxcHg7XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuY2xvc2UtYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uY2xvc2UtYnV0dG9uLnNtYWxsIHtcbiAgcmlnaHQ6IDAuNjZyZW07XG4gIHRvcDogMC4zM2VtO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNsb3NlLWJ1dHRvbiwgLmNsb3NlLWJ1dHRvbi5tZWRpdW0ge1xuICByaWdodDogMXJlbTtcbiAgdG9wOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5tZW51IGxpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm1lbnUgYSxcbi5tZW51IC5idXR0b24ge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG5cbi5tZW51IGlucHV0LFxuLm1lbnUgc2VsZWN0LFxuLm1lbnUgYSxcbi5tZW51IGJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5tZW51IGlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWVudSBsaSwgLm1lbnUuaG9yaXpvbnRhbCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1lbnUudmVydGljYWwgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1lbnUuZXhwYW5kZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tZW51LmV4cGFuZGVkID4gbGkge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWVudS5zaW1wbGUgbGkgKyBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuXG4ubWVudS5zaW1wbGUgYSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVudS5tZWRpdW0tZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1leHBhbmRlZCA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXNpbXBsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXNpbXBsZSA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5tZW51LmxhcmdlLXZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVudS5sYXJnZS1leHBhbmRlZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC5tZW51LmxhcmdlLXNpbXBsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUubGFyZ2Utc2ltcGxlID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tZW51LnhsYXJnZS1ob3Jpem9udGFsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLm1lbnUueGxhcmdlLXZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVudS54bGFyZ2UtZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51LnhsYXJnZS1leHBhbmRlZCA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLm1lbnUueGxhcmdlLXNpbXBsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUueGxhcmdlLXNpbXBsZSA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubWVudS54eGxhcmdlLWhvcml6b250YWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAubWVudS54eGxhcmdlLXZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVudS54eGxhcmdlLWV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS54eGxhcmdlLWV4cGFuZGVkID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAubWVudS54eGxhcmdlLXNpbXBsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUueHhsYXJnZS1zaW1wbGUgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi5tZW51Lm5lc3RlZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5cbi5tZW51Lmljb25zIGltZyxcbi5tZW51Lmljb25zIGksXG4ubWVudS5pY29ucyBzdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWVudS5pY29ucyBpbWcgKyBzcGFuLFxuLm1lbnUuaWNvbnMgaSArIHNwYW4sXG4ubWVudS5pY29ucyBzdmcgKyBzcGFuIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaW1nLFxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSxcbi5tZW51Lmljb24tbGVmdCBsaSBhIHN2ZyB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWVudS5pY29uLXJpZ2h0IGxpIGEgaW1nLFxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4ubWVudS5pY29uLXJpZ2h0IGxpIGEgc3ZnIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1lbnUuaWNvbi10b3AgbGkgYSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm1lbnUuaWNvbi10b3AgbGkgYSBpbWcsXG4ubWVudS5pY29uLXRvcCBsaSBhIGksXG4ubWVudS5pY29uLXRvcCBsaSBhIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0byAwLjI1cmVtO1xufVxuXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZyxcbi5tZW51Lmljb24tYm90dG9tIGxpIGEgaSxcbi5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMC4yNXJlbSBhdXRvIDA7XG59XG5cbi5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogIzExNTNBRDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5tZW51IC5hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogIzExNTNBRDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5tZW51LmFsaWduLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ubWVudS5hbGlnbi1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ubWVudS5hbGlnbi1yaWdodCAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIC5zdWJtZW51IGxpIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ubWVudS5hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tZW51LmFsaWduLWNlbnRlciAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5tZW51IC5tZW51LXRleHQge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbnUtaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tZW51LWljb246OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgI2ZlZmVmZSwgMCAxNHB4IDAgI2ZlZmVmZTtcbiAgY29udGVudDogJyc7XG59XG5cbi5tZW51LWljb246aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2RkZGRkZDtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjZGRkZGRkLCAwIDE0cHggMCAjZGRkZGRkO1xufVxuXG4ubWVudS1pY29uLmRhcmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubWVudS1pY29uLmRhcms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgIzBhMGEwYSwgMCAxNHB4IDAgIzBhMGEwYTtcbiAgY29udGVudDogJyc7XG59XG5cbi5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjNzk3OTZBO1xuICBib3gtc2hhZG93OiAwIDdweCAwICM3OTc5NkEsIDAgMTRweCAwICM3OTc5NkE7XG59XG5cbi5pcy1kcmlsbGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5pcy1kcmlsbGRvd24gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xufVxuXG4uZHJpbGxkb3duIGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbn1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xufVxuXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUge1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuXG4uZHJpbGxkb3duIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJpbGxkb3duIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTZweDtcbiAgcmlnaHQ6IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxMTUzQUQ7XG59XG5cbi5kcmlsbGRvd24uYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzExNTNBRDtcbn1cblxuLmRyaWxsZG93bi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cblxuLmRyaWxsZG93biAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuXG4uZHJvcGRvd24tcGFuZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIHdpZHRoOiAzMDBweDtcbiAgcGFkZGluZzogMXJlbTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3Bkb3duLXBhbmUuaXMtb3BlbiB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZHJvcGRvd24tcGFuZS50aW55IHtcbiAgd2lkdGg6IDEwMHB4O1xufVxuXG4uZHJvcGRvd24tcGFuZS5zbWFsbCB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUubGFyZ2Uge1xuICB3aWR0aDogNDAwcHg7XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cblxuLmRyb3Bkb3duLm1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5kcm9wZG93bi5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMTE1M0FEO1xufVxuXG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZHJvcGRvd24ubWVudSAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwO1xufVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IDA7XG59XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xufVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTE1M0FEO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzExNTNBRDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTE1M0FEO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMxMTUzQUQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzExNTNBRCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxMTUzQUQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMxMTUzQUQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxMTUzQUQ7XG4gIH1cbn1cblxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7XG59XG5cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA1cHg7XG4gIG1hcmdpbi10b3A6IC02cHg7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG59XG5cbi5kcm9wZG93biAuaXMtZHJvcGRvd24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTE1M0FEIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxMTUzQUQ7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBsaSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4ucmVzcG9uc2l2ZS1lbWJlZCBvYmplY3QsXG4ucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbi5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuLmZsZXgtdmlkZW8gaWZyYW1lLFxuLmZsZXgtdmlkZW8gb2JqZWN0LFxuLmZsZXgtdmlkZW8gZW1iZWQsXG4uZmxleC12aWRlbyB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuLFxuLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiAjMTE1M0FEO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmxhYmVsLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTE1M0FEO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmxhYmVsLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4ubGFiZWwuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ubGFiZWwud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ubGFiZWwuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ubWVkaWEtb2JqZWN0IGltZyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb246bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbi5ib3R0b20ge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4uaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtY2xvc2FibGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ub2ZmLWNhbnZhcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG5cbi5vZmYtY2FudmFzLmlzLWNsb3NlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG5cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuXG4ub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICB6LWluZGV4OiAxMjtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtY2xvc2VkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICB6LWluZGV4OiAxMztcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDEwLCAxMCwgMTAsIDAuNyk7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAyNTBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAyNTBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xufVxuXG4ucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMTNweCAwIDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tdG9wLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuXG4ucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tYm90dG9tLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXh4bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXh4bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXh4bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ub3JiaXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5vcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ub3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm9yYml0LXNsaWRlLm5vLW1vdGlvbnVpLmlzLWFjdGl2ZSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLm9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm9yYml0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ub3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLm9yYml0LXByZXZpb3VzLCAub3JiaXQtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LXByZXZpb3VzLCBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LW5leHQge1xuICBvdXRsaW5lOiAwO1xufVxuXG4ub3JiaXQtcHJldmlvdXM6aG92ZXIsIC5vcmJpdC1uZXh0OmhvdmVyLCAub3JiaXQtcHJldmlvdXM6YWN0aXZlLCAub3JiaXQtbmV4dDphY3RpdmUsIC5vcmJpdC1wcmV2aW91czpmb2N1cywgLm9yYml0LW5leHQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7XG59XG5cbi5vcmJpdC1wcmV2aW91cyB7XG4gIGxlZnQ6IDA7XG59XG5cbi5vcmJpdC1uZXh0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG5cbi5vcmJpdC1idWxsZXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LWJ1bGxldHMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4ub3JiaXQtYnVsbGV0cyBidXR0b24ge1xuICB3aWR0aDogMS4ycmVtO1xuICBoZWlnaHQ6IDEuMnJlbTtcbiAgbWFyZ2luOiAwLjFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGRkZDtcbn1cblxuLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc5Nzk2QTtcbn1cblxuLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3OTc5NkE7XG59XG5cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG59XG5cbi5wYWdpbmF0aW9uOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucGFnaW5hdGlvbiBsaSB7XG4gIG1hcmdpbi1yaWdodDogMC4wNzE0M3JlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4ucGFnaW5hdGlvbiBhLFxuLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMjE0MjlyZW0gMC43MTQyOXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5wYWdpbmF0aW9uIGE6aG92ZXIsXG4ucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG4ucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gIHBhZGRpbmc6IDAuMjE0MjlyZW0gMC43MTQyOXJlbTtcbiAgYmFja2dyb3VuZDogIzExNTNBRDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnBhZ2luYXRpb24gLmRpc2FibGVkIHtcbiAgcGFkZGluZzogMC4yMTQyOXJlbSAwLjcxNDI5cmVtO1xuICBjb2xvcjogI2RkZGRkZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICBwYWRkaW5nOiAwLjIxNDI5cmVtIDAuNzE0MjlyZW07XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGNvbnRlbnQ6ICdcXDAwYWInO1xufVxuXG4ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbnRlbnQ6ICdcXDAwYmInO1xufVxuXG4ucHJvZ3Jlc3Mge1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMThyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZGQ7XG59XG5cbi5wcm9ncmVzcy5wcmltYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMTUzQUQ7XG59XG5cbi5wcm9ncmVzcy5zZWNvbmRhcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3Njtcbn1cblxuLnByb2dyZXNzLnN1Y2Nlc3MgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3Njtcbn1cblxuLnByb2dyZXNzLndhcm5pbmcgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbn1cblxuLnByb2dyZXNzLmFsZXJ0IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG59XG5cbi5wcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE1M0FEO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xufVxuXG4ucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbn1cblxuLnNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLnNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZGRkZDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi5zbGlkZXItZmlsbC5pcy1kcmFnZ2luZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG59XG5cbi5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjRyZW07XG4gIGhlaWdodDogMS40cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTE1M0FEO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuc2xpZGVyLWhhbmRsZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5zbGlkZXItaGFuZGxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBlNDc5Mztcbn1cblxuLnNsaWRlci1oYW5kbGUuaXMtZHJhZ2dpbmcge1xuICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xufVxuXG4uc2xpZGVyLmRpc2FibGVkLFxuLnNsaWRlcltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uc2xpZGVyLnZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcbn1cblxuLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWZpbGwge1xuICB0b3A6IDA7XG4gIHdpZHRoOiAwLjVyZW07XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbi5zbGlkZXIudmVydGljYWwgLnNsaWRlci1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zdGlja3kuaXMtc3R1Y2suaXMtYXQtdG9wIHtcbiAgdG9wOiAwO1xufVxuXG4uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbn1cblxuLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xufVxuXG5ib2R5LmlzLXJldmVhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuaHRtbC5pcy1yZXZlYWwtb3Blbixcbmh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi5yZXZlYWwge1xuICB6LWluZGV4OiAxMDA2O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucmV2ZWFsIHtcbiAgb3V0bGluZTogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxufVxuXG4ucmV2ZWFsIC5jb2x1bW4sIC5yZXZlYWwgLmNvbHVtbnMge1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5yZXZlYWwge1xuICAgIHdpZHRoOiA2MDBweDtcbiAgICBtYXgtd2lkdGg6IDkyLjg1NzE0cmVtO1xuICB9XG59XG5cbi5yZXZlYWwuY29sbGFwc2Uge1xuICBwYWRkaW5nOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmV2ZWFsLnRpbnkge1xuICAgIHdpZHRoOiAzMCU7XG4gICAgbWF4LXdpZHRoOiA5Mi44NTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmV2ZWFsLnNtYWxsIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1heC13aWR0aDogOTIuODU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbC5sYXJnZSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXgtd2lkdGg6IDkyLjg1NzE0cmVtO1xuICB9XG59XG5cbi5yZXZlYWwuZnVsbCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5yZXZlYWwge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuXG4ucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLypAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDsqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4xOHJlbTtcbn1cblxudGhlYWQsXG50Ym9keSxcbnRmb290IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YxZjFmMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDAuNDI4NTdyZW0gMC41NzE0M3JlbSAwLjU3MTQzcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxudGhlYWQge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxudGZvb3Qge1xuICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxudGhlYWQgdHIsXG50Zm9vdCB0ciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG50aGVhZCB0aCxcbnRoZWFkIHRkLFxudGZvb3QgdGgsXG50Zm9vdCB0ZCB7XG4gIHBhZGRpbmc6IDAuNDI4NTdyZW0gMC41NzE0M3JlbSAwLjU3MTQzcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxudGJvZHkgdGgsXG50Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDAuNDI4NTdyZW0gMC41NzE0M3JlbSAwLjU3MTQzcmVtO1xufVxuXG50Ym9keSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuXG50YWJsZS5zdHJpcGVkIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICB0YWJsZS5zdGFjayB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5zdGFjayB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5zdGFjayB0cixcbiAgdGFibGUuc3RhY2sgdGgsXG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcbn1cblxudGFibGUuaG92ZXIgdGZvb3QgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xufVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG59XG5cbnRhYmxlLmhvdmVyLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjO1xufVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4udGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4udGFiczo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnRhYnMudmVydGljYWwgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzExNTNBRDtcbn1cblxuLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4udGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzEyNWFiYztcbn1cblxuLnRhYnMtdGl0bGUge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRhYnMtdGl0bGUgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzExNTNBRDtcbn1cblxuLnRhYnMtdGl0bGUgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICMwZjQ3OTU7XG59XG5cbi50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIGNvbG9yOiAjMTE1M0FEO1xufVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4udGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IHNvbGlkIDRweCAjZmVmZWZlO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgxMCwgMTAsIDEwLCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDtcbn1cblxuYS50aHVtYm5haWwge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xufVxuXG5hLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDE3LCA4MywgMTczLCAwLjUpO1xufVxuXG5hLnRodW1ibmFpbCBpbWFnZSB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi50aXRsZS1iYXIge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4udGl0bGUtYmFyOjpiZWZvcmUsIC50aXRsZS1iYXI6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbn1cblxuLnRpdGxlLWJhcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cblxuLnRpdGxlLWJhci1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi50aXRsZS1iYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGl0bGUtYmFyLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjNzk3OTZBO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAwLjY0OTVyZW0pO1xuICB6LWluZGV4OiAxMjAwO1xuICBtYXgtd2lkdGg6IDEwcmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjE4cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDgwJTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi50b29sdGlwOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi50b29sdGlwLmJvdHRvbTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gIGJvdHRvbTogMTAwJTtcbn1cblxuLnRvb2x0aXAuYm90dG9tLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHRvcDogMTAwJTtcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4udG9vbHRpcC50b3AuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnRvb2x0aXAubGVmdDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gIGxlZnQ6IDEwMCU7XG59XG5cbi50b29sdGlwLmxlZnQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi50b29sdGlwLnJpZ2h0OjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi50b29sdGlwLnJpZ2h0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4udG9vbHRpcC5hbGlnbi10b3A6OmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiAxMCU7XG59XG5cbi50b29sdGlwLmFsaWduLWJvdHRvbTo6YmVmb3JlIHtcbiAgYm90dG9tOiAxMCU7XG4gIHRvcDogYXV0bztcbn1cblxuLnRvb2x0aXAuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgbGVmdDogMTAlO1xuICByaWdodDogYXV0bztcbn1cblxuLnRvb2x0aXAuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMCU7XG59XG5cbi50b3AtYmFyIHtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuXG4udG9wLWJhcjo6YmVmb3JlLCAudG9wLWJhcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4udG9wLWJhcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnRvcC1iYXIsXG4udG9wLWJhciB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOGU1ZTU7XG59XG5cbi50b3AtYmFyIGlucHV0IHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4udG9wLWJhciAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4udG9wLWJhciBpbnB1dC5idXR0b24ge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteGxhcmdlIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnRvcC1iYXIuc3RhY2tlZC1mb3IteHhsYXJnZSAudG9wLWJhci1sZWZ0LFxuLnRvcC1iYXIuc3RhY2tlZC1mb3IteHhsYXJnZSAudG9wLWJhci1yaWdodCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udG9wLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xufVxuXG4udG9wLWJhci10aXRsZSAubWVudS1pY29uIHtcbiAgYm90dG9tOiAycHg7XG59XG5cbi50b3AtYmFyLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRvcC1iYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAwZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNob3ctZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuaGlkZS1mb3IteGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuc2hvdy1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmhpZGUtZm9yLXh4bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuc2hvdy1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgY2xpcC1wYXRoOiBub25lO1xufVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uY2xlYXJmaXg6OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG59XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbn1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLmZhZGUtaW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbi5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDtcbn1cblxuLmxpbmVhciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDtcbn1cblxuLmxvbmctZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2UtNztcbn1cblxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7XG4gIH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpO1xuICB9XG59XG5cbi5zcGluLWN3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47XG59XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG5cbi5zcGluLWNjdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuO1xufVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMXR1cm4pO1xuICB9XG59XG5cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7XG59XG5cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTtcbiAgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTtcbiAgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG5cbi5zaGFrZSxcbi5zcGluLWN3LFxuLnNwaW4tY2N3LFxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG59XG5cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5saW5lYXIge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5sb25nLWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4vKlxuQGltcG9ydCB0aGlzIGZpbGUgZGlyZWN0bHkgaW50byB5b3VyIGV4aXN0aW5nIFNjc3MgZmlsZXMgdG8gdXNlIHRoZXNlIG1peGluc1xuKi9cbi5ic2lHcmFwaGljIHtcbiAgd2lkdGg6IDE4NnB4O1xuICBoZWlnaHQ6IDkycHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0xMHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmNhbGlicmF0aW9uIHtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNTZweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTIwNnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmNhcnRpY29uIHtcbiAgd2lkdGg6IDQ5cHg7XG4gIGhlaWdodDogNDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTI3NnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmNhcnRJY29uU21hbGwge1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMzM1cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uQ2xlYXJhbmNlIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNTVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTM3OXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmNvbnJhZEZvb3RlciB7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiAxOXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtNDI5cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uZWR1Y2F0aW9uTG9nbyB7XG4gIHdpZHRoOiAxMjlweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtNjM5cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uZWR1Y2F0aW9uTG9nb1NtYWxsIHtcbiAgd2lkdGg6IDExNnB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC03NzhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5lZHVjYXRpb25Mb2dvU21hbGwge1xuICB3aWR0aDogMTE2cHg7XG4gIGhlaWdodDogNDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTc3OHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmZhY2Vib29rSWNvbiB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC05MDRweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5pY29uX2V1ZmxhZyB7XG4gIHdpZHRoOiAxMDhweDtcbiAgaGVpZ2h0OiA2M3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtOTUwcHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uaWNvbl9tb2R1bGVfM0RfcGRmbHJnIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDdweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTEwNjhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5pY29uX21vZHVsZV90ZF9wZGZzbSB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0xMTE4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uaWNvbl9tb2R1bGVfVGVjaG5pY2FsLVNwZWNpZmljYXRpb25fcGRmbHJnIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDdweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTExNDJweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5pY29uX3VrZmxhZyB7XG4gIHdpZHRoOiAxMDhweDtcbiAgaGVpZ2h0OiA2M3B4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMTE5MnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLmljb25fdXNmbGFnIHtcbiAgd2lkdGg6IDEwOHB4O1xuICBoZWlnaHQ6IDYzcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0xMzEwcHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4uaW5zdGFncmFtSWNvbiB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0xNDI4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4ubGlua2VkaW5JY29uIHtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTE0NzRweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5OZXcge1xuICB3aWR0aDogNTVweDtcbiAgaGVpZ2h0OiA1NXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMTUyMHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLnBheW1lbnRJY29ucyB7XG4gIHdpZHRoOiAyNTlweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMTU4NXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLnBheXBhbGxvZ28ge1xuICB3aWR0aDogMTQ1cHg7XG4gIGhlaWdodDogNDJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTE4NTRweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5yYXBpZGFjY291bnQge1xuICB3aWR0aDogMTM2cHg7XG4gIGhlaWdodDogMzJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTIwMDlweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5yYXBpZExvZ28ge1xuICB3aWR0aDogMTQ3cHg7XG4gIGhlaWdodDogMzhweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTIxNTVweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi5yYXBpZExvZ29TbWFsbCB7XG4gIHdpZHRoOiAxMTZweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMjMxMnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLlNwZWNpYWxPZmZlciB7XG4gIHdpZHRoOiA1NXB4O1xuICBoZWlnaHQ6IDUzcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yNDM4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG4udHdpdHRlckljb24ge1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMjUwM3B4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuLnVuaUxvZ28ge1xuICB3aWR0aDogMTI5cHg7XG4gIGhlaWdodDogNDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTI1NDlweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi51bmlMb2dvU21hbGwge1xuICB3aWR0aDogMTE2cHg7XG4gIGhlaWdodDogNDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTI2ODhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5cbi55b3V0dWJlSWNvbiB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yODE0cHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5maXhlZFdpZHRoIHtcbiAgICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgfVxufVxuXG4uYnV0dG9uLmFjY2VudCwgLmJ1dHRvbi5saWdodC1ncmF5IHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi8qZHVwbGljYXRlcyBvZiBQREYgaWNvbiovXG4vKi5pY29uX21vZHVsZV9NYW51YWxfcGRmbHJnLCAuaWNvbl9tb2R1bGVfUkVBQ0gtQ2VydGlmaWNhdGVfcGRmbHJnLCAuaWNvbl9tb2R1bGVfSGVhbHRoLWFuZC1TYWZldHlfcGRmbHJnLCAuaWNvbl9tb2R1bGVfRG9jdW1lbnQtT2YtQ29uZm9ybWl0eV9wZGZscmcge1xuXHRAaW5jbHVkZSBzcHJpdGUoJGljb24tbW9kdWxlLXRlY2huaWNhbC1zcGVjaWZpY2F0aW9uLXBkZmxyZyk7ICBcbn0qL1xuLmljb25fcm9oc2V4ZW1wdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogZ3JlZW47XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgYm9yZGVyLXJhZGl1czogM2VtO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNlbTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzZW07XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAxLjNlbTtcbiAgbWluLWhlaWdodDogMS4zZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5yZWFjaGFsZXJ0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjMDAwMDgwO1xuICBjb2xvcjogeWVsbG93O1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgYm9yZGVyLXJhZGl1czogM2VtO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNlbTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzZW07XG4gIG1hcmdpbi1sZWZ0OiAzcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAxLjJlbTtcbiAgbWluLWhlaWdodDogMS4yZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZGlzYWJsZWRCdXR0b24ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBiYWNrZ3JvdW5kOiBncmV5ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiBkYXJrZ3JleSAhaW1wb3J0YW50O1xufVxuXG4ubm8tamF2YXNjcmlwdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGZpcmVicmljaztcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJveC1zaGFkb3c6IDFweCAwIDNweCAjMDAwO1xufVxuXG4ubm8tamF2YXNjcmlwdCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKkdyZXkgT3ZlcmxheSovXG4uYXBwX2dyZXlPdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDA0O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2hvd092ZXJsYXkge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5MiwgMTkyLCAxOTIsIDAuNik7XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHotaW5kZXg6IDk5OTk5O1xufVxuXG4vKkZvciBvdmVyIDE4Ki9cbi5zdGFjay1vdXRlciB7XG4gIGNvbG9yOiByZWQ7XG59XG5cbi5mYS1wbHVzMTgge1xuICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDgwJTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5mYS1wbHVzMTg6YmVmb3JlIHtcbiAgY29udGVudDogXCIxOCtcIjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ucmV2ZWFsIHtcbiAgYm94LXNoYWRvdzogMCA1cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5yZXZlYWw6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmV2ZWFsIHtcbiAgICB3aWR0aDogNjYwcHg7XG4gICAgbWF4LXdpZHRoOiA5Mi44NTcxNHJlbTtcbiAgfVxufVxuXG4ucG9wdXBUaXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuXG4uc2lkZVBsYXllciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZGVQbGF5ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xuICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEwMDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgYm90dG9tOiAxMHB4O1xuICAgIHotaW5kZXg6IDE1MDA7XG4gIH1cbiAgLnNpZGVQbGF5ZXIgLmNvbnRyb2xCYXIgLmJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwIDAgMC4yNXJlbSAwO1xuICB9XG4gIC5zaWRlUGxheWVyIC52aWRlb1RpdGxlQmFyIHtcbiAgICBwYWRkaW5nOiAwLjM1NzE0cmVtIDAuMzU3MTRyZW0gMCAwLjM1NzE0cmVtO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTAsIDEwLCAxMCwgMC45Nik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5zaWRlUGxheWVyIC52aWRlb1RpdGxlQmFyIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFyZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB9XG4gIC5zaWRlUGxheWVyIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICBib3JkZXI6IDAuMzU3MTRyZW0gc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjk2KTtcbiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTkpO1xuICB9XG4gIC5zaWRlUGxheWVyLmV4cGFuZGVkIHtcbiAgICB0b3A6IDUwJTtcbiAgICBib3R0b206IGF1dG87XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiA2NDBweDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHotaW5kZXg6IDEwMDEwO1xuICB9XG4gIC5zaWRlUGxheWVyLmV4cGFuZGVkIGgzIHtcbiAgICBsaW5lLWhlaWdodDogMS4zcmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaWRlUGxheWVyIHtcbiAgICB3aWR0aDogMTgwcHg7XG4gIH1cbiAgLnNpZGVQbGF5ZXIgLnZpZGVvVGl0bGVCYXIgaDMge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIC5zaWRlUGxheWVyIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICBib3JkZXI6IDAuMzU3MTRyZW0gc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjk2KTtcbiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTkpO1xuICB9XG59XG5cbi5FcnJvckRpc3BsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMnB4O1xuICB6LWluZGV4OiA5OTk5OTk5O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgcGFkZGluZzogM3B4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xufVxuXG4uRXJyb3JEaXNwbGF5IC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjOGRjNThkO1xufVxuXG4uRXJyb3JEaXNwbGF5IC5jYWxsb3V0LmFsZXJ0IHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgI2UyMWUxZTtcbn1cblxuLkVycm9yRGlzcGxheSAuY2FsbG91dC5zZWNvbmRhcnkge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjNzY3Njc2O1xufVxuXG4uZ3JlZW4tdGV4dCB7XG4gIGNvbG9yOiAjMDA4MDAwO1xufVxuXG4uYmx1ZS10ZXh0IHtcbiAgY29sb3I6ICMxMDNjY2E7XG59XG5cbi5iaWctcmVkLXRleHQge1xuICBjb2xvcjogUmVkO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5vcmFuZ2UtdGV4dCwgLm9yYW5nZVRleHQge1xuICBjb2xvcjogI2ZmYTUwMDtcbn1cblxuLnJlZC10ZXh0LCAucmVkVGV4dCB7XG4gIGNvbG9yOiAjYjIyMjIyICFpbXBvcnRhbnQ7XG59XG5cbi5ncmF5LXRleHQge1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuLmdyZXktdGV4dCB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4ucGFzdGVsLWJsdWUtdGV4dCB7XG4gIGNvbG9yOiAjOTJhY2ZmO1xufVxuXG4ucGFzdGVsLWdyZWVuLXRleHQge1xuICBjb2xvcjogIzhkZjk4MTtcbn1cblxuLnBhc3RlbC1yZWQtdGV4dCB7XG4gIGNvbG9yOiAjZmY3YjdiO1xufVxuXG4ucGFzdGVsLW9yYW5nZS10ZXh0IHtcbiAgY29sb3I6ICNmZmNkNzI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICB1bC5icmVhZGNydW1icyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gICAgcGFkZGluZzogMC4yMTQyOXJlbTtcbiAgfVxuICB1bC5icmVhZGNydW1icyBsaSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwYWRkaW5nOiAwLjIxNDI5cmVtO1xuICAgIGZvbnQtc2l6ZTogMS4wNzE0M3JlbTtcbiAgfVxuICB1bC5icmVhZGNydW1icyBsaS5icmVhZGNydW1iU3RhZ2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIH1cbiAgdWwuYnJlYWRjcnVtYnMgbGkuYnJlYWRjcnVtYlN0YWdlLmJyZWFkY3J1bWJFeHBhbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIHVsLmJyZWFkY3J1bWJzIGxpLmxhc3RCcmVhZGNydW1iIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41NzE0M3JlbTtcbiAgfVxuICAuYnJlYWRjcnVtYkV4cGFuZExpbmsge1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlOGU1ZTU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgLmJyZWFkY3J1bWJFeHBhbmRMaW5rIGkge1xuICAgIGNvbG9yOiAjNzk3OTZBO1xuICB9XG59XG5cbi8qQGluY2x1ZGUgc3ByaXRlcygkc3ByaXRlc2hlZXQtc3ByaXRlcyk7Ki9cbi5icmVhZGNydW1iQ29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogMC43MTQyOXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC43MTQyOXJlbTtcbn1cblxuLmJyZWFkY3J1bWJDb250YWluZXIgYSB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5icmVhZGNydW1iQ29udGFpbmVyIGE6aG92ZXIge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5tb2JpbGVNZW51IC52ZXJ0aWNhbC5tZW51IHtcbiAgICAvKmxpOmxhc3QtY2hpbGQgYSB7XG4gICAgICAgICAgICBib3JkZXI6MHB4O1xuICAgICAgICB9Ki9cbiAgfVxuICAubW9iaWxlTWVudSAudmVydGljYWwubWVudSBhIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkZGRkO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIC5tb2JpbGVNZW51IGgzIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcbiAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgfVxufVxuXG4ubW9iaWxlTWVudSAudmVydGljYWwubWVudSBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5tb2JpbGVNZW51IC52ZXJ0aWNhbC5tZW51IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBibGFjaztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1vYmlsZU1lbnUgLnZlcnRpY2FsLm1lbnUgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1vYmlsZU1lbnUgLmNvbHVtbi1ibG9jayB7XG4gICAgbWluLWhlaWdodDogNy4xNDI4NnJlbTtcbiAgfVxufVxuXG4vKkdyYXkgU2VjdGlvbiBIZWFkZXIqL1xuaDIuc2VjdGlvbkhlYWRlciwgaDEuc2VjdGlvbkhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIHBhZGRpbmc6IDAuNDI4NTdyZW07XG59XG5cbmgyLnNlY3Rpb25IZWFkZXJQdXJjaGFzZVRpcCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGRhcmtvcmFuZ2U7XG4gIHBhZGRpbmc6IDAuNDI4NTdyZW07XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuM2VtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB2ZXJ0aWNhbC1hbGlnbjogY2VudHJhbDtcbn1cblxuLnNtYWxsUHJvZEltYWdlIHtcbiAgd2lkdGg6IDUuMzU3MTRyZW07XG4gIGhlaWdodDogNS4zNTcxNHJlbTtcbiAgcGFkZGluZzogMC4zNTcxNHJlbTtcbn1cblxuLnByaWNlcy1zdHJpa2V0aHJvdWdoIHtcbiAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi5zbWFsbExhYmVsIHtcbiAgY29sb3I6ICM3OTc5NkE7XG4gIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbn1cblxuLypJbmMgVkFUIENoZWNrYm94Ki9cbi5jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5jaGVja2JveCAuY3VzdG9tLWNoZWNrYm94IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW46IDAgM3B4IDAgMDtcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE1ODNjYztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2hlY2tib3ggLmN1c3RvbS1jaGVja2JveCB7XG4gIGJhY2tncm91bmQ6ICMxNTgzY2M7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDEycHggI2ZmZjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmNoZWNrYm94IC5pY29uLWNoZWNrIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMTgwbXMgZWFzZTtcbn1cblxuLmljb24tY2hlY2s6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnXFwyNzEzJztcbiAgd2lkdGg6IDEycHg7XG4gIGZvbnQtc2l6ZTogMTIuNjY2NjdweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAuY3VzdG9tLWNoZWNrYm94IHtcbiAgYm9yZGVyLWNvbG9yOiAjMjA5NUYwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAuY3VzdG9tLWNoZWNrYm94IC5pY29uLWNoZWNrIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLmNoZWNrYm94IC5hY2NlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRjlBNTE5O1xufVxuXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAuYWNjZW50IHtcbiAgYmFja2dyb3VuZDogI0Y5QTUxOTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Y5QTUxOTtcbn1cblxuLypzZWFyY2ggZmllbGQgYnV0dG9uIGdyb3VwIGlucHV0Ki9cbmlucHV0LnNlYXJjaElucHV0LCBpbnB1dC5zZWFyY2hJbnB1dDpmb2N1cyB7XG4gIGJvcmRlcjogMHB4O1xufVxuXG4vKnNjcm9sbCB0YWJsZSBsYXJnZSBicmVha3BvaW50IGZpeCovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGFibGUtc2Nyb2xsIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5sYWJlbC5maWVsZEhlYWRpbmcsIGxhYmVsLnNtYWxsTGFiZWwge1xuICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gIGNvbG9yOiAjNzk3OTZBO1xufVxuXG5sYWJlbC5maWVsZEhlYWRpbmcuaW5saW5lLCBsYWJlbC5zbWFsbExhYmVsLmlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxubGFiZWwuZmllbGRIZWFkaW5nLmFsdCwgbGFiZWwuc21hbGxMYWJlbC5hbHQge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmJ1dHRvbi5pbmxpbmUge1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwLjM1NzE0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzU3MTRyZW07XG59XG5cbi5idXR0b24ge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLm1haW5JbWdDb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5tYWluSW1nQ29udGFpbmVyIHtcbiAgICB3aWR0aDogNjUlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi5tYWluSW1nQ29udGFpbmVyIC5iYWRnZU92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDVweDtcbiAgdG9wOiA1cHg7XG4gIHotaW5kZXg6IDU7XG59XG5cbi5tYWluSW1nQ29udGFpbmVyIC5NYWdpYzM2MC1jb250YWluZXIge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLWl0ZW0gaW1nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnN0YXJPdXRlciB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICBwYWRkaW5nOiAwLjM1cmVtIDA7XG59XG5cbi5zdGFyT3V0ZXIgYSB7XG4gIGNvbG9yOiAjNzk3OTZBO1xufVxuXG4uc3Rhck91dGVyIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAjNzk3OTZBO1xufVxuXG4uc3Rhck91dGVyIGEucmV2aWV3U3RhcnMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5zdGFyT3V0ZXIgLmZhLXN0YXIge1xuICBjb2xvcjogI2ZiZDkyMztcbn1cblxuLnByaWNlUGVySXRlbSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLmxhcmdlUHJpY2VUYWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IC4yNXJlbTtcbiAgbWFyZ2luLXRvcDogMC40NXJlbTtcbn1cblxuLmdldFF1b3RlTGluayB7XG4gIGNvbG9yOiBibGFjaztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMC42cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjZyZW07XG59XG5cbi5nZXRRdW90ZUxpbmsgaDIge1xuICBmb250LXNpemU6IDEuMTJlbTtcbn1cblxuLnNrdVByb21vQXBwbGllZExhYmVsIHtcbiAgZm9udC1zaXplOiAuODU3MTRyZW07XG4gIGNvbG9yOiAjNzk3OTZBO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wcmljZVBhbmVsIHtcbiAgcGFkZGluZzogMHB4IDdweCA1cHggN3B4O1xuICBiYWNrZ3JvdW5kOiAjZjdmNmY2O1xuICBib3JkZXI6IDNweCBzb2xpZCAjZThlNWU1O1xufVxuXG4ucHJpY2VQYW5lbCAuaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWFyZ2luLWJvdHRvbTogMC40cmVtO1xufVxuXG4ucHJpY2VQYW5lbCAjb3B0aW9ucy12YXQge1xuICBwYWRkaW5nOiAuNWVtIDAgMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5zbWFsbFByaWNlVGFibGUgLnByaWNlVGFibGUgdGFibGUgdGgsIC5zbWFsbFByaWNlVGFibGUgLnByaWNlVGFibGUgdGFibGUgdGQge1xuICBwYWRkaW5nOiAuNDI4NTdyZW0gLjI3MTQzcmVtIC41NzE0M3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc21hbGxQcmljZVRhYmxlIC5wcmljZVRhYmxlIHRhYmxlIHRkLCAuc21hbGxQcmljZVRhYmxlIC5wcmljZVRhYmxlIHRhYmxlIHRoIHtcbiAgZm9udC1zaXplOiAwLjkyODU3cmVtO1xuICBsaW5lLWhlaWdodDogMS4xcmVtO1xufVxuXG4uc21hbGxQcmljZVRhYmxlIC5pbnB1dC1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzU3MTRyZW07XG59XG5cbi5wcm9kdWN0VmFyaWF0aW9uIHtcbiAgLypib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5OyovXG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLypiYWNrZ3JvdW5kOiRsaWdodC1ncmF5OyovXG4gIGJhY2tncm91bmQ6ICNmN2Y2ZjY7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5wcm9kdWN0VmFyaWF0aW9uIHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDAuMjE0MjlyZW07XG59XG5cbi5wcm9kdWN0VmFyaWF0aW9uIHAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgbWFyZ2luLXRvcDogMHB4O1xufVxuXG4ucHJvZHVjdFZhcmlhdGlvbiBzcGFuIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnByb2R1Y3RWYXJpYXRpb24gc3Bhbi5zZWxlY3RlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiNTdlN2U7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnByb2R1Y3RWYXJpYXRpb24gc3Bhbi5zZWxlY3RlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4ucHJvZHVjdFZhcmlhdGlvbiBzcGFuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2VlZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I1N2U3ZTtcbn1cblxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyB1bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyB1bCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItYm90dG9tOiAwLjVweCBkb3R0ZWQgbGlnaHRncmV5O1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4uYXBwX0F0dHJpYnV0ZVZhcmlhdGlvblByb2R1Y3RzIHVsIGxpOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogNXB4O1xuICBtYXJnaW46IDVweDtcbiAgYm9yZGVyOiAycHggc29saWQgbGlnaHRncmV5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cblxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyBzcGFuLnNlbGVjdGVkIHtcbiAgYm9yZGVyOiAycHggc29saWQgaW5kaWFucmVkO1xufVxuXG4uYXBwX0F0dHJpYnV0ZVZhcmlhdGlvblByb2R1Y3RzIHNwYW4uZGlzYWJsZWQge1xuICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gIGNvbG9yOiBsaWdodGdyYXk7XG59XG5cbi5wcm9kdWN0V2lkZ2V0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZThlNWU1O1xuICBtYXJnaW46IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLnByb2R1Y3RXaWRnZXQgbGkge1xuICBwYWRkaW5nOiA1cHggNXB4IDAgNXB4O1xuICBjbGVhcjogYm90aDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wcm9kdWN0V2lkZ2V0IGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ucHJvZHVjdFdpZGdldCBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLnByb2R1Y3RXaWRnZXQgbGkgcCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNDI4NTdyZW07XG59XG5cbi53aWRnZXRIZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwLjU3MTQzcmVtIDAuMzU3MTRyZW0gMC42NDI4NnJlbSAwLjM1NzE0cmVtICFpbXBvcnRhbnQ7XG59XG5cbi53aWRnZXRQcm9kdWN0TGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNDUlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi53aWRnZXRQcm9kdWN0TGVmdCBpbWcge1xuICB3aWR0aDogNjAlO1xufVxuXG4ud2lkZ2V0UHJvZHVjdFJpZ2h0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MyU7XG59XG5cbi5wcm9kdWN0LXRpbGUtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNTBweCwgMWZyKSk7XG4gIGdyaWQtZ2FwOiAxMHB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgxMCwgMTAsIDEwLCAwLjIpO1xufVxuXG4ucHJvZHVjdC10aWxlIHtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbiAgcGFkZGluZzogLjVlbTtcbn1cblxuLnByb2R1Y3QtdGlsZS0tZGV0YWlscyBoMyB7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucHJvZHVjdC10aWxlLS1jb250cm9scyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnByb2R1Y3QtdGlsZS0tY29udHJvbHMgYnV0dG9uIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucHJvZHVjdC10aWxlLS1jb250cm9scyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnByb2R1Y3QtdGlsZS0tY29udHJvbHMgbGFiZWwgaW5wdXQge1xuICBtYXJnaW46IDA7XG59XG5cbi5wcm9kdWN0SXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIG1hcmdpbi1ib3R0b206IDAuMzU3MTRyZW07XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnByb2R1Y3RJdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnByb2R1Y3RJdGVtIGgzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5vdGhlckNvbnRyb2xzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAzcHg7XG4gIGJvdHRvbTogNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ub3RoZXJDb250cm9scyBsYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xufVxuXG4ub3RoZXJDb250cm9scyBzcGFuLCAub3RoZXJDb250cm9scyBsYWJlbCwgLm90aGVyQ29udHJvbHMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnF1aWNrVmlld0xpbmsge1xuICBmb250LXNpemU6IDEycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIHBhZGRpbmc6IDhweCA1cHg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5xdWlja1ZpZXdMaW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0Y5QTUxOTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5zbWFsbEltZ0NvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNtYWxsSW1nQ29udGFpbmVyIGltZyB7XG4gIG1heC13aWR0aDogMTQwcHg7XG59XG5cbi5zbWFsbEJhZGdlT3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDVweDtcbiAgYm90dG9tOiA1cHg7XG59XG5cbi5zbWFsbFN0b2NrTWVzc2FnZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc21hbGxTdG9ja01lc3NhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07XG4gIH1cbn1cblxuLnF1aWNrVmlld1BvcHVwQ29udGVudCB7XG4gIG1heC1oZWlnaHQ6IDc1MHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uYXR0cmlidXRlRmlsdGVycyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgbWFyZ2luOiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHotaW5kZXg6IDEwMDA2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4uYXR0cmlidXRlRmlsdGVycyBsaSB7XG4gIHBhZGRpbmc6IDVweCA1cHggMCA1cHg7XG4gIGNsZWFyOiBib3RoO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmF0dHJpYnV0ZUZpbHRlcnMgbGkge1xuICAgIHBhZGRpbmc6IDEwcHggNXB4IDAgMTBweDtcbiAgfVxufVxuXG4uYXR0cmlidXRlRmlsdGVycyBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLmF0dHJpYnV0ZUZpbHRlcnMgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogYmxhY2s7XG4gIHdpZHRoOiA5NSU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiA1cHggMCA1cHggMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5hdHRyaWJ1dGVGaWx0ZXJzIGxpIC5hdHRyaWJ1dGVOYW1lIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmF0dHJpYnV0ZUZpbHRlcnMgbGkgLmF0dHJpYnV0ZU5hbWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hdHRyaWJ1dGVGaWx0ZXJzIGxpIC5hdHRyaWJ1dGVMaXN0SG9sZGVyIHtcbiAgICB3aWR0aDogMjByZW07XG4gICAgdG9wOiAtNTAlO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm94LXNoYWRvdzogMnB4IDNweCAyMnB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjU4KTtcbiAgICB6LWluZGV4OiAyMDAwMDAwMDAwO1xuICAgIHBhZGRpbmc6IDAuNzE0MjlyZW07XG4gIH1cbn1cblxuLmF0dHJpYnV0ZUZpbHRlcnMgbGkgLmF0dHJpYnV0ZUxpc3RIb2xkZXIgaSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hdHRyaWJ1dGVGaWx0ZXJzIGxpIC5hdHRyaWJ1dGVMaXN0SG9sZGVyIGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDdweDtcbiAgICByaWdodDogN3B4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5hdHRyaWJ1dGVGaWx0ZXJzIGxpIC5hdHRyaWJ1dGVMaXN0SG9sZGVyIGk6aG92ZXIge1xuICBjb2xvcjogZmlyZWJyaWNrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5hdHRyaWJ1dGVGaWx0ZXJzIGxpIC5hdHRyaWJ1dGVMaXN0SG9sZGVyIC5hdHRyaWJ1dGVMaXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5hdHRyaWJ1dGVGaWx0ZXJzIGxpIC5hdHRyaWJ1dGVMaXN0SG9sZGVyIC5hdHRyaWJ1dGVMaXN0IHtcbiAgICBtYXgtaGVpZ2h0OiAyOC41NzE0M3JlbTtcbiAgfVxufVxuXG5saS5zZWFyY2hfYXR0cmlidXRlc19yZWR1bmRhbnRfc2VjdGlvbiBhIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgY29sb3I6ICNlOGU1ZTU7XG59XG5cbi5zZWFyY2hmaWx0ZXJUb3Age1xuICBwYWRkaW5nOiAwIDAgMC41NzE0M3JlbSAwO1xufVxuXG4uc2VhcmNoZmlsdGVyVG9wIHNwYW4ge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNlYXJjaGZpbHRlclRvcCBkaXYge1xuICB3aWR0aDogNDMlO1xuICBtYXJnaW46IDIlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zZWFyY2hmaWx0ZXJUb3Agc2VsZWN0IHtcbiAgd2lkdGg6IDg2JTtcbiAgbWFyZ2luOiAyJTtcbiAgcGFkZGluZzogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uc2VhcmNoZmlsdGVyTWlkZGxlIHtcbiAgcGFkZGluZzogOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoZmlsdGVyTWlkZGxlIHtcbiAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgfVxufVxuXG4uc2VhcmNoZmlsdGVyRm9vdGVyIHNwYW4ge1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbi5zZWFyY2hmaWx0ZXJGb290ZXIgYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5hdHRyaWJ1dGVGaWx0ZXJzSGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMC41NzE0M3JlbSAwLjM1NzE0cmVtIDAuNjQyODZyZW0gMC4zNTcxNHJlbSAhaW1wb3J0YW50O1xufVxuXG4uYXBwbGllZEZpbHRlcnMge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmZpbHRlclNlY3Rpb24ge1xuICBwYWRkaW5nOiA1cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5maWx0ZXJTZWN0aW9uSGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAycHg7XG59XG5cbi5maWx0ZXJTZWN0aW9uVGl0bGUge1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDNweDtcbn1cblxuLnJlbW92ZUZpbHRlclNlY3Rpb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMzM3YWI3O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTVweDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDNweDtcbn1cblxuLnNlYXJjaF9hdHRyaWJ1dGVzX3NlbGVjdGVkX3NlY3Rpb24gYSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5zZWFyY2hUYWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlBNTE5O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRjlBNTE5O1xuICBtYXgtd2lkdGg6IDE3NnB4O1xuICBtYXJnaW46IDRweDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zZWFyY2hUYWc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDk1MzRGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDQzZjNhO1xufVxuXG4uc2VhcmNoVGFnIHNwYW4ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG59XG5cbi5zZWFyY2hUYWcgLnJlbW92ZVRhZyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG59XG5cbi5hdHRyaWJ1dGVGaWx0ZXJzIC5jaGVja2JveCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjU3MTQzcmVtIDA7XG59XG5cbi8qUmFuZ2UgU2xpZGVyKi9cbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiA2Ljg1cHggMDtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0LjNweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEzLCAxMywgMTMsIDApO1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlcjogMC4ycHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgxMDMsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEyOSwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMThweDtcbiAgd2lkdGg6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYmFja2dyb3VuZDogI2Y5YTUxOTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC03LjA1cHg7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOmZvY3VzOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNC4zcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMywgMTMsIDEzLCAwKTtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3JkZXI6IDAuMnB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgxMDMsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEyOSwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMThweDtcbiAgd2lkdGg6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYmFja2dyb3VuZDogI2Y5YTUxOTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1zLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNC4zcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi1tcy1maWxsLWxvd2VyIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbiAgYm9yZGVyOiAwLjJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCksIDBweCAwcHggMHB4IHJnYmEoMTMsIDEzLCAxMywgMCk7XG59XG5cbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotbXMtZmlsbC11cHBlciB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIGJvcmRlcjogMC4ycHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEzLCAxMywgMTMsIDApO1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgxMDMsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEyOSwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XG4gIGhlaWdodDogMThweDtcbiAgd2lkdGg6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYmFja2dyb3VuZDogI2Y5YTUxOTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDQuM3B4O1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjpmb2N1czo6LW1zLWZpbGwtbG93ZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjpmb2N1czo6LW1zLWZpbGwtdXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG4ucGFnaW5hdGlvbkJhciB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gIG1hcmdpbi1ib3R0b206IDEuMDcxNDNyZW07XG59XG5cbi5wYWdpbmF0aW9uQmFyIGlucHV0LCAucGFnaW5hdGlvbkJhciBzZWxlY3Qge1xuICBtYXJnaW46IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucGFnaW5hdGlvbkJhciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5zZWFyY2hSZXN1bHRzQ291bnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNTcxNDNyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvdW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLlByb2R1Y3RzUGFnaW5hdGlvbiB7XG4gIG1hcmdpbi10b3A6IDAuOTI4NTdyZW07XG4gIG1hcmdpbi1yaWdodDogMC40Mjg1N3JlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLlByb2R1Y3RzUGFnaW5hdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzE0MjlyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLlByb2R1Y3RzUGFnaW5hdGlvbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5Qcm9kdWN0c1BhZ2luYXRpb24gYSB7XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW0gMC42NDI4NnJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMjg1NzFyZW07XG4gIGNvbG9yOiAjNGY0ZjRmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZDogI2Q2ZDNkMztcbn1cblxuLlByb2R1Y3RzUGFnaW5hdGlvbiBhLmN1cnJlbnRQYWdlIHtcbiAgYmFja2dyb3VuZDogIzMxMzEzMTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5Qcm9kdWN0c1BhZ2luYXRpb24gYS5wYWdpbmcge1xuICBiYWNrZ3JvdW5kOiAjYWJhNmE2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLlByb2R1Y3RzUGFnaW5hdGlvbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzMxMzEzMTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi50aWVyV3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDAuNzE0MjlyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzE0MjlyZW07XG59XG5cbi50aWVySW1hZ2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50aWVySW1hZ2UgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4udGllckltYWdlIGEgLnRpZXJJbWFnZVRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gIG1hcmdpbi10b3A6IDAuMzU3MTRyZW07XG4gIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbn1cblxuLnRpZXJJbWFnZSBhIGkge1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgZm9udC1zaXplOiAwLjc4NTcxcmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnRpZXJJbWFnZS5zZWFyY2hUaWVyU3RydWN0dXJlVGllckl0ZW0sIC50aWVySW1hZ2UucG9wdWxhckNhdGVnb3J5SXRlbSB7XG4gICAgcGFkZGluZzogMC43MTQyOXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAudGllckltYWdlLnNlYXJjaFRpZXJTdHJ1Y3R1cmVUaWVySXRlbSBpbWcsIC50aWVySW1hZ2UucG9wdWxhckNhdGVnb3J5SXRlbSBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnRpZXJJbWFnZS5zZWFyY2hUaWVyU3RydWN0dXJlVGllckl0ZW0gLnRpZXJJbWFnZVRleHQsIC50aWVySW1hZ2UucG9wdWxhckNhdGVnb3J5SXRlbSAudGllckltYWdlVGV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc2VhcmNoVGllclN0cnVjdHVyZVRpZXJJdGVtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLnNlYXJjaFRpZXJCbG9ja0xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tdG9wOiAuNXJlbTtcbiAgLypAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygtMTApO1xuICAgIH0qL1xuICBtYXJnaW4tbGVmdDogMC41NzE0M3JlbTtcbn1cblxuLnNlYXJjaFRpZXJCbG9ja0xpc3QgbGkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc2VhcmNoVGllckJsb2NrTGlzdCBsaSB7XG4gICAgcGFkZGluZzogMC43MTQyOXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICB9XG59XG5cbi5zZWFyY2hUaWVyQmxvY2tMaXN0IGxpOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5zZWFyY2hCcmVhZGNydW1iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IC4ycmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG5hLnNlYXJjaEJyZWFkY3J1bWIge1xuICB3aGl0ZS1zcGFjZTogaW5pdGlhbCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuI3N1Z2dlc3RlZEJyZWFkY3J1bWIge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5hY2NvcmRpb25BIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IC40cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbn1cblxuLnBhbmVsQSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY29sdW1uLmNvbHVtbi1ibG9jaywgLmNvbHVtbi1ibG9jay5jb2x1bW5zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYWNjb3JkaW9uQSBzcGFuOmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICBmb250LXdlaWdodDogOTAwO1xuICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY29sb3I6ICNhYWE7XG59XG5cbi5hY3RpdmUgc3BhbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA2XCI7XG59XG5cbi50b2dnbGVDYXRlZ29yeSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pbWFnZXNUYWJsZVdyYXBwZXIge1xuICAgIHdpZHRoOiAzNi42NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmltYWdlc1RhYmxlV3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmF0dHJpYnV0ZXNUYWJsZVdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuYXR0cmlidXRlc1RhYmxlV3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXR0cmlidXRlc1RhYmxlV3JhcHBlciB7XG4gICAgd2lkdGg6IDYzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuYXR0cmlidXRlc1RhYmxlV3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmNvbXBhcmVRdWlja1ZpZXcgbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IDNweDtcbn1cblxuLmNvbXBhcmVRdWlja1ZpZXcgc3BhbiwgLmNvbXBhcmVRdWlja1ZpZXcgbGFiZWwsIC5jb21wYXJlUXVpY2tWaWV3IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zZWFyY2hUYWJsZUJyYW5kTG9nbyB7XG4gIG1heC13aWR0aDogNjVweDtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuYXR0cmlidXRlc1RhYmxlSGVhZGVyIHtcbiAgICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gIH1cbn1cblxuLnNlYXJjaFJlc3VsdHNSb3cgaDMge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICN0MSB7XG4gICAgbWluLXdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICN0MSAuY29tcGFyZVF1aWNrVmlldyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtNHB4O1xuICB9XG4gICN0MSAuc2VhcmNoUmVzdWx0c1Byb2R1Y3REZXRhaWxzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuI3QyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jdDIgdGJvZHkgdGQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjFmMWYxO1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItbGVmdDogbm9uZTtcbn1cblxuLmZsb2F0VGhlYWQtdGFibGUgdGhlYWQgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zZWFyY2hUYWJsZVByb2R1Y3RJbWFnZUNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJhc2tldEl0ZW1zT3V0ZXIge1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtO1xufVxuXG5sYWJlbC5iYXNrZXRIZWFkaW5nIHtcbiAgY29sb3I6ICM3OTc5NkE7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5iYXNrZXRJdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIG1hcmdpbi1ib3R0b206IDAuNzE0MjlyZW07XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW07XG59XG5cbi5iYXNrZXRJdGVtIGgzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5iYXNrZXRJdGVtIC51cGRhdGVJdGVtIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmJhc2tldEl0ZW0ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuYmFza2V0SXRlbSBsYWJlbC5taWRkbGUge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuLmJhc2tldEl0ZW0uaW52YWxpZCB7XG4gIC8qdGV4dC1hbGlnbjogY2VudGVyOyovXG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XG59XG5cbi5iYXNrZXRJdGVtIC50b3RhbFByaWNlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5iYXNrZXRJdGVtUmVtb3ZlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtUmVtb3ZlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbVJlbW92ZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmJhc2tldEl0ZW1SZW1vdmU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1SZW1vdmUge1xuICAgIHdpZHRoOiA0LjE2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1SZW1vdmUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbVJlbW92ZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1SZW1vdmU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5iYXNrZXRJdGVtSW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtSW1nIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbUltZyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmJhc2tldEl0ZW1JbWc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1JbWcge1xuICAgIHdpZHRoOiA1LjgzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1JbWcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbUltZyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1JbWc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5iYXNrZXRJdGVtRGVzYyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbURlc2Mge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5iYXNrZXRJdGVtRGVzYyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmJhc2tldEl0ZW1EZXNjOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtRGVzYyB7XG4gICAgd2lkdGg6IDMyLjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbURlc2Mge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbURlc2Mge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtRGVzYzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmJhc2tldEl0ZW1RdHkge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1RdHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5iYXNrZXRJdGVtUXR5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4uYmFza2V0SXRlbVF0eTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFza2V0SXRlbVF0eSB7XG4gICAgd2lkdGg6IDIwLjgzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1RdHkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbVF0eSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1RdHk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5iYXNrZXRJdGVtU3RhdHVzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtU3RhdHVzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFza2V0SXRlbVN0YXR1cyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmJhc2tldEl0ZW1TdGF0dXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJhc2tldEl0ZW1TdGF0dXMge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtU3RhdHVzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJhc2tldEl0ZW1TdGF0dXMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRJdGVtU3RhdHVzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uYWRkcmVzc2VzT3B0aW9uIHVsIHtcbiAgbWF4LXdpZHRoOiA4LjIxNDI5cmVtO1xufVxuXG4uYWRkcmVzc2VzT3B0aW9uIHVsIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDAuNjQyODZyZW0gMC4yODU3MXJlbTtcbn1cblxuLmFkZHJlc3Nlc09wdGlvbiB1bCBsaSAuc3ViIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U4ZTVlNTtcbn1cblxuLmFkZHJlc3Nlc09wdGlvbiB1bCBsaSAuc3ViIGEge1xuICBwYWRkaW5nOiAxNXB4IDhweCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5hZGRyZXNzZXNPcHRpb24gdWwgbGkgLnN1YiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbGlnaHRncmV5O1xufVxuXG4uYWRkcmVzc2VzT3B0aW9uIC5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGE6OmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG4uYWRkZHJlc3NCbG9jayB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC4zNTcxNHJlbSAwLjU3MTQzcmVtO1xufVxuXG4uYWRkZHJlc3NCbG9jazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmOWY5Zjk7XG59XG5cbi5ub3RpZmljYXRpb25zUGFuZWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogOTk5OTk5OTk5OTk5OTtcbiAgYm94LXNoYWRvdzogMCAzcHggNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtaW4td2lkdGg6IDI1MHB4O1xufVxuXG4ubm90aWZpY2F0aW9uc1BhbmVsLm9wZW4ge1xuICB0b3A6IDMwcHg7XG4gIGJvdHRvbTogNDBweDtcbn1cblxuLm5vdGlmaWNhdGlvbnNQYW5lbCAubm90aWZpY2F0aW9uUGFuZWxDb3VudCB7XG4gIGJhY2tncm91bmQ6ICNGOTVBNjE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm5vdGlmaWNhdGlvbnNQYW5lbCAubm90aWZpY2F0aW9uTGlzdCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNDksIDQ5LCA0OSwgMC45KTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLm5vdGlmaWNhdGlvbnNQYW5lbCAubm90aWZpY2F0aW9uTGlzdCAucm93IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZlZmVmZTtcbn1cblxuLm5vdGlmaWNhdGlvbnNQYW5lbCAubm90aWZpY2F0aW9uTGlzdCAucm93IGkge1xuICBmb250LXNpemU6IDEuNDI4NTdyZW07XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm5vdGlmaWNhdGlvbnNQYW5lbCAubm90aWZpY2F0aW9uTGlzdCAucm93IGk6aG92ZXIge1xuICBjb2xvcjogI0Y5NUE2MTtcbn1cblxuLm5vdGlmaWNhdGlvbnNQYW5lbCAubm90aWZpY2F0aW9uTGlzdCAucm93OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSg0OSwgNDksIDQ5LCAwLjkpO1xufVxuXG4ubm90aWZpY2F0aW9uc1BhbmVsIC5ub3RpZmljYXRpb25MaXN0IC5yb3c6aG92ZXIgaSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5ub3RpZmljYXRpb25zUGFuZWwgLm5vdGlmaWNhdGlvbkxpc3QgLnJvdyAuY29sdW1ucyB7XG4gIHBhZGRpbmctdG9wOiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zNTcxNHJlbTtcbn1cblxuLm9wZW5MYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEwMCU7XG4gIHdpZHRoOiA0MCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2E5YThhNDtcbiAgdHJhbnNpdGlvbjogMC40cztcbiAgcGFkZGluZzogNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vcGVuTGFiZWwgaDMge1xuICBwYWRkaW5nLXRvcDogMS4wNzE0M3JlbTtcbn1cblxuLm5vdGlmaWNhdGlvbkl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ub3RpZmljYXRpb25JdGVtOmhvdmVyIC5vcGVuTGFiZWwge1xuICB0cmFuc2l0aW9uOiAwLjRzO1xuICBsZWZ0OiAwO1xufVxuXG4ubm90aWZpY2F0aW9uSXRlbSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNTcxNHJlbTtcbn1cblxuLm5vdGlmaWNhdGlvbkl0ZW0gbGFiZWwge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5ub3RpZmljYXRpb25QYW5lbENvdW50OmhvdmVyIC5ib3VuY2VEb3duIHtcbiAgLW1vei1hbmltYXRpb246IGJvdW5jZURvd24gMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LWFuaW1hdGlvbjogYm91bmNlRG93biAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogYm91bmNlRG93biAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG59XG5cbi5ub3RpZmljYXRpb25QYW5lbENvdW50OmhvdmVyIC5ib3VuY2VVcCB7XG4gIC1tb3otYW5pbWF0aW9uOiBib3VuY2VVcCAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBib3VuY2VVcCAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbjogYm91bmNlVXAgMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xufVxuXG4ubm90aWZpY2F0aW9uUGFuZWxDb3VudCAuZmEtYW5nbGUtZG93biB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDIzcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubm90aWZpY2F0aW9uUGFuZWxDb3VudCAuZmEtYW5nbGUtdXAge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBmb250LXNpemU6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuQC1tb3ota2V5ZnJhbWVzIGJvdW5jZURvd24ge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG4gIDQwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG4gIDYwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VEb3duIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZURvd24ge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBib3VuY2VVcCB7XG4gIDAlLCAyMCUsIDUwJSwgODAlLCAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VVcCB7XG4gIDAlLCAyMCUsIDUwJSwgODAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlVXAge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gIH1cbn1cblxuLypNb3ZlIHRvIG1lc3NhZ2VzKi9cbi5ub3RpZmljYXRpb25JdGVtUm93IHtcbiAgcGFkZGluZy10b3A6IDAuNjQyODZyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjY0Mjg2cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRUNFRkYxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5ub3RpZmljYXRpb25JdGVtUm93OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSg0OSwgNDksIDQ5LCAwLjAzKTtcbn1cblxuLm5vdGlmaWNhdGlvbkl0ZW1Sb3cgaDMge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAycHggMDtcbn1cblxuLm5vdGlmaWNhdGlvbkl0ZW1Sb3cgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDJweCAwO1xufVxuXG4ubm90aWZpY2F0aW9uSXRlbVJvdyBsYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDJweCAwO1xufVxuXG4ubm90aWZpY2F0aW9uSXRlbVJvdyAudW5yZWFkTm90aWZpY2F0aW9uIHtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjRjk1QTYxO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVzc2FnZUJvZHlDb2wge1xuICAgIHBhZGRpbmctbGVmdDogMC43MTQyOXJlbTtcbiAgfVxufVxuXG4ubWVzc2FnZUJvZHlDb2wgLmNsb3NlQmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDMycHg7XG4gIGJhY2tncm91bmQ6ICNmYmZiZmI7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLm1lc3NhZ2VCb2R5Q29sIC5jbG9zZUJhciAuY2xvc2UtYnV0dG9uIHtcbiAgcmlnaHQ6IDAuNXJlbTtcbiAgdG9wOiAwLjI1cmVtO1xufVxuXG4ubm9XaWR0aCB7XG4gIHdpZHRoOiAwJTtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4ubm90VmlzaWJsZSB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnRyYW5zaXRpb24ge1xuICB0cmFuc2l0aW9uOiAwLjRzO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG5oMi51bnJlYWRDb3VudCB7XG4gIGNvbG9yOiAjRjk1QTYxO1xufVxuXG4ubW9yZUluZm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG59XG5cbi5yZWNlbnRPcmRlcnMgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5yZWNlbnRPcmRlcnMgPiAucm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIHBhZGRpbmctdG9wOiAwLjQyODU3cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC40Mjg1N3JlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucmVjZW50T3JkZXJzID4gLnJvdzpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG59XG5cbiNzbGlkZXItY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zbGlkZXItaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zbGlkZXItbmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDQwJTtcbiAgY29sb3I6ICNmZmZmZmZjYztcbiAgZm9udC1zaXplOiA1MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zaXRlVHlwZVBvcFVwIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2l0ZVR5cGVQb3BVcCBoMiB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG4gIGNvbG9yOiAjNGY0ZjRmO1xuICBwYWRkaW5nLXRvcDogNXB4O1xufVxuXG4uc2l0ZVR5cGVQb3BVcCBhLCAuc2l0ZVR5cGVQb3BVcCBwIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4uc2l0ZVR5cGVQb3BVcCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogIzA2M2M3Yztcbn1cblxuLnNpdGVUeXBlUG9wVXAgdWwge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uY29va2llTWVzc2FnZSBwIHtcbiAgY29sb3I6ICMzYTM2MzY7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLnBvcC1ib3gtaG9sZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDIycHg7XG4gIHRvcDogMjJweDtcbiAgei1pbmRleDogOTk5OTk5OTk5O1xuICBwYWRkaW5nOiAxNXB4O1xuICB3aWR0aDogMjcwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLnBvcC1ib3gtaG9sZCBoMiB7XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxNXB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG59XG5cbi5wb3AtYm94LWhvbGQgc3BhbiwgLnBvcC1ib3gtaG9sZCBhLCAucG9wLWJveC1ob2xkIHAge1xuICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbn1cblxuLmNhcnQtZGV0YWlsIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jYXJ0LWRldGFpbCBhIHtcbiAgbWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAzcHggIWltcG9ydGFudDtcbn1cblxuLnBvcC1ib3gtaG9sZCAuYnV0dG9uLmdyZWVuLCAucG9wLWJveC1ob2xkIC5idXR0b24uZ3JlZW46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMkY5RjQ2O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLmNhcnQtcHJpY2Uge1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbi5yZWQtdGV4dCwgLnJlZFRleHQge1xuICBjb2xvcjogI2IyMjIyMiAhaW1wb3J0YW50O1xufVxuXG4uY3VycmVuY3lGbGFncyB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jdXJyZW5jeUZsYWdzIGJ1dHRvbiB7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY29va2llLXBvbGljeS13cmFwIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDA5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29va2llLXBvbGljeSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgei1pbmRleDogOTk5OTk7XG4gIHdpZHRoOiA5MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLmNvb2tpZS1wb2xpY3kgW2NsYXNzXj1cImNvb2tpZS1wb2xpY3ktXCJdIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4uY29va2llLXBvbGljeSBbY2xhc3NePVwiY29va2llLXBvbGljeS1cIl06Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29va2llLXBvbGljeSB7XG4gICAgbWF4LXdpZHRoOiA5MjBweDtcbiAgfVxufVxuXG4uY29va2llLXBvbGljeSAuY29va2llLXBvbGljeS0tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4uY29va2llLXBvbGljeSAuY29va2llLXBvbGljeS0tdGV4dCBhIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMxMzBjMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uY29va2llLXBvbGljeSAuY29va2llLXBvbGljeS0tYnRucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb29raWUtcG9saWN5IC5jb29raWUtcG9saWN5LS1idG5zIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5jb29raWUtcG9saWN5IC5jb29raWUtcG9saWN5LS1idG5zIC5idXR0b24ge1xuICBtYXJnaW46IC41ZW0gLjVlbSAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29va2llLXBvbGljeSAuY29va2llLXBvbGljeS0tYnRucyAuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbjogMWVtIDFlbTtcbiAgfVxufVxuXG4uY29va2llLXBvbGljeSAuY29va2llLXBvbGljeS0tYnRucyAuYnV0dG9uLW91dGxpbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6IGJsYWNrO1xuICBib3JkZXItY29sb3I6ICNkM2QzZDM7XG59XG5cbi8qVmVydGljYWwgTWVudSBUcmlnZ2VyKi9cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG5hLnZlcnRpY2FsTWVudS10cmlnZ2VyIHtcbiAgcGFkZGluZy1yaWdodDogMi41NzE0M3JlbTtcbn1cblxuYS52ZXJ0aWNhbE1lbnUtdHJpZ2dlciwgYS52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjpmb2N1cywgYS52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjpob3ZlciB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXI6OmJlZm9yZSxcbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgaGVpZ2h0OiAycHg7XG4gIHdpZHRoOiA5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4zcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCAwLjNzLCAtbW96LXRyYW5zZm9ybSAwLjNzO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzLCB0cmFuc2Zvcm0gMC4zcztcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyOjpiZWZvcmUge1xuICByaWdodDogMjJweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAtby10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyOjphZnRlciB7XG4gIHJpZ2h0OiAxN3B4O1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC1vLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlci5kcm9wZG93bi1pcy1hY3RpdmU6OmJlZm9yZSxcbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlci5kcm9wZG93bi1pcy1hY3RpdmU6OmFmdGVyIHtcbiAgd2lkdGg6IDE0cHg7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlci5kcm9wZG93bi1pcy1hY3RpdmU6OmJlZm9yZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGUoLTQ1ZGVnKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXIuZHJvcGRvd24taXMtYWN0aXZlOjphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW8tdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXIuZHJvcGRvd24taXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI0Y5QTUxOTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgMzZweCAwIDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHotaW5kZXg6IDIwMDAwO1xufVxuXG4uZGlzcGxheUJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLlRpZXJNZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLlRpZXJNZW51LmRyb3Bkb3duLWlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiA5OTk5OTk5O1xufVxuXG4udG9wLWJhcixcbi50b3AtYmFyIHVsIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnRvcC1iYXIge1xuICBwYWRkaW5nOiAuMDVyZW07XG59XG5cbi50aXRsZS1iYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHBhZGRpbmc6IDAuMXJlbSAwLjZyZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi50aXRsZS1iYXIgLm1lbnUtaWNvbiB7XG4gIGJvdHRvbTogLTAuMzU3MTRyZW07XG59XG5cbi5tYWluTmF2IC5pcy1kcmlsbGRvd24ge1xuICBtYXgtd2lkdGg6IDEyMDBweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tdG9wOiAwLjcxNDI5cmVtO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2hvdy1kcmlsbGRvd24gLmlzLWRyaWxsZG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ubWFpbk5hdiAuZHJpbGxkb3duIGEge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzc5Nzk2QTtcbn1cblxuLlRpZXJNZW51IGxpLnRpZXJIZWFkZXIge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTtcbn1cblxuLm1haW5OYXYgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZWZlZmU7XG59XG5cbi5tYWluTmF2IC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgYmFja2dyb3VuZDogIzMxMzEzMTtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5UaWVyTWVudS13cmFwcGVyLmV4cGFuZGVkIC5tZW51IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuVGllck1lbnUtd3JhcHBlciAuZHJpbGxkb3duIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIC5oaWRlLW9uLWNhdC1vcGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1haW5OYXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWFpbk5hdiAudG9wLWJhci1sZWZ0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkZGRkO1xuICB9XG4gIC5UaWVyTWVudS13cmFwcGVyLmV4cGFuZGVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogIzMxMzEzMTtcbiAgfVxuICAuaGVhZGVyV3JhcHBlciAuVGllck1lbnUgbGFiZWwge1xuICAgIHBhZGRpbmc6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgfVxuICAudGllckhlYWRlciB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLnRpZXJUaHJlZU1hcmdpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjc4NTcxcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLlRpZXJNZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLm5lYXJCb3R0b20gPiB1bCB7XG4gICAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5yZWxhdGl2ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5UaWVyTWVudS5kcm9wZG93bi1pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICB9XG4gIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51Lm5lc3RlZCB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIH1cbiAgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUgYSB7XG4gICAgY29sb3I6ICMwYTBhMGEgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLm5vLWpzIC50b3AtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uby1qcyAudGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qVGllciBNZW51IENvbnRlbnQqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGl0bGUtYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5tYWluTmF2IC5pcy1kcmlsbGRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmhpZGUtb24tY2F0LW9wZW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuVGllck1lbnUge1xuICAgIG1pbi13aWR0aDogMzIwcHg7XG4gIH1cbiAgLlRpZXJNZW51IGxpLnRpZXJIZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1N3JlbTtcbiAgICBwYWRkaW5nOiAwLjM1NzE0cmVtIDAuNzE0MjlyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuICB9XG4gIC5UaWVyTWVudSA+IGxpIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ViZWJlYjtcbiAgfVxuICAuVGllck1lbnUgPiBsaSA+IGEge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3cmVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjM1NzE0cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMzU3MTRyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gIH1cbiAgLlRpZXJNZW51LmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICM3OTc5NkE7XG4gIH1cbiAgLlRpZXJNZW51LmRyb3Bkb3duLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAzcHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhO1xuICAgIHBhZGRpbmctbGVmdDogMC44cmVtO1xuICB9XG4gIC5UaWVyTWVudS5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgd2lkdGg6IDUxNXB4O1xuICAgIHBhZGRpbmc6IDVweDtcbiAgfVxuICAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgZGl2IGEge1xuICAgIHdoaXRlLXNwYWNlOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAwLjg1NzE0cmVtO1xuICB9XG4gIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51Lm5lc3RlZCBkaXYgYS50aWVyVGhyZWVNYXJnaW4ge1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxuICAudGllck9uZUhlYWRlciB7XG4gICAgY29sb3I6ICMwYTBhMGEgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuaGVhZGVyV3JhcHBlciAuVGllck1lbnUgbGFiZWwge1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICB9XG4gIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51Lm5lc3RlZCBkaXYgYS50aWVySGVhZGVyLCAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgZGl2IGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40Mjg1N3JlbTtcbiAgfVxuICAudGllckRvY0NvdW50IHtcbiAgICBjb2xvcjogIzc5Nzk2QTtcbiAgICBmb250LXNpemU6IDAuNjQyODZyZW07XG4gIH1cbiAgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUubmVzdGVkIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgZGl2IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjQ1cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgY29sb3I6ICMzMzM7XG4gIH1cbn1cblxuLmZvb3RlckNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG59XG5cbi5mb290ZXJCb3R0b20ge1xuICBtYXgtd2lkdGg6IDkyLjg1NzE0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mb290ZXJCb3R0b206OmJlZm9yZSwgLmZvb3RlckJvdHRvbTo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4uZm9vdGVyQm90dG9tOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyQm90dG9tIC5mb290ZXItY29sIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5mb290ZXJDb250YWluZXIgYSwgLmZvb3RlckNvbnRhaW5lciBwLCAuZm9vdGVyQ29udGFpbmVyIGxpLCAuZm9vdGVyQ29udGFpbmVyIGxhYmVsIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmZvb3RlckNvbnRhaW5lciBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogI2ZlZmVmZTtcbn1cblxuLmNvbnJhZEZvb3RlciB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4udGVybXNQcml2YWN5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjM1NzE0cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50ZXJtc1ByaXZhY3kge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50ZXJtc1ByaXZhY3kge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi50ZXJtc1ByaXZhY3k6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmVnaXN0ZXJOZXdzbGV0dGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVnaXN0ZXJOZXdzbGV0dGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4ucmVnaXN0ZXJOZXdzbGV0dGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5yZWdpc3Rlck5ld3NsZXR0ZXIgYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5mb290ZXJCb3R0b20gLmNlcnRpZmljYXRlLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJCb3R0b20gLmNlcnRpZmljYXRlLXdyYXAge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5ic2lHcmFwaGljIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jb3B5cmlnaHRDb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvcHlyaWdodENvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb3B5cmlnaHRDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4uY29weXJpZ2h0Q29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYnNpQ29udGVudCB7XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ic2lDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnNpQ29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmJzaUNvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmJzaUNvbnRlbnQgaW1nIHtcbiAgbWF4LWhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuXG4ucGF5bWVudExvZ29Db250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucGF5bWVudExvZ29Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGF5bWVudExvZ29Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4ucGF5bWVudExvZ29Db250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5zb2NpYWxJY29uQ29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNvY2lhbEljb25Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc29jaWFsSWNvbkNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi5zb2NpYWxJY29uQ29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udHJ1c3RQaWxvdENvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRydXN0UGlsb3RDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudHJ1c3RQaWxvdENvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi50cnVzdFBpbG90Q29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udHJ1c3RQaWxvdENvbnRlbnQgLnRydXN0cGlsb3Qtd2lkZ2V0IGlmcmFtZSB7XG4gIG1heC1oZWlnaHQ6IDEzMHB4O1xuICB3aWR0aDogODAlO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24sIC5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogIzMxMzEzMTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICB0b3A6IDQ1JTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGUge1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbn1cblxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLWNvbnRlbnQgdWwge1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tY29udGVudCB1bCBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtaW5kZW50OiB1bnNldDtcbiAgbGluZS1oZWlnaHQ6IDEuNTcxNDNyZW07XG59XG5cbi5mb290ZXJDb250YWluZXIgLnNvY2lhbEljb25Db250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5zb2NpYWxJY29uQ29udGFpbmVyIGEge1xuICBtYXJnaW46IDAuNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZm9vdGVyQWNjb3JkaW9uID4gbGkgPiBhLmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgbWFyZ2luLXRvcDogMC43MTQyOXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjA3MTQzcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gICNmb290ZXJBY2NvcmRpb24gPiBsaSA+IGFbZGlzYWJsZWRdIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgbWFyZ2luLXRvcDogMC43MTQyOXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjA3MTQzcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciB1bC5hY2NvcmRpb24ge1xuICAgIG1heC13aWR0aDogOTIuODU3MTRyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciB1bC5hY2NvcmRpb246OmJlZm9yZSwgLmZvb3RlckNvbnRhaW5lciB1bC5hY2NvcmRpb246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciB1bC5hY2NvcmRpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAjZm9vdGVyQWNjb3JkaW9uIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTQsIDI1NCwgMjU0LCAwKTtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgfVxuICAuZm9vdGVyQ29udGFpbmVyIGxpLmFjY29yZGlvbi1pdGVtIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXJDb250YWluZXIgbGkuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJDb250YWluZXIgbGkuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3RlckNvbnRhaW5lciBsaS5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciBsaS5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAuZm9vdGVyQ29udGFpbmVyID4gdWwgPiBsaSA+IGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgPiB1bCA+IGxpID4gYTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciBsaSA+IGEuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbiAgLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDApO1xuICB9XG4gIC5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTQsIDI1NCwgMjU0LCAwKTtcbiAgfVxuICAuZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgY29udGVudDogJyc7XG4gIH1cbiAgLnJlZ2lzdGVyTmV3c2xldHRlciB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmVnaXN0ZXJOZXdzbGV0dGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVnaXN0ZXJOZXdzbGV0dGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZWdpc3Rlck5ld3NsZXR0ZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC50ZXJtc1ByaXZhY3kge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRlcm1zUHJpdmFjeSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRlcm1zUHJpdmFjeSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGVybXNQcml2YWN5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAuY29weXJpZ2h0Q29udGVudCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29weXJpZ2h0Q29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvcHlyaWdodENvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvcHlyaWdodENvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5wYXltZW50TG9nb0NvbnRlbnQge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgbWFyZ2luLXRvcDogMC44NTcxNHJlbTtcbiAgICAvKi5wYXltZW50SWNvbnMge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIH0qL1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYXltZW50TG9nb0NvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYXltZW50TG9nb0NvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBheW1lbnRMb2dvQ29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnBheW1lbnRMb2dvQ29udGVudCBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAxLjYyNXJlbTtcbiAgfVxuICAuYnNpQ29udGVudCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDZyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmJzaUNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ic2lDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ic2lDb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudHJ1c3RQaWxvdENvbnRlbnQge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRydXN0UGlsb3RDb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudHJ1c3RQaWxvdENvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRydXN0UGlsb3RDb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAuc29jaWFsSWNvbkNvbnRlbnQge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNvY2lhbEljb25Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc29jaWFsSWNvbkNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNvY2lhbEljb25Db250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAuc29jaWFsSWNvbkNvbnRlbnQgLnNvY2lhbEljb25Db250YWluZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi8qQ2FydCBJY29uKi9cbi5zaG9wcGluZ0NhcnRJY29uIHtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMzJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmdcIikgLTMzNXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3BwaW5nQ2FydEljb24ge1xuICAgIHdpZHRoOiA0OXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yNzZweCAtMTBweCBuby1yZXBlYXQ7XG4gIH1cbn1cblxuLnNob3BwaW5nQ2FydEljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1yaWdodDogMS4wNzE0M3JlbTtcbn1cblxuLnNob3BwaW5nQ2FydEljb24gLmJhZGdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC04cHg7XG4gIHJpZ2h0OiAtOHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMC43ODU3MXJlbTtcbiAgbWluLXdpZHRoOiAyLjJlbTtcbn1cblxuLypFbmQgQ2FydCBJY29uKi9cbi8qSGVhZGVyIExheW91dCovXG4udG9wSGVhZGVyQ29udGVudCwgLm1haW5IZWFkZXJDb250ZW50IHtcbiAgbWF4LXdpZHRoOiA5Mi44NTcxNHJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWF4LXdpZHRoOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi50b3BIZWFkZXJDb250ZW50OjpiZWZvcmUsIC50b3BIZWFkZXJDb250ZW50OjphZnRlciwgLm1haW5IZWFkZXJDb250ZW50OjpiZWZvcmUsIC5tYWluSGVhZGVyQ29udGVudDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xufVxuXG4udG9wSGVhZGVyQ29udGVudDo6YWZ0ZXIsIC5tYWluSGVhZGVyQ29udGVudDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQsIC50b3BIZWFkZXJDb250ZW50IGEsIC50b3BIZWFkZXJDb250ZW50IGlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luOiAwcHg7XG59XG5cbi5tYWluSGVhZGVyQ29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAxLjI4NTcxcmVtO1xufVxuXG4ubWFpbkhlYWRlckNvbnRlbnQsIC5tYWluSGVhZGVyQ29udGVudCBhIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ubWFpbk5hdiwgLm1haW5OYXYgYSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLmNoYW5nZVNpdGUge1xuICB3aWR0aDogMzMuMzMzMzMlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAuY2hhbmdlU2l0ZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLmNoYW5nZVNpdGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC50b3BCYXNrZXRPcHRpb25zIHtcbiAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC50b3BCYXNrZXRPcHRpb25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4udG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyAuYWNjZXNzLXdyYXAge1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyAuYWNjZXNzLXdyYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG4udG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyAuYWNjZXNzLXdyYXAgLmFjY2Vzcy10b2dnbGUgaSB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG59XG5cbi50b3BIZWFkZXJDb250ZW50IC50b3BCYXNrZXRPcHRpb25zIC5hY2Nlc3Mtd3JhcCAuYWNjZXNzLXBvcHVwIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDI0MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gIHotaW5kZXg6IDE7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCA0cHggNHB4O1xuICB0b3A6IDI4cHg7XG4gIHJpZ2h0OiA1MCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyAuYWNjZXNzLXdyYXAgLmFjY2Vzcy1wb3B1cCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMgLmFjY2Vzcy13cmFwIC5hY2Nlc3MtcG9wdXAge1xuICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyAxZW0pO1xuICAgIHRvcDogMDtcbiAgfVxufVxuXG4udG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyAuYWNjZXNzLXdyYXAgLmFjY2Vzcy1wb3B1cCBsYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyAuYWNjZXNzLXdyYXAgLmFjY2Vzcy1wb3B1cCBsYWJlbCAuY3VzdG9tLWNoZWNrYm94IHtcbiAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xufVxuXG4udG9wSGVhZGVyQ29udGVudCAudGhjX1NlY3Rpb246bGFzdC1jaGlsZCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udG9wSGVhZGVyQ29udGVudCAudGhjX1NlY3Rpb24gc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRoY19TZWN0aW9uIHNwYW4gPiBzcGFuIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRoY19TZWN0aW9uLnJpZ2h0IHNwYW4ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5oZWFkZXJCYXNrZXRDb250ZW50IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaGVhZGVyTG9naW5Db250ZW50IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMC43MTQyOXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oZWFkZXJMb2dpbkNvbnRlbnQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4ubG9nb1NlY3Rpb24ge1xuICB3aWR0aDogNDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9nb1NlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLmxvZ29TZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5sb2dpblNlY3Rpb24ge1xuICB3aWR0aDogNjAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9naW5TZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubG9naW5TZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4ubG9naW5TZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIG1hcmdpbi10b3A6IDEuNDI4NTdyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG4uc2VhcmNoQmFyU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc2VhcmNoQmFyU2VjdGlvbi50ZW1wRml4IHtcbiAgei1pbmRleDogYXV0byAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tYWluSGVhZGVyQ29udGVudCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuMjg1NzFyZW07XG4gIH1cbiAgLnRvcEhlYWRlckNvbnRlbnQgLmNoYW5nZVNpdGUge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLmNoYW5nZVNpdGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudG9wSGVhZGVyQ29udGVudCAuY29udGFjdFRvcCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLmNvbnRhY3RUb3Age1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC5jb250YWN0VG9wIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b3BIZWFkZXJDb250ZW50IC5jb250YWN0VG9wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9nb1NlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubG9nb1NlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlO1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoQmFyU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaEJhclNlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5zZWFyY2hCYXJTZWN0aW9uLnRlbXBGaXgge1xuICAgIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAubG9naW5TZWN0aW9uIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubG9naW5TZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxvZ29TZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sb2dvU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgIHdpZHRoOiA1OC43NSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yOC43NSU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAubG9naW5TZWN0aW9uIHtcbiAgICB3aWR0aDogMjguNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4Ljc1JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9naW5TZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubG9naW5TZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sb2dpblNlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmxvZ29TZWN0aW9uIHtcbiAgICB3aWR0aDogMTUuNTU1NTYlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2dvU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxvZ29TZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5sb2dvU2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgIHdpZHRoOiA2MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yOC4zMzMzMyU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaEJhclNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zZWFyY2hCYXJTZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAubG9naW5TZWN0aW9uIHtcbiAgICB3aWR0aDogMjQuNDQ0NDQlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxvZ2luU2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAubG9naW5TZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uaGVhZGVyV3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhlYWRlcldyYXBwZXIsIC5oZWFkZXJXcmFwcGVyIGEsIC5oZWFkZXJXcmFwcGVyIGxhYmVsIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi50b3BIZWFkZXJDb250ZW50IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzMTMxMzE7XG59XG5cbi8qRU5EIEhlYWRlciBMYXlvdXQqL1xuLypTaXRlVHlwZSBUYWJzKi9cbi5zaXRlU2VsZWN0VGFicyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCAjMDAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4ICMwMDA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxMHB4ICMwMDA7XG59XG5cbi5zaXRlU2VsZWN0VGFicyBzcGFuLmFjdGl2ZVNUIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y5QTUxOTtcbn1cblxuLnNpdGVTZWxlY3RUYWJzIHNwYW4uYWN0aXZlU1QgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNpdGVTZWxlY3RUYWJzIHNwYW4ge1xuICBwYWRkaW5nOiAwIDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNpdGVTZWxlY3RUYWJzIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIH1cbiAgLnNpdGVTZWxlY3RUYWJzIHNwYW46bGFzdC1jaGlsZCBzcGFuIHtcbiAgICBwYWRkaW5nOiAwcHg7XG4gIH1cbn1cblxuLypFTkQgU2l0ZVR5cGUgVGFicyovXG4uYmFza2V0SGVhZGVyVG90YWwge1xuICBsaW5lLWhlaWdodDogMi44NTcxNHJlbTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi8qTXkgQWNjb3VudC9Mb2dpbiBNZW51Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICBhLm15QWNjb3VudExpbmsge1xuICAgIHBhZGRpbmctbGVmdDogMC4yODU3MXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG5cbmEubXlBY2NvdW50TGluazpob3ZlciwgLm15QWNjb3VudExpbmsgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHdoaXRlO1xufVxuXG5hLm15QWNjb3VudExpbmssIC5teUFjY291bnRMaW5rIGEsIC5kcm9wZG93bi5tZW51IGEubXlBY2NvdW50TGluayB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMi44NTcxNHJlbTtcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICBwYWRkaW5nOiAwIDAuNDVyZW07XG59XG5cbi5kcm9wZG93bi5tZW51Lm15QWNjb3VudE1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG4ubWVudS5teUFjY291bnRNZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5kcm9wZG93bi5tZW51Lm15QWNjb3VudE1lbnUgPiBsaSAubWVudSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIHotaW5kZXg6IDk5OTk5O1xufVxuXG4uZHJvcGRvd24ubWVudS5teUFjY291bnRNZW51ID4gbGkgLm1lbnUgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uZHJvcGRvd24ubWVudS5teUFjY291bnRNZW51ID4gbGkgLm1lbnUgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOUE1MTk7XG59XG5cbi8qRU5EIE15IEFjY291bnQvTG9naW4gTWVudSovXG4ubWFpbk5hdiB7XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIHotaW5kZXg6IDEwMDA4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qQ2hhdCBMaW5rKi9cbnNwYW4uY2hhdExpbmssIHNwYW4uY2hhdExpbmsgc3BhbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuI3NpdGUtZG9tYWluLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyRjlGNDY7XG59XG5cbiNzaXRlLWRvbWFpbi1oZWFkZXIgLnN0aWNreSB7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA5OTk5OTk5OTtcbn1cblxuI3NpdGUtZG9tYWluLWhlYWRlciAuc3RpY2t5IC5zaXRlLWRvbWFpbiB7XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkY5RjQ2O1xuICBwYWRkaW5nOiA1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgLjFzIGVhc2UtaW4tb3V0O1xufVxuXG4jc2l0ZS1kb21haW4taGVhZGVyIC5zdGlja3kgLnNpdGUtZG9tYWluLnN0aWNrIHtcbiAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NpdGUtZG9tYWluLWhlYWRlciAuc3RpY2t5IC5zaXRlLWRvbWFpbiB7XG4gICAgd2lkdGg6IDMzLjMzJTtcbiAgfVxufVxuXG4jc2l0ZS1kb21haW4taGVhZGVyIC5zdGlja3kgaDIge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMDtcbn1cblxuI3NpdGUtZG9tYWluLWhlYWRlciAuc3RpY2t5IGgyIGEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ubGl2ZS1jaGF0LXdyYXAge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMS41ZW07XG4gIHJpZ2h0OiAxLjVlbTtcbiAgei1pbmRleDogMTtcbiAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IC4ycztcbn1cblxuLmxpdmUtY2hhdC13cmFwOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xufVxuXG4ubGl2ZS1jaGF0LXdyYXAgLmxpdmUtY2hhdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMi41ZW07XG59XG5cbi5saXZlLWNoYXQtd3JhcCAubGl2ZS1jaGF0IC5idWJibGUtdGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5saXZlLWNoYXQtd3JhcCAubGl2ZS1jaGF0IHtcbiAgICBhbmltYXRpb246IHdvYmJsZS1ob3ItYm90dG9tIDhzIGJvdGggMjtcbiAgICBhbmltYXRpb24tZGVsYXk6IDhzO1xuICB9XG4gIC5saXZlLWNoYXQtd3JhcCAubGl2ZS1jaGF0IC5idWJibGUtdGV4dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ODgwNjtcbiAgICBib3JkZXItcmFkaXVzOiAyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTBlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGFuaW1hdGlvbjogZmxpcC1pbi12ZXItcmlnaHQgMC41cyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCkgYm90aDtcbiAgICBhbmltYXRpb24tZGVsYXk6IDJzO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB9XG4gIC5saXZlLWNoYXQtd3JhcCAubGl2ZS1jaGF0IC5idWJibGUtdGV4dDphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ODgwNjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogLTJyZW07XG4gICAgd2lkdGg6IDRyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cblxuLmxpdmUtY2hhdC13cmFwIC5saXZlLWNoYXQgLmJ1YmJsZSB7XG4gIGJhY2tncm91bmQ6ICNGOUE1MTk7XG4gIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgaGVpZ2h0OiA0ZW07XG4gIHdpZHRoOiA0ZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxZW07XG4gIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgYW5pbWF0aW9uOiBoZWFydGJlYXQgNHMgZWFzZS1pbi1vdXQgaW5maW5pdGUgYm90aDtcbiAgYW5pbWF0aW9uLWRlbGF5OiAycztcbn1cblxuLmxpdmUtY2hhdC13cmFwIC5saXZlLWNoYXQgLmJ1YmJsZSBpIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuQGtleWZyYW1lcyB3b2JibGUtaG9yLWJvdHRvbSB7XG4gIDAlLCAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgfVxuICAzJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNXB4KSByb3RhdGUoLTNkZWcpO1xuICB9XG4gIDYlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoN3B4KSByb3RhdGUoM2RlZyk7XG4gIH1cbiAgOSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtN3B4KSByb3RhdGUoLTEuOGRlZyk7XG4gIH1cbiAgMTIlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KSByb3RhdGUoMS4yZGVnKTtcbiAgfVxuICAxNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGUoLTAuNmRlZyk7XG4gIH1cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgcm90YXRlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSByb3RhdGUoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGlwLWluLXZlci1yaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTgwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgaGVhcnRiZWF0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG4gIDYlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDkpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbiAgMTIlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG4gIDE4JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEzKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG4gIDI0JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbiNzdWdnZXN0TGF5ZXIge1xuICBoZWlnaHQ6IDFweDtcbiAgei1pbmRleDogOTk5OTk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICNzdWdnZXN0TGF5ZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzdWdnZXN0TGF5ZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbiNzdWdnZXN0TGF5ZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxudWwuc3VnZ2VzdExheWVyQmxvY2tUZXh0IHtcbiAgbWFyZ2luOiAwLjcxNDI5cmVtO1xufVxuXG51bC5zdWdnZXN0TGF5ZXJCbG9jaywgZGl2LnN1Z2dlc3RMYXllckJsb2NrIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbnVsLnN1Z2dlc3RMYXllckJsb2NrIGxpLCB1bC5zdWdnZXN0TGF5ZXJCbG9ja1RleHQgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxubGkuc3VnZ2VzdEhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcbiAgcGFkZGluZzogM3B4IDEwcHggM3B4IDVweDtcbn1cblxuc3Bhbi5zdWdnZXN0VGV4dFF1ZXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW07XG4gIG1hcmdpbjogMC4yMTQyOXJlbTtcbn1cblxubGkuc3VnZ2VzdFJvdyA6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkZGRkO1xufVxuXG4uaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZDogI0U4RTVFNTtcbn1cblxuLnJfTXlBY2NvdW50X015QWNjb3VudF9TZWN0aW9uIHtcbiAgaGVpZ2h0OiAxNTBweDtcbn1cblxuLnJfTXlBY2NvdW50X015QWNjb3VudF9TZWN0aW9uIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFjY291bnQtaW5mby1ib3gge1xuICBib3JkZXI6IGRvdHRlZCAycHggI2QwY2RjZDtcbiAgcGFkZGluZzogNXB4IDE1cHggNXB4IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogSW5mb0JhY2tncm91bmQ7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLmZsZXgtYWNjb3VudC1ib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjZDBjZGNkO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYwZjA7XG4gIGNvbG9yOiAjNDk0ODQ4ICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDkwcHg7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4uZmxleC1hY2NvdW50LWJveDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZmxleC1hY2NvdW50LWJveC1jaGlsZCB7XG4gIGZsZXg6IDY7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbn1cblxuLmZsZXgtYWNjb3VudC1ib3gtZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiA5MCU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLmZsZXgtYWNjb3VudC1ib3gtZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmZsZXgtYWNjb3VudC1ib3gtaW5mbGlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBib3JkZXI6IHNvbGlkIDFweCAjZDBjZGNkO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiYWVmZDg7XG4gIGNvbG9yOiAjNDk0ODQ4ICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWFjY291bnQtYm94LWluZmxpZ2h0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxMzEzMTtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXI6IHNvbGlkIDFweCAjZDBjZGNkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgZ3JpZC1nYXA6IDEwcHg7XG59XG5cbi5mYS1zdGFja1tkYXRhLWNvdW50XTphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDI1JTtcbiAgdG9wOiA1JTtcbiAgY29udGVudDogYXR0cihkYXRhLWNvdW50KTtcbiAgZm9udC1zaXplOiAzNSU7XG4gIHBhZGRpbmc6IC45OWVtO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgbGluZS1oZWlnaHQ6IC45OWVtO1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6IHJlZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtaW4td2lkdGg6IDNlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmgxLm1haW5IZWFkaW5nIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNzE0MjlyZW07XG59XG5cbnRhYmxlLmV4cGFuZFRhYmxlIHRib2R5IHRyLmRldGFpbFJvdzpudGgtY2hpbGQoNG4tMSkge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xufVxuXG4uYWRtaW5UYWJsZUxpbmsge1xuICBjb2xvcjogIzExNTNBRDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogIzExNTNBRDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZXhwYW5kZWRSb3cge1xuICBib3JkZXItYm90dG9tOiAwO1xuICAvKmJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5OyovXG59XG5cbi5oaWRkZW5UYWJsZUNvbnRlbnQge1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLXRvcDogMC43MTQyOXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UzZTNlMztcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi5ncmFwaC13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxMCAvIDE2ICogMTAwJSk7XG59XG5cbi5ncmFwaC13cmFwIC5ncmFwaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG5Aa2V5ZnJhbWVzIGNoYXJ0anMtcmVuZGVyLWFuaW1hdGlvbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IC45OTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uY2hhcnRqcy1yZW5kZXItbW9uaXRvciB7XG4gIGFuaW1hdGlvbjogY2hhcnRqcy1yZW5kZXItYW5pbWF0aW9uIDFtcztcbn1cblxuLmNoYXJ0anMtc2l6ZS1tb25pdG9yLCAuY2hhcnRqcy1zaXplLW1vbml0b3ItZXhwYW5kLCAuY2hhcnRqcy1zaXplLW1vbml0b3Itc2hyaW5rIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXJlY3Rpb246IGx0cjtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmNoYXJ0anMtc2l6ZS1tb25pdG9yLWV4cGFuZCA+IGRpdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMDAwMDBweDtcbiAgaGVpZ2h0OiAxMDAwMDAwcHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLmNoYXJ0anMtc2l6ZS1tb25pdG9yLXNocmluayA+IGRpdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDIwMCU7XG4gIGhlaWdodDogMjAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuXG4ub3JkZXJTdW1tYXJ5VGFibGUge1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLm9yZGVyU3VtbWFyeVRhYmxlIHRyIHtcbiAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlclN1bW1hcnlUYWJsZSB0ZCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbn1cblxuLm9yZGVyU3VtbWFyeVRhYmxlIHRyID4gdGQ6bnRoLW9mLXR5cGUoMikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xuICB3aWR0aDogOC45Mjg1N3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ub3JkZXJTdW1tYXJ5VGFibGUgdHIgPiB0ZDpudGgtb2YtdHlwZSgxKSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IDcuODU3MTRyZW07XG59XG5cbi50b3RhbFByaWNlQ29sIHtcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC50b3RhbFByaWNlQ29sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxudGZvb3QgLnRvdGFsUHJpY2VDb2wge1xuICBmb250LXNpemU6IDEuMjg1NzFyZW07XG59XG5cbi5wcm9tby1hY2NvcmRpb24td3JhcCB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuW2NsYXNzfD1cInByb21vLWFjY29yZGlvbi1pdGVtXCJdIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNTtcbiAgY29sb3I6ICMzMTMxMzE7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMXMgZWFzZS1pbi1vdXQ7XG59XG5cbltjbGFzc3w9XCJwcm9tby1hY2NvcmRpb24taXRlbVwiXS5vcGVuLCBbY2xhc3N8PVwicHJvbW8tYWNjb3JkaW9uLWl0ZW1cIl06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFkZGRkO1xufVxuXG5bY2xhc3N8PVwicHJvbW8tYWNjb3JkaW9uLWl0ZW1cIl06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuW2NsYXNzfD1cInByb21vLWFjY29yZGlvbi1pdGVtXCJdLm9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzhcIjtcbn1cblxuW2NsYXNzfD1cInByb21vLWFjY29yZGlvbi1pdGVtXCJdLmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoNDksIDQ5LCA0OSwgMC40KTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuW2NsYXNzfD1cInByb21vLWFjY29yZGlvbi1pdGVtXCJdLmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZTVlNSAhaW1wb3J0YW50O1xufVxuXG5bY2xhc3N8PVwicHJvbW8tY29udGVudFwiXSB7XG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IC41cyBlYXNlLWluLW91dDtcbn1cblxuW2NsYXNzfD1cInByb21vLWNvbnRlbnRcIl0uY2xvc2VkIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuW2NsYXNzfD1cInByb21vLWNvbnRlbnRcIl0gLnByb21vLW9wdGlvbnMge1xuICBwYWRkaW5nOiAxZW07XG59XG5cbi5idXR0b24tZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYnV0dG9uLWdyb3VwLnNhdmUgLmJ1dHRvbiB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uYnV0dG9uLWdyb3VwIC5wcm9tby1pbmZvX3BlcnNpc3RlbnQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nOiA2cHggMTBweDtcbn1cblxuLmJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4uYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmJ1dHRvbi1ncm91cC1sZWZ0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmJ1dHRvbi1ncm91cC1sZWZ0IC5idXR0b24ge1xuICBtYXJnaW46IDAgMTBweCAwIDA7XG59XG5cbi5idXR0b24tZ3JvdXAtbGVmdCAubmIge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5idXR0b24tZ3JvdXAtbGVmdCAubmIgLnByb21vLWluZm9fcGVyc2lzdGVudCB7XG4gIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG4ucHJvbW8taW5mbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnByb21vLWluZm8uaG92ZXIgLnByb21vLWluZm9fYm94LCAucHJvbW8taW5mby5mb2N1cyAucHJvbW8taW5mb19ib3gge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ucHJvbW8taW5mbyAucHJvbW8taW5mb19ib3gge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkY5RjQ2O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IC4zcyBhbGw7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgei1pbmRleDogMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ucHJvbW8taW5mbyAucHJvbW8taW5mb19ib3g6aG92ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5wcm9tby1pbmZvX3BlcnNpc3RlbnQge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NzU3NTc7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IC45cmVtO1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3gtc2hhZG93OiAwcHggMXB4IDVweCAwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5wcm9tby1pbmZvX3BlcnNpc3RlbnQuZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG59XG5cbi5zd2l0Y2gtdG9nZ2xlIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGhlaWdodDogMzRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNjBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc3dpdGNoLXRvZ2dsZSAuc3dpdGNoLmRpc2FibGVkIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaC5kaXNhYmxlZCAuc2xpZGVyLXRvZ2dsZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFkZGRkO1xufVxuXG4uc3dpdGNoLXRvZ2dsZSAuc3dpdGNoIGlucHV0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaCBpbnB1dDpjaGVja2VkICsgLnNsaWRlci10b2dnbGU6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xufVxuXG4uc3dpdGNoLXRvZ2dsZSAuc3dpdGNoIGlucHV0OmNoZWNrZWQgKyAuc2xpZGVyLXRvZ2dsZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiJVwiO1xuICBsZWZ0OiBjYWxjKDI2cHggLyAyKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI2cHgpO1xufVxuXG4uc3dpdGNoLXRvZ2dsZSAuc3dpdGNoIC5zbGlkZXItdG9nZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZGRkZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IC40cztcbn1cblxuLnN3aXRjaC10b2dnbGUgLnN3aXRjaCAuc2xpZGVyLXRvZ2dsZS5yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IDM0cHg7XG59XG5cbi5zd2l0Y2gtdG9nZ2xlIC5zd2l0Y2ggLnNsaWRlci10b2dnbGUucm91bmQ6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uc3dpdGNoLXRvZ2dsZSAuc3dpdGNoIC5zbGlkZXItdG9nZ2xlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvdHRvbTogNHB4O1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDI2cHg7XG4gIGxlZnQ6IDRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2l0aW9uOiAuNHM7XG4gIHdpZHRoOiAyNnB4O1xufVxuXG4uc3dpdGNoLXRvZ2dsZSAuc3dpdGNoIC5zbGlkZXItdG9nZ2xlOmFmdGVyIHtcbiAgY29udGVudDogXCLCo1wiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoMjJweCAvIDIpO1xuICB0b3A6IDVweDtcbiAgdHJhbnNpdGlvbjogLjRzO1xufVxuXG4uc2t1VG9wIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJvZEtleURldGFpbHMge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW0gMDtcbn1cblxuLnByb2RLZXlEZXRhaWxzIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLnByb2RCcmFuZExvZ28ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1yaWdodDogNDAlO1xufVxuXG4ub3JkZXJDb2RlIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5vcmRlckNvZGUgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm9yZGVyQ29kZSBoMiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ub3JkZXJDb2RlIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLm9yZGVyQ29kZSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogIzBhMGEwYTtcbn1cblxuLmNvbXBsaWFuY2VMaXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IDAuMzU3MTRyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uY29tcGxpYW5jZUxpc3QgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC4zNTcxNHJlbSAwO1xufVxuXG4uY29tcGxpYW5jZUxpc3QgbGkgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG5oMS5wcm9kVGl0bGUge1xuICBtYXJnaW4tdG9wOiAwLjY1cmVtO1xufVxuXG4ucmVwb3J0RXJyb3JMaW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBjb2xvcjogYmxhY2s7XG4gIG1hcmdpbi10b3A6IC0xMnB4O1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnJlcG9ydEVycm9yTGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mjg1N3JlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4ucmVwb3J0RXJyb3JMaW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogYmxhY2s7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uc3RvY2tNZXNzYWdlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDI4NTdyZW07XG59XG5cbi5wcm9kdWN0LW1vcS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5za3VTdGlja1RvQm90dG9tIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1cHg7XG4gICAgd2lkdGg6IDk3JTtcbiAgfVxufVxuXG4uc3RvY2tOb3RpZmljYXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5kYXRhU2hlZXRJdGVtIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luOiAxMHB4O1xufVxuXG4udGFicy1wYW5lbCB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uc2t1VGFicyB7XG4gIGJhY2tncm91bmQ6ICNmN2Y2ZjY7XG59XG5cbi5za3VUYWJzIC50YWJzLXRpdGxlIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U4ZTVlNTtcbn1cblxuLnNrdVRhYnMgLnRhYnMtdGl0bGU6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLnNrdVRhYnMgLnRhYnMtdGl0bGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG4uc2t1VGFicyAudGFicy10aXRsZSBhIHtcbiAgcGFkZGluZzogMS4yNXJlbSAwLjg1cmVtO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5za3VUYWJzIC50YWJzLXRpdGxlIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG4uc2t1VGFicyAudGFicy10aXRsZS5pcy1hY3RpdmUgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNrdVRhYnMgLmFjY29yZGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG59XG5cbi5za3VUYWJzIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMsIC5za3VUYWJzIC5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi10aXRsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5cbi5za3VUYWJzIC5hY2NvcmRpb24tY29udGVudCB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uc2t1VGFicyAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5za3VUYWJzIGlmcmFtZSB7XG4gIHdpZHRoOiA1MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnNrdVRhYnMgaWZyYW1lIHtcbiAgICB3aWR0aDogOTUlO1xuICB9XG59XG5cbi52aWV3RnVsbFJhbmdlIHtcbiAgZm9udC1zaXplOiAxLjA3MTQzcmVtO1xufVxuXG4udmlld0Z1bGxSYW5nZTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uc2t1VGVjaCB0aCB7XG4gIGJhY2tncm91bmQ6ICNmN2Y2ZjY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHdpZHRoOiAzMyU7XG59XG5cbi5wcm9kdWN0LWF0dHJpYnV0ZXMtdGFibGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxcmVtIDA7XG59XG5cbi5wcm9kdWN0LWF0dHJpYnV0ZXMtdGFibGUgdGJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucHJvZHVjdC1hdHRyaWJ1dGVzLXRhYmxlIHRib2R5IHRyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9kdWN0LWF0dHJpYnV0ZXMtdGFibGUgdGJvZHkgdHIgdGgge1xuICB3aWR0aDogNDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlNWU1O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wcm9kdWN0LWF0dHJpYnV0ZXMtdGFibGUuc3RhZ2dlci10YWJsZSB0Ym9keSB0ciB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uc3RvY2tNZXNzYWdlIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5zbWFsbFN0b2NrTWVzc2FnZSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uc21hbGxTdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAvKmJvdHRvbTogMTAwJTtcbiAgICAgICAgdG9wOiBhdXRvOyovXG59XG5cbi5zdG9ja01lc3NhZ2UsXG4uc21hbGxTdG9ja01lc3NhZ2UsXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zdG9ja01lc3NhZ2Ugc3Bhbixcbi5zbWFsbFN0b2NrTWVzc2FnZSBzcGFuLFxuLnN0b2NrLW1lc3NhZ2UtYmFza2V0IHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnN0b2NrTWVzc2FnZSBzcGFuOm50aC1jaGlsZCgyKSxcbi5zbWFsbFN0b2NrTWVzc2FnZSBzcGFuOm50aC1jaGlsZCgyKSxcbi5zdG9jay1tZXNzYWdlLWJhc2tldCBzcGFuOm50aC1jaGlsZCgyKSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5zdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtdGV4dCxcbi5zbWFsbFN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS10ZXh0LFxuLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLXRleHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS10ZXh0IGEsXG4uc21hbGxTdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtdGV4dCBhLFxuLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLXRleHQgYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvLFxuLnNtYWxsU3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm8sXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mbyB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICB3aWR0aDogMTlweDtcbiAgaGVpZ2h0OiAxOXB4O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tcmlnaHQ6IC4yZW07XG4gIG1hcmdpbi10b3A6IC4yZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtaW5mbyxcbiAgLnNtYWxsU3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm8sXG4gIC5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS1pbmZvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuLnN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCxcbi5zbWFsbFN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCxcbi5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IC42NWVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0cmFuc2l0aW9uOiBlYXNlLWluLW91dCAuM3MgYWxsO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB6LWluZGV4OiAxO1xuICB0b3A6IGNhbGMoMTAwJSArIC4yZW0pO1xuICBib3R0b206IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94LFxuICAuc21hbGxTdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gsXG4gIC5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgICBib3R0b206IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b2NrTWVzc2FnZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCxcbiAgLnNtYWxsU3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94LFxuICAuc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi5zdG9ja01lc3NhZ2UgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3guYWN0aXZlLFxuLnNtYWxsU3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94LmFjdGl2ZSxcbi5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS1pbmZvX2JveC5hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uc3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94OmhvdmVyLFxuLnNtYWxsU3RvY2tNZXNzYWdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94OmhvdmVyLFxuLnN0b2NrLW1lc3NhZ2UtYmFza2V0IC5zdG9jay1tZXNzYWdlLWluZm9fYm94OmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvY2stbWVzc2FnZS1zZWFyY2ggLnN0b2NrLW1lc3NhZ2UtaW5mbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi5zdG9jay1tZXNzYWdlLWJhc2tldCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnN0b2NrLW1lc3NhZ2UtYmFza2V0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG59XG5cbi5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS10ZXh0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mbyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICB0b3A6IGNhbGMoMTAwJSArIC4yZW0gLSAyZW0pO1xuICBib3R0b206IGF1dG87XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc3RvY2stbWVzc2FnZS1iYXNrZXQgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IGNhbGMoMTAwJSArIC4yZW0pO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9jay1tZXNzYWdlLWJhc2tldCAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9jay1tZXNzYWdlLW1lcmdlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuLnN0b2NrLW1lc3NhZ2UtdGFibGUgLnN0b2NrLW1lc3NhZ2UtaW5mbyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IC4yZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9jay1tZXNzYWdlLXRhYmxlIC5zdG9jay1tZXNzYWdlLWluZm8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG4uc3RvY2stbWVzc2FnZS10YWJsZSAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IGNhbGMoMTAwJSArIC4yZW0pO1xuICBib3R0b206IGF1dG87XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdG9jay1tZXNzYWdlLXRhYmxlIC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgICB0b3A6IDA7XG4gIH1cbn1cblxuLmxlZ2FjeS1zdG9jay1tZXNzYWdlIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50aWVySGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IDAuMzU3MTRyZW07XG59XG5cbi50aWVySGVhZGluZyBoMSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udGllck5hdlNlY3Rpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJOYXZTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck5hdlNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi50aWVyTmF2U2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udGllck1pZGRsZVdpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVXaWRlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck1pZGRsZVdpZGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi50aWVyTWlkZGxlV2lkZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udGllck1pZGRsZU1lZGl1bSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck1pZGRsZU1lZGl1bSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVNZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbi50aWVyTWlkZGxlTWVkaXVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi50aWVyTWlkZGxlU21hbGwge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuLnRpZXJNaWRkbGVTbWFsbDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTmF2U2VjdGlvbiB7XG4gICAgd2lkdGg6IDI0JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICAvKiYudGllcmFuZFNpZGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC05LjEyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICAmLnRpZXJzT25seSB7XG4gICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC05LjEyKTtcbiAgICAgICAgfSovXG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJOYXZTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck5hdlNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJOYXZTZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudGllck1pZGRsZVdpZGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTWlkZGxlV2lkZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVXaWRlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTWlkZGxlV2lkZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRpZXJNaWRkbGVNZWRpdW0ge1xuICAgIHdpZHRoOiA3NiU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgLypAaW5jbHVkZSBncmlkLWNvbC1wb3MoMi44OCk7Ki9cbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck1pZGRsZU1lZGl1bSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVNZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVNZWRpdW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC50aWVyTWlkZGxlU21hbGwge1xuICAgIHdpZHRoOiA3NiU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gICAgLypAaW5jbHVkZSBncmlkLWNvbC1wb3MoMi44OCk7Ki9cbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck1pZGRsZVNtYWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck1pZGRsZVNtYWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTWlkZGxlU21hbGw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC50aWVyUmlnaHRTZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJOYXZTZWN0aW9uIHtcbiAgICB3aWR0aDogMjQlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIC8qJi50aWVyYW5kU2lkZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLTYuNik7XG4gICAgICAgIH1cblxuICAgICAgICAgJi50aWVyc09ubHkge1xuICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtOS4xMik7XG4gICAgICAgIH0qL1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50aWVyTmF2U2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJOYXZTZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTmF2U2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgLnRpZXJNaWRkbGVXaWRlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllck1pZGRsZVdpZGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTWlkZGxlV2lkZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck1pZGRsZVdpZGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC50aWVyTWlkZGxlTWVkaXVtIHtcbiAgICB3aWR0aDogNzYlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIC8qQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDIuODgpOyovXG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVNZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTWlkZGxlTWVkaXVtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aWVyTWlkZGxlTWVkaXVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudGllck1pZGRsZVNtYWxsIHtcbiAgICB3aWR0aDogNTUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICAgIC8qQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDIuODgpOyovXG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGllck1pZGRsZVNtYWxsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAudGllclJpZ2h0U2VjdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIxJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGllclJpZ2h0U2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJSaWdodFNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpZXJSaWdodFNlY3Rpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbnVsLnRpZXJwYWdlTmF2IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwLjI4NTcxcmVtO1xufVxuXG51bC50aWVycGFnZU5hdiBsaSB7XG4gIG1hcmdpbjogMC4zNTcxNHJlbSAwO1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICB1bC50aWVycGFnZU5hdiBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuM3JlbSAwO1xuICB9XG59XG5cbnVsLnRpZXJwYWdlTmF2IGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG51bC50aWVycGFnZU5hdiBsaSBhIHtcbiAgY29sb3I6IGJsYWNrO1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIHVsLnRpZXJwYWdlTmF2IGxpIGEge1xuICAgIGZvbnQtc2l6ZTogMS4wNXJlbTtcbiAgfVxufVxuXG51bC50aWVycGFnZU5hdiBsaSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5icmFuZFNlY3Rpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5icmFuZFNlY3Rpb24gaDIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYnJhbmRTZWN0aW9uIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDBweCAyMHB4IDVweCAyMHB4O1xufVxuXG4uYnJhbmRTZWN0aW9uIGEgaW1nIHtcbiAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgd2lkdGg6IDEwMHB4O1xuICBpbWFnZS1yZW5kZXJpbmc6IC1tb3otY3Jpc3AtZWRnZXM7XG4gIGltYWdlLXJlbmRlcmluZzogLW8tY3Jpc3AtZWRnZXM7XG4gIGltYWdlLXJlbmRlcmluZzogLXdlYmtpdC1vcHRpbWl6ZS1jb250cmFzdDtcbiAgaW1hZ2UtcmVuZGVyaW5nOiBvcHRpbWl6ZS1jb250cmFzdDtcbn1cblxuLmJyYW5kU2VjdGlvbiBhIGgzIHtcbiAgY29sb3I6ICM3OTc5NkE7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5icmFuZFNlY3Rpb24gYTpob3ZlciBoMyB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG5hLnRvcEJyYW5kc1ZpZXdBbGwge1xuICBwYWRkaW5nLXRvcDogMC43MTQyOXJlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzc5Nzk2QTtcbn1cblxuYS50b3BCcmFuZHNWaWV3QWxsOmhvdmVyIHtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4udGllckFkdmVydHMgLmNvbHVtbiBpbWcsIC50aWVyQWR2ZXJ0cyAuY29sdW1ucyBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xuICBpbWFnZS1yZW5kZXJpbmc6IC1tb3otY3Jpc3AtZWRnZXM7XG4gIC8qIEZpcmVmb3ggKi9cbiAgaW1hZ2UtcmVuZGVyaW5nOiAtby1jcmlzcC1lZGdlcztcbiAgLyogT3BlcmEgKi9cbiAgaW1hZ2UtcmVuZGVyaW5nOiAtd2Via2l0LW9wdGltaXplLWNvbnRyYXN0O1xuICAvKiBXZWJraXQgKG5vbi1zdGFuZGFyZCBuYW1pbmcpICovXG4gIGltYWdlLXJlbmRlcmluZzogY3Jpc3AtZWRnZXM7XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IG5lYXJlc3QtbmVpZ2hib3I7XG4gIC8qIElFIChub24tc3RhbmRhcmQgcHJvcGVydHkpICovXG59XG5cbi50aWVyQWR2ZXJ0cyAuY29sdW1uIGEsIC50aWVyQWR2ZXJ0cyAuY29sdW1ucyBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5tb2R1bGVWaWV3IC5tb2R1bGVCbG9jayB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMC43MTQyOXJlbTtcbn1cblxuLm1vZHVsZVZpZXcgLm1vZHVsZUJsb2NrIGEge1xuICBjb2xvcjogYmxhY2s7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMS4yODU3MXJlbTtcbn1cblxuLm1vZHVsZVZpZXcgLm1vZHVsZUJsb2NrIGEgaW1nIHtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubW9kdWxlVmlldyAubW9kdWxlQmxvY2sgYTpob3ZlciB7XG4gIGNvbG9yOiBibGFjaztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5tb2R1bGVWaWV3IC5tb2R1bGVCbG9jayBhOmhvdmVyIGltZyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhcmFtZXRyaWNTZWFyY2hCdXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnBhcmFtZXRyaWNTZWFyY2hCdXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIC5wYXJhbWV0cmljU2VhcmNoQnV0dG9uOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4uYnV0dG9uLmhvbGxvdy5saWdodGVyR3JheSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZGMzYzc7XG4gIGNvbG9yOiAjYmRjM2M3O1xufVxuXG4uYnV0dG9uLmxpZ2h0ZXJHcmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2JkYzNjNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ubGlnaHRlckdyYXk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbi5saWdodGVyR3JheTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5saWdodGVyR3JheSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZGMzYzc7XG4gIGNvbG9yOiAjYmRjM2M3O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4uYnV0dG9uLmhvbGxvdy5saWdodGVyR3JheTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzMxMzEzMTtcbiAgY29sb3I6ICMzMTMxMzE7XG59XG5cbi5idXR0b24uaG9sbG93LmxpZ2h0ZXJHcmF5OmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzEzMTMxO1xuICBjb2xvcjogIzMxMzEzMTtcbn1cblxuLnF1aWNrVGFza0ZpbHRlcnMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnF1aWNrVGFza0ZpbHRlcnMgbGFiZWwsIC5xdWlja1Rhc2tGaWx0ZXJzIGEge1xuICBjb2xvcjogIzNjM2MzYztcbiAgLypmb250LXdlaWdodDpib2xkOyovXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xufVxuXG4ucXVpY2tUYXNrRmlsdGVycyBsaSB7XG4gIGZvbnQtc2l6ZTogMS4wNzE0M3JlbTtcbiAgcGFkZGluZzogMC43ODU3MXJlbSAwLjE0Mjg2cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5xdWlja1Rhc2tGaWx0ZXJzIGxpLnRhc2tGaWx0ZXJEaXZpZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIGxpbmUtaGVpZ2h0OiAwcHg7XG4gIHBhZGRpbmc6IDBweDtcbn1cblxuLnF1aWNrVGFza0ZpbHRlcnMgbGkudGFza0ZpbHRlckRpdmlkZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4ucXVpY2tUYXNrRmlsdGVycyBsaSBzZWxlY3Qge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5xdWlja1Rhc2tGaWx0ZXJzIGxpIHNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnF1aWNrVGFza0ZpbHRlcnMgbGkgaSB7XG4gIGZvbnQtc2l6ZTogMjBweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5cbi5xdWlja1Rhc2tGaWx0ZXJzIGxpIHNwYW4ge1xuICBjb2xvcjogIzNjM2MzYztcbiAgZm9udC1zaXplOiAwLjc4NTcxcmVtO1xufVxuXG4ucXVpY2tUYXNrRmlsdGVycyBsaSBzZWxlY3Qge1xuICBtYXJnaW4tdG9wOiAwLjg1NzE0cmVtO1xufVxuXG4udGFza0ZpbHRlcnNDb2wge1xuICAvKkBpbmNsdWRlIGdyaWQtY29sdW1uOyovXG4gIC8qYmFja2dyb3VuZDojRjlGQUZFICFpbXBvcnRhbnQ7Ki9cbiAgYmFja2dyb3VuZDogI0VGRUZGNCAhaW1wb3J0YW50O1xuICAvKkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMiBvZiAxMik7XG4gICAgICAgIC8vdG8gbWF0Y2ggaGVpZ2h0IG9mIHBhcmVudCAtIG9ubHkgd29ya3MgYXMgcGFnZSBpcyAyIGNvbHVtbnMgc28gcmlnaHQgY29sIGlzIGZsb2F0ZWQgcmlnaHQuXG4gICAgICAgIGhlaWdodDoxMDAlICAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICB9Ki9cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC50YXNrRmlsdGVyc0NvbC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHotaW5kZXg6IDk5OTk5OSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRhc2tGaWx0ZXJzQ29sLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgICBoZWlnaHQ6IDEwMCUgICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U4ZTVlNTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhc2tGaWx0ZXJzQ29sLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50YXNrRmlsdGVyc0NvbC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50YXNrRmlsdGVyc0NvbC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi50YXNrU3dpdGNoIHtcbiAgcGFkZGluZzogM3B4IDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRhc2tTd2l0Y2g6aG92ZXIge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZDogI2JkYzNjNztcbn1cblxuLnRhc2tQYWdlQ29udCBzcGFuLmxhYmVsIHtcbiAgYm9yZGVyLXJhZGl1czogMC43MTQyOXJlbTtcbiAgbWFyZ2luOiAyLjVweCA1cHggMi41cHg7XG59XG5cbi50YXNrUGFnZUNvbnQgc3Bhbi5sYWJlbCAuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogI0ExQUFCMjtcbn1cblxuLnRhc2tSb3cge1xuICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDEuMnM7XG4gIC1tb3otdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxLjJzO1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDEuMnM7XG59XG5cbi50YXNrUm93Lm9wZW4ge1xuICBtYXgtaGVpZ2h0OiAxNDUwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4ucmVzdWx0c0NvdW50IHtcbiAgbWFyZ2luOiA3cHggMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmgxLnRhc2tQYWdlVGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMC41NzE0M3JlbSAwIDAgMDtcbiAgY29sb3I6ICMzYzNjM2M7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbn1cblxuLnRhc2tEZXRhaWxzIHtcbiAgYmFja2dyb3VuZDogI0Y5RjlGOTtcbiAgcGFkZGluZzogMC41cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xufVxuXG4udGFza0RldGFpbHMgbGFiZWwge1xuICBmb250LXNpemU6IDEuMDcxNDNyZW07XG4gIGNvbG9yOiAjNzk3OTZBO1xufVxuXG4udGFza0RldGFpbHMgbGFiZWwgc3BhbiB7XG4gIGNvbG9yOiAjNzk3OTZBO1xuICBmb250LXNpemU6IDAuNzg1NzFyZW07XG59XG5cbi5zaG93LXF1aWNrVGFza0ZpbHRlcnMge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4udGFza0hlYWRlckJhciB7XG4gIG1pbi1oZWlnaHQ6IDMuNjQyODZyZW07XG4gIGJhY2tncm91bmQ6ICNmZmZmZjI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICAvKmJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsMCwwLDAuMTIpLCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjI0KTsqL1xuICBwYWRkaW5nOiAwLjQyODU3cmVtIDA7XG59XG5cbi50YXNrSGVhZGVyQmFyLnJvdy5leHBhbmRlZCB7XG4gIG1hcmdpbi1yaWdodDogLS41NzE0M3JlbTtcbiAgbWFyZ2luLWxlZnQ6IC0uNTcxNDNyZW07XG59XG5cbi50YXNrSGVhZGVyQmFyIC5idXR0b24ge1xuICBtYXJnaW46IDAuMjVyZW0gMC4yNXJlbSAwLjI1cmVtO1xuICBwYWRkaW5nOiAuNTVlbSAuNzVlbTtcbn1cblxuLnRhc2tQYWdlQ29udCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogLTEuNTcxNDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjcxNDI5cmVtO1xuICBtaW4taGVpZ2h0OiAzNS4zNTcxNHJlbTtcbiAgLypiYWNrZ3JvdW5kOiNGNUY1RjY7Ki9cbiAgYmFja2dyb3VuZDogI0ZBRkFGQTtcbn1cblxuLnRhc2tzQ29udGFpbmVyIHtcbiAgLypib3JkZXI6MXB4IHNvbGlkICRsaWdodC1ncmF5OyovXG4gIG1hcmdpbi10b3A6IDAuNzE0MjlyZW07XG4gIG1heC13aWR0aDogODIuMTQyODZyZW07XG4gIHBhZGRpbmc6IDAuNDI4NTdyZW07XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YXNrc0NvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNzg1NzFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjc4NTcxcmVtO1xuICB9XG59XG5cbi50YXNrUm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG59XG5cbi50YXNrUm93Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLnRhc2tSb3c6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xufVxuXG4udGFza1JvdyAubm9uRWRpdGFibGUge1xuICBtYXJnaW46IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnRhc2tSb3cgLm5vbkVkaXRhYmxlIHNwYW4ge1xuICAgIHBhZGRpbmctdG9wOiAwLjIxNDI5cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjIxNDI5cmVtO1xuICB9XG59XG5cbi50YXNrUm93IC5ub25FZGl0YWJsZSAuZmEtc3RhciB7XG4gIGNvbG9yOiAjZTgxMjEyO1xufVxuXG4udGFza1JvdyAubm9uRWRpdGFibGUgLmhvbGxvdy1zcWF1cmUtbm90aWZpY2F0aW9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzMxMzEzMTtcbiAgY29sb3I6ICMzMTMxMzE7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAuMThyZW07XG4gIHBhZGRpbmc6IDAgLjU1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YXNrUm93IC5ub25FZGl0YWJsZSB7XG4gICAgbGluZS1oZWlnaHQ6IDIuMjE0MjlyZW07XG4gIH1cbn1cblxuLnRhc2tSb3cgLm5vbkVkaXRhYmxlIGgyIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICMzYzNjM2M7XG59XG5cbi50YXNrUm93IC5ub25FZGl0YWJsZSAuZWRpdEJ0biB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi13aWR0aDogNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnRhc2tSb3cgLm5vbkVkaXRhYmxlIC5lZGl0QnRuIHtcbiAgICBtYXJnaW46IDAuNzE0MjlyZW0gYXV0bztcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLnRhc2tSb3cgLm5vbkVkaXRhYmxlIC5lZGl0QnRuIC5idG5JY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjRjlBNTE5O1xufVxuXG4udGFza1JvdyAubm9uRWRpdGFibGUgLmVkaXRCdG4gLmJ0bkljb24gaSB7XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW07XG4gIGZvbnQtc2l6ZTogMS4yODU3MXJlbTtcbn1cblxuLnRhc2tSb3cgLm5vbkVkaXRhYmxlIC5lZGl0QnRuIC5idG5UZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDAuNDI4NTdyZW07XG59XG5cbi50YXNrUm93IC5ub25FZGl0YWJsZTpob3ZlciAuZWRpdEJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4udGFic0FyZWEgLnRhYnMtY29udGVudCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnRhYnNBcmVhIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICBwYWRkaW5nOiAwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4udGFic0FyZWEgLnRhYnMge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4udGFic0FyZWEgLnRhYnMgLnRhYnMtdGl0bGUge1xuICB3aWR0aDogMzElO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBiYWNrZ3JvdW5kOiAjZjhmOWZhO1xufVxuXG4udGFic0FyZWEgLnRhYnMgLnRhYnMtdGl0bGU6aG92ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2U4ZTVlNTtcbn1cblxuLnRhYnNBcmVhIC50YWJzIC50YWJzLXRpdGxlIGEge1xuICBwYWRkaW5nOiAwLjU3MTQzcmVtO1xufVxuXG4udGFic0FyZWEgLnRhYnMgLnRhYnMtdGl0bGUgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi50YWJzQXJlYSAudGFicyAudGFicy10aXRsZSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLnRhYnNBcmVhIC50YWJzIC50YWJzLXRpdGxlIGEgbGFiZWwge1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLnRhYnNBcmVhIC50YWJzIC50YWJzLXRpdGxlLmlzLWFjdGl2ZSB7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjRjlBNTE5O1xuICBiYWNrZ3JvdW5kOiAjZjVmN2Y4O1xufVxuXG4udGFic0FyZWEgLnRhYnMgLnRhYnMtdGl0bGUuaXMtYWN0aXZlIGEgbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnRvZG9Db250YWluZXIsIC50YXNrTm90ZXNDb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAwIDAuNzE0MjlyZW07XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgaGVpZ2h0OiAyMi41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xufVxuXG4udG9kb0NvbnRhaW5lciAuZmEtc3RhciB7XG4gIGNvbG9yOiAjZTgxMjEyO1xufVxuXG4ucXVpbGwtb3V0ZXIgLnFsLXRvb2x0aXAsIC5xdWlsbC1vdXRlciAucWwtY2xpcGJvYXJkIHtcbiAgei1pbmRleDogOTk5OTk5O1xufVxuXG4ucXVpbGwtb3V0ZXIgLnF1aWxsLWVkaXRvciB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG59XG5cbi5xdWlsbC1vdXRlciAucXVpbGwtZWRpdG9yIC5xbC10b29sYmFyLnFsLXNub3csIC5xdWlsbC1vdXRlciAucXVpbGwtZWRpdG9yIC5xbC1jb250YWluZXIucWwtc25vdyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlOGU1ZTU7XG59XG5cbi5xdWlsbC1vdXRlciBidXR0b24ge1xuICBtYXJnaW46IDEwcHggMHB4IDBweCAwcHg7XG59XG5cbi5xdWlsbC1vdXRlciAucWwtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxNS43MTQyOXJlbTtcbn1cblxuLnRvZG9Sb3cge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U4ZTVlNTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwLjM1NzE0cmVtIDA7XG59XG5cbi50b2RvUm93IC5sYWJlbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG59XG5cbi50b2RvUm93IHAge1xuICBtYXJnaW4tYm90dG9tOiAwLjE0Mjg2cmVtO1xufVxuXG4udG9kb1Jvdzpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG59XG5cbi5ub3RlUm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOGU1ZTU7XG59XG5cbi5ub3RlUm93IHAge1xuICBtYXJnaW4tYm90dG9tOiAtMC4xNDI4NnJlbTtcbiAgbWFyZ2luLXRvcDogMC4yMTQyOXJlbTtcbn1cblxuLm5vdGVSb3cgLm5vdGVEYXRlIHtcbiAgY29sb3I6ICM3OTc5NkE7XG4gIGZvbnQtc2l6ZTogMC44NTcxNHJlbTtcbn1cblxuLnRhc2tTYXZlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwLjM1NzE0cmVtO1xufVxuXG4vKnRvZG8gbWVudSB0cmFuc2l0aW9uKi9cbi5wYW5lbC1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjRzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDEsIDAsIDAuNSwgMCk7XG4gIGJhY2tncm91bmQ6ICNFRkVGRjQ7XG59XG5cbi5wYW5lbC1zbGlkZXIub3BlbiB7XG4gIG1heC1oZWlnaHQ6IDUwMHB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIHBhZGRpbmc6IDAuMzU3MTRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjg1NzFyZW07XG59XG5cbi5wYW5lbC1zbGlkZXIub3BlbiAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwLjM1NzE0cmVtIDA7XG59XG5cbi5wYW5lbC1zbGlkZXIub3Blbjo6YmVmb3JlIHtcbiAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxNXB4IHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogc29saWQgMTVweCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMTVweCAjRUZFRkY0O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogJyc7XG4gIHRvcDogLTE1cHg7XG4gIGxlZnQ6IDUwJTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbn1cblxuLnRvZG9BdHRhdGNobWVudHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEuMDcxNDNyZW07XG4gIGJhY2tncm91bmQ6ICNGNkY3Rjg7XG59XG5cbi50b2RvQXR0YXRjaG1lbnRzIGgyLCAudG9kb0F0dGF0Y2htZW50cyBoMyB7XG4gIGNvbG9yOiAjNmY2ZjZmO1xufVxuXG4udG9kb0F0dGF0Y2htZW50cyBpIHtcbiAgY29sb3I6ICNjMGMyYzM7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b2RvQXR0YXRjaG1lbnRzIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiA0MCU7XG4gIH1cbn1cblxuLnRvZG9BdHRhdGNobWVudHMgaHIge1xuICBtYXJnaW46IDAuMzU3MTRyZW07XG59XG5cbi5iZG1GaWxlVXBsb2FkcyB7XG4gIG1heC1oZWlnaHQ6IDEwLjM1NzE0cmVtO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uYmRtRmlsZVVwbG9hZHMgLmxpbmsge1xuICBtYXJnaW4tYm90dG9tOiAwLjI4NTcxcmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5iZG1GaWxlVXBsb2FkcyAubGluazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNkNmQ4ZGE7XG59XG5cbi5iZG1Mb2FkaW5nIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5OTk5OTk5O1xuICBoZWlnaHQ6IDJlbTtcbiAgd2lkdGg6IDJlbTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIG1hcmdpbjogYXV0bztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4vKiBUcmFuc3BhcmVudCBPdmVybGF5ICovXG4uYmRtTG9hZGluZzpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG5cbi8qIDpub3QoOnJlcXVpcmVkKSBoaWRlcyB0aGVzZSBydWxlcyBmcm9tIElFOSBhbmQgYmVsb3cgKi9cbi5iZG1Mb2FkaW5nOm5vdCg6cmVxdWlyZWQpIHtcbiAgLyogaGlkZSBcImJkbUxvYWRpbmcuLi5cIiB0ZXh0ICovXG4gIGZvbnQ6IDAvMCBhO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uYmRtTG9hZGluZzpub3QoOnJlcXVpcmVkKTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMHB4O1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgbWFyZ2luLXRvcDogLTAuNWVtO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3Bpbm5lciAxNTAwbXMgaW5maW5pdGUgbGluZWFyO1xuICAtbW96LWFuaW1hdGlvbjogc3Bpbm5lciAxNTAwbXMgaW5maW5pdGUgbGluZWFyO1xuICAtbXMtYW5pbWF0aW9uOiBzcGlubmVyIDE1MDBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gIC1vLWFuaW1hdGlvbjogc3Bpbm5lciAxNTAwbXMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IHNwaW5uZXIgMTUwMG1zIGluZmluaXRlIGxpbmVhcjtcbiAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gIC13ZWJraXQtYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjVlbSAwIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjFlbSAxLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCAxLjVlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgLTEuMWVtIDEuMWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjUpIC0xLjVlbSAwIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjUpIC0xLjFlbSAtMS4xZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDAgLTEuNWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjFlbSAtMS4xZW0gMCAwO1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuNzUpIDEuNWVtIDAgMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDEuMWVtIDEuMWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAwIDEuNWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAtMS4xZW0gMS4xZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIC0xLjVlbSAwIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAtMS4xZW0gLTEuMWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAwIC0xLjVlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMS4xZW0gLTEuMWVtIDAgMDtcbn1cblxuLyogQW5pbWF0aW9uICovXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbm5lciB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBzcGlubmVyIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQC1vLWtleWZyYW1lcyBzcGlubmVyIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzcGlubmVyIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLmJkbVNlYXJjaCAuYmRtU2VhcmNoQ2xvc2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMC4yMTQyOXJlbTtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uYmRtU2VhcmNoIC5iZG1TZWFyY2hDbG9zZSBpIHtcbiAgY29sb3I6ICNFRkVGRjQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmJkbVNlYXJjaCAuYmRtU2VhcmNoQ2xvc2UgaTpob3ZlciB7XG4gIGNvbG9yOiAjYTI5ZTllO1xufVxuXG4uYmRtU2VhcmNoIGgyIHtcbiAgcGFkZGluZy10b3A6IDAuMzU3MTRyZW07XG59XG5cbi5iZG1TZWFyY2ggLmhpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQ6IHllbGxvdztcbn1cblxuLmJkbVNlYXJjaCAuc2VhcmNoUmVzdWx0IHtcbiAgbWFyZ2luOiAwLjI4NTcxcmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAuNDI4NTdyZW0gMC4yODU3MXJlbTtcbn1cblxuLmJkbVNlYXJjaCAuc2VhcmNoUmVzdWx0IHAge1xuICBtYXJnaW46IDBweDtcbn1cblxuLmJkbVNlYXJjaCAuc2VhcmNoUmVzdWx0OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U0ZTRlNDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvZG9Gb3JtIHtcbiAgICBtYXgtaGVpZ2h0OiAzNS43MTQyOXJlbTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG4gIC50b2RvRm9ybSB0aGVhZCBbY2xhc3N8PVwidG9kb1wiXSB7XG4gICAgbWluLWhlaWdodDogODVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLnRvZG9Gb3JtIFtjbGFzc3w9XCJ0b2RvXCJdIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogOS4wOSU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC50b2RvRm9ybSAudG9kby1jb21tZW50cyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE0MHB4IC0gMzJweCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIC50b2RvRm9ybSAudG9kby1kdXBsaWNhdGUge1xuICAgIHdpZHRoOiAxNDBweDtcbiAgfVxuICAudG9kb0Zvcm0gLnRvZG8tZHVwbGljYXRlIC5idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLnRvZG9Gb3JtIC50b2RvLWRlbGV0ZSB7XG4gICAgd2lkdGg6IDMycHg7XG4gIH1cbn1cblxuLnRvZG9Gb3JtIC5jcm9zcy1jb250YWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDMwJSAwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGhlYWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmY2NjN2M7XG4gIH1cbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRoZWFkIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGhlYWQgdHIge1xuICBib3JkZXI6IHNvbGlkIDFweCAjYmNiY2JlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdGQge1xuICAgIGhlaWdodDogNTJweDtcbiAgfVxufVxuXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdGQgaW5wdXQsXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdGQgc2VsZWN0IHtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlLWluLW91dDtcbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIGlucHV0OjpwbGFjaG9sZGVyLFxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIHNlbGVjdDo6cGxhY2hvbGRlciB7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIC5pbnB1dC1leHBhbmQtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIC5pbnB1dC1leHBhbmQtd3JhcC5leHBhbmRlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogY2FsYyg5Mi44NTcxNHJlbSAtIDEwJSk7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAzMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIGlucHV0W3R5cGU9dGV4dF0sXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdGQgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgYWxsO1xufVxuXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdGQgaW5wdXRbdHlwZT10ZXh0XTpob3ZlciArIC5pbnB1dC1leHBhbmQtaWNvbixcbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCBpbnB1dFt0eXBlPW51bWJlcl06aG92ZXIgKyAuaW5wdXQtZXhwYW5kLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIGlucHV0W3R5cGU9dGV4dF0gKyAuaW5wdXQtZXhwYW5kLWljb24sXG4udG9kb0Zvcm0gdGFibGUucXVvdGVEZXRhaWwgdGJvZHkgdGQgaW5wdXRbdHlwZT1udW1iZXJdICsgLmlucHV0LWV4cGFuZC1pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxO1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ZCBpbnB1dFt0eXBlPXRleHRdICsgLmlucHV0LWV4cGFuZC1pY29uOmhvdmVyLFxuLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRkIGlucHV0W3R5cGU9bnVtYmVyXSArIC5pbnB1dC1leHBhbmQtaWNvbjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSB0ciB7XG4gIGJvcmRlcjogc29saWQgMXB4ICNiY2JjYmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IHRyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNjYzdjO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b2RvRm9ybSB0YWJsZS5xdW90ZURldGFpbCB0Ym9keSAudG9kby1kZWxldGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cbiAgLnRvZG9Gb3JtIHRhYmxlLnF1b3RlRGV0YWlsIHRib2R5IC50b2RvLWRpcmVjdCB7XG4gICAgcGFkZGluZzogMTZweCA1cHg7XG4gIH1cbn1cblxuLnRvZG9Gb3JtIC5jYXQtcXVvdGVzIHtcbiAgYmFja2dyb3VuZDogI2UzZTNlNDtcbn1cblxuLnRvZG9Gb3JtIHRoLmNhdC1xdW90ZXMsXG4udG9kb0Zvcm0gdGQuY2F0LXF1b3RlcyB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjYmNiY2JlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9kb0Zvcm0gdGguY2F0LXF1b3RlcyxcbiAgLnRvZG9Gb3JtIHRkLmNhdC1xdW90ZXMge1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgfVxufVxuXG4udG9kb0Zvcm0gdGguY2F0LXF1b3RlczpudGgtY2hpbGQoMyksXG4udG9kb0Zvcm0gdGQuY2F0LXF1b3RlczpudGgtY2hpbGQoMykge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAzcHggI2JjYmNiZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvZG9Gb3JtIHRoLmNhdC1xdW90ZXM6bnRoLWNoaWxkKDMpLFxuICAudG9kb0Zvcm0gdGQuY2F0LXF1b3RlczpudGgtY2hpbGQoMykge1xuICAgIGJvcmRlci1yaWdodDogc29saWQgM3B4ICNiY2JjYmU7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNiY2JjYmU7XG4gIH1cbn1cblxuLnRvZG9Gb3JtIC5jYXQtcHJvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZjY2M3Yztcbn1cblxuLnRvZG9Gb3JtIHRoLmNhdC1wcm8sXG4udG9kb0Zvcm0gdGQuY2F0LXBybyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNiY2JjYmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b2RvRm9ybSB0aC5jYXQtcHJvLFxuICAudG9kb0Zvcm0gdGQuY2F0LXBybyB7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG59XG5cbi50b2RvRm9ybSB0ciAuZGVsZXRlLXJvdyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgNXB4ICNiY2JjYmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50b2RvRm9ybSB0ciAuZGVsZXRlLXJvdyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAxNXB4IDVweDtcbiAgfVxufVxuXG4udG9kb0Zvcm0gdHI6bGFzdC1jaGlsZCAuZGVsZXRlLXJvdyB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjYmNiY2JlO1xufVxuXG4udG9kb0Zvcm0gLm1pc3NpbmctcmVxdWlyZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTE5NDg4O1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG59XG5cbi50b2RvRm9ybSAubWlzc2luZy1yZXF1aXJlZDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMTk0ODg7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNyAhaW1wb3J0YW50O1xufVxuXG4ucmV2ZWFsLmZ1bGwge1xuICB0b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLnJldmVhbC5mdWxsIC5yb3cge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5yZXZlYWwuZnVsbCAudG9kb0Zvcm0ge1xuICBtYXgtaGVpZ2h0OiA4M3ZoO1xufVxuXG5pbnB1dFtpZCQ9XCJkdXBsaWNhdGVkXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhhZGQ5Yjtcbn1cblxuaW5wdXRbaWQkPVwiZHVwbGljYXRlZFwiXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YWRkOWI7XG59XG5cbiNleHBhbmRlZC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC40NSk7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmxpbmVzLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4ubGluZXMtd3JhcCBoMiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmxpbmVzLXdyYXAgYnV0dG9uIHtcbiAgbWFyZ2luOiAwIDEwcHggMCBhdXRvO1xufVxuXG4ucXVpY2stdmlldy1wb3B1cCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4ucXVpY2stdmlldy1wb3B1cCAucXVpY2stdmlldy1jb2x1bW4ge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgLypAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfSovXG59XG5cbi50cnVuY2F0ZWQtc3RyaW5nIHtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cbi50YXNrLXRvZG8taXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50YXNrLXRvZG8taXRlbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuXG4udGFzay10b2RvLWl0ZW1fdGl0bGUsXG4udGFzay10b2RvLWl0ZW1faW5mbyxcbi50YXNrLXRvZG8taXRlbV9ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGFzay10b2RvLWl0ZW1fdGl0bGUsXG4gIC50YXNrLXRvZG8taXRlbV9pbmZvLFxuICAudGFzay10b2RvLWl0ZW1fZ3JvdXAge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLnRhc2stdG9kby1pdGVtX2dyb3VwIHtcbiAgd2lkdGg6IDcwJTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhc2stdG9kby1pdGVtX2dyb3VwIHtcbiAgICB3aWR0aDogNjAlO1xuICB9XG59XG5cbi50YXNrLXRvZG8taXRlbV9pbmZvIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4udG9kb1Jvdy50YXNrLXRvZG8taXRlbSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi50b2RvUm93IC50YXNrLXRvZG8taXRlbV90aXRsZSB7XG4gIHdpZHRoOiAzMCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50b2RvUm93IC50YXNrLXRvZG8taXRlbV90aXRsZSB7XG4gICAgd2lkdGg6IDQwJTtcbiAgfVxufVxuXG4udG9kb1JvdyAudGFzay10b2RvLWl0ZW1faW5mbyB7XG4gIHdpZHRoOiA4MCU7XG59XG5cbi50YXNrLXRvZG8taXRlbV9kdXBsaWNhdGUge1xuICB3aWR0aDogMjAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnRhc2stdG9kby1pdGVtX2R1cGxpY2F0ZSB7XG4gICAgd2lkdGg6IDEwJTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoQXR0cmlidXRlc0NvbCB7XG4gICAgd2lkdGg6IDM1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaEF0dHJpYnV0ZXNDb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoQXR0cmlidXRlc0NvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaEF0dHJpYnV0ZXNDb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hBdHRyaWJ1dGVzQ29sIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoQXR0cmlidXRlc0NvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hBdHRyaWJ1dGVzQ29sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoQXR0cmlidXRlc0NvbDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJlc3VsdHNTZWN0aW9uIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICB3aWR0aDogMzUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmVzdWx0c1NlY3Rpb24gLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVzdWx0c1NlY3Rpb24gLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5yZXN1bHRzU2VjdGlvbiAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlc3VsdHNTZWN0aW9uIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmVzdWx0c1NlY3Rpb24gLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucmVzdWx0c1NlY3Rpb24gLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZXN1bHRzU2VjdGlvbiAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5yZXN1bHRzU2VjdGlvbiAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgei1pbmRleDogMjAwMDAwMDAwMDA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM1NzE0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNTcxNHJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnNlYXJjaFJlc3VsdHNDb2w6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICB3aWR0aDogNjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM1NzE0cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNTcxNDNyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoUmVzdWx0c0NvbDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaFJlc3VsdHNDb2wge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC4zNTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjU3MTQzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaFJlc3VsdHNDb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWFyY2hSZXN1bHRzQ29sOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uc2VhcmNoSGVhZGluZyB7XG4gIHBhZGRpbmctdG9wOiAwLjcxNDI5cmVtO1xufVxuXG4uc2VhcmNoSGVhZGluZyBoMSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG50YWJsZS5jb21wYXJlVGFibGUgdGQge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlOGU1ZTU7XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIG1pbi13aWR0aDogMTUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyIHRkOm5vdCg6Zmlyc3QtY2hpbGQpIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyLmFsaWduVG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyLmFsaWduQm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIC5nZXRRdW90ZUxpbmsge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG50YWJsZS5jb21wYXJlVGFibGUgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG50YWJsZS5jb21wYXJlVGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWF4LXdpZHRoOiAxMjBweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyIHRkIHRhYmxlLmxhcmdlUHJpY2VUYWJsZSB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyIHRkIHRhYmxlLmxhcmdlUHJpY2VUYWJsZSB0ZCB7XG4gIG1pbi13aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBhdXRvO1xufVxuXG50YWJsZS5jb21wYXJlVGFibGUgdHIgdGQgdGFibGUubGFyZ2VQcmljZVRhYmxlIHRib2R5IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmNvbXBhcmVPcHRpb25zIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb21wYXJlT3B0aW9ucyBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgdGFibGUuY29tcGFyZVRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZCB7XG4gICAgd2lkdGg6IDEyMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMjBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuLnNpZ25JbkxlZnQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vaW1nL3NpZ25pbi9zaWduaW4uanBnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zaWduSW5MZWZ0IC50cnVzdHBpbG90LXdpZGdldCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBib3R0b206IDBweDtcbiAgbGVmdDogMHB4O1xuICByaWdodDogMHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHBhZGRpbmc6IDEwcHggMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5zaWduSW5MZWZ0IC50cnVzdHBpbG90LXdpZGdldCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2lnbkluUmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogNS43MTQyOXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1LjcxNDI5cmVtO1xuICB9XG59XG5cbi5zaWduSW5HcmF5VGV4dCB7XG4gIGNvbG9yOiAjNzk3OTZBO1xufVxuXG4uc2lnbkluUmVnaXN0ZXJMaW5rIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMS4wNzE0M3JlbTtcbn1cblxuLnNpZ25JblJlZ2lzdGVyTGluazpob3ZlciB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAjMGEwYTBhO1xufVxuXG4ucmVnaXN0ZXJCZW5lZml0cyB7XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIHBhZGRpbmc6IDEuMDcxNDNyZW07XG59XG5cbi5yZWdpc3RlckJlbmVmaXRzIGgzIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5yZWdpc3RlckJlbmVmaXRzIHNwYW4ge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5yZWdpc3RlckJlbmVmaXRzIHNwYW4gaSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnJhbmRJdGVtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYnJhbmRJdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjQyODU3cmVtO1xuICAgIG1hcmdpbi10b3A6IDEuNDI4NTdyZW07XG4gIH1cbn1cblxuLmJyYW5kSXRlbSBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xufVxuXG4uYnJhbmRJdGVtIGEge1xuICBjb2xvcjogIzc5Nzk2QTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYnJhbmRJdGVtIGE6aG92ZXIge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmJyYW5kSXRlbSBoMyB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5icmFuZHNIZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxLjI4cmVtO1xufVxuXG51bC5icmFuZE5hdiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMS4wNzE0M3JlbSAwIDAuNzE0MjlyZW0gMDtcbn1cblxudWwuYnJhbmROYXY6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG59XG5cbnVsLmJyYW5kTmF2OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG59XG5cbnVsLmJyYW5kTmF2IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IC4wNzE0M3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC43MTQyOXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG51bC5icmFuZE5hdiBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xuICBwYWRkaW5nOiAwLjQyODU3cmVtIDFyZW07XG59XG5cbnVsLmJyYW5kTmF2IGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRjlBNTE5O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnF1b3RlSXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZThlNWU1O1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xufVxuXG4ucXVvdGVJdGVtIGgzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAucXVvdGVJdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnF1b3RlSXRlbSBsYWJlbC5taWRkbGUge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzU3MTRyZW07XG4gIH1cbn1cblxuLnNtYWxsUXVvdGVJbWdDb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zbWFsbFF1b3RlSW1nQ29udGFpbmVyIGltZyB7XG4gIG1heC13aWR0aDogMTEwcHg7XG59XG5cbi5zbWFsbFF1b3RlU3RvY2tNZXNzYWdlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc21hbGxRdW90ZVN0b2NrTWVzc2FnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTtcbiAgfVxufVxuXG51bC5xdW90ZXNTZXJ2aWNlcyB7XG4gIG1hcmdpbi1sZWZ0OiAxLjc4NTcxcmVtO1xufVxuXG51bC5xdW90ZXNTZXJ2aWNlcyBsaSB7XG4gIHBhZGRpbmctdG9wOiAwLjM1NzE0cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zNTcxNHJlbTtcbn1cblxuLnF1b3Rlc1RlYW1JbmZvIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnZpZGVvQ29sIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtO1xuICB9XG59XG5cbi5iYXNrZXRQYWdlIHtcbiAgcGFkZGluZy10b3A6IDAuNzE0MjlyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5iYXNrZXRPcHRpb25zIHtcbiAgICBwYWRkaW5nLXRvcDogMi4xNDI4NnJlbTtcbiAgfVxufVxuXG4uYmFza2V0T3B0aW9ucyBhIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMzU3MTRyZW07XG4gIG1hcmdpbi1yaWdodDogMC4zNTcxNHJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5wcm9tb0NvZGVMaW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYmFza2V0QWRkcmVzc09wdGlvbnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbn1cblxuLmJhc2tldEFkZHJlc3NPcHRpb25zIGEge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYmFza2V0QWRkcmVzc09wdGlvbnMgc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmJhc2tldEFkcmVzc0Jsb2NrIHtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJhc2tldENoZWNrSGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5wYXltZW50T3B0aW9ucyAuY29sdW1ucyB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjA3MTQzcmVtO1xufVxuXG4ucGF5bWVudE9wdGlvbnMgbGFiZWwgPiBbdHlwZT1yYWRpb10ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4ucGF5cGFsbG9nby5kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaG9yaXpvbnRhbFJlbGF0ZWRQcm9kdWN0cyAucHJvZHVjdFdpZGdldCBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmhvcml6b250YWxSZWxhdGVkUHJvZHVjdHMgLnByb2R1Y3RXaWRnZXQgbGkud2lkZ2V0SGVhZGVyIHtcbiAgICBwYWRkaW5nOiA1cHggIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbiNQYXltZW50QnV0dG9uIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjQyODU3cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnBhc3RlQXJlYSB7XG4gICAgbWFyZ2luLXRvcDogMC43MTQyOXJlbTtcbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwudW5pdC1sYWJlbCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLyogQ3VzdG9taXplIHRoZSBsYWJlbCAodGhlIGNvbnRhaW5lcikgKi9cbi5yYWRpby1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4vKiBIaWRlIHRoZSBicm93c2VyJ3MgZGVmYXVsdCByYWRpbyBidXR0b24gKi9cbi5yYWRpby1jb250YWluZXIgaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbn1cblxuLyogQ3JlYXRlIGEgY3VzdG9tIHJhZGlvIGJ1dHRvbiAqL1xuLmNoZWNrbWFyayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBib3JkZXItcmFkaXVzOiAyNSU7XG59XG5cbi8qIE9uIG1vdXNlLW92ZXIsIGFkZCBhIGdyZXkgYmFja2dyb3VuZCBjb2xvciAqL1xuLnJhZGlvLWNvbnRhaW5lcjpob3ZlciBpbnB1dCB+IC5jaGVja21hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xufVxuXG4vKiBXaGVuIHRoZSByYWRpbyBidXR0b24gaXMgY2hlY2tlZCwgYWRkIGEgYmx1ZSBiYWNrZ3JvdW5kICovXG4ucmFkaW8tY29udGFpbmVyIGlucHV0OmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya29yYW5nZTtcbn1cblxuLyogQ3JlYXRlIHRoZSBpbmRpY2F0b3IgKHRoZSBkb3QvY2lyY2xlIC0gaGlkZGVuIHdoZW4gbm90IGNoZWNrZWQpICovXG4uY2hlY2ttYXJrOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTaG93IHRoZSBpbmRpY2F0b3IgKGRvdC9jaXJjbGUpIHdoZW4gY2hlY2tlZCAqL1xuLnJhZGlvLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyazphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBTdHlsZSB0aGUgaW5kaWNhdG9yIChkb3QvY2lyY2xlKSAqL1xuLnJhZGlvLWNvbnRhaW5lciAuY2hlY2ttYXJrOmFmdGVyIHtcbiAgdG9wOiA2cHg7XG4gIGxlZnQ6IDZweDtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjYyAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG59XG5cbnNlbGVjdCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLmZhIHtcbiAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lICFpbXBvcnRhbnQ7XG59XG5cbi8qTG9nbyovXG4ucmFwaWRMb2dvIHtcbiAgd2lkdGg6IDExNnB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdXJsKFwiLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nXCIpIC0yMzEycHggLTEwcHggbm8tcmVwZWF0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yYXBpZExvZ28ge1xuICAgIHdpZHRoOiAxNDdweDtcbiAgICBoZWlnaHQ6IDM4cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZ1wiKSAtMjE1NXB4IC0xMHB4IG5vLXJlcGVhdDtcbiAgfVxufVxuXG4vKkVuZCBMb2dvKi9cbi5ob21lM0NvbCB7XG4gIGJhY2tncm91bmQ6ICNFRUU7XG4gIG1hcmdpbi10b3A6IDEuMDcxNDNyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMDcxNDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjA3MTQzcmVtO1xufVxuXG4uaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiB7XG4gIHBhZGRpbmc6IDEuMDcxNDNyZW0gMi4xNDI4NnJlbTtcbiAgbWFyZ2luLXRvcDogMS4wNzE0M3JlbTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbn1cblxuLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24ucHVuY2hvdXQtY29udGFjdCB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gLnB1bmNob3V0X2NvbnRhY3RzLXdyYXAgLnB1bmNob3V0X2NvbnRhY3RzLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiAucHVuY2hvdXRfY29udGFjdHMtd3JhcCAucHVuY2hvdXRfY29udGFjdHMtaXRlbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuXG4uaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiAucHVuY2hvdXRfY29udGFjdHMtd3JhcCAucHVuY2hvdXRfY29udGFjdHMtaXRlbSAucHVuY2hvdXRfY29udGFjdC1pbWcge1xuICB3aWR0aDogNTAlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiAucHVuY2hvdXRfY29udGFjdHMtd3JhcCAucHVuY2hvdXRfY29udGFjdHMtaXRlbSAucHVuY2hvdXRfY29udGFjdC1pbWcge1xuICAgIHdpZHRoOiAzNSU7XG4gIH1cbn1cblxuLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gLnB1bmNob3V0X2NvbnRhY3RzLXdyYXAgLnB1bmNob3V0X2NvbnRhY3RzLWl0ZW0gLnB1bmNob3V0X2NvbnRhY3QtZGV0YWlscyB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5ob21lM0NvbCAuaG9tZTNDb2xTZWN0aW9uIC5wdW5jaG91dF9jb250YWN0cy13cmFwIC5wdW5jaG91dF9jb250YWN0cy1pdGVtIC5wdW5jaG91dF9jb250YWN0LWRldGFpbHMgLmdyZXktdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ob21lM0NvbCAuaG9tZTNDb2xTZWN0aW9uIC5wdW5jaG91dF9jb250YWN0cy13cmFwIC5wdW5jaG91dF9jb250YWN0cy1pdGVtIC5wdW5jaG91dF9jb250YWN0LWRldGFpbHMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICB3aWR0aDogY2FsYyg2NSUgLSAxcmVtKTtcbiAgfVxufVxuXG4uaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbn1cblxuLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gdWwge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5ob21lM0NvbCAuaG9tZTNDb2xTZWN0aW9uIHVsIGxpIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gLm15YWNjb3VudC1vcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMGYwO1xuICBib3JkZXI6IHNvbGlkIDFweCAjZDBjZGNkO1xuICBwYWRkaW5nOiAwLjhyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gLm15YWNjb3VudC1vcHRpb24gaDQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uaG9tZTNDb2wgLmhvbWUzQ29sU2VjdGlvbiAubXlhY2NvdW50LW9wdGlvbiBoNCwgLmhvbWUzQ29sIC5ob21lM0NvbFNlY3Rpb24gLm15YWNjb3VudC1vcHRpb24gaSB7XG4gIGNvbG9yOiAjNDk0ODQ4O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucHJvcG9zaXRpb24tZGl2aWRlciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2FhYTtcbiAgfVxuICAucHJvcG9zaXRpb24tZGl2aWRlcjpudGgtY2hpbGQoMykge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJvcG9zaXRpb24tZGl2aWRlciB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2FhYTtcbiAgfVxuICAucHJvcG9zaXRpb24tZGl2aWRlcjpudGgtY2hpbGQoMykge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhYWE7XG4gIH1cbn1cblxuLnByb3Bvc2l0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhYWE7XG59XG5cbi5wcm9wb3NpdGlvbiBpbWcge1xuICBtYXgtaGVpZ2h0OiAyNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC44cmVtO1xufVxuXG4ucHJvcG9zaXRpb246bGFzdC1jaGlsZCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLnByb3Bvc2l0aW9uIGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICM0OTQ4NDg7XG59XG5cbi5wcm9wb3NpdGlvbiBoNCBhIHtcbiAgY29sb3I6ICM0OTQ4NDg7XG59XG5cbnVsLnJhcGlkQmVuZWZpdHMge1xuICBtYXJnaW4tbGVmdDogM3B4O1xufVxuXG51bC5yYXBpZEJlbmVmaXRzIGxpOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgbWFyZ2luOiAwIDNweCAwIC0ycHg7XG4gIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gIGNvbG9yOiAjMDYzYzdjO1xufVxuXG4uYmxhY2tMYXJnZUhlYWRpbmdIMSB7XG4gIG1hcmdpbi10b3A6IDAuNzE0MjlyZW07XG4gIGJhY2tncm91bmQ6ICMzMTMxMzE7XG4gIHBhZGRpbmc6IDEuMDcxNDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJsYWNrTGFyZ2VIZWFkaW5nSDEgYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYmxhY2tMYXJnZUhlYWRpbmdIMSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5ibGFja0xhcmdlSGVhZGluZyB7XG4gIGNvbG9yOiAjMDAwO1xuICBtYXJnaW46IDVweCA1cHggMTBweCA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxudGFibGUucXVpY2tPcmRlcldpZGdldCB7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbnRhYmxlLnF1aWNrT3JkZXJXaWRnZXQgdGJvZHksIHRhYmxlLnF1aWNrT3JkZXJXaWRnZXQgdGZvb3QsIHRhYmxlLnF1aWNrT3JkZXJXaWRnZXQgdGhlYWQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbnRhYmxlLnF1aWNrT3JkZXJXaWRnZXQgdGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG50YWJsZS5xdWlja09yZGVyV2lkZ2V0IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgd2lkdGg6IDYwJTtcbn1cblxudGFibGUucXVpY2tPcmRlcldpZGdldCB0ciB0ZDpmaXJzdC1jaGlsZCBpbnB1dCB7XG4gIHdpZHRoOiA5MCU7XG59XG5cbnRhYmxlLnF1aWNrT3JkZXJXaWRnZXQgdGQge1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbnRhYmxlLnF1aWNrT3JkZXJXaWRnZXQgdGQgaW5wdXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBwYWRkaW5nOiA1cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG59XG5cbi5leHRyYS1xdWljay1vcmRlci1vcHRpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tYm90dG9tOiAwLjZyZW07XG59XG5cbiNxdWlja0J1eUJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5ob21lTmV3c1NlY3Rpb24ge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlOGU1ZTU7XG4gIH1cbn1cblxuLmhvbWVOZXdzU2VjdGlvbiBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAwLjcxNDI5cmVtO1xuICBtYXJnaW4tdG9wOiAwLjM1NzE0cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNlY3Rpb25IZWFkZXIge1xuICBtYXJnaW4tdG9wOiAxLjA3MTQzcmVtO1xufVxuXG4uc2VjdGlvbkhlYWRlciBhIHtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4uaG9tZTJDb2wgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ob21lLXJpZ2h0QWR2ZXJ0cyBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5ob21lLXJpZ2h0QWR2ZXJ0cyBhOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMS40Mjg1N3JlbTtcbn1cblxuLnRleHQtaGlkZGVuIHtcbiAgZm9udC1zaXplOiAwO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbn1cbiIsIu+7vy8qXG5cblxuICAgTWFnaWMgMzYwIHY0LjYuOCBcbiAgIENvcHlyaWdodCAyMDE3IE1hZ2ljIFRvb2xib3hcbiAgIEJ1eSBhIGxpY2Vuc2U6IGh0dHBzOi8vd3d3Lm1hZ2ljdG9vbGJveC5jb20vbWFnaWMzNjAvXG4gICBMaWNlbnNlIGFncmVlbWVudDogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9saWNlbnNlL1xuXG5cbiovXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ21hZ2ljMzYwJztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBzcmM6IHVybCgnLi4vbWFnaWMtdG9vbGJveC1mb250cy9tYWdpYzM2MC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ21hZ2ljMzYwJztcbiAgICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9vY3RldC1zdHJlYW07YmFzZTY0LGQwOUdSZ0FCQUFBQUFBNUlBQThBQUFBQUdWQUFBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCSFUxVkNBQUFCV0FBQUFETUFBQUJDc1A2ejdVOVRMeklBQUFHTUFBQUFRd0FBQUZZK0lFa0ZZMjFoY0FBQUFkQUFBQUNBQUFBQ0NxbTE3U3RqZG5RZ0FBQUNVQUFBQUFvQUFBQUtBQUFBQUdad1oyMEFBQUpjQUFBRmxBQUFDM0NJa0pCWloyRnpjQUFBQi9BQUFBQUlBQUFBQ0FBQUFCQm5iSGxtQUFBSCtBQUFBMXNBQUFVZ1FYL2g4V2hsWVdRQUFBdFVBQUFBTUFBQUFEWUpQYW9WYUdobFlRQUFDNFFBQUFBZEFBQUFKQWM5QTE5b2JYUjRBQUFMcEFBQUFCOEFBQUEwTEhVQUFHeHZZMkVBQUF2RUFBQUFIQUFBQUJ3SHJnajJiV0Y0Y0FBQUMrQUFBQUFnQUFBQUlBQ2pDN051WVcxbEFBQU1BQUFBQVhjQUFBTE56SjBjSG5CdmMzUUFBQTE0QUFBQVp3QUFBTzB0N1JQRmNISmxjQUFBRGVBQUFBQmxBQUFBZTkxckE0VjRuR05nWkdCZzRHS1FZOUJoWUhSeDh3bGg0R0JnWVlBQWtBeGpUbVo2SWxBTXlnUEtzWUJwRGlCbWc0Z0NBSW9qQTA4QWVKeGpZR1RPWnB6QXdNckF3RlRGdEllQmdhRUhRak0rWURCa1pBS0tNckF5TTJBRkFXbXVLUXdPTHhoZWNETUgvYzlpaUdJT1lwZ0dGR1lFeVFFQTRxZ0xvd0I0bk8yUjNRMENNUXlEdjNMaCtMbU93Z0FNeEJOVE1aNjNPSnhjSkphZzBtY3BidG9IR3pnRGkzbVlnUEZta09kbGQ1Uy9jQzgvZU5aT3BLOXQzNjJrZW83U2szZkRQNjVjdUhMenU0M3BpNVgvbWFXZjN5UU9LczNHQ2FJbVcxR1QrYXJKeHRRNGFkUTRjOVE0ZmRTNEI5UmtrMnJjalZzOFlINEJzOEFmY1FBQUFBQUFBQUFBQUFBQUFIaWNyVlpwY3hOSEVKM1ZZY3MyUG9JUEVqYUJXY1p5akhaV21Nc0lFTWJzU2hiZ0hQS1Y3RUtPWFV0MjdvdFAvQWI5bWw2UlZKRnYvTFM4SGgzWVlDZFZWQ2hLL2FiMzdVejM2NTVlazlDU3hGNVlqNlRjZkNtbXRqWnBaT2RKU0Rkc1dvN2lROW5aQ3lsVFRQNHVpSUpvdGRTKzdUZ2tJaEtCcW5XRkpZTFk5OGpTSk9ORGp6SmF0aVc5YWxKdTZVbDMyUm9QNnEzNjl0UFFVWTdkQ1NVMW02RkQ2NUV0cWNLb0VrVXk3WkdTTmkzRDFWOUpXdUhuSzh4ODFRd2xndWdra3NhYllReVA1R2ZqakZZWnJjWjJIRVdSVFpZYlJZcEVNenlJSW8reVdtS2ZYREZCUVBtZ0dWSmUrVFNpZklRZmtSVjdsTk1LY2NsMm10LzNKVC9wSGM2L0pPSjZpN0lsQi81QWRtUUhlNmNyK1NMUzJncmpwcDFzUjZHSzhIUjlKOFFqbTVQcW4reFJYdE5vNEhaRnBpZk5DSmJLVjVCWStRbGw5Zy9KYXVGOHlwYzhHdFdTZzV3SVdpOXpZbC95RHJRZVIweUpheWJJZ3U2T1RvaWc3cGVjb2RoaityajQ0NzFkTEJjaEJNZzRsdldPU3JnUVJpbGhzNW9rYlFRNWlKS3lSWlhVZWtkTW5QSTZMZUl0WWI5TzdlaExaN1JKcURzeG5xMkhqcTJjcU9SNE5LblRUS1pPN2FUbTBaUUdVVW82RXp6bTF3R1VIOUVrcjdheG1zVEtvMmxzTTJNa2tWQ2doWE5wS29obEo1WTBCZEU4bXRHYnUyR2FhOWVpUlpvOFVNODllazl2Ym9XYk96Mm43Y0EvYS94bmRTcW1nNzB3blo0T3lFcDhtbmE1U2RHNmZucUdmeWJ4UTlZQ0twRXROc09VeFVPMmZnZmw1V05ManNKckEyejNudk1yNkgzMlJNaWtnZmdiOEI0djFTa0ZUSVdZVlZBTDNiVFd0U3pMMUdwV2kxUms2cnNoVFN0ZjFta0NUVGtPZldOZnhqaityNWtaUzB3SjMrL0U2ZGtSbDU2NTlpWElOSWZjWmwyUDVuVnFzVjJBem16UDZUVEw5bjJkNXRoK29OTTgyL002SFdGcjYzU1U3WWM2TGJEOVNLZGpiQzlvUVpQdU93UnlFWUZjd0FZU2diQjFFQWpiU3dpRXJVSWdiQmNSQ05zaUFtRzdoRURZZm94QTJDNGpFTGFYdGF5YWZpcHBIRHNUeXdCRmlBT2pPZTdJWlc0cVYxUEpwUkt1aTBhbk51UXBjcXVrb25oVy9Tc0QvZUtSTjZ5QnRVQzZSTmI4aWttdWZGU1Y0NCt1YUhuVHhMa0NqbFYvZTNOY254TVBaYjlZK0ZQd3Y5cWFxcVJYckhsa2NoVjVJOUNUNDBUWEpoV1BydW55dWFwSDEvK0xpZzVyZ1g0RHBSQUxSVm1XRGI2WmtQQlJwOU5RRFZ6bEVETWJNdy9YOWJwbHpjL2gvSnNZSVF2b2Z2dzNGQm9MM0lOT1dVbFo3V0N2MWRlUFpibTNCK1d3SjFpU1lyN002MXZoaTR6TVN2dEZaaWw3UHZKNXdCVXdLcFZocXcxY3JlRE5leEx6a09sTjhrd1F0eFZsZzZTTng1a2dzWUZqSGpCdnZwTWdKRXhkdFlIYUtaeXdnYnhnekNuWTc0UkRWRytVNVhCN29YMGVqWlIvYTFmc3lCa1ZUUkQ0YmZaRzJPdXpVUEpicklHRUo3L1UxMEJWSVUzRnVLbUFTeVBsaG1yd1lWeXQyMFl5VHFDdnFOZ055N0tLRHg5SDNIZEtqbVVnK1VnUnEwZEhQNjI5UXAzVXVmM0tLRzdmTy8wSWdrRnBZdjcydnBuaW9KUjN0WkpsVm0wRFU3Y2FsVlBYbXNQRnF3N2R6YVB1ZThmWkozTFdOTjEwVDl6MHZxWlZ0NE9EdVZrUTdkc2NsS1ZNTHFqcnd3NGJxTXZOcGREcVpWeVMzbllQTUN3d29OK2hGUnYvVi9keCtEeFhxZ3FqNDBpOW5hZ2ZvODlpRFBJUE9IOUg5UVhvNXpGTXVZYVU1M3VYRTU5dTNNUFpNbDNGWGF5ZjR0L0FyTFhtWnVrYWNFUFREWmlIckZvZHVzb05mS2NHT2ozUzNJNzBFUEN4N2dyeEFHQVR3R0x3aWU1YXh2TXBnUEY4eGh3ZjRIUG1NR2d5aDhFV2N4aHNNMmNOWUljNURIYVp3MkNQT1F5K1lNNDZ3SmZNWVJBeWgwSEVIQVpQbUJNQVBHVU9nNitZdytCcjVqRDRoam4zQWI1bERvT1lPUXdTNWpEWTEzUnJLSE9MRjNRWHFHMVFGZWpBOUJNVzk3QTQxRlFac3IvamhXRi9ieEN6ZnpDSXFUOXF1ajJrL3NRTFEvM1pJS2IrWWhCVGY5VjBaMGo5alJlRytydEJUUDNESUtZKzB5L0djcG5CWDBhK1M0VUR5aTQybi9QM3hQc0h3aHBBdGdBQkFBSC8vd0FQZUp5RmxNOXZFMGNVeCtmTlpIY1RoOWhadk40RlFVbWNDQzlTQ0s3SWo1VUFOWWtqRlpzRGEzTkNITkdLSCtGQVNUZ2dCTjUxeUFIMVFtU3RJRUtSbWt1clhpbzFha3V5RVFnT3VkamNMQTVWUVlRZWloQi9BaUlMYjJadGZpbW9sM2t6Yjk1OFA5L1ptVmxDQ1huM2hPMmdyNGxNdWtqN1h6R2xqZERCQVVpcnBtSmFZQ2hHV2pYZ0dSeHhxczVDdU9Rc1hBM1hIZm82WEwrMjRGVERYekFMUjY0U1Fyak9JcHRqdlUyZHJnNEpVTWN5aFJBSUdXdHhDdmJoQ2paMzkxejRqek5mZGNLL3B4WWRlbi9lZ2N5NXU2UU5OWDVpdDlnM1FrTWp1MGpYZUV4UGJlL2VwbEJvR3h6WWE2bHBDMDBwaG1JcWFsTVRoRkdUZGJ2aHN1ZlpZYVBpRmNzZTJKVUtIOVBycm1lNzNrVXYvSDNXdGVrQjF5MTZGYkEzYjdpelVNVHBBK0V5MXJ2dS83TVZOWTFjUUw1aHFSRHRDNUNQWDRnK1FwN3IybThibm11WEJSZjVMbXg0M3ZHeW0rYWtpazJ6bGJKZFJwTmhiNFc3bWFWWlhJU3B5dGJzWFVZeTBkVWhVN0h2VkwvWTk4Z1F0MkFPcFhETFRESDZSd3lMSGMxdjVGZnR6Y2Npd0VzUk5sWjVzUEl2OG9FTmQ2SVpSWVR3Um9EWlZiSTFjMmRLNjI0eFd6RGNiZ0tZSmFEQWlZWkNiMGJNbS9mc2xRSTgvMEhRNk1NWGhSVjc1U1QyQTV0ZVdiSHZmZjhjd3Q2QWoybjIzenpXa3VZOVdXYW5XQ2ZaUWI3RmV6S1kxdHI1ZmRNU1lPaWFyUFQzWmN5UjRlK2dCNnpSZ3oyZ1EwcUxReFlVdVM4TG1lRXhNRFBEbzliUVFSMStsb0ppVEV1OFNXaWc3KzRzQm5KY0hwZmdUNjIzbzltWDFrcGlYZ2VwWFFwS3NUMVlHTWR5dWcwTDVERVpubjR5aU12TmlwYkhnSjFnakJqQzQvNmVwUENZMHVUTUYxWU9BMXBwZWgrQXZvdzFNanlxZi9EK0d6b3JCVkszTkNiTFFiRVQ4WEUwL3JHcjdZbVZ1RmswY3dqSHRLTzBKa25qV0k4VnUzVWR6aXR5MUl0L01pdk9EazFlb1A3bjkwV054eFJHOE95U1puUjRocmdpZTAxeGVHcDBpZFl1RlJyNW1jbkptWHlqQUdjbWVPQ0pDYmh6dWRBb3pQeVJtOGJNZnhNem1BeC94V1k2MStMTjBhV3Y4UXlobll4QUVHSFZ5RU51bXN2bmNvSjM2eU9QTGwwK2huSHp3U1EzUkZVeEU1N0c1dEprNnd5bTJDdDI0c1AvaFBIL1VpcDZjY25vL2ZuMStaby9VZk1oOE91M3Nhbk4xMzM2WTkwUGovcTFMVFJpaWt5NXhtZVBsNit1MXVCc3RWNnQrVzMxS2w4TGI3Z1lac2g3ZndOTnJnQjRuR05nWkdCZ0FPSTlmZ0sxOGZ3Mlh4bTRtVjhBUlJndVN4dGJJZWovV2N3dm1JT0FYQTRHSnBBb0FCUjFDWmg0bkdOZ1pHQmdEdnFmQlNSZk1ERDgvdzhrZ1NJb2dCY0FoOVlGb2dBQUFIaWNZMzdCd01Bc0FjUXRRTHdBRFVkQ01GTTJFSVBrWDBBd0FNTkRCNXNBQUFBQUFBQWtBRVlBaEFEQ0FQd0JPQUdLQWRvQ0VnSk1BbTRDa0FBQkFBQUFEUUF4QUFRQUFBQUFBQUlBQUFBUUFITUFBQUFlQzNBQUFBQUFlSngxa010T3drQVVoditSaXdxSkdrM2NPaXNETVpaTElnc1NFaElNYkhSRERGdFRTbWxMU29kTUJ4SmV3M2Z3WVh3Sm44V2ZkakFHWXB2cGZPZWJNMmRPQjhBMXZpR1FQMDhjT1F1Y01jcjVCS2ZvV1M3UVAxc3VrbDhzbDFERm0rVXkvYnZsQ2g0UVdLN2lCaCtzSUlybmpCYjR0Q3h3SlM0dG4rQkMzRmt1MEQ5YUxwSjdsa3U0RmErV3kvU2U1UW9tSXJWY3hiMzRHcWpWVmtkQmFHUnRVSmZ0WnFzanAxdXBxS0xFamFXN05xSFNxZXpMdVVxTUg4Zks4ZFJ5ejJNL1dNZXUzb2Y3ZWVMck5GS0piRG5OdlJyNWlhOWQ0ODkyMWROTjBEWm1MdWRhTGVYUVpzaVZWZ3ZmTTA1b3pLcmJhUHc5RHdNb3JMQ0ZSc1NyQ21FZ1VhT3RjMjZqaVJZNnBDa3pKRFB6ckFnSlhNUTBMdGJjRVdZcktlTSt4NXhSUXVzekl5WTc4UGhkSHZreEtlRCttRlgwMGVwaFBDSHR6b2d5TDltWHcrNE9zMGFrSk10ME16djc3VDNGaHFlMWFRMTM3YnJVV1ZjU3c0TWFrdmV4VzF2UWVQUk9kaXVHdG9zRzMzLys3d2ZqYVlSUEFIaWNiY3c3Q29Bd0VBVFFIZisvUkMrU0lva1hzbEFRMXNabzQra1Z0TWlDVXczN21LV0UzalQwSDRVRUtUTGtLRkNpUW8wR0xUb29hR3IzT2F6WGJKYVRXWDg5YkJPenNTb2lZN3NZKzVnbVBnYXhmQTVpNitSako5Qkw5QUpIaVNQUkRWb0xQc1VBZUp4ajhON0JjQ0lvWWlNalkxL2tCc2FkSEF3Y0RNa0ZHeGxZblRZeU1HaEJhQTRVZWljREF3TW5Nb3Vad1dXakNtTkhZTVFHaDQ2SWpjd3BMaHZWUUx4ZEhBME1qQ3dPSGNraEVTQWxrVUN3a1lGSGF3ZmovOVlOTEwwYm1SaGNBQWZUSXJnQUFBQT0nKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKCdkYXRhOmFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbTtiYXNlNjQsQUFFQUFBQVBBSUFBQXdCd1IxTlZRckQrcyswQUFBRDhBQUFBUWs5VEx6SStJRWtGQUFBQlFBQUFBRlpqYldGd3FiWHRLd0FBQVpnQUFBSUtZM1owSUFBQUFBQUFBQTFZQUFBQUNtWndaMjJJa0pCWkFBQU5aQUFBQzNCbllYTndBQUFBRUFBQURWQUFBQUFJWjJ4NVprRi80ZkVBQUFPa0FBQUZJR2hsWVdRSlBhb1ZBQUFJeEFBQUFEWm9hR1ZoQnowRFh3QUFDUHdBQUFBa2FHMTBlQ3gxQUFBQUFBa2dBQUFBTkd4dlkyRUhyZ2oyQUFBSlZBQUFBQnh0WVhod0FLTUxzd0FBQ1hBQUFBQWdibUZ0WmN5ZEhCNEFBQW1RQUFBQ3pYQnZjM1F0N1JQRkFBQU1ZQUFBQU8xd2NtVnczV3NEaFFBQUdOUUFBQUI3QUFFQUFBQUtBQjRBTEFBQlJFWk1WQUFJQUFRQUFBQUFBQUFBQVFBQUFBRnNhV2RoQUFnQUFBQUJBQUFBQVFBRUFBUUFBQUFCQUFnQUFRQUdBQUFBQVFBQUFBQUFBUU5yQVpBQUJRQUFBbm9DdkFBQUFJd0NlZ0s4QUFBQjRBQXhBUUlBQUFJQUJRTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBVUdaRlpBQkE2QURvQ3dOUy8yb0FXZ05TQUpZQUFBQUJBQUFBQUFBQUFBQUFCUUFBQUFNQUFBQXNBQUFBQkFBQUFXb0FBUUFBQUFBQVpBQURBQUVBQUFBc0FBTUFDZ0FBQVdvQUJBQTRBQUFBQkFBRUFBRUFBT2dMLy84QUFPZ0EvLzhBQUFBQkFBUUFBQUFCQUFJQUF3QUVBQVVBQmdBSEFBZ0FDUUFLQUFzQURBQUFBUVlBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEQUFBQUFBQW9BQUFBQUFBQUFBTUFBRG9BQUFBNkFBQUFBQUJBQURvQVFBQTZBRUFBQUFDQUFEb0FnQUE2QUlBQUFBREFBRG9Bd0FBNkFNQUFBQUVBQURvQkFBQTZBUUFBQUFGQUFEb0JRQUE2QVVBQUFBR0FBRG9CZ0FBNkFZQUFBQUhBQURvQndBQTZBY0FBQUFJQUFEb0NBQUE2QWdBQUFBSkFBRG9DUUFBNkFrQUFBQUtBQURvQ2dBQTZBb0FBQUFMQUFEb0N3QUE2QXNBQUFBTUFBQUFBZ0FBLzlRREdBTHFBQVlBRFFBSXRRb0hCQUFDTFNzQklSRW5CeWMzQVJjSEZ5RVJGd0hjQVR4a2ttU1kvcUJrbUhyK3hHUUM2djdFZkpoa2t2Nm1aSkprQVR4NkFBQUFBZ0FBLzV3RGhBTWdBQVlBRFFBSXRRMEpCUUVDTFNzM0p5RVJKd2NuQVFjWElSRVhONXhxQVNoa2ttUURoSnBvL3Rwa2tKSmsvdGhxbkdRQ3ZKQmtBU1pvbWdBRUFBRC9ud09QQXgwQUJnQU5BQlFBR3dBTlFBb1dGUklRREFjQ0FRUXRLeVUzRVNFM0p6Y0JCeGNISndjUkFRY1hJUkVYTndFUkp3Y25OeWNERUgvK3NZQ0FULzdTZ1lCUWZvQUJUNEdCL3JHQWdBSjlmNEJQZjRCdmdQNndnbjlQQWk1L2YxQ0FnUUZQL1lOL2dnRlFnSUFDTHY2eGdZQlFmMzhBQkFBQS81OERqd01kQUFZQURRQVVBQnNBRFVBS0ZoVVNFQXdIQWdFRUxTc2xCeEVoQnhjSEFUY25OeGMzRVFFM0p5RVJKd2NCRVJjM0Z3Y1hBc0NBQVU5L2YwLzgwb0IvVDM2Qi9yR0FnQUZQZ1g4QjM0Q0FUbjUvSVlJQlVJQ0JUd0l2Z1g1UGZuLytzZjRnZ1lEK3NJS0NBaThCVDM5K1QzNkJBQVFBQVArZkE0OERIUUFHQUEwQUZBQWJBQTFBQ2hzWEV3OE5DUVlDQkMwckpUY1ZJemNuTndFSE5UTUhGd2NCSnpNVkp3Y25Bd2NYSXpVWE53TkhTTjlJdUUvOXkwamZTTGhQQWVaSTMwaTRUOSs0U045SXVEZEk0RWk1VHdHWFNOOUl1RThCQjBqZlNMaFAvb081U09CSXVBQUFCQUFBLzU4RGp3TWRBQVlBRFFBVUFCc0FEVUFLR1JVVUVBMEpCZ0lFTFNzbEJ6VXpCeGNIQVNjM0Z6Y1BBUU0zSnpNVkp3Y0JJelVYTnhjSEFvaEkzMGk0VC8ySXRrKzNTUUhlY0xoSTMwaTRBci9nU2JkUHQxaEkzMGk1VHdKNHQwKzJSdDRCL2lDNVNOOUl1UUl2NFVpMlQ3Y0FBQUFBQWdBQS83RURXZ01MQUJnQU1BQUl0UzBoRkFnQ0xTc0JGQThCRnhZVUJnY2pJaVluTlRRK0FSOEJOell5SHdFV0FSVVVEZ0V2QVFjR0lpOEJKalEvQVNjbU5EWTNNeklXQWFVRnVWQUtGQS82RHhRQkZod0xVTGtHRGdaQUJRRzBGQ0FKVUxrR0RnWkFCUVc2VVFvVUQvb1BGZ0VGQ0FXNVVRb2VGQUVXRHZvUEZBSU1VTGtHQmo4R0FkdjZEeFFDREZDNUJnWS9CZzRHdVZFS0hoUUJGZ0FBQUFBQ0FBRC91UU5TQXdNQUZ3QXdBQWkxTEI4VENBSXRLd0VWRkFZbUx3RUhCaUl2QVNZMFB3RW5KalEyT3dFeUZnRVVEd0VYRmhRR0t3RWlKamMxTkRZV0h3RTNOaklmQVJZQnJSWWNDMUc1QlJBRlB3WUd1VkFMRmc3NkRoWUJwUWE1VUFzV0R2b09GZ0VVSGdwUnVRWU9CajhHQVRyNkRoWUNDVkc2QlFWQUJSQUZ1VkFMSEJZV0FXa0hCcmxRQ3h3V0ZnNzZEaFlDQ1ZHNkJRVkFCUUFBQkFBQUFBQUNhd0tVQUFZQURRQVVBQnNBRFVBS0d4Y1JEZ29IQXdBRUxTc1RKd2MxTXdjWEJ4Y0hGeU0xRnlVbk55Y3pGU2NSTnhVak55YzN1bkZKMGtoelEwTnpTTkpKQVdaQmMwalNTVW5TU0hOQkFaZDBTZEpKYzdOQ2NralNTZVZCYzBuU1NQNm9TZEpJY2tJQUFBUUFBQUFBQW9RQ29BQUdBQTBBRkFBYkFBMUFDaHNYRVE0S0J3TUFCQzByRXhjM0ZTTTNKeE1uTnljekZTY0JGd2NYSXpVWEVRYzFNd2NYQjBKeVNkSkljMEpDYzBqU1NRR1BRWE5JMGtsSjBraHpRUUtnZEVyU1NIUDl2VU54U2RKSUFoRkJjMGpTU2Y1aVNOSkpjVU1BQUFBQUFnQUEvMm9ENkFOU0FBWUFEUUFJdFEwSkF3QUNMU3NWRVJjM0Z3Y1hFemNuSVJFbkI1VEtrTW1VUWNtVUFibVV5cFlCdVpUSmtNcVVBb3JLbFA1SGxNa0FBQUFDQUFEL2FnUG9BMUlBQmdBTkFBaTFDZ2NHQWdJdEt4VTNKeUVSSndjQkVSYzNGd2NYeVpRQnVaTEpBV2VTeXBMSmxBVEtrdjVIbE1rQitnRzVsTW1TeXBJQUFBRUFBQUFCQUFDOFRoQjlYdzg4OVFBTEErZ0FBQUFBMHhzek9nQUFBQURUR3pNNkFBRC9hZ1BvQTFJQUFBQUlBQUlBQUFBQUFBQUFBUUFBQTFML2FnQUFBK2dBQVAvL0ErZ0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFBMEQ2QUFBQXhnQUFBT0VBQUFEb0FBQUE2QUFBQU9nQUFBRG9BQUFBMWtBQUFOWkFBQUNhd0FBQW9RQUFBUG9BQUFENkFBQUFBQUFBQUFrQUVZQWhBRENBUHdCT0FHS0Fkb0NFZ0pNQW00Q2tBQUJBQUFBRFFBeEFBUUFBQUFBQUFJQUFBQVFBSE1BQUFBZUMzQUFBQUFBQUFBQUVnRGVBQUVBQUFBQUFBQUFOUUFBQUFFQUFBQUFBQUVBQ0FBMUFBRUFBQUFBQUFJQUJ3QTlBQUVBQUFBQUFBTUFDQUJFQUFFQUFBQUFBQVFBQ0FCTUFBRUFBQUFBQUFVQUN3QlVBQUVBQUFBQUFBWUFDQUJmQUFFQUFBQUFBQW9BS3dCbkFBRUFBQUFBQUFzQUV3Q1NBQU1BQVFRSkFBQUFhZ0NsQUFNQUFRUUpBQUVBRUFFUEFBTUFBUVFKQUFJQURnRWZBQU1BQVFRSkFBTUFFQUV0QUFNQUFRUUpBQVFBRUFFOUFBTUFBUVFKQUFVQUZnRk5BQU1BQVFRSkFBWUFFQUZqQUFNQUFRUUpBQW9BVmdGekFBTUFBUVFKQUFzQUpnSEpRMjl3ZVhKcFoyaDBJQ2hES1NBeU1ERTJJR0o1SUc5eWFXZHBibUZzSUdGMWRHaHZjbk1nUUNCbWIyNTBaV3hzYnk1amIyMW1iMjUwWld4c2IxSmxaM1ZzWVhKbWIyNTBaV3hzYjJadmJuUmxiR3h2Vm1WeWMybHZiaUF4TGpCbWIyNTBaV3hzYjBkbGJtVnlZWFJsWkNCaWVTQnpkbWN5ZEhSbUlHWnliMjBnUm05dWRHVnNiRzhnY0hKdmFtVmpkQzVvZEhSd09pOHZabTl1ZEdWc2JHOHVZMjl0QUVNQWJ3QndBSGtBY2dCcEFHY0FhQUIwQUNBQUtBQkRBQ2tBSUFBeUFEQUFNUUEyQUNBQVlnQjVBQ0FBYndCeUFHa0Fad0JwQUc0QVlRQnNBQ0FBWVFCMUFIUUFhQUJ2QUhJQWN3QWdBRUFBSUFCbUFHOEFiZ0IwQUdVQWJBQnNBRzhBTGdCakFHOEFiUUJtQUc4QWJnQjBBR1VBYkFCc0FHOEFVZ0JsQUdjQWRRQnNBR0VBY2dCbUFHOEFiZ0IwQUdVQWJBQnNBRzhBWmdCdkFHNEFkQUJsQUd3QWJBQnZBRllBWlFCeUFITUFhUUJ2QUc0QUlBQXhBQzRBTUFCbUFHOEFiZ0IwQUdVQWJBQnNBRzhBUndCbEFHNEFaUUJ5QUdFQWRBQmxBR1FBSUFCaUFIa0FJQUJ6QUhZQVp3QXlBSFFBZEFCbUFDQUFaZ0J5QUc4QWJRQWdBRVlBYndCdUFIUUFaUUJzQUd3QWJ3QWdBSEFBY2dCdkFHb0FaUUJqQUhRQUxnQm9BSFFBZEFCd0FEb0FMd0F2QUdZQWJ3QnVBSFFBWlFCc0FHd0Fid0F1QUdNQWJ3QnRBQUFBQUFJQUFBQUFBQUFBQ2dBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFEUUVDQVFNQkJBRUZBUVlCQndFSUFRa0JDZ0VMQVF3QkRRRU9BQXR5WlhOcGVtVXRablZzYkE1eVpYTnBlbVV0YzIxaGJHd3RNUTF5WlhOcGVtVXRablZzYkMweERISmxjMmw2WlMxemJXRnNiQTl5WlhOcGVtVXRablZzYkMxaGJIUVFjbVZ6YVhwbExYTnRZV3hzTFdGc2RBMXlaWE5wZW1VdFpuVnNiQzB5RG5KbGMybDZaUzF6YldGc2JDMHlEWEpsYzJsNlpTMW1kV3hzTFRNT2NtVnphWHBsTFhOdFlXeHNMVE1OY21WemFYcGxMV1oxYkd3dE5BNXlaWE5wZW1VdGMyMWhiR3d0TkFBQUFBQUFBQUVBQWYvL0FBOEFBQUFBQUFBQUFBQUFBQUN3QUN3Z3NBQlZXRVZaSUNCTHVBQU9VVXV3QmxOYVdMQTBHN0FvV1dCbUlJcFZXTEFDSldHNUNBQUlBR05qSTJJYklTR3dBRm13QUVNalJMSUFBUUJEWUVJdHNBRXNzQ0JnWmkyd0Fpd2daQ0N3d0ZDd0JDWmFzaWdCQ2tORlkwVlNXMWdoSXlFYmlsZ2dzRkJRV0NHd1FGa2JJTEE0VUZnaHNEaFpXU0N4QVFwRFJXTkZZV1N3S0ZCWUliRUJDa05GWTBVZ3NEQlFXQ0d3TUZrYklMREFVRmdnWmlDS2ltRWdzQXBRV0dBYklMQWdVRmdoc0FwZ0d5Q3dObEJZSWJBMllCdGdXVmxaRzdBQksxbFpJN0FBVUZobFdWa3RzQU1zSUVVZ3NBUWxZV1Fnc0FWRFVGaXdCU05Dc0FZalFoc2hJVm13QVdBdHNBUXNJeUVqSVNCa3NRVmlRaUN3QmlOQ3NRRUtRMFZqc1FFS1E3QUFZRVZqc0FNcUlTQ3dCa01naWlDS3NBRXJzVEFGSmJBRUpsRllZRkFiWVZKWldDTlpJU0N3UUZOWXNBRXJHeUd3UUZranNBQlFXR1ZaTGJBRkxMQUhReXV5QUFJQVEyQkNMYkFHTExBSEkwSWpJTEFBSTBKaHNBSmlackFCWTdBQllMQUZLaTJ3Qnl3Z0lFVWdzQXREWTdnRUFHSWdzQUJRV0xCQVlGbG1zQUZqWUVTd0FXQXRzQWdzc2djTEFFTkZRaW9oc2dBQkFFTmdRaTJ3Q1N5d0FFTWpSTElBQVFCRFlFSXRzQW9zSUNCRklMQUJLeU93QUVPd0JDVmdJRVdLSTJFZ1pDQ3dJRkJZSWJBQUc3QXdVRml3SUJ1d1FGbFpJN0FBVUZobFdiQURKU05oUkVTd0FXQXRzQXNzSUNCRklMQUJLeU93QUVPd0JDVmdJRVdLSTJFZ1pMQWtVRml3QUJ1d1FGa2pzQUJRV0dWWnNBTWxJMkZFUkxBQllDMndEQ3dnc0FBalFySUxDZ05GV0NFYkl5RlpLaUV0c0Ewc3NRSUNSYkJrWVVRdHNBNHNzQUZnSUNDd0RFTktzQUJRV0NDd0RDTkNXYkFOUTBxd0FGSllJTEFOSTBKWkxiQVBMQ0N3RUdKbXNBRmpJTGdFQUdPS0kyR3dEa05nSUlwZ0lMQU9JMElqTGJBUUxFdFVXTEVFWkVSWkpMQU5aU040TGJBUkxFdFJXRXRUV0xFRVpFUlpHeUZaSkxBVFpTTjRMYkFTTExFQUQwTlZXTEVQRDBPd0FXRkNzQThyV2JBQVE3QUNKVUt4REFJbFFyRU5BaVZDc0FFV0l5Q3dBeVZRV0xFQkFFTmdzQVFsUW9xS0lJb2pZYkFPS2lFanNBRmhJSW9qWWJBT0tpRWJzUUVBUTJDd0FpVkNzQUlsWWJBT0tpRlpzQXhEUjdBTlEwZGdzQUppSUxBQVVGaXdRR0JaWnJBQll5Q3dDME5qdUFRQVlpQ3dBRkJZc0VCZ1dXYXdBV05nc1FBQUV5TkVzQUZEc0FBK3NnRUJBVU5nUWkyd0V5d0FzUUFDUlZSWXNBOGpRaUJGc0FzalFyQUtJN0FBWUVJZ1lMQUJZYlVRRUFFQURnQkNRb3Bnc1JJR0s3QnlLeHNpV1Myd0ZDeXhBQk1yTGJBVkxMRUJFeXN0c0JZc3NRSVRLeTJ3Rnl5eEF4TXJMYkFZTExFRUV5c3RzQmtzc1FVVEt5MndHaXl4QmhNckxiQWJMTEVIRXlzdHNCd3NzUWdUS3kyd0hTeXhDUk1yTGJBZUxBQ3dEU3V4QUFKRlZGaXdEeU5DSUVXd0N5TkNzQW9qc0FCZ1FpQmdzQUZodFJBUUFRQU9BRUpDaW1DeEVnWXJzSElyR3lKWkxiQWZMTEVBSGlzdHNDQXNzUUVlS3kyd0lTeXhBaDRyTGJBaUxMRURIaXN0c0NNc3NRUWVLeTJ3SkN5eEJSNHJMYkFsTExFR0hpc3RzQ1lzc1FjZUt5MndKeXl4Q0I0ckxiQW9MTEVKSGlzdHNDa3NJRHl3QVdBdHNDb3NJR0N3RUdBZ1F5T3dBV0JEc0FJbFliQUJZTEFwS2lFdHNDc3NzQ29yc0NvcUxiQXNMQ0FnUnlBZ3NBdERZN2dFQUdJZ3NBQlFXTEJBWUZsbXNBRmpZQ05oT0NNZ2lsVllJRWNnSUxBTFEyTzRCQUJpSUxBQVVGaXdRR0JaWnJBQlkyQWpZVGdiSVZrdHNDMHNBTEVBQWtWVVdMQUJGckFzS3JBQkZUQWJJbGt0c0M0c0FMQU5LN0VBQWtWVVdMQUJGckFzS3JBQkZUQWJJbGt0c0M4c0lEV3dBV0F0c0RBc0FMQUJSV080QkFCaUlMQUFVRml3UUdCWlpyQUJZN0FCSzdBTFEyTzRCQUJpSUxBQVVGaXdRR0JaWnJBQlk3QUJLN0FBRnJRQUFBQUFBRVErSXppeEx3RVZLaTJ3TVN3Z1BDQkhJTEFMUTJPNEJBQmlJTEFBVUZpd1FHQlpackFCWTJDd0FFTmhPQzJ3TWl3dUZ6d3RzRE1zSUR3Z1J5Q3dDME5qdUFRQVlpQ3dBRkJZc0VCZ1dXYXdBV05nc0FCRFliQUJRMk00TGJBMExMRUNBQllsSUM0Z1I3QUFJMEt3QWlWSmlvcEhJMGNqWVNCWVloc2hXYkFCSTBLeU13RUJGUlFxTGJBMUxMQUFGckFFSmJBRUpVY2pSeU5oc0FsREsyV0tMaU1nSUR5S09DMndOaXl3QUJhd0JDV3dCQ1VnTGtjalJ5TmhJTEFFSTBLd0NVTXJJTEJnVUZnZ3NFQlJXTE1DSUFNZ0c3TUNKZ01hV1VKQ0l5Q3dDRU1naWlOSEkwY2pZU05HWUxBRVE3QUNZaUN3QUZCWXNFQmdXV2F3QVdOZ0lMQUJLeUNLaW1FZ3NBSkRZR1Fqc0FORFlXUlFXTEFDUTJFYnNBTkRZRm13QXlXd0FtSWdzQUJRV0xCQVlGbG1zQUZqWVNNZ0lMQUVKaU5HWVRnYkk3QUlRMGF3QWlXd0NFTkhJMGNqWVdBZ3NBUkRzQUppSUxBQVVGaXdRR0JaWnJBQlkyQWpJTEFCS3lPd0JFTmdzQUVyc0FVbFliQUZKYkFDWWlDd0FGQllzRUJnV1dhd0FXT3dCQ1poSUxBRUpXQmtJN0FESldCa1VGZ2hHeU1oV1NNZ0lMQUVKaU5HWVRoWkxiQTNMTEFBRmlBZ0lMQUZKaUF1UnlOSEkyRWpQRGd0c0Rnc3NBQVdJTEFJSTBJZ0lDQkdJMGV3QVNzallUZ3RzRGtzc0FBV3NBTWxzQUlsUnlOSEkyR3dBRlJZTGlBOEl5RWJzQUlsc0FJbFJ5TkhJMkVnc0FVbHNBUWxSeU5ISTJHd0JpV3dCU1ZKc0FJbFlia0lBQWdBWTJNaklGaGlHeUZaWTdnRUFHSWdzQUJRV0xCQVlGbG1zQUZqWUNNdUl5QWdQSW80SXlGWkxiQTZMTEFBRmlDd0NFTWdMa2NqUnlOaElHQ3dJR0Jtc0FKaUlMQUFVRml3UUdCWlpyQUJZeU1nSUR5S09DMndPeXdqSUM1R3NBSWxSbEpZSUR4WkxyRXJBUlFyTGJBOExDTWdMa2F3QWlWR1VGZ2dQRmt1c1NzQkZDc3RzRDBzSXlBdVJyQUNKVVpTV0NBOFdTTWdMa2F3QWlWR1VGZ2dQRmt1c1NzQkZDc3RzRDRzc0RVckl5QXVSckFDSlVaU1dDQThXUzZ4S3dFVUt5MndQeXl3Tml1S0lDQThzQVFqUW9vNEl5QXVSckFDSlVaU1dDQThXUzZ4S3dFVUs3QUVReTZ3S3lzdHNFQXNzQUFXc0FRbHNBUW1JQzVISTBjalliQUpReXNqSUR3Z0xpTTRzU3NCRkNzdHNFRXNzUWdFSlVLd0FCYXdCQ1d3QkNVZ0xrY2pSeU5oSUxBRUkwS3dDVU1ySUxCZ1VGZ2dzRUJSV0xNQ0lBTWdHN01DSmdNYVdVSkNJeUJIc0FSRHNBSmlJTEFBVUZpd1FHQlpackFCWTJBZ3NBRXJJSXFLWVNDd0FrTmdaQ093QTBOaFpGQllzQUpEWVJ1d0EwTmdXYkFESmJBQ1lpQ3dBRkJZc0VCZ1dXYXdBV05oc0FJbFJtRTRJeUE4SXpnYklTQWdSaU5Ic0FFckkyRTRJVm14S3dFVUt5MndRaXl3TlNzdXNTc0JGQ3N0c0VNc3NEWXJJU01nSUR5d0JDTkNJeml4S3dFVUs3QUVReTZ3S3lzdHNFUXNzQUFWSUVld0FDTkNzZ0FCQVJVVUV5NndNU290c0VVc3NBQVZJRWV3QUNOQ3NnQUJBUlVVRXk2d01Tb3RzRVlzc1FBQkZCT3dNaW90c0Vjc3NEUXFMYkJJTExBQUZrVWpJQzRnUm9vallUaXhLd0VVS3kyd1NTeXdDQ05Dc0VnckxiQktMTElBQUVFckxiQkxMTElBQVVFckxiQk1MTElCQUVFckxiQk5MTElCQVVFckxiQk9MTElBQUVJckxiQlBMTElBQVVJckxiQlFMTElCQUVJckxiQlJMTElCQVVJckxiQlNMTElBQUQ0ckxiQlRMTElBQVQ0ckxiQlVMTElCQUQ0ckxiQlZMTElCQVQ0ckxiQldMTElBQUVBckxiQlhMTElBQVVBckxiQllMTElCQUVBckxiQlpMTElCQVVBckxiQmFMTElBQUVNckxiQmJMTElBQVVNckxiQmNMTElCQUVNckxiQmRMTElCQVVNckxiQmVMTElBQUQ4ckxiQmZMTElBQVQ4ckxiQmdMTElCQUQ4ckxiQmhMTElCQVQ4ckxiQmlMTEEzS3k2eEt3RVVLeTJ3WXl5d055dXdPeXN0c0dRc3NEY3JzRHdyTGJCbExMQUFGckEzSzdBOUt5MndaaXl3T0NzdXNTc0JGQ3N0c0djc3NEZ3JzRHNyTGJCb0xMQTRLN0E4S3kyd2FTeXdPQ3V3UFNzdHNHb3NzRGtyTHJFckFSUXJMYkJyTExBNUs3QTdLeTJ3YkN5d09TdXdQQ3N0c0cwc3NEa3JzRDByTGJCdUxMQTZLeTZ4S3dFVUt5MndieXl3T2l1d095c3RzSEFzc0RvcnNEd3JMYkJ4TExBNks3QTlLeTJ3Y2l5ekNRUUNBMFZZSVJzaklWbENLN0FJWmJBREpGQjRzQUVWTUMwQVM3Z0F5RkpZc1FFQmpsbXdBYmtJQUFnQVkzQ3hBQVZDc1FBQUtyRUFCVUt4QUFncXNRQUZRckVBQ0NxeEFBVkN1UUFBQUFrcXNRQUZRcmtBQUFBSktyRURBRVN4SkFHSVVWaXdRSWhZc1FOa1JMRW1BWWhSV0xvSWdBQUJCRUNJWTFSWXNRTUFSRmxaV1ZteEFBd3F1QUgvaGJBRWpiRUNBRVFBJykgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG5cblxuLyogQ29yZSAqL1xuLk1hZ2ljMzYwLFxuLk1hZ2ljMzYwLWNvbnRhaW5lciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YzZjNmMztcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveCAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MCxcbi5NYWdpYzM2MC1mdWxsc2NyZWVuIC5NYWdpYzM2MCB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpYzM2MCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAwICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5NYWdpYzM2MC1jb250YWluZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbn1cblxuLk1hZ2ljMzYwLWNvbnRhaW5lciAuTWFnaWMzNjAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4uTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MC5tMzYwLXNwaW4teCB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cblxuLk1hZ2ljMzYwLWNvbnRhaW5lciAuTWFnaWMzNjAubTM2MC1zcGluLXkge1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG5cbi5NYWdpYzM2MC5kZXNrdG9wLnpvb20taW4ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgICBjdXJzb3I6IC1tb3otem9vbS1pbjtcbiAgICBjdXJzb3I6IHpvb20taW47XG59XG5cbi5NYWdpYzM2MCBpbWcge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5NYWdpYzM2MCA+IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEZ1bGxzY3JlZW4gaWNvbnMgKi9cbmJ1dHRvbi5tMzYwLWljb24ge1xuICAgIGNvbG9yOiAjYjRiNGI0ICFpbXBvcnRhbnQ7XG4gICAgZm9udDogbm9ybWFsIDkwMCAzMHB4LzEgJ21hZ2ljMzYwJyAhaW1wb3J0YW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE4MCwgMTgwLCAxODAsIDApICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBzcGVhazogbm9uZTtcbiAgICB3aWR0aDogNDRweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNDRweCAhaW1wb3J0YW50O1xuICAgIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xuICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5idXR0b24ubTM2MC1pY29uOmhvdmVyLFxuLm1vYmlsZS1tYWdpYyBidXR0b24ubTM2MC1pY29uOmFjdGl2ZSB7XG4gICAgY29sb3I6ICM1NTUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogcmdiYSg0OSwgNTEsIDYxLCAwLjc2KSAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubTM2MC1pY29uOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgZm9udDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubTM2MC1pY29uLm0zNjAtaWNvbi1mdWxsc2NyZWVuLW9wZW4sXG5idXR0b24ubTM2MC1pY29uLm0zNjAtaWNvbi1mdWxsc2NyZWVuLWNsb3NlIHtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICByaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubTM2MC1pY29uLm0zNjAtaWNvbi1mdWxsc2NyZWVuLWNsb3NlIHtcbiAgICB3aWR0aDogNjBweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogNjBweCAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubTM2MC1pY29uLm0zNjAtaWNvbi1mdWxsc2NyZWVuLW9wZW46YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlODAwJztcbn1cblxuYnV0dG9uLm0zNjAtaWNvbi5tMzYwLWljb24tZnVsbHNjcmVlbi1jbG9zZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU4MDEnO1xufVxuXG4ubHQtaWU5LW1hZ2ljIGJ1dHRvbi5tMzYwLWljb24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIGJ1dHRvbi5tMzYwLWljb246aG92ZXIge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xufVxuXG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuOi13ZWJraXQtZnVsbC1zY3JlZW4ge1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLmx0LWllNy1tYWdpYyAuTWFnaWMzNjAtY29udGFpbmVyIC5NYWdpYzM2MCB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW4ge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgei1pbmRleDogMjE0NzQ4MzY0MCAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbjotd2Via2l0LWZ1bGwtc2NyZWVuIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbjotbXMtZnVsbHNjcmVlbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uTWFnaWMzNjAtZnVsbHNjcmVlbiAuTWFnaWMzNjAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5NYWdpYzM2MC1tZXNzYWdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0FBQUFBQTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiA2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMzMlO1xuICAgIGxlZnQ6IDMzJTtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggIzAwMDtcbiAgICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG59XG5cbi5NYWdpYzM2MC1mdWxsc2NyZWVuIC5NYWdpYzM2MC1tZXNzYWdlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMxMzMzRDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDQ5LCA1MSwgNjEsIDAuNzYpO1xuICAgIGJvcmRlci1jb2xvcjogI2NjYztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0b3A6IDE1cHg7XG59XG5cblxuLyoqXG4gKiBIaW50ICYgTG9hZGVyXG4gKi9cbi5tMzYwLWhpbnQtbWVzc2FnZSxcbi5tMzYwLWxvYWRlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSg0OSwgNTEsIDYxLCAwLjc2KTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250OiBub3JtYWwgMTRweC8xLjJlbSAnTHVjaWRhIEdyYW5kZScsICdMdWNpZGEgU2FucyBVbmljb2RlJywgVmVyZGFuYSwgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5tMzYwLWhpbnQsXG4ubTM2MC1sb2FkZXIge1xuICAgIGRpcmVjdGlvbjogbHRyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xufVxuXG4ubTM2MC1oaW50IHtcbiAgICBib3R0b206IDhweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAgMTAlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB6LWluZGV4IDAuMjVzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB6LWluZGV4IDAuMjVzIGVhc2U7XG59XG5cbi5tMzYwLWhpbnQtbWVzc2FnZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBwYWRkaW5nOiAuM2VtIDEuNWVtO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubTM2MC1oaW50LW1lc3NhZ2U6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBSGdBQUFBcUNBWUFBQUI0SXA4dUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBMlJwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVNQzFqTURZd0lEWXhMakV6TkRjM055d2dNakF4TUM4d01pOHhNaTB4Tnpvek1qb3dNQ0FnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdUVTA5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5dGJTOGlJSGh0Ykc1ek9uTjBVbVZtUFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdmMxUjVjR1V2VW1WemIzVnlZMlZTWldZaklpQjRiV3h1Y3pwNGJYQTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzhpSUhodGNFMU5Pazl5YVdkcGJtRnNSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdlRzF3VFUwNlJHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEb3hRamhET0RNek5rTTNNRUl4TVVVelFrTXpORUpDUXpJMk9VRkdNVU5DUVNJZ2VHMXdUVTA2U1c1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRveFFqaERPRE16TlVNM01FSXhNVVV6UWtNek5FSkNRekkyT1VGR01VTkNRU0lnZUcxd09rTnlaV0YwYjNKVWIyOXNQU0pCWkc5aVpTQlFhRzkwYjNOb2IzQWdRMU0xSUZkcGJtUnZkM01pUGlBOGVHMXdUVTA2UkdWeWFYWmxaRVp5YjIwZ2MzUlNaV1k2YVc1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRwR1FUQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0lnYzNSU1pXWTZaRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSXZQaUE4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRnUEM5eVpHWTZVa1JHUGlBOEwzZzZlRzF3YldWMFlUNGdQRDk0Y0dGamEyVjBJR1Z1WkQwaWNpSS9QcTZtTmNJQUFBcWlTVVJCVkhqYTdGeDlhRlhuR2IvbmZuL2tmaWUyU3FxcEM5dWdxL1lEbkdXRjJuYXNtajhxT1A5d2hlbUdveFFIbG94MktPeXYrckV3a080VEptTVFLYVRVQnFsdHNPb2lnUkJhV1VpTmRqRnptZEZZalNSM0prWmprcHVQZS9mOFRwOVgzcDZlYys4NTk5d2J0NXY3d3N2OWZ0L25QTi9QNzNuUFZiTFpyS015eW5lNHpYNVJVWlNTRVZIdVNsWXEzcG5obTdPaTR4VUxOcTJvV2dXcnNOY1M3eFFONzdML0t3SlcyQk80YUhyNDlSek5lWnFaaXFEejhrN3dUZkFPZkp1bHVjRDhzeldjUlJLdW4yYlZ5Wk1uSCt2cjYzdXh2cjQrZ3Rlc1FFcEZqam1GRzlpMmJWdjgrdlhycjR5TmpiMEpIakx2UEVVSm9RalVacWJCQUlFaEluREYxTlRVc1N5UCtmbjV3YmEydHFmcHM2Z1pJWnVsNGY5MTV1QmQrUERodzkrZW01dnJFN3pMWkRMVGx5OWZmb1UraTlQMDV1S2RxYjF0RUtrd0FmSEp5Y2wzSU5mWjJkbGVla3lEMElXRmhhdTdkdTE2QkFxUVR4T1hvSURCT3g5NE56TXowMG04K29KNDJFeUdNY0JDbmlSTFhnY0ZZRVY0SUFKV05iQy92MzhMRVpScWIyOS9obDVYNDVFSUhnR2hkKzdjK1RPOWx5aUdKcGFaZ09IVklsZXZYdDFKMXZ2UGZmdjJmWU5lMThBZ3lFaDZ3RHNTL0NsNkw4bUtvQlFzWUJ2eHd5czBjR2hvNkZVV0pHSnY5WlVyVjM0aTNNMmhRNGUreVpwWVVEd3VRd0VMNjAyUWNDK2NPM2V1Z2QweFBGMmlzN1B6T1hoRDhLK2pvK05aNXAxenNRV01EVU93Vm1nZ0M5ZlBRZ1JCMVNLdXBGS3B0NkNkTEh5UFZTR1hvWURCdTZxelo4OCtUOWI2ZDRsM0xuNU1UazlQdDdFSC9BdC83bGxzQWFzdUJzSWJIUjNkS3lWVElENk1CQXZFaVZpTStNS0NyaW8zY0tVQUpvTlBzWW1KaWJkdjNyejVCaXUrV3dwN01TUlp6THN2MkUzNzlReWpsQUpXM1RQaVJVdEx5eHA2SG1UQk9kbHRuOHBxQnBVQnIrVnlOMHRJd0lKM3ZScmVDZmV0VmlVSWI1S2IxaldNVWdsWWRjK2JOMjlHUXZCdmV2NFFDODdQTTA2cC8rTkU0SVNjK25OR0hWeUV1bGdMdkhoNStqUlR2Ty9oN3pwTGxTTm9hRVBkdTRKRFcxd25pY0xySk53M2VNZFdIdFBMcG9zbFlCbHQ4WEV5OE5EeDQ4ZGZIaDhmLzRpZTE3R1E0eHd2bHRGY1FSYjdDeUhnZS9mdXRYSWNEdkk2Ymw1VEtaSkFaZm9DclBFUlpreU1hZE9iNG5NQnpBUjREZFAwV1dTeWFodzlQVDB2VFUxTkhlZTl2Wm9sY1IwSlZDRGdIVXBRb3poc1ptKzNTVXZ3aWl4NDkrN2RpWWFHaHUrdVdiTm1xNklvajF5N2R1MFB5V1J5cGNmalVhK0U0c1pzWTJQalQydHJhMXRJQzdmUSs5OGpZYmZ5bW41bVlGWUhrc3Zhc05UNzlPM1pzeWU2WThlT3A2TFI2S3BJSlBJZHA5TVpkN3ZkcS9VV0FDQkQzbVdjbVBrUGlvbERSNDRjK2F5cHFXbWlTUFFaMHJ4OCtmSnZVUmo3bk5mTTZHRDRHUkxzcFhBNDdQQjZ2WS9xWU5XMnNHaVpjV3AyZC83OCtXZnI2dW8yaGtLaFRTUkEvOGpJU0svUDV3c1RFZi9xNnVvNlFnVFBCQUtCelByMTYzdEI0TjY5ZTJIRjZkT25UNysrYWRPbUR6WnUzTmlCZGNtU0Q5UHZucWJITnFvQi83WjI3ZG91WnVDTUJVYm1wSStVenA5T3A3dUp0bTRJamhTd1YveVE2WE5RQnZ1RWVHL2x5cFZQa0FLRVZxMWF0ZVBBZ1FOLzNMOS8vNHhOK3ZMUzd2ZjdheWxUSGpKb0ttQ1BEQlNPK09wd3VWeTFCczJjZ2dsd3N4dU9kM2QzZngrSkZFcWVHemR1L0p5VEFyamp1bHUzYnIxLzVzeVpIOUh6aDluRmhkZzZQVkxzQ3pOa0tUNlBZUTJzaFRXeE52YVE2c0I4dGJJWitoSzhYbFJ5dlZYOEc1RW5oS1QzSS94ZE5jUllwYytpaXdaZllxUjhMWDE5ZlpzTmtpZXNYNFVTVkNDLzlmWDFOVXkzN1Jpc2xqL0FSeWxHdkEvb2JIQnc4TWZNdENoZkpCS3FaYVNCWjQ0ZE8vWU1FK25TY1NPSzVENWRVcHdNTUZNVFdCdkpCdmJDbnBxU3diQTh5ME9mVDNMWkxpbTdWelRUS1hrQ3Q1U0loYXpRWjVISjJDTkd2UHVZcytPZ2dZQ0RBSWhFRGtOaHA0NzVaa3ZBY29aM0FUVVlvMUJ4Q2NSd0NneVZ0UHRUdHBpQUJmY2hHT3NXR1RmMndGN1lFM3ZuV004c2ZZcE5sTWtTZlFVSUdHVmtPM3Uya01HMUJpQlVJZURtNXViSDlMNXI5ZnB3WVpIaDRlSGRuTDI5eDVsdmxTYWp2QSt6TVlQOUJjUUhZZDFZdXdaN1lVL3N6VmJpTkNqUGN0Slh4RTZQYWZvS0VYQWU0MURZc2hOQ3dLMnRyVThXS3VDdnVRY2tIS29LQlFJYnlDMGxOUzVQdURwUTdVcWxVck1HQkFxMzU5YXBMNFdWcUdVTjlzQmVxdi85Y3UrY01UZ1hmWlJnT1pVOEI2Q1VMNGVMSnI1ZmJQcUtWZks1S2U2NmRCVGNNa2prMUtUbmN5ZE9uUGlRSlA4ZktpK1c3ZHk1ODhUUTBOQVBXYVBDckVVcVFFRGx4VjBpSXE0VDM1d2JObXlvb1ZuTkZoQ1V3QVRCUEx3WHhOcllBM3RoVCt6TnAwSDBUTXNzZlQ0U25KY0Y2QkpDRjZPRTlKa2V4THQ3Vk1McE5mUkJXM1ZuWitlVFc3ZHVEWWszS2FHZGxnNEFLSGEwUjhWSjBlRkFDMUJxNEE4QVVlRzRzWnptNnJ0MzczNXk4T0RCNXpSWk5CZ1RRZnpBNzhmSHh3OXhjcEpnQVloRUppNTZuNHgwcGJpckVzdVJTWnVsTHlsbDBuR21MVndxK2dwTXN0clFOZEpKc3JCMkhJbWREUE1DRmFUUzlKZE1ZNkY3ZjZVTkdFTjhSVG92R3ZoaUVIRXBxaTNiVVlqMzkvZi83dWpSb3cxRTdBc2NKOENvQko1TFAwa2pobkc1RVJOdE1lbXpGbzdsc1h4OVl6UDBRUmpJVXRIY0FQNk5yZzFtcWVncnNFeDZCMzEwblRJSlhpUUtZV3F1YVpKN3huNjdBaFpNOUxDMkpKREJnVm5JL0lBcFU0S1F2WDM3TmdTZEpTdEdTd3NXbERVenFIai9QWmN6TWF6SjJhR3dIck90eEp6MFpXMk1RdWl6eUdSWWFIUnNiT3pYcUxYWnU3aTBVQ1p3ZXhuTDUwNWNRa3VESFN4YXJtRkRyTDFKRk55azZWc3VYcno0VzNKdkY0Z2h3NlJ0bjZmVDZaRmNqQU1reVBWcVhJSXJCZmJyTFFDWE5xUVBBQUl4OERld1BIUnNNTVVKazFMUVo1SEo2aWtZQ0JjMFNtMVdyUnRQeU8xV2lzc1A2OVhNeFdnMnlIV2hseThZVEtpbFF2MW5vNk9qNzlMelJ4bmRTc2dUTVF4YVNOLzVGUk1ZWThhNWRFQUh1NTBqbWI2bzFQZ3duTVdpcjVCbUE4SUI0ckJCczBFOUVJQjhBcnJIcDJWaWVnQlFLZHFGd25MQ1RVMU5qNVBsZnNaSlZsUURBK0lZNk91TmpZMnJwVnJWNHloQmlhRzVHRm5nSGlscDhtdnBRMDNMQ0ZIQ0pFeGFySGFoSHdvRnIySFFMaFI1aHVyS0pjVmIxSWEveURRSE9makxCYnRBdThDNGFwN0JValg2Q3dBMlpEemI3N0I1L3RoR3c3K0hzLzRxVGNOZjhDL0lodU56R0p5c0xBVG9NRjNLWVgxS2JEcTJiOS8rb29UN2ZxVkxOVEF3OEJLNW91WlNXUzhERjVZbTE3RG9ERTJoNDhWMWJjYXhlRVBsSGZHbGM5MjZkVCtROEhKaEhBRVdycHd4TC9yZElTcU1oMVNmajNjS1YzUGZlZ0hRTTZUNFY2TVRDVXYweUk0S3BLRFpnSTZWNCt1SDdoSTRxY3BaL2RzNW9OdVNINXYxSVd0RmxpZmR4UUROaTRzRUFVUnlRVjkyaCsxc01GbVIzZlNsUzVlMlNhVllFb0NLeU83NThIdklWZ1p2OS9BMmluSWl0SXM3TFRWNHhHcyt2TjNCeFBzY2xZUHZXZzhZZ1hCUndqRUlVd05VVFNCb2ZLUW41MDBEcFJhd1UyU0Vvam1PZ2x5Y3pBY0t4SGM3UlBLNTU2Vjg2d3J1NmFKeWJRem9tNEJmOGNnUTZnTzlkVVZZY1podlZ4bVc0VDlHYXZMZVFMVkVCU3lzT0lSU0RaN09BUGYyT0I3Z3pXY3liQmlGeHFGdW84VGdUOUl4RjUrWjJMdEVCU3pLdFRCeUdTU3NBRFVzNFBLbTlsWk1uNTAxYnJQS3NLRkFaY1NKeEhrekpjZ1MvbzhPTFRBajN6eS9rSzg4TWdWRkZrSEFEaDFZTCt1dzhEY0VsVDlodWM4M3BkaDhLOVovZEJUdFB5V1c2TWlXQ3RDby9NdE9tUThsVy9ranRMSWUveFZnQU9TRFMyMC9wTUZOQUFBQUFFbEZUa1N1UW1DQycpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtaW1hZ2Utc2V0KCB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBSGdBQUFBcUNBWUFBQUI0SXA4dUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBMlJwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVNQzFqTURZd0lEWXhMakV6TkRjM055d2dNakF4TUM4d01pOHhNaTB4Tnpvek1qb3dNQ0FnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdUVTA5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5dGJTOGlJSGh0Ykc1ek9uTjBVbVZtUFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdmMxUjVjR1V2VW1WemIzVnlZMlZTWldZaklpQjRiV3h1Y3pwNGJYQTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzhpSUhodGNFMU5Pazl5YVdkcGJtRnNSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdlRzF3VFUwNlJHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEb3hRamhET0RNek5rTTNNRUl4TVVVelFrTXpORUpDUXpJMk9VRkdNVU5DUVNJZ2VHMXdUVTA2U1c1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRveFFqaERPRE16TlVNM01FSXhNVVV6UWtNek5FSkNRekkyT1VGR01VTkNRU0lnZUcxd09rTnlaV0YwYjNKVWIyOXNQU0pCWkc5aVpTQlFhRzkwYjNOb2IzQWdRMU0xSUZkcGJtUnZkM01pUGlBOGVHMXdUVTA2UkdWeWFYWmxaRVp5YjIwZ2MzUlNaV1k2YVc1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRwR1FUQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0lnYzNSU1pXWTZaRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSXZQaUE4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRnUEM5eVpHWTZVa1JHUGlBOEwzZzZlRzF3YldWMFlUNGdQRDk0Y0dGamEyVjBJR1Z1WkQwaWNpSS9QcTZtTmNJQUFBcWlTVVJCVkhqYTdGeDlhRlhuR2IvbmZuL2tmaWUyU3FxcEM5dWdxL1lEbkdXRjJuYXNtajhxT1A5d2hlbUdveFFIbG94MktPeXYrckV3a080VEptTVFLYVRVQnFsdHNPb2lnUkJhV1VpTmRqRnptZEZZalNSM0prWmprcHVQZS9mOFRwOVgzcDZlYys4NTk5d2J0NXY3d3N2OWZ0L25QTi9QNzNuUFZiTFpyS015eW5lNHpYNVJVWlNTRVZIdVNsWXEzcG5obTdPaTR4VUxOcTJvV2dXcnNOY1M3eFFONzdML0t3SlcyQk80YUhyNDlSek5lWnFaaXFEejhrN3dUZkFPZkp1bHVjRDhzeldjUlJLdW4yYlZ5Wk1uSCt2cjYzdXh2cjQrZ3Rlc1FFcEZqam1GRzlpMmJWdjgrdlhycjR5TmpiMEpIakx2UEVVSm9RalVacWJCQUlFaEluREYxTlRVc1N5UCtmbjV3YmEydHFmcHM2Z1pJWnVsNGY5MTV1QmQrUERodzkrZW01dnJFN3pMWkRMVGx5OWZmb1UraTlQMDV1S2RxYjF0RUtrd0FmSEp5Y2wzSU5mWjJkbGVla3lEMElXRmhhdTdkdTE2QkFxUVR4T1hvSURCT3g5NE56TXowMG04K29KNDJFeUdNY0JDbmlSTFhnY0ZZRVY0SUFKV05iQy92MzhMRVpScWIyOS9obDVYNDVFSUhnR2hkKzdjK1RPOWx5aUdKcGFaZ09IVklsZXZYdDFKMXZ2UGZmdjJmWU5lMThBZ3lFaDZ3RHNTL0NsNkw4bUtvQlFzWUJ2eHd5czBjR2hvNkZVV0pHSnY5WlVyVjM0aTNNMmhRNGUreVpwWVVEd3VRd0VMNjAyUWNDK2NPM2V1Z2QweFBGMmlzN1B6T1hoRDhLK2pvK05aNXAxenNRV01EVU93Vm1nZ0M5ZlBRZ1JCMVNLdXBGS3B0NkNkTEh5UFZTR1hvWURCdTZxelo4OCtUOWI2ZDRsM0xuNU1UazlQdDdFSC9BdC83bGxzQWFzdUJzSWJIUjNkS3lWVElENk1CQXZFaVZpTStNS0NyaW8zY0tVQUpvTlBzWW1KaWJkdjNyejVCaXUrV3dwN01TUlp6THN2MkUzNzlReWpsQUpXM1RQaVJVdEx5eHA2SG1UQk9kbHRuOHBxQnBVQnIrVnlOMHRJd0lKM3ZScmVDZmV0VmlVSWI1S2IxaldNVWdsWWRjK2JOMjlHUXZCdmV2NFFDODdQTTA2cC8rTkU0SVNjK25OR0hWeUV1bGdMdkhoNStqUlR2Ty9oN3pwTGxTTm9hRVBkdTRKRFcxd25pY0xySk53M2VNZFdIdFBMcG9zbFlCbHQ4WEV5OE5EeDQ4ZGZIaDhmLzRpZTE3R1E0eHd2bHRGY1FSYjdDeUhnZS9mdXRYSWNEdkk2Ymw1VEtaSkFaZm9DclBFUlpreU1hZE9iNG5NQnpBUjREZFAwV1dTeWFodzlQVDB2VFUxTkhlZTl2Wm9sY1IwSlZDRGdIVXBRb3poc1ptKzNTVXZ3aWl4NDkrN2RpWWFHaHUrdVdiTm1xNklvajF5N2R1MFB5V1J5cGNmalVhK0U0c1pzWTJQalQydHJhMXRJQzdmUSs5OGpZYmZ5bW41bVlGWUhrc3Zhc05UNzlPM1pzeWU2WThlT3A2TFI2S3BJSlBJZHA5TVpkN3ZkcS9VV0FDQkQzbVdjbVBrUGlvbERSNDRjK2F5cHFXbWlTUFFaMHJ4OCtmSnZVUmo3bk5mTTZHRDRHUkxzcFhBNDdQQjZ2WS9xWU5XMnNHaVpjV3AyZC83OCtXZnI2dW8yaGtLaFRTUkEvOGpJU0svUDV3c1RFZi9xNnVvNlFnVFBCQUtCelByMTYzdEI0TjY5ZTJIRjZkT25UNysrYWRPbUR6WnUzTmlCZGNtU0Q5UHZucWJITnFvQi83WjI3ZG91WnVDTUJVYm1wSStVenA5T3A3dUp0bTRJamhTd1YveVE2WE5RQnZ1RWVHL2x5cFZQa0FLRVZxMWF0ZVBBZ1FOLzNMOS8vNHhOK3ZMUzd2ZjdheWxUSGpKb0ttQ1BEQlNPK09wd3VWeTFCczJjZ2dsd3N4dU9kM2QzZngrSkZFcWVHemR1L0p5VEFyamp1bHUzYnIxLzVzeVpIOUh6aDluRmhkZzZQVkxzQ3pOa0tUNlBZUTJzaFRXeE52YVE2c0I4dGJJWitoSzhYbFJ5dlZYOEc1RW5oS1QzSS94ZE5jUllwYytpaXdaZllxUjhMWDE5ZlpzTmtpZXNYNFVTVkNDLzlmWDFOVXkzN1Jpc2xqL0FSeWxHdkEvb2JIQnc4TWZNdENoZkpCS3FaYVNCWjQ0ZE8vWU1FK25TY1NPSzVENWRVcHdNTUZNVFdCdkpCdmJDbnBxU3diQTh5ME9mVDNMWkxpbTdWelRUS1hrQ3Q1U0loYXpRWjVISjJDTkd2UHVZcytPZ2dZQ0RBSWhFRGtOaHA0NzVaa3ZBY29aM0FUVVlvMUJ4Q2NSd0NneVZ0UHRUdHBpQUJmY2hHT3NXR1RmMndGN1lFM3ZuV004c2ZZcE5sTWtTZlFVSUdHVmtPM3Uya01HMUJpQlVJZURtNXViSDlMNXI5ZnB3WVpIaDRlSGRuTDI5eDVsdmxTYWp2QSt6TVlQOUJjUUhZZDFZdXdaN1lVL3N6VmJpTkNqUGN0Slh4RTZQYWZvS0VYQWU0MURZc2hOQ3dLMnRyVThXS3VDdnVRY2tIS29LQlFJYnlDMGxOUzVQdURwUTdVcWxVck1HQkFxMzU5YXBMNFdWcUdVTjlzQmVxdi85Y3UrY01UZ1hmWlJnT1pVOEI2Q1VMNGVMSnI1ZmJQcUtWZks1S2U2NmRCVGNNa2prMUtUbmN5ZE9uUGlRSlA4ZktpK1c3ZHk1ODhUUTBOQVBXYVBDckVVcVFFRGx4VjBpSXE0VDM1d2JObXlvb1ZuTkZoQ1V3QVRCUEx3WHhOcllBM3RoVCt6TnAwSDBUTXNzZlQ0U25KY0Y2QkpDRjZPRTlKa2V4THQ3Vk1McE5mUkJXM1ZuWitlVFc3ZHVEWWszS2FHZGxnNEFLSGEwUjhWSjBlRkFDMUJxNEE4QVVlRzRzWnptNnJ0MzczNXk4T0RCNXpSWk5CZ1RRZnpBNzhmSHh3OXhjcEpnQVloRUppNTZuNHgwcGJpckVzdVJTWnVsTHlsbDBuR21MVndxK2dwTXN0clFOZEpKc3JCMkhJbWREUE1DRmFUUzlKZE1ZNkY3ZjZVTkdFTjhSVG92R3ZoaUVIRXBxaTNiVVlqMzkvZi83dWpSb3cxRTdBc2NKOENvQko1TFAwa2pobkc1RVJOdE1lbXpGbzdsc1h4OVl6UDBRUmpJVXRIY0FQNk5yZzFtcWVncnNFeDZCMzEwblRJSlhpUUtZV3F1YVpKN3huNjdBaFpNOUxDMkpKREJnVm5JL0lBcFU0S1F2WDM3TmdTZEpTdEdTd3NXbERVenFIai9QWmN6TWF6SjJhR3dIck90eEp6MFpXMk1RdWl6eUdSWWFIUnNiT3pYcUxYWnU3aTBVQ1p3ZXhuTDUwNWNRa3VESFN4YXJtRkRyTDFKRk55azZWc3VYcno0VzNKdkY0Z2h3NlJ0bjZmVDZaRmNqQU1reVBWcVhJSXJCZmJyTFFDWE5xUVBBQUl4OERld1BIUnNNTVVKazFMUVo1SEo2aWtZQ0JjMFNtMVdyUnRQeU8xV2lzc1A2OVhNeFdnMnlIV2hseThZVEtpbFF2MW5vNk9qNzlMelJ4bmRTc2dUTVF4YVNOLzVGUk1ZWThhNWRFQUh1NTBqbWI2bzFQZ3duTVdpcjVCbUE4SUI0ckJCczBFOUVJQjhBcnJIcDJWaWVnQlFLZHFGd25MQ1RVMU5qNVBsZnNaSlZsUURBK0lZNk91TmpZMnJwVnJWNHloQmlhRzVHRm5nSGlscDhtdnBRMDNMQ0ZIQ0pFeGFySGFoSHdvRnIySFFMaFI1aHVyS0pjVmIxSWEveURRSE9makxCYnRBdThDNGFwN0JValg2Q3dBMlpEemI3N0I1L3RoR3c3K0hzLzRxVGNOZjhDL0lodU56R0p5c0xBVG9NRjNLWVgxS2JEcTJiOS8rb29UN2ZxVkxOVEF3OEJLNW91WlNXUzhERjVZbTE3RG9ERTJoNDhWMWJjYXhlRVBsSGZHbGM5MjZkVCtROEhKaEhBRVdycHd4TC9yZElTcU1oMVNmajNjS1YzUGZlZ0hRTTZUNFY2TVRDVXYweUk0S3BLRFpnSTZWNCt1SDdoSTRxY3BaL2RzNW9OdVNINXYxSVd0RmxpZmR4UUROaTRzRUFVUnlRVjkyaCsxc01GbVIzZlNsUzVlMlNhVllFb0NLeU83NThIdklWZ1p2OS9BMmluSWl0SXM3TFRWNHhHcyt2TjNCeFBzY2xZUHZXZzhZZ1hCUndqRUlVd05VVFNCb2ZLUW41MDBEcFJhd1UyU0Vvam1PZ2x5Y3pBY0t4SGM3UlBLNTU2Vjg2d3J1NmFKeWJRem9tNEJmOGNnUTZnTzlkVVZZY1podlZ4bVc0VDlHYXZMZVFMVkVCU3lzT0lSU0RaN09BUGYyT0I3Z3pXY3liQmlGeHFGdW84VGdUOUl4RjUrWjJMdEVCU3pLdFRCeUdTU3NBRFVzNFBLbTlsWk1uNTAxYnJQS3NLRkFaY1NKeEhrekpjZ1MvbzhPTFRBajN6eS9rSzg4TWdWRkZrSEFEaDFZTCt1dzhEY0VsVDlodWM4M3BkaDhLOVovZEJUdFB5V1c2TWlXQ3RDby9NdE9tUThsVy9ranRMSWUveFZnQU9TRFMyMC9wTUZOQUFBQUFFbEZUa1N1UW1DQycpIDF4LCB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBUEFBQUFCVUNBWUFBQUM4MkxwcUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBMlJwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVNQzFqTURZd0lEWXhMakV6TkRjM055d2dNakF4TUM4d01pOHhNaTB4Tnpvek1qb3dNQ0FnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdUVTA5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5dGJTOGlJSGh0Ykc1ek9uTjBVbVZtUFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdmMxUjVjR1V2VW1WemIzVnlZMlZTWldZaklpQjRiV3h1Y3pwNGJYQTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzhpSUhodGNFMU5Pazl5YVdkcGJtRnNSRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSWdlRzF3VFUwNlJHOWpkVzFsYm5SSlJEMGllRzF3TG1ScFpEb3hOVFEyTkRkRU1VTTNNRUl4TVVVelFqSTJRa0kyTlRaRU9VWkRNamMyT1NJZ2VHMXdUVTA2U1c1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRveE5UUTJORGRFTUVNM01FSXhNVVV6UWpJMlFrSTJOVFpFT1VaRE1qYzJPU0lnZUcxd09rTnlaV0YwYjNKVWIyOXNQU0pCWkc5aVpTQlFhRzkwYjNOb2IzQWdRMU0xSUZkcGJtUnZkM01pUGlBOGVHMXdUVTA2UkdWeWFYWmxaRVp5YjIwZ2MzUlNaV1k2YVc1emRHRnVZMlZKUkQwaWVHMXdMbWxwWkRwR1FUQTFNMEUzUWpBNFF6ZEZNekV4T1RVeFFqaENOemN3TURoRFFqTXdPQ0lnYzNSU1pXWTZaRzlqZFcxbGJuUkpSRDBpZUcxd0xtUnBaRHBHT1RBMU0wRTNRakE0UXpkRk16RXhPVFV4UWpoQ056Y3dNRGhEUWpNd09DSXZQaUE4TDNKa1pqcEVaWE5qY21sd2RHbHZiajRnUEM5eVpHWTZVa1JHUGlBOEwzZzZlRzF3YldWMFlUNGdQRDk0Y0dGamEyVjBJR1Z1WkQwaWNpSS9Qak1HVEtzQUFCeUhTVVJCVkhqYTdGMExrRlJWZWo3OW5PNTU5RHlZRVVmRUFTRXhZSlJGQzhOS1FLZ2t1MXZSNkdyY0RldWp5a1JyVGJSaWFyZFNjYXdLZVdoOHNCVmRIOUVzdFVRUkRiQUdqVXV4dTFoZ3NHQlZsTUlIS2pEb3pEQTZQR1pHWjJCZ0dLYW5Iem4vOWZ3OS96MTlidmU5M2JkZnpEbFZwM3FtKy9hOTUvejlmK2Yvei84Nm5tUXl5WFRUVGJmS2JGNU5BdDEwMHdEV1RUZmROSUIxMDAwM0o4MnZTYURiMmRROEhrL1pqOUZOdTVOL01oUFNiV0xxcHB1V3dOSTZRTEdtZnk3ZGlzUnJ5clZlQTlnK0VUMFpBSnpVZ05hdFFEem5zUUJ5a3ZTeTRqMS9HUkxSYTBGTUlGcENJcVFHc203NThwMkg4SjNNZTBtSjd4TGxCbUovR1JMUlIxNTlFbmhqNGpWTzN2Tm9FT3VXSTk4aFlKSFgvQXBNSUo5RkJkOGxSQWY3U2JMVXRoNXZtWURYU3dnWUVqMUFWa1dmK0QvTWU1VzR6a3ZHNzlIOHFGc080S1c4VlVYQjI5N2VIaUhYK2doUG9vRHhlTXJBVXVzdEUvQjZCWEZDT0tZOWUvWXNHQndjL1BHcFU2Y2U0Ni90R3pkdWJDTmFRMGdCWXQxMHkwWGpBNzRMd3Y4N2R1eTQ1TXlaTSt1NVlQM3E0WWNmN2s0a0VwOEQvejM2NktQTjRub0V1VTlTdDB2WHdJMVNpRzZUa0Q1QnZHcmVtNkJ2M3J6NThtZzB1aWVaM21KRFEwT1B6cDQ5dTBWYzJ5Z2tjb0FRczJ6bXIzdHB1azNKNnhkZ3JFVys2K3ZyK3dmZ01RWGZKVG1RQjdoQStUWmV5M3VONEZ0Zkxuem42bnhMU0VpcUZnTVltN1p2My82SFFLeGtobmI2OU9uL0lTQ09TTkxZb3dHc0FXeFRhS1Q0N3NpUkkvY2tzelRPbDZQQW4wUjRWT2NxUENvZHdQSXFDQ0JzNG1ySzc4Ymo4UytTTmhwSVlySWExb3I3K0RTQWRiZkpkN0RvTndEL2JObXk1UW9PemxOMitHNThmUHpBMHFWTHp4VjhWeThKajBrRjREVFZlWFIwOURkSUtBN2tJM3p2c1liMy80Sy9WY1Q4OE1NUC84d05WVm96L2FRQ01QS2RvVG9ER1BsMjdRUGNvZzBNRE55L2F0V3EzMnR2YjU5eCtQRGh1em13VDhoOE56dzgvUE44VmVsS0IzRGFLdGpaMlhtVGhZcmNCSC9EZTJrYjRsaXNpNnlHa1Z5bHNHYjZTUUZncGZUdDcrLy9SOEZPWTExZFhiY1NZQnA5eDQ0ZFY2bTJkTHQyN1ZvbXJta2dVbmhTQUppdWdqVUlVRkJORUx5RWdDMmlHLytyUUF5R2gzejNKSnJwSncyQVRYd0hpejlxZHlCdEpiNmJ5anRZbnB2ZWYvLzlQMVhZWVg2Wmp4U3VkQUNiVnNGRGh3N2RqbXJ6QXc4OE1FdGFCYWNnaUVHdGtkVnArRC9EbnNTV2lWOHovYVFBY0pyMFJjUFZtVE5uWGlQODFpajRxSjd3WHhOczVXUUZFUGJPdVVyaFNnVXc5YnVsTElCOEQvSXVVS1NucCtlSGhKQVJzVStwRlFReVZrTzRSbDROWVFFZzM2c2p4UFRaa2NhYTZjOTZBTXVXWjBQcjQxdXdUNEYvUUUwbVFLd1IxNFNwaXdrRWk3d2ZCaHNONFR1cS9aVU93RVZ3b1B1bzVSbjJFbWpkazBDSUVWY2hRa2hqTmVUWDdxV0U1QXZBYjhYbnpRVDgxUVRFQlhHMmE3QlVISUJUZlBmSko1OWNKM2puYlNKNWE4UTFBUktaVllkOEI4WXIyYTIwZlBueTh3alAycmJCdURuZllrWXh5UkV3Yk02Y09kZkQ2OERBd0NvU2R4b1RNYWUwWTh3ejYrL3ZYMFZ2R2dnRUZ2SVZzaEhqVTRtcVZGTVdrVEs2bFZ2a0ZXdHJhN3NSWG84ZVBmcWNGTytja0hnT1krOGhNdkI1MDAwOW50REtsU3V2RWYvYTB2Yk9obEJLTHlWa2JXM3Q5YkFOZWZMSkovOVhmRDVPQ0ltWklLaWFHSVI4OE1FSE44RjN5RDE5dDk5Kys3VVFhc2tsK3J6RGh3Ly9ZUGZ1M1plUlFCRU5ZTjFTZk1mVloxOTFkZlhWbkllK3ZQZmVlemVMejJNS3Zrc1FFTE5seTVidDQ5cmZlL1NtVTZkTy9YTnkvOUtFVmhaSmhhWnFUQzFHWFVrV1BiUWtCOG1LNWtlTElhamJ2YjI5ZjgxWHpiKzM4ZzFqMjc5Ly93MWtiK0pqV29XZXJDbzA1YnM2YWxVR3d4VForNXJpQ01SOTBGNVRMWVZibXRSb1lrU2xhdlJadHdlbTFtZkR3Z2RPY3lBQ0FOTENpb3dBTnF5R1lDMjBFeTNEd2QxSC9NaGhwejY2ZkFDc1c5bkY0S2Z4SFVUeEFaOTBkSFFzVjRUamVzaDkwcjY3YnQyNlMyVitnd1ZCc2tabkZSaGx0UWQyUUVoVGtuNWRYZDFTZU4yMmJkdFc4VjdDQXZqRy9uZkRoZzAvNXZjZHlUWWV2ckp1L095enorSXN2WXJDWk5qajVkSW5FMjFZT0J4ZUFIdmNsMTU2YVRkUm42MzRoS3JUN0thYmJ1cmxVcmVYWHNEMzA0c2xOYjJ5VkdpYkFFWTFCZ3hMelRObnpwd0s2Z2RFVXdrLzd6bkVlaHlVTElIVndzTGNETkk2bXdRbWJvRjZsa2VNZEpsSllGWGxDRnIwd0cvUmtZNVduL3ZJZGtWVmthTFNKYkNYa1pCZDBNeUE3eUI4a3BuRGNPRWFyK0plcUViWEVKL3dMeWkvY2Mxd096TUhkV1IxSjVXMUZkb2pHak9Ici9rSVEvbFdyMTU5R1ZqeFJrWkczcFpVWnAvRVdNaGNJRkc5VjE1NTVRdmo0K083cko3TkY0U09KVXVXZktTUTZKVWtiYkpWS1BGSkFQUm5BTEtkOTMySzkzM1NzeXRSWXFkWm4xOTg4Y1hmQjc2RGRGVkp3bHF0dmtsWkNwODhlWEkzdlNBWURGNVdTajd6dWdsYTNsVFNBYTNCNkV6M2NiVmpMbnlQNzRNUFNKOEZoZFJFSHpDK0dsS2t1N3M3c1dYTGxoK3hyOHVicExYang0K3ZaK1o2Umg3SjhsMDZhNkU5WnJPaW45OEN1RExOa0Y2Wk9yMFd2Ky9Qc2pENHlweCttZWlhNHZQcDA2Y2JmSGZpeEFtMEppY2tvRnFCT0ZVTHE3ZTM5d09KOXlPYk4yK2VTVFROb3RMR215L1RFZEQ2TEZaOFZPTkNRbDJwNHZ2ZitYQ0RqbzZPendpQWZSTHpVbVpKTFFUWFhudHQ1MWRmZmZYdml2SEVPYmhmVlVoZnJ3SUl2akpnUmhtMDJlaEhGN1d3K0Rzb3FjZ3kwRlRkSjkwN1NIOGI4Z3lWK3UwckkvbzVwVFBZWFM2QjE4N096bzhKZ0MzQm01elF5Vk1TK0xubm51c1FHbUdxemVWTklZR0xRaE4vSHF1YXJLSjRDTmk4WkRWSys5RnJhbXArQjI1dyt2VHA1S1pObTViTm1ER2ptYXNpOGVibTVwbWhVS2dhSDhUM0swQkVENy91V0d0cjYrT0NvV0xYWFhmZDAyKzg4Y1ozL1g0L0VvNk5qWTI5ZGV1dHQvYVNSU2xNQ0IrWFh1VnFnOFdzY3VtVWZrcEdXTHAwYWZDUlJ4NlowOWpZT0pVelppdTh4K2s2MitmejFXUjZlRHdlNXp1WGtjK0VPbmgwYUdpb3I3MjlmVCtuWjVUUXpxdFFJeWtOUzBtL1hHa042dTVzZU4yd1lVT1hCR0FLMWt5R0xNOHp6end6OHRSVFQvVjZ2VjRzOGNRYUdob3U0aSsvS3NsV3cyRTFBN292bzZzM2dLNU9HQVZNS1ZrMzNIREQrZHUzYjcrV1M5dC83ZXJxMnN4VmtJODRFeVY0VDNKSmFuVE9VRWtPUUhBQnFTb2hHTysvKys2NzMrUDNtOFk3K04yYWQrM2E5U2UwQk1vWFgzenhkMmpzRXRlY3Mzang0bFo1UEdLTWRXTE1WSW81cW5PVVl6VUl4L1NEY0Qxd1ZVRHFHMS9JWGdFRGpOMEVkQ2NON2duM2htZkFzK0NaSkZTd0tQUnoyWWhGNCs2TnNYTStPZ1JGSThoY0xBMVlraUVybGNYRXZuWnBick1SRiswcHh0ejlEdFVRV2Uzek02a2lBVVM2OEQzQjB2UE9PKytQd3VId1lyNVN6WTNGWW1CZ1luemk4TkF4L3A2SE13dkg3bGRiK2I3MUFKY2NvOGVPSGRzYkNBU2lmSlZNL1FxMzNIS0xvZW84Ly96emwremZ2MzlRcklKandDd0xGeTU4ais5bFZrVWlrYnZBR1BqRUUwOXNvdU45NTUxM3ZybGd3WUpYK1ErMmIzUjBkT2VSSTBkZXYrYWFhOTRRTGlaVUR6SFNKa1pVNzBJVThNNlpmbFRMRUQvK0dURFdjZnFCS2pmS0Y3OTlmSTdqaHc4ZmhvWFJwTm9oL2NCNFkzSUo4RFp0MnJSTCtFdUEweDd1SCtaMHY0Zy82eUwrRzh6ano3MitwYVdGclYrL25yM3d3Z3ZsUUw5OEpiQkJWODUzNXhNanFOMHhwaG02T1AxN3E2cXFxQ0ZyZHNtTXBRNlRvVkZpMUZKcEFkRW9rQkFOT2J0UzFzWVlYNTFlNTFMM0oyKysrZVlkOTk5Ly83TEhIMzhjSkdkeWNIQVFJckFnZlJBTUFMRFNUMFZUdmFKUFlSUEpDalhDUlRUbHJydnVtZzZyS2tnTmNRMStmK3FubjM3NmwyS2xIQ05TNWdTTUVjWktJbWhRcXRRU2laSzF4bGFPeWVTTzZRZHo0TFI2R0Q2SGduOFc5SEd0d3pQZ1dmRE1ZdFBQWlFsc3l2OWRzMmJOeFVKYS9vS1pBeThNYVpuaGZoalFrWXJJNHJUNU43bTRCRXZQRC9ZV1krNTJNem44eENmYmdJTUZBSUc2QmRGUEpCTHFDeTRaZjNyZ3dJSHZDUlVXL0x6d2VnRUE5clhYWHJzWnJ1TXIrbW9CM3ZPRkg3aVJtZE1JYXlTalRSV3h1SVlGaUpzZ2JCSXFlZ2p3UnREWGpHQUdSb094d0pob3pTMFlNNHdkNWtDSTN5RG1TTXVIZXZJQWNGNzBrMEJDd2RJbzd0TWc1aHdSYW0wZG9WK3RlRjYxOUI1ZWg5L0QrelNxVlBoaTBxOEFBRTZGN3U3ZXZmdVBZZHg4SGs4eVJSNnZEUUNuVW1DaEFJQWNVc25NTmRyS0FzQzBjcVNwQkNmc2pmZ3E5Qk1pTFdKY3pkb01QN1JDY2s0UkFJWDk2L1I5Ky9iZExmYXMveUtBZlk0QUl3VnNVQXJva0gyWENPUUc2WG5VbFJKaEU0blpxUTVqaExIaS9obm1BSE9SOW51MXhCS3JaRUlIY2JqNTBBOFpyWjRzYnRWc0ltZFY1UnFTWFVRcVY1UHNjc0w3SWRpUmRnM0ZwSitMQUU1TEljU3lUYkRvc0F3aGxCa0FuQ29HQUdHWXNnMkJMR1FZRTExU0FGdld6NFVrQkw2UCtJUkdvcERxQkxLaEExZjhCcFRFbjMvKytRcjRIbGR4LzBhQWwvN2cyWHlQS3Y4eU1sOUE0WDVCYVYwck15T01HY1pPS2c1K1FzcUd5bU5LVXdlekFOZ3QrdFVRb0ZZcEZqY3JGNCtkN2xlNGsyUS9mRmlNSWMzQVZnajZ1UXhnVTlWVFNJU0JjY0pyRGdEMlVRQ2pOS2NONHFTWnphU0dZZ0hZSnpNZlYzdC9CT29DN3Mra0tocE5SSktHSmZXM1ZramlsaSsvL1BJUmtUSDBBNkwycG81U3NmRURxWUlldk13NnhKQ3EzVFd5VkJaVlBzWlFGWUk1TWhzbGEyMEEyQTM2WmZQenBzVTJPNkJmcHZCTUt6OXhRZWxYU0FCakpoR3A0RkpIRmhoUGxuc2lnT3NaeWFTampTeGU5Y1VFc0RlTDRRVk42SkQ4L0ZldHJhMlBRU2dhK0FLN3U3dnZhR3RyMjBnc2RXT2l4MGlYay9JVGdVQUFDTWVpMGVncFpuM3lXeWFqVzFMNDdLeDZRdXI0ZkJ3VGp0TjRGc3dCNWdMWHdOeGdqakJYTkRCS1lIRmkvWFNiZmdZTkFTZWtwelc3OUpPOVNOZ2xtc20wS3hiOVhBL2k0SHdYRWZFQ0l3b3JzeTE3TC80eE1qSXlLbi9ZME5BUVVWbS9TeEdKSlo4YkF4bERGNTE3N3JrUDRnWER3OE5QWFhqaGhiOGlFeHNuREJlVFFVc0I1dlA1UWlKSUk1NGg4b1hsQVdTbUFITmNHbHRNak5tNEh1YkM1L1FNM2h2bUNuTVcvd1ljUmh5NVNqOFpxRVh3U3BpQVhRTDZGYVJoZ0F2bnUyZys1QkcvMzdqOFFZaTNZb00zVXlpbEtRaDg0Y0tGZjR1U0JOcDc3NzMzTXJIMEpTU3dKaVJBZWFRVkRGUXhpRnNlTHBhbkxJTjBUbUEwR3AvVFMrUTdRVEZueG5MTFpzcWJmc1VDck1PRnNsajBLNGd2R05vWkNFYkkwMGZkMmRtWmx0YnE5WHFEMlo1ZGlPYTNvUWF5NnVycTc5QVB3dUZ3UUJHZ1lJdVFmS0lCb2NwRW5SSlNQczdSQlFiM0tPYUUveS9OWVk2RnBGLytuRnhaOUhOekFVZDFIdmh1MUFtNFNHWmRhZzVjaFk3YlZkMUxKWUhsU1pqaWErZk1tWE1qQnFXd3pBa0NscE1ZSEJ3OFk1ZUFpaFJGUEovVmJrQTl6VXFSalZ4R3phTzVjK2YraGZUY1JoZUI0NWgrWk01NWd6WVQvVVRQK0N6eVdVbm81OUlpRXhXcXRNOEozUlNHUHJ2YVY4a0JURVBIT3VnSEVMN1kyOXY3ZmZGdmdsZ3JaYit0WlFwYWEydHJ4TUZLS0I4QzdsTTh3NHB3cXF3Zkdnb0lLV0xmcjZ1cnU1TitpY3c1MTZvZXJ0RFBMc2pjb0ovcUdRcmdGNHQraFZFNS9mNmdBODFQUlRmVzB0SVN0QW5nZ2dQWm0yWGZtQkRTOGtYNWdtblRwdjFIZjM4Ly9kRUN4UFZoRllUaGpjZmpZMFI5TjJYaXFCcTVCdjJSTld3aTZFUDVEQVh4cUZFSkF3eU1Cbk9BdWNqekd4b2FXcWZZUXp2ZGQ3dE9QMDRTbnd6cVRDMFgra25mTHdYOUNxRkNvMnBmNDFCd1lJQ0xIMzlQTG54QzhvVjh3UnFWdHFaRmtjTFpBR3lvUjRzV0xYcE9McWtKUHpaZmlSNktScVAvQitWY0NhRm96RzhWa1M2R2J6RUdXUTBzWmRiM0sxUXlLNStrdjcyOVBiSnUzYnJ6bVRrNkpzVE1NYmd5a0duaUFCWWRZekJtR0R2TWdVaytPejdYRDJIT1JNM05GY0J1MEU4RjZFd0JIR2NEL1Z3SE1CL3JTYUZSK0d4K0w3Vm9MVisrUEFUenhVNjBSNVZ4REExMzRhSkk0UXlwV0tid01UaDJFWUsycmRMUjRJUUVjT3BMOGJzWVJna2hrNUEvT2ZQWXNXTS9nK3ZmZXVzdENPVEFPR2g0Umkwemh3ZlM0QUhER1k5VkFTR1VENnJyTTNYWVlRMHpCMEdnMUVpZHhRUmp0Wm9IekJIbXl0TGpaYjFXZENzZy9lVG9MSXg5cHBKVUZWcFprZlFyVUNDSFVVNFc2Nm1SNEJuTFFBNENYcUNCRWZxYTdlQjVPRjBFMGpFNWpuZEFwSlo0Um9nVk9Bb3RXeVFSRmdRend1amdqQmdZWUphODBzRlRwMDZ0Nis3dXZtM2x5cFVYRVFEUDRIMVdWMWZYb3lKeUJaei9rSTBFU1E3QXRDM01IS1NQQWZaNFlweHh3SmxNTkRpa1NwRzNpa0gxbEpHTnoxUm52cEt3eGgza2dEVzVUblV1a1ZoNTBROE9QV2Yyc29nYUZiU3JPUG9WS0JiYUFEQ2Vxd1h6WlZsQ0tTVUFtOHJSWm12U3NiY0ZuM3NtQnBTUFpFekZ3dko5ejMxMmtzb2hHWDlrWk9URHZyNitOWHhWdXUvWlo1KzkvdURCZzBZcTF0NjllOXNGZ052WVJGTERsR3pNYXNYMGtHVkM0bEhwU1hPWTJXVEpnREFYbUpQMFhmbllTS2NBenB0K1FqSi9BRVhJSVVRUlZuYUxKSHZidlp6cFZ5QUFHNkdza0xVR1k0VjY1TXhHTERUWjg5ZWlCa1ZUSzYwYU9XZTRuazFFb2hWczdoN0tlTElCVXJFSFNxVkp3WGxFZDk5OTl4ME5EUTEzV3JrTTRONVFGZ2Uydlp3UllXOEV5Yzl3cEFyVWIrN25hczBiZnI4L09qWTJ0cmVxcWlyQnJ6czJPRGg0SkpQS2Y4VVZWL3hhaENPcVdweXJoNXM2T2pwV3o1OC9uMWF2ak9NK2pZK25Hd3FSaWZFTkhUOStmTlhUVHorOWVzV0tGVVBFS2h4bDZ1TTJUSE5UdUI1Y3BaOVZpOGZqM1h3ZXc1eW1VSUV6T2p3OGJDVHU4N24zY1FZOVdxbjBjOGxsUi9laHFXd3dydkhONVpKeEowU00xZGZYcnhCekdoT3ZNZGtuTGx5VU5Kc01TanV0aG1JSFZzK0dZZ0djdjYvR2JUSDdPbG9OZzNRS00zZWJSNExTNHhralRDcjVBb0hpZUVpM1FxVUExU3A1OHVSSm8zd09YK2xSM1RMKzU2b0o3TWxBMGhnUzI2MEdweGhDM2lZNXBTRWxRV0NzTUdhRk5JdXdpVElyR1Erc2NuaWthczcwSzFVckJmMEttZEFQMnhGeGxNOHJMUDFJRlUrV05FSkRlOXF6WjgrM2JkWWtiMlFaemd3dTl0RXFWQjJreGRicm1aUml0bkhqeHZsUXJRRFAvRVVBUTcwckxuRlRnRFZTY2ZoNytEOFV0d01BcTJwaTVkcWc5aTh4SnFSeVd5VTFrYXFLMVN3OWg5V3RpaHc1MDY5VXJSVDBLMEJOTEZ3MEc4WGlNeXBxUXRPaTdzb3NPSVVhYm16dnJINGJxRlRDMHBQNkM1NExuVW1GVmtXenFBcU9LeXN2ckZtenB2V3FxNjVhd05XVnk3MWU3emU0cWp5Zmc5Ynd3VFUxTlJscU5WZG5qR2RDSERnRXlQQnJJTlF5TDQwQzFFc3VPUjRobVQ2Z3ZveUs4V0dhRjYxV2lWVVc0OHhCVFNjYktyUXI5T08wdW94dkw3NEJCY1RsaUs1Q3RGTFN6MlVWbXJyUlFCcDZ1T2J3RnVlemN6aVB6U1pxYmt5bzBBbkZ2YWdhSGNLZ2xXblRwdjJuTkplUnRXdlgvc0Z0dDkxMmxFM1ViUnN2eXZiQjRkRWc4b2tMY3RKOHZjSndBdVZ0b043VmVZODk5dGkzdG03ZGVnOWZ4ZnI0YWpqZTJkbHBWS25rNnZXUVZWVktCMVVWVDBDMUJja05FMkhtR3NjQmxsNnRJc0RNU2VjZXAzUXJNUDFTZmR1MmJkOEVOdzRZdEtBU0lxbFNPZWhDVmNxUzA4OWxDZXdod0RNa01OK3EvUWJtU2l6bEtTdDVsbVQrbERVYjZFTkxJSWt5UFQ5bDZUV3hpbEpPS05lemZUeUtNTE9nd3ZmWUlGU1BxY0xTRERXd1poMC9mdHdveS9uUVF3OWRKU3pSMDhYbnNOK2FBZ1NHNDBScFI2S0xjaTZtYlRaWWFjbVBRb3VzVVpWT2RVUkp6c1hKOHp3YnlRbjlIRnVhSzVWK0JRQXdTdDhJZFFXUkV3Vk5CUWNzQUp4MnpDZ3RhZ2RIM1pKeU92VldmdTl5QTdBZFpzU3lMRmpGb1ZrQWRXWlBUOCtUTVBtZE8zZitrUGlDYmJtUzZPRlNVRFVScEJKTHIyb2hGMWJ6TXBkUDUzUHhjTE5zOUtzV05Ld2xlOUhHWE4xSTVVeS9BZ0RZSkQzQnR5N3FZdDJuQUp6SFJrMnNpT3hTSW41bDZ2Y3VXa1ZPdndzcWVKTHNQWkprMzRRL2NGd3lwUWU0eWd6dUR6WnIxaXdJVlBpMStHeGMybFBSVXdJOEpPWjBtTzlsUGpwdzRNQS9YWHJwcFR2Sk5YRnlqeGdydnhyRnVkS1BaUUdQMVhFZVN2cUIrNG5UOEtPREJ3K3V1UGppaTNlUzc4V2wzOEJFUDZ2VVF4Y1Nwb29SU21ud1hrZEh4NzRaTTJaQWV1Y2xGblMxNHBFRW9ZLzN6anZ2N0wvNTVwdGZyYXFxbXJOa3laTDE2RVd5c0FNVW5JRUtkYnlvWEpraUpGYkNsdFdyVjg4SGhoZ1pHZGtpMU91cHpGd1BTaTZzaGxiYktTKy8vUElDb1dwamJ5WUJCeUc3VmxBMzZWWmcrcW5PVDVMUFRiS3FQa25wWjBnUHFiWjBveUo4MHJTZmRYaWNaemxKWU5rU2pXNndRVkxIMlNRMU0vd09YamswRTF4R0pCeTFubXczc3BZUEtvVVZtam0xSmtyM290YldhbUh0L0FDc3Fsd0t6K0dxVFp4WUJPUFNDa1l6bG1xSWJ3MVBCYUJnQmVzZnJiVlYwSVhQRFdua0ZBU0tsRUpQQnF1M3ZCQ0VpUlVaSlVwU0NyaElaSks0YmtuZ0lsaWhtYlRvR2NrRm82T2oveDBLaGI2emZ2MzZlWEJndHdnNndaSkdDVHB2UlI0MGRsbzJGcTMwY2tXYW9zemQ2d2JCVkYyaHh0QkRzc0FQdkFzaWtGNTU1WlhMaWNxWXVnYnNBOUNaK1VDdFVXWXVxcFk2VEhuUm9rVW9sY3BXWFhaQ3Z3eDB6VmJFVDFXVUR2dUk2S2NFTFdrdExsUFVsSVB4bEx2NlRQa09JZ0NOQ0xPbHZFbGJqR3g1MExTUEMrQkhoZUN4QmR4Q05HOEppR2tRY21CZ1lDdTh0clcxTFNhUk15cGlKcVU5bm84QU5kSFQwL05kdmhpODJ0ZlhOMDZ1cmJURHFJdEI5NFRDMXBCUWdQZHNuai83K09PUFg0ZlhwcWFtcXlXK1V4VTFrSzNRZEhzWFpPbVJWa1ZQbS9TV2lwQnIxNjRGUXNacmEydS9wVElvV0pRMENhS2s1c0M5WVh4OC9MY1hYSERCS2dqdEU0ZHV4VFZ3czlJK3lUSWZEM28yempzbE9KWXRXN2FQNzRON2dzSGdFc2lQWnVtSHdETkpiVVpMdHNjQ1AxVWw1VGszREJJT0ZnczhTY0Z3ZzBTajBiZGh6d0YrU3BhZUlTSW5raHRHR0RnUmdKNXNBQTJPdW1BVGZyMUFNUlltTncwNmszSkZLWTRSaTBrOFpBVEtRT0NGY0FGaEVYb2FGMDJUSUZMZlVaM0dBQmxPYk9LWVV0dlZOOHZORDJ4N3U4ZWtKSGVzbGcrQkJKSlZzSXBZV3FzWVNXZURhK1ZVT0JKd0g5WUExZ0JXOEozSkh3eStiOHlISmhiNU9tWXVhWVJla3pUL3VlQzdBY0ozb2NrQzRMUU1FUWd3aDN4U0VnbUVnUVNZVEo3S3BZV0lGemtmbFJ5dWpNSHAvbUtvTkJyQUZRWGdOTzBQQ3l1UW8xYm93ZVUxRkx5ZzljbTV3QkRWUmFSM1ZWa0F1TUNFcEdwMEtqNTFlSGo0NTVJVVJoRGpFWmh3M1JTVjlJVXdRT0xYckhkS3lFSXlrdTZsNlZtMHZ5cFVpZUdVUlVVb0pLMXVranFpRnJkNmxPK2t3OHlDa3dYQWFlcU1xTk1FMlNBeGtrK0pCM3Bqb0liaE9NY2pMVWtLMXkrWittQmxEV0FONEl6YUgzVEllUVkrNGtMa1o0U1BnT2Z3MUV3NGtPNGVlZS9MQmNrTDVQcHFwOXUyU2dkd21qcUQrd3UrR2g0aUsxc3pnaGZlVXhXRUk4WXYwMkhONWFESzZWNVdBRllhc3pBMldtUVVQYzJrdUhGeGtIZE1ZcnN4d3FNNThWMGxBMWhXWjFMVkVuRnZDeW9OeVJacGdyL2hQY1VxdUk0NVNPSFNBSjcwQUZaS1lVam9vSlZCd2JBS0JmQVVXVnRKcWFaV1k2NThkellBT0UwS1k5VkFrcVoxQ0xwVjVUK3liN0VzWGFvQnJBR3M0RHZUWGxnSWp3R2JWVXJlSnZuU0VlSXRLWm5RS0FVaExWZEQyVlJ2MGNaSXFaZEdzZ2ZKNlJROHpmU1RCc0NVNzB6Q0E3UzhiRlZDdWRENGxKVDViWlJjbHBNU3dHbEJHckM2V2FrdWVBSjhaMmZuVFN3OTZUem5JeXcxMDA4cUFGc0tEeWhZWjZYeGdXcE5pdFZuckhjOVdRQXNyNGFwNEE0bTZpYkxSaXZ3MjBuSjU3U3l2bGNEV0hjSGZFZFY2VnJrS2RpVzhUM3VQMFBoT25IS3duWnlrb01Ldk41U0E5aFRwTFN1Yk1Ta01hZXBzMnVnc051OGVmUGF1TlE5ZXVPTk4vYVE3MEUyRXMyaXlUbWVWd2RnbkYzTkFkL0pWVkN5dVlLQTE2Sk1rYmxWU3A0ckJ3QXpsbjUwcFZWQ2ZzYXFFUnJBdWpsSWNWU2xDNnBzS2NrTVBGZHlvZUV2TWIweC9TOUIvazh3YzNhSWg2bnpYa3Q5YktWdUZSN05LVjRURW4rcDBsa3B2eVdrNzVlMCtjdU1rQjZKU0twY3k3S3ZjNlZieFlHWUNoS2FDNXlVZUsvc2VNNWZac1JNc3ZSeU1FeEJPQTFjM1FvRjRtU1c2NWdHc0QyQ2FxRHFWa3JlcTRqbTFiK1picnBWYnZOckV1aDJWb25RU2VaVjhHdEM2cVpiNVRhdFF1dW1td2F3YnJycFZvcjIvd0lNQUNZcmxPbzA2QWJlQUFBQUFFbEZUa1N1UW1DQycpIDJ4ICk7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBzcGVhazogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG59XG5cbi5tMzYwLXNwaW4teCAubTM2MC1oaW50LW1lc3NhZ2U6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweDtcbn1cblxuLm0zNjAtc3Bpbi15IC5tMzYwLWhpbnQtbWVzc2FnZTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4O1xufVxuXG4ubTM2MC1sb2FkZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgbGVmdDogOHB4O1xuICAgIGJvdHRvbTogOHB4O1xufVxuXG4ubTM2MC1sb2FkZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1wcm9ncmVzcyk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5tMzYwLWxvYWRlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB0ZXh0LWluZGVudDogLTk5OTllbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubTM2MC1sb2FkZXIuc2hvd24ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMHM7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwcztcbn1cblxuLm0zNjAtbG9hZGVyLnNob3duOmJlZm9yZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4tbG9hZGluZyAycyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbi1sb2FkaW5nIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwaW4tbG9hZGluZyB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgIH1cbn1cblxuLmx0LWllMTAtbWFnaWMgLm0zNjAtbG9hZGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAyZW07XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IC44ZW0gMS4yZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubTM2MC1sb2FkZXI6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubTM2MC1sb2FkZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdMb2FkaW5nLi4uICAgJyBhdHRyKGRhdGEtcHJvZ3Jlc3MpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmx0LWllOS1tYWdpYyAubTM2MC1oaW50LW1lc3NhZ2UsXG4ubHQtaWU5LW1hZ2ljIC5tMzYwLWxvYWRlci5zaG93biB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChHcmFkaWVudFR5cGU9MCxTdGFydENvbG9yU3RyPScjN2MzMTMzM0QnLCBFbmRDb2xvclN0cj0nIzdjMzEzMzNEJyk7XG59XG5cbi5sdC1pZTktbWFnaWMgLm0zNjAtaGludC1oaWRkZW4ge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbn1cblxuLmx0LWllOS1tYWdpYyAubTM2MC1sb2FkZXIge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA5NnB4O1xuICAgIG1hcmdpbjogYXV0bztcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWMzNjAtZnVsbHNjcmVlbiAubTM2MC1sb2FkZXIge1xuICAgIGxlZnQ6IDhweDtcbiAgICByaWdodDogYXV0bztcbn1cblxuXG4vKiBNYWduaWZpZXIgKi9cbi5NYWdpYzM2MC1jb250YWluZXIgLm0zNjAtbWFnbmlmaWVyLFxuLk1hZ2ljMzYwLWZ1bGxzY3JlZW4gLm0zNjAtbWFnbmlmaWVyIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCAjY2NjO1xuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjdXJzb3I6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgd2hpdGUsIGJsYWNrKTtcbn1cblxuLmx0LWllOS1tYWdpYyAubTM2MC1tYWduaWZpZXIge1xuICAgIGJvcmRlcjogM3B4IHJpZGdlICNlN2U3ZTc7XG59XG5cbi5sdC1pZTktbWFnaWMgLm0zNjAtbWFnbmlmaWVyLm0zNjAtbWFnbmlmaWVyLWlubmVyIHtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljMzYwLWNvbnRhaW5lci5kZXNrdG9wIC5tMzYwLW1hZ25pZmllci5tMzYwLW1hZ25pZmllci1pbm5lcixcbi5NYWdpYzM2MC1mdWxsc2NyZWVuLmRlc2t0b3AgLm0zNjAtbWFnbmlmaWVyLm0zNjAtbWFnbmlmaWVyLWlubmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xuICAgIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgICBjdXJzb3I6IHpvb20tb3V0O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5tMzYwLW1hZ25pZmllciBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5tMzYwLW1hZ25pZmllci1sb2FkZXItaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLmllOS1tYWdpYyAubTM2MC1tYWduaWZpZXItbG9hZGVyLWhvbGRlcixcbi5sdC1pZTktbWFnaWMgLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT02MCk7XG59XG5cbi5tMzYwLW1hZ25pZmllci1sb2FkZXItaG9sZGVyIC5tMzYwLWxvYWRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbn1cblxuLm0zNjAtbWFnbmlmaWVyLWxvYWRlci1ob2xkZXIgLm0zNjAtbG9hZGVyOmJlZm9yZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4tbG9hZGluZyAycyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgMnMgaW5maW5pdGUgbGluZWFyO1xufVxuIiwi77u/LypcblxuXG4gICBNYWdpYyBTY3JvbGwgdjIuMC4yOSBcbiAgIENvcHlyaWdodCAyMDE3IE1hZ2ljIFRvb2xib3hcbiAgIEJ1eSBhIGxpY2Vuc2U6IGh0dHBzOi8vd3d3Lm1hZ2ljdG9vbGJveC5jb20vbWFnaWNzY3JvbGwvXG4gICBMaWNlbnNlIGFncmVlbWVudDogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9saWNlbnNlL1xuXG5cbiovXG4uTWFnaWNTY3JvbGwsXG4ubWNzLWNhcHRpb24sXG4ubWNzLWJ1dHRvbixcbi5tY3MtaXRlbSxcbi5tY3MtaXRlbSBpbWcsXG4ubWNzLWl0ZW0gPiAqLFxuLm1jcy1idWxsZXQsXG4ubWNzLWJ1bGxldDpiZWZvcmUsXG4ubWNzLWJ1bGxldDphZnRlcixcbi5tY3Mtd3JhcHBlcixcbi5tY3MtaXRlbXMtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLk1hZ2ljU2Nyb2xsLFxuLm1jcy1pdGVtLFxuLm1jcy1pdGVtIGEsXG4ubWNzLWl0ZW0gaW1nLFxuLm1jcy1pdGVtcy1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLk1hZ2ljU2Nyb2xsLFxuLm1jcy1pdGVtLFxuLm1jcy13cmFwcGVyLFxuLm1jcy1pdGVtcy1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlyZWN0aW9uOiBsdHI7XG59XG5cbi5tY3Mtd3JhcHBlcixcbi5tY3MtaXRlbSBpbWcge1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwge1xuICAgIHotaW5kZXg6IDE7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gICAgY3Vyc29yOiAtby1ncmFiO1xuICAgIGN1cnNvcjogLW1zLWdyYWI7XG4gICAgY3Vyc29yOiBncmFiO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwge1xuICAgIC1tb3otdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG4uTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtdmVydGljYWwge1xuICAgIC1tb3otdG91Y2gtYWN0aW9uOiBwYW4teDtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teDtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuXG5ib2R5Lm1jcy1kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgICBjdXJzb3I6IC1vLWdyYWJiaW5nO1xuICAgIGN1cnNvcjogLW1zLWdyYWJiaW5nO1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cbmJvZHkubWNzLWRyYWdnaW5nIC5NYWdpY1Njcm9sbCxcbmJvZHkubWNzLWRyYWdnaW5nIGJ1dHRvbi5tY3MtYnV0dG9uLm1jcy1ob3Jpem9udGFsLm1jcy1idXR0b24tYXJyb3cge1xuICAgIGN1cnNvcjogaW5oZXJpdDtcbn1cblxuLm1jcy1pdGVtLFxuLk1hZ2ljU2Nyb2xsIGZpZ3VyZSxcbi8qLm1jcy1pdGVtIGltZywqL1xuLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWNzLWl0ZW0gaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLk1hZ2ljU2Nyb2xsID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uTWFnaWNTY3JvbGwgPiAqOm50aC1jaGlsZChuKzIpIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uTWFnaWNTY3JvbGwgPiBhIHtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbn1cblxuLk1hZ2ljU2Nyb2xsIGltZyB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uTWFnaWNTY3JvbGwgLm1jcy1pdGVtIGltZyB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubWNzLWJ1dHRvbixcbi5tY3MtYnVsbGV0cyxcbi5tY3Mtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uTWFnaWNTY3JvbGw6YmVmb3JlLFxuLk1hZ2ljU2Nyb2xsIGZpZ2NhcHRpb246YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBoZWlnaHQ6IDA7XG59XG5cbi5tY3Mtd3JhcHBlciB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgei1pbmRleDogMTAwO1xufVxuXG4ubWNzLWl0ZW1zLWNvbnRhaW5lciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLm1jcy1pdGVtIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6b29tOiAxO1xuICAgIGZvbnQtc2l6ZTogOXB0ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ubWNzLWl0ZW06YWZ0ZXIsXG4ubWNzLWl0ZW0gPiBhOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtaXRlbSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLm1jcy1pdGVtID4gYSxcbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtaXRlbXMtY29udGFpbmVyID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWNzLWl0ZW0gYSxcbi5tY3MtaXRlbSBpbWcge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbn1cblxuLm1jcy1pdGVtIGEge1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLm1jcy1pdGVtIGltZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5NYWdpY1Njcm9sbCBmaWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmx0LWllOS1tYWdpYyAubWNzLWl0ZW0gPiBhID4gaW1nIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4ubHQtaWU5LW1hZ2ljIGZpZ2NhcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubWNzLWl0ZW0gYSBpbWcge1xuICAgIGJvcmRlcjogbm9uZTtcbn1cblxuLmllNy1tYWdpYyAubWNzLWl0ZW0gaW1nLFxuLmllNy1tYWdpYyAuTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1pdGVtIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmllNy1tYWdpYyAuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLm1jcy1idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uTWFnaWNTY3JvbGwgLm1jcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLmllMTEtbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW1zLWNvbnRhaW5lcixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjYXJvdXNlbFwiXSAubWNzLWl0ZW1zLWNvbnRhaW5lcixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIC5tY3MtaXRlbXMtY29udGFpbmVyIHtcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwcHg7XG4gICAgLW1vei1wZXJzcGVjdGl2ZTogMTAwMHB4O1xuICAgIC1vLXBlcnNwZWN0aXZlOiAxMDAwcHg7XG4gICAgcGVyc3BlY3RpdmU6IDEwMDBweDtcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi14OiA1MCU7XG4gICAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW4teTogNTAlO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gLm1jcy1pdGVtLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNvdmVyLWZsb3dcIl0gLm1jcy1pdGVtIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgLW1vei10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAgIC1vLXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLk1hZ2ljU2Nyb2xsIGZpZ2NhcHRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBjbGVhcjogYm90aDtcbiAgICB6LWluZGV4OiAxNTA7XG59XG5cbi5NYWdpY1Njcm9sbCBmaWdjYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY292ZXItZmxvd1wiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMXB4KSB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigxcHgpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsIGZpZ2NhcHRpb24sXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbCBmaWd1cmUgaW1nIHtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLXJlZmxlY3Rpb24ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC0xcHgpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGVmdDogMHB4O1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5NYWdpY1Njcm9sbCAubWNzLWl0ZW0ubWNzLW5vaW1nIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUI0QUFBQWVDQVlBQUFBN01LNmlBQUFHQjBsRVFWUklTNVdYYTJ3VVZSVEgvM2RtbjIxMzZiNWEydTJMc29vZ0VpR0dCR25sWVVKTWlFcGkxTVNZR05Idm9BamZORVEvaWFMNFhUQW14a1FTRTN6RmFFU1FyWklRSXhIbGFWdEsyMjI3M1VkaHR0M25QRHgzWm1jN3U5dHRkWkxON3M2Y2UzN25mODg1OTk1aCtHOFgreVhVTVNobzRsNHdiVHRqaUFETVp3elY1alFOdzB4anZ5bE0rWFpIWWpyS2I2N2tsaTFuY0JRUUhnK0dEektSSFcvdTc0RjNRd1ROYTdyaERQb2dOcm4wb1VvMmowSnlEZ3UzSnlGZCt3Y0xvK1BRRk8zUTJXVHNCSTFYRy9sdkNJNkdPbDltZ25qS3YzVVQyaDdmQnB1ZFpLU1RVS1c3MEhKWmFISko5OG5vQVhNM1FmQzJndm1ENExkbnoxNUUrdElWYUtxeWZ6QXg5Y2xTOENYQkY5ckNiN3Y4dmpkN1hud2FUb2NLWldKVWg5RVVHN0FhVCthODBwVHJRWWpkL1NnVUJZeC85aFh5NmJsM0hwdU52VlVMcndOSFErRVRua2p2Z2U1bjl3QmpONkZtN3VsQVZzWTFtcUlLbk5MTEF4QThxNEMrZFJnLy9RUG1SOFkvR2t6RURscmhWWDZpd2E1M3ZldjZqdlRzMndIbHhwK0FYS3dEbXFwckZYQ1lYbXJsQjRRSGJBNkk2eC9HK0puenlOd1llMjhnT1huRUhGY0I4NXk2MmdLbitsOTRBc3IxeXdUVWRHanQ5SzZzdUJ3QWNUbWNleEhYYjhIbzU5OGpQNXVxNUZ6M2N4b1F3NnU3NWY2WG5vSVl1d0dteUJWb09wbEVScEowYjE2dkY0RmcwTWh6T1NMTmxFcjNVbVFybFcwOVpPc0xCQTI0YUlNU2ZnQ2puMzZOMk15RTdUbHFCaDBjRFlaZkR6enk0UEZRMkFFdGN4ZENXV2s2blVZbWswSDdseGQxV1B5WmJmQjZQQWdHQW5XRm1reWxJTlhZZXNqVzUvTlRUNUZ1VHlzU3NTSlN2MTg5TkppTWZjREJiS2k5UzQwOHZ4dEM3SmFoVkZjRTNKbU1WYUFtU1llM3RDRGthNjNBRTNOM0ljM1BMMm5iRXc3cmVlZksxZkI5R1A3aUhBYmlrd0s3RUZ5OXc3T201M3c0NGdhb1pZUXlsTVBIcHVOMXppckttNXNRV3VWRjRwNEVhU0hiMEs2M28xMnZjbjBsb1ZhTERlZVF1VDIray9GS1hqMzQwQkd2SERlVVdzRHB6QUl5dVZ4anVOc05hWm5uSHJjTFBrK0xEalpVQTVLdEhUUFJ2NDR4NnR0bzMrNk5BdzVwU29jS2VzOHU5bTA2bTRPVUx6U0VtL20zSnAybncrTjBJdERzTGxjMktTN0RDOTVPalA5OE5jcUcyc0l6YTdmM3RRc0xjeGFvQVRaYktaWExReXFVMEhubVVsMVIxZDZZMnJjVlhxY2RBVkpyS05VN1d2OXd1TnJzdzhpdlkzRUNkeFVpVy93T0ZQTlZhczBwMTF1SHR3cUJwWktNM3U4dU40VGYyYnNaWHJzTmZnTHphM0dLRFRnSHcrSEM4Qi9wb2c1ZXU4SGxZSnE2TEpnN1NwVVVTTEtLeUk5LzE4R0g5MnlFMXlZZ1lCY1hWNjlLYmhmQkdoTXdjaTNQd2VHWjd2dWQ3VGFCZXMyUzMxckZjeVVWODRxSzllZHVObFI4ZmRjNnRJZ0NXdTI4TitvVjh4bVFWWWFKVzRXNFhseHRrZVlCcDYxVURiYnNSRnhsanFDYmhrWlh6UEdWZ1g2NENlNGg5WXZ3Y3A0SlhKRHRTQXhucWJpQ1hjZThmZDdEVFM1ajJ6UFhZck80c2dUTlUzSTJYN3hUQjcyOHJiZmhmU2UxUnhNRllDREw3VVEvczNrMzdvMWxqdWtMaUN1NDZyekhYNmhxSng1Q2dmSmVYQWJLblJlV2VXNG5KUzZ5TVF1TGYyZlNUdVNUOTNZYVMyWmJsK3JwRVNGU01TN21tUmF5Rlp5YTRCSWxyOUdNbUdDZVg0Vk9KNWtKRlQvRko4VEtKdUVJT0k0N2ZJcEZOY05TRHZuMDhsRTJ5OFlzazFlRkhOZkN1YTJOYk0zRm96Z25vcGdxVmpZSmZWdnNiTytXSFIwTWduTlJ0WmxVMHlGM1pLeHUxYnV5dmtBUW5IOWJiYTI1VlF0QWNWckRWTnl5TFhJRE9nanNGOXoyazJJYkxlZFVrT2FVaS9URHhKZ3IwSktsemM5Ymx1TGttNExDZzlFVFRMOW5xZEJ5cFZjSEVsTW4rZmlxMEhtRm80VWRCdC9ydVpPYUtxOGJZSW1nNnNoanFXSjlHcEwwbWRlV1B2cVlQdmhoRDAzQ0FTVklDNHJSaXZwbGJiT2xGRnZieG54T1RRRXhTU096NnZLSFBYTUFWNjQ1Y2Jqa0ozY09RN24xcXZsYjk5cWdIM09MZ0QxTmFTcWdTbW10a0RvUlE2SE9WMGp5eDNJelVQTFE2Y0ZXSDBEdElQMVlLeE13dzJCYjRQT3RWbkphYTFzYmZOWHpvOFlyekd0TVlPL0xWTzJ5UzRQc01JTFF6Q1cxRExNVkNaYW5EMVd2cG1wdjBDdk1oelQrLzcvQ1dDUGdBZXdLZFF3d1RYeVNNZTFSbXZxMU5TOXRJeHE5dEdsTStlWmNZbnBvT2FEcDkxL2hyczRZMnI3RkRRQUFBQUJKUlU1RXJrSmdnZz09XCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xufVxuXG5cbi8qXG4gKiBDYXB0aW9uXG4gKi9cbi5tY3MtaXRlbSAubWNzLWNhcHRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxNTA7XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIC5tY3MtaXRlbSBmaWdjYXB0aW9uLm1jcy1jYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIC5tY3MtaXRlbSBmaWdjYXB0aW9uLm1jcy1jYXB0aW9uIHtcbiAgICB0b3A6IDEwMCU7XG59XG5cbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtIGZpZ3VyZSxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIGZpZ3VyZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvdHRvbTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC4yNXM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXM7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDE1MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNTAlKTtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW06aG92ZXIgLm1jcy1jYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW06aG92ZXIgLm1jcy1jYXB0aW9uIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbixcbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgICBib3R0b206IC0xNTAlO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJzY3JvbGxcIl0gLm1jcy1pdGVtOmhvdmVyIC5tY3MtY2FwdGlvbixcbi5sdC1pZTktbWFnaWMgLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW06aG92ZXIgLm1jcy1jYXB0aW9uIHtcbiAgICBib3R0b206IDAlO1xufVxuXG4vKipcbiAqIEJ1dHRvbnMgJiBBcnJvd3NcbiAqL1xuLm1jcy1idXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBsaW5lYXI7XG59XG5cbi5NYWdpY1Njcm9sbDpob3ZlciA+IC5tY3MtYnV0dG9uOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4ubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgei1pbmRleDogMTIwO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgbGVmdDogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIC5tY3MtaXRlbSxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIC5tY3MtaXRlbSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qXG4gKiBCdWxsZXRzXG4gKi9cbi5tY3MtYnVsbGV0cyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdG9wOiAxMDAlO1xufVxuXG4ubWNzLWJ1bGxldHMuc2hvdyB7XG4gICAgb3BhY2l0eTogMS4wO1xuICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuNXM7XG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAuNXM7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXM7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnVsbGV0cyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnVsbGV0cyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5tY3MtYnVsbGV0IHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWFyZ2luOiA0cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1pbmRlbnQ6IDk5OTlweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQ6IDAvMCBhO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG4ubWNzLWJ1bGxldC5hY3RpdmUge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuXG4vKipcbiAqIEFuaW1hdGlvbiBtb2RlXG4gKi9cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gZGl2W2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gZGl2W2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjM1cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMzVzO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIGRpdltkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTIsLjM3LC4yNSwxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjEyLC4zNywuMjUsMSk7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBhbmltYXRpb24tbmFtZTogbm9uZTtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDA7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjFcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjE1cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMTVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCIyXCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4ycztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMnM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjNcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjI1cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMjVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCI0XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC4zcztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjVcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjM1cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMzVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCI2XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC40cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNHM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjdcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjQ1cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNDVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCI4XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNXM7XG59XG5cbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYW5pbWF0aW9uLW50aD1cIjlcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjU1cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNTVzO1xufVxuXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFuaW1hdGlvbi1udGg9XCIxMFwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuNnM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZW50ZXJpbmddLFxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIFtkYXRhLWV4aXRlZF0ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMDAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwMDAwcHgpO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIFtkYXRhLWVudGVyaW5nXSxcbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gW2RhdGEtZXhpdGVkXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMDAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMDAwMHB4KTtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1lbnRlcmluZ10sXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIFtkYXRhLWV4aXRlZF0ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMDAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBbZGF0YS1lbnRlcmluZ10sXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBbZGF0YS1leGl0ZWRdIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwMDAwcHgpO1xufVxuLyoqXG4gKiBTbGlkZUluIGFuaW1hdGlvblxuICovXG5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0sXG4ubWNzLXNsaWRlaW5bZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbn1cblxuW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSxcbi5tY3Mtc2xpZGVpbltkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xMiwuMzcsLjI1LDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTIsLjM3LC4yNSwxKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zNXM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjM1cztcbn1cblxuLyogSG9yaXpvbnRhbCBGb3J3YXJkICovXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZXhpdC1zbGlkZWluO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZXhpdC1zbGlkZWluO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtZm9yd2FyZC1lbnRlci1zbGlkZWluO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZW50ZXItc2xpZGVpbjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGgtZm9yd2FyZC1leGl0LXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTYwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02MDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtZm9yd2FyZC1leGl0LXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTYwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02MDBweCk7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1mb3J3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgaC1mb3J3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTgwcHgpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICB9XG59XG5cbi8qIEhvcml6b250YWwgQmFja3dhcmQgKi9cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSxcbi5tY3Mtc2xpZGVpbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1leGl0LXNsaWRlaW47XG4gICAgYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZXhpdC1zbGlkZWluO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1lbnRlci1zbGlkZWluO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBoLWJhY2t3YXJkLWVudGVyLXNsaWRlaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWJhY2t3YXJkLWV4aXQtc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2MDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtYmFja3dhcmQtZXhpdC1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDYwMHB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWJhY2t3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xODBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBoLWJhY2t3YXJkLWVudGVyLXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE4MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xODBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuLyogVmVydGljYWwgRm9yd2FyZCAqL1xuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZXhpdC1zbGlkZWluO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB2LWZvcndhcmQtZXhpdC1zbGlkZWluO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWVudGVyLXNsaWRlaW47XG4gICAgYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1lbnRlci1zbGlkZWluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1mb3J3YXJkLWV4aXQtc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdi1mb3J3YXJkLWV4aXQtc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwMHB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWZvcndhcmQtZW50ZXItc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxODBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxODBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB2LWZvcndhcmQtZW50ZXItc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxODBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxODBweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbn1cblxuLyogVmVydGljYWwgQmFja3dhcmQgKi9cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0sXG4ubWNzLXNsaWRlaW4uTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJleGl0XCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB2LWJhY2t3YXJkLWV4aXQtc2xpZGVpbjtcbiAgICBhbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1leGl0LXNsaWRlaW47XG59XG5cbi5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdLFxuLm1jcy1zbGlkZWluLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZW50ZXItc2xpZGVpbjtcbiAgICBhbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1lbnRlci1zbGlkZWluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1iYWNrd2FyZC1leGl0LXNsaWRlaW4ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjAwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB2LWJhY2t3YXJkLWV4aXQtc2xpZGVpbiB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2MDBweCk7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1iYWNrd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xODBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTgwcHgpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdi1iYWNrd2FyZC1lbnRlci1zbGlkZWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xODBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTgwcHgpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB9XG59XG4vKipcbiAqIEJvdW5jZSBhbmltYXRpb25cbiAqL1xuLm1jcy1ib3VuY2VbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC44NCwwLDEsMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC44NCwwLDEsMSk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuNHM7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjRzO1xuICAgIC8qLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwczsqL1xufVxuXG4ubWNzLWJvdW5jZVtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4xMiwuMzcsLjI1LDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMTIsLjM3LC4yNSwxKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNHM7XG59XG5cbi8qIEhvcml6b250YWwgRm9yd2FyZCAqL1xuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gLm1jcy1pdGVtW2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1mb3J3YXJkLWV4aXQtYm91bmNlO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZXhpdC1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImVudGVyXCJdIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZW50ZXItYm91bmNlO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBoLWZvcndhcmQtZW50ZXItYm91bmNlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1mb3J3YXJkLWV4aXQtYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgaC1mb3J3YXJkLWV4aXQtYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoLWZvcndhcmQtZW50ZXItYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMDAwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIH1cblxuICAgIDkwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBoLWZvcndhcmQtZW50ZXItYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMDAwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMHB4KTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgIH1cblxuICAgIDkwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuLyogSG9yaXpvbnRhbCBCYWNrd2FyZCAqL1xuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtYmFja3dhcmRdIC5tY3MtaXRlbVtkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZXhpdC1ib3VuY2U7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZXhpdC1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLWhvcml6b250YWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSAubWNzLWl0ZW1bZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaC1iYWNrd2FyZC1lbnRlci1ib3VuY2U7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGgtYmFja3dhcmQtZW50ZXItYm91bmNlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1iYWNrd2FyZC1leGl0LWJvdW5jZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHRyYW5zbGF0ZVooLTFweCk7XG4gICAgfVxuXG4gICAgNDAlIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KSB0cmFuc2xhdGVaKC0xcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBoLWJhY2t3YXJkLWV4aXQtYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCkgdHJhbnNsYXRlWigtMXB4KTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpIHRyYW5zbGF0ZVooLTFweCk7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgaC1iYWNrd2FyZC1lbnRlci1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzAwMHB4KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICB9XG5cbiAgICA5MCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGgtYmFja3dhcmQtZW50ZXItYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zMDAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwMDBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgfVxuXG4gICAgOTAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpO1xuICAgIH1cbn1cblxuLyogVmVydGljYWwgRm9yd2FyZCAqL1xuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWZvcndhcmRdIGRpdltkYXRhLWFjdGlvbj1cImV4aXRcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1leGl0LWJvdW5jZTtcbiAgICBhbmltYXRpb24tbmFtZTogdi1mb3J3YXJkLWV4aXQtYm91bmNlO1xufVxuXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gZGl2W2RhdGEtYWN0aW9uPVwiZW50ZXJcIl0ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1lbnRlci1ib3VuY2U7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHYtZm9yd2FyZC1lbnRlci1ib3VuY2U7XG59XG5cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1mb3J3YXJkXSBbZGF0YS1lbnRlcmluZ10ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMDAwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xufVxuXG4ubWNzLWJvdW5jZS5NYWdpY1Njcm9sbC12ZXJ0aWNhbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gW2RhdGEtZm9yd2FyZF0gW2RhdGEtZXhpdGVkXSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwMDAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAwMDBweCk7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWZvcndhcmQtZXhpdC1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtZm9yd2FyZC1leGl0LWJvdW5jZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB2LWZvcndhcmQtZW50ZXItYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMDAwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIH1cblxuICAgIDkwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB2LWZvcndhcmQtZW50ZXItYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMDAwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIH1cblxuICAgIDkwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbn1cblxuLyogVmVydGljYWwgQmFja3dhcmQgKi9cbi5tY3MtYm91bmNlLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSBbZGF0YS1iYWNrd2FyZF0gZGl2W2RhdGEtYWN0aW9uPVwiZXhpdFwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1leGl0LWJvdW5jZTtcbiAgICBhbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1leGl0LWJvdW5jZTtcbn1cblxuLm1jcy1ib3VuY2UuTWFnaWNTY3JvbGwtdmVydGljYWxbZGF0YS1tb2RlPVwiYW5pbWF0aW9uXCJdIFtkYXRhLWJhY2t3YXJkXSBkaXZbZGF0YS1hY3Rpb249XCJlbnRlclwiXSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdi1iYWNrd2FyZC1lbnRlci1ib3VuY2U7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHYtYmFja3dhcmQtZW50ZXItYm91bmNlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdi1iYWNrd2FyZC1leGl0LWJvdW5jZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHYtYmFja3dhcmQtZXhpdC1ib3VuY2Uge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICAgIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHYtYmFja3dhcmQtZW50ZXItYm91bmNlIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMDAwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwMDBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgICB9XG5cbiAgICA3NSUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuXG4gICAgOTAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB2LWJhY2t3YXJkLWVudGVyLWJvdW5jZSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAwMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMDAwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gICAgfVxuXG4gICAgNzUlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIH1cblxuICAgIDkwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB9XG59XG4vKlxuICogQXJyb3dzXG4gKi9cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LXByZXY6YmVmb3JlLFxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dDpiZWZvcmUsXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctcHJldjpiZWZvcmUsXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDQ5LDUxLDYxLDAuNik7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMTVzIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjE1cyBsaW5lYXI7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LXByZXY6YmVmb3JlIHtcbiAgICBsZWZ0OiA2MiU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWigtNDVkZWcpO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0OmJlZm9yZSB7XG4gICAgbGVmdDogNDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWigxMzVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooMTM1ZGVnKTtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LXByZXY6YmVmb3JlIHtcbiAgICB0b3A6IDYyJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZVooNDVkZWcpO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dDpiZWZvcmUge1xuICAgIHRvcDogNDAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWigtMTM1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVaKC0xMzVkZWcpO1xufVxuXG4ubWNzLWJ1dHRvbi1hcnJvdy5tY3MtZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuMDEgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsID4gLm1jcy1idXR0b24tYXJyb3cge1xuICAgIC8qZm9udC1zaXplOiAyMHB4OyovXG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBsaW5lYXI7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4uTWFnaWNTY3JvbGw6aG92ZXIgPiAubWNzLWJ1dHRvbi1hcnJvdzpob3Zlcjpub3QoLm1jcy1kaXNhYmxlZCkge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5NYWdpY1Njcm9sbDpob3ZlciA+IC5tY3MtYnV0dG9uLWFycm93OmhvdmVyOm5vdCgubWNzLWRpc2FibGVkKTpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg0OSw1MSw2MSwxKTtcbn1cblxuLk1hZ2ljU2Nyb2xsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3cge1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNzUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgxNTMsIDE1MywgMTUzLCAuNSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBsaW5lYXI7XG59XG5cbi5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93OmJlZm9yZSB7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZTpob3ZlciA+IC5tY3MtYnV0dG9uLWFycm93OmhvdmVyOm5vdCgubWNzLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuOTYpO1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICAgIGxlZnQ6IDVweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgICByaWdodDogNXB4O1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgICB0b3A6IDVweDtcbn1cblxuLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gICAgYm90dG9tOiA1cHg7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1MywgMTUzLCAxNTMsIC41KTtcbn1cblxuLmx0LWllOS1tYWdpYyAubWNzLWJ1dHRvbi1hcnJvdzpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogIzgzODU4Qjtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGw6aG92ZXIgPiAubWNzLWJ1dHRvbi1hcnJvdzpob3ZlcjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogIzMxMzMzRDtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdzpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogIzMxMzMzRDtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eSA9IDYwKTtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdzpob3ZlciB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gOTYpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3MtYnV0dG9uLWFycm93Lm1jcy1kaXNhYmxlZCB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gMC4wMSkgIWltcG9ydGFudDtcbn1cblxuLypcbiAqIEJ1bGxldHNcbiAqL1xuLk1hZ2ljU2Nyb2xsLWhvcml6b250YWwgLm1jcy1idWxsZXRzIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uTWFnaWNTY3JvbGwtaG9yaXpvbnRhbC5NYWdpY1Njcm9sbC1idWxsZXRzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwgLm1jcy1idWxsZXRzIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwuTWFnaWNTY3JvbGwtYnVsbGV0cyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xufVxuXG4ubWNzLWJ1bGxldCB7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4Mzg1OEI7XG59XG5cbi5tY3MtYnVsbGV0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWE1YTVhO1xufVxuXG4ubWNzLWJ1bGxldC5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM1YTVhNWE7XG59XG5cblxuLyogQ2FwdGlvbiAqL1xuLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGZvbnQ6IG5vcm1hbCA5cHQvMS4yZW0gJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCAnTHVjaWRhIEdyYW5kZScsICdMdWNpZGEgU2FucyBVbmljb2RlJywgVmVyZGFuYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC1yZW5kZXJpbmc6IGdlb21ldHJpY1ByZWNpc2lvbjtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cInNjcm9sbFwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uLFxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImFuaW1hdGlvblwiXSAubWNzLWl0ZW0gLm1jcy1jYXB0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMzNEO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDksNTEsNjEsMC43KTtcbn1cblxuLmx0LWllOS1tYWdpYyAuTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwic2Nyb2xsXCJdIC5tY3MtaXRlbSAubWNzLWNhcHRpb24sXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJhbmltYXRpb25cIl0gLm1jcy1pdGVtIC5tY3MtY2FwdGlvbiB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTYwKTtcbn1cblxuLyogQ2Fyb3VzZWwgJiBDb3ZlciBGbG93ICovXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0sXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY292ZXItZmxvd1wiXSB7XG4gICAgYmFja2dyb3VuZDogIzRmNGY0Zjtcbn1cblxuLk1hZ2ljU2Nyb2xsW2RhdGEtbW9kZT1cImNhcm91c2VsXCJdIGltZyxcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIGltZyB7XG4gICAgYm94LXNoYWRvdzogMHB4IDE1cHggMzBweCAtMTBweCAjMDAwO1xufVxuXG4uTWFnaWNTY3JvbGxbZGF0YS1tb2RlPVwiY2Fyb3VzZWxcIl0gZmlnY2FwdGlvbixcbi5NYWdpY1Njcm9sbFtkYXRhLW1vZGU9XCJjb3Zlci1mbG93XCJdIGZpZ2NhcHRpb24ge1xuICAgIHBhZGRpbmc6IDRweCAwIDA7XG4gICAgZm9udC1zaXplOiAxMHB0O1xuICAgIGZvbnQtZmFtaWx5OiAnTHVjaWRhIEdyYW5kZScsICdMdWNpZGEgU2FucyBVbmljb2RlJywgJ0hlbHZldGljYSBOZXVlJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbn1cblxuXG4vKiBNaXNjICovXG4uTWFnaWNTY3JvbGwubWNzLXNoYWRvd3Mge1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDZweCAxcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1ib3JkZXIgLm1jcy1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZmVmZWY7XG59XG5cbi5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLm1jcy1ib3JkZXIgLm1jcy1pdGVtIHtcbiAgICBtYXJnaW46IDAgM3B4O1xufVxuXG4uTWFnaWNTY3JvbGwtdmVydGljYWwubWNzLWJvcmRlciAubWNzLWl0ZW0ge1xuICAgIG1hcmdpbjogM3B4IDA7XG59XG4vKlxuICogTG9hZGVyXG4gKi9cbi5tY3MtbG9hZGVyIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICBib3R0b206IDBweDtcbn1cblxuLm1jcy1sb2FkZXIgLm1jcy1sb2FkZXItdGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICBtYXJnaW4tbGVmdDogLTM1cHg7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogNjBweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNik7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgaGVpZ2h0OiAxMXB4O1xuICAgIHdpZHRoOiAxMXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBNYWdpY0NpcmNsZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC40OHM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IGxpbmVhcjtcbiAgICBhbmltYXRpb24tbmFtZTogTWFnaWNDaXJjbGU7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjQ4cztcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICBhbmltYXRpb24tZGlyZWN0aW9uOiBsaW5lYXI7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wMSB7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDI1cHg7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDAuMThzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4xOHM7XG59XG5cbi5tY3MtbG9hZGVyLWNpcmNsZV8wMiB7XG4gICAgbGVmdDogN3B4O1xuICAgIHRvcDogN3B4O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjI0cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMjRzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDMge1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgdG9wOiAwO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzA0IHtcbiAgICByaWdodDogN3B4O1xuICAgIHRvcDogN3B4O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjM2cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMzZzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDUge1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMjVweDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC40MnM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjQycztcbn1cblxuLm1jcy1sb2FkZXItY2lyY2xlXzA2IHtcbiAgICByaWdodDogN3B4O1xuICAgIGJvdHRvbTogN3B4O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjQ4cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNDhzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDcge1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgYm90dG9tOiAwO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjU0cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNTRzO1xufVxuXG4ubWNzLWxvYWRlci1jaXJjbGVfMDgge1xuICAgIGxlZnQ6IDdweDtcbiAgICBib3R0b206IDdweDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMC42cztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBNYWdpY0NpcmNsZSB7XG4gICAgMCUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwXG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZcbiAgICB9XG59XG5cblxuQGtleWZyYW1lcyBNYWdpY0NpcmNsZSB7XG4gICAgMCUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwXG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmZcbiAgICB9XG59XG5cbi5tY3MtaXRlbS1sb2FkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL2dpZjtiYXNlNjQsUjBsR09EbGhLZ0FxQU9aeUFGbFdWL1gwOUVSQVFTMHBLdDdkM3JLd3Njakh5SnlhbTNCdGJvYURoT2ZtNXZmMzk5WFYxWE53Y2RiVzFyVzB0SU9CZ2NYRXhHSmZZSlNTa2o0Nk8vYjI5cEdQaitQajQ4akh4LzM5L2VEZjM5dmIyNlNpbzd1NnVxeXFxOHJKeWZIeDhmbjUrYTJyck8zczdjL096K3JxNnFpbnAwZEVSZUxpNGx0WVdicTR1ZkR3OEpDT2ovdjcrL1B6ODI1c2JPam82SUtBZ1pXVGxQajQrTkRQME9ibDV2WDE5Zno4L1ByNit2ejcrOWZXMStIZzRPenM3TGUydHVUazVHZGxaWTJMak5yWjJkalgxOHZLeXVqbjU1NmNuYUdnb0phVWxiMjh2TUxCd2pBc0xlL3Y3Ky91N3NURHc4N056ZTd0N2VYbDVjRy93TkxSMGQzZDNkblkySFZ6YzM5OGZXOXRiZFRUMDZPaG9yQ3Zyem8zT0xTeXM3YTF0V1JoWWxCTlR1TGg0ZEhRMEtLaG9mTHk4cm00dUoyYm5Nekx5OG5JeVhsMmQ1aVdscCtkbmFha3BYeDZlb3FJaU1IQXdkemMzTTdPemlJZUgvLy8vd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNIL0MwNUZWRk5EUVZCRk1pNHdBd0VBQUFBaCtRUUpDZ0J5QUN3QUFBQUFLZ0FxQUFBSC80Qnlnb09FaFlhSGlJbUtoaXB4Y1NxTGtaS0NBSTRBazVnTVB5d2doWlZ4bDRVNE14bVloUlNPTEo2V29nRUJGYWFFU281eEY0U2ZvWUlacmdFMnNZTkZ0TGx5dUlRTHZDMi9nNmlPR0lQRmdqZThzTXFDR0xRVXo2eUNGYnczMWRyTmdnd1VGQXpSdkF1WU9pZGJXWVVYdE9lSHU2NmxoQ3NhS0NHR1Z3UC9KejRRVWxIRmc2SVdJWElRcW9DQ2dFTVlobzc4bXlnQlNyVVdDaHhxWkdKb2pNU0ovNUQ4Q3FCeDR6MURVQ1NBWlBPclJFa0Z5Ulo5T1BGUHl5OFhEbEZRbS9SQlI3VVFPOEVKSFVwVVRwTUdTSk0yMkNBMGdJT25VQjA4RVNTZ3F0V3FLWVNTTU1DMUsxZXFWNjFtQmJmVmExZEJSNVVpWlFyT2FkU25VOWFMeXAyYlNVTzFGVHhNTVhnQkFFQ1VYMkFLRk9pUWQxRUpDSDM3cHZuMVFiRGdDTDRPQmZDUU9QR1FYd29jT3hhQ3d4RGx5aEJLVkxNUlFYTUJJWWFBSkg0eFQ1Q1VNbWNVQlhGamR4Q1BEbzRGRnRMd3drdVhRaU1RQ1BlQmFNU0I0eTRLVGVuUllRV21DY0lSc0MyaFJvMW9PVFdPSDNnd2RFUDBHSU5FV0xBZ1lwQUo3VFdFeG9qT1ZvNTQ4b095SHpjQkxrcjBDWVRlbHgvMFFEdVdhbWhFTjBKKzQrMG5pQXZhaVZITmVnajBVSWgraFRneFh6VStsTkZEVU80VldFZ0lUblF3SUYwUTBwWElHK085SWVLSmdnUUNBQ0g1QkFVS0FISUFMQUFBQUFBcUFDb0FBQWYvZ0hLQ2c0U0Zob2VJaVlxR0tuRnhLb3VSa29JQWpnQ1RtRHBYUjJPRmxYR1hoQ0FzUHd5WWhTY0RBMGVlbG9Vc2poU25oRnVxQTFDRW42R0NGNDV4U3JPRFdiWVN1YTZEbjNGRndZT3BxaC9JeDNJWXZyTE1naCsySjlHZ2d4UytHTmVERXJiUWNnd1VGS2JUdnJ1Ukd5bGZJb1ZRdGpxSURMNFhoUzAyRlJtR3JBZ1ltSUlHSVNSc3RDanlVQVhTb0JzVkFraWNZY2pJd0lzTmlGekxzRUNpUnh5R1hGaThPTEJKc0J3ZVB5WWkwb0JrbTJBaFVpNEF1SWhHaW9Ga2dyV1FXT0hHS1JvYk52b1VSN1NvMFVGRElDaGRDa0VEMFJBS29rcFZFSUFTZ0t0WUFid2dpb0tBMTY5ZXJXYTl1bFZjVjdCZkJTVmxxdFNwT0toVDJxTldQVXEzTHFZTlBxNEZBSEZxUXd3RUNNNEVLMkhBQUFtK2kwWk1BQXg0VGJBZ2hRczdvSGlvUWcvR2pLVUVleEk1OG9VY2hpNWpuakRpMmd3SG5RM3NLMVNHY1l5Z2c2aDRDS01JREFrRm9raEVEbUxJUnd3MFVRb3RTVUFjQnFJVkJaTGJLS1RBREltNWtqZ1FUN0JEMEFnVEprckw0Wkc4UUlTaU82YkxHUFRnd0lFSGd6cDA1MEZVeHZUcWdzcWZIOFE5ZVFkeEg2WnpJQ1FmL2FBSTNVMXhEUkRUTGNHZmVmNEpZa04zUFZ6alhnSkpGTkpmSVVMWWR3ME1IaVN4Z0lRSUZvS0RFQitzWUpjY0U0NklpQWJtdVdYaWlJRUFBQ0g1QkFrS0FISUFMQUVBQVFBb0FDZ0FBQWYvZ0hLQ2c0U0ZnMGdEQTBpR2pJMk9oaEtKRW8rVWhodFdSaTZGa1FPVGxaOXlLUUlDUnB1U29KOWZvd0pFaEp5ZXFJOGlxdzJ1cDdHVW9xTTBnNis0bERTcktiMjN2NDROcTd4eU9pY25Pc1p5R2k5ZVhZVkVxeHUvUlVvVURJUkFBT0V2M29OTmJXUzRHQlJ4N0QrRUh1SHhFQ1hRRndEcytDeUVBZkR4NFVPL1ZPRExCOEpRQ1FqKzB2eXFNaERBaFVjTVhvU0w4c3NET3dvWVFESFFBSTFCUm1nZ1E0cVVJMldDeVpNVGZJVE1zS0NseXdVNUVNaWNLVE5HeUFvQmN1ck1TWk9tVFpBNGQrb3NpZEtrU3BBc1g3Yk1NYktwMDA4N1lFQUxVUUhVRGhrSkVvVDU1WUlBQVJSVkhTM2hrRFVybDE4d3ZIcFYwTUxRZ2lSbHBzdFMrUlZBclZvbUdRakJqY3RoQ2JRV0N1d1NZUEt1ckl3ZGhEUjBDUEtveEpRbmhDcWdVQ3QxRUF3WlFENFVjbkdnODRoR0FReUlubEZvaFFZVUlUNDk2SHlnaHFBVkhUcXNFQVJDdEFFSElHdXdOakVvUW9FQ0VRYVJzRjNRbUFuV3JnWDVCajZvdG1nU3hyQ3dma0JvZWZCQkRtd3IrQ1dHdGFiZXY2OExtbUhieksvakI1d1VzbDdvd3ZOZkl6bzRTVjA5ZktFY0Y0SUVlTXIrYVNNRnYyMkhTeUFBSWZrRUNRb0FjZ0FzQUFBQUFDb0FLZ0FBQi8rQWNvS0RoSVdHaDRpSmlvWk5BZ0pOaTVHU2dnMk9EWk9ZR2tBZUFZV1ZBcGVFWTBkWE9waUZMd0FBSHA2V2hVY0RBeWVuaEY2cUFDV0VuNkdDVUxFRFc3U0RYYmNRdXE2REVyOVp3b09wcWd5RHU0TWZ2N1BOZ2d5M0w5TEljaWUvSDlpREVMZlJjaHNwS1J1QzFiRVNtRDR4YUZHRkpiY2FpRHEvVUlWRlNoVE9FU3FEb0dBTWRvT0dwS21YU0FzYkpJUXdVSWhEOFllaEhnVXpUaGlCN1FJQWlpQlpHS3FBTVdOQktjSlVnQXdKQXRHSUNTYlhDS3V5RXNDRlNCdGlGRHdqekFORkNoaE9iZkNCalVIUWNVaVRLaDFFaFlQVHB4eGdJTlYyNjVZS1FRbXlhczBxQStuRWxTQ3hidFhhZGR4WHNIRUVOWVhxVk9vNHFsWFhBVnhkU3JjdXBob2NtMlc0Y2FxR2lRTUhnZ2hyRVNCQUJiNkxYRHdBRE5pTnNCbUZDeS9JZ0NpRUU4YU04OUhLRVRreWprT1hNVDl3Z1MzRGdzNEJQaGZxd05oRURVSUtQb0JSNUtKRXAwRTNLa1NlWVdpRUNURllDdGtvUUh4RlpRTElXeFJxWWFNQzVVa1JpQmZnSVNnQUNSSzNLeUFub0NBcEQra2RCamt3WU1EQklCVGJLeUR0SUoyNm9QSGxCMmxIam1MY0ZPa1JDTUUzUDBqQmR1UE45Q0NkRGZxUng1OGdMV3lubVREc0ZTQkVJZnNWd2dSOTJLendnUkNxaVdkZ0lSa3dBVU1JZHNrUllZaUlQRUhlRXlTbUdBZ0FJZmtFQlFvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9aREFBQkRpNUdTZ2hDT0VKT1lQbVU5RllXVkFKZUVMa1pXRzVpRk1RZ0lQWjZXaFVZQ0FpbW5oR2lxQ0NPRW42R0NSTEVDWDdTRFViY1R1cTZERGI4aXdvT3BxcWFVeUhJMHY3UE5naHUzTVlPN2d5bS9OTmlERTdmUkdpOHZHb0xWc1EyWU1ESkFINFVqdHo2SUc3OUVoVmxiSnpvTWVVaEFVTVlPUWxMV25GRkVwazBUUWg5T0RKaDR4VkFTZ2hnNUxNRUdSY0xFajBjTUxiaUlrU0FWWVVnK2doeURhQW1Ia2x5RXNWRXBBVXFrSFRJSWhoR21aZUlKZXBoMndNQ21BK2k0bzBpVEN0THdvS25UQjduR01YQkUxWkVLUVFleWFzMXE0aWlGT0dERGdzVzZWV3ZYY1YvRmhsMzYxR2xVYkZQVHExcFZTcmZ1S1I0cjRHSzQyNkZBQVREQ1BJQ2xzSGVSalFoKy9aSVE5a01zZ0F1SWNBaEpuRmlCTUJWcTQ3QUFZV2d5NVFnMnNGMEFvSmFGb1ErSk8vQWc5Q1JJQ1VVdFF1UWdoQ0Z0bkIrR1ZuVG9NYVhRREFQQUF5REtFS0I0aGtKRmxGQmdnTWtCY0FPYzVZUkFnU0tFb0J2RkF5eEFDdUw1WWtFS0NCQ3dMS2hDOWh0SFNUeVBMaWY4K0VIWWkzZkNwdUM1QTBMdXlRdGFrTDBGTmpQUHpZQ2ZlUHJKUVZ4eG9UV2puZ0dRRGZnZUlUakloMDBBUVZ3d200TUZDb0xERE1mWmxaOWRpZ1Fnbm5BZ2xpaEhJQUFoK1FRSkNnQnlBQ3dCQUFFQUtBQW9BQUFILzRCeWdvT0VoWU5TQ0FoU2hveU5qb1lUaVJPUGxJWXdIa2tMaFpFSWs0UUJIa0FhbFlZeUNRbEptNUtGSGdBQUw2U0ZRS2NKUzRTY25vSWxyZ0Jlc1lRZnRCeTNxNE1RdkYyL2hLYW5PNE80Z3d5OHNNcURPN1F5ejhWeUw3d00xWVFjdE01eVBqRXhQb0xTcmhDa0l5WmlXSVZMdERDTkdyd2xoU0pmS1J1RUhRNElORkdERUJVdVlSNUZTVE9FRUkwVUFpSmFJZVJFb01VSExzQUpJdElnb2tjamhFSlV0Q2h3VkxVbUhqOW1MT1RpQVVrMzROcWtiRURrVVEwVEFvT0FJeE14QlkxWU5VWm9sTFBoNTlDalNKUEtVUkNocWRNSUs1RHFrRUMxcWdRa0JiSnF6ZG9CNllrQllNT0MzYnExNjlHdllzTXlmZG8wNnRHcFZxNnBJbEZLdHk0cEVBSHNPZ0pCd29BQmZYb0p6WERnMSsrVXdJSnlYQ2hjK0FsaU9Zc1pPNWp4V0U2UXdpUkFmSUt4c3BHSEtpcGlCU0JoUmtHaEZnUlNoMmpFSUk3ckMwZ1ZwQ1pRUVZDR0NoVXlDTUxnT2c2QW94Vm1veGkwSUVBQVRZSW85TVl3Rk1YczJvS0tIeC9FMnpVRmpTdG1teVp1SExrZ0FMMkxnTk13dXdVaDZkNGg5MVlDemprQkpvWFFGMkpoSFZ3SUdFeDBuKzllQ0FTTEg5L1VKVjlsZytSZ1hBN2dCQUlBSWZrRUNRb0FjZ0FzQUFBQUFDb0FLZ0FBQi8rQWNvS0RoSVdHaDRpSmlvWlVDUWxVaTVHU2doeU9ISk9ZSXgxT0lZV1ZDWmVFRlQxbFBwaUZKZ2NIVHA2V2hUMElDREduaEdLcUJ5NkVuNkdDSTdFSWFMU0RXTGNQdXE2REU3OVJ3b09wcWpXRHU0TWJ2N1BOZ2pXM0p0TEljakcvRzlpREQ3ZlJjakF5TWpDQzFiRVRtQ3NkUFZPRkxyY2ppRDYvK1lSZFhpODBHUHBRb0dBSEhvUTB1QW1pNk13YUtZUVl2QUJBRVlnaElRVXpSckNCclFRRWlpQTlHTUtCTVdOQkJjS0dnQXdaQUpHTkNDWkpDRXV6RWtLSlNEdzZGQVFqTEFyRkZ3eE84VmlCVFVQUWNVaVRLaDMweElIVHB3NWFqdHZRb0tyVkJrMEVHZGpLZGF2TWNTa0VpQjByVm10WHJsK3hoU1U3VmxCVHFFN2FwV0tqZXJWcTFxVjQ4MktxMEttWmpnK25LcUFnUUNBWExTMERCcHdBdktpRkFzS0ViOUs2a2ppeEJDaUlNakNCREZrdUppU1ZLeDhaWTJnelp3VXRzRUdSRUhyQUVVTXdJS09vUUNqSGpOU0pQRlJSUWVqRGljcFhESVZBb1lFb29Rd0JrbWRBeENDTzh3dUZzbXc1b1FQVGd1UUJiZ2hpUUlIQ1VRek80d0JJZWdNN2JVRUFuSThYUkNFOEJxUVZzR3RIcjM0UWVPY1V4clhBdm9CUWV2SCtoVmNFTmpaZ3Q5d2cvNjBueUFYaEtZRk5mQUhnVUVpQ2hiQ0FIellaekNEaGhQVVJBZ0lMUHh5VkY0VjZKYUtDYzd5VnFLSWNnUUFBSWZrRUJRb0FjZ0FzQUFBQUFDb0FLZ0FBQi8rQWNvS0RoSVdHaDRpSmlvWWFCd2NhaTVHU2dnK09ENU9ZS3g5Q09JV1ZCNWVFQzBrZU1KaUZIUVVGUXA2V2hVa0pDVEtuaEQycUJUYUVuNkdDUzdFSlFMU0RVN2NSdXE2REhMOGZ3b09wcWp5RHU0TTd2N1BOZ2p5M0hkTEljaksvTzlpREViZlJjaU1tSmlPQzFiRWNtQUVrWmdxRk5yY3JpREMvUzRWUmFERjhHQXBpb0NBSkVJUVVrQUNqS0F3WEtvUTJ4RUJBc1l5aEN3VXpPcGlCYmNRRWlpQjdHTXFCTVdQQko4S2tnQXhaQWRFTUJ5YW5DRnV6Y2dLN1JTQklGQ3doN0F6RkdCdE9nUWlBelVmUWNVaVRLaDBVUUlIVHB3cENJTlVBb2FwVkNFTUVFZGpLZFNzS3BDOEFpQjByVm10WHJsL0hoU1U3VmxCVHFFN2NwWTZqZXJWcTFxVjQ4Mks2a1FIYkJocW5ibFFJRUtDRk1ESUNCS1FBdkNqREFzS0U1WjZ5a2poeEF5S0pjRUNHbkVOWWs4cVZqYmd3cEhuemdyN05pRFFBTGNDSW9SbVFLOXdncE9LSEIwVmEyQ0FoUkNORlpTdUdNbFN3WVpqUWhUaklHU0RTTWFBNWxFSWl2cVE0S2drQThqZ1lCREdnUUVHNW5BL05CMGhJaXVFNmhVSFc0d0FZZENJOHMzRVVybWNYbEg2OUlQRE5UNHdyY3QwK2ZlVCt5U0ZCZUZsZ284UjFGeEJTSHlGUWhMY0ZOdkhGd1VJaEN4SnlSSDdZTVBBREN3Z3BDR0FoWXh4eGhRNTZ5VkZoaVllb2dKd0tLTFlZQ0FBaCtRUUpDZ0J5QUN3QkFBRUFLQUFvQUFBSC80Qnlnb09FaFlNS0JRVUtob3lOam9ZUmlSR1BsSVlCUVJjNWhaRUZrNFFoVGgwamxZWWtCZ1lYbTVLRlRnY0hKcVNGWnFjR000U2Nub0l1cmdkaXNZUUt0QTYzcTRNUHZGaS9oS2FuSUlPNGd6VzhzTXFESUxRa3o4VnlKcncxMVlRT3RNNXlLeDBkSzRMU3JnK2tJU2dhNllRenRBR05JN3d1aFI5QU1qQ0VNQWdJUkZHQjBKTXBKUjRGY2FPQjBBNFpDU0o2SU1SRW9FVUZMY0FKV3NJaG9zY2toREpVdENqUVhqVXFIajh1TU5SQ0FjbUUxYmlrNUxEa1VRVVVBdlZWQ3hOUnhvNVlGVUpvbEFQajU5Q2pTSlBLeWJHZ3FkTUZHWkQ2bUVDMTZnUXBBYkpxelZyd2FBd0VZTU9DM2JxMTY5Q3ZZc015ZmRvMDZ0R3BWcWFwU2xGS3R5NHBEQXlHYXNoN2wwS2NPQk9yUlFFQTRBWGZSaGNBL1AxYkJSd1F3b1Fod0NRRWdzWGl4U3JBRFlFTTJZTkpRWll2QTBpbHNRUUV6Z0FDQy9xeG1BS0dhbVRhTkNIRTRBVmtJTFFwS0NrQ2JvT0EzMFFLZGZIeW9xRkdIU2RPNkJCRTQ3ZUFCbllGU1Jnd1FNS2dGTTVwUko5ZWZWRHozeW0yVTdjK3FJRnpFWGE1a3hkRXhQbVg5T01MR1FFUHZ6c2hGMGFzYktpL1Bub2hKTlFoQVU0Z0FDSDVCQWtLQUhJQUxBQUFBQUFxQUNvQUFBZi9nSEtDZzRTRmhvZUlpWXFHVHdZR1Q0dVJrb0lPamc2VG1DRXdUQm1GbFFhWGhEaENIeXVZaFNnRUJFeWVsb1ZDQlFVZHA0UWFxZ1F0aEoraGdqYXhCVDIwZ3l1M0NycXVneEcvVThLRHFhb1ZnN3VEUEwrenpZSVZ0eWpTeUhJZHZ6ellnd3EzMFhJQkpDUUJndFd4RVpnWkZUYTVoQzIzSVlncnZ6YUZXR0ltUmhpYUVhQmdoUnVFQXBSd29RZ01DV09EYXBnNFFQR2FxSUlZRjNScTV1SUJ4WTlPRHVIQWlER0hNQTBmUWVZN2xHRUJ5WlduM0tSOHdIRFJqUW9GNjUwS1F0RkVqVk0zTmdvYjhYT2MwYU5JQjZrQXdMUXBBQVpHUzRpWVNsWEVHMEZ4c21yTlNzR29HZ3RndzRMRnVsVnIxM0ZmeFlZVnROUXBVNmpqMDZSV25YbzFxZDI3bUREQUZWYml3aWtNRkxKNkVNWUFyQnEvaXk0QTJGcEZHQmV4SWtBZ0FzR2liQndWd3Q2b3RZQmhocUhLV3dFZ0ZnWkNoRm9NaG42WVJUMEl5UlV0aXFLa0dVTG9RbG9MWEF3eG9LQ2tTQ0VvQTRMclFLU2hhWWxDY05Lb09UNUpRdkFCSHdSdFNKRmlneUFHVFNFYy9mRDh4S0FHQWdRMEdQU2k2ZDVtSjU1SEZ3UmUvQ0RzVEYrTXkvSmNBcUgyNHdkQmFOb0YyNWJuVU53WFhuNkNsTkNVRjlpa044QVJoZUJYaUFmeFlhUERGVWVNMGVDQWhRVGdBUkFhNENXSGd4NGkwa1I0VFlSb1lpQUFJZmtFQlFvQWNnQXNBQUFBQUNvQUtnQUFCLytBY29LRGhJV0doNGlKaW9ZQkJBUUJpNUdTZ2dxT0NwT1lHVE00aHBVRWw0UTVGMEdRbUlRVkFRR2NoSjZnZ3hjR0JpU21oRGFwQVJtc2xvUXpzUVptdElNdHR3dTZuNFFPdnE3QnFLazNnNjJESUw2endZTTN0eFhRdTRJa3ZpRFdoQXUzejNJaEtDZ2hndE94RHBnTUZFcEZoUm0zdVljQnZqT0ZVejBkSzRaK3hCbElBVU9vRUMwVWxaanloQkNQRGdVaWZqREVZcUJGQUJmQzJZZ1FzYU1RUXlBcVdoeW9JcGlDamg1WEdib0FZR1NWWUNSUVJyQVJDUU9GZ1I2Q2dZbllnWWNwREF6Q3JmQVpycWpSbzRkVUFGaktGRURRb2lNZVNKMzZRSU9na1NNcEdEVnhvS3ZYcmxleEV0ejY5YXNncFUyWFBnMFhsYXBVcTBqVjQ4b045a0ZIT0JnN1RIMDRNV0NBbG1CaEVpU1FrWGNSRkFsOSs3SUo1a0d3WUE1TEVJMDVramd4a21CVUhEdE9VcXdRNWNvU29JUmJ3a0Z6Z2lTR3JpUStNWEZRRXl0a0ZKMVpJNFhRRGhtT2N4YlNjV0pMbGtKRUJBamZnTWdIZ3VNakNuMEFJZ01HcGdiQ0JkQVFwT0hGQzdnYmppT1ljSlJHOUJTRElDeUZNQ2lHZHVKRlUwU2ZMa2c4QVBLQ3NoK1BVVlJFOUFhRTNNTVhORUY3bEhCZlJFZEVmdU1STW9KMmFJU2puZ0JHRktKZklUM01GODRHVmhqaGdvTUZudEpER1Q3TTFWNkdIaUl5eEZKRGhHaWlJSUVBQUNINUJBVUtBSElBTEFFQUFRQW9BQ2dBQUFmL2dIS0NnNFNGZ3prQkFUbUdqSTJPaGd1SkM0K1VoZ3cvTENDRmtRR1RoQmxNTUNHVmhoUnhjU3lia29WTUJBUW9wSVZLcDNFWGhKeWVnaTJ1QkJxeGhFVzBBTGVyZ3dxOEs3K0VwcWNZZzdpREZieXd5b01ZdEJUUHhYSW92QlhWaEFDMHpuSVpGUlVaZ3RLdUN1Q0VGN1FNalNHOExZVUtaaVFCc1NwVkhvOHVTdXdiQklLRWdZTkIzSkdhNGVDZ1Exc0tIejF4K0hCUlJFZFRLRHFZY1pGU2lZTWtOSFdzRkVEa3lKTW9LU0dSd0xLbEJCMFhWMFNZU1RPQ2dnRTRjK0k4Y2JGRGdaOUFmK3JVeVRPaXo2QkFWN3BrQ1RPaXpKb3oyNldjU25VUWpRMEtSOVNJUlNPRkFBRmt3QVU1Y01ERVZrZEVHbno5MmdaY0I3SmtyUis0TU9UQ3lOcTFUY0JwZ0F2WHlhaEJkdTgySUtMUXhRTytCNXdRc3JJMkJRMUNRNEJFZVJTR0N4VkNOVXpBN1VCb1E0b3ZJZ3FWQUVEYUZ5TVlDVkl2S1lSRmpJa1JwQ0NRQmlCUGpvOFlNWHdJMnBFNkFZZUlER2EvR0RRQkFZSUpnMlQwM3FId3hlemFjb29mSDhRN3RReDNYV1pESUNRZCtTQU92VCtBOHpLN0JIZmozZ1V0NlEwRW5ITUEvODVQSjVURXVsNGdIZ1lTUjc4cGlRY1lLWFZYbFNGU0dDY0ZPSUVBQURzPScpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1hcnJvd3Mtb3V0c2lkZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICBjb2xvcjogcmdiYSg0OSw1MSw2MSwwLjYpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgLjE1cyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgLjE1cyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjE1cyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgLjE1cyBsaW5lYXI7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzMHB4O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtaG9yaXpvbnRhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMTBweCAxMHB4IDA7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC12ZXJ0aWNhbCAubWNzLWJ1dHRvbi1hcnJvdy1wcmV2IHtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAxMHB4IDAgMDtcbn1cblxuLk1hZ2ljU2Nyb2xsLm1jcy1yb3VuZGVkLk1hZ2ljU2Nyb2xsLXZlcnRpY2FsIC5tY3MtYnV0dG9uLWFycm93LW5leHQge1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMTBweCAxMHB4O1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQgLm1jcy1idXR0b24tYXJyb3cubWNzLWRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHJnYmEoNDksNTEsNjEsLjEpO1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1hcnJvd3Mtb3V0c2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgxNTMsIDE1MywgMTUzLCAuNSk7XG59XG5cbi5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93OmhvdmVyOm5vdCgubWNzLWRpc2FibGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuOTYpO1xuICAgIGNvbG9yOiByZ2JhKDQ5LDUxLDYxLDEpO1xufVxuXG4uTWFnaWNTY3JvbGwubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNzUpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggcmdiYSgxNTMsIDE1MywgMTUzLCAuNSk7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctcHJldiB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDFweCAwIDA7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC1ob3Jpem9udGFsLk1hZ2ljU2Nyb2xsLWFycm93cy1pbnNpZGUgLm1jcy1idXR0b24tYXJyb3ctbmV4dCB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgMCAxcHg7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC12ZXJ0aWNhbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93LXByZXYge1xuICAgIGJvcmRlci13aWR0aDogMCAwIDFweCAwO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwtdmVydGljYWwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdy1uZXh0IHtcbiAgICBib3JkZXItd2lkdGg6IDFweCAwIDAgMDtcbn1cblxuLmx0LWllOS1tYWdpYyAubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwgLm1jcy1idXR0b24tYXJyb3cge1xuICAgIGNvbG9yOiAjODM4NThCO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tY3Mtcm91bmRlZC5NYWdpY1Njcm9sbC5NYWdpY1Njcm9sbC1hcnJvd3MtaW5zaWRlIC5tY3MtYnV0dG9uLWFycm93IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eSA9IDc1KTtcbn1cblxuLmx0LWllOS1tYWdpYyAubWNzLXJvdW5kZWQuTWFnaWNTY3JvbGwuTWFnaWNTY3JvbGwtYXJyb3dzLWluc2lkZSAubWNzLWJ1dHRvbi1hcnJvdzpob3ZlciB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5ID0gOTYpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5NYWdpY1Njcm9sbC5tY3Mtcm91bmRlZCAubWNzLWJ1dHRvbi1hcnJvdy5tY3MtZGlzYWJsZWQge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eSA9IDc1KSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjY2NjO1xufVxuIiwi77u/LypcblxuXG4gICBNYWdpYyBab29tIFBsdXMgdjUuMi40IFxuICAgQ29weXJpZ2h0IDIwMTcgTWFnaWMgVG9vbGJveFxuICAgQnV5IGEgbGljZW5zZTogaHR0cHM6Ly93d3cubWFnaWN0b29sYm94LmNvbS9tYWdpY3pvb21wbHVzL1xuICAgTGljZW5zZSBhZ3JlZW1lbnQ6IGh0dHBzOi8vd3d3Lm1hZ2ljdG9vbGJveC5jb20vbGljZW5zZS9cblxuXG4qL1xuXG4vKipcbiAqIENvcmUgc3R5bGVzXG4gKi9cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIm1hZ2ljdG9vbGJveC10aGluXCI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgc3JjOiB1cmwoXCIuLi9tYWdpYy10b29sYm94LWZvbnRzL21hZ2ljdG9vbGJveC10aGluLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcImRhdGE6Zm9udC9vcGVudHlwZTtiYXNlNjQsQUFFQUFBQU5BSUFBQXdCUVJrWlVUWEpMU0VnQUFBZEFBQUFBSEVkRVJVWUFLUUFQQUFBSElBQUFBQjVQVXk4eUFsWUw0UUFBQVZnQUFBQldZMjFoY0VBWVk3MEFBQUhVQUFBQlNtZGhjM0QvL3dBREFBQUhHQUFBQUFobmJIbG1NTVZPSndBQUF6UUFBQUdJYUdWaFpBbVdVWU1BQUFEY0FBQUFObWhvWldFUDlRYW1BQUFCRkFBQUFDUm9iWFI0TDBFQVFBQUFBYkFBQUFBa2JHOWpZUUdHQWdBQUFBTWdBQUFBRkcxaGVIQUFVQUFjQUFBQk9BQUFBQ0J1WVcxbDZNUGdkQUFBQkx3QUFBSDFjRzl6ZExhVHV5SUFBQWEwQUFBQVpBQUJBQUFBQVFBQUVXZHh6MThQUFBVQUN3Z0FBQUFBQU5EdGcvTUFBQUFBME8yRDh3QUEvZ0lJbkFhZUFBQUFDQUFDQUFBQUFBQUFBQUVBQUFhZS9nSUF1QWliQUFELy93aWNBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUpBQUVBQUFBSkFCa0FCUUFBQUFBQUFnQUFBQUVBQVFBQUFFQUFBQUFBQUFBQUFRWmVBWkFBQlFBSUJUTUZtUUFBQVI0Rk13V1pBQUFEMXdCbUFoSUFBQUFBQlFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDQUFBQUFBQUFVR1pGWkFCQW9BR2dCZ1ptL21ZQXVBYWVBZjRBQUFBQkFBQUFBQUFBQkFBQUFBQUFBQUFDcWdBQUNKc0FBQU9sQUFBRHBRQUFDSnNBQUFpYkFBQUhmQUJBQUFBQUF3QUFBQU1BQUFBY0FBRUFBQUFBQUVRQUF3QUJBQUFBSEFBRUFDZ0FBQUFHQUFRQUFRQUNBQUNnQnYvL0FBQUFBS0FCLy84QUFHQUNBQUVBQUFBQUFBQUFBQUVHQUFBQkFBQUFBQUFBQUFFQ0FBQUFBZ0FBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBcUFDb0FLZ0JNQUdBQWRBQ0lBSndBeEFBRkFBQUFBQVFBQlpvQUFnQUZBQWdBQ3dBUEFBQVRFUWtCSVFFM0FSRUpBU0VERVNFUlpnRmQvdUVDdVA2a1BRRmQvbVlCWFAxSXBBUUFCTmY3N0FJSy9aa0NDMXo5OWdRVS9sSUNDdnJOQlpyNlpnQUJBQUQrQWdpY0JwNEFDd0FBQ1FFSENRRW5DUUUzQ1FFWEJIRUVLeVA3MWZ2Vkl3UXIrOVVqQkNzRUt5TUNVUHZWSXdRcis5VWpCQ3NFS3lQNzFRUXJJd0FBQUFFQUFQNENBNllHbmdBRkFBQVJBUmNKQVFjRGl4djhpUU4xR3dKUUJFNFgrOG43eVJjQUFBQUJBQUQrQWdPbUJwNEFCUUFBQ1FFbkNRRTNBNmI4ZHhzRGQveUhHd0pRKzdJWEJEY0VOeGNBQVFBQUFEY0luQVBkQUFVQUFDVUJOd2tCRndSTys3SVhCRGNFTnhjM0E0b2EvSWtEZVJvQUFBRUFBQUEzQ0p3RDNRQUZBQUFKQVFjSkFTY0VUZ1JPRi92Sis4a1hBOTM4ZHhzRGQveUhHd0FDQUVBQVFBSEFBY0FBRFFBWUFBQWxCeWNHSXlJbU5EWXlGaFVVRHdFV016STJOQ1lpQmhVVUFjQVhjU2szUDFsWmZsa2gxeWM1T0ZCUWNGQlhGM0VoV1g1WldUODJLUUluVUhCUVVEZzVBQUFBREFDV0FBRUFBQUFBQUFFQUVRQWtBQUVBQUFBQUFBSUFCQUJBQUFFQUFBQUFBQU1BTFFDaEFBRUFBQUFBQUFRQUVRRHpBQUVBQUFBQUFBVUFDd0VkQUFFQUFBQUFBQVlBRVFGTkFBTUFBUVFKQUFFQUlnQUFBQU1BQVFRSkFBSUFDQUEyQUFNQUFRUUpBQU1BV2dCRkFBTUFBUVFKQUFRQUlnRFBBQU1BQVFRSkFBVUFGZ0VGQUFNQUFRUUpBQVlBSWdFcEFFMEFZUUJuQUdrQVl3QlVBRzhBYndCc0FHSUFid0I0QUMwQVZBQm9BR2tBYmdBQVRXRm5hV05VYjI5c1ltOTRMVlJvYVc0QUFGUUFhQUJwQUc0QUFGUm9hVzRBQUVZQWJ3QnVBSFFBUmdCdkFISUFad0JsQUNBQU1nQXVBREFBSUFBNkFDQUFUUUJoQUdjQWFRQmpBRlFBYndCdkFHd0FZZ0J2QUhnQUxRQlVBR2dBYVFCdUFDQUFPZ0FnQURJQU53QXRBREVBTFFBeUFEQUFNUUExQUFCR2IyNTBSbTl5WjJVZ01pNHdJRG9nVFdGbmFXTlViMjlzWW05NExWUm9hVzRnT2lBeU55MHhMVEl3TVRVQUFFMEFZUUJuQUdrQVl3QlVBRzhBYndCc0FHSUFid0I0QUMwQVZBQm9BR2tBYmdBQVRXRm5hV05VYjI5c1ltOTRMVlJvYVc0QUFGWUFaUUJ5QUhNQWFRQnZBRzRBSUFBeEFDNEFNQUFBVm1WeWMybHZiaUF4TGpBQUFFMEFZUUJuQUdrQVl3QlVBRzhBYndCc0FHSUFid0I0QUMwQVZBQm9BR2tBYmdBQVRXRm5hV05VYjI5c1ltOTRMVlJvYVc0QUFBQUFBQUlBQUFBQUFBRC9tZ0JtQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNRQUFBQUVBQWdFQ0FRTUJCQUVGQVFZQkJ3ZDFibWxCTURBeEIzVnVhVUV3TURJSGRXNXBRVEF3TXdkMWJtbEJNREEwQjNWdWFVRXdNRFVIZFc1cFFUQXdOZ0FBQUFILy93QUNBQUVBQUFBTUFBQUFGZ0FBQUFJQUFRQURBQWdBQVFBRUFBQUFBZ0FBQUFBQUFBQUJBQUFBQU5Cd1FHRUFBQUFBME8yRDh3QUFBQURRN1lQelwiKTtcbn1cblxuLk1hZ2ljWm9vbSxcbi5tei1maWd1cmUsXG4ubXotbGVucyxcbi5tei16b29tLXdpbmRvdyxcbi5tei1sb2FkaW5nLFxuLm16LWhpbnQsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlLFxuLm16LWV4cGFuZCAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUgLm16LWNhcHRpb24sXG4ubXotdGh1bWIgaW1nLFxuLm16LWV4cGFuZC10aHVtYm5haWxzLFxuLm16LWV4cGFuZC1jb250cm9scyxcbi5tei1idXR0b24ge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uTWFnaWNab29tLFxuLm16LWZpZ3VyZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGRpcmVjdGlvbjogbHRyICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLk1hZ2ljWm9vbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuXG5maWd1cmUubXotZmlndXJlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuXG4uTWFnaWNab29tIGltZyxcbi5tei1maWd1cmUgaW1nIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uTWFnaWNab29tID4gaW1nLFxuLm16LWZpZ3VyZSA+IGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaWU4LW1hZ2ljIC5NYWdpY1pvb20gPiBpbWcsXG4uaWU4LW1hZ2ljIC5tei1maWd1cmUgPiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubXotZmlndXJlLm16LW5vLXpvb20ubXotbm8tZXhwYW5kLFxuLm16LWV4cGFuZCAubXotZmlndXJlLm16LW5vLXpvb20ge1xuICAgIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuXG4ubXotZmlndXJlLm16LWFjdGl2ZSxcbi5tei1leHBhbmQge1xuICAgIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4ubXotbGVucyxcbi5tei16b29tLXdpbmRvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tei1sZW5zIGltZyxcbi5tei16b29tLXdpbmRvdyBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm16LWxlbnMgaW1nIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tei16b29tLXdpbmRvdyB7XG4gICAgei1pbmRleDogMjAwMDAwMDAwMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyIHtcbiAgICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgd2hpdGUsIGJsYWNrKTtcbiAgICAtd2Via2l0LW1hc2stY2xpcDogY29udGVudDtcbiAgICBjdXJzb3I6IG5vbmU7XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlIC5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgY3Vyc29yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIubXotZXhwYW5kZWQge1xuICAgIHotaW5kZXg6IDIxNDc0ODM2NDc7XG59XG5cbi5tei16b29tLXdpbmRvdyBpbWcge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBsZWZ0OiAtMTAwMCU7XG4gICAgcmlnaHQ6IC0xMDAwJTtcbiAgICB0b3A6IC0xMDAwJTtcbiAgICBib3R0b206IC0xMDAwJTtcbiAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlICFpbXBvcnRhbnQ7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlICFpbXBvcnRhbnQ7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wcmV2aWV3IGltZyB7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei16b29tLXdpbmRvdyBpbWcge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kLWNvbnRyb2xzIHtcbiAgICB6LWluZGV4OiAyMTQ3NDgzNjQ3O1xufVxuXG4ubXotZmFkZSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXM7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzO1xufVxuXG4ubXotaGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ubXotdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtYmcge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBmbGF0ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBmbGF0ICFpbXBvcnRhbnQ7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUgLm16LWNhcHRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kLWNvbnRyb2xzLm16LWZhZGUge1xuICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kID4gLm16LXpvb20td2luZG93IHtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmRlZC12aWV3LW9wZW4sXG4ubXotZXhwYW5kZWQtdmlldy1vcGVuIGJvZHkge1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLm16LWV4cGFuZGVkLXZpZXctb3BlbiBib2R5IHtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuXG4vKipcbiAqIE1haW4gZmlndXJlXG4gKi9cbi5tei1maWd1cmUubXotYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4ubXotZmlndXJlLm16LW5vLXpvb20sXG4ubXotZmlndXJlLm16LWNsaWNrLXpvb20sXG4ubXotZmlndXJlLm16LWFjdGl2ZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogLXdlYmtpdC16b29tLWluO1xuICAgIGN1cnNvcjogLW1vei16b29tLWluO1xuICAgIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUubXotbm8tZXhwYW5kIHtcbiAgICBjdXJzb3I6IGNyb3NzaGFpcjtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUubXotY2xpY2stem9vbS5tei1uby1leHBhbmQge1xuICAgIGN1cnNvcjogY3Jvc3NoYWlyO1xuICAgIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDtcbiAgICBjdXJzb3I6IC1tb3otem9vbS1vdXQ7XG4gICAgY3Vyc29yOiB6b29tLW91dDtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUubXotbWFnbmlmaWVyLXpvb20ubXotaG92ZXItem9vbS5tei1uby1leHBhbmQge1xuICAgIGN1cnNvcjogbm9uZTtcbn1cblxuLm16LWZpZ3VyZS5tei1tYWduaWZpZXItem9vbS5tei1hY3RpdmUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlID4gaW1nIHtcbiAgICBmaWx0ZXI6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XFwnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXCc+PGZpbHRlciBpZD1cXCdncmF5c2NhbGVcXCc+PGZlQ29sb3JNYXRyaXggdHlwZT1cXCdzYXR1cmF0ZVxcJyB2YWx1ZXM9XFwnMFxcJy8+PGZlQ29tcG9uZW50VHJhbnNmZXI+PGZlRnVuY0EgdHlwZT1cXCdsaW5lYXJcXCcgc2xvcGU9XFwnMC42XFwnLz48L2ZlQ29tcG9uZW50VHJhbnNmZXI+PC9maWx0ZXI+PC9zdmc+I2dyYXlzY2FsZVwiKTtcbiAgICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDgwJSkgb3BhY2l0eSg2MCUpO1xuICAgIGZpbHRlcjogZ3JheXNjYWxlKDgwJSkgb3BhY2l0eSg2MCUpO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotZmlndXJlLm16LWFjdGl2ZSA+IGltZyB7XG4gICAgb3BhY2l0eTogMC42O1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubXotZmlndXJlLm16LWFjdGl2ZSA+IGltZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKGdyYXlTY2FsZT0xLG9wYWNpdHk9MC42KTtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSxcbi5sdC1pZTExLW1hZ2ljIC5tei1leHBhbmQgLm16LWZpZ3VyZS5tei1hY3RpdmUubXotaW5uZXItem9vbSxcbi5sdC1pZTExLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20gPiBpbWcge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cbi5sdC1pZTExLW1hZ2ljIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20sXG4ubHQtaWUxMS1tYWdpYyAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tID4gLm16LXpvb20td2luZG93IHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubXotZXhwYW5kIC5tei1maWd1cmUubXotYWN0aXZlLm16LWlubmVyLXpvb20sXG4ubHQtaWUxMC1tYWdpYyAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tID4gaW1nIHtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG59XG5cbi5pZTktbWFnaWMgLm16LWV4cGFuZCAubXotZmlndXJlLm16LWFjdGl2ZS5tei1pbm5lci16b29tIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBab29tIGxlbnNcbiAqL1xuLm16LWxlbnMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE3MCwxNzAsMTcwLDAuNyk7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDAsMCwwLC4zKTtcbiAgICBjdXJzb3I6IG5vbmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLm16LWZpZ3VyZS5tei1hY3RpdmUgLm16LWxlbnMge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSkgLjFzO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KSAuMXM7XG59XG5cbi5tei1maWd1cmUubXotYWN0aXZlLm16LW1hZ25pZmllci16b29tIC5tei1sZW5zIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IG5vbmU7XG59XG5cbi8qKlxuICogWm9vbSB3aW5kb3dcbiAqL1xuLm16LXpvb20td2luZG93IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCAzcHggcmdiYSgwLCAwLCAwLCAuMik7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsLjMpO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNzAsMTcwLDE3MCwwLjcpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAyMHB4IDFweCByZ2JhKDAsMCwwLC4zKTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotbWFnbmlmaWVyLm16LXNxdWFyZSxcbi5tei16b29tLXdpbmRvdy5tei1tYWduaWZpZXIubXotc3F1YXJlOmJlZm9yZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei16b29tLXdpbmRvdyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcbn1cblxuLm16LXpvb20td2luZG93Lm16LWlubmVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLyogQ2FwdGlvbiBpbiB6b29tIHdpbmRvdyAqL1xuLm16LXpvb20td2luZG93IC5tei1jYXB0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjNzc3O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTBwdDtcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxNTA7XG4gICAgcGFkZGluZzogM3B4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotem9vbS13aW5kb3cgLm16LWNhcHRpb24ge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7XG59XG5cbi5tei16b29tLXdpbmRvdy5jYXB0aW9uLWJvdHRvbSAubXotY2FwdGlvbiB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbn1cblxuLm16LXpvb20td2luZG93Lm16LWV4cGFuZGVkID4gLm16LWNhcHRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFpvb20gd2luZG93IGFuaW1hdGlvbnMgKi9cbi5tei16b29tLXdpbmRvdy5tei1kZWFjdGl2YXRpbmcsXG4ubXotem9vbS13aW5kb3cubXotYWN0aXZhdGluZyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpLCAtd2Via2l0LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLjI1LCAwLjUsIDAuNSwgMC45KTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpLCB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1kZWFjdGl2YXRpbmcge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogLjI1cywgLjI1cywgLjI1cztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMjVzLCAuMjVzLCAuMjVzO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1yaWdodCxcbi5tei16b29tLXdpbmRvdy5tei1wLWxlZnQsXG4ubXotem9vbS13aW5kb3cubXotcC10b3AsXG4ubXotem9vbS13aW5kb3cubXotcC1ib3R0b20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogLTEwMDtcbn1cblxuLm16LXpvb20td2luZG93Lm16LXAtcmlnaHQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMCUsIDAsIDApO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1sZWZ0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLXRvcCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMCUsIDApO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1ib3R0b20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMCUsIDApO1xufVxuLyogSW5uZXIgbW9kZSBhbmltYXRpb24gKi9cbi5tei16b29tLXdpbmRvdyA+IGltZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApIHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCkgc2NhbGUoMSk7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubXotem9vbS13aW5kb3cubXotcC1pbm5lci5tei1kZWFjdGl2YXRpbmcgPiBpbWcsXG4ubXotem9vbS13aW5kb3cubXotcC1pbm5lci5tei1hY3RpdmF0aW5nID4gaW1nIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIC4yMnMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yMnMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpICFpbXBvcnRhbnQ7XG59XG4vKiBNYWduaWZpZXIgbW9kZSBhbmltYXRpb24gKi9cbi5tei16b29tLXdpbmRvdy5tei1wLW1hZ25pZmllciB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKTtcbn1cbi8qIFByZXZpZXcgbW9kZSBhbmltYXRpb24gKi9cbi5tei16b29tLXdpbmRvdy5tei1wcmV2aWV3Lm16LWRlYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1wcmV2aWV3Lm16LWFjdGl2YXRpbmcsXG4ubXotem9vbS13aW5kb3cubXotY3VzdG9tLm16LWRlYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1jdXN0b20ubXotYWN0aXZhdGluZyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNSwgMC41LCAwLjkpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBjdWJpYy1iZXppZXIoMC4yNSwgMC41LCAwLjUsIDAuOSk7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wcmV2aWV3Lm16LWRlYWN0aXZhdGluZyxcbi5tei16b29tLXdpbmRvdy5tei1jdXN0b20ubXotZGVhY3RpdmF0aW5nIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XG59XG5cbi5tei16b29tLXdpbmRvdy5tei1wLXByZXZpZXcsXG4ubXotem9vbS13aW5kb3cubXotcC1jdXN0b20ge1xuICAgIG9wYWNpdHk6IDA7XG59XG5cblxuLyoqXG4gKiBIaW50ICYgTG9hZGluZ1xuICovXG4ubXotaGludCxcbi5tei1sb2FkaW5nIHtcbiAgICBjb2xvcjogI2VlZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDQ5LDUxLDYxLDAuNyk7XG4gICAgZm9udDogbm9ybWFsIDEycHgvMS4yZW0gJ0x1Y2lkYSBHcmFuZGUnLCAnTHVjaWRhIFNhbnMgVW5pY29kZScsIFZlcmRhbmEsICdIZWx2ZXRpY2EgTmV1ZScsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlO1xufVxuXG4ubXotaGludCB7XG4gICAgYm90dG9tOiA4cHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nOiAwIDEwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgei1pbmRleCAwLjI1cyBlYXNlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgei1pbmRleCAwLjI1cyBlYXNlO1xufVxuXG4ubXotaGludC1tZXNzYWdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogcmdiYSg0OSw1MSw2MSwwLjcpO1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBwYWRkaW5nOiAuN2VtIDEuMWVtO1xufVxuXG4ubXotaGludC1tZXNzYWdlOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMDIyOTUnO1xuICAgIGZvbnQtZmFtaWx5OiBzZXJpZjtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIHNwZWFrOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogLTJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2U7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWhpbnQtbWVzc2FnZTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tei1oaW50LWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6IC42cztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAuNnM7XG59XG4vKiBIaW50IGluIHRoZSBleHBhbmRlZCB2aWV3IG9uIG1vYmlsZSAqL1xuLm16LWV4cGFuZCAubXotaGludCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgICB0b3A6IDUwJTtcbiAgICBib3R0b206IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC01MCUpO1xufVxuXG4ubXotZXhwYW5kIC5tei1oaW50LW1lc3NhZ2Uge1xuICAgIHBhZGRpbmc6IDEuMWVtO1xufVxuXG4ubXotZXhwYW5kIC5tei1oaW50LW1lc3NhZ2U6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubXotZXhwYW5kIC5tei1oaW50LWhpZGRlbiB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAxcztcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAxcztcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4vKiBMb2FkaW5nIGluZGljYXRvciAqL1xuLm16LWxvYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ubXotbG9hZGluZzphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tei1sb2FkaW5nLnNob3duIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDBzO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMHM7XG59XG5cbi5tei1sb2FkaW5nLnNob3duOmFmdGVyIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc3Bpbi1sb2FkaW5nIC45cyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYW5pbWF0aW9uOiBzcGluLWxvYWRpbmcgLjlzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4tbG9hZGluZyB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzcGluLWxvYWRpbmcge1xuICAgIDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei1sb2FkaW5nIHtcbiAgICBib3JkZXItcmFkaXVzOiAyZW07XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmc6IC43ZW0gMS4xZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubXotbG9hZGluZzphZnRlciB7XG4gICAgY29udGVudDogJ0xvYWRpbmcuLi4nO1xuICAgIHRleHQtaW5kZW50OiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWxvYWRpbmcge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMjZweDtcbiAgICBtYXJnaW46IGF1dG87XG59XG5cbi5sdC1pZTktbWFnaWMgLm16LWhpbnQtbWVzc2FnZSxcbi5sdC1pZTktbWFnaWMgLm16LWxvYWRpbmcuc2hvd24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoR3JhZGllbnRUeXBlPTAsU3RhcnRDb2xvclN0cj0nIzdjMzEzMzNEJywgRW5kQ29sb3JTdHI9JyM3YzMxMzMzRCcpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei1oaW50LWhpZGRlbiB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xufVxuXG5cblxuLyoqXG4gKiBFeHBhbmRlZCB2aWV3XG4gKi9cbi5tei1leHBhbmQsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBpbWcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBzdmcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBpbWcsXG4ubXotZXhwYW5kIC5tei1leHBhbmQtYmcgPiBzdmcge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyxcbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyA+IHN2ZyB7XG4gICAgbWluLXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDEpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMjEwMDAwMDAwMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC13ZWJraXQtcGVyc3BlY3RpdmU6IDYwMHB4O1xuICAgIHBlcnNwZWN0aXZlOiA2MDBweDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xufVxuXG4vKiBFeHBhbmRlZCB2aWV3IGJhY2tncm91bmQgKi9cbi5tei1leHBhbmQgLm16LWV4cGFuZC1iZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHotaW5kZXg6IC0xMDA7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCkgc2NhbGUoMTApIHJvdGF0ZSgwLjAxZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwwKSBzY2FsZSgxMCwxMCkgcm90YXRlKDAuMDFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApIHNjYWxlKDEwKSByb3RhdGUoMC4wMWRlZyk7XG4gICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNjAwcHg7XG4gICAgcGVyc3BlY3RpdmU6IDYwMHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnID4gaW1nIHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgZmlsdGVyOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVxcJ2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFwnPjxmaWx0ZXIgaWQ9XFwnYmx1clxcJz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVxcJzgwXFwnIGluPVxcJ1NvdXJjZUdyYXBoaWNcXCc+PC9mZUdhdXNzaWFuQmx1cj48L2ZpbHRlcj48L3N2Zz4jYmx1clwiKTtcbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cigyMHB4KSBicmlnaHRuZXNzKDYwJSk7XG4gICAgZmlsdGVyOiBibHVyKDIwcHgpIGJyaWdodG5lc3MoNjAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLWJnID4gc3ZnIHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgb3BhY2l0eTogLjY7XG59XG5cbltkYXRhLW1hZ2ljLXVhPWVkZ2VdIC5tei1leHBhbmQgLm16LWV4cGFuZC1iZyxcbi5sdC1pZTEwLW1hZ2ljIC5tei1leHBhbmQgLm16LWV4cGFuZC1iZyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei1leHBhbmQge1xuICAgIGJhY2tncm91bmQ6ICMxZjFmMWY7XG59XG5cbltkYXRhLW1hZ2ljLXVhPWVkZ2VdIC5tei1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzEsIDMxLCAzMSwgLjk2KTtcbn1cblxuLyoqIFBsYWluIGJhY2tncm91bmRzOiBkYXJrLWJnLCB3aGl0ZS1iZyAqKi9cbi5tei1leHBhbmQucGxhaW4tYmcgLm16LWV4cGFuZC1iZyxcbi5tei1leHBhbmQuZGFyay1iZyAubXotZXhwYW5kLWJnLFxuLm16LWV4cGFuZC53aGl0ZS1iZyAubXotZXhwYW5kLWJnIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tei1leHBhbmQuZGFyay1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFmMWYxZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMxLCAzMSwgMzEsIC45Nik7XG59XG5cbi5tei1leHBhbmQud2hpdGUtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi8qIEV4cGFuZGVkIHZpZXcgc3RhZ2UgKi9cbi5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZSB7XG4gICAgei1pbmRleDogMjEwMDAwMDAwMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UgLm16LWltYWdlLXN0YWdlIHtcbiAgICB6LWluZGV4OiA1MDtcbiAgICBsZWZ0OiAxMjBweDtcbiAgICByaWdodDogMTIwcHg7XG4gICAgcGFkZGluZzogMjBweCAwIDQwcHggMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogNjAwcHg7XG4gICAgcGVyc3BlY3RpdmU6IDYwMHB4O1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLndpdGgtdGh1bWJzIC5tei1pbWFnZS1zdGFnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xufVxuXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UubXotem9vbS1pbiAubXotaW1hZ2Utc3RhZ2Uge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1pbWFnZS1zdGFnZSA+IGZpZ3VyZTpiZWZvcmUsXG4ubXotZXhwYW5kIC5tei1pbWFnZS1zdGFnZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDA7XG59XG5cbi5tei1leHBhbmQgLm16LWltYWdlLXN0YWdlID4gZmlndXJlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubXotZXhwYW5kIC5tei1maWd1cmUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubXotZXhwYW5kIC5tei1maWd1cmUgPiBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5tei1leHBhbmQgLm16LXpvb20taW4gLm16LWltYWdlLXN0YWdlID4gZmlndXJlLFxuLm16LWV4cGFuZCAubXotem9vbS1pbiAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUgLm16LWZpZ3VyZS5tei1hY3RpdmF0aW5nLFxuLm16LWV4cGFuZCAubXotem9vbS1pbiAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUgLm16LWZpZ3VyZS5tei1hY3RpdmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLm16LWV4cGFuZCAubXotZmlndXJlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gICAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gICAgY3Vyc29yOiB6b29tLWluO1xufVxuXG4ubXotZXhwYW5kIC5tei1maWd1cmUubXotYWN0aXZlIHtcbiAgICBjdXJzb3I6IGNyb3NzaGFpcjtcbiAgICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gICAgY3Vyc29yOiAtbW96LXpvb20tb3V0O1xuICAgIGN1cnNvcjogem9vbS1vdXQ7XG59XG4vKiBXaGVuIGlubmVyIHpvb20gaXMgYWx3YXlzIHNob3duICovXG4ubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2UubXotem9vbS1pbi5tei1hbHdheXMtem9vbSAubXotaW1hZ2Utc3RhZ2UgPiBmaWd1cmUgPiBmaWd1cmUgPiBpbWcge1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAtNTAwMHB4ICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiAtNTAwMHB4ICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogLTUwMDBweCAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAtNTAwMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5sdC1pZTEwLW1hZ2ljIC5tei16b29tLXdpbmRvdy5tei1leHBhbmRlZCBpbWcge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xufVxuXG4ubHQtaWUxMC1tYWdpYyAubXotZXhwYW5kIC5tei1maWd1cmUubXotbWFnbmlmaWVyLXpvb20ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG59XG5cblxuLyogQ2FwdGlvbiBpbiBleHBhbmRlZCB2aWV3ICovXG4ubXotZXhwYW5kIC5tei1jYXB0aW9uIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCA0NnB4ICMwMDA7XG4gICAgcGFkZGluZzogMTBweCA0cHg7XG4gICAgZm9udDogbm9ybWFsIDEwcHQvMWVtICdMdWNpZGEgR3JhbmRlJywgJ0x1Y2lkYSBTYW5zIFVuaWNvZGUnLCBWZXJkYW5hLCAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ubXotZXhwYW5kIC5tei1jYXB0aW9uLm16LXNob3cge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0O1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5tei1leHBhbmQgLm16LWNhcHRpb24gYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubXotZXhwYW5kLndoaXRlLWJnIC5tei1jYXB0aW9uIHtcbiAgICBjb2xvcjogIzU1NTtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLmx0LWllOS1tYWdpYyAubXotZXhwYW5kIC5tei1jYXB0aW9uIHtcbiAgICB0b3A6IDEwMCU7XG59XG5cbi5tei1leHBhbmQgLm16LXpvb20td2luZG93IHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4ubHQtaWU5LW1hZ2ljIC5tei1leHBhbmQgLm16LXpvb20td2luZG93IHtcbiAgICBib3JkZXI6IDA7XG59XG5cbi8qIEV4cGFuZGVkIHZpZXcgb24gbW9iaWxlICovXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQtc3RhZ2UgLm16LWV4cGFuZC10aHVtYm5haWxzLFxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kLXN0YWdlIC5tei1pbWFnZS1zdGFnZSB7XG4gICAgbGVmdDogMHB4O1xuICAgIHJpZ2h0OiAwcHg7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLXN0YWdlLndpdGgtdGh1bWJzIHtcbiAgICBib3R0b206IDBweDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kLXN0YWdlIC5tei1pbWFnZS1zdGFnZSB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLm1vYmlsZS1tYWdpYyAubXotZXhwYW5kIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMgLm16LWltYWdlLXN0YWdlIHtcbiAgICBwYWRkaW5nOiA1cHggMCA2MHB4O1xufVxuXG4ubW9iaWxlLW1hZ2ljIC5tei1leHBhbmQgLm16LWV4cGFuZC1zdGFnZS5tei16b29tLWluIC5tei1pbWFnZS1zdGFnZSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCAubXotZXhwYW5kLXRodW1ibmFpbHMge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiA2MHB4O1xufVxuXG5cbi8qKlxuICogQnV0dG9ucyAmIEFycm93c1xuICovXG4ubXotZXhwYW5kLWNvbnRyb2xzLFxuYnV0dG9uLm16LWJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbiB7XG4gICAgY29sb3I6ICNiNGI0YjQgIWltcG9ydGFudDtcbiAgICBmb250OiA5MDAgMzRweC8xICdtYWdpY3Rvb2xib3gtdGhpbicgIWltcG9ydGFudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogOTAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTgwLCAxODAsIDE4MCwgMCkgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHNwZWFrOiBub25lO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIHdpZHRoOiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XG4gICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgZm9udDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuYnV0dG9uLm16LWJ1dHRvbi5tei1idXR0b24tcHJldixcbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLW5leHQge1xuICAgIG1hcmdpbjogYXV0byAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1wcmV2IHtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLW5leHQge1xuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLWNsb3NlIHtcbiAgICBmb250LXNpemU6IDI2cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDEwcHggIWltcG9ydGFudDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHotaW5kZXg6IDk1ICFpbXBvcnRhbnQ7XG59XG5cbjpyb290Om5vdCgubW9iaWxlLW1hZ2ljKSBidXR0b24ubXotYnV0dG9uIHtcbiAgICBjb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAuNzUpICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC44NSkgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC44NSkgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIC4yNXMsIGJvcmRlci1jb2xvciAuMjVzLCAtd2Via2l0LXRyYW5zZm9ybSAuMjVzICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjI1cywgYm9yZGVyLWNvbG9yIC4yNXMsIHRyYW5zZm9ybSAuMjVzICFpbXBvcnRhbnQ7XG59XG5cbjpyb290Om5vdCgubW9iaWxlLW1hZ2ljKSBidXR0b24ubXotYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAxKSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAuNikgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG59XG5cbi5tb2JpbGUtbWFnaWMgYnV0dG9uLm16LWJ1dHRvbiB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuMXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjFzICFpbXBvcnRhbnQ7XG59XG5cbi5tb2JpbGUtbWFnaWMgYnV0dG9uLm16LWJ1dHRvbjphY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxODAsIDE4MCwgMTgwLCAuNikgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjk1KSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjk1KSAhaW1wb3J0YW50O1xufVxuXG4vKmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLWNsb3NlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxhMDAxXCI7IH1cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLXByZXY6YmVmb3JlIHsgY29udGVudDogXCJcXGEwMDJcIjsgIH1cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLW5leHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGEwMDNcIjsgfSovXG5cbmJ1dHRvbi5tei1idXR0b24ubXotYnV0dG9uLWNsb3NlOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lICFpbXBvcnRhbnQ7XG4gICAgY29udGVudDogXCJcXGYwMGRcIiAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1wcmV2OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lICFpbXBvcnRhbnQ7XG4gICAgY29udGVudDogXCJcXGYxMDRcIiAhaW1wb3J0YW50O1xufVxuXG5idXR0b24ubXotYnV0dG9uLm16LWJ1dHRvbi1uZXh0OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lICFpbXBvcnRhbnQ7XG4gICAgY29udGVudDogXCJcXGYxMDVcIiAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWRldmljZS13aWR0aDogNzY3cHgpIHtcbiAgICBidXR0b24ubXotYnV0dG9uLXByZXYsXG4gICAgYnV0dG9uLm16LWJ1dHRvbi1uZXh0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZCBidXR0b24ubXotYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDQ0cHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA0NHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNDksNTEsNjEsMC4zKSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ubHQtaWU5LW1hZ2ljIGJ1dHRvbi5tei1idXR0b24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NzUpO1xufVxuXG4ubHQtaWU5LW1hZ2ljIGJ1dHRvbi5tei1idXR0b246aG92ZXIge1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xufVxuXG5cbi8qKlxuICogVGh1bWJuYWlsc1xuICovXG5cbi8qIFRodW1ibmFpbHMgb24gdGhlIHBhZ2UgKi9cbmFbZGF0YS16b29tLWlkXSxcbi5tei10aHVtYiwgLm16LXRodW1iOmZvY3VzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuYVtkYXRhLXpvb20taWRdIGltZyxcbi5tei10aHVtYiBpbWcge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4IDBweCByZ2JhKDAsMCwwLDAuMyk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm16LXRodW1iOmhvdmVyOm5vdCgubXotdGh1bWItc2VsZWN0ZWQpIGltZyB7XG4gICAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoNzUlKTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoNzUlKTtcbn1cblxuLm16LXRodW1iLXNlbGVjdGVkIGltZyB7XG4gICAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoNjAlKTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoNjAlKTtcbn1cblxuLm5vLWNzc2ZpbHRlcnMtbWFnaWMgLm16LXRodW1iOmhvdmVyLFxuLm5vLWNzc2ZpbHRlcnMtbWFnaWMgLm16LXRodW1iLm16LXRodW1iLXNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xufVxuXG4ubm8tY3NzZmlsdGVycy1tYWdpYyAubXotdGh1bWI6aG92ZXI6bm90KC5tei10aHVtYi1zZWxlY3RlZCkgaW1nIHtcbiAgICBvcGFjaXR5OiAuNzU7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTc1KTtcbn1cblxuLm5vLWNzc2ZpbHRlcnMtbWFnaWMgLm16LXRodW1iLXNlbGVjdGVkIGltZyB7XG4gICAgb3BhY2l0eTogLjY7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTYwKTtcbn1cblxuLmllOS1tYWdpYyAubXotdGh1bWIgaW1nIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNHB4IDBweCByZ2JhKDAsMCwwLDAuMyk7XG59XG5cbi8qIFRodW1ibmFpbHMgaW4gZXhwYW5kZWQgdmlldyAqL1xuLm16LWV4cGFuZC10aHVtYm5haWxzIHtcbiAgICB6LWluZGV4OiA1MDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDY1cHg7XG4gICAgcmlnaHQ6IDY1cHg7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWIge1xuICAgIHBhZGRpbmc6IDEwcHggMnB4O1xufVxuXG4ubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1iID4gaW1nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggMXB4IHJnYmEoMCwwLDAsMC4zKTtcbn1cblxuLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYjpub3QoLm1hZ2ljLXRodW1iLXNlbGVjdGVkKSA+IGltZzpob3ZlciB7XG4gICAgLXdlYmtpdC1maWx0ZXI6IGJyaWdodG5lc3MoNzAlKTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoNzAlKTtcbn1cblxuLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYi1zZWxlY3RlZCBpbWcge1xuICAgIC13ZWJraXQtZmlsdGVyOiBicmlnaHRuZXNzKDUwJSk7XG4gICAgZmlsdGVyOiBicmlnaHRuZXNzKDUwJSk7XG59XG5cbi5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubXotZXhwYW5kLXRodW1ibmFpbHMgLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMDtcbn1cblxuLm5vLWNzc2ZpbHRlcnMtbWFnaWMgLm16LWV4cGFuZC10aHVtYm5haWxzIC5tYWdpYy10aHVtYjpob3Zlcjpub3QoLm1hZ2ljLXRodW1iLXNlbGVjdGVkKSBpbWcge1xuICAgIG9wYWNpdHk6IC43O1xuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT03MCk7XG59XG5cbi5uby1jc3NmaWx0ZXJzLW1hZ2ljIC5tei1leHBhbmQtdGh1bWJuYWlscyAubWFnaWMtdGh1bWItc2VsZWN0ZWQgaW1nIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApO1xufVxuXG4vKiogSGlkZSB0aHVtYm5haWxzIGluIGV4cGFuZGVkIHZpZXcgd2l0aCAubm8tZXhwYW5kLXRodW1ibmFpbHMgY2xhc3MgKiovXG4ubXotZXhwYW5kLm5vLWV4cGFuZC10aHVtYm5haWxzIC5tei1leHBhbmQtc3RhZ2Uud2l0aC10aHVtYnMgLm16LWltYWdlLXN0YWdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cblxuLm16LWV4cGFuZC5uby1leHBhbmQtdGh1bWJuYWlscyAubXotZXhwYW5kLXRodW1ibmFpbHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tb2JpbGUtbWFnaWMgLm16LWV4cGFuZC5uby1leHBhbmQtdGh1bWJuYWlscyAubXotZXhwYW5kLXN0YWdlLndpdGgtdGh1bWJzIC5tei1pbWFnZS1zdGFnZSB7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLm1hZ2ljLXRodW1icyxcbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy13cmFwcGVyLFxuLm1hZ2ljLXRodW1icyB1bCxcbi5tYWdpYy10aHVtYnMgbGksXG4ubWFnaWMtdGh1bWJzIGxpOmJlZm9yZSxcbi5tYWdpYy10aHVtYnMgbGk6YWZ0ZXIsXG4ubWFnaWMtdGh1bWJzIGxpIGltZyxcbi5tYWdpYy10aHVtYnMgLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tYWdpYy10aHVtYnMge1xuICAgIGRpcmVjdGlvbjogbHRyO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5tYWdpYy10aHVtYnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubWFnaWMtdGh1bWJzLm5vLWJ1dHRvbnMge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLm1hZ2ljLXRodW1icy13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWFnaWMtdGh1bWJzIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5tYWdpYy10aHVtYnMubm8tYnV0dG9ucyB1bCB7XG4gICAgbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLm1hZ2ljLXRodW1icyB1bCBsaSB7XG4gICAgbWFyZ2luOiAwIDRweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5tYWdpYy10aHVtYnMgdWwgbGk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMDtcbn1cblxuLm1hZ2ljLXRodW1icyB1bCBsaSA+IGltZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uaWU4LW1hZ2ljIC5tYWdpYy10aHVtYnMgdWwgbGkgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogdmVydGljYWwgKi9cbi5tYWdpYy10aHVtYnMubWFnaWMtdGh1bWJzLXZlcnRpY2FsIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwge1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCB1bCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgdWwgbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCB1bCBsaSB7XG4gICAgbWFyZ2luOiA0cHggMDtcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCB1bCBsaSA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaWU4LW1hZ2ljIC5tYWdpYy10aHVtYnMtdmVydGljYWwgdWwgbGkgPiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqIEJ1dHRvbnNcbiAqL1xuLm1hZ2ljLXRodW1icyBidXR0b24ubWFnaWMtdGh1bWJzLWJ1dHRvbiB7XG4gICAgY29sb3I6ICNiNGI0YjQgIWltcG9ydGFudDtcbiAgICBmb250OiA5MDAgMjRweC8xICdtYWdpY3Rvb2xib3gtdGhpbicgIWltcG9ydGFudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogOTAgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBzcGVhazogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWluLXdpZHRoOiAwICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1hZ2ljLXRodW1icyBidXR0b24ubWFnaWMtdGh1bWJzLWJ1dHRvbjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgZm9udDogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuLm1hZ2ljLXRodW1icyAubWFnaWMtdGh1bWJzLWJ1dHRvbi1wcmV2IHtcbiAgICBsZWZ0OiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uLW5leHQge1xuICAgIHJpZ2h0OiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uLXByZXY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcYTAwMlwiO1xufVxuXG4ubWFnaWMtdGh1bWJzIC5tYWdpYy10aHVtYnMtYnV0dG9uLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcYTAwM1wiO1xufVxuXG46cm9vdDpub3QoLm1vYmlsZS1tYWdpYykgLm1hZ2ljLXRodW1icyBidXR0b24ubWFnaWMtdGh1bWJzLWJ1dHRvbiB7XG4gICAgY29sb3I6IHJnYmEoMTgwLCAxODAsIDE4MCwgLjc1KSAhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguODUpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguODUpICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAuMjVzLCAtd2Via2l0LXRyYW5zZm9ybSAuMjVzICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjI1cywgdHJhbnNmb3JtIC4yNXMgIWltcG9ydGFudDtcbn1cblxuOnJvb3Q6bm90KC5tb2JpbGUtbWFnaWMpIC5tYWdpYy10aHVtYnMgYnV0dG9uLm1hZ2ljLXRodW1icy1idXR0b246aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDE4MCwgMTgwLCAxODAsIDEpICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSAhaW1wb3J0YW50O1xufVxuXG5cbi8qIFZlcnRpY2FsIGJ1dHRvbnMgKi9cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG59XG5cbi5tYWdpYy10aHVtYnMtdmVydGljYWwgLm1hZ2ljLXRodW1icy1idXR0b24tcHJldiB7XG4gICAgdG9wOiAwO1xufVxuXG4ubWFnaWMtdGh1bWJzLXZlcnRpY2FsIC5tYWdpYy10aHVtYnMtYnV0dG9uLW5leHQge1xuICAgIGJvdHRvbTogMDtcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCAubWFnaWMtdGh1bWJzLWJ1dHRvbi1wcmV2OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGEwMDVcIjtcbn1cblxuLm1hZ2ljLXRodW1icy12ZXJ0aWNhbCAubWFnaWMtdGh1bWJzLWJ1dHRvbi1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGEwMDRcIjtcbn1cblxuXG4ubWFnaWMtdGh1bWJzLm5vLWJ1dHRvbnMgLm1hZ2ljLXRodW1icy1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1hZ2ljLXRodW1icy1idXR0b24tZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHkgPSAyMCk7XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vICAyMC4gRm9ybXNcbi8vICAyMS4gTGFiZWxcbi8vICAyMi4gTWVkaWEgT2JqZWN0XG4vLyAgMjMuIE1lbnVcbi8vICAyNC4gTWV0ZXJcbi8vICAyNS4gT2ZmLWNhbnZhc1xuLy8gIDI2LiBPcmJpdFxuLy8gIDI3LiBQYWdpbmF0aW9uXG4vLyAgMjguIFByb2dyZXNzIEJhclxuLy8gIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vICAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAgMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAgMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vICAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vICA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAgNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAgNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgNDcuIFJldmVhbFxuLy8gIDQ4LiBTbGlkZXJcbi8vICA0OS4gU3dpdGNoXG4vLyAgNTAuIFRhYmxlXG4vLyAgNTEuIFRhYnNcbi8vICA1Mi4gVGh1bWJuYWlsXG4vLyAgNTMuIFRpdGxlIEJhclxuLy8gIDU0LiBUb29sdGlwXG4vLyAgNTUuIFRvcCBCYXJcbi8vICA1Ni4gWHkgR3JpZFxuQGltcG9ydCAnd3d3cm9vdC9zcmMvY3NzL3RoaXJkLXBhcnR5L2ZvdW5kYXRpb25fY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC91dGlsJztcbi8vdi1jbG9hayBmb3IgdnVlLmpzXG5bdi1jbG9ha10ge2Rpc3BsYXk6IG5vbmV9XG4kY29udHJhc3Qtd2FybmluZ3M6IGZhbHNlO1xuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cbi8vJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTRweDtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEzMDApO1xuLy8kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuMztcbiRnbG9iYWwtbGluZWhlaWdodDogMS42O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKCBwcmltYXJ5OiAjMTE1M0FELCBzZWNvbmRhcnk6ICM3Njc2NzYsIHN1Y2Nlc3M6ICMzYWRiNzYsIHdhcm5pbmc6ICNmZmFlMDAsIGFsZXJ0OiAjY2M0YjM3LCApO1xuLy9pLmUgc2VjdGlvbiBoZWFkaW5nc1xuJGxpZ2h0LWdyYXk6ICNlOGU1ZTU7XG4vL2kuZS4gYm9yZGVyc1xuJG1lZGl1bS1ncmF5OiAjZGRkZGRkO1xuLy9pLmUgdGV4dFxuJGRhcmstZ3JheTogIzc5Nzk2QTtcbiRvZmYtYmxhY2s6ICMzMTMxMzE7XG4kYmxhY2s6ICMwYTBhMGE7XG4kYWNjZW50OiAjRjlBNTE5O1xuJGdyZWVuOiAjMkY5RjQ2O1xuJHJlZDogI2NjNGIzNztcbiR3aGl0ZTogI2ZlZmVmZTtcbiRib2R5LWJhY2tncm91bmQ6I2ZmZjtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OkhlbHZldGljYSxcbkFyaWFsLFxuc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDAuMThyZW07XG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogZmFsc2U7XG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2U7XG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG4kYnJlYWtwb2ludHM6ICggc21hbGw6IDAsIG1lZGl1bTogNzY4cHgsIGxhcmdlOiAxMDI0cHgsIHhsYXJnZTogMTIwMHB4LCB4eGxhcmdlOiAxNDQwcHgsICk7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlIHhsYXJnZSB4eGxhcmdlKTtcbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6ICggc21hbGw6IDEwcHgsIG1lZGl1bTogMTZweCwgbGFyZ2U6IDE2cHgsICk7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiAxMjtcbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLFxuJ0xpYmVyYXRpb24gTW9ubycsXG5Db3VyaWVyLFxubW9ub3NwYWNlO1xuJGhlYWRlci1jb2xvcjogaW5oZXJpdDtcbiRoZWFkZXItbGluZWhlaWdodDogMS4zO1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kaGVhZGVyLXN0eWxlczogKFxuICAgIHNtYWxsOiAoXG4gICAgICAgICdoMSc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgICAgICAgJ2gzJzogKCdmb250LXNpemUnOiAxNCksXG4gICAgICAgICdoNCc6ICgnZm9udC1zaXplJzogMTQpLFxuICAgICAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAgICAgJ2g2JzogKCdmb250LXNpemUnOiAxNCksXG4gICAgKSxcbiAgICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgICApLFxuICAgIGxhcmdlOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAxNiksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxNCksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxNCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNCksXG4gICAgKSxcbik7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS4zO1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xuJGFiaWRlLWxhYmVsczogdHJ1ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuLy8kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWxldHRlOiBtYXAtbWVyZ2UoJGZvdW5kYXRpb24tcGFsZXR0ZSwgKFxuICAgb2ZmLWJsYWNrOiAkb2ZmLWJsYWNrLFxuICAgIGFjY2VudDogJGFjY2VudCxcbiAgICBncmVlbjogJGdyZWVuLFxuICAgIHJlZDogJHJlZFxuKSkgIWRlZmF1bHQ7XG5cbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjY1cmVtO1xuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cbiRicmVhZGNydW1icy1tYXJnaW46IDAuNXJlbSAwIDAuNXJlbSAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxM3B4KTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkb2ZmLWJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC4yNXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogZmFsc2U7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsOiAnXFxcXCc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRkYXJrLWdyYXk7XG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGJ1dHRvbi1wYWRkaW5nOiAwLjZlbSAwLjk1ZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkd2hpdGU7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6ICggdGlueTogMC42cmVtLCBzbWFsbDogMC43NXJlbSwgZGVmYXVsdDogMXJlbSwgbGFyZ2U6IDEuMzVyZW0sICk7XG4vLyRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcblxuJGJ1dHRvbi1wYWxldHRlOiBtYXAtbWVyZ2UoJGZvdW5kYXRpb24tcGFsZXR0ZSwgKFxuICAgIG9mZi1ibGFjazogJG9mZi1ibGFjayxcbiAgICBsaWdodC1ncmF5OiAkbGlnaHQtZ3JheSxcbiAgICBhY2NlbnQ6ICRhY2NlbnQsXG4gICAgZ3JlZW46ICRncmVlbixcbiAgICByZWQ6ICRyZWRcbikpICFkZWZhdWx0O1xuXG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LFxuY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2FyZC1zaGFkb3c6IG5vbmU7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6ICggc21hbGw6IDAuNjZyZW0sIG1lZGl1bTogMXJlbSwgKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6ICggc21hbGw6IDAuMzNlbSwgbWVkaXVtOiAwLjVyZW0sICk7XG4kY2xvc2VidXR0b24tc2l6ZTogKCBzbWFsbDogMS41ZW0sIG1lZGl1bTogMmVtLCApO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcbi8vIDE2LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKCB0aW55OiAxMDBweCwgc21hbGw6IDIwMHB4LCBsYXJnZTogNDAwcHgsICk7XG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50O1xuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG4vLyAyMC4gRm9ybXNcbi8vIC0tLS0tLS0tLVxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2s7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5O1xuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGlucHV0LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICM3OTc5NkE7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1wYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLFxuYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAyMS4gTGFiZWxcbi8vIC0tLS0tLS0tLVxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2s7XG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG4vLyAyMy4gTWVudVxuLy8gLS0tLS0tLS1cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcbi8vIDI1LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuJG9mZmNhbnZhcy1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZTogMjUwcHg7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuLy8gMjYuIE9yYml0XG4vLyAtLS0tLS0tLS1cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG4vLyAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoIGRvd24sIHVwLCByaWdodCwgbGVmdCk7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHByb3RvdHlwZS1ib3JkZXItbm9uZS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4vLyAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1kaXNwbGF5OiAoIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLWNlbGwpO1xuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KTtcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLWxpc3QtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKCBkaXNjLCBjaXJjbGUsIHNxdWFyZSk7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKCBkZWNpbWFsLCBsb3dlci1hbHBoYSwgbG93ZXItbGF0aW4sIGxvd2VyLXJvbWFuLCB1cHBlci1hbHBoYSwgdXBwZXItbGF0aW4sIHVwcGVyLXJvbWFuKTtcbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1vdmVyZmxvdzogKCB2aXNpYmxlLCBoaWRkZW4sIHNjcm9sbCk7XG4vLyAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtcG9zaXRpb246ICggc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuLy8gMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLXNlcGFyYXRvci1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbjogY2VudGVyO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIC4xNiksXG4wIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAuMTIpO1xuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNpemluZzogKCB3aWR0aCwgaGVpZ2h0KTtcbiRwcm90b3R5cGUtc2l6ZXM6ICggMjU6IDI1JSwgNTA6IDUwJSwgNzU6IDc1JSwgMTAwOiAxMDAlKTtcbi8vIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50OiAzO1xuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4kcHJvdG90eXBlLWRlY29yYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246ICggb3ZlcmxpbmUsIHVuZGVybGluZSwgbGluZS10aHJvdWdoLCApO1xuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtdHJhbnNmb3JtYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LXRyYW5zZm9ybWF0aW9uOiAoIGxvd2VyY2FzZSwgdXBwZXJjYXNlLCBjYXBpdGFsaXplKTtcbi8vIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRwcm90b3R5cGUtdXRpbGl0aWVzLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKCBkZWZhdWx0OiA0IGJ5IDMsIHdpZGVzY3JlZW46IDE2IGJ5IDksICk7XG4vLyA0Ny4gUmV2ZWFsXG4vLyAtLS0tLS0tLS0tXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiBub25lO1xuJHJldmVhbC1yYWRpdXM6IDNweDtcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcbi8vIDQ4LiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoNiA4IDgpO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaXMtc3RyaXBlZDogZmFsc2U7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcbi8vIDUxLiBUYWJzXG4vLyAtLS0tLS0tLVxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRtZWRpdW0tZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuLy8gNTIuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuLy8gNTQuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vIDU1LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZDtcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKCBzbWFsbDogMTBweCwgbWVkaXVtOiAxNnB4KTtcbiRncmlkLXBhZGRpbmctZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnM7XG4kYmxvY2stZ3JpZC1tYXg6IDEyOyIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjQuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICcuLi9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gU2V0dGluZ3Ncbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gU2FzcyB1dGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIEdsb2JhbCB2YXJpYWJsZXMgYW5kIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2Vcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcblxuICBAaWYgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuICB9XG5cbiAgQGlmICRwcm90b3R5cGUge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1lvdXIgc21hbGxlc3QgYnJlYWtwb2ludCAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMpIG11c3QgYmUgc2V0IHRvIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gKDEvMTYpO1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkdmFsdWUpO1xuICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICAkb2xkLXpmLXNpemU6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gIEBlbHNlIHtcbiAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgQGlmICRicCAhPSBudWxsIGFuZCAkYnAgPD0gJHBicCB7XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBicmVha3BvaW50IHNpemVcbiAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2luZyAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbmcuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgLy8gV29ya2Fyb3VuZCBhbmRyb2lkIGJyb3dzZXIgei1pbmRleCBidWdcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRyZXZlYWwtcGFkZGluZztcblxuICBib3JkZXI6ICRyZXZlYWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmV2ZWFsLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVhbC1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAvLyBTdHJpcCBtYXJnaW5zIGZyb20gdGhlIGxhc3QgaXRlbSBpbiB0aGUgbW9kYWxcbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRqdXN0cyB0aGUgd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIG1vZGFsLiBHZW5lcmFsbHkgYSBwZXJjZW50YWdlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4LXdpZHRoIFskcmV2ZWFsLW1heC13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGgoXG4gICR3aWR0aDogJHJldmVhbC13aWR0aCxcbiAgJG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGhcbikge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuICAvLyBbVE9ET10gSXMgdGhpcyBuZWNlc3Nhcnk/XG4gIGJvZHkuaXMtcmV2ZWFsLW9wZW4geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gaHRtbCBnZXRzIHRoaXMgY2xhc3Mgb25seSBpbiBpT1NcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbixcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1mb250LXNpemUgIT0gMTZweFxuICAgIG9yICRiYXNlLWxpbmUtaGVpZ2h0ICE9IDI0cHhcbiAgICBvciAkYmFzZS11bml0ICE9ICdlbSdcbiAgICBvciAkaDEtZm9udC1zaXplICE9IDIgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDItZm9udC1zaXplICE9IDEuNSAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDMtZm9udC1zaXplICE9IDEuMTcgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDQtZm9udC1zaXplICE9IDEgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDUtZm9udC1zaXplICE9IDAuODMgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDYtZm9udC1zaXplICE9IDAuNjcgKiAkYmFzZS1mb250LXNpemUge1xuICAgICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZG9jdW1lbnQpIHtcbiAgICAvKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNlY3Rpb25zKSB7XG4gICAgLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBib2R5IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGFydGljbGUsXG4gICAgYXNpZGUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBuYXYsXG4gICAgc2VjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiAqL1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMC42N2VtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgyLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgzLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg0LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg1LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg2IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg2LWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShncm91cGluZykge1xuICAgIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cblxuICAgICAgZGwsXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICovXG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBvbCxcbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGZpZ2NhcHRpb24sXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cblxuICAgIGZpZ3VyZSB7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDFlbSAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuXG4gICAgaHIge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIG1haW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBwLFxuICAgICAgcHJlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgcHJlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGxpbmtzKSB7XG4gICAgLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGE6YWN0aXZlLFxuICAgIGE6aG92ZXIge1xuICAgICAgb3V0bGluZS13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHRleHQpIHtcbiAgICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGFiYnJbdGl0bGVdIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgY29kZSxcbiAgICBrYmQsXG4gICAgc2FtcCB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuXG4gICAgZGZuIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1YixcbiAgICBzdXAge1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgYm90dG9tOiAtMC4yNWVtO1xuICAgIH1cblxuICAgIHN1cCB7XG4gICAgICB0b3A6IC0wLjVlbTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGVtYmVkZGVkKSB7XG4gICAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuXG4gICAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgc3ZnOm5vdCg6cm9vdCkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGZvcm1zKSB7XG4gICAgLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXQsXG4gICAgb3B0Z3JvdXAsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBmaWVsZHNldCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBsZWdlbmQge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMyAqL1xuICAgICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xuXG4gICAgcHJvZ3Jlc3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShpbnRlcmFjdGl2ZSkge1xuICAgIC8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1bW1hcnkge1xuICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKlxuICAgICAgICAgKiAxLiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICAgKiAyLiBTZXQgY29uc2lzdGVudCBzcGFjZSBmb3IgdGhlIGxpc3Qgc3R5bGUgaW1hZ2UuXG4gICAgICAgICAqL1xuXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTsgLyogMSAqL1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDsgLyogMiAqL1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAgICovXG5cbiAgICAgICAgbWVudSAmLFxuICAgICAgICBvbCAmLFxuICAgICAgICB1bCAmIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNjcmlwdGluZykge1xuICAgIC8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGNhbnZhcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZW1wbGF0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaGlkZGVuKSB7XG4gICAgLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFtoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVmFyaWFibGVzXG4vL1xuLy8gWW91IGNhbiBvdmVycmlkZSB0aGUgZGVmYXVsdCB2YWx1ZXMgYnkgc2V0dGluZyB0aGUgdmFyaWFibGVzIGluIHlvdXIgU2Fzc1xuLy8gYmVmb3JlIGltcG9ydGluZyB0aGUgbm9ybWFsaXplLXNjc3MgbGlicmFyeS5cblxuLy8gVGhlIGZvbnQgc2l6ZSBzZXQgb24gdGhlIHJvb3QgaHRtbCBlbGVtZW50LlxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgYmFzZSBsaW5lIGhlaWdodCBkZXRlcm1pbmVzIHRoZSBiYXNpYyB1bml0IG9mIHZlcnRpY2FsIHJoeXRobS5cbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgbGVuZ3RoIHVuaXQgaW4gd2hpY2ggdG8gb3V0cHV0IHZlcnRpY2FsIHJoeXRobSB2YWx1ZXMuXG4vLyBTdXBwb3J0ZWQgdmFsdWVzOiBweCwgZW0sIHJlbS5cbiRiYXNlLXVuaXQ6ICdlbScgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5LlxuJGJhc2UtZm9udC1mYW1pbHk6IHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb250IHNpemVzIGZvciBoMS1oNi5cbiRoMS1mb250LXNpemU6IDIgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAxLjUgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogMS4xNyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IDEgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAwLjgzICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogMC42NyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8gVGhlIGFtb3VudCBsaXN0cyBhbmQgYmxvY2txdW90ZXMgYXJlIGluZGVudGVkLlxuJGluZGVudC1hbW91bnQ6IDQwcHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb2xsb3dpbmcgdmFyaWFibGUgY29udHJvbHMgd2hldGhlciBub3JtYWxpemUtc2NzcyB3aWxsIG91dHB1dFxuLy8gZm9udC1zaXplcywgbGluZS1oZWlnaHRzIGFuZCBibG9jay1sZXZlbCB0b3AvYm90dG9tIG1hcmdpbnMgdGhhdCBmb3JtIGEgYmFzaWNcbi8vIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgcGFnZSwgd2hpY2ggZGlmZmVycyBmcm9tIHRoZSBvcmlnaW5hbCBOb3JtYWxpemUuY3NzLlxuLy8gSG93ZXZlciwgY2hhbmdpbmcgYW55IG9mIHRoZSB2YXJpYWJsZXMgYWJvdmUgd2lsbCBjYXVzZVxuLy8gJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0gdG8gYmUgYXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZS5cbiRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiBmYWxzZSAhZGVmYXVsdDtcbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWF0dHJpYnV0ZS1uZXN0aW5nLCBmb3JjZS1wc2V1ZG8tbmVzdGluZywgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJHNlY29uZGFyeS1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG4kc3VjY2Vzcy1jb2xvcjogZ2V0LWNvbG9yKHN1Y2Nlc3MpO1xuJHdhcm5pbmctY29sb3I6IGdldC1jb2xvcih3YXJuaW5nKTtcbiRhbGVydC1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIC16Zi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICBAaW5jbHVkZSBub3JtYWxpemUoKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy8gXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbiAgQGVsc2VpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG4gIEBlbHNlaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxuICBAZWxzZWlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBjbGlwLXBhdGg6IG5vbmU7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlLCAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHM6IHRydWUpIHtcbiAgJGxpc3Q6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRsaXN0OiBzbC1yZW1vdmUoJGxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRuYW1lIGluICRsaXN0IHtcbiAgICAkLXpmLXNpemU6ICRuYW1lICFnbG9iYWw7XG5cbiAgICBAaWYgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbmFtZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBPdXRwdXRzIENTUyBjbGFzc2VzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBmb3VuZGF0aW9uLWdyaWQoXG4gICRyb3c6ICdyb3cnLFxuICAkY29sdW1uOiAnY29sdW1uJyxcbiAgJGNvbHVtbi1yb3c6ICdjb2x1bW4tcm93JyxcbiAgJGd1dHRlcjogJ2d1dHRlcicsXG4gICRwdXNoOiAncHVzaCcsXG4gICRwdWxsOiAncHVsbCcsXG4gICRjZW50ZXI6ICdjZW50ZXJlZCcsXG4gICR1bmNlbnRlcjogJ3VuY2VudGVyZWQnLFxuICAkY29sbGFwc2U6ICdjb2xsYXBzZScsXG4gICR1bmNvbGxhcHNlOiAndW5jb2xsYXBzZScsXG4gICRvZmZzZXQ6ICdvZmZzZXQnLFxuICAkZW5kOiAnZW5kJyxcbiAgJGV4cGFuZGVkOiAnZXhwYW5kZWQnLFxuICAkYmxvY2s6ICdibG9jaydcbikge1xuICAvLyBSb3dcbiAgLiN7JHJvd30ge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuXG4gICAgLy8gQ29sbGFwc2luZ1xuICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJiAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuXG4gICAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgKGZ1bGwtd2lkdGgpIHJvd1xuICAgICYuI3skZXhwYW5kZWR9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC4jeyRleHBhbmRlZH0pIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcbiAgICB9XG5cbiAgICBAaWYgdHlwZS1vZigkZ3JpZC1jb2x1bW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAvLyBTdGF0aWMgKHVucmVzcG9uc2l2ZSkgcm93IGd1dHRlcnNcbiAgICAgIC8vXG4gICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRncmlkLWNvbHVtbi1ndXR0ZXIge1xuICAgICAgICAmLiN7JGd1dHRlcn0tI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCR2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uXG4gIC4jeyRjb2x1bW59IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbDtcblxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmLiN7JGVuZH0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLiN7JHJvd30gLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAvLyBDb2x1bW4gd2lkdGhcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1zaXplKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU291cmNlIG9yZGVyaW5nXG4gICAgICBAaWYgJGkgPCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoJGkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC0kaSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRvZmZzZXR9LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtb2ZmKCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KCRpLCAnLiN7JGNvbHVtbn0nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7IH1cblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyRleHBhbmRlZH0uI3skcm93fSAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfS4jeyRyb3d9IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkLXpmLXNpemUpOyB9XG4gICAgfVxuXG4gICAgLy8gUG9zaXRpb25pbmdcbiAgICAuI3skLXpmLXNpemV9LSN7JGNlbnRlcn0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLy8gR3V0dGVyIGFkanVzdG1lbnRcbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY2VudGVyfSxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LTAsXG4gICAgLiN7JC16Zi1zaXplfS0jeyRwdWxsfS0wIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXVucG9zO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWQgY29sdW1uc1xuICAuI3skY29sdW1ufS0jeyRibG9ja30ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIEBpZiAkY29sdW1uID09ICdjb2x1bW4nIGFuZCBoYXMtdmFsdWUoJGdyaWQtY29sdW1uLWFsaWFzKSB7XG4gICAgLiN7JGdyaWQtY29sdW1uLWFsaWFzfSB7XG4gICAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1ibG9jayBwbGFjZWhvbGRlci1pbi1leHRlbmRcbiAgICAgIEBleHRlbmQgLmNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAvIDIgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRiYXNlLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgJGNvdW50ID09IDEge1xuICAgIEByZXR1cm4gLXpmLXRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb3VudCB7XG4gICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgLXpmLXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuLy8gQ29udmVydHMgYSB1bml0bGVzcywgcGl4ZWwsIG9yIHJlbSB2YWx1ZSB0byBlbSwgZm9yIHVzZSBpbiBicmVha3BvaW50cy5cbkBmdW5jdGlvbiAtemYtYnAtdG8tZW0oJHZhbHVlKSB7XG4gIC8vIFBpeGVsIGFuZCB1bml0bGVzcyB2YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byByZW1zXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyBvciB1bml0bGVzcygkdmFsdWUpIHtcbiAgICAkdmFsdWU6IHJlbS1jYWxjKCR2YWx1ZSwgJGJhc2U6IDE2cHgpO1xuICB9XG5cbiAgLy8gVGhlbiB0aGUgdmFsdWUgaXMgY29udmVydGVkIHRvIGVtc1xuICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFlbTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gUGl4ZWwgdmFsdWUgdG8gY29udmVydC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gQmFzZSBmb3IgcGl4ZWwgY29udmVyc2lvbi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIGluIHJlbXMsIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIGdpdmVuIHZhbHVlIGFuZCB0aGUgYmFzZSBwaXhlbCB2YWx1ZS4gcmVtIHZhbHVlcyBhcmUgcGFzc2VkIHRocm91Z2ggYXMgaXMuXG5AZnVuY3Rpb24gLXpmLXRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpICE9ICdudW1iZXInIHtcbiAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4gIH1cblxuICAvLyBUdXJuIDByZW0gaW50byAwXG4gIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4gICAgJHZhbHVlOiAwO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsLCBwZXJjZW50YWdlLCByZW0gb3IgZW0gdmFsdWUgdG8gYSB1bml0bGVzcyB2YWx1ZSBiYXNlZCBvbiBhIGdpdmVuIGZvbnQgc2l6ZS4gSWRlYWwgZm9yIHdvcmtpbmcgb3V0IHVuaXRsZXNzIGxpbmUgaGVpZ2h0cy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0IHRvIGEgdW5pdGxlc3MgbGluZSBoZWlnaHRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgZm9udCBzaXplIHRvIHVzZSB0byB3b3JrIG91dCB0aGUgbGluZSBoZWlnaHQgLSBkZWZhdWx0cyB0byAkZ2xvYmFsLWZvbnQtc2l6ZVxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIFVuaXRsZXNzIG51bWJlclxuQGZ1bmN0aW9uIHVuaXRsZXNzLWNhbGMoJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIEZpcnN0LCBsZXRzIGNvbnZlcnQgb3VyICRiYXNlIHRvIHBpeGVsc1xuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBOb3cgbGV0cyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXJuIHRoZW4gMTAgYXJlIG1lYW50IHRvIGJlIGFic29sdXRlIGluICdweCdcbiAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICgkdmFsdWUgPiAxMCkge1xuICAgIEByZXR1cm4gJHZhbHVlIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtblxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRndXR0ZXIgW2F1dG9dXG4vLy8gICBTcGFjaW5nIGJldHdlZW4gY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJGd1dHRlcnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIGd1dHRlciByZXNwb25zaXZlLCB1c2luZyB0aGUgJGd1dHRlcnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGd1dHRlciwgJGd1dHRlcnMpIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgfVxufVxuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDApO1xufVxuXG4vLy8gVW4tY29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmUtYWRkaW5nIHRoZSBwYWRkaW5nLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sdW1uLWd1dHRlcigpLiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVuY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZ3JpZC1jb2wtZ3V0dGVyKCkuIGdyaWQtY29sLXVuY29sbGFwc2UoKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyKTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBsaXN0IG9mIHRoZSBmb3JtYXQgXCJ4IG9mIHlcIiAod2l0aG91dCBxdW90ZXMpIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbiByb3cuIFRoaXMgaXMgdGhlIGVxdWl2YWxlbnQgb2YgYWRkaW5nIGAucm93YCBhbmQgYC5jb2x1bW5gIHRvIHRoZSBzYW1lIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBXaWR0aCBvZiB0aGUgZ3V0dGVycyBvbiBlaXRoZXIgc2lkZSBvZiB0aGUgY29sdW1uIHJvdy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coJGd1dHRlcnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIERpcmVjdGlvbiBhbmQgYW1vdW50IHRvIG1vdmUuIFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50IHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZSBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuIFNldCB0byBjZW50ZXIgdG8gY2VudGVyIHRoZSBjb2x1bW4uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoJHBvc2l0aW9uIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIG9yIGNlbnRlci4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRndXR0ZXJcbi8vLyAgIFRoZSBndXR0ZXIgdG8gYXBwbHkgdG8gY2hpbGQgZWxlbWVudHMuIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHdpbGwgdXNlIHRoZSB2YWx1ZXMgaW4gdGhlICRncmlkLWNvbHVtbi1ndXR0ZXIgbWFwLCBpbmNsdWRpbmcgYnJlYWtwb2ludCBzaXplcy5cbi8vLyAgIC0gQSBmaXhlZCBudW1lcmljIHZhbHVlIHdpbGwgYXBwbHkgdGhpcyBndXR0ZXIgdG8gYWxsIGJyZWFrcG9pbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbicsXG4gICRndXR0ZXI6IG51bGxcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgLy8gSWYgYSAkZ3V0dGVyIHZhbHVlIGlzIHBhc3NlZFxuICAgIEBpZigkZ3V0dGVyKSB7XG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPi08aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgZm9yIGhlYWRpbmdzIGF0IHZhcmlvdXMgc2NyZWVuIHNpemVzLiBFYWNoIGtleSBpcyBhIGJyZWFrcG9pbnQsIGFuZCBlYWNoIHZhbHVlIGlzIGEgbWFwIG9mIGhlYWRpbmcgc3R5bGVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAkaGVhZGVyLXN0eWxlcyBtYXAgaXMgYnVpbHQgZnJvbSAkaGVhZGVyLXNpemVzIGluIG9yZGVyIHRvIGVuc3VyZSBkb3dud2FyZCBjb21wYXRpYmlsaXR5XG4vLyB3aGVuICRoZWFkZXItc2l6ZXMgaXMgZGVwcmVjaWF0ZWQsICRoZWFkZXItc3R5bGVzIG5lZWRzIHRvIGdldCAhZGVmYXVsdCB2YWx1ZXMgbGlrZSBzZXR0aW5ncy5zY3NzXG5AZnVuY3Rpb24gYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcykge1xuICBAd2FybiAnTm90ZSwgdGhhdCAkaGVhZGVyLXNpemVzIGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggJGhlYWRlci1zdHlsZXMuICRoZWFkZXItc2l6ZXMgc3RpbGwgd29ya3MsIGJ1dCBpdCBpcyBnb2luZyB0byBiZSBkZXByZWNpYXRlZC4nO1xuICAkaGVhZGVyLXN0eWxlczogKCk7XG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICAkaGVhZGVyLW1hcDogKCk7XG4gICAgQGVhY2ggJGhlYWRlciwgJGZvbnQtc2l6ZSBpbiAkaGVhZGVycyB7XG4gICAgICAkaGVhZGVyLW1hcDogbWFwLW1lcmdlKCRoZWFkZXItbWFwLCAoJGhlYWRlcjogKCdmb250LXNpemUnOiAkZm9udC1zaXplKSkpOyAgXG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVvY3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIFxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG5cbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogIzc5Nzk2QSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgJltkaXNhYmxlZF0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJysnO1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxMyc7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb24tbWVudVxuLy8vL1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGFjY29yZGlvbiBtZW51cyBoYXZlIHRoZSBkZWZhdWx0IGFycm93IHN0eWxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gYm9yZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIExpc3RcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCBoZWlnaHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUsICRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cbiAgJi5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMXJlbTtcbiAgfVxuICAmLmFsaWduLXJpZ2h0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgfVxufVxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnUge1xuXG4gIC5hY2NvcmRpb24tbWVudSB7XG4gICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICAgIGJvcmRlci10b3A6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICB9XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuICAgIH1cbiAgICBcbiAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4sIHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgbGkge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgfVxuXG4gIC8vIFN1Ym1lbnUgdG9nZ2xlXG4gIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIHdpZHRoOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDtcblxuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyO1xuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIGFycm93IHRvIHRoZSB0b2dnbGVcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNnB4LCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG5cbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyBSb3RhdGUgdGhlIGFycm93IHdoZW4gbWVudSBpcyBvcGVuXG4gIC5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgfVxuXG4gIC5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW4gaG92ZXJlZCBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IHN0YXRlLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgYWN0aXZlYCB3aXRoIGBpcy1hY3RpdmVgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgYWN0aXZlYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IGNlbnRlcmVkLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgLm1lbnUtY2VudGVyZWQgPiAubWVudWAgd2l0aCBgLm1lbnUuYWxpZ24tY2VudGVyYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYG1lbnUtY2VudGVyZWRgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIE1lbnUuXG5AbWl4aW4gbWVudS1iYXNlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG5cbiAgYSxcbiAgLmJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJG1lbnUtaXRlbXMtcGFkZGluZztcbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvZiBpbm5lciBlbGVtZW50c1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICBhLFxuICBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBbGlnbiBtZW51IGl0ZW1zLlxuQG1peGluIG1lbnUtYWxpZ24oJGFsaWdubWVudCkge1xuICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gY2VudGVyIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIGEgTWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgW2hvcml6b250YWxdIC0gRGlyZWN0aW9uIG9mIHRoZSBNZW51LiBDYW4gYmUgYGhvcml6b250YWxgIG9yIGB2ZXJ0aWNhbGAuXG5AbWl4aW4gbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIG1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW1wbGUgTWVudSwgd2hpY2ggaGFzIG5vIHBhZGRpbmcgb3IgaG92ZXIgc3RhdGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFskZ2xvYmFsLWxlZnRdIC0gRGlyZWN0aW9uIG9mIHRoZSBtZW51LiBUaGlzIGVmZmVjdHMgdGhlIHNpZGUgb2YgdGhlIGA8bGk+YCB0aGF0IHJlY2VpdmVzIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LXNpbXBsZS1tYXJnaW5dIC0gVGhlIG1hcmdpbiB0byBhcHBseSB0byBlYWNoIGA8bGk+YC5cbkBtaXhpbiBtZW51LXNpbXBsZSgkZGlyOiAkZ2xvYmFsLWxlZnQsICRtYXJnaW46ICRtZW51LXNpbXBsZS1tYXJnaW4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIGxpICsgbGkge1xuICAgIG1hcmdpbi0jeyRkaXJ9OiAkbWFyZ2luO1xuICB9XG5cbiAgYSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LW5lc3RlZC1tYXJnaW5dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbmVzdGVkLWFsaWdubWVudCBbbGVmdF0gLSBBbGlnbm1lbnQgb2YgdGhlIG5lc3RlZCBjbGFzc1xuQG1peGluIG1lbnUtbmVzdGVkKFxuICAkbWFyZ2luOiAkbWVudS1uZXN0ZWQtbWFyZ2luLFxuICAkbmVzdGVkLWFsaWdubWVudDogbGVmdFxuKSB7XG4gIEBpZiAkbmVzdGVkLWFsaWdubWVudCA9PSByaWdodCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtYXJnaW47XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbiAgfVxuXG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgaWNvbnMgaW4gbWVudXMuXG5AbWl4aW4gbWVudS1pY29ucygpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgaW1nLFxuICAgIGksXG4gICAgc3ZnIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICsgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHBvc2l0aW9uIGNsYXNzZXMgZm9yIGljb25zIHdpdGhpbiBhIG1lbnUuXG5AbWl4aW4gbWVudS1pY29uLXBvc2l0aW9uKCRwb3NpdGlvbjogbGVmdCwgJHNwYWNpbmc6ICRtZW51LWljb24tc3BhY2luZykge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAkc3BhY2luZyBhdXRvIDA7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LXRleHQge1xuICBwYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcblxuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5AbWl4aW4gbWVudS1zdGF0ZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAkbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuXG4gICAgLy8gRGVmYXVsdCBvcmllbnRhdGlvbjogaG9yaXpvbnRhbFxuICAgICYsICYuaG9yaXpvbnRhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBvcmllbnRhdGlvbiBtb2RpZmllclxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBiYWRnZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgYSBiYWRnZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1taW53aWR0aDogMi4xZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBiYWRnZS5cbkBtaXhpbiBiYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAkYmFkZ2UtbWlud2lkdGg7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tYmFkZ2Uge1xuICAuYmFkZ2Uge1xuICAgIEBpbmNsdWRlIGJhZGdlO1xuXG4gICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJhZGdlLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGJhZGdlLWNvbG9yLCAkYmFkZ2UtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzIHtcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBAaW5jbHVkZSBicmVhZGNydW1icy1jb250YWluZXI7XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvbi1ncm91cFxuLy8vL1xuXG4vLy8gTWFyZ2luIGZvciBidXR0b24gZ3JvdXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYnV0dG9ucyB0aGF0IGNhbiBiZSBpbiBhbiBldmVuLXdpZHRoIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGV0ZXJtaW5lcyBpZiAkYnV0dG9uLXJhZGl1cyBpcyBhcHBsaWVkIHRvIGVhY2ggYnV0dG9uIG9yIHRoZSBidXR0b24gZ3JvdXAgYXMgYSB3aG9sZS4gVXNlICRnbG9iYWwtcmFkaXVzIGluIF9zZXR0aW5ncy5zY3NzIHRvIGNoYW5nZSByYWRpdXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkY2hpbGQtc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxuICAkY2hpbGQtc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1tYXJnaW47XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbiAgI3skY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gT25lIGNoaWxkXG4gICAgICAmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgICAgfVxuXG4gICAgICAvLyBUd28gb3IgbW9yZSBjaGlsZHJlZW5cbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXgge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgJiwgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3twZXJjZW50YWdlKDEgLyAkaSl9IC0gI3skc3BhY2luZ30pO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmcgKiAtJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gVW4tc3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXVuc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cCB7XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cDtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBHcm91cFxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kOyB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLFxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwsXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0YWNrO1xuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBmb3JjZS1lbGVtZW50LW5lc3RpbmdcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGlubmVyIHBhZGRpbmcgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkY2FsbG91dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgwLjVyZW0pO1xuICAgIH1cblxuICAgICYubGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDNyZW0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FyZFxuLy8vL1xuXG4vLy8gRGVmdWFsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhcmRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNhcmQgc2hhZG93LlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbi5cbi8vLyBAdHlwZSBudW1iZXJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGZvbnQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gLSBCb3R0b20gbWFyZ2luIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGJvcmRlciAtIEJvcmRlciBhcm91bmQgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmFkaXVzIC0gYm9yZGVyIHJhZGl1cyBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGFkb3cgLSBib3ggc2hhZG93IG9mIHRoZSBjYXJkLlxuQG1peGluIGNhcmQtY29udGFpbmVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkY2FyZC1mb250LWNvbG9yLFxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW4tYm90dG9tLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBzZWN0aW9uLlxuQG1peGluIGNhcmQtc2VjdGlvbihcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYXJkIHtcbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xuICB9XG5cbiAgLmNhcmQtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xuICB9XG5cbiAgLmNhcmQtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgY2FyZC1zZWN0aW9uO1xuICB9XG5cbiAgLy8gRm9yIElFIDExIC0gRmxleGJ1Z1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzL2lzc3Vlcy83NVxuICAuY2FyZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgKG9yIGxlZnQpIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldChzKSBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcblxuICAgICYuc21hbGwgeyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShzbWFsbCkgfVxuICAgICYsICYubWVkaXVtIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUobWVkaXVtKSB9XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nIGluIHRoZSBzdWJtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJpbGxkb3duLWFycm93LXNpemU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMXJlbTtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgfVxuXG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51IHtcbiAgLy8gQXBwbGllZCB0byB0aGUgTWVudSBjb250YWluZXJcbiAgLmlzLWRyaWxsZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoZSB0b3AgbGV2ZWwgPHVsPlxuICAuZHJpbGxkb3duIHtcbiAgICBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZztcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBcHBsaWVkIHRvIHN1Ym1lbnUgPHVsPnNcbiAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgICAgei1pbmRleDogLTE7XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgICB0cmFuc2l0aW9uOiAkZHJpbGxkb3duLXRyYW5zaXRpb247XG5cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgJi5pcy1jbG9zaW5nIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTdWJtZW51IGl0ZW0gcGFkZGluZ1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6ICRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgJGRyaWxsZG93bi1hcnJvd3Mge1xuICAgICAgQGluY2x1ZGUgemYtZHJpbGxkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLWxlZnQpO1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LXdpZHRoOiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjc1cmVtOyAvLyBDcmVhdGVzIHNwYWNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dFxuXG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGRyb3Bkb3duLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuXG5cbiAgLy8gQWxsb3cgYW4gaW50ZXJtaXR0ZW50IHN0YXRlIHRvIGRvIHBvc2l0aW9uaW5nIGJlZm9yZSBtYWtpbmcgdmlzaWJsZS5cbiAgJi5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZS4jeyRuYW1lfSB7XG4gICAgICB3aWR0aDogJHNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyb3Bkb3ducy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3Igc3ViLW1lbnUgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciB3aWR0aCBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8gVXNlZCB0byBhZGp1c3QgdG9wIG1hcmdpbiBvZiBhIHN1Yi1tZW51IGlmIGEgYm9yZGVyIGlzIHVzZWQuXG4vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoOiBudGgoJGRyb3Bkb3dubWVudS1ib3JkZXIsIDEpO1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtLiBFeHBsaWNpdCBvdmVycmlkZSBmb3IgbWVudSBkZWZhdWx0c1xuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgPiBhOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMTRweDtcbiAgfVxuXG4gICYub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gIH1cblxuICAmLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgfVxufVxuXG5AbWl4aW4gZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICA+IGxpLm9wZW5zLWxlZnQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nO1xuICAgICAgfVxuXG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICgkZHJvcGRvd25tZW51LWFycm93LXNpemUgLyAyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmRyb3Bkb3duICYgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLyBXQVJOSU5HOiBXaWxsIGJlIHJlbW92ZWQgaW4gdmVyc2lvbiA2LjRcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvOiBkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtdmlkZW8ge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQoKS4gZm91bmRhdGlvbi1mbGV4LXZpZGVvKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbn1cblxuQG1peGluIGZsZXgtdmlkZW8oJHJhdGlvOiAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpbykge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSByZXNwb25zaXZlLWVtYmVkKCkuIGZsZXgtdmlkZW8oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW8pO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTYpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMiA6IHBvdygxMCwgJHByZWMpO1xuICAgICRleHBvbmVudDogcm91bmQoJGV4cG9uZW50ICogJHByZWMyKTtcbiAgICAkZGVub21pbmF0b3I6IGdjZCgkZXhwb25lbnQsICRwcmVjMik7XG4gICAgQHJldHVybiBudGgtcm9vdChwb3coJGJhc2UsICRleHBvbmVudCAvICRkZW5vbWluYXRvciksICRwcmVjMiAvICRkZW5vbWluYXRvciwgJHByZWMpO1xuICB9XG5cbiAgJHZhbHVlOiAkYmFzZTtcbiAgQGlmICRleHBvbmVudCA+IDEge1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogJGJhc2U7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRleHBvbmVudCA8IDEge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggLSRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAvICRiYXNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gbnRoLXJvb3QoJG51bSwgJG46IDIsICRwcmVjOiAxMikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvTnRoX3Jvb3QjSmF2YVNjcmlwdFxuICAkeDogMTtcblxuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRwcmVjIHtcbiAgICAkeDogMSAvICRuICogKCgkbiAtIDEpICogJHggKyAoJG51bSAvIHBvdygkeCwgJG4gLSAxKSkpO1xuICB9XG5cbiAgQHJldHVybiAkeDtcbn1cblxuLy8vIENhbGN1bGF0ZXMgdGhlIGhlaWdodCBhcyBhIHBlcmNlbnRhZ2Ugb2YgdGhlIHdpZHRoIGZvciBhIGdpdmVuIHJhdGlvLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhdGlvIC0gUmF0aW8gdG8gdXNlIHRvIGNhbGN1bGF0ZSB0aGUgaGVpZ2h0LCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG4vLy8gQHJldHVybiB7TnVtYmVyfSBBIHBlcmNlbnRhZ2UgdmFsdWUgZm9yIHRoZSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHdpZHRoIG9mIGEgcmVzcG9uc2l2ZSBjb250YWluZXIuXG5AZnVuY3Rpb24gcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nXSAtIFBhZGRpbmcgYmV0d2VlbiBzZWN0aW9ucy5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc2VjdGlvbigkcGFkZGluZzogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZykge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkcGFkZGluZztcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGluZztcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHN0YWNrIHNlY3Rpb25zIG9mIGEgbWVkaWEgb2JqZWN0LiBBcHBseSB0aGlzIHRvIHRoZSBzZWN0aW9uIGVsZW1lbnRzLCBub3QgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAkbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZWRpYS1vYmplY3Qge1xuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3QtY29udGFpbmVyO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0gLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc3RhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmLm1pZGRsZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICAgICYuYm90dG9tIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9mZi1jYW52YXNcbi8vLy9cblxuLy8vIFdpZHRoIG9mIGEgbGVmdC9yaWdodCBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1zaXplOiAyNTBweCAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHRvcC9ib3R0b20gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZTogMjUwcHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGZvciB0aGUgb2ZmLWNhbnZhcyBvdmVybGFwIHBhbmVsLlxuLy8vIEB0eXBlIFNoYWRvd1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBzaXplIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweCAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgY29sb3IgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgY29udGVudCBvdmVybGF5LlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTEgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYHB1c2hgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgb3ZlcmxhcGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHVzaW5nIHRoZSBgcmV2ZWFsLWZvci0qYCBjbGFzc2VzIG9yIG1peGluLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMiAhZGVmYXVsdDtcblxuLy8vIExlbmd0aCBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzICFkZWZhdWx0O1xuXG4vLy8gVGltaW5nIGZ1bmN0aW9uIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhIHJldmVhbGVkIG9mZi1jYW52YXMgd2lsbCBiZSBmaXhlZC1wb3NpdGlvbiwgYW5kIHNjcm9sbCB3aXRoIHRoZSBzY3JlZW4uXG4vLy8gQHR5cGUgQm9vbFxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgb3ZlcmxheSB0aGF0IGFwcGVhcnMgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBDU1MgY2xhc3MgdXNlZCBmb3IgdGhlIG1haW4gY29udGVudCBhcmVhLiBUaGUgb2ZmLWNhbnZhcyBtaXhpbnMgdXNlIHRoaXMgdG8gdGFyZ2V0IHRoZSBwYWdlIGNvbnRlbnQuXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNlbGluZSBzdHlsZXMgZm9yIG9mZi1jYW52YXMuIFRoaXMgQ1NTIGlzIHJlcXVpcmVkIHRvIG1ha2UgdGhlIG90aGVyIHBpZWNlcyB3b3JrLlxuQG1peGluIG9mZi1jYW52YXMtYmFzaWNzIHtcblxuICAvLyBDaGVja3MgdGhlIHotaW5kZXhlcyBhbmQgaW5jcmVhc2UgdGhlbSBkdWUgdG8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkuXG4gIC8vIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIG92ZXJsYXkncyB6LWluZGV4IGlzIG5ldyBzaW5jZSB2Ni40IGFuZCBtYXkgYmUgaWRlbnRpY2FsIHRvIHRoZSB1c2VyIGN1c3RvbSBzZXR0aW5ncyBvZiB0aGUgcHVzaCB6LWluZGV4LlxuICBAaWYgJG9mZmNhbnZhcy1wdXNoLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1wdXNoLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleCA8PSAkb2ZmY2FudmFzLXB1c2gtemluZGV4IHsgJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleCArIDEgIWdsb2JhbDsgfVxuICBAaWYgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cblxuICAvLyBIaWRlcyBvdmVyZmxvdyBvbiBib2R5IHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuICAuaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBvdmVybGF5IChnZW5lcmF0ZWQgYnkgSmF2YVNjcmlwdClcbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZywgdmlzaWJpbGl0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG5cbiAgICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3NhYmxlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgICBcbiAgICAmLmlzLW92ZXJsYXktZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyB3cmFwcGVyLlxuQG1peGluIG9mZi1jYW52YXMtd3JhcHBlcigpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNlKFxuICAkYmFja2dyb3VuZDogJG9mZmNhbnZhcy1iYWNrZ3JvdW5kLFxuICAkdHJhbnNpdGlvbjogJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLFxuICAkZml4ZWQ6IHRydWVcbikge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgQGlmICRmaXhlZCA9PSB0cnVlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC8vIFNldCB0aGUgb2ZmLWNhbnZhcyB6LWluZGV4LlxuICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcbiAgfVxuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gIC8vIEhpZGUgaW5hY3RpdmUgb2ZmLWNhbnZhcyB3aXRoaW4gdGhlIGNvbnRlbnQgdGhhdCBoYXZlIHRoZSBzYW1lIHBvc2l0aW9uXG4gICYuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBPdmVybGFwIG9ubHkgc3R5bGVzLlxuICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDtcblxuICAgICYuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAkb2ZmY2FudmFzLXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBTZXRzIHRyYW5zZm9ybSB0byAwIHRvIHNob3cgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbiAgJi5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gcG9zaXRpb24gYW4gb2ZmLWNhbnZhcyBwYW5lbCB0byB0aGUgbGVmdC9yaWdodC90b3AvYm90dG9tLlxuQG1peGluIG9mZi1jYW52YXMtcG9zaXRpb24oXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJG9yaWVudGF0aW9uOiBob3Jpem9udGFsLFxuICAkc2l6ZTogaWYoJG9yaWVudGF0aW9uID09IGhvcml6b250YWwsICRvZmZjYW52YXMtc2l6ZSwgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKVxuKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBcbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHNpemU7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIFxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkc2l6ZTtcblxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBcbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkc2l6ZSk7XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUgaXMgc2V0LCBhZGQgaW5uZXIgYm94LXNoYWRvdy5cbiAgLy8gVGhpcyBtaW1pY3MgdGhlIG9mZi1jYW52YXMgcGFuZWwgaGF2aW5nIGEgbG93ZXIgei1pbmRleCwgd2l0aG91dCBoYXZpbmcgdG8gaGF2ZSBvbmUuXG4gIEBpZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIHtcbiAgICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhyaWdodCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cobGVmdCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGJvdHRvbSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHRvcCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgIH0gICAgXG4gIH1cblxufVxuXG4vLy8gU2V0cyB0aGUgc3R5bGVzIGZvciB0aGUgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy1jb250ZW50KCkge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAvLyBUcmFuc2Zvcm0gc2NvcGUgdW50aWwgdGhlIGVsZW1lbnQgaXMgY2xvc2VkIChtYWtlcyBzdXJlIHRyYW5zaXRpb25lbmQgZ2V0cyB0cmlnZ2VyZWQpXG4gICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cblxuICAvLyBDb25zaWRlciBlbGVtZW50ICYgY29udGVudCwgbmVzdGVkIGluIGFub3RoZXIgY29udGVudFxuICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdGhhdCByZXZlYWwgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbkBtaXhpbiBvZmYtY2FudmFzLXJldmVhbChcbiRwb3NpdGlvbjogbGVmdCxcbiR6aW5kZXg6ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCxcbiRjb250ZW50OiAkbWFpbmNvbnRlbnQtY2xhc3Ncbikge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgQGlmIG5vdCAkb2ZmY2FudmFzLWZpeGVkLXJldmVhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIHJldmVhbGVkIGVsZW1lbnQgaXMgbmVzdGVkIGluIGNvbnRlbnRcbiAgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICBAYXQtcm9vdCAuI3skY29udGVudH0uaGFzLXJldmVhbC0jeyRwb3NpdGlvbn0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06ICRvZmZjYW52YXMtc2l6ZTtcbiAgfVxuXG4gIC8vIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IChwcmlvciB0byB2Ni40KVxuICAmIH4gLiN7JGNvbnRlbnR9IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAkb2ZmY2FudmFzLXNpemU7XG4gIH1cbn1cblxuLy8vIE92ZXJyaWRlcyB0aGUgb2ZmLWNhbnZhcyBzdHlsZXNcbkBtaXhpbiBpbi1jYW52YXMoKSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgd2lkdGg6IGluaGVyaXQ7XG4gIG92ZXJmbG93OiBpbmhlcml0O1xuICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLnBvc2l0aW9uLWxlZnQsXG4gICYucG9zaXRpb24tcmlnaHQsXG4gICYucG9zaXRpb24tdG9wLFxuICAmLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9mZi1jYW52YXMge1xuICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2ljcztcblxuICAvLyBPZmYtY2FudmFzIHdyYXBwZXJcbiAgLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy13cmFwcGVyO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXJcbiAgLm9mZi1jYW52YXMge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZTtcblxuICAgIC8vIEZvcmNlIHBvc2l0aW9uIGFic29sdXRlIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBiZWNhdXNlIGZpeGVkIGRvZXNuJ3Qgd29yayBmb3IgcHVzaCB0cmFuc2l0aW9uIHdpdGhpbiB0aGUgdHJhbnNmb3JtIHNjb3BlLlxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgICAvLyBOT1RFOiBzaW5jZSBvdmVybGFwIHRyYW5zaXRpb24gaXMgY3VycmVudGx5IGZvcmNlZCBpZiBuZXN0ZWQsIHRoZXJlJ3Mgbm8gbmVlZCB0byBmb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSB1bnRpbCBuZXN0ZWQgcHVzaCB0cmFuc2l0aW9uIGlzIHN1cHBvcnRlZC5cbiAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lciB3aXRoIGFic29sdXRlIHBvc2l0aW9uXG4gIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2UoJGZpeGVkOiBmYWxzZSk7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIHBvc2l0aW9uIGNsYXNzZXNcbiAgLnBvc2l0aW9uLWxlZnQgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGxlZnQsICAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0ICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHJpZ2h0LCAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXRvcCAgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHRvcCwgICAgdmVydGljYWwpOyB9XG4gIC5wb3NpdGlvbi1ib3R0b20gIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihib3R0b20sIHZlcnRpY2FsKTsgfVxuXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtY29udGVudDtcbiAgfVxuXG4gIC8vIFJldmVhbCBvZmYtY2FudmFzIHBhbmVsIG9uIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwobGVmdCk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbCh0b3ApO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChib3R0b20pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW92ZSBpbi1jYW52YXMgZm9yIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgaW4tY2FudmFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG9yYml0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBhY3RpdmUgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlhbWV0ZXIgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGJldHdlZW4gT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGlzdGFuY2UgZnJvbSBzbGlkZSByZWdpb24gZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZyb20gT3JiaXQncyBidWxsZXRzIHRvIHdoYXRldmVyIGNvbnRlbnQgbWF5IGx1cmsgYmVsb3cgaXQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgT3JiaXQncyBjYXB0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgT3JiaXQncyBjb250cm9scyB3aGVuIGhvdmVyZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgei1pbmRleCBmb3IgT3JiaXQncyBjb250cm9scy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTAgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIG91dGVyIE9yYml0IHdyYXBwZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgT3JiaXQgc2xpZGUgY29udGFpbmVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY29udGFpbmVyYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDsgLy8gUHJldmVudCBGT1VDIGJ5IG5vdCBzaG93aW5nIHVudGlsIEpTIHNldHMgaGVpZ2h0XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5kaXZpZHVhbCBzbGlkZXMgb2YgYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtc2xpZGVgIGNsYXNzLlxuQG1peGluIG9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi5uby1tb3Rpb251aSB7XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHNsaWRlIGNvbnRhaW5pbmcgYW4gaW1hZ2UuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1pbWFnZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gb3JiaXQgc2xpZGUgY2FwdGlvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNhcHRpb25gIGNsYXNzLlxuQG1peGluIG9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZCk7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGluIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgYC5vcmJpdC1uZXh0YCBhbmQgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3NlcyBpbiB0aGUgZGVmYXVsdCBDU1MuXG5AbWl4aW4gb3JiaXQtY29udHJvbCB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICB6LWluZGV4OiAkb3JiaXQtY29udHJvbC16aW5kZXg7XG4gIHBhZGRpbmc6ICRvcmJpdC1jb250cm9sLXBhZGRpbmc7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzLlxuQG1peGluIG9yYml0LXByZXZpb3VzIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBuZXh0IGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LW5leHRgIGNsYXNzLlxuQG1peGluIG9yYml0LW5leHQge1xuICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICN7JGdsb2JhbC1yaWdodH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjb250YWluZXIgb2YgT3JiaXQgYnVsbGV0cy4gLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtYnVsbGV0c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtYnVsbGV0cyB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A7XG4gIG1hcmdpbi1ib3R0b206ICRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIG1hcmdpbjogJG9yYml0LWJ1bGxldC1tYXJnaW47XG5cbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9yYml0IHtcbiAgLm9yYml0IHtcbiAgICBAaW5jbHVkZSBvcmJpdC13cmFwcGVyO1xuICB9XG5cbiAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udGFpbmVyO1xuICB9XG5cbiAgLm9yYml0LXNsaWRlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1zbGlkZTtcbiAgfVxuXG4gIC5vcmJpdC1maWd1cmUge1xuICAgIEBpbmNsdWRlIG9yYml0LWZpZ3VyZTtcbiAgfVxuXG4gIC5vcmJpdC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtaW1hZ2U7XG4gIH1cblxuICAub3JiaXQtY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY2FwdGlvbjtcbiAgfVxuXG4gICVvcmJpdC1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250cm9sO1xuICB9XG5cbiAgLm9yYml0LXByZXZpb3VzIHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LXByZXZpb3VzO1xuICB9XG5cbiAgLm9yYml0LW5leHQge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtbmV4dDtcbiAgfVxuXG4gIC5vcmJpdC1idWxsZXRzIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1idWxsZXRzO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGFiJztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYmInO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwcm9ncmVzcyBiYXIgY29udGFpbmVyLlxuQG1peGluIHByb2dyZXNzLWNvbnRhaW5lciB7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogJHByb2dyZXNzLW1hcmdpbi1ib3R0b207XG4gIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYWNrZ3JvdW5kO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBtZXRlciBvZiBhIHByb2dyZXNzIGJhci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRleHQgaW4gdGhlIHByb2dyZXNzIG1ldGVyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyLXRleHQge1xuICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyIHtcbiAgLy8gUHJvZ3Jlc3MgYmFyXG4gIC5wcm9ncmVzcyB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtY29udGFpbmVyO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyXG4gIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXI7XG4gIH1cblxuICAvLyBJbm5lciBtZXRlciB0ZXh0XG4gIC5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlci10ZXh0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gW1RPRE9dIENoZWNrIGhvdyBwbHVnaW4gY29uZmlybXMgZGlzYWJsZWQgb3IgdmVydGljYWwgc3RhdHVzXG4vLyBbVE9ET10gQ2hlY2sgaWYgdHJhbnNpdGlvbjogYWxsOyBpcyBuZWNlc3NhcnlcblxuLy8vL1xuLy8vIEBncm91cCBzbGlkZXJcbi8vLy9cblxuLy8vIERlZmF1bHQgc2xpZGVyIHdpZHRoIG9mIGEgdmVydGljYWwgc2xpZGVyLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnRpZXMgdG8gYXBwbHkgdG8gdGhlIHNsaWRlciBoYW5kbGUgYW5kIGZpbGwuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWJhY2tncm91bmQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBhY3RpdmUgZmlsbCBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRoZSBzbGlkZXIgaGFuZGxlcy5cbkBtaXhpbiBzbGlkZXItaGFuZGxlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzbGlkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gc2xpZGVyLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG5cbiAgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXNsaWRlciB7XG4gIC8vIENvbnRhaW5lclxuICAuc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItY29udGFpbmVyO1xuICB9XG5cbiAgLy8gRmlsbCBhcmVhXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWZpbGw7XG4gIH1cblxuICAvLyBEcmFnZ2FibGUgaGFuZGxlXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItaGFuZGxlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLnNsaWRlci5kaXNhYmxlZCxcbiAgLnNsaWRlcltkaXNhYmxlZF0ge1xuICAgIEBpbmNsdWRlIHNsaWRlci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIHNsaWRlclxuICAuc2xpZGVyLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBSVEwgc3VwcG9ydFxuICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgIC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0ICd3d3dyb290L3NyYy9jc3MvdGhpcmQtcGFydHkvZm91bmRhdGlvbl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3VuZGF0aW9uJztcbkBpbXBvcnQgJ3d3d3Jvb3Qvc3JjL2Nzcy90aGlyZC1wYXJ0eS9mb3VuZGF0aW9uX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy9tb3Rpb24tdWknO1xuLy9nbG9iYWwgaW5jbHVkZXNcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXJhbmdlLWlucHV0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1lbGVtZW50O1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWVsZW1lbnQ7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tbWV0ZXItZWxlbWVudDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbi8qQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7Ki9cbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4vL0BpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzO1xuQGluY2x1ZGUgbW90aW9uLXVpLXRyYW5zaXRpb25zO1xuQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XG4vL1JhcGlkIFNDU1Ncbi8vQmFzZSBTdHlsZXNcbkBpbXBvcnQgJ2Jhc2Uvc3ByaXRlJztcbkBpbXBvcnQgJ2Jhc2Uvc3R5bGVGaXhlcyc7XG5AaW1wb3J0ICdiYXNlL292ZXJsYXknO1xuQGltcG9ydCAnYmFzZS9wb3B1cCc7XG5AaW1wb3J0ICdiYXNlL29sZENvbG9yQ2xhc3Nlcyc7XG5AaW1wb3J0ICdiYXNlL2JyZWFkY3J1bWJzJztcbi8qQGluY2x1ZGUgc3ByaXRlcygkc3ByaXRlc2hlZXQtc3ByaXRlcyk7Ki9cbi8vTW9kdWxlcyAtIHJldXNhYmxlIHN0eWxlcyBub24gZGVwZW5kYW50IG9mIGNvbnRhaW5lclxuQGltcG9ydCAnbW9kdWxlL2JyZWFkY3J1bWInO1xuQGltcG9ydCAnbW9kdWxlL21lbnVzJztcbkBpbXBvcnQgJ21vZHVsZS9nbG9iYWxCdWlsZGluZ0Jsb2Nrcyc7IFxuQGltcG9ydCAnbW9kdWxlL2Zvcm1FbGVtZW50cyc7XG5AaW1wb3J0ICdtb2R1bGUvbWFpbkltYWdlJztcbkBpbXBvcnQgJ21vZHVsZS9yZXZpZXdTdGFycyc7XG5AaW1wb3J0ICdtb2R1bGUvcHJpY2VUYWJsZSc7XG5AaW1wb3J0ICdtb2R1bGUvcXVpY2tBdHRyaWJ1dGVzJztcbkBpbXBvcnQgJ21vZHVsZS9wcm9kdWN0V2lkZ2V0JztcbkBpbXBvcnQgJ21vZHVsZS9wcm9kdWN0LXRpbGUnO1xuQGltcG9ydCAnbW9kdWxlL3Byb2R1Y3RSb3dzJztcbkBpbXBvcnQgJ21vZHVsZS9hdHRyaWJ1dGVGaWx0ZXJzJztcbkBpbXBvcnQgJ21vZHVsZS9zZWFyY2hQYWdpbmF0aW9uJztcbkBpbXBvcnQgJ21vZHVsZS9zZWFyY2hUaWVycyc7XG5AaW1wb3J0ICdtb2R1bGUvc2VhcmNoQXR0cmlidXRlc1RhYmxlJztcbkBpbXBvcnQgJ21vZHVsZS9iYXNrZXRJdGVtcyc7XG5AaW1wb3J0ICdtb2R1bGUvYWRkcmVzc2VzQmxvY2snO1xuQGltcG9ydCAnbW9kdWxlL25vdGlmaWNhdGlvbnNQYW5lbCc7XG5AaW1wb3J0ICdtb2R1bGUvcmVjZW50T3JkZXJzJztcbkBpbXBvcnQgJ21vZHVsZS9zbGlkZXInO1xuLy9MYXlvdXQgLSBzdHlsZXMgc3BlY2lmaWMgZm9yIGVhY2ggc2VjdGlvbi9wYWdlIG5vdCB1c2VkIGFueXdoZXJlIGVsc2VcbkBpbXBvcnQgJ2xheW91dC9jaGFuZ2VTaXRlUG9wdXAnO1xuQGltcG9ydCAnbGF5b3V0L2FkZGVkVG9CYXNrZXRQb3B1cCc7XG5AaW1wb3J0ICdsYXlvdXQvY3VycmVuY3lQb3B1cCc7XG5AaW1wb3J0ICdsYXlvdXQvY29va2llLXBvbGljeSc7XG5AaW1wb3J0ICdsYXlvdXQvbWFpbk5hdic7XG5AaW1wb3J0ICdsYXlvdXQvZm9vdGVyTmF2JztcbkBpbXBvcnQgJ2xheW91dC9oZWFkZXInO1xuQGltcG9ydCAnbGF5b3V0L2xpdmUtY2hhdCc7XG5AaW1wb3J0ICdsYXlvdXQvc2VhcmNoU3VnZ2VzdGlvbnMnO1xuQGltcG9ydCAnbGF5b3V0L215QWNjb3VudCc7XG5AaW1wb3J0ICdsYXlvdXQvZ2xvYmFsQWRtaW4nO1xuQGltcG9ydCAnbGF5b3V0L29yZGVycyc7XG5AaW1wb3J0ICdsYXlvdXQvX3Byb21vdGlvbnMnO1xuQGltcG9ydCAnbGF5b3V0L3NrdSc7XG5AaW1wb3J0ICdsYXlvdXQvc3RvY2stbWVzc2FnZS1pbmZvJztcbkBpbXBvcnQgJ2xheW91dC90aWVyJztcbkBpbXBvcnQgJ2xheW91dC90YXNrTGlzdCc7XG5AaW1wb3J0ICdsYXlvdXQvc2VhcmNoJztcbkBpbXBvcnQgJ2xheW91dC9jb21wYXJlJztcbkBpbXBvcnQgJ2xheW91dC9zaWduSW4nO1xuQGltcG9ydCAnbGF5b3V0L2JyYW5kcyc7XG5AaW1wb3J0ICdsYXlvdXQvcXVvdGVQYWdlJztcbkBpbXBvcnQgJ2xheW91dC9iYXNrZXQnO1xuQGltcG9ydCAnbGF5b3V0L2N1dFBhc3RlJztcbkBpbXBvcnQgJ2xheW91dC9idXlBcmVhJztcbkBpbXBvcnQgJ2xheW91dC9yZXR1cm5zLWVycm9ycyc7XG5cbjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjY2NjICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG5zZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLmZhIHtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUgIWltcG9ydGFudDtcbn0iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtZWxlbWVudC1uZXN0aW5nLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIHRhYmxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhc2UgLSBDb2xvciB0byBjaGVjayBsdW1pbmFuY2UuXG4vLy8gQHBhcmFtIHtMaXN0fSAkY29sb3JzIFsoJHdoaXRlLCAkYmxhY2spXSAtIENvbG9ycyB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9sZXJhbmNlIFskZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlXSAtIENvbnRyYXN0IHRvbGVyYW5jZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZSkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0LXdhcm5pbmdzIGFuZCAkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYGV4cGFuZC1uYCBjbGFzc2VzIHRvIGluY2x1ZGUgaW4gdGhlIENTUy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aHVtYm5haWxcbi8vLy9cblxuLy8vIEJvcmRlciBhcm91bmQgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBCb3JkZXJcbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BydGllcyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGh1bWJuYWlsIHN0eWxlcyB0byBhbiBlbGVtZW50LlxuQG1peGluIHRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkdGh1bWJuYWlsLW1hcmdpbi1ib3R0b207XG5cbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1yYWRpdXM7XG4gIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xuXG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5AbWl4aW4gdGh1bWJuYWlsLWxpbmsge1xuICB0cmFuc2l0aW9uOiAkdGh1bWJuYWlsLXRyYW5zaXRpb247XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI7XG4gIH1cblxuICBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10aHVtYm5haWwge1xuICAudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gIH1cblxuICBhLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsLWxpbms7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRpdGxlLWJhclxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIFdlaWdodFxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIHRoZSBtZW51IGljb24gYW5kIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdGl0bGUtYmFyIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0aXRsZWJhci1jb2xvcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjdXJzb3Igb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBib3R0b20gb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBMaXN0XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgZm9udC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4IHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBjdXJzb3I6ICRoYXMtdGlwLWN1cnNvcjtcbn1cblxuQG1peGluIHRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIHotaW5kZXg6IDEyMDA7XG5cbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJi5ib3R0b20ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCB1cCk7XG4gICAgICBib3R0b206IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi50b3Age1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBkb3duKTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmxlZnQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCByaWdodCk7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGxlZnQpO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlO1xuICB9XG5cbiAgJi5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b3AtYmFyXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXIuIFRoaXMgY29sb3IgYWxzbyBjYXNjYWRlcyB0byBtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHN1Ym1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci4gVXNlZnVsbCBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgdHJhbnNwYXJlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGZvciB0aGUgdG9wIGJhciB0aXRsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGA8aW5wdXQ+YCBlbGVtZW50cyBpbnNpZGUgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggdG9wIGJhciBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRvcCBiYXIgY29udGFpbmVyLlxuQG1peGluIHRvcC1iYXItY29udGFpbmVyIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBwYWRkaW5nOiAkdG9wYmFyLXBhZGRpbmc7XG5cbiAgJixcbiAgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyBkaWZmZXJudCBmcm9tICR0b3BiYXItYmFja2dyb3VuZC1zdWJtZW51XG4gIEBpZiAoJHRvcGJhci1iYWNrZ3JvdW5kICE9ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kKSB7XG4gICAgdWwgdWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzdHJhaW4gd2lkdGggb2YgaW5wdXRzIGJ5IGRlZmF1bHQgdG8gbWFrZSB0aGVtIGVhc2llciB0byBhcnJhbmdlXG4gIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6ICR0b3BiYXItaW5wdXQtd2lkdGg7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gIH1cblxuICAvLyBUaGUgYWJvdmUgc3R5bGVzIHNob3VsZG4ndCBhcHBseSB0byBpbnB1dCBncm91cCBmaWVsZHNcbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgfVxuXG4gIGlucHV0LmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBNYWtlcyBzZWN0aW9ucyBvZiBhIHRvcCBiYXIgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIuXG5AbWl4aW4gdG9wLWJhci1zdGFja2VkIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbmRvZXMgdGhlIENTUyBhcHBsaWVkIGJ5IHRoZSBgdG9wLWJhci1zdGFja2VkKClgIG1peGluLlxuQG1peGluIHRvcC1iYXItdW5zdGFjayB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9wLWJhciB7XG4gIC8vIFRvcCBiYXIgY29udGFpbmVyXG4gIC50b3AtYmFyIHtcbiAgICBAaW5jbHVkZSB0b3AtYmFyLWNvbnRhaW5lcjtcblxuICAgIC8vIFN0YWNrIG9uIHNtYWxsIHNjcmVlbnMgYnkgZGVmYXVsdFxuICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBpbmNsdWRlIHRvcC1iYXItdW5zdGFjaztcbiAgICB9XG5cbiAgICAvLyBHZW5lcmF0ZSBjbGFzc2VzIGZvciBzdGFja2luZyBvbiBlYWNoIHNjcmVlbiBzaXplIChkZWZpbmVkIGluICRicmVha3BvaW50LWNsYXNzZXMpXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAmLnN0YWNrZWQtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdWItc2VjdGlvbnNcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW46ICR0b3BiYXItdGl0bGUtc3BhY2luZztcbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG5cbiAgICAgIC5tZW51LWljb24ge1xuICAgICAgICBib3R0b206IDJweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAoMSAvIDE2KTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtICgxIC8gMTYpO1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZmxvYXRcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcyB7XG4gIC5mbG9hdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBGb3JtYXQgZm9yIENTUyBjbGFzc2VzIGNyZWF0ZWQgd2l0aCBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IGFwcGVuZCBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNlbGVjdG9ycyBhcmUgY2hhaW5lZCB0byB0aGUgc2VsZWN0b3IgKGAuY2xhc3MuZW50ZXJgKSwgb3IgYXBwZW5kZWQgYXMgYSBuZXcgY2xhc3MgKGAuY2xhc3MtZW50ZXJgKS5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWydtdWktJ10gLSBQcmVmaXggdG8gYWRkIGJlZm9yZSB0aGUgc3RhdGUgb2YgYSBjbGFzcy4gRW50ZXIgYW4gZW1wdHkgc3RyaW5nIHRvIHVzZSBubyBwcmVmaXguXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnLWFjdGl2ZSddIC0gU3VmZml4IHRvIGFkZCB0byB0aGUgYWN0aXZlIHN0YXRlIGNsYXNzLlxuJG1vdGlvbi11aS1jbGFzc2VzOiAoXG4gIGNoYWluOiB0cnVlLFxuICBwcmVmaXg6ICdtdWktJyxcbiAgYWN0aXZlOiAnLWFjdGl2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGUgbmFtZXMgdG8gcmVmZXJlbmNlIHdoZW4gd3JpdGluZyBtb3Rpb24gY2xhc3Nlcy4gVG8gdXNlIG11bHRpcGxlIGNsYXNzIG5hbWVzIGZvciBvbmUgc3RhdGUsIGVudGVyIGEgbGlzdCBvZiBzdHJpbmdzIGluc3RlYWQgb2Ygb25lIHN0cmluZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3RhdGVzOiAoXG4gIGluOiAnZW50ZXInLFxuICBvdXQ6ICdsZWF2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzcGVlZCB0aGF0IHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zIHBsYXkgYXQsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgc3BlZWQuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXNwZWVkczogKFxuICBkZWZhdWx0OiA1MDBtcyxcbiAgc2xvdzogNzUwbXMsXG4gIGZhc3Q6IDI1MG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGVsYXkgdG8gYWRkIGJlZm9yZSBtb3Rpb24sIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZGVsYXkuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWRlbGF5czogKFxuICBkZWZhdWx0OiAwLFxuICBzaG9ydDogMzAwbXMsXG4gIGxvbmc6IDcwMG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucywgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBlYXNpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWVhc2luZ3M6IChcbiAgZGVmYXVsdDogbGluZWFyLFxuICBsaW5lYXI6IGxpbmVhcixcbiAgZWFzZTogZWFzZSxcbiAgZWFzZS1pbjogZWFzZS1pbixcbiAgZWFzZS1vdXQ6IGVhc2Utb3V0LFxuICBlYXNlLWluLW91dDogZWFzZS1pbi1vdXQsXG4gIGJvdW5jZS1pbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpLFxuICBib3VuY2Utb3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxuICBib3VuY2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSksXG4pICFkZWZhdWx0O1xuXG4vLy8gTWlzY2VsbGFuZW91cyBzZXR0aW5ncyByZWxhdGVkIHRvIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW2ZhbHNlXSAtIERlZmluZXMgaWYgc2xpZGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBoaW5nZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNjYWxlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc3BpbiBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuJG1vdGlvbi11aS1zZXR0aW5nczogKFxuICBzbGlkZS1hbmQtZmFkZTogZmFsc2UsXG4gIGhpbmdlLWFuZC1mYWRlOiB0cnVlLFxuICBzY2FsZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc3Bpbi1hbmQtZmFkZTogdHJ1ZSxcbiAgYWN0aXZhdGUtcXVldWUtY2xhc3M6ICdpcy1hbmltYXRpbmcnLFxuKSAhZGVmYXVsdDtcbiIsIi8vIEludGVybmFsIGNvdW50ZXIgZm9yIGNyZWF0aW5nIHVuaXF1ZSBrZXlmcmFtZSBuYW1lc1xuJC1tdWktY3VzdG9tOiAwO1xuXG4vLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucy4gVXNlIHRoaXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBgbXVpLWFuaW1hdGlvbmAgaWYgeW91IHdhbnQgdG8gY3JlYXRlIGEga2V5ZnJhbWUgYW5pbWF0aW9uICp3aXRob3V0KiBhdXRvbWF0aWNhbGx5IGFzc2lnbmluZyBpdCB0byB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBrZXlmcmFtZS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWtleWZyYW1lcygkbmFtZSwgJGVmZmVjdHMuLi4pIHtcbiAgJG9iajogLW11aS1wcm9jZXNzLWFyZ3MoJGVmZmVjdHMuLi4pO1xuICAkb2JqOiBtYXAtcmVtb3ZlKCRvYmosIG5hbWUpO1xuXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIC8vIE5vdyBpdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgQGVhY2ggJHBjdCwgJHByb3BzIGluICRvYmoge1xuICAgICAgI3stbXVpLWtleWZyYW1lLXBjdCgkcGN0KX0ge1xuICAgICAgICAvLyBMYXN0bHksIGl0ZXJhdGUgdGhyb3VnaCBlYWNoIENTUyBwcm9wZXJ0eSB3aXRoaW4gYSBwZXJjZW50YWdlIGFuZCBwcmludCBpdCBvdXRcbiAgICAgICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkcHJvcHMge1xuICAgICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzdHJpbmcgZm9yIGEgQ1NTIGtleWZyYW1lLCBieSBjb252ZXJ0aW5nIGEgbGlzdCBvZiBudW1iZXJzIHRvIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGlucHV0IC0gTGlzdCBvZiBudW1iZXJzIHRvIHVzZS5cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IEEgc2V0IG9mIGNvbW1hLXNlcGFyYXRlZCBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXBjdCgkaW5wdXQpIHtcbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbnVtYmVyJyB7XG4gICAgJG91dHB1dDogKCRpbnB1dCAqIDElKTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ2xpc3QnIHtcbiAgICBAZWFjaCAkaSBpbiAkaW5wdXQge1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICgkaSAqIDElKSwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG91dHB1dDtcbn1cblxuLy8vIFByaW50cyB0aGUgQ1NTIHByb3BlcnRpZXMgZnJvbSBhIHNwZWNpZmljIGtleSBpbiBhIGtleWZyYW1lcyBtYXAuIFVzZWQgdG8gYm9ycm93IENTUyBmcm9tIGtleWZyYW1lIGZ1bmN0aW9ucyBmb3IgdXNlIGluIHRyYW5zaXRpb25zLlxuLy8vIEBwYXJhbSB7TWFwfSAka2YgLSBLZXlmcmFtZSBtYXAgdG8gZXh0cmFjdCBmcm9tLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAka2V5IC0gS2V5IGluIHRoZSBtYXAgdG8gcHJpbnQgdGhlIENTUyBvZi5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtbXVpLWtleWZyYW1lLWdldCgka2YsICRrZXkpIHtcbiAgJG1hcDogbWFwLWdldCgka2YsICRrZXkpO1xuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG1hcCBvciAoKSB7XG4gICAgLy8gU29tZSBrZXlmcmFtZSBtYXBzIHN0b3JlIHRyYW5zZm9ybXMgYXMgcXVvdGVkIHN0cmluZ3NcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdzdHJpbmcnIHtcbiAgICAgICR2YWx1ZTogdW5xdW90ZSgkdmFsdWUpO1xuICAgIH1cbiAgICAjeyRwcm9wfTogJHZhbHVlO1xuICB9XG59XG5cbi8vLyBSZWZvcm1hdHMgYSBtYXAgY29udGFpbmluZyBrZXlzIHdpdGggYSBsaXN0IG9mIHZhbHVlcywgc28gdGhhdCBlYWNoIGtleSBpcyBhIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzcGxpdCB1cC5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgcmVmb3JtYXR0ZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCkge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gU3BsaXQga2V5cyB3aXRoIG11bHRpcGxlIHZhbHVlcyBpbnRvIGluZGl2aWR1YWwga2V5c1xuICBAZWFjaCAka2V5LCAkaXRlbSBpbiAkbWFwIHtcbiAgICAka2V5LXR5cGU6IHR5cGUtb2YoJGtleSk7XG5cbiAgICBAaWYgJGtleS10eXBlID09ICdudW1iZXInIHtcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkaXRlbSkpO1xuICAgIH0gQGVsc2UgaWYgJGtleS10eXBlID09ICdsaXN0JyB7XG4gICAgICBAZWFjaCAkayBpbiAka2V5IHtcbiAgICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrOiAkaXRlbSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyBhIHNlcmllcyBvZiBrZXlmcmFtZSBvYmplY3RzIGludG8gb25lLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwcy4uLiAtIEEgc2VyaWVzIG9mIG1hcHMgdG8gbWVyZ2UsIGFzIGluZGl2aWR1YWwgcGFyYW1ldGVycy5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQga2V5ZnJhbWUgb2JqZWN0LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtY29tYmluZSgkbWFwcy4uLikge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggbWFwIHBhc3NlZCBpblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbWFwOiBjYWxsKGdldC1mdW5jdGlvbigkbWFwKSk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtsZWZ0XSAtIERpcmVjdGlvbiB0byBzbGlkZSB0by4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbGVmdCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzBdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbMV0gLSBPcGFjaXR5IHRvIGVuZCBvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogMCxcbiAgJHRvOiAxLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSBlZmZlY3QgYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW2Zyb20tYmFja10gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLlxuQGZ1bmN0aW9uIGhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2tcbikge1xuICAvLyBSb3RhdGlvbiBkaXJlY3Rpb25zIHdoZW4gaGluZ2luZyBmcm9tIGJhY2sgdnMuIGZyb250XG4gICRyb3RhdGlvbi1hbW91bnQ6IDkwZGVnO1xuICAkcm90YXRpb25zLWJhY2s6IChcbiAgICB0b3A6IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICApO1xuICAkcm90YXRpb25zLWZyb206IChcbiAgICB0b3A6IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICApO1xuXG4gIC8vIFJvdGF0aW9uIG9yaWdpblxuICAkcm90YXRpb246ICcnO1xuICBAaWYgJHR1cm4tb3JpZ2luID09IGZyb20tZnJvbnQge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWZyb20sICRmcm9tKTtcbiAgfSBAZWxzZSBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1iYWNrIHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1iYWNrLCAkZnJvbSk7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICckdHVybi1vcmlnaW4gbXVzdCBiZSBlaXRoZXIgXCJmcm9tLWJhY2tcIiBvciBcImZyb20tZnJvbnRcIic7XG4gIH1cblxuICAvLyBTdGFydCBhbmQgZW5kIHN0YXRlXG4gICRzdGFydDogJyc7XG4gICRlbmQ6ICcnO1xuICBAaWYgJHN0YXRlID09IGluIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICB9IEBlbHNlIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICB9XG5cbiAgLy8gVHVybiBheGlzXG4gICRvcmlnaW46ICcnO1xuICBAaWYgJGF4aXMgPT0gZWRnZSB7XG4gICAgJG9yaWdpbjogJGZyb207XG4gIH0gQGVsc2Uge1xuICAgICRvcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gICRrZXlmcmFtZXM6IChcbiAgICBuYW1lOiAnaGluZ2UtI3skc3RhdGV9LSN7JGZyb219LSN7JGF4aXN9LSN7JHR1cm4tb3JpZ2lufScsXG4gICAgMDogKHRyYW5zZm9ybTogJHN0YXJ0LCB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luKSxcbiAgICAxMDA6ICh0cmFuc2Zvcm06ICRlbmQpLFxuICApO1xuXG4gIEByZXR1cm4gJGtleWZyYW1lcztcbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbZnJvbS1iYWNrXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1oaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogZnJvbS1iYWNrLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBoaW5nZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGhpbmdlOiBoaW5nZSgkc3RhdGUsICRmcm9tLCAkYXhpcywgJHBlcnNwZWN0aXZlLCAkdHVybi1vcmlnaW4pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2NhbGluZyB0cmFuc2l0aW9uLiBBIHNjYWxlIG9mIGAxYCBtZWFucyB0aGUgZWxlbWVudCBpcyB0aGUgc2FtZSBzaXplLiBMYXJnZXIgbnVtYmVycyBtYWtlIHRoZSBlbGVtZW50IGJpZ2dlciwgd2hpbGUgbnVtYmVycyBsZXNzIHRoYW4gMSBtYWtlIHRoZSBlbGVtZW50IHNtYWxsZXIuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFsxLjVdIC0gU2l6ZSB0byBzdGFydCBhdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzFdIC0gU2l6ZSB0byBlbmQgYXQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS16b29tKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogMS41LFxuICAkdG86IDEsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNjYWxlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc2NhbGU6IHpvb20oJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzcGlubmluZyB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LiBUaGUgYHR1cm5gIHVuaXQgaXMgdXNlZCB0byBzcGVjaWZ5IGhvdyBmYXIgdG8gcm90YXRlLiBgMXR1cm5gIGlzIGVxdWFsIHRvIGEgMzYwLWRlZ3JlZSBzcGluLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGRpcmVjdGlvbiBbY3ddIC0gRGlyZWN0aW9uIHRvIHNwaW4uIFNob3VsZCBiZSBgY3dgIChjbG9ja3dpc2UpIG9yIGBjY3dgIChjb3VudGVyY2xvY2t3aXNlKS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGFtb3VudCBbMC43NXR1cm5dIC0gQW1vdW50IHRvIGVsZW1lbnQgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc3BpbihcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogY3csXG4gICRhbW91bnQ6IDAuNzV0dXJuLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzcGluLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc3Bpbjogc3Bpbigkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyBhbmQgYXNzaWducyBpdCB0byB0aGUgZWxlbWVudCBieSBhZGRpbmcgdGhlIGBhbmltYXRpb24tbmFtZWAgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtGdW5jdGlvbn0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1hbmltYXRpb24oJGFyZ3MuLi4pIHtcbiAgJG5hbWU6IG1hcC1nZXQoLW11aS1wcm9jZXNzLWFyZ3MoJGFyZ3MuLi4pLCBuYW1lKTtcbiAgQGluY2x1ZGUgbXVpLWtleWZyYW1lcygkbmFtZSwgJGFyZ3MuLi4pO1xuICBhbmltYXRpb24tbmFtZTogdW5xdW90ZSgkbmFtZSk7XG59XG4iLCIvKlxuQGltcG9ydCB0aGlzIGZpbGUgZGlyZWN0bHkgaW50byB5b3VyIGV4aXN0aW5nIFNjc3MgZmlsZXMgdG8gdXNlIHRoZXNlIG1peGluc1xuKi9cbkBtaXhpbiBzcHJpdGUtYnNpZ3JhcGhpYygpIHtcblx0d2lkdGg6IDE4NnB4O1xuXHRoZWlnaHQ6IDkycHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMTBweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWNhbGlicmF0aW9uKCkge1xuXHR3aWR0aDogNjBweDtcblx0aGVpZ2h0OiA1NnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTIwNnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtY2FydGljb24oKSB7XG5cdHdpZHRoOiA0OXB4O1xuXHRoZWlnaHQ6IDQ1cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMjc2cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1jYXJ0aWNvbnNtYWxsKCkge1xuXHR3aWR0aDogMzRweDtcblx0aGVpZ2h0OiAzMnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTMzNXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtY2xlYXJhbmNlKCkge1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA1NXB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTM3OXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtY29ucmFkZm9vdGVyKCkge1xuXHR3aWR0aDogMjAwcHg7XG5cdGhlaWdodDogMTlweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC00MjlweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWVkdWNhdGlvbmxvZ28oKSB7XG5cdHdpZHRoOiAxMjlweDtcblx0aGVpZ2h0OiA0NXB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTYzOXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtZWR1Y2F0aW9ubG9nb3NtYWxsKCkge1xuXHR3aWR0aDogMTE2cHg7XG5cdGhlaWdodDogNDBweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC03NzhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWZhY2Vib29raWNvbigpIHtcblx0d2lkdGg6IDM2cHg7XG5cdGhlaWdodDogMzZweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC05MDRweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWljb25fZXVmbGFnKCkge1xuXHR3aWR0aDogMTA4cHg7XG5cdGhlaWdodDogNjNweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC05NTBweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWljb25fbW9kdWxlXzNkX3BkZmxyZygpIHtcblx0d2lkdGg6IDQwcHg7XG5cdGhlaWdodDogNDdweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xMDY4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1pY29uX21vZHVsZV90ZF9wZGZzbSgpIHtcblx0d2lkdGg6IDE0cHg7XG5cdGhlaWdodDogMTZweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xMTE4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1pY29uX21vZHVsZV90ZWNobmljYWwtc3BlY2lmaWNhdGlvbl9wZGZscmcoKSB7XG5cdHdpZHRoOiA0MHB4O1xuXHRoZWlnaHQ6IDQ3cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMTE0MnB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtaWNvbl91a2ZsYWcoKSB7XG5cdHdpZHRoOiAxMDhweDtcblx0aGVpZ2h0OiA2M3B4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTExOTJweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWljb25fdXNmbGFnKCkge1xuXHR3aWR0aDogMTA4cHg7XG5cdGhlaWdodDogNjNweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xMzEwcHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1pbnN0YWdyYW1pY29uKCkge1xuXHR3aWR0aDogMzZweDtcblx0aGVpZ2h0OiAzNnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTE0MjhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLWxpbmtlZGluaWNvbigpIHtcblx0d2lkdGg6IDM2cHg7XG5cdGhlaWdodDogMzZweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xNDc0cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1uZXcoKSB7XG5cdHdpZHRoOiA1NXB4O1xuXHRoZWlnaHQ6IDU1cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMTUyMHB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtcGF5bWVudGljb25zKCkge1xuXHR3aWR0aDogMjU5cHg7XG5cdGhlaWdodDogMzBweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xNTg1cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1wYXlwYWxsb2dvKCkge1xuXHR3aWR0aDogMTQ1cHg7XG5cdGhlaWdodDogNDJweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0xODU0cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS1yYXBpZGFjY291bnQoKSB7XG5cdHdpZHRoOiAxMzZweDtcblx0aGVpZ2h0OiAzMnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTIwMDlweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLXJhcGlkbG9nbygpIHtcblx0d2lkdGg6IDE0N3B4O1xuXHRoZWlnaHQ6IDM4cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0YmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy5yYXBpZG9ubGluZS5jb20vY3NzL3Nwcml0ZXMvNC43LjEvc3ByaXRlLnNwcml0ZS5wbmcnKSAtMjE1NXB4IC0xMHB4IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBzcHJpdGUtcmFwaWRsb2dvc21hbGwoKSB7XG5cdHdpZHRoOiAxMTZweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTIzMTJweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLXNwZWNpYWxvZmZlcigpIHtcblx0d2lkdGg6IDU1cHg7XG5cdGhlaWdodDogNTNweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0yNDM4cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS10d2l0dGVyaWNvbigpIHtcblx0d2lkdGg6IDM2cHg7XG5cdGhlaWdodDogMzZweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0yNTAzcHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS11bmlsb2dvKCkge1xuXHR3aWR0aDogMTI5cHg7XG5cdGhlaWdodDogNDVweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9jc3Mvc3ByaXRlcy80LjcuMS9zcHJpdGUuc3ByaXRlLnBuZycpIC0yNTQ5cHggLTEwcHggbm8tcmVwZWF0O1xufVxuQG1peGluIHNwcml0ZS11bmlsb2dvc21hbGwoKSB7XG5cdHdpZHRoOiAxMTZweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTI2ODhweCAtMTBweCBuby1yZXBlYXQ7XG59XG5AbWl4aW4gc3ByaXRlLXlvdXR1YmVpY29uKCkge1xuXHR3aWR0aDogMzZweDtcblx0aGVpZ2h0OiAzNnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMucmFwaWRvbmxpbmUuY29tL2Nzcy9zcHJpdGVzLzQuNy4xL3Nwcml0ZS5zcHJpdGUucG5nJykgLTI4MTRweCAtMTBweCBuby1yZXBlYXQ7XG59XG4iLCJAaW1wb3J0ICcuLi8uLi8uLi8uLi9zcHJpdGVzL3Nwcml0ZS5zcHJpdGUuc2Nzcyc7XG5cbi5ic2lHcmFwaGljIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtYnNpZ3JhcGhpYygpXG59XG5cbi5jYWxpYnJhdGlvbiB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWNhbGlicmF0aW9uKClcbn1cblxuLmNhcnRpY29uIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtY2FydGljb24oKVxufVxuXG4uY2FydEljb25TbWFsbCB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWNhcnRpY29uc21hbGwoKVxufVxuXG4uQ2xlYXJhbmNlIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtY2xlYXJhbmNlKClcbn1cblxuLmNvbnJhZEZvb3RlciB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWNvbnJhZGZvb3RlcigpXG59XG5cbi5lZHVjYXRpb25Mb2dvIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtZWR1Y2F0aW9ubG9nbygpXG59XG5cbi5lZHVjYXRpb25Mb2dvU21hbGwge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1lZHVjYXRpb25sb2dvc21hbGwoKVxufVxuXG4uZWR1Y2F0aW9uTG9nb1NtYWxsIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtZWR1Y2F0aW9ubG9nb3NtYWxsKClcbn1cblxuLmZhY2Vib29rSWNvbiB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWZhY2Vib29raWNvbigpXG59XG5cbi5pY29uX2V1ZmxhZyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWljb25fZXVmbGFnKClcbn1cblxuLmljb25fbW9kdWxlXzNEX3BkZmxyZyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWljb25fbW9kdWxlXzNkX3BkZmxyZygpXG59XG5cbi5pY29uX21vZHVsZV90ZF9wZGZzbSB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWljb25fbW9kdWxlX3RkX3BkZnNtKClcbn1cblxuLmljb25fbW9kdWxlX1RlY2huaWNhbC1TcGVjaWZpY2F0aW9uX3BkZmxyZyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWljb25fbW9kdWxlX3RlY2huaWNhbC1zcGVjaWZpY2F0aW9uX3BkZmxyZygpXG59XG5cbi5pY29uX3VrZmxhZyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWljb25fdWtmbGFnKClcbn1cblxuLmljb25fdXNmbGFnIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtaWNvbl91c2ZsYWcoKVxufVxuXG4uaW5zdGFncmFtSWNvbiB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWluc3RhZ3JhbWljb24oKVxufVxuXG4ubGlua2VkaW5JY29uIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtbGlua2VkaW5pY29uKClcbn1cblxuLk5ldyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLW5ldygpXG59XG5cbi5wYXltZW50SWNvbnMge1xuICAgIEBpbmNsdWRlIHNwcml0ZS1wYXltZW50aWNvbnMoKVxufVxuXG4ucGF5cGFsbG9nbyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXBheXBhbGxvZ28oKVxufVxuXG4ucmFwaWRhY2NvdW50IHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtcmFwaWRhY2NvdW50KClcbn1cblxuLnJhcGlkTG9nbyB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXJhcGlkbG9nbygpXG59XG5cbi5yYXBpZExvZ29TbWFsbCB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXJhcGlkbG9nb3NtYWxsKClcbn1cblxuLlNwZWNpYWxPZmZlciB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXNwZWNpYWxvZmZlcigpXG59XG5cbi50d2l0dGVySWNvbiB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXR3aXR0ZXJpY29uKClcbn1cblxuLnVuaUxvZ28ge1xuICAgIEBpbmNsdWRlIHNwcml0ZS11bmlsb2dvKClcbn1cblxuLnVuaUxvZ29TbWFsbCB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXVuaWxvZ29zbWFsbCgpXG59XG5cbi55b3V0dWJlSWNvbiB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLXlvdXR1YmVpY29uKClcbn1cbiIsIu+7v1xuQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0ge1xuXHQuZml4ZWRXaWR0aCB7XG5cdFx0bWluLWhlaWdodDo1MDBweDtcblx0fVxufVxuXG4uYnV0dG9uLmFjY2VudCwgLmJ1dHRvbi5saWdodC1ncmF5IHtcblx0Y29sb3I6JGJsYWNrO1xufVxuXG4vKmR1cGxpY2F0ZXMgb2YgUERGIGljb24qLyBcblxuLyouaWNvbl9tb2R1bGVfTWFudWFsX3BkZmxyZywgLmljb25fbW9kdWxlX1JFQUNILUNlcnRpZmljYXRlX3BkZmxyZywgLmljb25fbW9kdWxlX0hlYWx0aC1hbmQtU2FmZXR5X3BkZmxyZywgLmljb25fbW9kdWxlX0RvY3VtZW50LU9mLUNvbmZvcm1pdHlfcGRmbHJnIHtcblx0QGluY2x1ZGUgc3ByaXRlKCRpY29uLW1vZHVsZS10ZWNobmljYWwtc3BlY2lmaWNhdGlvbi1wZGZscmcpOyAgXG59Ki9cblxuLmljb25fcm9oc2V4ZW1wdCB7XG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiBncmVlbjtcblx0Y29sb3I6ICNmZmY7XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bGluZS1oZWlnaHQ6IDEuNGVtO1xuXHRib3JkZXItcmFkaXVzOiAzZW07XG5cdC1tb3otYm9yZGVyLXJhZGl1czogM2VtO1xuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDNlbTtcblx0bWFyZ2luLWxlZnQ6IDNweDtcblx0dGV4dC1hbGlnbjogY2VudGVyOyBcblx0bWluLXdpZHRoOiAxLjNlbTtcblx0bWluLWhlaWdodDogMS4zZW07XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuXG4ucmVhY2hhbGVydCB7XG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRiYWNrZ3JvdW5kOiAjMDAwMDgwO1xuXHRjb2xvcjogeWVsbG93O1xuXHRmb250LXNpemU6IDFlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGxpbmUtaGVpZ2h0OiAxLjJlbTtcblx0Ym9yZGVyLXJhZGl1czogM2VtO1xuXHQtbW96LWJvcmRlci1yYWRpdXM6IDNlbTtcblx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzZW07XG5cdG1hcmdpbi1sZWZ0OiAzcHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjsgXG5cdG1pbi13aWR0aDogMS4yZW07XG5cdG1pbi1oZWlnaHQ6IDEuMmVtO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmRpc2FibGVkQnV0dG9uIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIGJhY2tncm91bmQ6IGdyZXkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogZGFya2dyZXkgIWltcG9ydGFudDtcbn1cblxuLm5vLWphdmFzY3JpcHQge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGZpcmVicmljaztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBib3gtc2hhZG93OiAxcHggMCAzcHggIzAwMDtcbn1cblxuLm5vLWphdmFzY3JpcHQgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6ICNmZmY7XG59Iiwi77u/LypHcmV5IE92ZXJsYXkqL1xuXG4uYXBwX2dyZXlPdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDEwMDA0O1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zaG93T3ZlcmxheSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5MiwgMTkyLCAxOTIsIDAuNik7XG59XG5cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgICB6LWluZGV4Ojk5OTk5OyBcbn1cblxuLypGb3Igb3ZlciAxOCovIFxuLnN0YWNrLW91dGVyIHtcbiAgY29sb3I6cmVkO1xufVxuLmZhLXBsdXMxOCB7XG4gICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZmEtcGx1czE4OmJlZm9yZSB7XG4gICAgY29udGVudDogXCIxOCtcIjtcbiAgICBjb2xvcjp3aGl0ZTtcbn0iLCLvu78ucmV2ZWFsIHtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMCwwLDAsLjUpO1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICAgIHdpZHRoOiA2NjBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA5Mi44NTcxNHJlbTtcbiAgICB9XG59XG4ucG9wdXBUaXRsZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cblxuLnNpZGVQbGF5ZXIge1xuICAgIGRpc3BsYXk6bm9uZTtcbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfSB7XG4gICAgLnNpZGVQbGF5ZXIge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAgICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgIHotaW5kZXg6MTUwMDtcblxuICAgICAgICAuY29udHJvbEJhciB7XG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwLjI1cmVtIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudmlkZW9UaXRsZUJhciB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1cHggNXB4IDAgNXB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjk2KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICAgICAgICAgIGJvcmRlcjogcmVtLWNhbGMoNXB4KSBzb2xpZCByZ2JhKCRibGFjaywgMC45Nik7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpZGVQbGF5ZXIuZXhwYW5kZWQge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiA2NDBweDtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgei1pbmRleDogMTAwMTA7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfSB7XG4gICAgLnNpZGVQbGF5ZXIge1xuICAgICAgICB3aWR0aDogMTgwcHg7XG5cbiAgICAgICAgLnZpZGVvVGl0bGVCYXIge1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgICAgICAgICAgYm9yZGVyOiByZW0tY2FsYyg1cHgpIHNvbGlkIHJnYmEoJGJsYWNrLCAwLjk2KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCA2cHggMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4xOSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5FcnJvckRpc3BsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDJweDtcbiAgICB6LWluZGV4OiA5OTk5OTk5O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgcGFkZGluZzogM3B4O1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE2cHgpO1xuXG4gICAgLmNhbGxvdXQuc3VjY2VzcyB7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgICBib3JkZXItdG9wOjEwcHggc29saWQgIzhkYzU4ZDtcbiAgICB9XG5cbiAgICAuY2FsbG91dC5hbGVydCB7XG4gICAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgICBib3JkZXItdG9wOjEwcHggc29saWQgI2UyMWUxZTtcbiAgICB9XG5cbiAgICAuY2FsbG91dC5zZWNvbmRhcnkge1xuICAgICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgICAgYm9yZGVyLXRvcDoxMHB4IHNvbGlkICM3Njc2NzY7XG4gICAgfVxufSIsIu+7vy5ncmVlbi10ZXh0IHtcbiAgICBjb2xvcjojMDA4MDAwO1xufVxuXG4uYmx1ZS10ZXh0IHtcbiAgICBjb2xvcjojMTAzY2NhO1xufVxuXG4uYmlnLXJlZC10ZXh0IHtcbiAgICBjb2xvcjogUmVkO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLm9yYW5nZS10ZXh0LCAub3JhbmdlVGV4dCB7XG4gICAgY29sb3I6ICNmZmE1MDA7XG59XG5cbi5yZWQtdGV4dCwgLnJlZFRleHQge1xuICAgIGNvbG9yOiAjYjIyMjIyIWltcG9ydGFudDtcbn1cblxuLmdyYXktdGV4dCB7XG4gICAgY29sb3I6Izc5Nzk2QTtcbn1cblxuLmdyZXktdGV4dCB7XG4gICAgY29sb3I6ICM3OTc5NkE7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLnBhc3RlbC1ibHVlLXRleHQge1xuICAgIGNvbG9yOiAjOTJhY2ZmO1xufVxuXG4ucGFzdGVsLWdyZWVuLXRleHQge1xuICAgIGNvbG9yOiAjOGRmOTgxO1xufVxuXG4ucGFzdGVsLXJlZC10ZXh0IHtcbiAgICBjb2xvcjogI2ZmN2I3Yjtcbn1cblxuLnBhc3RlbC1vcmFuZ2UtdGV4dCB7XG4gICAgY29sb3I6ICNmZmNkNzI7XG59Iiwi77u/QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgdWwuYnJlYWRjcnVtYnMge1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYygzcHgpO1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgICAgIGZsb2F0Om5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDNweCk7XG4gICAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTVweCk7XG4gICAgICAgIH1cbiAgICAgICAgbGkuYnJlYWRjcnVtYlN0YWdlIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6JGxpZ2h0LWdyYXk7IFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5icmVhZGNydW1iRXhwYW5kIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpLmxhc3RCcmVhZGNydW1ie1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTpyZW0tY2FsYyg4cHgpO1xuICAgICAgICB9IFxuICAgIH1cbiAgICAuYnJlYWRjcnVtYkV4cGFuZExpbmsge1xuICAgICAgICB3aWR0aDo1MHB4O1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICBmbG9hdDpyaWdodDtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIGN1cnNvcjpwb2ludGVyO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7IFxuICAgICAgICB9XG4gICAgfVxufSAgICAgIiwi77u/LmJyZWFkY3J1bWJDb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMTBweCk7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMHB4KTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTRweCk7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgIH1cbiBcbn0iLCLvu79AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIGRvd24pfSB7XG4gICAgICAubW9iaWxlTWVudSAudmVydGljYWwubWVudSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIC8qbGk6bGFzdC1jaGlsZCBhIHtcbiAgICAgICAgICAgIGJvcmRlcjowcHg7XG4gICAgICAgIH0qL1xuICAgIH1cblxuICAgIC5tb2JpbGVNZW51IGgzIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGRkZGQ7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJhY2tncm91bmQ6JGxpZ2h0LWdyYXk7XG4gICAgfVxufVxuXG4ubW9iaWxlTWVudSAudmVydGljYWwubWVudSBhIHtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjpibGFjaztcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICB9XG59XG5cbi5tb2JpbGVNZW51IC5jb2x1bW4tYmxvY2sge1xuICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IFxuICAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMTAwcHgpO1xuICAgIH1cbn0iLCIvKkdyYXkgU2VjdGlvbiBIZWFkZXIqL1xuXG5oMi5zZWN0aW9uSGVhZGVyLCBoMS5zZWN0aW9uSGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDZweCk7XG59XG5cbmgyLnNlY3Rpb25IZWFkZXJQdXJjaGFzZVRpcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya29yYW5nZTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg2cHgpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogY2VudHJhbDtcbn1cblxuLnNtYWxsUHJvZEltYWdlIHtcbiAgICB3aWR0aDpyZW0tY2FsYyg3NXB4KTtcbiAgICBoZWlnaHQ6cmVtLWNhbGMoNzVweCk7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg1cHgpO1xufVxuXG4ucHJpY2VzLXN0cmlrZXRocm91Z2gge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTJweCk7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi5zbWFsbExhYmVsIHtcbiAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxM3B4KTtcbn0gIiwiLypJbmMgVkFUIENoZWNrYm94Ki9cbi5jaGVja2JveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uY2hlY2tib3ggLmN1c3RvbS1jaGVja2JveCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbWFyZ2luOiAwIDNweCAwIDA7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxNTgzY2M7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2hlY2tib3ggLmN1c3RvbS1jaGVja2JveCB7XG4gICAgYmFja2dyb3VuZDogIzE1ODNjYztcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxMnB4ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmNoZWNrYm94IC5pY29uLWNoZWNrIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE4MG1zIGVhc2U7XG59XG5cbi5pY29uLWNoZWNrOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICdcXDI3MTMnO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMTIuNjY2NjdweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jaGVja2JveCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIC5jdXN0b20tY2hlY2tib3gge1xuICAgIGJvcmRlci1jb2xvcjogIzIwOTVGMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAuY3VzdG9tLWNoZWNrYm94IC5pY29uLWNoZWNrIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4uY2hlY2tib3ggLmFjY2VudCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGFjY2VudDtcbn1cblxuLmNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgLmFjY2VudCB7XG4gICAgYmFja2dyb3VuZDogJGFjY2VudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYWNjZW50O1xufVxuXG4vKnNlYXJjaCBmaWVsZCBidXR0b24gZ3JvdXAgaW5wdXQqL1xuXG5pbnB1dC5zZWFyY2hJbnB1dCwgaW5wdXQuc2VhcmNoSW5wdXQ6Zm9jdXMge1xuICAgIGJvcmRlcjogMHB4O1xufVxuXG4vKnNjcm9sbCB0YWJsZSBsYXJnZSBicmVha3BvaW50IGZpeCovXG5cbi50YWJsZS1zY3JvbGwgdGFibGUge1xuICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICB9IFxufVxuXG5sYWJlbC5maWVsZEhlYWRpbmcsIGxhYmVsLnNtYWxsTGFiZWwge1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxMnB4KTtcbiAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgICYuaW5saW5lIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmU7XG4gICAgfVxuXG4gICAgJi5hbHQge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgfVxufVxuXG4uYnV0dG9uLmlubGluZSB7XG4gICAgbWFyZ2luLWJvdHRvbTowcHg7XG4gICAgbWFyZ2luLWxlZnQ6cmVtLWNhbGMoNXB4KTtcbiAgICBtYXJnaW4tcmlnaHQ6cmVtLWNhbGMoNXB4KTtcbn1cblxuLmJ1dHRvbiB7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbn0iLCIubWFpbkltZ0NvbnRhaW5lciB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkgeyBcbiAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgIH1cblxuICAgIC5iYWRnZU92ZXJsYXkge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgbGVmdDo1cHg7XG4gICAgICAgIHRvcDo1cHg7XG4gICAgICAgIHotaW5kZXg6NTsgXG4gICAgfVxuICAgIC5NYWdpYzM2MC1jb250YWluZXIge1xuICAgICAgICBib3JkZXI6bm9uZTsgXG4gICAgfVxufVxuXG4uTWFnaWNTY3JvbGwgLm1jcy1pdGVtIGltZyB7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgYm94LXNoYWRvdzpub25lOyAgXG59ICAiLCIuc3Rhck91dGVyIHtcbiAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgIHBhZGRpbmc6IDAuMzVyZW0gMDtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6JGRhcmstZ3JheTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6JGRhcmstZ3JheTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICB9XG4gICAgYS5yZXZpZXdTdGFycyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lOyBcbiAgICB9XG4gICAgLmZhLXN0YXIge1xuICAgICAgICAgICAgY29sb3I6ICNmYmQ5MjM7XG4gICAgICAgIH0gXG59ICIsIi5wcmljZVBlckl0ZW0ge1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgY29sb3I6JGRhcmstZ3JheTtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTRweCk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5sYXJnZVByaWNlVGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IC4yNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjQ1cmVtO1xufVxuXG4uZ2V0UXVvdGVMaW5rIHtcbiAgICBjb2xvcjpibGFjaztcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIG1hcmdpbi10b3A6MC42cmVtO1xuICAgIG1hcmdpbi1ib3R0b206MC42cmVtOyBcblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyZW07XG4gICAgfVxufVxuXG4uc2t1UHJvbW9BcHBsaWVkTGFiZWwge1xuICAgIGZvbnQtc2l6ZTogLjg1NzE0cmVtO1xuICAgIGNvbG9yOiAjNzk3OTZBO1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgZGlzcGxheTpibG9jazsgIFxufVxuXG4ucHJpY2VQYW5lbCB7XG4gICAgcGFkZGluZzowcHggN3B4IDVweCA3cHg7XG4gICAgYmFja2dyb3VuZDojZjdmNmY2O1xuICAgIGJvcmRlcjozcHggc29saWQgI2U4ZTVlNTtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC40cmVtO1xuICAgIH1cblxuICAgICNvcHRpb25zLXZhdCB7XG4gICAgICAgIHBhZGRpbmc6IC41ZW0gMCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG59ICBcblxuLnNtYWxsUHJpY2VUYWJsZSB7XG4gICAgLnByaWNlVGFibGUgdGFibGUgdGgsIC5wcmljZVRhYmxlIHRhYmxlIHRkIHsgXG4gICAgICAgIHBhZGRpbmc6IC40Mjg1N3JlbSAuMjcxNDNyZW0gLjU3MTQzcmVtO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICB9XG4gICAgLnByaWNlVGFibGUgdGFibGUgdGQsIC5wcmljZVRhYmxlIHRhYmxlIHRoIHtcbiAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDEzcHgpOyBcbiAgICAgICAgbGluZS1oZWlnaHQ6MS4xcmVtOyAgXG4gICAgfVxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNSk7XG4gICAgfVxufSIsIi5wcm9kdWN0VmFyaWF0aW9uIHtcbiAgICAvKmJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7Ki9cbiAgICBib3JkZXI6MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLypiYWNrZ3JvdW5kOiRsaWdodC1ncmF5OyovXG4gICAgYmFja2dyb3VuZDojZjdmNmY2O1xuICAgIHBhZGRpbmc6MTBweDtcblxuICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOm5vbmU7XG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYygzcHgpO1xuICAgIH1cbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOjBweDtcbiAgICAgICAgbWFyZ2luLXRvcDowcHg7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBtYXJnaW46IDVweCAwO1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNiNTdlN2U7XG4gICAgICAgICAgICBjdXJzb3I6ZGVmYXVsdDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6d2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiNlZWU7XG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICNiNTdlN2U7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4uYXBwX0F0dHJpYnV0ZVZhcmlhdGlvblByb2R1Y3RzIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6bm9uZTtcbn1cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgdWwgbGkge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgYm9yZGVyLWJvdHRvbTowLjVweCBkb3R0ZWQgbGlnaHRncmV5O1xuICAgIHBhZGRpbmc6MTBweDtcbn1cblxuLmFwcF9BdHRyaWJ1dGVWYXJpYXRpb25Qcm9kdWN0cyB1bCBsaTo6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6XCJcIjtcbiAgICAgICAgY2xlYXI6Ym90aDtcbiAgICAgICAgZGlzcGxheTp0YWJsZTtcbiAgICB9XG4uYXBwX0F0dHJpYnV0ZVZhcmlhdGlvblByb2R1Y3RzIHNwYW4ge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgcGFkZGluZzo1cHg7XG4gICAgbWFyZ2luOjVweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBsaWdodGdyZXk7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czo1cHg7XG59XG5cbi5hcHBfQXR0cmlidXRlVmFyaWF0aW9uUHJvZHVjdHMgc3Bhbi5zZWxlY3RlZCB7XG4gICAgYm9yZGVyOiAycHggc29saWQgaW5kaWFucmVkO1xufVxuXG4uYXBwX0F0dHJpYnV0ZVZhcmlhdGlvblByb2R1Y3RzIHNwYW4uZGlzYWJsZWQge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjpsaW5lLXRocm91Z2g7XG4gICAgY29sb3I6bGlnaHRncmF5OyAgICBcbn1cblxuIiwiLnByb2R1Y3RXaWRnZXQge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTpub25lO1xuICAgIGJvcmRlcjoxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgbWFyZ2luOmF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuXG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nOjVweCA1cHggMCA1cHg7XG4gICAgICAgIGNsZWFyOmJvdGg7XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOm5vbmU7XG4gICAgICAgIH0gXG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgY29sb3I6YmxhY2s7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDZweCk7XG4gICAgICAgIH1cbiAgICB9IFxufVxuXG4ud2lkZ2V0SGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTZweCk7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoOHB4IDVweCA5cHggNXB4KSAhaW1wb3J0YW50O1xufVxuXG5cbi53aWRnZXRQcm9kdWN0TGVmdCB7XG4gICAgZmxvYXQ6bGVmdDsgXG4gICAgd2lkdGg6NDUlO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGltZyB7IFxuICAgICAgICB3aWR0aDo2MCU7XG4gICAgfVxufVxuXG4ud2lkZ2V0UHJvZHVjdFJpZ2h0IHsgXG4gICAgZmxvYXQ6bGVmdDtcbiAgICB3aWR0aDo1MyU7XG59ICAiLCLvu78ucHJvZHVjdC10aWxlLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI1MHB4LCAxZnIpKTtcbiAgICBncmlkLWdhcDogMTBweDtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdztcbn1cblxuLnByb2R1Y3QtdGlsZSB7XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICBwYWRkaW5nOiAuNWVtO1xufVxuXG4ucHJvZHVjdC10aWxlLS1kZXRhaWxzIHtcbiAgICBoMyB7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn1cblxuLnByb2R1Y3QtdGlsZS0tY29udHJvbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBidXR0b24ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5wcm9kdWN0SXRlbSB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYyg1KTtcbiAgICBtaW4taGVpZ2h0OjIwMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7IFxuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIGNvbG9yOiRibGFjazsgXG4gICAgfVxufVxuXG4ub3RoZXJDb250cm9scyB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgbGVmdDozcHg7XG4gICAgYm90dG9tOjVweDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6M3B4O1xuICAgIH1cbiAgICBzcGFuLCBsYWJlbCwgYSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuLnF1aWNrVmlld0xpbmsge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgIHBhZGRpbmc6IDhweCA1cHg7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwwLDAsLjI1KTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjb2xvcjogJGJsYWNrOyAgXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6JGFjY2VudDsgXG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICB9XG59ICBcblxuLnNtYWxsSW1nQ29udGFpbmVyIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlOyBcbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6MTQwcHg7XG4gICAgfVxufVxuXG5cbi5zbWFsbEJhZGdlT3ZlcmxheSB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7IFxuICAgIHJpZ2h0OjVweDtcbiAgICBib3R0b206NXB4OyBcbn1cblxuLnNtYWxsU3RvY2tNZXNzYWdlIHtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTRweCk7IFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDE2KTtcbiAgICB9IFxufVxuXG5cbi5xdWlja1ZpZXdQb3B1cENvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6NzUwcHg7IFxuICAgIG92ZXJmbG93LXk6YXV0bztcbn0gIiwi77u/LmF0dHJpYnV0ZUZpbHRlcnMge1xyXG5cdGxpc3Qtc3R5bGUtdHlwZTpub25lO1xyXG5cdGJvcmRlcjoxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcblx0bWFyZ2luOmF1dG87XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgei1pbmRleDogMTAwMDY7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHJcblx0bGkge1xyXG5cdFx0cGFkZGluZzo1cHggNXB4IDAgNXB4O1xyXG5cdFx0Y2xlYXI6Ym90aDtcclxuXHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodC1ncmF5O1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgICAgICBwYWRkaW5nOjEwcHggNXB4IDAgMTBweDtcclxuICAgICAgICB9XHJcblx0XHQmOmxhc3QtY2hpbGQge1xyXG5cdFx0XHRib3JkZXItYm90dG9tOm5vbmU7XHJcblx0XHR9IFxyXG5cclxuXHRcdGEge1xyXG5cdFx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0XHRjb2xvcjpibGFjaztcclxuXHRcdFx0d2lkdGg6IDk1JTtcclxuXHRcdFx0b3ZlcmZsb3c6IGF1dG87XHJcblx0XHRcdHBhZGRpbmc6IDVweCAwIDVweCAxMHB4O1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdH1cclxuICAgICAgICAuYXR0cmlidXRlTmFtZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblx0XHQuYXR0cmlidXRlTGlzdEhvbGRlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDpyZW0tY2FsYygyODBweCk7XHJcblx0XHRcdCAgICB0b3A6IC01MCU7XHJcblx0XHRcdCAgICBsZWZ0OiAxMDAlO1xyXG5cdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHQgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuXHRcdFx0ICAgIGJveC1zaGFkb3c6IDJweCAzcHggMjJweCAtNXB4IHJnYmEoMCwwLDAsLjU4KTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDIwMDAwMDAwMDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMHB4KTtcclxuICAgICAgICAgICAgfVxyXG5cdFx0XHRpIHtcclxuICAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XHJcbiAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdCAgICB0b3A6IDdweDtcclxuXHRcdFx0XHQgICAgcmlnaHQ6IDdweDtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cdFx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdFx0Y29sb3I6IGZpcmVicmljaztcclxuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuICAgICAgICAgICAgLmF0dHJpYnV0ZUxpc3Qge1xyXG4gICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDpyZW0tY2FsYyg0MDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblx0XHR9XHJcblx0fSBcclxufVxyXG5cclxubGkuc2VhcmNoX2F0dHJpYnV0ZXNfcmVkdW5kYW50X3NlY3Rpb24ge1xyXG4gICAgYSB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgIGNvbG9yOiRsaWdodC1ncmF5O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoZmlsdGVyVG9wIHtcclxuXHRwYWRkaW5nOiByZW0tY2FsYygwcHggMCA4cHggMCk7XHJcblx0c3BhbiB7XHJcblx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHR9XHJcblx0ZGl2IHtcclxuXHRcdHdpZHRoOiA0MyU7XHJcblx0XHRtYXJnaW46IDIlO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdH1cclxuXHRzZWxlY3Qge1xyXG5cdFx0d2lkdGg6IDg2JTtcclxuXHRcdG1hcmdpbjogMiU7XHJcblx0XHRwYWRkaW5nOiA0cHg7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG5cdH1cclxufVxyXG5cclxuLnNlYXJjaGZpbHRlck1pZGRsZSB7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0ICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoZmlsdGVyRm9vdGVyIHNwYW4ge1xyXG5cdGxpbmUtaGVpZ2h0OiA0NHB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzogMHB4O1xyXG59XHJcblxyXG4uc2VhcmNoZmlsdGVyRm9vdGVyIGJ1dHRvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuXHRmbG9hdDogcmlnaHQ7XHJcbn1cclxuXHJcblxyXG5cclxuLmF0dHJpYnV0ZUZpbHRlcnNIZWFkZXIge1xyXG5cdGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG5cdGNvbG9yOiRibGFjaztcclxuXHRmb250LXdlaWdodDpib2xkO1xyXG5cdGZvbnQtc2l6ZTpyZW0tY2FsYygxNnB4KTtcclxuXHR0ZXh0LWFsaWduOmNlbnRlcjtcclxuXHRwYWRkaW5nOiByZW0tY2FsYyg4cHggNXB4IDlweCA1cHgpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5hcHBsaWVkRmlsdGVycyB7XHJcblx0b3ZlcmZsb3cteTphdXRvO1xyXG5cdG1heC1oZWlnaHQ6MzAwcHg7XHJcblx0Ym94LXNpemluZzpib3JkZXItYm94O1xyXG59XHJcblx0XHJcbi5maWx0ZXJTZWN0aW9uIHtcclxuXHRwYWRkaW5nOjVweDtcclxuXHRib3gtc2l6aW5nOmJvcmRlci1ib3g7XHJcblx0b3ZlcmZsb3c6aGlkZGVuO1xyXG59XHJcbi5maWx0ZXJTZWN0aW9uSGVhZGVyIHtcclxuXHRib3JkZXItYm90dG9tOjFweCBzb2xpZCAjY2NjO1xyXG5cdG92ZXJmbG93OmhpZGRlbjtcclxuXHRsaW5lLWhlaWdodDoyMHB4O1xyXG5cdG1hcmdpbi10b3A6MnB4O1xyXG59XHJcblx0XHJcbi5maWx0ZXJTZWN0aW9uVGl0bGUge1xyXG5cdGNvbG9yOiMwMDA7XHJcblx0Zm9udC13ZWlnaHQ6Ym9sZDtcclxuXHRmbG9hdDpsZWZ0O1xyXG5cdG1hcmdpbjozcHg7XHJcbn1cclxuXHRcclxuLnJlbW92ZUZpbHRlclNlY3Rpb24ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogIzMzN2FiNztcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0bGluZS1oZWlnaHQ6MTVweDtcclxuXHRmbG9hdDogcmlnaHQ7XHJcblx0bWFyZ2luOjNweDtcclxufVxyXHJcci5zZWFyY2hfYXR0cmlidXRlc19zZWxlY3RlZF9zZWN0aW9uIGEge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLnNlYXJjaFRhZyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY2VudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRhY2NlbnQ7XHJcbiAgICBtYXgtd2lkdGg6IDE3NnB4O1xyXG4gICAgbWFyZ2luOiA0cHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEOTUzNEY7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2Q0M2YzYTtcclxuICAgIH1cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDhweDtcclxuICAgIH1cclxuXHJcbiAgICAucmVtb3ZlVGFnIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4xNSk7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYXR0cmlidXRlRmlsdGVycyAuY2hlY2tib3gge1xyXG4gICAgY3Vyc29yOnBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcclxuICAgIHBhZGRpbmc6cmVtLWNhbGMoOHB4IDApO1xyXG59XHJcblxyXG4vKlJhbmdlIFNsaWRlciovXHJcblxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlciB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1hcmdpbjogNi44NXB4IDA7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Zm9jdXMge1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDQuM3B4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEzLCAxMywgMTMsIDApO1xyXG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XHJcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xyXG4gIGJvcmRlcjogMC4ycHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMTAzLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMjksIDAsIDAsIDApO1xyXG4gIGJvcmRlcjogMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgaGVpZ2h0OiAxOHB4O1xyXG4gIHdpZHRoOiAxMnB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICBiYWNrZ3JvdW5kOiAjZjlhNTE5O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgbWFyZ2luLXRvcDogLTcuMDVweDtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xyXG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi1tb3otcmFuZ2UtdHJhY2sge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogNC4zcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMCwgMCwgMCwgMCksIDBweCAwcHggMHB4IHJnYmEoMTMsIDEzLCAxMywgMCk7XHJcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcclxuICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgYm9yZGVyOiAwLjJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotbW96LXJhbmdlLXRodW1iIHtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDEwMywgMCwgMCwgMCksIDBweCAwcHggMHB4IHJnYmEoMTI5LCAwLCAwLCAwKTtcclxuICBib3JkZXI6IDBweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gIGhlaWdodDogMThweDtcclxuICB3aWR0aDogMTJweDtcclxuICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgYmFja2dyb3VuZDogI2Y5YTUxOTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi1tcy10cmFjayB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiA0LjNweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV0ucmFuZ2VTbGlkZXI6Oi1tcy1maWxsLWxvd2VyIHtcclxuICBiYWNrZ3JvdW5kOiAjZThlNWU1O1xyXG4gIGJvcmRlcjogMC4ycHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcclxuICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggcmdiYSgwLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMywgMTMsIDEzLCAwKTtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjo6LW1zLWZpbGwtdXBwZXIge1xyXG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XHJcbiAgYm9yZGVyOiAwLjJweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCByZ2JhKDAsIDAsIDAsIDApLCAwcHggMHB4IDBweCByZ2JhKDEzLCAxMywgMTMsIDApO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOjotbXMtdGh1bWIge1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IHJnYmEoMTAzLCAwLCAwLCAwKSwgMHB4IDBweCAwcHggcmdiYSgxMjksIDAsIDAsIDApO1xyXG4gIGJvcmRlcjogMHB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgaGVpZ2h0OiAxOHB4O1xyXG4gIHdpZHRoOiAxMnB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDBweDtcclxuICBiYWNrZ3JvdW5kOiAjZjlhNTE5O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBoZWlnaHQ6IDQuM3B4O1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdLnJhbmdlU2xpZGVyOmZvY3VzOjotbXMtZmlsbC1sb3dlciB7XHJcbiAgYmFja2dyb3VuZDogI2U4ZTVlNTtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXS5yYW5nZVNsaWRlcjpmb2N1czo6LW1zLWZpbGwtdXBwZXIge1xyXG4gIGJhY2tncm91bmQ6ICNlOGU1ZTU7XHJcbn1cclxuIiwi77u/LnBhZ2luYXRpb25CYXIge1xuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTVweCk7XG4gICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYyg1cHgpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cbn1cblxuLnNlYXJjaFJlc3VsdHNDb3VudCB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg4KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cbn1cblxuXG4uUHJvZHVjdHNQYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOnJlbS1jYWxjKDEzKTtcbiAgICBtYXJnaW4tcmlnaHQ6cmVtLWNhbGMoNik7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgfVxuICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZsb2F0OnJpZ2h0O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDUgOSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OnJlbS1jYWxjKDQpO1xuICAgICAgICBjb2xvcjogIzRmNGY0ZjtcbiAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgYmFja2dyb3VuZDojZDZkM2QzO1xuICAgICAgICAmLmN1cnJlbnRQYWdlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRvZmYtYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICYucGFnaW5nIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I2FiYTZhNjtcbiAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JG9mZi1ibGFjaztcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59Iiwi77u/LnRpZXJXcmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOnJlbS1jYWxjKDEwKTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbn1cblxuLnRpZXJJbWFnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgLnRpZXJJbWFnZVRleHQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50aWVySW1hZ2Uuc2VhcmNoVGllclN0cnVjdHVyZVRpZXJJdGVtLCAudGllckltYWdlLnBvcHVsYXJDYXRlZ29yeUl0ZW0ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpZXJJbWFnZVRleHQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VhcmNoVGllclN0cnVjdHVyZVRpZXJJdGVtOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH0gIFxufVxuXG4uc2VhcmNoVGllckJsb2NrTGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAuNXJlbTtcblxuICAgIC8qQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTEwKTtcbiAgICB9Ki9cblxuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg4KTtcblxuICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAwKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgfVxuXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VhcmNoQnJlYWRjcnVtYiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICB9XG5cbmEuc2VhcmNoQnJlYWRjcnVtYiB7XG4gICAgd2hpdGUtc3BhY2U6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGJsYWNrO1xufVxuXG4jc3VnZ2VzdGVkQnJlYWRjcnVtYiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uYWNjb3JkaW9uQSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IC40cmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkO1xufVxuXG4ucGFuZWxBIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb2x1bW4uY29sdW1uLWJsb2NrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5hY2NvcmRpb25BIHNwYW46YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgY29sb3I6ICNhYWE7XG59XG5cbi5hY3RpdmUgc3BhbjphZnRlciB7XG4gICAgY29udGVudDogXCJcXGYxMDZcIjtcbn1cblxuLnRvZ2dsZUNhdGVnb3J5e1xuICAgIGRpc3BsYXk6IG5vbmU7XG59Iiwi77u/LmltYWdlc1RhYmxlV3JhcHBlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNC40LCAwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDowcHggIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5hdHRyaWJ1dGVzVGFibGVXcmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikgeyBcbiAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgfVxuICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IFxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig3LjYsMCk7XG4gICAgIH1cbn1cblxuXG4uY29tcGFyZVF1aWNrVmlldyB7XG4gICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6M3B4O1xuICAgIH1cbiAgICBzcGFuLCBsYWJlbCwgYSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuLnNlYXJjaFRhYmxlQnJhbmRMb2dvIHtcbiAgICBtYXgtd2lkdGg6IDY1cHg7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbi5hdHRyaWJ1dGVzVGFibGVIZWFkZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDEyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6cmVtLWNhbGMoMTQpO1xuICAgIH1cbn1cblxuLnNlYXJjaFJlc3VsdHNSb3cgaDMge1xuICAgIGNvbG9yOiRibGFjaztcbn1cblxuI3QxIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1pbi13aWR0aDphdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAuY29tcGFyZVF1aWNrVmlldyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTotNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlYXJjaFJlc3VsdHNQcm9kdWN0RGV0YWlscyB7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI3QyIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICB0Ym9keSB0ZCB7XG4gICAgICAgIGJvcmRlcjoxcHggc29saWQgI2YxZjFmMTtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgfVxufVxuXG4uZmxvYXRUaGVhZC10YWJsZSB0aGVhZCB0aCB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG59XG5cbi5zZWFyY2hUYWJsZVByb2R1Y3RJbWFnZUNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG59Iiwi77u/LmJhc2tldEl0ZW1zT3V0ZXIge1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoNSk7XG59XG5cbmxhYmVsLmJhc2tldEhlYWRpbmcge1xuICAgIGNvbG9yOiAjNzk3OTZBO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5iYXNrZXRJdGVtIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUpO1xuXG4gICAgaDMge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICBcbiAgICAudXBkYXRlSXRlbSB7XG4gICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgbGFiZWwubWlkZGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5pbnZhbGlkIHtcbiAgICAgICAgLyp0ZXh0LWFsaWduOiBjZW50ZXI7Ki9cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZTRlMTtcbiAgICB9XG5cbiAgICAudG90YWxQcmljZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbn1cblxuLmJhc2tldEl0ZW1SZW1vdmUge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyIG9mIDEyKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDAuNSBvZiAxMik7XG4gICAgfVxufVxuXG4uYmFza2V0SXRlbUltZyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIgb2YgMTIpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMC43IG9mIDEyKTtcbiAgICB9XG59XG5cbi5iYXNrZXRJdGVtRGVzYyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIgb2YgMTIpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMy45IG9mIDEyKTtcbiAgICB9XG59XG5cbi5iYXNrZXRJdGVtUXR5IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMiBvZiAxMik7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyLjUgb2YgMTIpO1xuICAgIH1cbn1cblxuLmJhc2tldEl0ZW1TdGF0dXMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyIG9mIDEyKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIuNCBvZiAxMik7XG4gICAgfVxufSIsIu+7vy5hZGRyZXNzZXNPcHRpb24ge1xuICAgIHVsIHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMTUpO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoOSA0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIC5zdWIge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRncmV5O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYTo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRibGFjayB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cbi5hZGRkcmVzc0Jsb2NrIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg1IDgpO1xuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICAgIH1cbn1cbiIsIu+7vy5ub3RpZmljYXRpb25zUGFuZWwge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiA5OTk5OTk5OTk5OTk5O1xuICAgIGJveC1zaGFkb3c6IDAgM3B4IDZweCAwIGhzbGEoMCwgMCUsIDAlLCAwLjIpO1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG5cbiAgICAmLm9wZW4ge1xuICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgIGJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICAubm90aWZpY2F0aW9uUGFuZWxDb3VudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGOTVBNjE7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAubm90aWZpY2F0aW9uTGlzdCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNDksNDksNDksIDAuOSk7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG5cbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0Y5NUE2MTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNDksNDksNDksIDAuOSk7XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb2x1bW5zIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ub3BlbkxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTEwMCU7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogI2E5YThhNDtcbiAgICB0cmFuc2l0aW9uOiAwLjRzO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBoMyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxNSk7XG4gICAgfVxufVxuXG4ubm90aWZpY2F0aW9uSXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpob3ZlciAub3BlbkxhYmVsIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMC40cztcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICB9XG59XG5cbi5ub3RpZmljYXRpb25QYW5lbENvdW50OmhvdmVyIC5ib3VuY2VEb3duIHtcbiAgICAtbW96LWFuaW1hdGlvbjogYm91bmNlRG93biAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGJvdW5jZURvd24gMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbjogYm91bmNlRG93biAycyBpbmZpbml0ZSBhbHRlcm5hdGUgZWFzZS1pbi1vdXQ7XG59XG5cbi5ub3RpZmljYXRpb25QYW5lbENvdW50OmhvdmVyIC5ib3VuY2VVcCB7XG4gICAgLW1vei1hbmltYXRpb246IGJvdW5jZVVwIDJzIGluZmluaXRlIGFsdGVybmF0ZSBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYm91bmNlVXAgMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbjogYm91bmNlVXAgMnMgaW5maW5pdGUgYWx0ZXJuYXRlIGVhc2UtaW4tb3V0O1xufVxuXG4ubm90aWZpY2F0aW9uUGFuZWxDb3VudCAuZmEtYW5nbGUtZG93biB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTE1cHg7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyM3B4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubm90aWZpY2F0aW9uUGFuZWxDb3VudCAuZmEtYW5nbGUtdXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMjNweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuQC1tb3ota2V5ZnJhbWVzIGJvdW5jZURvd24ge1xuICAgIDAlLCAyMCUsIDUwJSwgODAlLCAxMDAlIHtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIH1cblxuICAgIDYwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlRG93biB7XG4gICAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlRG93biB7XG4gICAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KTtcbiAgICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBib3VuY2VVcCB7XG4gICAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cblxuICAgIDQwJSB7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICB9XG5cbiAgICA2MCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCk7XG4gICAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlVXAge1xuICAgIDAlLCAyMCUsIDUwJSwgODAlLCAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VVcCB7XG4gICAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICA0MCUge1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuXG4gICAgNjAlIHtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMnB4KTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpO1xuICAgIH1cbn1cblxuLypNb3ZlIHRvIG1lc3NhZ2VzKi9cblxuLm5vdGlmaWNhdGlvbkl0ZW1Sb3cge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg5KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoOSk7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg4KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VDRUZGMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSg0OSw0OSw0OSwgMC4wMyk7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAycHggMDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMnB4IDA7XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAycHggMDtcbiAgICB9XG5cbiAgICAudW5yZWFkTm90aWZpY2F0aW9uIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjRjk1QTYxO1xuICAgIH1cbn1cblxuLm1lc3NhZ2VCb2R5Q29sIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICB9XG5cbiAgICAuY2xvc2VCYXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZiZmJmYjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgIC5jbG9zZS1idXR0b24ge1xuICAgICAgICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICAgIHRvcDogMC4yNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5vV2lkdGgge1xuICAgIHdpZHRoOiAwJTtcbiAgICAvL3NvbWUgaGFjayB0byBtYWtlIGl0IG5vdCBwdXNoIG91dCB0aGUgcGFnZS4uLmV2ZW4gdGhvdWdoIGl0IGhhcyBubyB3aWR0aFxuICAgIGRpc3BsYXk6IGlubGluZTtcbn1cbi5ub3RWaXNpYmxlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IDAuNHM7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG5oMi51bnJlYWRDb3VudCB7XG4gICAgY29sb3I6ICNGOTVBNjE7XG59XG5cbi5tb3JlSW5mbyB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDoyNXB4O1xufSIsIu+7vy5yZWNlbnRPcmRlcnMge1xuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgID4gLnJvdyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNik7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDokbGlnaHQtZ3JheTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiNzbGlkZXItY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2xpZGVyLWltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5zbGlkZXItbmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0MCU7XG4gICAgY29sb3I6ICNmZmZmZmZjYztcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IG5vbmU7XG59Iiwi77u/XG4uc2l0ZVR5cGVQb3BVcCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2l0ZVR5cGVQb3BVcCBoMiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIGNvbG9yOiAjNGY0ZjRmO1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG59XG5cbi5zaXRlVHlwZVBvcFVwIGEsIC5zaXRlVHlwZVBvcFVwIHAge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICBjb2xvcjpibGFjaztcbn1cblxuLnNpdGVUeXBlUG9wVXAgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAjMDYzYzdjO1xufVxuXG4uc2l0ZVR5cGVQb3BVcCB1bCB7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xufVxuXG4uY29va2llTWVzc2FnZSBwIHtcbiAgICBjb2xvcjogIzNhMzYzNjtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbn1cbiIsIu+7vy5wb3AtYm94LWhvbGQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG5cdG9wYWNpdHk6IDE7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0cmlnaHQ6IDIycHg7XG5cdHRvcDogMjJweDtcblx0ei1pbmRleDogOTk5OTk5OTk5O1xuXHRwYWRkaW5nOiAxNXB4O1xuXHR3aWR0aDogMjcwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcblx0Ym94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6YmxhY2s7XG59XG5cbi5wb3AtYm94LWhvbGQgaDIge1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctdG9wOjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuXG59XG5cbi5wb3AtYm94LWhvbGQgc3BhbiwgLnBvcC1ib3gtaG9sZCBhLCAucG9wLWJveC1ob2xkIHAge1xuICAgIGNvbG9yOmJsYWNrICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJ0LWRldGFpbCB7XG5cdG1hcmdpbi10b3A6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbn1cblxuLmNhcnQtZGV0YWlsIGEge1xuICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcHggIWltcG9ydGFudDtcbn1cblxuXG4ucG9wLWJveC1ob2xkIC5idXR0b24uZ3JlZW4sIC5wb3AtYm94LWhvbGQgLmJ1dHRvbi5ncmVlbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDojMkY5RjQ2O1xuICAgIGNvbG9yOndoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5jYXJ0LXByaWNlIHtcbmZvbnQtc2l6ZToxOHB4O1xufVxuXG4ucmVkLXRleHQsIC5yZWRUZXh0IHtcbiAgICBjb2xvcjogI2IyMjIyMiAhaW1wb3J0YW50O1xufSIsIu+7vy5jdXJyZW5jeUZsYWdzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jdXJyZW5jeUZsYWdzIGJ1dHRvbiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGN1cnNvcjpwb2ludGVyO1xufSIsIlxuLmNvb2tpZS1wb2xpY3ktd3JhcCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxMDAwOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG5cblxuXG5cblxuLmNvb2tpZS1wb2xpY3kge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHotaW5kZXg6IDk5OTk5O1xuICAgIHdpZHRoOiA5MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiAyZW07XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCAwIHJnYmEoMCwwLDAsLjQpO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcblxuICAgIFtjbGFzc149XCJjb29raWUtcG9saWN5LVwiXSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFlbTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDogOTIwcHg7XG4gICAgfVxuXG4gICAgLmNvb2tpZS1wb2xpY3ktLXRleHQge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBjb2xvcjogZGFya2VuKCNGOUE1MTksIDUwJSk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb29raWUtcG9saWN5LS1idG5zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgfVxuXG5cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbjogLjVlbSAuNWVtIDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDFlbSAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uLW91dGxpbmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNkM2QzZDM7XG4gICAgICAgIH1cbiAgICB9XG59IiwiXG4vKlZlcnRpY2FsIE1lbnUgVHJpZ2dlciovXG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIGNvbG9yOiAjZmVmZWZlO1xufVxuXG5hLnZlcnRpY2FsTWVudS10cmlnZ2VyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OnJlbS1jYWxjKDM2cHgpO1xufVxuXG5hLnZlcnRpY2FsTWVudS10cmlnZ2VyLCBhLnZlcnRpY2FsTWVudS10cmlnZ2VyOmZvY3VzLCBhLnZlcnRpY2FsTWVudS10cmlnZ2VyOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyOjpiZWZvcmUsXG4udmVydGljYWxNZW51LXRyaWdnZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICB3aWR0aDogOXB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4zcywgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcztcbiAgICAtbW96LXRyYW5zaXRpb246IHdpZHRoIDAuM3MsIC1tb3otdHJhbnNmb3JtIDAuM3M7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC4zcywgdHJhbnNmb3JtIDAuM3M7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjo6YmVmb3JlIHtcbiAgICByaWdodDogMjJweDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlcjo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxN3B4O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlci5kcm9wZG93bi1pcy1hY3RpdmU6OmJlZm9yZSxcbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlci5kcm9wZG93bi1pcy1hY3RpdmU6OmFmdGVyIHtcbiAgICB3aWR0aDogMTRweDtcbn1cblxuLnZlcnRpY2FsTWVudS10cmlnZ2VyLmRyb3Bkb3duLWlzLWFjdGl2ZTo6YmVmb3JlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlKC00NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXIuZHJvcGRvd24taXMtYWN0aXZlOjphZnRlciB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi52ZXJ0aWNhbE1lbnUtdHJpZ2dlci5kcm9wZG93bi1pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gICAgY29sb3I6JGJsYWNrO1xufVxuXG4udmVydGljYWxNZW51LXRyaWdnZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDM2cHggMCAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmYtYmxhY2s7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHotaW5kZXg6IDIwMDAwO1xufSBcblxuXG4uZGlzcGxheUJsb2NrIHtcbiAgICBkaXNwbGF5OmJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5UaWVyTWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn0gXG5cbi5UaWVyTWVudS5kcm9wZG93bi1pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiA5OTk5OTk5O1xufVxuXG4udG9wLWJhciwgLnRvcC1iYXIgdWwge1xuICAgIGJhY2tncm91bmQ6bm9uZTtcbn1cblxuLnRvcC1iYXIge1xuICAgIHBhZGRpbmc6IC4wNXJlbTtcbn1cblxuLnRpdGxlLWJhciB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBmbG9hdDpub25lO1xuICAgIHBhZGRpbmc6IDAuMXJlbSAwLjZyZW07XG4gICAgYmFja2dyb3VuZDpub25lO1xufVxuXG4udGl0bGUtYmFyIC5tZW51LWljb24ge1xuICAgIGJvdHRvbTogcmVtLWNhbGMoLTVweCk7XG59XG5cbi5tYWluTmF2IC5pcy1kcmlsbGRvd24ge1xuICAgIG1heC13aWR0aDoxMjAwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMHB4KTtcbiAgICBkaXNwbGF5Om5vbmU7XG59XG5cbi5zaG93LWRyaWxsZG93biAuaXMtZHJpbGxkb3duIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206MTVweDtcbn1cblxuXG4ubWFpbk5hdiAuZHJpbGxkb3duIGEge1xuICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZGFyay1ncmF5O1xufVxuXG4uVGllck1lbnUgbGkudGllckhlYWRlciB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbn1cblxuXG4ubWFpbk5hdiAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQ+YTo6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHdoaXRlO1xufVxuXG4ubWFpbk5hdiAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgYmFja2dyb3VuZDokb2ZmLWJsYWNrO1xuICAgIG1pbi1oZWlnaHQ6MTAwJTtcbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIGRvd24pfSB7XG5cbiAgICAuVGllck1lbnUtd3JhcHBlci5leHBhbmRlZCAubWVudSBsaSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuXG4gICAgLlRpZXJNZW51LXdyYXBwZXIgLmRyaWxsZG93biAuanMtZHJpbGxkb3duLWJhY2s+YTo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkd2hpdGUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLmhpZGUtb24tY2F0LW9wZW4ge1xuICAgICAgICBkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cblxuICAgIC5tYWluTmF2IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgIH1cblxuICAgIC5tYWluTmF2IC50b3AtYmFyLWxlZnQge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICB9XG5cblxuICAgIC5UaWVyTWVudS13cmFwcGVyLmV4cGFuZGVkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDokb2ZmLWJsYWNrO1xuICAgIH1cblxuICAgIC5oZWFkZXJXcmFwcGVyIC5UaWVyTWVudSBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgfVxuXG4gICAgLnRpZXJIZWFkZXIge1xuICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgIH1cblxuICAgIC50aWVyVGhyZWVNYXJnaW4ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDI1cHgpO1xuICAgIH1cblxufVxuQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0ge1xuXG4gICAgLlRpZXJNZW51IHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfSBcblxuICAgIC5uZWFyQm90dG9tID4gdWwge1xuICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAucmVsYXRpdmUge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuVGllck1lbnUuZHJvcGRvd24taXMtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgICB9XG5cblxuICAgIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51Lm5lc3RlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwwLDAsLjEpO1xuICAgIH1cblxuICAgIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51IGEge1xuICAgICAgICBjb2xvcjokYmxhY2sgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5uby1qcyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIC50b3AtYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIC50aXRsZS1iYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLypUaWVyIE1lbnUgQ29udGVudCovXG5cbkBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9IHtcbiAgICAudGl0bGUtYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1haW5OYXYgLmlzLWRyaWxsZG93biB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG5cbiAgICAuaGlkZS1vbi1jYXQtb3BlbiB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5UaWVyTWVudSB7XG4gICAgICAgIG1pbi13aWR0aDozMjBweDtcbiAgICB9XG5cbiAgICAuVGllck1lbnUgbGkudGllckhlYWRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMHB4KTtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNXB4IDEwcHgpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgICB9XG5cbiAgICAuVGllck1lbnUgPiBsaSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWJlYmViO1xuICAgIH1cblxuICAgIC5UaWVyTWVudSA+IGxpID4gYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMHB4KTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDVweCkgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206cmVtLWNhbGMoNXB4KSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTJweCk7XG4gICAgfVxuXG4gICAgLlRpZXJNZW51LmRyb3Bkb3duLm1lbnUudmVydGljYWw+bGkub3BlbnMtcmlnaHQ+YTo6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRkYXJrLWdyYXk7XG4gICAgfVxuXG4gICAgLlRpZXJNZW51LmRyb3Bkb3duLm1lbnUgLmlzLWFjdGl2ZSA+IGEgIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6c29saWQgM3B4O1xuICAgICAgICBib3JkZXItY29sb3I6JGJsYWNrO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MC44cmVtO1xuICAgIH1cblxuICAgIC5UaWVyTWVudS5kcm9wZG93bi5tZW51LnZlcnRpY2FsPmxpLm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgd2lkdGg6NTE1cHg7XG4gICAgICAgIHBhZGRpbmc6NXB4O1xuICAgIH1cblxuICAgIC5tYWluTmF2IC52ZXJ0aWNhbC5tZW51Lm5lc3RlZCBkaXYgYSB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBpbmhlcml0O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygwcHgpO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEycHgpO1xuICAgICAgICAmLnRpZXJUaHJlZU1hcmdpbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoOHB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAudGllck9uZUhlYWRlciB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5oZWFkZXJXcmFwcGVyIC5UaWVyTWVudSBsYWJlbCB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICB9XG5cbiAgICAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgZGl2IGEudGllckhlYWRlciwgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUubmVzdGVkIGRpdiBsYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMHB4KTtcbiAgICB9XG5cbiAgICAudGllckRvY0NvdW50IHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoOXB4KTtcbiAgICB9XG4gICAgLm1haW5OYXYgLnZlcnRpY2FsLm1lbnUubmVzdGVkIGxpIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG5cbiAgICAubWFpbk5hdiAudmVydGljYWwubWVudS5uZXN0ZWQgZGl2IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAyNDVweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICB9XG59IiwiLmZvb3RlckNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi1ibGFjaztcbn1cblxuLmZvb3RlckJvdHRvbSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC5mb290ZXItY29sIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXJDb250YWluZXIgYSwgLmZvb3RlckNvbnRhaW5lciBwLCAuZm9vdGVyQ29udGFpbmVyIGxpLCAuZm9vdGVyQ29udGFpbmVyIGxhYmVsIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNHB4KTtcbn1cblxuLmZvb3RlckNvbnRhaW5lciBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjojZmVmZWZlO1xufVxuXG4uY29ucmFkRm9vdGVyIHtcbiAgICBtYXJnaW46MCBhdXRvO1xufVxuXG4udGVybXNQcml2YWN5IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4zNTcxNHJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5yZWdpc3Rlck5ld3NsZXR0ZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuXG4uZm9vdGVyQm90dG9tIC5jZXJ0aWZpY2F0ZS13cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYnNpR3JhcGhpYyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jb3B5cmlnaHRDb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbjtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbn1cblxuLmJzaUNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uICg2IG9mIDEyKTtcblxuICAgIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICB9XG59XG5cbi5wYXltZW50TG9nb0NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zb2NpYWxJY29uQ29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW47XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4udHJ1c3RQaWxvdENvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyIG9mIDEyKTtcblxuICAgIC50cnVzdHBpbG90LXdpZGdldCBpZnJhbWUge1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMzBweDtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG59XG5cbi5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbiwgLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICRvZmYtYmxhY2s7XG4gICAgYm9yZGVyLWxlZnQ6bm9uZTtcbiAgICBib3JkZXItcmlnaHQ6bm9uZTtcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHRvcDogNDUlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMTZweCk7XG4gICAgYm9yZGVyLWxlZnQ6bm9uZTtcbiAgICBib3JkZXItcmlnaHQ6bm9uZTtcbn1cblxuLmZvb3RlckNvbnRhaW5lciAuYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZD46bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xufVxuXG46bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSk+LmFjY29yZGlvbi10aXRsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tY29udGVudCB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6MHB4O1xuICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICB0ZXh0LWluZGVudDp1bnNldDtcbiAgICAgICAgbGluZS1oZWlnaHQ6cmVtLWNhbGMoMjJweCk7XG4gICAgfVxufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5zb2NpYWxJY29uQ29udGFpbmVyIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBtYXJnaW46MCBhdXRvO1xufVxuXG4uZm9vdGVyQ29udGFpbmVyIC5zb2NpYWxJY29uQ29udGFpbmVyIGEge1xuICAgIG1hcmdpbjowLjVyZW07XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX1cbntcblxuICAgICNmb290ZXJBY2NvcmRpb24gPiBsaSA+IGEuZGlzYWJsZWQge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMHB4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTVweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgICNmb290ZXJBY2NvcmRpb24gPiBsaSA+IGFbZGlzYWJsZWRdIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTBweCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1cHgpO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICA6bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG5cbiAgICAuZm9vdGVyQ29udGFpbmVyIHVsLmFjY29yZGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIH1cblxuICAgICNmb290ZXJBY2NvcmRpb24gLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yOiAkd2hpdGUsICRhbHBoYTogMCk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgLmZvb3RlckNvbnRhaW5lciBsaS5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgNCk7XG4gICAgfVxuXG4gICAgLmZvb3RlckNvbnRhaW5lciBsaS5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLmZvb3RlckNvbnRhaW5lciA+IHVsID4gbGkgPiBhIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvb3RlckNvbnRhaW5lciBsaSA+IGEuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5mb290ZXJDb250YWluZXIgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBpbml0aWFsO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yOiAkd2hpdGUsICRhbHBoYTogMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yOiAkd2hpdGUsICRhbHBoYTogMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yZWdpc3Rlck5ld3NsZXR0ZXIge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxIG9mIDMpO1xuICAgIH1cblxuICAgIC50ZXJtc1ByaXZhY3kge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxIG9mIDMpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuXG4gICAgLmNvcHlyaWdodENvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxIG9mIDIpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgLnBheW1lbnRMb2dvQ29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgNCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEycHgpO1xuICAgICAgICAvKi5wYXltZW50SWNvbnMge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgIH0qL1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMS42MjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnNpQ29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIgb2YgMTIpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDZyZW07XG4gICAgfVxuXG5cbiAgICAudHJ1c3RQaWxvdENvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxIG9mIDQpO1xuICAgIH1cblxuICAgIC5zb2NpYWxJY29uQ29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgNCk7XG5cbiAgICAgICAgLnNvY2lhbEljb25Db250YWluZXIge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLypDYXJ0IEljb24qL1xuXG4uc2hvcHBpbmdDYXJ0SWNvbiB7XG4gICAgQGluY2x1ZGUgc3ByaXRlLWNhcnRpY29uc21hbGwoKTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgc3ByaXRlLWNhcnRpY29uKCk7XG4gICAgfVxufVxuXG5cbi5zaG9wcGluZ0NhcnRJY29uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxNXB4KTtcbn1cblxuLnNob3BwaW5nQ2FydEljb24gLmJhZGdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtOHB4O1xuICAgIHJpZ2h0OiAtOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDExcHgpO1xuICAgIG1pbi13aWR0aDoyLjJlbTtcbn1cblxuLypFbmQgQ2FydCBJY29uKi9cblxuLypIZWFkZXIgTGF5b3V0Ki9cblxuLnRvcEhlYWRlckNvbnRlbnQsIC5tYWluSGVhZGVyQ29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQsIC50b3BIZWFkZXJDb250ZW50IGEsIC50b3BIZWFkZXJDb250ZW50IGlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjhweCk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNHB4KTtcbiAgICBtYXJnaW46IDBweDtcbn1cblxuLm1haW5IZWFkZXJDb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMThweCk7XG59XG5cbi5tYWluSGVhZGVyQ29udGVudCwgLm1haW5IZWFkZXJDb250ZW50IGEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTRweCk7XG59XG5cbi5tYWluTmF2LCAubWFpbk5hdiBhIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xufVxuXG4udG9wSGVhZGVyQ29udGVudCAuY2hhbmdlU2l0ZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMSBvZiAzKTtcbn1cblxuLnRvcEhlYWRlckNvbnRlbnQgLnRvcEJhc2tldE9wdGlvbnMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIgb2YgMyk7XG5cbiAgICAuYWNjZXNzLXdyYXAge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjZXNzLXRvZ2dsZSB7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFjY2Vzcy1wb3B1cCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi1ibGFjaztcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgNHB4IDRweDtcbiAgICAgICAgICAgIHRvcDogMjhweDtcbiAgICAgICAgICAgIHJpZ2h0OiA1MCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyAxZW0pO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC5jdXN0b20tY2hlY2tib3gge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC41ZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udG9wSGVhZGVyQ29udGVudCAudGhjX1NlY3Rpb246bGFzdC1jaGlsZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4gXG4udG9wSGVhZGVyQ29udGVudCAudGhjX1NlY3Rpb24gc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgIGNvbG9yOiR3aGl0ZTtcblxuICAgID4gc3BhbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgfVxufVxuXG4udG9wSGVhZGVyQ29udGVudCAudGhjX1NlY3Rpb24ucmlnaHQgc3BhbiB7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG59XG5cbi5oZWFkZXJCYXNrZXRDb250ZW50IHtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi5oZWFkZXJMb2dpbkNvbnRlbnR7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OnJlbS1jYWxjKDEwcHgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgfVxufVxuXG4ubG9nb1NlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIgb2YgNSk7XG59XG5cbi5sb2dpblNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDMgb2YgNSk7XG59XG5cbi5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigzIG9mIDMpO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwcHgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYudGVtcEZpeCB7XG4gICAgICAgIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG59XG5cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfVxue1xuXG4gICAgLm1haW5IZWFkZXJDb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDE4cHgpO1xuICAgIH1cblxuICAgIC50b3BIZWFkZXJDb250ZW50IC5jaGFuZ2VTaXRlIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMSBvZiA0KTtcbiAgICB9XG5cbiAgICAudG9wSGVhZGVyQ29udGVudCAuY29udGFjdFRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDIgb2YgNCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAudG9wSGVhZGVyQ29udGVudCAudG9wQmFza2V0T3B0aW9ucyB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEgb2YgNCk7XG4gICAgfVxuXG5cbiAgICAubG9nb1NlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyIG9mIDEyKTtcbiAgICB9XG5cbiAgICAuc2VhcmNoQmFyU2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYgb2YgMTIpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLTQpO1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG5cbiAgICAgICAgJi50ZW1wRml4IHtcbiAgICAgICAgICAgIHotaW5kZXg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dpblNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0IG9mIDEyKTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDYpO1xuICAgIH1cbn1cblxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfSB7XG5cbiAgICAubG9nb1NlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxIG9mIDgpO1xuICAgIH1cblxuICAgIC5zZWFyY2hCYXJTZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNC43IG9mIDgpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLTMuNDUpO1xuICAgIH1cblxuICAgIC5sb2dpblNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyLjI4IG9mIDgpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoNy4wNSk7XG4gICAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9IHtcblxuICAgIC5sb2dvU2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEuNCBvZiA5KTtcbiAgICB9XG5cbiAgICAuc2VhcmNoQmFyU2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDUuNCBvZiA5KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC0zLjQpO1xuICAgIH1cblxuICAgIC5sb2dpblNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyLjIgb2YgOSk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyg3KTtcbiAgICB9XG59XG5cbi5oZWFkZXJXcmFwcGVyIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbn1cblxuLmhlYWRlcldyYXBwZXIsIC5oZWFkZXJXcmFwcGVyIGEsIC5oZWFkZXJXcmFwcGVyIGxhYmVsIHtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4udG9wSGVhZGVyQ29udGVudCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRvZmYtYmxhY2s7XG59XG5cblxuLypFTkQgSGVhZGVyIExheW91dCovXG5cblxuLypTaXRlVHlwZSBUYWJzKi9cblxuLnNpdGVTZWxlY3RUYWJzIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCAjMDAwO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDEwcHggIzAwMDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCAjMDAwO1xufVxuXG4uc2l0ZVNlbGVjdFRhYnMgc3Bhbi5hY3RpdmVTVCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFjY2VudDtcbn1cblxuLnNpdGVTZWxlY3RUYWJzIHNwYW4uYWN0aXZlU1QgYSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNpdGVTZWxlY3RUYWJzIHNwYW4ge1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHsgXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6MHB4O1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzowcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qRU5EIFNpdGVUeXBlIFRhYnMqL1xuXG5cblxuLmJhc2tldEhlYWRlclRvdGFsIHtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDBweCk7XG4gICAgZmxvYXQ6IGxlZnQ7XG59XG5cblxuXG5cbi8qTXkgQWNjb3VudC9Mb2dpbiBNZW51Ki9cblxuYS5teUFjY291bnRMaW5rIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7IFxuICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoNHB4KSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuYS5teUFjY291bnRMaW5rOmhvdmVyLCAubXlBY2NvdW50TGluayBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjp3aGl0ZTsgXG59XG5cbmEubXlBY2NvdW50TGluaywgLm15QWNjb3VudExpbmsgYSwgLmRyb3Bkb3duLm1lbnUgYS5teUFjY291bnRMaW5rIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDBweCk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcbiAgICBwYWRkaW5nOiAwIDAuNDVyZW07ICBcbn1cblxuLmRyb3Bkb3duLm1lbnUubXlBY2NvdW50TWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogJHdoaXRlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuXG4ubWVudS5teUFjY291bnRNZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG4uZHJvcGRvd24ubWVudS5teUFjY291bnRNZW51ID4gbGkgLm1lbnUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICB6LWluZGV4OiA5OTk5OTtcbn1cblxuLmRyb3Bkb3duLm1lbnUubXlBY2NvdW50TWVudSA+IGxpIC5tZW51IGEge1xuICAgIGNvbG9yOiAkYmxhY2s7XG59XG5cbi5kcm9wZG93bi5tZW51Lm15QWNjb3VudE1lbnUgPiBsaSAubWVudSBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjZW50O1xufVxuXG4vKkVORCBNeSBBY2NvdW50L0xvZ2luIE1lbnUqL1xuXG5cbi5tYWluTmF2IHtcbiAgICBiYWNrZ3JvdW5kOiAkb2ZmLWJsYWNrO1xuICAgIHotaW5kZXg6IDEwMDA4O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xufVxuXG5cblxuLypDaGF0IExpbmsqL1xuXG5zcGFuLmNoYXRMaW5rLCBzcGFuLmNoYXRMaW5rIHNwYW4ge1xuICAgIGN1cnNvcjpwb2ludGVyO1xufVxuXG4jc2l0ZS1kb21haW4taGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG5cblxuICAgIC5zdGlja3kge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogOTk5OTk5OTk7XG5cbiAgICAgICAgLnNpdGUtZG9tYWluIHtcbiAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgICAgICYuc3RpY2sge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAxcHggNXB4IDBweCByZ2JhKDAsMCwwLDAuNCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59Iiwi77u/LmxpdmUtY2hhdC13cmFwIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAxLjVlbTtcbiAgICByaWdodDogMS41ZW07XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZS1pbi1vdXQgLjJzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB9XG5cbiAgICAubGl2ZS1jaGF0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyLjVlbTtcblxuICAgICAgICAuYnViYmxlLXRleHQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBhbmltYXRpb246IHdvYmJsZS1ob3ItYm90dG9tIDhzIGJvdGggMjtcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogOHM7XG5cbiAgICAgICAgICAgIC5idWJibGUtdGV4dCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q2ODgwNjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyZW07XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTBlbTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogZmxpcC1pbi12ZXItcmlnaHQgMC41cyBjdWJpYy1iZXppZXIoMC4yNTAsIDAuNDYwLCAwLjQ1MCwgMC45NDApIGJvdGg7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAycztcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDY4ODA2O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogLTJyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1YmJsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjlBNTE5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiA0ZW07XG4gICAgICAgICAgICB3aWR0aDogNGVtO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxZW07XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDFweCA0cHggMCByZ2JhKDAsMCwwLC40KTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogaGVhcnRiZWF0IDRzIGVhc2UtaW4tb3V0IGluZmluaXRlIGJvdGg7XG4gICAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDJzO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgd29iYmxlLWhvci1ib3R0b20ge1xuICAgIDAlLCAyMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgIH1cblxuICAgIDMlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNXB4KSByb3RhdGUoLTNkZWcpO1xuICAgIH1cblxuICAgIDYlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDdweCkgcm90YXRlKDNkZWcpO1xuICAgIH1cblxuICAgIDklIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03cHgpIHJvdGF0ZSgtMS44ZGVnKTtcbiAgICB9XG5cbiAgICAxMiUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KSByb3RhdGUoMS4yZGVnKTtcbiAgICB9XG5cbiAgICAxNSUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0wLjZkZWcpO1xuICAgIH1cblxuICAgIDIwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSByb3RhdGUoMCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSByb3RhdGUoMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaXAtaW4tdmVyLXJpZ2h0IHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgtODBkZWcpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhlYXJ0YmVhdCB7XG4gICAgZnJvbSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIH1cblxuICAgIDYlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA5KTtcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICB9XG5cbiAgICAxMiUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICB9XG5cbiAgICAxOCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTMpO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIH1cblxuICAgIDI0JSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cbiIsIu+7vyNzdWdnZXN0TGF5ZXIge1xuXHRoZWlnaHQ6IDFweDtcblx0ei1pbmRleDogOTk5OTk7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIG1hcmdpbi10b3A6LTEwcHg7XG4gICAgbGVmdDowO1xuICAgIHJpZ2h0OjA7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyBvZiAzKTtcbn1cblxudWwuc3VnZ2VzdExheWVyQmxvY2tUZXh0IHtcbiAgICBtYXJnaW46cmVtLWNhbGMoMTBweCk7XG59XG5cbnVsLnN1Z2dlc3RMYXllckJsb2NrLCBkaXYuc3VnZ2VzdExheWVyQmxvY2sge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRjb2xvcjogJGJsYWNrO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcblx0Ym94LXNoYWRvdzogMCAxcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgYm94LXNpemluZzpib3JkZXItYm94O1xufVxuXG51bC5zdWdnZXN0TGF5ZXJCbG9jayBsaSwgdWwuc3VnZ2VzdExheWVyQmxvY2tUZXh0IGxpIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cblxuXG5saS5zdWdnZXN0SGVhZGVyIHtcblxuXHRmb250LXdlaWdodDogYm9sZDtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcblx0cGFkZGluZzogM3B4IDEwcHggM3B4IDVweDtcbn1cblxuXG5zcGFuLnN1Z2dlc3RUZXh0UXVlcnkge1xuXHRkaXNwbGF5OmJsb2NrO1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoNXB4KTtcbiAgICBtYXJnaW46cmVtLWNhbGMoM3B4KTtcbn1cblxubGkuc3VnZ2VzdFJvdyA6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiRtZWRpdW0tZ3JheTtcbn1cblxuLmhpZ2hsaWdodCB7XG4gICAgYmFja2dyb3VuZDogI0U4RTVFNTtcbn1cbiIsIu+7v1xuLnJfTXlBY2NvdW50X015QWNjb3VudF9TZWN0aW9uIHtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIGEge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxufVxuXG4uYWNjb3VudC1pbmZvLWJveCB7XG4gICAgYm9yZGVyOiBkb3R0ZWQgMnB4ICNkMGNkY2Q7XG4gICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDE1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogN3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IEluZm9CYWNrZ3JvdW5kO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLmZsZXgtYWNjb3VudC1ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjBmMDtcbiAgICBjb2xvcjogIzQ5NDg0OCAhaW1wb3J0YW50O1xuICAgIG1pbi1oZWlnaHQ6IDkwcHg7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG59XG5cbi5mbGV4LWFjY291bnQtYm94OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNkMGNkY2Q7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZmxleC1hY2NvdW50LWJveC1jaGlsZCB7XG4gICAgZmxleDogNjtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG5cbi5mbGV4LWFjY291bnQtYm94LWRlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDkwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIC5mbGV4LWFjY291bnQtYm94LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5mbGV4LWFjY291bnQtYm94LWluZmxpZ2h0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNkMGNkY2Q7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiYWVmZDg7XG4gICAgY29sb3I6ICM0OTQ4NDggIWltcG9ydGFudDtcbn1cblxuLmZsZXgtYWNjb3VudC1ib3gtaW5mbGlnaHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgZ3JpZC1nYXA6IDEwcHg7XG59XG5cbi5mYS1zdGFja1tkYXRhLWNvdW50XTphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyNSU7XG4gICAgdG9wOiA1JTtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtY291bnQpO1xuICAgIGZvbnQtc2l6ZTogMzUlO1xuICAgIHBhZGRpbmc6IC45OWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAuOTllbTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMCwwLDEwMCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1pbi13aWR0aDogM2VtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufSIsIu+7v2gxLm1haW5IZWFkaW5nIHtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG59XG5cbnRhYmxlLmV4cGFuZFRhYmxlIHRib2R5IHRyLmRldGFpbFJvdzpudGgtY2hpbGQoNG4tMSkge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG59XG5cbi5hZG1pblRhYmxlTGluayB7XG4gICAgY29sb3I6ICMxMTUzQUQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiAjMTE1M0FEO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmV4cGFuZGVkUm93IHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIC8qYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7Ki9cbn1cblxuLmhpZGRlblRhYmxlQ29udGVudCB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNSk7XG4gICAgcGFkZGluZy10b3A6cmVtLWNhbGMoMTApO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlM2UzZTM7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA1KTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDUpO1xufVxuXG4uZ3JhcGgtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDEwIC8gMTYgKiAxMDAlKTtcblxuICAgIC5ncmFwaCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLy8gQ2hhcnQgSlMgQ1NTXG5Aa2V5ZnJhbWVzIGNoYXJ0anMtcmVuZGVyLWFuaW1hdGlvbntmcm9te29wYWNpdHk6Ljk5fXRve29wYWNpdHk6MX19LmNoYXJ0anMtcmVuZGVyLW1vbml0b3J7YW5pbWF0aW9uOmNoYXJ0anMtcmVuZGVyLWFuaW1hdGlvbiAxbXN9LmNoYXJ0anMtc2l6ZS1tb25pdG9yLC5jaGFydGpzLXNpemUtbW9uaXRvci1leHBhbmQsLmNoYXJ0anMtc2l6ZS1tb25pdG9yLXNocmlua3twb3NpdGlvbjphYnNvbHV0ZTtkaXJlY3Rpb246bHRyO2xlZnQ6MDt0b3A6MDtyaWdodDowO2JvdHRvbTowO292ZXJmbG93OmhpZGRlbjtwb2ludGVyLWV2ZW50czpub25lO3Zpc2liaWxpdHk6aGlkZGVuO3otaW5kZXg6LTF9LmNoYXJ0anMtc2l6ZS1tb25pdG9yLWV4cGFuZD5kaXZ7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTAwMDAwMHB4O2hlaWdodDoxMDAwMDAwcHg7bGVmdDowO3RvcDowfS5jaGFydGpzLXNpemUtbW9uaXRvci1zaHJpbms+ZGl2e3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjIwMCU7aGVpZ2h0OjIwMCU7bGVmdDowO3RvcDowfSIsIu+7v1xuLm9yZGVyU3VtbWFyeVRhYmxlIHtcbiAgICBkaXNwbGF5OnRhYmxlO1xufVxuXG4ub3JkZXJTdW1tYXJ5VGFibGUgdHIge1xuICAgIGRpc3BsYXk6dGFibGUtcm93ICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlclN1bW1hcnlUYWJsZSB0ZCB7XG4gICAgZGlzcGxheTp0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlclN1bW1hcnlUYWJsZSB0ciA+IHRkOm50aC1vZi10eXBlKDIpIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG5cdHdpZHRoOiByZW0tY2FsYygxMjVweCk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm9yZGVyU3VtbWFyeVRhYmxlIHRyID4gdGQ6bnRoLW9mLXR5cGUoMSkge1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoNXB4KTtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdHdpZHRoOiByZW0tY2FsYygxMTBweCk7XG59XG5cbi50b3RhbFByaWNlQ29sIHtcbiAgICBiYWNrZ3JvdW5kOiRsaWdodC1ncmF5O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG59XG5cbnRmb290IC50b3RhbFByaWNlQ29sIHtcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMThweCk7XG59Iiwi77u/LnByb21vLWFjY29yZGlvbi13cmFwIHtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDVweCAwcHggcmdiYSgwLDAsMCwwLjQpO1xufVxuXG5bY2xhc3N8PVwicHJvbW8tYWNjb3JkaW9uLWl0ZW1cIl0ge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgLy9ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBjb2xvcjogJG9mZi1ibGFjaztcbiAgICBmb250LXNpemU6IDEuM2VtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xcyBlYXNlLWluLW91dDtcblxuICAgICYub3BlbixcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRsaWdodC1ncmF5LCAzJSk7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgIH1cblxuICAgICYub3BlbiB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6IHJnYmEoJG9mZi1ibGFjaywgMC40KTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbltjbGFzc3w9XCJwcm9tby1jb250ZW50XCJdIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IC41cyBlYXNlLWluLW91dDtcblxuICAgICYuY2xvc2VkIHtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAucHJvbW8tb3B0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICB9XG59XG5cbi5idXR0b24tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmLnNhdmUge1xuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByb21vLWluZm9fcGVyc2lzdGVudCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuICAgIH1cblxuICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ1dHRvbi1ncm91cC1sZWZ0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XG4gICAgfVxuXG4gICAgLm5iIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBcbiAgICAgICAgLnByb21vLWluZm9fcGVyc2lzdGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb21vLWluZm8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYuaG92ZXIsXG4gICAgJi5mb2N1cyB7XG4gICAgICAgIC5wcm9tby1pbmZvX2JveCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9tby1pbmZvX2JveCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IC4zcyBhbGw7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggMHB4IHJnYmEoMCwwLDAsMC40KTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvbW8taW5mb19wZXJzaXN0ZW50IHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJG9mZi1ibGFjaywgMTUlKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDVweCAwcHggcmdiYSgwLDAsMCwwLjQpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgJi5kYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi1ibGFjaztcbiAgICB9XG59XG5cblxuXG5cbi5zd2l0Y2gtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLnN3aXRjaCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICAgICAgICAgLnNsaWRlci10b2dnbGUge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRsaWdodC1ncmF5LCAzJSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgICAgICArIC5zbGlkZXItdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjNjZiYjZhO1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiJVwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogY2FsYygyNnB4IC8gMik7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjZweCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGVyLXRvZ2dsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGxpZ2h0LWdyYXksIDMlKTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC40cztcblxuICAgICAgICAgICAgJi5yb3VuZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzRweDtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuNHM7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiwqNcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYygyMnB4IC8gMik7XG4gICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjRzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5za3VUb3Age1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5wcm9kS2V5RGV0YWlscyB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1cHggMCk7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG59XG5cbi5wcm9kQnJhbmRMb2dvIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MCU7XG59XG5cbi5vcmRlckNvZGUge1xuICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29tcGxpYW5jZUxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNXB4KTtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNXB4IDApO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuaDEucHJvZFRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwLjY1cmVtO1xufVxuXG4ucmVwb3J0RXJyb3JMaW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgbWFyZ2luLXRvcDogLTEycHg7XG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTMpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGJsYWNrO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbn1cblxuLnN0b2NrTWVzc2FnZSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMHB4KTtcbn1cblxuLnByb2R1Y3QtbW9xLXRleHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNrdVN0aWNrVG9Cb3R0b20ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICB3aWR0aDogOTclO1xuICAgIH1cbn1cblxuLnN0b2NrTm90aWZpY2F0aW9uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5kYXRhU2hlZXRJdGVtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgbWFyZ2luOiAxMHB4O1xufVxuXG4udGFicy1wYW5lbCB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5za3VUYWJzIHtcbiAgICBiYWNrZ3JvdW5kOiNmN2Y2ZjY7XG4gICAgLnRhYnMtdGl0bGUge1xuICAgICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0Om5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMC44NXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNnB4KTtcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzLCAuZm9vdGVyQ29udGFpbmVyIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgb3ZlcmZsb3c6YXV0bztcbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIHtcbiAgICAgICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDpib2xkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaWZyYW1lIHsgXG4gICAgICAgIHdpZHRoOjUwJTsgXG4gICAgICAgIG1hcmdpbjowIGF1dG87IFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHsgXG4gICAgICAgICAgICB3aWR0aDo5NSU7IFxuICAgICAgICB9XG4gICAgfVxufSBcblxuLnZpZXdGdWxsUmFuZ2Uge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTVweCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuXG4uc2t1VGVjaCB7XG4gICAgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmNmY2O1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB3aWR0aDozMyU7XG4gICAgfVxufVxuXG4ucHJvZHVjdC1hdHRyaWJ1dGVzLXRhYmxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMXJlbSAwO1xuXG4gICAgdGJvZHkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIHRyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhZ2dlci10YWJsZSB7XG4gICAgICAgIHRib2R5IHRyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIu+7vy5zdG9ja01lc3NhZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mbyArIGRpdixcbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvICsgZGl2ID4gc3BhbiB7XG4gICAgICAgIC8vbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgICAgICAvL2JvdHRvbTogMjBweDtcbiAgICB9XG59XG5cbi5zbWFsbFN0b2NrTWVzc2FnZSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvICsgZGl2LFxuICAgIC5zdG9jay1tZXNzYWdlLWluZm8gKyBkaXYgPiBzcGFuIHtcbiAgICAgICAgLy9tYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvX2JveCB7XG4gICAgICAgIC8qYm90dG9tOiAxMDAlO1xuICAgICAgICB0b3A6IGF1dG87Ki9cbiAgICB9XG59XG5cbi5zdG9ja01lc3NhZ2UsXG4uc21hbGxTdG9ja01lc3NhZ2UsXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdG9jay1tZXNzYWdlLXRleHQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgIHdpZHRoOiAxOXB4O1xuICAgICAgICBoZWlnaHQ6IDE5cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLjJlbTtcbiAgICAgICAgLy9tYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mb19ib3gge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IC42NWVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0cmFuc2l0aW9uOiBlYXNlLWluLW91dCAuM3MgYWxsO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwcHggcmdiYSgwLCAwLCAwLCAwLjQwKTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IGNhbGMoMTAwJSArIC4yZW0pO1xuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIC4yZW0pO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0b2NrLW1lc3NhZ2Utc2VhcmNoIHtcbiAgICAuc3RvY2stbWVzc2FnZS1pbmZvIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3RvY2stbWVzc2FnZS1iYXNrZXQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAuc3RvY2stbWVzc2FnZS10ZXh0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN0b2NrLW1lc3NhZ2UtaW5mbyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyAuMmVtIC0gMmVtKTtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyAuMmVtKTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0b2NrLW1lc3NhZ2UtbWVyZ2Uge1xuICAgIC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3RvY2stbWVzc2FnZS10YWJsZSB7XG4gICAgPiBkaXYge1xuICAgICAgICAvL21hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgIC5zdG9jay1tZXNzYWdlLWluZm8ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuMmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdG9jay1tZXNzYWdlLWluZm9fYm94IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRvcDogY2FsYygxMDAlICsgLjJlbSk7XG4gICAgICAgIGJvdHRvbTogYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoMTAwJSArIC4yZW0pO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGVnYWN5LXN0b2NrLW1lc3NhZ2Uge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgc3BhbiB7XG4gICAgICAgIC8vbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxufSIsIu+7v1xuLnRpZXJIZWFkaW5nIHtcbiAgICBtYXJnaW4tdG9wOnJlbS1jYWxjKDUpO1xuICAgIGgxIHtcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICB9XG59XG4udGllck5hdlNlY3Rpb24ge1xuICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuIH1cblxuLnRpZXJNaWRkbGVXaWRlIHsgXG4gICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG59XG5cbi50aWVyTWlkZGxlTWVkaXVtIHtcbiAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbn1cblxuLnRpZXJNaWRkbGVTbWFsbCB7XG4gICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG59XG5cblxuQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9IHtcbiAgLy8gTWVkaXVtIGFuZCB1cCBzdHlsZXNcbiAgLnRpZXJOYXZTZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMi44OCk7XG4gICAgICAgIFxuXG4gICAgICAgIC8qJi50aWVyYW5kU2lkZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLTkuMTIpO1xuICAgICAgICB9XG5cbiAgICAgICAgICYudGllcnNPbmx5IHtcbiAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLTkuMTIpO1xuICAgICAgICB9Ki9cblxuICAgIH1cblxuICAgIC50aWVyTWlkZGxlV2lkZSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICB9XG5cbiAgICAudGllck1pZGRsZU1lZGl1bSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDkuMTIpO1xuICAgICAgICAvKkBpbmNsdWRlIGdyaWQtY29sLXBvcygyLjg4KTsqL1xuICAgIH1cblxuICAgIC50aWVyTWlkZGxlU21hbGwge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig5LjEyKTtcbiAgICAgICAgLypAaW5jbHVkZSBncmlkLWNvbC1wb3MoMi44OCk7Ki9cbiAgICB9XG5cbiAgICAudGllclJpZ2h0U2VjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG5cbn1cblxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfSB7XG4gIC8vIExhcmdlIGFuZCB1cCBzdHlsZXNcbiAgLnRpZXJOYXZTZWN0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMi44OCk7XG4gICAgICAgIFxuXG4gICAgICAgIC8qJi50aWVyYW5kU2lkZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLTYuNik7XG4gICAgICAgIH1cblxuICAgICAgICAgJi50aWVyc09ubHkge1xuICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtOS4xMik7XG4gICAgICAgIH0qL1xuXG4gICAgfVxuXG4gICAgLnRpZXJNaWRkbGVXaWRlIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIH1cblxuICAgIC50aWVyTWlkZGxlTWVkaXVtIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOS4xMik7XG4gICAgICAgIC8qQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDIuODgpOyovXG4gICAgfVxuXG4gICAgLnRpZXJNaWRkbGVTbWFsbCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYuNik7XG4gICAgICAgIC8qQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKDIuODgpOyovXG4gICAgfVxuXG4gICAgLnRpZXJSaWdodFNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyLjUyKTtcbiAgICB9XG5cbn1cblxudWwudGllcnBhZ2VOYXYge1xuICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICBtYXJnaW4tbGVmdDowcHg7XG4gICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDQpO1xuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDVweCAwKTtcbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYyg1cHggMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCk7XG4gICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDQuMiAwKTtcbiAgICAgICAgfVxuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206bm9uZTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOmJsYWNrO1xuICAgICAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDE2cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTQuNyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGllclRleHQge1xuICAgIFxufVxuXG4uYnJhbmRTZWN0aW9uIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBoMiB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICAgIH1cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6MHB4IDIwcHggNXB4IDIwcHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbToycHg7XG4gICAgICAgICAgICB3aWR0aDoxMDBweDtcbiAgICAgICAgICAgIGltYWdlLXJlbmRlcmluZzotbW96LWNyaXNwLWVkZ2VzO1xuICAgICAgICAgICAgaW1hZ2UtcmVuZGVyaW5nOi1vLWNyaXNwLWVkZ2VzOyAgIFxuICAgICAgICAgICAgaW1hZ2UtcmVuZGVyaW5nOi13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7XG4gICAgICAgICAgICBpbWFnZS1yZW5kZXJpbmc6b3B0aW1pemUtY29udHJhc3Q7ICBcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9ICAgIFxufVxuXG5hLnRvcEJyYW5kc1ZpZXdBbGwge1xuICAgIHBhZGRpbmctdG9wOnJlbS1jYWxjKDEwKTtcbiAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgY29sb3I6JGRhcmstZ3JheTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6YmxhY2s7XG4gICAgfVxufVxuXG4udGllckFkdmVydHMge1xuICAgIC5jb2x1bW4ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBpbWFnZS1yZW5kZXJpbmc6IC1tb3otY3Jpc3AtZWRnZXM7ICAgICAgICAgLyogRmlyZWZveCAqL1xuICAgICAgICAgICAgaW1hZ2UtcmVuZGVyaW5nOiAgIC1vLWNyaXNwLWVkZ2VzOyAgICAgICAgIC8qIE9wZXJhICovXG4gICAgICAgICAgICBpbWFnZS1yZW5kZXJpbmc6IC13ZWJraXQtb3B0aW1pemUtY29udHJhc3Q7LyogV2Via2l0IChub24tc3RhbmRhcmQgbmFtaW5nKSAqL1xuICAgICAgICAgICAgaW1hZ2UtcmVuZGVyaW5nOiBjcmlzcC1lZGdlcztcbiAgICAgICAgICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IG5lYXJlc3QtbmVpZ2hib3I7ICAvKiBJRSAobm9uLXN0YW5kYXJkIHByb3BlcnR5KSAqL1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi5tb2R1bGVWaWV3IHtcbiAgICAubW9kdWxlQmxvY2sge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYygxMHB4KTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjpibGFjaztcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDpyZW0tY2FsYygxOHB4KTtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOjVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOmJsYWNrO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFyYW1ldHJpY1NlYXJjaEJ1dHRvbiB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgcmlnaHQ6MTBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBmbG9hdDpyaWdodDtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6Ym90aDtcbiAgICB9XG4gIH1cbn0iLCLvu78kbWFpblRleHQ6IzNjM2MzYztcbiRsaWdodGVyR3JleTojYmRjM2M3O1xuXG4uYnV0dG9uLmhvbGxvdy5saWdodGVyR3JheSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0ZXJHcmV5O1xuICAgIGNvbG9yOiAkbGlnaHRlckdyZXk7XG59XG5cbi5idXR0b24ubGlnaHRlckdyYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodGVyR3JleTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZi1ibGFjaztcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG5cbi5idXR0b24uaG9sbG93LmxpZ2h0ZXJHcmF5IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHRlckdyZXk7XG4gICAgY29sb3I6ICRsaWdodGVyR3JleTtcbiAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJG9mZi1ibGFjaztcbiAgICAgICAgY29sb3I6ICRvZmYtYmxhY2s7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRvZmYtYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkb2ZmLWJsYWNrO1xuICAgIH1cbn1cblxuLnF1aWNrVGFza0ZpbHRlcnMge1xuICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYygwKTtcbiAgICBsYWJlbCwgYSB7XG4gICAgICAgIGNvbG9yOiRtYWluVGV4dDtcbiAgICAgICAgLypmb250LXdlaWdodDpib2xkOyovXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZToxLjFyZW07XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYygxMSAyKTtcbiAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgICAgICYudGFza0ZpbHRlckRpdmlkZXIge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6bm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjVweDtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiRtYWluVGV4dDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxMSk7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMTIpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFza0ZpbHRlcnNDb2wge1xuICAgIC8qQGluY2x1ZGUgZ3JpZC1jb2x1bW47Ki9cbiAgICAvKmJhY2tncm91bmQ6I0Y5RkFGRSAhaW1wb3J0YW50OyovXG4gICAgYmFja2dyb3VuZDojRUZFRkY0ICFpbXBvcnRhbnQ7XG4gICAgJi5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk5OTkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoNSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMiBvZiAxMik7XG4gICAgICAgICAgICAvL3RvIG1hdGNoIGhlaWdodCBvZiBwYXJlbnQgLSBvbmx5IHdvcmtzIGFzIHBhZ2UgaXMgMiBjb2x1bW5zIHNvIHJpZ2h0IGNvbCBpcyBmbG9hdGVkIHJpZ2h0LlxuICAgICAgICAgICAgaGVpZ2h0OjEwMCUgICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgIH1cbiAgICB9XG4gICAgIC8qQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyIG9mIDEyKTtcbiAgICAgICAgLy90byBtYXRjaCBoZWlnaHQgb2YgcGFyZW50IC0gb25seSB3b3JrcyBhcyBwYWdlIGlzIDIgY29sdW1ucyBzbyByaWdodCBjb2wgaXMgZmxvYXRlZCByaWdodC5cbiAgICAgICAgaGVpZ2h0OjEwMCUgICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDoxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgIH0qL1xufVxuXG4udGFza1N3aXRjaCB7XG4gICAgcGFkZGluZzogM3B4IDBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiRsaWdodGVyR3JleTtcbiAgICB9XG59XG4udGFza1BhZ2VDb250IHtcbiAgICBzcGFuLmxhYmVsIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMTApO1xuICAgICAgICBtYXJnaW46IDIuNXB4IDVweCAyLjVweDtcblxuICAgICAgICAuc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNBMUFBQjI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50YXNrUm93IHtcbiAgICBtYXgtaGVpZ2h0OiAyMDBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG1heC1oZWlnaHQgMS4ycztcblx0LW1vei10cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDEuMnM7XG5cdHRyYW5zaXRpb246IG1heC1oZWlnaHQgMS4ycztcbiAgICAmLm9wZW4ge1xuICAgICAgICAgbWF4LWhlaWdodDogMTQ1MHB4O1xuICAgICAgICAgb3ZlcmZsb3c6dmlzaWJsZTtcbiAgICB9XG59XG5cbi5yZXN1bHRzQ291bnQge1xuICAgIG1hcmdpbjogN3B4IDBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbmgxLnRhc2tQYWdlVGl0bGUge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjpyZW0tY2FsYyg4cHggMCAwIDApO1xuICAgIGNvbG9yOiRtYWluVGV4dDtcbiAgICBmb250LXNpemU6MS4zNXJlbTtcbn1cblxuLnRhc2tEZXRhaWxzIHtcbiAgICBiYWNrZ3JvdW5kOiNGOUY5Rjk7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg3KTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICAgIGxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcbiAgICAgICAgY29sb3I6JGRhcmstZ3JheTtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgICAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDExKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNob3ctcXVpY2tUYXNrRmlsdGVycyB7XG4gICAgZGlzcGxheTpibG9jayAhaW1wb3J0YW50O1xufVxuXG4udGFza0hlYWRlckJhciB7XG4gICAgbWluLWhlaWdodDpyZW0tY2FsYyg1MSk7XG4gICAgYmFja2dyb3VuZDpcdCNmZmZmZjI7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgLypib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLDAsMCwwLjEyKSwgMCAxcHggMnB4IHJnYmEoMCwwLDAsMC4yNCk7Ki9cbiAgICBwYWRkaW5nOnJlbS1jYWxjKDYgMCk7XG4gICAgJi5yb3cuZXhwYW5kZWQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0uNTcxNDNyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtLjU3MTQzcmVtO1xuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAwLjI1cmVtIDAuMjVyZW0gMC4yNXJlbTtcbiAgICAgICAgcGFkZGluZzogLjU1ZW0gLjc1ZW07XG4gICAgfVxufVxuXG4udGFza1BhZ2VDb250IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKC0yMik7XG4gICAgcGFkZGluZy1ib3R0b206cmVtLWNhbGMoMTApO1xuICAgIG1pbi1oZWlnaHQ6cmVtLWNhbGMoNDk1KTtcbiAgICAvKmJhY2tncm91bmQ6I0Y1RjVGNjsqL1xuICAgIGJhY2tncm91bmQ6I0ZBRkFGQTtcbn1cblxuLnRhc2tzQ29udGFpbmVyIHtcbiAgICAvKmJvcmRlcjoxcHggc29saWQgJGxpZ2h0LWdyYXk7Ki9cbiAgICBtYXJnaW4tdG9wOnJlbS1jYWxjKDEwKTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDExNTApO1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoNik7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwwLDAsLjEyKSwgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjI0KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYygxMSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDpyZW0tY2FsYygxMSk7XG4gICAgfVxufVxuXG4udGFza1JvdyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlOGU1ZTU7XG4gICAgfVxuXG4gICAgLm5vbkVkaXRhYmxlIHtcbiAgICAgICAgbWFyZ2luOiA1cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZmEtc3RhciB7XG4gICAgICAgICAgICBjb2xvcjogI2U4MTIxMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ob2xsb3ctc3FhdXJlLW5vdGlmaWNhdGlvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMzEzMTMxO1xuICAgICAgICAgICAgY29sb3I6ICMzMTMxMzE7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAuMThyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwIC41NWVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkbWFpblRleHQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZWRpdEJ0biB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDEwKSBhdXRvO1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogcmVtLWNhbGMoNzApO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIC5idG5JY29uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudDtcblxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuVGV4dCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5lZGl0QnRuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi50YWJzQXJlYSB7XG4gICAgLnRhYnMtY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAudGFicy1wYW5lbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJzIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAudGFicy10aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogMzElO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y4ZjlmYTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgpO1xuXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRhY2NlbnQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjdmODtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4udG9kb0NvbnRhaW5lciwgLnRhc2tOb3Rlc0NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTApO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGhlaWdodDogcmVtLWNhbGMoMzE1KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG59XG5cbi50b2RvQ29udGFpbmVyIHtcbiAgICAuZmEtc3RhciB7XG4gICAgICAgIGNvbG9yOiAjZTgxMjEyO1xuICAgIH1cbn1cblxuLnF1aWxsLW91dGVyIHtcbiAgICAucWwtdG9vbHRpcCwgLnFsLWNsaXBib2FyZCB7XG4gICAgICAgIHotaW5kZXg6IDk5OTk5OTtcbiAgICB9XG5cbiAgICAucXVpbGwtZWRpdG9yIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuXG4gICAgICAgIC5xbC10b29sYmFyLnFsLXNub3csIC5xbC1jb250YWluZXIucWwtc25vdyB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwcHggMHB4IDBweDtcbiAgICB9XG5cbiAgICAucWwtY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMjApO1xuICAgIH1cbn1cblxuLnRvZG9Sb3cge1xuICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAubGFiZWwge1xuICAgICAgIGxpbmUtaGVpZ2h0OjEuM3JlbTtcbiAgIH1cbiAgIGN1cnNvcjpwb2ludGVyO1xuICAgcGFkZGluZzpyZW0tY2FsYyg1IDApO1xuICAgcCB7XG4gICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygyKTtcbiAgIH1cbiAgICY6aG92ZXIge1xuICAgICAgIGJhY2tncm91bmQ6JGxpZ2h0LWdyYXk7XG4gICB9XG59XG5cbi5ub3RlUm93IHtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygtMik7XG4gICAgICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMyk7XG4gICAgfVxuICAgIC5ub3RlRGF0ZSB7XG4gICAgICAgIGNvbG9yOiRkYXJrLWdyYXk7XG4gICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxMik7XG5cbiAgICB9XG59XG5cbi50YXNrU2F2ZSB7XG4gICAgZmxvYXQ6cmlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYyg1KTtcbn1cblxuLyp0b2RvIG1lbnUgdHJhbnNpdGlvbiovXG4ucGFuZWwtc2xpZGVyIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcblx0bWF4LWhlaWdodDogMDtcblx0dHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNHM7XG5cdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMSwgMCwgMC41LCAwKTtcbiAgICBiYWNrZ3JvdW5kOiNFRkVGRjQ7XG59XG5cbi5wYW5lbC1zbGlkZXIub3BlbiB7XG5cdG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgIG1hcmdpbi10b3A6OHB4O1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoNSk7XG4gICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYyg0KTtcbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDUgMCk7XG4gICAgfVxufVxuXG4ucGFuZWwtc2xpZGVyLm9wZW46OmJlZm9yZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxNXB4IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAxNXB4IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDE1cHggI0VGRUZGNDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRvcDogLTE1cHg7XG4gICAgbGVmdDogNTAlO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbn1cblxuLnRvZG9BdHRhdGNobWVudHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgYmFja2dyb3VuZDogI0Y2RjdGODtcblxuICAgIGgyLCBoMyB7XG4gICAgICAgIGNvbG9yOiAjNmY2ZjZmO1xuICAgIH1cblxuICAgIGkge1xuICAgICAgICBjb2xvcjogI2MwYzJjMztcbiAgICB9XG5cbiAgICBbdHlwZT0nZmlsZSddIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGhyIHtcbiAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDUpO1xuICAgIH1cbn1cblxuLmJkbUZpbGVVcGxvYWRzIHtcbiAgICBtYXgtaGVpZ2h0OiByZW0tY2FsYygxNDUpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAubGluayB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZDZkOGRhO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmRtTG9hZGluZyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDk5OTk5OTk5OTk7XG4gICAgaGVpZ2h0OiAyZW07XG4gICAgd2lkdGg6IDJlbTtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4vKiBUcmFuc3BhcmVudCBPdmVybGF5ICovXG4uYmRtTG9hZGluZzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjMpO1xufVxuXG4vKiA6bm90KDpyZXF1aXJlZCkgaGlkZXMgdGhlc2UgcnVsZXMgZnJvbSBJRTkgYW5kIGJlbG93ICovXG4uYmRtTG9hZGluZzpub3QoOnJlcXVpcmVkKSB7XG4gICAgLyogaGlkZSBcImJkbUxvYWRpbmcuLi5cIiB0ZXh0ICovXG4gICAgZm9udDogMC8wIGE7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbn1cblxuLmJkbUxvYWRpbmc6bm90KDpyZXF1aXJlZCk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB3aWR0aDogMWVtO1xuICAgIGhlaWdodDogMWVtO1xuICAgIG1hcmdpbi10b3A6IC0wLjVlbTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc3Bpbm5lciAxNTAwbXMgaW5maW5pdGUgbGluZWFyO1xuICAgIC1tb3otYW5pbWF0aW9uOiBzcGlubmVyIDE1MDBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgLW1zLWFuaW1hdGlvbjogc3Bpbm5lciAxNTAwbXMgaW5maW5pdGUgbGluZWFyO1xuICAgIC1vLWFuaW1hdGlvbjogc3Bpbm5lciAxNTAwbXMgaW5maW5pdGUgbGluZWFyO1xuICAgIGFuaW1hdGlvbjogc3Bpbm5lciAxNTAwbXMgaW5maW5pdGUgbGluZWFyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjVlbSAwIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjFlbSAxLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMCAxLjVlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgLTEuMWVtIDEuMWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjUpIC0xLjVlbSAwIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjUpIC0xLjFlbSAtMS4xZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDAgLTEuNWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjFlbSAtMS4xZW0gMCAwO1xuICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC43NSkgMS41ZW0gMCAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgMS4xZW0gMS4xZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDAgMS41ZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIC0xLjFlbSAxLjFlbSAwIDAsIHJnYmEoMCwgMCwgMCwgMC43NSkgLTEuNWVtIDAgMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIC0xLjFlbSAtMS4xZW0gMCAwLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDAgLTEuNWVtIDAgMCwgcmdiYSgwLCAwLCAwLCAwLjc1KSAxLjFlbSAtMS4xZW0gMCAwO1xufVxuXG4vKiBBbmltYXRpb24gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW5uZXIge1xuICAgIDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBzcGlubmVyIHtcbiAgICAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgfVxufVxuXG5ALW8ta2V5ZnJhbWVzIHNwaW5uZXIge1xuICAgIDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc3Bpbm5lciB7XG4gICAgMCUge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuLmJkbVNlYXJjaCB7XG4gICAgLmJkbVNlYXJjaENsb3NlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogI0VGRUZGNDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNhMjllOWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIHBhZGRpbmctdG9wOnJlbS1jYWxjKDUpO1xuICAgIH1cblxuICAgIC5oaWdobGlnaHQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB5ZWxsb3c7XG4gICAgfVxuXG4gICAgLnNlYXJjaFJlc3VsdCB7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoNCAwKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYgNCk7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2U0ZTRlNDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvZG9Gb3JtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDUwMCk7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgW2NsYXNzfD1cInRvZG9cIl0ge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDg1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgW2NsYXNzfD1cInRvZG9cIl0ge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogOS4wOSU7XG4gICAgICAgICAgICAvL3dpZHRoOiBjYWxjKDEwMCUgLyAxMSk7IC0gRG9lc24ndCB3b3JrIHByb3Blcmx5IHdpdGggSUVcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50b2RvLWRpcmVjdCB7XG4gICAgICAgICAgICAvL3dpZHRoOiA3MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRvZG8tY29tbWVudHMge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE0MHB4IC0gMzJweCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAudG9kby1kdXBsaWNhdGUge1xuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuXG4gICAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRvZG8tZGVsZXRlIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNyb3NzLWNvbnRhaW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMzAlIDA7XG4gICAgfVxuXG4gICAgdGFibGUucXVvdGVEZXRhaWwge1xuICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkYWNjZW50LCAyMCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggZGFya2VuKCNlM2UzZTQsIDE1JSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0Ym9keSB7XG5cbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTJweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICY6OnBsYWNob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmlucHV0LWV4cGFuZC13cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDkyLjg1NzE0cmVtIC0gMTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMzAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9dGV4dF0sXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPW51bWJlcl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9dGV4dF0sXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1udW1iZXJdIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgYWxsO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgKyAuaW5wdXQtZXhwYW5kLWljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgKyAuaW5wdXQtZXhwYW5kLWljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggZGFya2VuKCNlM2UzZTQsIDE1JSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRhY2NlbnQsIDIwJSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgLnRvZG8tZGVsZXRlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudG9kby1kaXJlY3Qge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNnB4IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2F0LXF1b3RlcyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlM2UzZTQ7XG4gICAgfVxuXG4gICAgdGguY2F0LXF1b3RlcyxcbiAgICB0ZC5jYXQtcXVvdGVzIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNiY2JjYmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgM3B4ICNiY2JjYmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDNweCBkYXJrZW4oI2UzZTNlNCwgMTUlKTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2JjYmNiZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXQtcHJvIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkYWNjZW50LCAyMCUpO1xuICAgIH1cblxuICAgIHRoLmNhdC1wcm8sXG4gICAgdGQuY2F0LXBybyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNiY2JjYmU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdHIgLmRlbGV0ZS1yb3cge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDVweCAjYmNiY2JlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdHI6bGFzdC1jaGlsZCAuZGVsZXRlLXJvdyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjYmNiY2JlO1xuICAgIH1cblxuICAgIC5taXNzaW5nLXJlcXVpcmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigjY2M0YjM3LCAyMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCNjYzRiMzcsIDIwJSk7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNjYzRiMzcgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJldmVhbC5mdWxsIHtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcblxuICAgIC5yb3cge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnRvZG9Gb3JtIHtcbiAgICAgICAgbWF4LWhlaWdodDogODN2aDtcbiAgICB9XG59XG5cbmlucHV0W2lkJD1cImR1cGxpY2F0ZWRcIl0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGdyZWVuLCAzMCUpO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGdyZWVuLCAzMCUpO1xuICAgIH1cbn1cblxuI2V4cGFuZGVkLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmxpbmVzLXdyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgIFxuICAgIGgyIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgYXV0bztcbiAgICB9XG59XG5cbi5xdWljay12aWV3LXBvcHVwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcblxuICAgIC5xdWljay12aWV3LWNvbHVtbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG4gICAgICAgIC8qQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH0qL1xuICAgIH1cbn1cblxuLnRydW5jYXRlZC1zdHJpbmcge1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcbn1cblxuLnRhc2stdG9kby1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbn1cblxuLnRhc2stdG9kby1pdGVtX3RpdGxlLFxuLnRhc2stdG9kby1pdGVtX2luZm8sXG4udGFzay10b2RvLWl0ZW1fZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxufVxuXG4udGFzay10b2RvLWl0ZW1fZ3JvdXAge1xuICAgIHdpZHRoOiA3MCU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgIH1cbn1cblxuLnRhc2stdG9kby1pdGVtX3RpdGxlIHtcbn1cblxuLnRhc2stdG9kby1pdGVtX2luZm8ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnRcbn1cblxuLnRvZG9Sb3cge1xuICAgICYudGFzay10b2RvLWl0ZW0ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC50YXNrLXRvZG8taXRlbV90aXRsZSB7XG4gICAgICAgIHdpZHRoOiAzMCU7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFzay10b2RvLWl0ZW1faW5mbyB7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgfVxufVxuXG4udGFzay10b2RvLWl0ZW1fZHVwbGljYXRlIHtcbiAgICB3aWR0aDogMjAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiAxMCU7XG4gICAgfVxufSIsIu+7vy5zZWFyY2hBdHRyaWJ1dGVzQ29sIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0LjIpO1xuICAgIH1cbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyKTtcbiAgICB9XG59XG5cbi5yZXN1bHRzU2VjdGlvbiAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNC4yKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgIHotaW5kZXg6IDIwMDAwMDAwMDAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICB9XG59XG5cbi5zZWFyY2hSZXN1bHRzQ29sIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig3LjgpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICB9XG59IFxuXG4uc2VhcmNoSGVhZGluZyB7XG4gICAgcGFkZGluZy10b3A6cmVtLWNhbGMoMTApO1xuICAgIGgxIHtcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICB9XG59Iiwi77u/dGFibGUuY29tcGFyZVRhYmxlIHtcbiAgICB0ZCB7XG4gICAgICAgIGJvcmRlci1sZWZ0OjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICB9XG5cbiAgICB0ciB0ZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIG1heC13aWR0aDoyMDBweDtcbiAgICAgICAgbWluLXdpZHRoOjE1MHB4O1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdHIuYWxpZ25Ub3Age1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7XG4gICAgfVxuICAgIHRyLmFsaWduQm90dG9tIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246Ym90dG9tO1xuICAgIH1cbiAgICAuZ2V0UXVvdGVMaW5rIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICB9XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgYmFja2dyb3VuZDokbGlnaHQtZ3JheTtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICAgIG1heC13aWR0aDoxMjBweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjp0b3A7XG59XG5cbnRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZCB0YWJsZS5sYXJnZVByaWNlVGFibGUge1xuICAgIHRoIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgfVxuICAgIHRkIHtcbiAgICAgICAgbWluLXdpZHRoOmF1dG87XG4gICAgICAgIG1heC13aWR0aDphdXRvO1xuICAgIH1cbn1cblxudGFibGUuY29tcGFyZVRhYmxlIHRyIHRkIHRhYmxlLmxhcmdlUHJpY2VUYWJsZSB0Ym9keSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjppbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcbn1cblxuLmNvbXBhcmVPcHRpb25zIHtcbiAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgIGEge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNik7XG4gICAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICAgIHRhYmxlLmNvbXBhcmVUYWJsZSB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG5cbiAgICB0YWJsZS5jb21wYXJlVGFibGUge1xuICAgICAgICB0ciB0ZCB7XG4gICAgICAgICAgICB3aWR0aDoxMjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWF4LXdpZHRoOjEyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDUpO1xuICAgICAgICB9XG4gICAgfVxufSIsIu+7vy5zaWduSW5MZWZ0IHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLnJhcGlkb25saW5lLmNvbS9pbWcvc2lnbmluL3NpZ25pbi5qcGcnKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246dG9wIHJpZ2h0O1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIC50cnVzdHBpbG90LXdpZGdldCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSFpbXBvcnRhbnQ7XG4gICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIHJpZ2h0OiAwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpZ25JblJpZ2h0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYyg4MCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6cmVtLWNhbGMoODApO1xuICAgIH1cbn1cblxuLnNpZ25JbkdyYXlUZXh0IHtcbiAgICBjb2xvcjokZGFyay1ncmF5O1xufVxuXG4uc2lnbkluUmVnaXN0ZXJMaW5rIHtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6aW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiRibGFjaztcbiAgICB9XG59XG5cbi5yZWdpc3RlckJlbmVmaXRzIHtcbiAgICBiYWNrZ3JvdW5kOiRvZmYtYmxhY2s7XG4gICAgcGFkZGluZzpyZW0tY2FsYygxNSk7XG4gICAgaDMge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufSIsIu+7vy5icmFuZEl0ZW0ge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICAgICAgbWFyZ2luLXRvcDpyZW0tY2FsYygyMCk7XG4gICAgfVxuICAgICBpbWcge1xuICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgIH1cbiAgICAgYSB7XG4gICAgICAgICBjb2xvcjokZGFyay1ncmF5O1xuICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICB9XG4gICAgIH1cbiAgICAgaDMge1xuICAgICAgICAgZm9udC13ZWlnaHQ6bm9ybWFsO1xuICAgICB9XG59XG5cbi5icmFuZHNIZWFkaW5nIHtcbiAgICBmb250LXNpemU6MS4yOHJlbTtcbn1cblxudWwuYnJhbmROYXYge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDE1IDAgMTAgMCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC4wNzE0M3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg2IDE0KTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIucXVvdGVJdGVtIHtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbiAgICBoMyB7XG4gICAgICAgIGNvbG9yOiRibGFjazsgXG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjsgXG4gICAgICAgIGxhYmVsLm1pZGRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNtYWxsUXVvdGVJbWdDb250YWluZXIge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIG1hcmdpbjowIGF1dG87XG4gICAgcG9zaXRpb246cmVsYXRpdmU7IFxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDoxMTBweDsgXG4gICAgfVxufVxuXG4uc21hbGxRdW90ZVN0b2NrTWVzc2FnZSB7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNHB4KTsgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTYpO1xuICAgIH0gXG59XG5cbnVsLnF1b3Rlc1NlcnZpY2VzIHtcbiAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYygyNSk7XG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nLXRvcDpyZW0tY2FsYyg1KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206cmVtLWNhbGMoNSk7XG4gICAgfVxufVxuXG4ucXVvdGVzVGVhbUluZm8gaDMge1xuICAgIG1hcmdpbi1ib3R0b206MTVweDtcbn1cblxuLnZpZGVvQ29sIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tdG9wOnJlbS1jYWxjKDcwKTtcbiAgICB9IFxufVxuIiwi77u/LmJhc2tldFBhZ2Uge1xuICAgIHBhZGRpbmctdG9wOnJlbS1jYWxjKDEwKTtcbn1cbi5iYXNrZXRPcHRpb25zIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoNSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNSk7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICB9XG59XG5cbi5wcm9tb0NvZGVMaW5lIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbn1cblxuLmJhc2tldEFkZHJlc3NPcHRpb25zIHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBib3R0b206MDtcbiAgICBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxufVxuXG4uYmFza2V0QWRyZXNzQmxvY2sge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmJhc2tldENoZWNrSGVhZGluZyB7XG4gICAgZm9udC1zaXplOnJlbS1jYWxjKDE2KTtcbiAgICBmb250LXdlaWdodDpib2xkO1xufVxuXG4ucGF5bWVudE9wdGlvbnMge1xuICAgIC5jb2x1bW5zIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICB9XG5cbiAgICBsYWJlbCA+IFt0eXBlPXJhZGlvXSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxufVxuXG4ucGF5cGFsbG9nby5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmhvcml6b250YWxSZWxhdGVkUHJvZHVjdHMge1xuICAgIC5wcm9kdWN0V2lkZ2V0IGxpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGNsZWFyOiBub25lO1xuXG4gICAgICAgICAgICAmLndpZGdldEhlYWRlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI1BheW1lbnRCdXR0b24ge1xuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMjApO1xuICAgIH1cbn0iLCLvu78ucGFzdGVBcmVhIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIH1cbn0iLCIuaW5wdXQtZ3JvdXAtbGFiZWwudW5pdC1sYWJlbCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG59Iiwi77u/LyogQ3VzdG9taXplIHRoZSBsYWJlbCAodGhlIGNvbnRhaW5lcikgKi9cbi5yYWRpby1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8qIEhpZGUgdGhlIGJyb3dzZXIncyBkZWZhdWx0IHJhZGlvIGJ1dHRvbiAqL1xuLnJhZGlvLWNvbnRhaW5lciBpbnB1dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbn1cblxuLyogQ3JlYXRlIGEgY3VzdG9tIHJhZGlvIGJ1dHRvbiAqL1xuLmNoZWNrbWFyayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIGJvcmRlci1yYWRpdXM6IDI1JTtcbn1cblxuLyogT24gbW91c2Utb3ZlciwgYWRkIGEgZ3JleSBiYWNrZ3JvdW5kIGNvbG9yICovXG4ucmFkaW8tY29udGFpbmVyOmhvdmVyIGlucHV0IH4gLmNoZWNrbWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbn1cblxuLyogV2hlbiB0aGUgcmFkaW8gYnV0dG9uIGlzIGNoZWNrZWQsIGFkZCBhIGJsdWUgYmFja2dyb3VuZCAqL1xuLnJhZGlvLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya29yYW5nZTtcbn1cblxuLyogQ3JlYXRlIHRoZSBpbmRpY2F0b3IgKHRoZSBkb3QvY2lyY2xlIC0gaGlkZGVuIHdoZW4gbm90IGNoZWNrZWQpICovXG4uY2hlY2ttYXJrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTaG93IHRoZSBpbmRpY2F0b3IgKGRvdC9jaXJjbGUpIHdoZW4gY2hlY2tlZCAqL1xuLnJhZGlvLWNvbnRhaW5lciBpbnB1dDpjaGVja2VkIH4gLmNoZWNrbWFyazphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIFN0eWxlIHRoZSBpbmRpY2F0b3IgKGRvdC9jaXJjbGUpICovXG4ucmFkaW8tY29udGFpbmVyIC5jaGVja21hcms6YWZ0ZXIge1xuICAgIHRvcDogNnB4O1xuICAgIGxlZnQ6IDZweDtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cbiIsIi8qTG9nbyovXG4ucmFwaWRMb2dvIHtcbiAgICBAaW5jbHVkZSBzcHJpdGUtcmFwaWRsb2dvc21hbGwoKTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0geyBcbiAgICAucmFwaWRMb2dvIHtcbiAgICAgICAgQGluY2x1ZGUgc3ByaXRlLXJhcGlkbG9nbzsgICAgICBcbiAgICB9XG4gICAgIFxufVxuXG4vKkVuZCBMb2dvKi9cbiIsIi5ob21lM0NvbCB7XG4gICAgYmFja2dyb3VuZDogI0VFRTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNSk7XG5cbiAgICAuaG9tZTNDb2xTZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMzApO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICAgICAmLnB1bmNob3V0LWNvbnRhY3Qge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wdW5jaG91dF9jb250YWN0cy13cmFwIHtcbiAgICAgICAgICAgIC5wdW5jaG91dF9jb250YWN0cy1pdGVtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHVuY2hvdXRfY29udGFjdC1pbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNSU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHVuY2hvdXRfY29udGFjdC1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAuZ3JleS10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNjUlIC0gMXJlbSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICAgICAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubXlhY2NvdW50LW9wdGlvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMGYwO1xuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2QwY2RjZDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDQsIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDk0ODQ4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHJvcG9zaXRpb24tZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2FhYTtcblxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhYWE7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2FhYTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb3Bvc2l0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2FhYTtcblxuICAgIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDI1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLjhyZW07XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICM0OTQ4NDg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzQ5NDg0ODtcbiAgICAgICAgfVxuICAgIH1cbn1cblxudWwucmFwaWRCZW5lZml0cyB7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDtcblxuICAgIGxpIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICAgICAgICBtYXJnaW46IDAgM3B4IDAgLTJweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gICAgICAgICAgICBjb2xvcjogIzA2M2M3YztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsYWNrTGFyZ2VIZWFkaW5nSDEge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICBiYWNrZ3JvdW5kOiAjMzEzMTMxO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmxhY2tMYXJnZUhlYWRpbmcge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIG1hcmdpbjogNXB4IDVweCAxMHB4IDVweDtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbnRhYmxlLnF1aWNrT3JkZXJXaWRnZXQge1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIHRib2R5LCB0Zm9vdCwgdGhlYWQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgdGJvZHkgdHIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cblxuICAgIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDYwJTtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZXh0cmEtcXVpY2stb3JkZXItb3B0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMC42cmVtO1xufVxuXG4jcXVpY2tCdXlCdXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ob21lTmV3c1NlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNSk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLnNlY3Rpb25IZWFkZXIge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgfVxufVxuXG4uaG9tZTJDb2wge1xuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmhvbWUtcmlnaHRBZHZlcnRzIHtcbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50ZXh0LWhpZGRlbiB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMXB4LDFweCwxcHgsMXB4KTtcbn1cbiJdfQ== */
