@charset "UTF-8";
/*
base/ – Style global comme les resets, la typo, coleurs, etc. Les fichiers ne devrait pas être manipulé, il s'agit en quelques sorte d'un wireframe.
components/ –
layout/ –
pages/ – Style qui s'applique à des pages spécifique, si nécessaire
themes/ –
utils/ –
vendors/ –
main.scss –
*/
/*------------------------------------------------------------------
[Variables]
-------------------------------------------------------------------*/
/*
latoblack
latoblack_italic
latobold
latobold_italic
latohairline
latohairline_italic
latoitalic
latolight
latolight_italic
latoregular
*/
@import 'https://fonts.googleapis.com/css?family=Lato:300,400,700,900';
@font-face {
  font-family: 'lg';
  src: url("../fonts/lg.eot?n1z373");
  src: url("../fonts/lg.eot?#iefixn1z373") format("embedded-opentype"), url("../fonts/lg.woff?n1z373") format("woff"), url("../fonts/lg.ttf?n1z373") format("truetype"), url("../fonts/lg.svg?n1z373#lg") format("svg");
  font-weight: normal;
  font-style: normal; }

.lg-icon {
  font-family: 'lg';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.lg-actions .lg-next, .lg-actions .lg-prev {
  background-color: rgba(0, 0, 0, 0.45);
  border-radius: 2px;
  color: #999;
  cursor: pointer;
  display: block;
  font-size: 22px;
  margin-top: -10px;
  padding: 8px 10px 9px;
  position: absolute;
  top: 50%;
  z-index: 1080; }
  .lg-actions .lg-next.disabled, .lg-actions .lg-prev.disabled {
    pointer-events: none;
    opacity: 0.5; }
  .lg-actions .lg-next:hover, .lg-actions .lg-prev:hover {
    color: #FFF; }

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

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

@keyframes lg-right-end {
  0% {
    left: 0; }
  50% {
    left: -30px; }
  100% {
    left: 0; } }

@keyframes lg-left-end {
  0% {
    left: 0; }
  50% {
    left: 30px; }
  100% {
    left: 0; } }

.lg-outer.lg-right-end .lg-object {
  animation: lg-right-end 0.3s;
  position: relative; }

.lg-outer.lg-left-end .lg-object {
  animation: lg-left-end 0.3s;
  position: relative; }

.lg-toolbar {
  z-index: 1082;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.45); }
  .lg-toolbar .lg-icon {
    color: #999;
    cursor: pointer;
    float: right;
    font-size: 24px;
    height: 47px;
    line-height: 27px;
    padding: 10px 0;
    text-align: center;
    width: 50px;
    text-decoration: none !important;
    outline: medium none;
    transition: color 0.2s linear; }
    .lg-toolbar .lg-icon:hover {
      color: #FFF; }
  .lg-toolbar .lg-close:after {
    content: "\e070"; }
  .lg-toolbar .lg-download:after {
    content: "\e0f2"; }

.lg-sub-html {
  background-color: rgba(0, 0, 0, 0.45);
  bottom: 0;
  color: #EEE;
  font-size: 16px;
  left: 0;
  padding: 10px 40px;
  position: fixed;
  right: 0;
  text-align: center;
  z-index: 1080; }
  .lg-sub-html h4 {
    margin: 0;
    font-size: 13px;
    font-weight: bold; }
  .lg-sub-html p {
    font-size: 12px;
    margin: 5px 0 0; }

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

.lg-toolbar, .lg-prev, .lg-next {
  opacity: 1;
  transition: transform 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.35s cubic-bezier(0, 0, 0.25, 1) 0s, color 0.2s linear; }

.lg-hide-items .lg-prev {
  opacity: 0;
  transform: translate3d(-10px, 0, 0); }

.lg-hide-items .lg-next {
  opacity: 0;
  transform: translate3d(10px, 0, 0); }

.lg-hide-items .lg-toolbar {
  opacity: 0;
  transform: translate3d(0, -10px, 0); }

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-object {
  transform: scale3d(0.5, 0.5, 0.5);
  opacity: 0;
  transition: transform 250ms cubic-bezier(0, 0, 0.25, 1) 0s, opacity 250ms cubic-bezier(0, 0, 0.25, 1) !important;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%; }

body:not(.lg-from-hash) .lg-outer.lg-start-zoom .lg-item.lg-complete .lg-object {
  transform: scale3d(1, 1, 1);
  opacity: 1; }

.lg-outer .lg-thumb-outer {
  background-color: #0D0A0A;
  bottom: 0;
  position: absolute;
  width: 100%;
  z-index: 1080;
  max-height: 350px;
  transform: translate3d(0, 100%, 0);
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1) 0s; }
  .lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
    cursor: -o-grab;
    cursor: -ms-grab;
    cursor: grab; }
  .lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item {
    cursor: move;
    cursor: -o-grabbing;
    cursor: -ms-grabbing;
    cursor: grabbing; }
  .lg-outer .lg-thumb-outer.lg-dragging .lg-thumb {
    transition-duration: 0s !important; }

.lg-outer.lg-thumb-open .lg-thumb-outer {
  transform: translate3d(0, 0%, 0); }

.lg-outer .lg-thumb {
  padding: 10px 0;
  height: 100%;
  margin-bottom: -5px; }

.lg-outer .lg-thumb-item {
  border-radius: 5px;
  cursor: pointer;
  float: left;
  overflow: hidden;
  height: 100%;
  border: 2px solid #FFF;
  border-radius: 4px;
  margin-bottom: 5px; }
  @media (min-width: 1025px) {
    .lg-outer .lg-thumb-item {
      transition: border-color 0.25s ease; } }
  .lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
    border-color: #a90707; }
  .lg-outer .lg-thumb-item img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.lg-outer.lg-has-thumb .lg-item {
  padding-bottom: 120px; }

.lg-outer.lg-can-toggle .lg-item {
  padding-bottom: 0; }

.lg-outer.lg-pull-caption-up .lg-sub-html {
  transition: bottom 0.25s ease; }

.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html {
  bottom: 100px; }

.lg-outer .lg-toogle-thumb {
  background-color: #0D0A0A;
  border-radius: 2px 2px 0 0;
  color: #999;
  cursor: pointer;
  font-size: 24px;
  height: 39px;
  line-height: 27px;
  padding: 5px 0;
  position: absolute;
  right: 20px;
  text-align: center;
  top: -39px;
  width: 50px; }
  .lg-outer .lg-toogle-thumb:after {
    content: "\e1ff"; }
  .lg-outer .lg-toogle-thumb:hover {
    color: #FFF; }

.lg-outer .lg-video-cont {
  display: inline-block;
  vertical-align: middle;
  max-width: 1140px;
  max-height: 100%;
  width: 100%;
  padding: 0 5px; }

.lg-outer .lg-video {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  position: relative; }
  .lg-outer .lg-video .lg-object {
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important; }
  .lg-outer .lg-video .lg-video-play {
    width: 84px;
    height: 59px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -42px;
    margin-top: -30px;
    z-index: 1080;
    cursor: pointer; }

.lg-outer .lg-has-vimeo .lg-video-play {
  background: url("../img/vimeo-play.png") no-repeat scroll 0 0 transparent; }

.lg-outer .lg-has-vimeo:hover .lg-video-play {
  background: url("../img/vimeo-play.png") no-repeat scroll 0 -58px transparent; }

.lg-outer .lg-has-html5 .lg-video-play {
  background: transparent url("../img/video-play.png") no-repeat scroll 0 0;
  height: 64px;
  margin-left: -32px;
  margin-top: -32px;
  width: 64px;
  opacity: 0.8; }

.lg-outer .lg-has-html5:hover .lg-video-play {
  opacity: 1; }

.lg-outer .lg-has-youtube .lg-video-play {
  background: url("../img/youtube-play.png") no-repeat scroll 0 0 transparent; }

.lg-outer .lg-has-youtube:hover .lg-video-play {
  background: url("../img/youtube-play.png") no-repeat scroll 0 -60px transparent; }

.lg-outer .lg-video-object {
  width: 100% !important;
  height: 100% !important;
  position: absolute;
  top: 0;
  left: 0; }

.lg-outer .lg-has-video .lg-video-object {
  visibility: hidden; }

.lg-outer .lg-has-video.lg-video-playing .lg-object, .lg-outer .lg-has-video.lg-video-playing .lg-video-play {
  display: none; }

.lg-outer .lg-has-video.lg-video-playing .lg-video-object {
  visibility: visible; }

.lg-progress-bar {
  background-color: #333;
  height: 5px;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1083;
  opacity: 0;
  transition: opacity 0.08s ease 0s; }
  .lg-progress-bar .lg-progress {
    background-color: #a90707;
    height: 5px;
    width: 0; }
  .lg-progress-bar.lg-start .lg-progress {
    width: 100%; }
  .lg-show-autoplay .lg-progress-bar {
    opacity: 1; }

.lg-autoplay-button:after {
  content: "\e01d"; }
  .lg-show-autoplay .lg-autoplay-button:after {
    content: "\e01a"; }

.lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-img-wrap, .lg-outer.lg-css3.lg-zoom-dragging .lg-item.lg-complete.lg-zoomable .lg-image {
  transition-duration: 0s; }

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-img-wrap {
  transition: left 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, top 0.3s cubic-bezier(0, 0, 0.25, 1) 0s;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden; }

.lg-outer .lg-item.lg-complete.lg-zoomable .lg-image {
  transform: scale3d(1, 1, 1);
  transition: transform 0.3s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.15s !important;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  backface-visibility: hidden; }

#lg-zoom-in:after {
  content: "\e311"; }

#lg-actual-size {
  font-size: 20px; }
  #lg-actual-size:after {
    content: "\e033"; }

#lg-zoom-out {
  opacity: 0.5;
  pointer-events: none; }
  #lg-zoom-out:after {
    content: "\e312"; }
  .lg-zoomed #lg-zoom-out {
    opacity: 1;
    pointer-events: auto; }

.lg-outer .lg-pager-outer {
  bottom: 60px;
  left: 0;
  position: absolute;
  right: 0;
  text-align: center;
  z-index: 1080;
  height: 10px; }
  .lg-outer .lg-pager-outer.lg-pager-hover .lg-pager-cont {
    overflow: visible; }

.lg-outer .lg-pager-cont {
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  position: relative;
  vertical-align: top;
  margin: 0 5px; }
  .lg-outer .lg-pager-cont:hover .lg-pager-thumb-cont {
    opacity: 1;
    transform: translate3d(0, 0, 0); }
  .lg-outer .lg-pager-cont.lg-pager-active .lg-pager {
    box-shadow: 0 0 0 2px white inset; }

.lg-outer .lg-pager-thumb-cont {
  background-color: #fff;
  color: #FFF;
  bottom: 100%;
  height: 83px;
  left: 0;
  margin-bottom: 20px;
  margin-left: -60px;
  opacity: 0;
  padding: 5px;
  position: absolute;
  width: 120px;
  border-radius: 3px;
  transition: opacity 0.15s ease 0s, transform 0.15s ease 0s;
  transform: translate3d(0, 5px, 0); }
  .lg-outer .lg-pager-thumb-cont img {
    width: 100%;
    height: 100%; }

.lg-outer .lg-pager {
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.7) inset;
  display: block;
  height: 12px;
  transition: box-shadow 0.3s ease 0s;
  width: 12px; }
  .lg-outer .lg-pager:hover, .lg-outer .lg-pager:focus {
    box-shadow: 0 0 0 8px white inset; }

.lg-outer .lg-caret {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px dashed;
  bottom: -10px;
  display: inline-block;
  height: 0;
  left: 50%;
  margin-left: -5px;
  position: absolute;
  vertical-align: middle;
  width: 0; }

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

.group {
  *zoom: 1; }

.group:before, .group:after {
  display: table;
  content: "";
  line-height: 0; }

.group:after {
  clear: both; }

.lg-outer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  opacity: 0;
  transition: opacity 0.15s ease 0s; }
  .lg-outer * {
    box-sizing: border-box; }
  .lg-outer.lg-visible {
    opacity: 1; }
  .lg-outer.lg-css3 .lg-item.lg-prev-slide, .lg-outer.lg-css3 .lg-item.lg-next-slide, .lg-outer.lg-css3 .lg-item.lg-current {
    transition-duration: inherit !important;
    transition-timing-function: inherit !important; }
  .lg-outer.lg-css3.lg-dragging .lg-item.lg-prev-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-next-slide, .lg-outer.lg-css3.lg-dragging .lg-item.lg-current {
    transition-duration: 0s !important;
    opacity: 1; }
  .lg-outer.lg-grab img.lg-object {
    cursor: -o-grab;
    cursor: -ms-grab;
    cursor: grab; }
  .lg-outer.lg-grabbing img.lg-object {
    cursor: move;
    cursor: -o-grabbing;
    cursor: -ms-grabbing;
    cursor: grabbing; }
  .lg-outer .lg {
    height: 100%;
    width: 100%;
    position: relative;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    max-height: 100%; }
  .lg-outer .lg-inner {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    white-space: nowrap; }
  .lg-outer .lg-item {
    background: url("../img/loading.gif") no-repeat scroll center center transparent;
    display: none !important; }
  .lg-outer.lg-css3 .lg-prev-slide, .lg-outer.lg-css3 .lg-current, .lg-outer.lg-css3 .lg-next-slide {
    display: inline-block !important; }
  .lg-outer.lg-css .lg-current {
    display: inline-block !important; }
  .lg-outer .lg-item, .lg-outer .lg-img-wrap {
    display: inline-block;
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%; }
    .lg-outer .lg-item:before, .lg-outer .lg-img-wrap:before {
      content: "";
      display: inline-block;
      height: 50%;
      width: 1px;
      margin-right: -1px; }
  .lg-outer .lg-img-wrap {
    position: absolute;
    padding: 0 5px;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0; }
  .lg-outer .lg-item.lg-complete {
    background-image: none; }
  .lg-outer .lg-item.lg-current {
    z-index: 1060; }
  .lg-outer .lg-image {
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    max-height: 100%;
    width: auto !important;
    height: auto !important; }
  .lg-outer.lg-show-after-load .lg-item .lg-object, .lg-outer.lg-show-after-load .lg-item .lg-video-play {
    opacity: 0;
    transition: opacity 0.15s ease 0s; }
  .lg-outer.lg-show-after-load .lg-item.lg-complete .lg-object, .lg-outer.lg-show-after-load .lg-item.lg-complete .lg-video-play {
    opacity: 1; }
  .lg-outer .lg-empty-html {
    display: none; }
  .lg-outer.lg-hide-download #lg-download {
    display: none; }

.lg-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1040;
  background-color: #000;
  opacity: 0;
  transition: opacity 0.15s ease 0s; }
  .lg-backdrop.in {
    opacity: 1; }

.lg-css3.lg-no-trans .lg-prev-slide, .lg-css3.lg-no-trans .lg-next-slide, .lg-css3.lg-no-trans .lg-current {
  transition: none 0s ease 0s !important; }

.lg-css3.lg-use-css3 .lg-item {
  backface-visibility: hidden; }

.lg-css3.lg-use-left .lg-item {
  backface-visibility: hidden; }

.lg-css3.lg-fade .lg-item {
  opacity: 0; }
  .lg-css3.lg-fade .lg-item.lg-current {
    opacity: 1; }
  .lg-css3.lg-fade .lg-item.lg-prev-slide, .lg-css3.lg-fade .lg-item.lg-next-slide, .lg-css3.lg-fade .lg-item.lg-current {
    transition: opacity 0.1s ease 0s; }

.lg-css3.lg-slide.lg-use-css3 .lg-item {
  opacity: 0; }
  .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide {
    transform: translate3d(-100%, 0, 0); }
  .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide {
    transform: translate3d(100%, 0, 0); }
  .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
    transform: translate3d(0, 0, 0);
    opacity: 1; }
  .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-css3 .lg-item.lg-current {
    transition: transform 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s; }

.lg-css3.lg-slide.lg-use-left .lg-item {
  opacity: 0;
  position: absolute;
  left: 0; }
  .lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide {
    left: -100%; }
  .lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide {
    left: 100%; }
  .lg-css3.lg-slide.lg-use-left .lg-item.lg-current {
    left: 0;
    opacity: 1; }
  .lg-css3.lg-slide.lg-use-left .lg-item.lg-prev-slide, .lg-css3.lg-slide.lg-use-left .lg-item.lg-next-slide, .lg-css3.lg-slide.lg-use-left .lg-item.lg-current {
    transition: left 1s cubic-bezier(0, 0, 0.25, 1) 0s, opacity 0.1s ease 0s; }

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

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

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

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

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

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

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../images/ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../../bower_components/slick-carousel/slick/fonts/slick.eot");
  src: url("../../bower_components/slick-carousel/slick/fonts/slick.eot?#iefix") format("embedded-opentype"), url("../../bower_components/slick-carousel/slick/fonts/slick.woff") format("woff"), url("../../bower_components/slick-carousel/slick/fonts/slick.ttf") format("truetype"), url("../../bower_components/slick-carousel/slick/fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;

At the bottom of this section, we provide information about the spritesheet itself
$spritesheet: width height image $spritesheet-sprites;
*/
/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
  @include sprite-width($icon-home);
}

.icon-email {
  @include sprite($icon-email);
}
*/
/*
The `sprites` mixin generates identical output to the CSS template
  but can be overridden inside of SCSS

@include sprites($spritesheet-sprites);
*/
.sprite {
  display: inline-block; }
  .sprite--bloc-bg-tarterie {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: 0px 0px;
    width: 2000px;
    height: 958px; }
  .sprite--check {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -310px -958px;
    width: 13px;
    height: 10px; }
  .sprite--icon-area-lg {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -153px -958px;
    width: 36px;
    height: 34px; }
  .sprite--icon-area {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -287px -958px;
    width: 23px;
    height: 22px; }
  .sprite--icon-bathroom-lg {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: 0px -958px;
    width: 48px;
    height: 44px; }
  .sprite--icon-bathroom {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -189px -958px;
    width: 31px;
    height: 29px; }
  .sprite--icon-garage-lg {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -103px -958px;
    width: 50px;
    height: 34px; }
  .sprite--icon-garage {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -255px -958px;
    width: 32px;
    height: 22px; }
  .sprite--icon-rooms-lg {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -48px -958px;
    width: 55px;
    height: 36px; }
  .sprite--icon-rooms {
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -220px -958px;
    width: 35px;
    height: 24px; }

.sprite--icon-bathroom-lg {
  margin-top: -10px !important; }

/*
<div class="palette">
    <div class="color primary"><div class="variants"></div></div>
    <div class="color utility"><div class="variants"></div></div>
    <div class="color accent"><div class="variants"></div></div>
    <div class="color secondary"><div class="variants"></div></div>
    <div class="color foreground"><div class="variants"></div></div>
    <div class="color background"><div class="variants"></div></div>
</div>
 */
.palette {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  max-width: 100%; }

.color {
  width: calc(20% - 1rem);
  height: 170px;
  display: block;
  border: 1px solid #fff;
  position: relative; }
  .color:before, .color:after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 30%;
    bottom: 0;
    left: 0;
    border-top: 1px solid #fff;
    padding: 0.5rem;
    text-transform: uppercase;
    font-size: 85%;
    overflow: hidden;
    word-wrap: nowrap;
    text-overflow: ellipsis; }
  .color:before {
    background-color: white;
    font-weight: bold; }
  .color:after {
    padding-top: 1.5rem;
    font-size: 70%;
    color: gray; }
  .color.primary {
    background-color: #41b5e4; }
    .color.primary:before {
      content: "primary"; }
    .color.primary:after {
      content: "#41b5e4"; }
    .color.primary .variants {
      border-left: 2px solid white;
      border-bottom: 2px solid white;
      position: absolute;
      height: 7.5rem;
      width: 1.5rem;
      right: 0;
      top: 0;
      background: linear-gradient(to bottom, #41b5e4 0rem, #41b5e4 1.5rem, #fff 1.5rem, #fff 3rem, #54585a 3rem, #54585a 4.5rem, #e3e3e3 4.5rem, #e3e3e3 6rem, #3397bf 6rem, #3397bf 7.5rem); }
  .color.link {
    background-color: #41b5e4; }
    .color.link:before {
      content: "link"; }
    .color.link:after {
      content: "#41b5e4"; }
    .color.link .variants {
      border-left: 2px solid white;
      border-bottom: 2px solid white;
      position: absolute;
      height: 9rem;
      width: 1.5rem;
      right: 0;
      top: 0;
      background: linear-gradient(to bottom, #41b5e4 0rem, #41b5e4 1.5rem, #54585a 1.5rem, #54585a 3rem, #6b6b6b 3rem, #6b6b6b 4.5rem, #41b5e4 4.5rem, #41b5e4 6rem, #242d39 6rem, #242d39 7.5rem, #fff 7.5rem, #fff 9rem); }
  .color.foreground {
    background-color: #806a56; }
    .color.foreground:before {
      content: "foreground"; }
    .color.foreground:after {
      content: "#806a56"; }
    .color.foreground .variants {
      border-left: 2px solid white;
      border-bottom: 2px solid white;
      position: absolute;
      height: 3rem;
      width: 1.5rem;
      right: 0;
      top: 0;
      background: linear-gradient(to bottom, #806a56 0rem, #806a56 1.5rem, #8ec549 1.5rem, #8ec549 3rem); }
  .color.background {
    background-color: #e9e9e9; }
    .color.background:before {
      content: "background"; }
    .color.background:after {
      content: "#e9e9e9"; }
    .color.background .variants {
      border-left: 2px solid white;
      border-bottom: 2px solid white;
      position: absolute;
      height: 4.5rem;
      width: 1.5rem;
      right: 0;
      top: 0;
      background: linear-gradient(to bottom, #e9e9e9 0rem, #e9e9e9 1.5rem, #ffffff 1.5rem, #ffffff 3rem, #000 3rem, #000 4.5rem); }

.clearfix, .l-page, .c-half-right__wrapper .tab-content .b-page_content .model__informations, .c-half-right__wrapper .tab-content .b-page_content .detail, .c-half-right__wrapper .tab-content .b-page_content .detail__content, .c-half-right__wrapper .b-page_content .characs ul, .c-block-listing .c-section, .c-dynamic .b-dynamic__body, .c-dynamic .b-dynamic__body__wrapper ul:not(.personal_informations), .c-tab-menu, .models .model__informations, .galleries__wrapper, .galleries__wrapper .gallery__wrapper, .c-filters__wrapper, .c-filters__wrapper .filters__used, .c-filters__wrapper .filter__list, .c-grid__wrapper .item, .c-contact .request_infos, .c-contact .projects .item {
  *zoom: 1; }
  .clearfix:before, .l-page:before, .c-half-right__wrapper .tab-content .b-page_content .model__informations:before, .c-half-right__wrapper .tab-content .b-page_content .detail:before, .c-half-right__wrapper .tab-content .b-page_content .detail__content:before, .c-half-right__wrapper .b-page_content .characs ul:before, .c-block-listing .c-section:before, .c-dynamic .b-dynamic__body:before, .c-dynamic .b-dynamic__body__wrapper ul:not(.personal_informations):before, .c-tab-menu:before, .models .model__informations:before, .galleries__wrapper:before, .galleries__wrapper .gallery__wrapper:before, .c-filters__wrapper:before, .c-filters__wrapper .filters__used:before, .c-filters__wrapper .filter__list:before, .c-grid__wrapper .item:before, .c-contact .request_infos:before, .c-contact .projects .item:before, .clearfix:after, .l-page:after, .c-half-right__wrapper .tab-content .b-page_content .model__informations:after, .c-half-right__wrapper .tab-content .b-page_content .detail:after, .c-half-right__wrapper .tab-content .b-page_content .detail__content:after, .c-half-right__wrapper .b-page_content .characs ul:after, .c-block-listing .c-section:after, .c-dynamic .b-dynamic__body:after, .c-dynamic .b-dynamic__body__wrapper ul:not(.personal_informations):after, .c-tab-menu:after, .models .model__informations:after, .galleries__wrapper:after, .galleries__wrapper .gallery__wrapper:after, .c-filters__wrapper:after, .c-filters__wrapper .filters__used:after, .c-filters__wrapper .filter__list:after, .c-grid__wrapper .item:after, .c-contact .request_infos:after, .c-contact .projects .item:after {
    content: ' ';
    display: table; }
  .clearfix:after, .l-page:after, .c-half-right__wrapper .tab-content .b-page_content .model__informations:after, .c-half-right__wrapper .tab-content .b-page_content .detail:after, .c-half-right__wrapper .tab-content .b-page_content .detail__content:after, .c-half-right__wrapper .b-page_content .characs ul:after, .c-block-listing .c-section:after, .c-dynamic .b-dynamic__body:after, .c-dynamic .b-dynamic__body__wrapper ul:not(.personal_informations):after, .c-tab-menu:after, .models .model__informations:after, .galleries__wrapper:after, .galleries__wrapper .gallery__wrapper:after, .c-filters__wrapper:after, .c-filters__wrapper .filters__used:after, .c-filters__wrapper .filter__list:after, .c-grid__wrapper .item:after, .c-contact .request_infos:after, .c-contact .projects .item:after {
    clear: both; }

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

/*! sanitize.css v4.1.0 | CC0 License | github.com/jonathantneal/sanitize.css */
/* Display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block; }

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

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

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none; }

/* Elements of HTML (https://www.w3.org/TR/html5/semantics.html)
   ========================================================================== */
/**
 * 1. Remove repeating backgrounds in all browsers (opinionated).
 * 2. Add box sizing inheritence in all browsers (opinionated).
 */
*,
::before,
::after {
  background-repeat: no-repeat;
  /* 1 */
  box-sizing: inherit;
  /* 2 */ }

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritence in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */ }

/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Add the default cursor in all browsers (opinionated).
 * 3. Add a flattened line height in all browsers (opinionated).
 * 4. Prevent font size adjustments after orientation changes in IE and iOS.
 */
html {
  box-sizing: border-box;
  /* 1 */
  cursor: default;
  /* 2 */
  font-family: sans-serif;
  /* 3 */
  line-height: 1.5;
  /* 3 */
  -ms-text-size-adjust: 100%;
  /* 4 */
  -webkit-text-size-adjust: 100%;
  /* 5 */ }

/* Sections (https://www.w3.org/TR/html5/sections.html)
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0; }

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

/* Grouping content (https://www.w3.org/TR/html5/grouping-content.html)
   ========================================================================== */
/**
 * 1. Correct font sizing inheritance and scaling in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * 1. Correct the height in Firefox.
 * 2. Add visible overflow in Edge and IE.
 */
hr {
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
nav ol,
nav ul {
  list-style: none; }

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Add a bordered underline effect in all browsers.
 * 2. Remove text decoration in Firefox 40+.
 */
abbr[title] {
  border-bottom: 1px dotted;
  /* 1 */
  text-decoration: none;
  /* 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; }

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

/**
 * Add the correct colors in IE 9-.
 */
mark {
  background-color: #ffff00;
  color: #000000; }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Correct the font size in all browsers.
 */
small {
  font-size: 83.3333%; }

/**
 * Change the positioning on superscript and subscript elements
 * in all browsers (opinionated).
 * 1. Correct the font size in all browsers.
 */
sub,
sup {
  font-size: 83.3333%;
  /* 1 */
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

/*
 * Remove the text shadow on text selections (opinionated).
 * 1. Restore the coloring undone by defining the text shadow (opinionated).
 */

::selection {
  background-color: #b3d4fc;
  /* 1 */
  color: #000000;
  /* 1 */
  text-shadow: none; }

/* Embedded content (https://www.w3.org/TR/html5/embedded-content-0.html)
   ========================================================================== */
/*
 * Change the alignment on media elements in all browers (opinionated).
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

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

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
svg {
  fill: currentColor; }

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

/* Links (https://www.w3.org/TR/html5/links.html#links)
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove the gaps in underlines in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * Remove the outline when hovering in all browsers (opinionated).
 */
a:hover {
  outline-width: 0; }

/* Tabular data (https://www.w3.org/TR/html5/tabular-data.html)
   ========================================================================== */
/*
 * Remove border spacing in all browsers (opinionated).
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

/* transform-style:  (https://www.w3.org/TR/html5/forms.html)
   ========================================================================== */
/**
 * 1. Remove the default styling in all browsers (opinionated).
 * 3. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  background-color: transparent;
  /* 1 */
  border-style: none;
  /* 1 */
  color: inherit;
  /* 1 */
  font-size: 1em;
  /* 1 */
  margin: 0;
  /* 3 */ }

/**
 * Correct the overflow in IE.
 * 1. Correct the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

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

/**
 * 1. Prevent the 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 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Correct the focus styles unset by the previous rule.
 */
:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the border, margin, and padding in all browsers.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: .35em .625em .75em; }

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

/**
 * 1. Remove the vertical scrollbar in IE.
 * 2. Change the resize direction on textareas in all browsers (opinionated).
 */
textarea {
  overflow: auto;
  /* 1 */
  resize: vertical;
  /* 2 */ }

/**
 * Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  padding: 0; }

/**
 * Correct the cursor style on increment and decrement buttons in Chrome.
 */
::-webkit-inner-spin-button,
::-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 for OS X.
 */
::-webkit-search-cancel-button,
::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Correct the text style on placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: .54; }

/**
 * 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 */ }

/* WAI-ARIA (https://www.w3.org/TR/html5/dom.html#wai-aria)
   ========================================================================== */
/**
 * Change the cursor on busy elements (opinionated).
 */
[aria-busy="true"] {
  cursor: progress; }

/*
 * Change the cursor on control elements (opinionated).
 */
[aria-controls] {
  cursor: pointer; }

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements (opinionated).
 */
[aria-disabled] {
  cursor: default; }

/* User interaction (https://www.w3.org/TR/html5/editing.html)
   ========================================================================== */
/*
 * Remove the tapping delay on clickable elements (opinionated).
 * 1. Remove the tapping delay in IE 10.
 */
a,
area,
button,
input,
label,
select,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  /* 1 */
  touch-action: manipulation; }

/*
 * Change the display on visually hidden accessible elements (opinionated).
 */
[hidden][aria-hidden="false"] {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute; }

[hidden][aria-hidden="false"]:focus {
  clip: auto; }

body:before {
  content: "smartphone 768";
  display: none; }
  @media (min-width: 1480px) {
    body:before {
      content: "desktop 1600"; } }
  @media (min-width: 1280px) and (max-width: 1479px) {
    body:before {
      content: "desktop 1200"; } }
  @media (min-width: 992px) and (max-width: 1279px) {
    body:before {
      content: "desktop 960"; } }
  @media (min-width: 768px) and (max-width: 991px) {
    body:before {
      content: "tablet 768"; } }

html {
  font-size: 16px; }

body {
  font-family: sans-serif;
  line-height: 1.4; }

h1 {
  font-size: 40px;
  font-size: 2.5rem; }

h2 {
  font-size: 32px;
  font-size: 2rem; }

h3 {
  font-size: 28px;
  font-size: 1.75rem; }

h4 {
  font-size: 24px;
  font-size: 1.5rem; }

h5 {
  font-size: 20px;
  font-size: 1.25rem; }

h6 {
  font-size: 16px;
  font-size: 1rem; }

/*
@font-face {
    font-family: 'latoblack';
    src: url('../fonts/lato-black-webfont.woff2') format('woff2'),
         url('../fonts/lato-black-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'latoblack_italic';
    src: url('../fonts/lato-blackitalic-webfont.woff2') format('woff2'),
         url('../fonts/lato-blackitalic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'latobold';
    src: url('../fonts/lato-bold-webfont.woff2') format('woff2'),
         url('../fonts/lato-bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'latobold_italic';
    src: url('../fonts/lato-bolditalic-webfont.woff2') format('woff2'),
         url('../fonts/lato-bolditalic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}


@font-face {
    font-family: 'latohairline';
    src: url('../fonts/lato-hairline-webfont.woff2') format('woff2'),
         url('../fonts/lato-hairline-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}


@font-face {
    font-family: 'latohairline_italic';
    src: url('../fonts/lato-hairlineitalic-webfont.woff2') format('woff2'),
         url('../fonts/lato-hairlineitalic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'latoitalic';
    src: url('../fonts/lato-italic-webfont.woff2') format('woff2'),
         url('../fonts/lato-italic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'latolight';
    src: url('../fonts/lato-light-webfont.woff2') format('woff2'),
         url('../fonts/lato-light-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'latolight_italic';
    src: url('../fonts/lato-lightitalic-webfont.woff2') format('woff2'),
         url('../fonts/lato-lightitalic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}




@font-face {
    font-family: 'latoregular';
    src: url('../fonts/lato-regular-webfont.woff2') format('woff2'),
         url('../fonts/lato-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}*/
.hidden {
  display: none; }

.gap {
  padding: 0 15px; }

.l-header {
  width: 100%;
  background: #fff;
  z-index: 999;
  border-bottom: 1px solid #e3e3e3;
  transition: box-shadow 0.2s ease;
  box-shadow: none; }
  .l-header.sticky {
    position: fixed;
    box-shadow: 0 25px 40px -20px rgba(84, 88, 90, 0.15); }
  @media (max-width: 767px) {
    .l-header {
      position: fixed; } }

.l-page {
  position: relative;
  background: #fff; }
  @media (max-width: 767px) {
    .l-page {
      padding-top: 75px; } }

.c-menu-primary {
  position: relative; }
  .c-menu-primary--mobile {
    display: none; }
    @media (max-width: 767px) {
      .c-menu-primary--mobile {
        display: block !important; } }
    .c-menu-primary--mobile .logo img {
      max-height: 40px; }
    .c-menu-primary--mobile .menu-mobile-cta {
      display: -ms-flexbox;
      display: flex;
      text-transform: uppercase;
      font-size: 15px;
      font-size: 0.9375rem; }
      .c-menu-primary--mobile .menu-mobile-cta strong {
        width: 100%;
        text-align: center;
        background: #41b5e4; }
        .c-menu-primary--mobile .menu-mobile-cta strong:hover {
          background: #3397bf; }
        .c-menu-primary--mobile .menu-mobile-cta strong a {
          color: white;
          width: 100%;
          padding: 5px;
          display: inline-block; }
        .c-menu-primary--mobile .menu-mobile-cta strong + strong {
          border-left: 1px solid white; }
  @media (max-width: 767px) {
    .c-menu-primary {
      display: none; } }
  .c-menu-primary__wrapper {
    font-size: 0; }
    @media (min-width: 1480px) {
      .c-menu-primary__wrapper {
        padding: 0 8.33333%;
        padding-top: 25px;
        padding-bottom: 20px;
        max-width: none !important;
        width: 100% !important; } }
    @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px), (min-width: 1280px) and (max-width: 1479px) {
      .c-menu-primary__wrapper {
        max-width: 90% !important;
        padding: 25px 0 20px;
        margin: 0 auto; } }
    @media (max-width: 767px) {
      .c-menu-primary__wrapper {
        padding: 15px 0;
        max-width: 90%;
        margin: 0 auto auto; } }
  .c-menu-primary .logo {
    width: 12.5%;
    display: inline-block;
    vertical-align: middle;
    z-index: 99;
    position: relative; }
    @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
      .c-menu-primary .logo {
        width: 20%; } }
    @media (max-width: 767px) {
      .c-menu-primary .logo {
        display: inline-block;
        width: 50%;
        float: left; } }
  .c-menu-primary .right-menu {
    font-size: 16px;
    font-size: 1rem;
    width: auto;
    display: inline-block;
    float: right;
    text-align: right;
    max-width: 20.83333%;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }
    @media (min-width: 992px) and (max-width: 1279px) {
      .c-menu-primary .right-menu {
        width: 85%;
        max-width: none;
        left: 0; } }
    @media (min-width: 768px) and (max-width: 991px) {
      .c-menu-primary .right-menu {
        width: 80%;
        max-width: none;
        left: 0; } }
    @media (max-width: 767px) {
      .c-menu-primary .right-menu {
        display: block;
        width: 100%;
        position: relative;
        max-width: none;
        float: none;
        text-align: left;
        -ms-transform: none;
            transform: none;
        clear: both; } }
    .c-menu-primary .right-menu .highlight {
      text-transform: uppercase;
      font-weight: 900;
      font-size: 12px;
      font-size: 0.75rem;
      position: relative; }
      .c-menu-primary .right-menu .highlight:after {
        padding-left: 5px;
        content: "\f105";
        display: inline-block;
        font-family: "FontAwesome";
        position: absolute;
        top: 50%;
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
    .c-menu-primary .right-menu ul {
      color: #6b6b6b;
      position: relative;
      padding-top: 10px; }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-menu-primary .right-menu ul {
          padding: 0;
          margin: 0; } }
      .c-menu-primary .right-menu ul:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 200%;
        height: 1px;
        background: #e3e3e3; }
        @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
          .c-menu-primary .right-menu ul:after {
            display: none; } }
      .c-menu-primary .right-menu ul li {
        display: inline-block;
        padding-left: 15px; }
        .c-menu-primary .right-menu ul li a {
          color: #6b6b6b; }
          .c-menu-primary .right-menu ul li a:visited {
            color: #6b6b6b; }
          .c-menu-primary .right-menu ul li a:hover {
            color: #41b5e4; }
          .c-menu-primary .right-menu ul li a:active {
            color: #41b5e4; }
  .c-menu-primary .hamburger-menu {
    display: none;
    width: 50%;
    text-align: right; }
    @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
      .c-menu-primary .hamburger-menu {
        width: 20%;
        float: right; } }
    .c-menu-primary .hamburger-menu__wrapper {
      width: 51px;
      height: 45px;
      border-radius: 7px;
      cursor: pointer;
      background: #41b5e4;
      margin: auto;
      display: inline-block; }
    .c-menu-primary .hamburger-menu .bar {
      position: relative;
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
      background: white;
      transition: all 0ms 300ms;
      width: 35px;
      height: 5px;
      top: 50%;
      left: 50%; }
      .c-menu-primary .hamburger-menu .bar:after, .c-menu-primary .hamburger-menu .bar:before {
        width: 35px;
        height: 5px;
        content: "";
        position: absolute;
        left: 0;
        bottom: 10px;
        background: white;
        transition: bottom 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1); }
      .c-menu-primary .hamburger-menu .bar:after {
        top: 10px;
        transition: top 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1); }
    .c-menu-primary .hamburger-menu.animate .bar {
      background: rgba(255, 255, 255, 0); }
      .c-menu-primary .hamburger-menu.animate .bar:after {
        top: 0;
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
        transition: top 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1); }
      .c-menu-primary .hamburger-menu.animate .bar:before {
        bottom: 0;
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
        transition: bottom 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1); }
    @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
      .c-menu-primary .hamburger-menu {
        display: inline-block; } }
  @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
    .c-menu-primary #menu-primary-mobile {
      display: none; } }
  .c-menu-primary nav {
    width: 66.66667%;
    display: inline-block;
    text-align: center;
    font-size: 15px;
    font-size: 0.9375rem;
    vertical-align: middle; }
    @media (min-width: 1280px) and (max-width: 1479px) {
      .c-menu-primary nav {
        font-size: 13px;
        font-size: 0.8125rem; } }
    @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
      .c-menu-primary nav {
        width: 100%; } }
    .c-menu-primary nav ul {
      display: inline-block;
      margin: 0;
      padding: 0; }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-menu-primary nav ul {
          width: 100%; } }
      @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-menu-primary nav ul {
          display: none; } }
      @media (min-width: 1280px) and (max-width: 1479px), (min-width: 1480px) {
        .c-menu-primary nav ul {
          display: block !important; } }
      @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-menu-primary nav ul {
          padding: 0 8.33333%;
          position: absolute;
          top: auto;
          right: 0px;
          z-index: 999;
          width: 35%; } }
      .c-menu-primary nav ul.menu-mobile-extra li {
        background-color: #41b5e4; }
        .c-menu-primary nav ul.menu-mobile-extra li a {
          display: inline-block;
          padding-left: 10px;
          padding-right: 10px; }
        .c-menu-primary nav ul.menu-mobile-extra li .sep {
          color: white; }
    .c-menu-primary nav li {
      display: inline-block;
      margin-right: 2%;
      text-transform: uppercase;
      font-family: "Lato", sans-serif; }
      .c-menu-primary nav li a {
        color: #6b6b6b; }
        .c-menu-primary nav li a:visited {
          color: #6b6b6b; }
        .c-menu-primary nav li a:hover {
          color: #41b5e4; }
        .c-menu-primary nav li a:active {
          color: #41b5e4; }
      @media (min-width: 1280px) and (max-width: 1479px), (min-width: 1480px) {
        .c-menu-primary nav li a:hover + .sub-menu {
          visibility: visible;
          opacity: 1; } }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-menu-primary nav li.current-menu-item > a, .c-menu-primary nav li.current-page-parent > a, .c-menu-primary nav li.current-menu-parent > a {
          background: #6b6b6b; } }
      .c-menu-primary nav li.current-menu-item > a, .c-menu-primary nav li.current-menu-item > a:visited, .c-menu-primary nav li.current-page-parent > a, .c-menu-primary nav li.current-page-parent > a:visited, .c-menu-primary nav li.current-menu-parent > a, .c-menu-primary nav li.current-menu-parent > a:visited, .c-menu-primary nav li:hover > a, .c-menu-primary nav li:hover > a:visited {
        color: #41b5e4;
        font-weight: 900; }
        @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
          .c-menu-primary nav li.current-menu-item > a, .c-menu-primary nav li.current-menu-item > a:visited, .c-menu-primary nav li.current-page-parent > a, .c-menu-primary nav li.current-page-parent > a:visited, .c-menu-primary nav li.current-menu-parent > a, .c-menu-primary nav li.current-menu-parent > a:visited, .c-menu-primary nav li:hover > a, .c-menu-primary nav li:hover > a:visited {
            color: white; } }
      .c-menu-primary nav li.current-menu-item ul .current-menu-item a span::after, .c-menu-primary nav li.current-page-parent ul .current-menu-item a span::after, .c-menu-primary nav li.current-menu-parent ul .current-menu-item a span::after, .c-menu-primary nav li:hover ul .current-menu-item a span::after {
        content: "";
        background: white;
        height: 2px;
        width: 100%;
        position: absolute;
        top: 100%;
        left: 50%;
        -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-menu-primary nav li {
          display: block;
          margin: 0;
          border-bottom: 1px solid #e3e3e3; }
          .c-menu-primary nav li:last-child {
            border-bottom: 0; }
          .c-menu-primary nav li a {
            display: block;
            background: #41b5e4;
            padding: 13px 5%;
            color: #fff;
            position: relative; }
            .c-menu-primary nav li a:visited {
              color: #fff; }
            .c-menu-primary nav li a:hover {
              background: #3397bf; } }
    .c-menu-primary nav .sub-menu {
      visibility: hidden;
      transition: visibility 0.5s, opacity 0.5s ease-in-out;
      position: absolute;
      left: 0;
      top: 100%;
      width: 100%;
      z-index: 901; }
      .c-menu-primary nav .sub-menu .sep {
        padding: 0 15px; }
      .c-menu-primary nav .sub-menu ul {
        background: #41b5e4;
        color: #fff;
        width: 100%;
        padding: 18px 0 23px 0;
        text-align: center; }
      .c-menu-primary nav .sub-menu li {
        margin: 0; }
        .c-menu-primary nav .sub-menu li a {
          color: white; }
          .c-menu-primary nav .sub-menu li a:visited {
            color: white; }
          .c-menu-primary nav .sub-menu li a:hover {
            color: white; }
          .c-menu-primary nav .sub-menu li a:active {
            color: white; }
        .c-menu-primary nav .sub-menu li a {
          position: relative;
          display: inline-block; }
          .c-menu-primary nav .sub-menu li a span {
            position: relative;
            padding: 3px 0;
            display: block; }
          .c-menu-primary nav .sub-menu li a:hover span:after {
            content: "";
            background: white;
            height: 2px;
            width: 100%;
            position: absolute;
            top: 100%;
            left: 50%;
            -ms-transform: translateX(-50%);
                transform: translateX(-50%); }
        .c-menu-primary nav .sub-menu li:last-child .sep {
          display: none; }
        .c-menu-primary nav .sub-menu li:hover {
          padding-bottom: 0px; }
    .c-menu-primary nav .menu-item-has-children:hover .sub-menu {
      visibility: visible; }
    .c-menu-primary nav .menu-item-has-children > a:after {
      padding-left: 5px;
      content: "\f107";
      display: inline-block;
      font-family: "FontAwesome"; }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-menu-primary nav .menu-item-has-children > a:after {
          display: none; } }

@media (max-width: 767px) {
  .c-half-right__wrapper #Description-content.tab-content .b-page_content .model__informations > div {
    width: 50%;
    margin-bottom: 15px; } }

.single-_model .c-half-right__wrapper .tab-content .b-page_content .model__informations {
  margin-top: 25px; }

.c-half-right {
  width: 50%;
  display: inline-block;
  float: right; }
  @media (max-width: 767px), (min-width: 768px) and (max-width: 991px) {
    .c-half-right {
      width: 100%;
      float: none; } }
  .c-half-right.is-full {
    width: 100%;
    float: none; }
    .c-half-right.is-full .c-half-right__wrapper .b-dynamic__body__wrapper {
      width: 45.37815%;
      margin-right: 3.36134%; }
    .c-half-right.is-full .c-half-right__wrapper .b-dynamic__media {
      width: 49.57983%; }
    .c-half-right.is-full .c-half-right__wrapper .b-page-title {
      padding: 0; }
    .c-half-right.is-full .c-half-right__wrapper .b-page_content__bottom {
      text-align: center; }
  .c-half-right .text--grey {
    color: #54585a; }
  .c-half-right .text--light {
    color: white; }
  .c-half-right .text--base {
    color: #41b5e4; }
  .c-half-right:not(.is-full) .b-page_content, .c-half-right:not(.is-full) .b-dynamic {
    max-width: 1000px; }
  .c-half-right.has-source .b-page_content, .c-half-right.has-source .b-dynamic {
    max-width: none; }
  .c-half-right h1, .c-half-right .page-title {
    font-size: 40px;
    font-size: 2.5rem;
    text-transform: uppercase;
    font-weight: 300;
    margin-bottom: 45px; }
    @media (max-width: 767px) {
      .c-half-right h1, .c-half-right .page-title {
        font-size: 30px;
        font-size: 1.875rem; } }
    .c-half-right h1 .surtitre, .c-half-right .page-title .surtitre {
      display: block;
      font-weight: 900;
      font-size: 14px;
      font-size: 0.875rem;
      line-height: 20px; }
  .c-half-right h2, .c-half-right h3, .c-half-right h4, .c-half-right h5, .c-half-right h6 {
    margin-bottom: 10px;
    font-weight: 900;
    text-transform: uppercase;
    font-size: 20px;
    font-size: 1.25rem; }
  @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
    .c-half-right__wrapper {
      padding-bottom: 60px; } }
  .c-half-right__wrapper .sep {
    padding: 5px 0 15px 0;
    position: relative;
    clear: both; }
    .c-half-right__wrapper .sep:after {
      content: '';
      position: absolute;
      height: 1px;
      width: 100%;
      background: #e3e3e3; }
  .c-half-right__wrapper .social {
    margin-top: 10px; }
    .c-half-right__wrapper .social .sep {
      margin: 15px 0; }
    .c-half-right__wrapper .social h3 {
      display: inline-block;
      margin-top: 10px; }
    .c-half-right__wrapper .social .addthis_toolbox {
      display: inline-block;
      margin-left: 5px; }
      .c-half-right__wrapper .social .addthis_toolbox a {
        color: #54585a; }
        .c-half-right__wrapper .social .addthis_toolbox a:visited {
          color: #54585a; }
        .c-half-right__wrapper .social .addthis_toolbox a:hover {
          color: #41b5e4; }
        .c-half-right__wrapper .social .addthis_toolbox a:active {
          color: #41b5e4; }
      .c-half-right__wrapper .social .addthis_toolbox a {
        margin-left: 10px; }
  .c-half-right__wrapper .tab-content .b-page_content .c-slick .model__informations > div {
    font-size: 14px;
    font-size: 0.875rem; }
    .c-half-right__wrapper .tab-content .b-page_content .c-slick .model__informations > div .sprite {
      margin-bottom: 10px; }
  .c-half-right__wrapper .tab-content .b-page_content .model__informations {
    width: 100%; }
    .c-half-right__wrapper .tab-content .b-page_content .model__informations > div {
      width: 25%;
      float: left;
      /*@include breakpoints($xs-only) {
							width:100%;
							margin-bottom:20px;
						}*/
      text-align: center;
      font-size: 25px;
      font-size: 1.5625rem;
      font-family: "Lato", sans-serif; }
      .c-half-right__wrapper .tab-content .b-page_content .model__informations > div .sprite, .c-half-right__wrapper .tab-content .b-page_content .model__informations > div .title {
        display: block;
        margin: 0 auto; }
      .c-half-right__wrapper .tab-content .b-page_content .model__informations > div .title {
        padding: 20px 0;
        text-transform: uppercase;
        font-family: sans-serif;
        font-size: 16px;
        font-size: 1rem;
        /*@include breakpoints($xs-only) {
								padding:5px 0 0px;
							}*/ }
  .c-half-right__wrapper .tab-content .b-page_content .detail {
    margin-bottom: 35px; }
    .c-half-right__wrapper .tab-content .b-page_content .detail__label {
      margin-top: 15px; }
      .c-half-right__wrapper .tab-content .b-page_content .detail__label a {
        font-family: sans-serif;
        font-size: 14px;
        font-size: 0.875rem;
        color: #41b5e4;
        text-transform: uppercase; }
        .c-half-right__wrapper .tab-content .b-page_content .detail__label a:after {
          padding-left: 5px;
          content: "\f078";
          display: inline-block;
          font: normal normal normal 14px/1 FontAwesome;
          font-size: inherit;
          text-rendering: auto;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
    .c-half-right__wrapper .tab-content .b-page_content .detail__rdc, .c-half-right__wrapper .tab-content .b-page_content .detail__floor, .c-half-right__wrapper .tab-content .b-page_content .detail__garage {
      display: inline-block;
      float: left;
      padding: 6px 10px; }
    .c-half-right__wrapper .tab-content .b-page_content .detail__content {
      display: none;
      background: #41b5e4;
      color: white;
      margin-top: 15px;
      float: left; }
  .c-half-right__wrapper .empty-search {
    text-align: center;
    margin-bottom: 60px; }
  .c-half-right__wrapper .b-page_content__wrapper {
    padding: 45px 0; }
    .c-half-right__wrapper .b-page_content__wrapper .b-page-content, .c-half-right__wrapper .b-page_content__wrapper .b-page-title, .c-half-right__wrapper .b-page_content__wrapper .b-page_content__bottom {
      padding: 0 3.36134%; }
    @media (max-width: 767px) {
      .c-half-right__wrapper .b-page_content__wrapper .b-page-content, .c-half-right__wrapper .b-page_content__wrapper .b-page_content__bottom {
        padding: 0;
        max-width: 90% !important;
        margin: 0 auto; } }
  .c-half-right__wrapper .b-page_content .characs {
    padding-top: 30px;
    width: 100%; }
    .c-half-right__wrapper .b-page_content .characs h2, .c-half-right__wrapper .b-page_content .characs h3, .c-half-right__wrapper .b-page_content .characs h4, .c-half-right__wrapper .b-page_content .characs h5, .c-half-right__wrapper .b-page_content .characs h6 {
      margin-top: 30px; }
    .c-half-right__wrapper .b-page_content .characs ul {
      padding: 0;
      width: 100%;
      column-count: 2; }
      .c-half-right__wrapper .b-page_content .characs ul li {
        /*float:left;
						 width:50%;*/
        list-style-position: inside;
        text-indent: -1em;
        padding-left: 1em;
        padding-right: 3.36134%; }
        @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
          .c-half-right__wrapper .b-page_content .characs ul li {
            width: 100%; } }
    .c-half-right__wrapper .b-page_content .characs .sep {
      width: 200%; }
  .c-half-right.has-accordion .b-page_content__wrapper .tab-content {
    display: none; }
    .c-half-right.has-accordion .b-page_content__wrapper .tab-content:first-child {
      display: block; }

.c-half-left {
  width: 50%;
  display: inline-block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #41b5e4;
  float: left; }
  @media (min-width: 1280px) and (max-width: 1479px), (min-width: 992px) and (max-width: 1279px) {
    .c-half-left {
      background-image: url("../images/pattern.png") !important;
      background-position: top center;
      background-repeat: repeat;
      background-size: auto; } }
  @media (min-width: 1280px) and (max-width: 1479px), (min-width: 992px) and (max-width: 1279px) {
    .c-half-left #Description-medias {
      background-image: none !important; } }
  @media (max-width: 767px), (min-width: 768px) and (max-width: 991px) {
    .c-half-left {
      width: 100%; } }
  .c-half-left #google-maps img {
    visibility: visible; }
  .c-half-left h2, .c-half-left h3, .c-half-left h4, .c-half-left h5, .c-half-left h6 {
    font-weight: 300;
    font-size: 31px;
    font-size: 1.9375rem;
    text-transform: uppercase; }
    .c-half-left h2 .surtitre, .c-half-left h3 .surtitre, .c-half-left h4 .surtitre, .c-half-left h5 .surtitre, .c-half-left h6 .surtitre {
      display: block;
      font-weight: 900;
      font-size: 13px;
      font-size: 0.8125rem;
      line-height: 20px; }
  .c-half-left img {
    visibility: hidden;
    max-width: 100%; }
    @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px), (min-width: 1280px) and (max-width: 1479px) {
      .c-half-left img {
        visibility: visible; } }
  .c-half-left.sticky {
    position: fixed;
    height: 100%; }
  .c-half-left .tab-medias {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover; }
  .c-half-left.has-accordion .tab-medias {
    display: none; }
    .c-half-left.has-accordion .tab-medias:first-child {
      display: block; }
  @media (max-width: 767px), (min-width: 768px) and (max-width: 991px) {
    .c-half-left.has-accordion .tag_sell {
      display: none; } }
  .c-half-left.has-accordion .tag_sell {
    position: absolute;
    z-index: 99;
    top: 10px;
    left: 8px; }
    .c-half-left.has-accordion .tag_sell img {
      visibility: visible; }

.c-social {
  background: #3397bf; }
  .c-social a {
    color: white; }
    .c-social a:visited {
      color: white; }
    .c-social a:hover {
      color: white; }
    .c-social a:active {
      color: white; }
  @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
    .c-social__wrapper {
      max-width: 100% !important; }
      .c-social__wrapper li a {
        padding-left: 20px !important; } }
  .c-social a {
    display: block;
    padding: 15px 65px;
    margin-left: -20px;
    position: relative;
    margin-right: 20px;
    min-height: 66px; }
    @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
      .c-social a {
        padding: 15px 0;
        margin: 0; } }
    .c-social a img {
      position: absolute;
      left: 20px; }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-social a img {
          position: static;
          margin-right: 15px; } }
    .c-social a:hover {
      background: #3ba3cd; }
    .c-social a.facebook {
      padding: 15px 55px; }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-social a.facebook {
          padding: 15px 0; } }
  .c-social ul {
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 0;
    width: 100%;
    display: block; }
    .c-social ul li {
      text-transform: uppercase;
      font-size: 14px;
      font-size: 0.875rem;
      display: block;
      float: left;
      width: 25%; }
      @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-social ul li {
          width: 50%; } }
      @media (max-width: 767px) {
        .c-social ul li {
          width: 100%;
          float: none; } }

.c-block-listing .c-section--_half_block {
  width: 50%;
  display: inline-block;
  float: left; }
  @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px), (min-width: 1280px) and (max-width: 1479px) {
    .c-block-listing .c-section--_half_block {
      width: 100%;
      height: 100% !important; } }
  .c-block-listing .c-section--_half_block .c-section__body {
    position: relative;
    width: 100%;
    padding-bottom: 100%; }
    .c-block-listing .c-section--_half_block .c-section__body__wrapper {
      position: absolute;
      top: 50%;
      left: 50%;
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
      text-align: center;
      width: 80%;
      max-width: 390px; }

.c-block-listing .c-section--_std_block {
  width: 100%;
  clear: both;
  padding: 70px 3.36134%; }
  @media (max-width: 767px) {
    .c-block-listing .c-section--_std_block {
      padding: 70px 0;
      max-width: 90% !important;
      margin: 0 auto; } }
  .c-block-listing .c-section--_std_block .c-section__wrapper {
    max-width: 650px;
    margin: 0 auto; }
  .c-block-listing .c-section--_std_block.has-thumb-top {
    padding-top: 10px; }

.c-block-listing .c-section {
  text-align: center;
  background-position: center center;
  background-size: cover; }
  .c-block-listing .c-section h1, .c-block-listing .c-section h2 {
    font-weight: 900;
    font-size: 28px;
    font-size: 1.75rem;
    text-transform: uppercase; }
    .c-block-listing .c-section h1 .sub_title, .c-block-listing .c-section h2 .sub_title {
      display: block;
      font-weight: 300;
      font-size: 60px;
      font-size: 3.75rem; }
      @media (max-width: 767px) {
        .c-block-listing .c-section h1 .sub_title, .c-block-listing .c-section h2 .sub_title {
          font-size: 40px;
          font-size: 2.5rem; } }
  .c-block-listing .c-section h2 .sub_title {
    font-size: 45px;
    font-size: 2.8125rem; }
    @media (max-width: 767px) {
      .c-block-listing .c-section h2 .sub_title {
        font-size: 35px;
        font-size: 2.1875rem; } }
  .c-block-listing .c-section h3 {
    font-size: 20px;
    font-size: 1.25rem;
    text-transform: inherit;
    font-weight: 700;
    margin-bottom: 18px; }
  .c-block-listing .c-section ul {
    padding: 0;
    list-style: none; }
    .c-block-listing .c-section ul li a {
      color: white; }
      .c-block-listing .c-section ul li a:visited {
        color: white; }
      .c-block-listing .c-section ul li a:hover {
        color: #54585a; }
      .c-block-listing .c-section ul li a:active {
        color: #54585a; }
    .c-block-listing .c-section ul li a {
      text-transform: uppercase; }
      .c-block-listing .c-section ul li a:after {
        padding-left: 5px;
        content: "\f054";
        display: inline-block;
        font: normal normal normal 14px/1 FontAwesome;
        font-size: inherit;
        text-rendering: auto;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
  .c-block-listing .c-section__media small {
    display: block;
    text-decoration: italic;
    margin-top: 5px; }

.c-credit {
  background: #41b5e4;
  color: #fff;
  border-top: 1px solid #3397bf; }
  .c-credit a {
    color: white; }
    .c-credit a:visited {
      color: white; }
    .c-credit a:hover {
      color: white; }
    .c-credit a:active {
      color: white; }
  .c-credit__wrapper {
    padding: 12px 0;
    font-size: 0; }
  .c-credit-item {
    font-size: 12px;
    font-size: 0.75rem;
    display: inline-block;
    vertical-align: top;
    float: left;
    width: 50%; }
    @media (max-width: 767px) {
      .c-credit-item {
        float: none;
        width: 100%;
        display: table-footer-group; }
        .c-credit-item:last-child {
          display: table-header-group; } }
  @media (max-width: 767px) {
    .c-credit .voyou {
      display: block; } }
  .c-credit ul {
    display: inline-block;
    float: right;
    list-style: none;
    padding: 0;
    margin: 0; }
    @media (max-width: 767px) {
      .c-credit ul {
        float: none; } }
    .c-credit ul li {
      display: inline-block;
      margin-left: 30px; }
      @media (max-width: 767px) {
        .c-credit ul li {
          margin-left: 0px;
          margin-bottom: 15px; } }

.c-btn {
  padding: 10px 25px 10px 20px;
  text-transform: uppercase;
  font-weight: 900;
  transition: all 0.5s;
  display: inline-block;
  cursor: pointer;
  position: relative; }
  .c-btn--base, .c-btn--base:visited {
    background: #41b5e4;
    color: white;
    box-shadow: inset 0px 0px 0px 2px #41b5e4; }
  .c-btn--base:hover, .c-btn--base:focus {
    background: white;
    color: #41b5e4; }
  .c-btn--revert, .c-btn--revert:visited {
    background: white;
    color: #41b5e4;
    box-shadow: inset 0px 0px 0px 2px white; }
  .c-btn--revert:hover, .c-btn--revert:focus {
    background: #41b5e4;
    color: white; }
  .c-btn:after {
    padding-left: 5px;
    content: "\f105";
    display: inline-block;
    font-family: "FontAwesome";
    position: absolute;
    right: 10px;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }

.is-full .c-dynamic {
  padding-bottom: 50px; }
  .is-full .c-dynamic .b-dynamic {
    padding: 0; }
    .is-full .c-dynamic .b-dynamic .sep {
      margin: 45px 0; }
    .is-full .c-dynamic .b-dynamic:last-child .sep {
      display: block; }

.c-dynamic {
  overflow: hidden; }
  .c-dynamic .b-dynamic {
    padding: 0 3.36134%; }
    @media (max-width: 767px) {
      .c-dynamic .b-dynamic {
        padding: 0;
        max-width: 90% !important;
        margin: 0 auto; } }
    .c-dynamic .b-dynamic:last-child .sep {
      display: none; }
    .c-dynamic .b-dynamic .sep {
      margin: 20px 0; }
    .c-dynamic .b-dynamic h2, .c-dynamic .b-dynamic h3, .c-dynamic .b-dynamic h4, .c-dynamic .b-dynamic h5, .c-dynamic .b-dynamic h6 {
      font-weight: 300;
      font-size: 31px;
      font-size: 1.9375rem;
      text-transform: uppercase; }
      .c-dynamic .b-dynamic h2 .surtitre, .c-dynamic .b-dynamic h3 .surtitre, .c-dynamic .b-dynamic h4 .surtitre, .c-dynamic .b-dynamic h5 .surtitre, .c-dynamic .b-dynamic h6 .surtitre {
        display: block;
        font-weight: 900;
        font-size: 13px;
        font-size: 0.8125rem;
        line-height: 20px; }
    @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
      .c-dynamic .b-dynamic__body {
        display: table; } }
    .c-dynamic .b-dynamic__body__wrapper {
      display: inline-block;
      float: left;
      width: 66.38655%; }
      @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
        .c-dynamic .b-dynamic__body__wrapper {
          width: 100%;
          display: table-footer-group;
          float: none; } }
      .c-dynamic .b-dynamic__body__wrapper ul:not(.personal_informations) {
        padding: 0;
        width: 100%;
        column-count: 2; }
        .c-dynamic .b-dynamic__body__wrapper ul:not(.personal_informations) li {
          list-style-position: inside;
          text-indent: -1em;
          padding-left: 1em;
          /*float:left;
							width: span(12 inside no-gutters);*/
          padding-right: 3.36134%; }
          @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
            .c-dynamic .b-dynamic__body__wrapper ul:not(.personal_informations) li {
              width: 100%; } }
      .c-dynamic .b-dynamic__body__wrapper .personal_informations {
        padding: 0;
        list-style: none; }
        .c-dynamic .b-dynamic__body__wrapper .personal_informations li {
          margin-bottom: 5px; }
          .c-dynamic .b-dynamic__body__wrapper .personal_informations li:before {
            padding-left: 5px;
            content: " ";
            display: inline-block;
            font: normal normal normal 14px/1 FontAwesome;
            font-size: inherit;
            text-rendering: auto;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            padding-right: 15px; }
        .c-dynamic .b-dynamic__body__wrapper .personal_informations .phone:before {
          font-size: 13px;
          font-size: 0.8125rem;
          content: "\f095"; }
        .c-dynamic .b-dynamic__body__wrapper .personal_informations .cell:before {
          font-size: 20px;
          font-size: 1.25rem;
          content: "\f10b"; }
        .c-dynamic .b-dynamic__body__wrapper .personal_informations .fax:before {
          font-size: 13px;
          font-size: 0.8125rem;
          content: "\f1ac"; }
        .c-dynamic .b-dynamic__body__wrapper .personal_informations .email:before {
          font-size: 13px;
          font-size: 0.8125rem;
          content: "\f0e0"; }
    .c-dynamic .b-dynamic__media {
      display: inline-block;
      width: 28.57143%;
      float: right; }
      @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
        .c-dynamic .b-dynamic__media {
          width: 100%;
          display: table-header-group;
          float: none; } }
      .c-dynamic .b-dynamic__media img {
        width: 100%;
        height: auto; }

.toggle-tab {
  background: #41b5e4;
  color: #fff;
  display: block;
  padding: 12px 3.36134%;
  margin: 0 !important;
  border-bottom: 1px solid white; }
  .toggle-tab:hover {
    cursor: pointer;
    background: #3ba3cd; }
  @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
    .toggle-tab:after {
      padding-left: 5px;
      content: "\f107";
      display: inline-block;
      font-family: "FontAwesome";
      position: absolute;
      right: 25px;
      color: #fff; }
    .toggle-tab.tab-content--active:after {
      content: "\f106"; } }

.c-tab-menu {
  background: #41b5e4;
  font-size: 14px;
  font-size: 0.875rem; }
  .c-tab-menu.xs-only li {
    float: none;
    display: block; }
  .c-tab-menu ul {
    list-style: none;
    padding: 0; }
    .c-tab-menu ul li {
      display: inline-block;
      float: left;
      transition: all 0.5s; }
      .c-tab-menu ul li a {
        color: white; }
        .c-tab-menu ul li a:visited {
          color: white; }
        .c-tab-menu ul li a:hover {
          color: white; }
        .c-tab-menu ul li a:active {
          color: white; }
      .c-tab-menu ul li a {
        display: block;
        padding: 25px 20px;
        text-transform: uppercase;
        position: relative;
        transition: all 0.5s; }
        .c-tab-menu ul li a:hover {
          background: #3ba3cd; }
        @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px), (min-width: 1280px) and (max-width: 1479px), (min-width: 1480px) {
          .c-tab-menu ul li a {
            border-right: 1px solid white; }
            .c-tab-menu ul li a h2, .c-tab-menu ul li a h3, .c-tab-menu ul li a h4, .c-tab-menu ul li a h5, .c-tab-menu ul li a h6 {
              margin: 0;
              font-weight: 400;
              font-size: 14px;
              font-size: 0.875rem; } }
        @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
          .c-tab-menu ul li a {
            border-bottom: 1px solid white; }
            .c-tab-menu ul li a h2, .c-tab-menu ul li a h3, .c-tab-menu ul li a h4, .c-tab-menu ul li a h5, .c-tab-menu ul li a h6 {
              font-weight: 900;
              font-size: 20px;
              font-size: 1.25rem; } }
      .c-tab-menu ul li.current_page_item a {
        background: white;
        color: #41b5e4; }
        @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
          .c-tab-menu ul li.current_page_item a {
            background: #3ba3cd;
            color: white; } }
        .c-tab-menu ul li.current_page_item a span {
          position: relative;
          display: inline-block; }
          @media (min-width: 768px) and (max-width: 991px), (min-width: 1280px) and (max-width: 1479px), (min-width: 1480px) {
            .c-tab-menu ul li.current_page_item a span:after {
              content: "";
              background: #41b5e4;
              height: 2px;
              width: 100%;
              position: absolute;
              top: 100%;
              left: 0%; } }
  @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
    .c-tab-menu {
      display: none; }
      .c-tab-menu ul li a {
        padding: 13px 20px;
        font-weight: 900;
        font-size: 20px;
        font-size: 1.25rem; }
        .c-tab-menu ul li a h3 {
          margin: 0; } }

.tab-content {
  display: none; }
  .tab-content.tab-content--active {
    display: block; }
  .tab-content--gallery .b-page_content__wrapper {
    padding: 0; }

.c-slick {
  margin: 0 25px; }
  .c-slick img {
    margin: 0 auto; }
  .c-slick .slick-prev, .c-slick .slick-next {
    height: 30px;
    width: 21px; }
    .c-slick .slick-prev:before, .c-slick .slick-next:before {
      display: inline-block;
      font: normal normal normal 14px/1 FontAwesome;
      font-size: inherit;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      color: #41b5e4;
      font-size: 35px;
      font-size: 2.1875rem;
      -webkit-text-stroke: 3px #fff; }
  .c-slick .slick-prev:before {
    content: "\f053"; }
  .c-slick .slick-next:before {
    content: "\f054"; }
  .c-slick .model {
    max-width: 360px;
    margin: 0 auto; }
  .c-slick .plan_description {
    text-transform: uppercase;
    font-family: sans-serif; }

.c-footer {
  background: #41b5e4;
  position: relative;
  z-index: 501; }
  .c-footer__body {
    padding: 18px 0; }

.widget-area {
  color: #fff; }
  .widget-area__wrapper {
    font-size: 0; }
  .widget-area a {
    color: #fff; }
    .widget-area a:visited {
      color: #fff; }
    .widget-area a:hover {
      color: #fff; }
    .widget-area a:active {
      color: #fff; }
  .widget-area .widget-item {
    font-size: 16px;
    font-size: 1rem;
    width: 25%;
    display: inline-block;
    float: left;
    vertical-align: top; }
    @media (max-width: 767px) {
      .widget-area .widget-item {
        width: 100%; } }
    .widget-area .widget-item .textwidget {
      font-size: 13px;
      font-size: 0.8125rem; }
      .widget-area .widget-item .textwidget p {
        margin-bottom: 15px; }
  .widget-area .widget-title {
    font-size: 14px;
    font-size: 0.875rem;
    text-transform: uppercase;
    color: #fff;
    margin: 0; }
  .widget-area ul {
    list-style: none;
    font-size: 14px;
    font-size: 0.875rem;
    text-transform: uppercase;
    margin: 0;
    padding: 0; }
    .widget-area ul a {
      margin-bottom: 10px;
      display: inline-block; }
    .widget-area ul ul {
      margin: 0 0 18px 0;
      padding: 0;
      text-transform: none; }
      .widget-area ul ul a {
        color: rgba(255, 255, 255, 0.8); }
        .widget-area ul ul a:visited {
          color: #fff; }
        .widget-area ul ul a:hover {
          color: #fff; }
        .widget-area ul ul a:active {
          color: #fff; }
      .widget-area ul ul a {
        margin-bottom: 0;
        display: inline; }

.models + .sep {
  margin-bottom: 35px; }

.models .count {
  text-align: right;
  text-transform: uppercase;
  font-family: sans-serif;
  margin-bottom: 10px; }

.models.grid .model {
  border: 1px solid #e3e3e3; }
  @media (min-width: 1280px) and (max-width: 1479px), (min-width: 1480px) {
    .models.grid .model {
      width: 30.66667%;
      float: left; }
      .models.grid .model:nth-child(3n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      .models.grid .model:nth-child(3n + 2) {
        margin-left: 34.66667%;
        margin-right: -100%;
        clear: none; }
      .models.grid .model:nth-child(3n + 3) {
        margin-left: 69.33333%;
        margin-right: -100%;
        clear: none; } }
  @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
    .models.grid .model {
      width: 48%;
      float: left; }
      .models.grid .model:nth-child(2n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      .models.grid .model:nth-child(2n + 2) {
        margin-left: 52%;
        margin-right: -100%;
        clear: none; } }
  @media (max-width: 767px) {
    .models.grid .model {
      width: 100%; } }
  .models.grid .model__title, .models.grid .model__informations, .models.grid .model__media {
    margin: 0 auto;
    border: none; }
    .models.grid .model__title img, .models.grid .model__informations img, .models.grid .model__media img {
      width: 100%;
      height: auto; }
  .models.grid .model__title, .models.grid .model__informations {
    padding: 15px 10px;
    border-top: 1px solid #e3e3e3; }

.models .model {
  margin-bottom: 35px; }
  .models .model__media {
    position: relative; }
    .models .model__media a:hover:before, .models .model__media a:hover:after {
      visibility: visible;
      opacity: 1; }
    .models .model__media a:before {
      content: "";
      background: rgba(65, 181, 228, 0.8);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      visibility: hidden;
      opacity: 0;
      transition: visibility 0.5s, opacity 0.5s ease-in-out;
      z-index: 99; }
    .models .model__media a:after {
      content: "\f002";
      display: inline-block;
      font: normal normal normal 14px/1 FontAwesome;
      font-size: inherit;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      color: white;
      font-size: 45px;
      font-size: 2.8125rem;
      position: absolute;
      top: 50%;
      left: 50%;
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
      visibility: hidden;
      opacity: 0;
      transition: visibility 0.5s, opacity 0.5s ease-in-out;
      z-index: 100; }
    .models .model__media a .tag_sell {
      position: absolute;
      top: 10px;
      left: 8px;
      width: 20%; }
  .models .model__title, .models .model__informations, .models .model__media {
    margin: 0 auto;
    border: 1px solid #e3e3e3; }
  .models .model__title, .models .model__informations {
    padding: 15px 10px; }
  .models .model__informations {
    border-top: 0; }
    .models .model__informations div {
      display: inline-block;
      float: left;
      padding-right: 20px; }
      .models .model__informations div:last-child {
        padding: 0; }
      .models .model__informations div .sprite {
        vertical-align: top;
        margin-right: 10px; }
      .models .model__informations div .sprite--icon-bathroom {
        margin-top: -5px; }
  .models .model h2, .models .model h3, .models .model h4, .models .model h5, .models .model h6 {
    margin: 0;
    font-weight: 300;
    font-size: 38px;
    font-size: 2.375rem;
    text-transform: uppercase;
    line-height: 40px; }
    .models .model h2 .surtitre, .models .model h3 .surtitre, .models .model h4 .surtitre, .models .model h5 .surtitre, .models .model h6 .surtitre {
      display: block;
      font-weight: 900;
      font-size: 13px;
      font-size: 0.8125rem;
      line-height: 20px;
      color: #54585a; }

.galleries__wrapper {
  width: 100%; }
  .galleries__wrapper .gallery__wrapper {
    width: 100%; }
    .galleries__wrapper .gallery__wrapper .item {
      float: left;
      background-size: cover;
      background-position: center center;
      z-index: 2;
      position: relative; }
      .galleries__wrapper .gallery__wrapper .item__wrapper {
        width: 33.33333%;
        float: left;
        display: inline-block;
        overflow: hidden; }
        .galleries__wrapper .gallery__wrapper .item__wrapper .item.small {
          width: 100%;
          padding-bottom: 100%; }
      .galleries__wrapper .gallery__wrapper .item.half {
        width: 66.66667%;
        padding-bottom: 33.33333%;
        display: inline-block; }
      .galleries__wrapper .gallery__wrapper .item.small {
        width: 33.33333%;
        padding-bottom: 33.33333%;
        display: inline-block; }
      .galleries__wrapper .gallery__wrapper .item.large {
        width: 66.66667%;
        padding-bottom: 66.66667%;
        display: inline-block; }
      .galleries__wrapper .gallery__wrapper .item.has-virtual {
        position: relative;
        transition: all 0.5s ease;
        z-index: 1; }
        .galleries__wrapper .gallery__wrapper .item.has-virtual:hover {
          -ms-transform: scale(1.25);
              transform: scale(1.25); }
        .galleries__wrapper .gallery__wrapper .item.has-virtual a {
          position: absolute;
          top: 0;
          bottom: 0;
          right: 0;
          left: 0;
          background: rgba(65, 181, 228, 0.7);
          font-family: "Lato", sans-serif;
          font-size: 14px;
          font-size: 0.875rem;
          color: white;
          text-transform: uppercase; }
          .galleries__wrapper .gallery__wrapper .item.has-virtual a:hover span:before {
            content: "";
            background: white;
            height: 3px;
            width: 120%;
            position: absolute;
            bottom: -9px;
            left: 50%;
            -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
          .galleries__wrapper .gallery__wrapper .item.has-virtual a span {
            position: absolute;
            top: 50%;
            left: 50%;
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
            .galleries__wrapper .gallery__wrapper .item.has-virtual a span:after {
              padding-left: 5px;
              content: "\f054";
              display: inline-block;
              font: normal normal normal 14px/1 FontAwesome;
              font-size: inherit;
              text-rendering: auto;
              -webkit-font-smoothing: antialiased;
              -moz-osx-font-smoothing: grayscale; }

.c-cordonnees__wrapper .coord {
  padding-bottom: 50px; }

.c-cordonnees__wrapper .sep {
  margin-bottom: 50px; }

.c-filters {
  margin-top: 55px;
  margin-bottom: 45px; }
  .c-filters__wrapper .filters__used .filter {
    font-size: 13px;
    font-size: 0.8125rem;
    cursor: pointer;
    padding: 10px;
    display: inline-block;
    float: left;
    margin: 7px 0;
    background: rgba(227, 227, 227, 0.35);
    margin-right: 12px;
    border-radius: 3px; }
    .c-filters__wrapper .filters__used .filter:after {
      margin-left: 7px;
      content: "\f00d";
      display: inline-block;
      font: normal normal normal 14px/1 FontAwesome;
      font-size: inherit;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
    .c-filters__wrapper .filters__used .filter:hover {
      background: #e3e3e3; }
  .c-filters__wrapper .filter__list {
    list-style: none;
    padding: 0; }
    .c-filters__wrapper .filter__list .checkbox {
      padding: 0; }
    .c-filters__wrapper .filter__list > li {
      color: white;
      background: #41b5e4;
      border: 1px solid #41b5e4;
      display: inline-block;
      float: left;
      text-transform: uppercase;
      font-family: "Lato", sans-serif;
      padding: 8px 20px;
      position: relative; }
      @media (min-width: 1280px) and (max-width: 1479px), (min-width: 1480px) {
        .c-filters__wrapper .filter__list > li {
          width: 16.34981%;
          float: left; }
          .c-filters__wrapper .filter__list > li:nth-child(6n + 1) {
            margin-left: 0;
            margin-right: -100%;
            clear: both;
            margin-left: 0; }
          .c-filters__wrapper .filter__list > li:nth-child(6n + 2) {
            margin-left: 16.73004%;
            margin-right: -100%;
            clear: none; }
          .c-filters__wrapper .filter__list > li:nth-child(6n + 3) {
            margin-left: 33.46008%;
            margin-right: -100%;
            clear: none; }
          .c-filters__wrapper .filter__list > li:nth-child(6n + 4) {
            margin-left: 50.19011%;
            margin-right: -100%;
            clear: none; }
          .c-filters__wrapper .filter__list > li:nth-child(6n + 5) {
            margin-left: 66.92015%;
            margin-right: -100%;
            clear: none; }
          .c-filters__wrapper .filter__list > li:nth-child(6n + 6) {
            margin-left: 83.65019%;
            margin-right: -100%;
            clear: none; } }
      @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-filters__wrapper .filter__list > li {
          width: 49.80989%;
          float: left;
          margin-bottom: 15px; }
          .c-filters__wrapper .filter__list > li:nth-child(2n + 1) {
            margin-left: 0;
            margin-right: -100%;
            clear: both;
            margin-left: 0; }
          .c-filters__wrapper .filter__list > li:nth-child(2n + 2) {
            margin-left: 50.19011%;
            margin-right: -100%;
            clear: none; } }
      @media (max-width: 767px) {
        .c-filters__wrapper .filter__list > li {
          width: 100%;
          margin-bottom: 15px; } }
      @media (min-width: 1280px) and (max-width: 1479px), (min-width: 1480px) {
        .c-filters__wrapper .filter__list > li:hover {
          background: white;
          color: #41b5e4;
          position: relative;
          border-bottom: 1px solid transparent; }
          .c-filters__wrapper .filter__list > li:hover ul {
            display: block; } }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-filters__wrapper .filter__list > li.open {
          background: white;
          color: #41b5e4;
          position: relative; }
          .c-filters__wrapper .filter__list > li.open ul {
            display: block;
            position: relative;
            border: 0;
            margin-top: 15px; }
            .c-filters__wrapper .filter__list > li.open ul li {
              padding-left: 0; } }
      .c-filters__wrapper .filter__list > li:last-child {
        border: 0;
        margin-right: 0;
        background: none;
        text-align: right;
        color: #54585a;
        padding-right: 0; }
        @media (max-width: 767px) {
          .c-filters__wrapper .filter__list > li:last-child {
            text-align: left;
            padding: 0; } }
        .c-filters__wrapper .filter__list > li:last-child:after {
          padding-left: 0;
          content: ""; }
      .c-filters__wrapper .filter__list > li:after {
        padding-left: 5px;
        content: "\f107";
        display: inline-block;
        font-family: "FontAwesome"; }
        @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
          .c-filters__wrapper .filter__list > li:after {
            content: ''; } }
      @media (max-width: 767px), (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
        .c-filters__wrapper .filter__list > li:before {
          padding-left: 5px;
          content: "\f107";
          display: inline-block;
          font-family: "FontAwesome";
          position: absolute;
          right: 25px;
          color: #fff; } }
    .c-filters__wrapper .filter__list ul {
      list-style: none;
      display: none;
      list-style: none;
      border: 1px solid #41b5e4;
      border-top: 0;
      padding: 1px;
      box-sizing: content-box;
      left: -1px;
      top: 100%;
      width: 100%;
      padding: 0;
      color: #54585a;
      font-size: 11px;
      font-size: 0.6875rem;
      position: absolute;
      z-index: 901;
      background: #fff;
      padding-bottom: 8px; }
      .c-filters__wrapper .filter__list ul li {
        padding: 3px 20px; }

.c-grid__wrapper .item {
  border: 1px solid #e3e3e3;
  margin-bottom: 15px; }
  @media (min-width: 1280px) and (max-width: 1479px), (min-width: 1480px) {
    .c-grid__wrapper .item {
      width: 30.66667%;
      float: left; }
      .c-grid__wrapper .item:nth-child(3n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      .c-grid__wrapper .item:nth-child(3n + 2) {
        margin-left: 34.66667%;
        margin-right: -100%;
        clear: none; }
      .c-grid__wrapper .item:nth-child(3n + 3) {
        margin-left: 69.33333%;
        margin-right: -100%;
        clear: none; } }
  @media (min-width: 768px) and (max-width: 991px), (min-width: 992px) and (max-width: 1279px) {
    .c-grid__wrapper .item {
      width: 48%;
      float: left; }
      .c-grid__wrapper .item:nth-child(2n + 1) {
        margin-left: 0;
        margin-right: -100%;
        clear: both;
        margin-left: 0; }
      .c-grid__wrapper .item:nth-child(2n + 2) {
        margin-left: 52%;
        margin-right: -100%;
        clear: none; } }
  @media (max-width: 767px) {
    .c-grid__wrapper .item {
      width: 100%; } }
  .c-grid__wrapper .item h2, .c-grid__wrapper .item h3, .c-grid__wrapper .item h4, .c-grid__wrapper .item h5, .c-grid__wrapper .item h6 {
    margin-top: 5px;
    font-weight: 300;
    font-size: 31px;
    font-size: 1.9375rem;
    text-transform: uppercase; }
    .c-grid__wrapper .item h2 .surtitre, .c-grid__wrapper .item h3 .surtitre, .c-grid__wrapper .item h4 .surtitre, .c-grid__wrapper .item h5 .surtitre, .c-grid__wrapper .item h6 .surtitre {
      display: block;
      font-weight: 900;
      font-size: 13px;
      font-size: 0.8125rem;
      line-height: 20px;
      color: #54585a; }
  .c-grid__wrapper .item__media {
    position: relative; }
    .c-grid__wrapper .item__media img {
      width: 100%;
      height: auto; }
    .c-grid__wrapper .item__media a:hover:before, .c-grid__wrapper .item__media a:hover:after {
      visibility: visible;
      opacity: 1; }
    .c-grid__wrapper .item__media a:before {
      content: "";
      background: rgba(65, 181, 228, 0.8);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      visibility: hidden;
      opacity: 0;
      transition: visibility 0.5s, opacity 0.5s ease-in-out;
      z-index: 99; }
    .c-grid__wrapper .item__media a:after {
      content: "\f002";
      display: inline-block;
      font: normal normal normal 14px/1 FontAwesome;
      font-size: inherit;
      text-rendering: auto;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      color: white;
      font-size: 45px;
      font-size: 2.8125rem;
      position: absolute;
      top: 50%;
      left: 50%;
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
      visibility: hidden;
      opacity: 0;
      transition: visibility 0.5s, opacity 0.5s ease-in-out;
      z-index: 100; }
  .c-grid__wrapper .item .item__body__wrapper {
    padding: 0 10px; }
  .c-grid__wrapper .item .social {
    border-top: 1px solid #e3e3e3; }
    .c-grid__wrapper .item .social__wrapper {
      padding: 0 10px; }
      .c-grid__wrapper .item .social__wrapper h2, .c-grid__wrapper .item .social__wrapper h3, .c-grid__wrapper .item .social__wrapper h4, .c-grid__wrapper .item .social__wrapper h5, .c-grid__wrapper .item .social__wrapper h6 {
        margin-top: 5px;
        font-family: "Lato", sans-serif;
        font-size: 17px;
        font-size: 1.0625rem;
        text-transform: uppercase;
        margin-bottom: 5px;
        display: inline-block; }
      .c-grid__wrapper .item .social__wrapper .addthis_toolbox {
        display: inline-block;
        margin-left: 5px; }
        .c-grid__wrapper .item .social__wrapper .addthis_toolbox a {
          color: #54585a; }
          .c-grid__wrapper .item .social__wrapper .addthis_toolbox a:visited {
            color: #54585a; }
          .c-grid__wrapper .item .social__wrapper .addthis_toolbox a:hover {
            color: #41b5e4; }
          .c-grid__wrapper .item .social__wrapper .addthis_toolbox a:active {
            color: #41b5e4; }
        .c-grid__wrapper .item .social__wrapper .addthis_toolbox a {
          margin-left: 10px; }

.c-search {
  float: right;
  margin-top: -61px; }
  @media (max-width: 767px) {
    .c-search {
      float: none;
      display: block;
      margin-top: 15px; } }
  .c-search .search-field {
    border: 2px solid #41b5e4;
    float: left;
    font-family: "Lato", sans-serif;
    font-weight: 900;
    color: #41b5e4;
    text-transform: uppercase;
    padding: 8px 0 8px 15px; }
    .c-search .search-field:focus {
      outline: none; }
    @media (max-width: 767px) {
      .c-search .search-field {
        width: 80%; } }
  .c-search .search-submit {
    border: 2px solid #41b5e4;
    background: #41b5e4;
    color: white;
    float: left;
    padding: 8px 10px 8px;
    border-left: 0;
    cursor: pointer;
    transition: all 0.5s linear; }
    @media (max-width: 767px) {
      .c-search .search-submit {
        width: 20%; } }
    .c-search .search-submit:hover {
      background: white;
      color: #41b5e4; }

.c-contact .head_office_info {
  width: 50%;
  float: left;
  margin-bottom: 15px; }
  @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
    .c-contact .head_office_info {
      width: 100%; } }

.c-contact .half {
  width: 49.57983%;
  display: inline-block;
  float: left; }
  @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
    .c-contact .half {
      width: 100%; } }
  .c-contact .half.half-right {
    float: right; }
    .c-contact .half.half-right textarea {
      margin-bottom: 0; }

.c-contact .projects {
  padding-bottom: 25px; }
  .c-contact .projects .item #contact_address h2, .c-contact .projects .item #contact_address h3, .c-contact .projects .item #contact_address h4, .c-contact .projects .item #contact_address h5, .c-contact .projects .item #contact_address h6, .c-contact .projects .item .open_hours h2, .c-contact .projects .item .open_hours h3, .c-contact .projects .item .open_hours h4, .c-contact .projects .item .open_hours h5, .c-contact .projects .item .open_hours h6 {
    margin-top: 0; }
  @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
    .c-contact .projects .item .open_hours h2, .c-contact .projects .item .open_hours h3, .c-contact .projects .item .open_hours h4, .c-contact .projects .item .open_hours h5, .c-contact .projects .item .open_hours h6 {
      margin-top: 15px; } }
  .c-contact .projects .item .sep {
    padding: 20px 0 20px 0; }

.pagination {
  text-align: center;
  font-family: "Lato", sans-serif;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
  margin-top: 100px; }
  .pagination a {
    color: #41b5e4; }
    .pagination a:visited {
      color: #41b5e4; }
    .pagination a:hover {
      color: #41b5e4; }
    .pagination a:active {
      color: #41b5e4; }
  .pagination .next.page-numbers {
    position: relative; }
    .pagination .next.page-numbers:after {
      content: "\f054";
      font-family: "FontAwesome";
      display: block; }
  .pagination .prev.page-numbers {
    position: relative; }
    .pagination .prev.page-numbers:after {
      content: "\f053";
      font-family: "FontAwesome";
      display: block; }
  .pagination .page-num {
    display: none; }
  .pagination a, .pagination span.current {
    display: inline-block;
    padding: 12px 18px;
    text-decoration: none;
    box-shadow: none;
    transition: all 0.2s ease; }
    .pagination a:hover, .pagination span.current:hover {
      box-shadow: inset 0px 0px 0px 2px #41b5e4; }
  .pagination span.current {
    background: #41b5e4;
    color: #fff; }

.l-body {
  overflow: hidden;
  position: relative; }

.checkbox, .radio {
  display: inline-block;
  vertical-align: middle;
  padding: 5px;
  padding-left: 0;
  position: relative;
  margin-right: 18px;
  text-align: left;
  /* Cachons la case à cocher */
  /* on prépare le label */
  /* Aspect général de la coche */
  /* Aspect si "pas cochée" */
  /* Aspect si "cochée" */
  /* disabled checkbox */
  /* accessibility */ }
  .checkbox:last-child, .radio:last-child {
    margin-right: 0; }
  .checkbox label, .radio label {
    float: left;
    position: relative; }
  .checkbox input, .radio input {
    margin-top: -4px; }
  .checkbox .opts, .radio .opts {
    display: inline-block; }
  .checkbox [type="checkbox"]:not(:checked),
  .checkbox [type="checkbox"]:checked,
  .checkbox [type="radio"]:not(:checked),
  .checkbox [type="radio"]:checked, .radio [type="checkbox"]:not(:checked),
  .radio [type="checkbox"]:checked,
  .radio [type="radio"]:not(:checked),
  .radio [type="radio"]:checked {
    position: absolute;
    left: -9999px; }
  .checkbox [type="checkbox"]:not(:checked) + label,
  .checkbox [type="checkbox"]:checked + label,
  .checkbox [type="radio"]:not(:checked) + label,
  .checkbox [type="radio"]:checked + label, .radio [type="checkbox"]:not(:checked) + label,
  .radio [type="checkbox"]:checked + label,
  .radio [type="radio"]:not(:checked) + label,
  .radio [type="radio"]:checked + label {
    position: relative;
    padding-left: 25px;
    cursor: pointer; }
  .checkbox [type="checkbox"].error + label,
  .checkbox [type="radio"].error + label, .radio [type="checkbox"].error + label,
  .radio [type="radio"].error + label {
    color: #ff0000; }
  .checkbox [type="checkbox"]:not(:checked) + label:before,
  .checkbox [type="checkbox"]:checked + label:before,
  .checkbox [type="radio"]:not(:checked) + label:before,
  .checkbox [type="radio"]:checked + label:before, .radio [type="checkbox"]:not(:checked) + label:before,
  .radio [type="checkbox"]:checked + label:before,
  .radio [type="radio"]:not(:checked) + label:before,
  .radio [type="radio"]:checked + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 15px;
    height: 15px;
    /* dim. de la case */
    background: #fff;
    border: 1px solid #41b5e4;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }
  .checkbox [type="checkbox"].error + label:before,
  .checkbox [type="radio"].error + label:before, .radio [type="checkbox"].error + label:before,
  .radio [type="radio"].error + label:before {
    border: 1px solid #ff0000; }
  .checkbox [type="checkbox"]:not(:checked) + label:after,
  .checkbox [type="checkbox"]:checked + label:after,
  .checkbox [type="radio"]:not(:checked) + label:after,
  .checkbox [type="radio"]:checked + label:after, .radio [type="checkbox"]:not(:checked) + label:after,
  .radio [type="checkbox"]:checked + label:after,
  .radio [type="radio"]:not(:checked) + label:after,
  .radio [type="radio"]:checked + label:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 2px;
    display: block;
    width: 18px;
    height: 18px;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    color: #000;
    transition: all .2s;
    /* on prévoit une animation */ }
  .checkbox [type="checkbox"]:not(:checked) + label:after,
  .checkbox [type="checkbox"]:checked + label:after,
  .checkbox [type="radio"]:not(:checked) + label:after,
  .checkbox [type="radio"]:checked + label:after, .radio [type="checkbox"]:not(:checked) + label:after,
  .radio [type="checkbox"]:checked + label:after,
  .radio [type="radio"]:not(:checked) + label:after,
  .radio [type="radio"]:checked + label:after {
    content: '';
    background-image: url(../../public/images/icon-sprite.png);
    background-position: -310px -958px;
    width: 13px;
    height: 10px; }
  .checkbox [type="checkbox"]:not(:checked) + label:after,
  .checkbox [type="checkbox"]:checked + label:after, .radio [type="checkbox"]:not(:checked) + label:after,
  .radio [type="checkbox"]:checked + label:after {
    border-radius: 0; }
  .checkbox [type="checkbox"]:not(:checked) + label:after,
  .checkbox [type="radio"]:not(:checked) + label:after, .radio [type="checkbox"]:not(:checked) + label:after,
  .radio [type="radio"]:not(:checked) + label:after {
    opacity: 0; }
  .checkbox [type="checkbox"]:checked + label:after,
  .checkbox [type="radio"]:checked + label:after, .radio [type="checkbox"]:checked + label:after,
  .radio [type="radio"]:checked + label:after {
    opacity: 1; }
  .checkbox [type="checkbox"]:disabled:not(:checked) + label:before,
  .checkbox [type="checkbox"]:disabled:checked + label:before,
  .checkbox [type="radio"]:disabled:not(:checked) + label:before,
  .checkbox [type="radio"]:disabled:checked + label:before, .radio [type="checkbox"]:disabled:not(:checked) + label:before,
  .radio [type="checkbox"]:disabled:checked + label:before,
  .radio [type="radio"]:disabled:not(:checked) + label:before,
  .radio [type="radio"]:disabled:checked + label:before {
    box-shadow: none;
    border-color: #fff;
    background-color: #fff; }
  .checkbox [type="checkbox"]:disabled:checked + label:after,
  .checkbox [type="radio"]:disabled:checked + label:after, .radio [type="checkbox"]:disabled:checked + label:after,
  .radio [type="radio"]:disabled:checked + label:after {
    color: #999; }
  .checkbox [type="checkbox"]:disabled + label,
  .checkbox [type="radio"]:disabled + label, .radio [type="checkbox"]:disabled + label,
  .radio [type="radio"]:disabled + label {
    color: #aaa; }

/*------------------------------------------------------------------
[Éléments HTML]
-------------------------------------------------------------------*/
:root {
  font-size: 15px; }

html, body {
  min-height: 100%;
  height: 100%; }

body {
  color: #54585a;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  letter-spacing: 1px;
  letter-spacing: 0.05rem;
  background: #41b5e4;
  -webkit-font-smoothing: antialiased; }
  body a {
    color: #41b5e4; }
    body a:visited {
      color: #41b5e4; }
    body a:hover {
      color: #54585a; }
    body a:active {
      color: #54585a; }
  body a {
    text-decoration: none; }

p, ul {
  margin: 0 0 25px 0; }
  p:last-child, ul:last-child {
    margin-bottom: 0; }

ul {
  list-style-position: inside; }

h1, h2, h3, h4, h5, h6 {
  line-height: 1.2;
  font-weight: normal; }
  h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    display: block;
    margin-top: 7px;
    line-height: 1.2; }

@media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
  .hide-to-small {
    display: none; } }

.xs-only {
  display: none; }
  @media (max-width: 767px), (min-width: 992px) and (max-width: 1279px) {
    .xs-only {
      display: block; } }

h1 {
  font-size: 55px;
  font-size: 3.4375rem; }

.mobile-title {
  margin-top: 15px;
  padding: 0 3.36134%; }

h3 {
  font-size: 30px;
  font-size: 1.875rem;
  margin-bottom: 25px; }

.home .c-half-right:not(.is-full) .b-page_content {
  max-width: none; }

input[type=text], input[type=number], input[type=email], textarea, form .select {
  font-size: 15px;
  font-size: 0.9375rem;
  background: #fff;
  border: 1px solid #e3e3e3;
  padding: 14px;
  outline: none;
  display: inline-block;
  width: 100%;
  resize: none;
  transition: box-shadow 0.2s ease;
  color: #54585a;
  margin-bottom: 10px;
  font-family: "Lato", sans-serif;
  font-weight: 900; }
  input.error[type=text], input.error[type=number], input.error[type=email], textarea.error, form .error.select {
    border-color: rgba(255, 0, 0, 0.6); }
  input[type=text]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, textarea:-ms-input-placeholder, form .select:-ms-input-placeholder {
    text-transform: uppercase; }
  input[type=text]::placeholder, input[type=number]::placeholder, input[type=email]::placeholder, textarea::placeholder, form .select::placeholder {
    text-transform: uppercase; }

textarea {
  height: 118px; }

.form_input.half {
  width: 49.8%; }

.form-group {
  font-size: 0; }
  .form-group.bordered {
    border: 4px solid #1b1b13;
    margin-bottom: 25px; }
    .form-group.bordered .input-wrap {
      padding: 0; }
  .form-group label {
    font-size: 15px;
    font-size: 0.9375rem;
    display: block; }

.comments-area {
  /*.comment-respond{
		.comment-reply-title{
			margin-top:25px;
		}
		.comment-form{
			label{
				margin-top:10px;
				vertical-align: top;
				display: block;
			}
			textarea{
				border: 1px solid color('primary', font-color);
    		padding: 5px 2px;
				width:100%;
				&:focus{
					outline: none;
				}

			}
			input{
				border: 1px solid color(base, font-color);
				&:focus{
					outline: none;
				}
			}
			.submit{
				margin-top:15px;
				border: 1px solid color(brandprimary);
				padding:10px 20px;
				cursor: pointer;
				@include transition(background-color .5s ease);
				&:hover{
					color:#fff;
					background:color(brandprimary);
					border-color:color(brandprimary);
				}
				&:focus{
					outline:none;
				}
			}
		}
	}*/ }
  .comments-area .comment-list {
    margin-top: 15px;
    padding: 0; }
    .comments-area .comment-list cite {
      font-size: 15px;
      font-size: 0.9375rem;
      font-family: sans-serif;
      font-style: normal; }
    .comments-area .comment-list .comment {
      border-bottom: 1px solid #e3e3e3;
      position: relative;
      padding: 20px 10px 10px; }
      .comments-area .comment-list .comment:nth-child(even).depth-1 {
        background: #fafafa; }
      .comments-area .comment-list .comment:before {
        content: " ";
        position: absolute;
        bottom: 1px;
        right: 0;
        left: 0; }
      .comments-area .comment-list .comment .comment-author {
        border-bottom: 1px solid #54585a;
        margin-bottom: 10px; }
        .comments-area .comment-list .comment .comment-author .comment-meta {
          float: right; }
      .comments-area .comment-list .comment .comment {
        margin-left: 2%;
        border-bottom: none; }

.input-wrap {
  display: inline-block;
  padding: 4px;
  vertical-align: top; }
  .input-wrap:first-child {
    padding-left: 0; }
  .input-wrap:last-child {
    padding-right: 0; }
  .input-wrap.input--1 {
    width: 10%; }
  .input-wrap.input--2 {
    width: 20%; }
  .input-wrap.input--3 {
    width: 30%; }
  .input-wrap.input--4 {
    width: 40%; }
  .input-wrap.input--5 {
    width: 50%; }
  .input-wrap.input--6 {
    width: 60%; }
  .input-wrap.input--7 {
    width: 70%; }
  .input-wrap.input--8 {
    width: 80%; }
  .input-wrap.input--9 {
    width: 90%; }
  .input-wrap.input--10 {
    width: 100%; }
  @media (max-width: 767px) {
    .input-wrap {
      padding: 0; }
      .input-wrap.input--1 {
        width: 100%; }
      .input-wrap.input--2 {
        width: 100%; }
      .input-wrap.input--3 {
        width: 100%; }
      .input-wrap.input--4 {
        width: 100%; }
      .input-wrap.input--5 {
        width: 100%; }
      .input-wrap.input--6 {
        width: 100%; }
      .input-wrap.input--7 {
        width: 100%; }
      .input-wrap.input--8 {
        width: 100%; }
      .input-wrap.input--9 {
        width: 100%; }
      .input-wrap.input--10 {
        width: 100%; } }

/*------------------------------------------------------------------
[Style]
On se lance dans la personnalisation de chacune des différentes
portions du site!
-------------------------------------------------------------------*/
/*	Block
================================================================== */
/*------------------------------------------------------------------
[Layout]
Placeholder pour le format de la grille. Comme la grille est assez
personnalisée d'un site à l'autre, on le conserve ici.
-------------------------------------------------------------------*/
.c-half-right.is-full .c-half-right__wrapper, .c-social__wrapper, .c-credit__wrapper, .widget-area__wrapper {
  max-width: 90%;
  margin-left: auto;
  margin-right: auto; }
  .c-half-right.is-full .c-half-right__wrapper:after, .c-social__wrapper:after, .c-credit__wrapper:after, .widget-area__wrapper:after {
    content: " ";
    display: block;
    clear: both; }
  @media (min-width: 1480px) {
    .c-half-right.is-full .c-half-right__wrapper, .c-social__wrapper, .c-credit__wrapper, .widget-area__wrapper {
      max-width: 1200px; } }
  @media (min-width: 1280px) and (max-width: 1479px) {
    .c-half-right.is-full .c-half-right__wrapper, .c-social__wrapper, .c-credit__wrapper, .widget-area__wrapper {
      max-width: 1200px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwibWFpbi5zY3NzIiwiX2ZvbnRzLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2xpZ2h0Z2FsbGVyeS9zcmMvc2Fzcy9sZy1mb250cy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9saWdodGdhbGxlcnkvc3JjL3Nhc3MvbGctdGhlbWUtZGVmYXVsdC5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9saWdodGdhbGxlcnkvc3JjL3Nhc3MvbGctdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2xpZ2h0Z2FsbGVyeS9zcmMvc2Fzcy9sZy1taXhpbnMuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbGlnaHRnYWxsZXJ5L3NyYy9zYXNzL2xnLXRodW1ibmFpbC5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9saWdodGdhbGxlcnkvc3JjL3Nhc3MvbGctdmlkZW8uc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbGlnaHRnYWxsZXJ5L3NyYy9zYXNzL2xnLWF1dG9wbGF5LnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2xpZ2h0Z2FsbGVyeS9zcmMvc2Fzcy9sZy16b29tLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2xpZ2h0Z2FsbGVyeS9zcmMvc2Fzcy9sZy1wYWdlci5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9saWdodGdhbGxlcnkvc3JjL3Nhc3MvbGctZnVsbHNjcmVlbi5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9saWdodGdhbGxlcnkvc3JjL3Nhc3MvbGlnaHRnYWxsZXJ5LnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLXRoZW1lLnNjc3MiLCJfc3ByaXRlcy5zY3NzIiwiYmFzZS9fcGFsZXR0ZS5zY3NzIiwidXRpbHMvX21peGlucy5zY3NzIiwidXRpbHMvX3Jlc2V0LnNjc3MiLCJ1dGlscy9fcmVzcG9uc2l2ZS5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvX2JyZWFrcG9pbnQuc2NzcyIsImJhc2UvX2dsb2JhbHMuc2NzcyIsImJhc2UvX3ZhcnMuc2NzcyIsImxheW91dC9fbC1oZWFkZXIuc2NzcyIsImxheW91dC9fbC1wYWdlLnNjc3MiLCJjb21wb25lbnRzL19jLW1lbnUtcHJpbWFyeS5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19zcGFuLnNjc3MiLCJ1dGlscy9taXhpbnMvX2xpbmtzLnNjc3MiLCJjb21wb25lbnRzL19jLWhhbGYtcmlnaHQuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvb3V0cHV0L3N1cHBvcnQvX3JlbS5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9vdXRwdXQvc2hhcmVkL19kaXJlY3Rpb24uc2NzcyIsImNvbXBvbmVudHMvX2MtaGFsZi1sZWZ0LnNjc3MiLCJjb21wb25lbnRzL19jLXNvY2lhbC5zY3NzIiwiY29tcG9uZW50cy9fYy1ibG9jay1saXN0aW5nLnNjc3MiLCJjb21wb25lbnRzL19jLWNyZWRpdC5zY3NzIiwiY29tcG9uZW50cy9fYy1idG4uc2NzcyIsImNvbXBvbmVudHMvX2MtZHluYW1pYy5zY3NzIiwiY29tcG9uZW50cy9fYy10YWItbWVudS5zY3NzIiwiY29tcG9uZW50cy9fYy1zbGljay5zY3NzIiwiY29tcG9uZW50cy9fYy1mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX21vZGVsLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L2xhbmd1YWdlL3N1c3kvX2lzb2xhdGUuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fZ2FsbGVyeS5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9zdXN5L3Nhc3Mvc3VzeS9sYW5ndWFnZS9zdXN5L19yb3dzLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9mbG9hdC9fZW5kLnNjc3MiLCJjb21wb25lbnRzL19nYWxsZXJpZXMuc2NzcyIsImNvbXBvbmVudHMvX2MtY29yZG9ubmVlcy5zY3NzIiwiY29tcG9uZW50cy9fYy1maWx0ZXJzLnNjc3MiLCJjb21wb25lbnRzL19jLWdyaWQuc2NzcyIsImNvbXBvbmVudHMvX2Mtc2VhcmNoLnNjc3MiLCJjb21wb25lbnRzL19jLWNvbnRhY3Quc2NzcyIsImNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc3VzeS9zYXNzL3N1c3kvbGFuZ3VhZ2Uvc3VzeS9fY29udGFpbmVyLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL3N1c3kvc2Fzcy9zdXN5L291dHB1dC9zdXBwb3J0L19jbGVhcmZpeC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7Ozs7O0VBU0U7QUFFRjs7cUVBRXFFO0FBQ3JFOzs7Ozs7Ozs7OztFQVdFO0FDekJGLHVFQUFPO0FDQ1A7RUFDSSxrQkFBa0I7RUFDbEIsbUNBQVE7RUFDUixzTkFBa1A7RUFDbFAsb0JBQW9CO0VBQ3BCLG1CQUFtQixFQUFBOztBQUl2QjtFQUNJLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixxQkFBcUI7RUFDckIscUJBQXFCO0VBQ3JCLGVBQWU7RUFDZix1Q0FBdUM7RUFDdkMsb0NBQW9DO0VBQ3BDLG1DQUFtQyxFQUN0Qzs7QUNwQkQ7RUFFUSxzQ0NJUztFREhULG1CQ0ZtQjtFREduQixZQ0dZO0VERlosZ0JBQWdCO0VBQ2hCLGVBQWU7RUFD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QjtNM0J0RkE7UTJCM0RKO1VsQmNJLGlCSHdJb0I7VUd4SXBCLFlDQTRELEVpQm1JNUQ7VUFsR0c7WWxCakNILGVZd0RpQjtZWnhEakIsb0Jhb0Q2QjtZYnBEN0IsWWNaMEI7WWRZMUIsZWVnQitCLEVGd0Q5QjtVS3RGTDtZbEJjSSx1Qkh3SW9CO1lHeElwQixvQmFvRDZCO1licEQ3QixZY0owQixFRDRFekI7VUt2Q0U7WWxCakNILHVCSHdJb0I7WUd4SXBCLG9CYW9ENkI7WWJwRDdCLFljSjBCLEVENEV6QjtVS3RGTDtZbEJjSSx1Qkh3SW9CO1lHeElwQixvQmFvRDZCO1licEQ3QixZY0owQixFRDRFekI7VUt0Rkw7WWxCY0ksdUJId0lvQjtZR3hJcEIsb0Jhb0Q2QjtZYnBEN0IsWWNKMEIsRUQ0RXpCO1VLdkNFO1lsQmpDSCx1Qkh3SW9CO1lHeElwQixvQmFvRDZCO1licEQ3QixZY0owQixFRDRFekIsRUFBQTtNdEIzQkQ7UTJCWkc7VWxCakNILGlCSHdJb0I7VUd4SXBCLFlDQTREO1VpQmlEM0Qsb0JBQW1CLEVBa0ZwQjtVQWpKSjtZbEJjSSxlWXdEaUI7WVp4RGpCLG9CYW9ENkI7WWJwRDdCLFljWjBCO1lkWTFCLGVlZ0IrQixFRndEOUI7VUt0Rkw7WWxCY0ksdUJId0lvQjtZR3hJcEIsb0Jhb0Q2QjtZYnBEN0IsWWNKMEIsRUQ0RXpCLEVBQUE7TXRCM0JEO1EyQjNESjtVQWtFSyxZQUFXO1VBQ1gsb0JBQW1CLEVBOEVwQixFQUFBO00zQnRGQTtRMkJaRztVQWdDRCxrQi9DNUNTO1UrQzZDVCxlL0M5Q1c7VStDK0NYLG1CQUFtQjtVQUNuQixxQ0FBcUMsRUFLckM7VUFIQTtZQUNDLGVBQWMsRUFDZCxFQUFBO00zQjNCSDtRMkIzREo7VUEyRk0sa0IvQ3hEUztVK0N5RFQsZS9DMURXO1UrQzJEWCxtQkFBbUIsRUFZbkI7VUFUQTtZQUNDLGVBQWM7WUFDZCxtQkFBbUI7WUFDaEIsVUFBVTtZQUNWLGlCQUFnQixFQUluQjtZQUhHO2NBQ0MsZ0JBQWUsRUFDZixFQUFBO01BeERKO1FBNkRGLFVBQVM7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WUFBWSxFQUNaO01BekJKO1FBd0JJLFlBQVksRUFDWjtNQXpCSjtRQXdCSSxZQUFZLEVBQ1o7TUF6Qko7UUF3QkksWUFBWSxFQUNaO01BekJKO1FBd0JJLFlBQVksRUFDWjtNQXpCSjtRQXdCSSxZQUFZLEVBQ1o7TUF6Qko7UUF3QkksWUFBWSxFQUNaO01BekJKO1FBd0JJLFlBQVksRUFDWjtNQXpCSjtRQXdCSSxZQUFZLEVBQ1o7TUF6Qko7UUF3QkksWUFBWSxFQUNaLEVBQUE7O0FBTUo7Ozs7cUVBSXFFO0FBQ3JFO3FFQUNxRTtBQUdyRTs7OztxRUFJcUU7QUFDckU7RTZCM2hCSSxlUE5XO0VPTVgsa0J1QnFEb0M7RXZCckRwQyxtQnVCcURtRSxFcERnZnRFO0VBVkQ7SXFEbGlCTSxhQUFhO0lBQ2IsZUFBZTtJQUNmLFlBQVksRUFDYjtFakNpREQ7SVF2REo7TTVCeWlCRSxrQnNCMWlCdUIsRXRCZ2pCeEIsRUFBQTtFb0J4Zkc7SVF2REo7TTVCNmlCRSxrQnNCOWlCdUIsRXRCZ2pCeEIsRUFBQSIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qXG5iYXNlLyDigJMgU3R5bGUgZ2xvYmFsIGNvbW1lIGxlcyByZXNldHMsIGxhIHR5cG8sIGNvbGV1cnMsIGV0Yy4gTGVzIGZpY2hpZXJzIG5lIGRldnJhaXQgcGFzIMOqdHJlIG1hbmlwdWzDqSwgaWwgcydhZ2l0IGVuIHF1ZWxxdWVzIHNvcnRlIGQndW4gd2lyZWZyYW1lLlxuY29tcG9uZW50cy8g4oCTXG5sYXlvdXQvIOKAk1xucGFnZXMvIOKAkyBTdHlsZSBxdWkgcydhcHBsaXF1ZSDDoCBkZXMgcGFnZXMgc3DDqWNpZmlxdWUsIHNpIG7DqWNlc3NhaXJlXG50aGVtZXMvIOKAk1xudXRpbHMvIOKAk1xudmVuZG9ycy8g4oCTXG5tYWluLnNjc3Mg4oCTXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbltWYXJpYWJsZXNdXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG5sYXRvYmxhY2tcbmxhdG9ibGFja19pdGFsaWNcbmxhdG9ib2xkXG5sYXRvYm9sZF9pdGFsaWNcbmxhdG9oYWlybGluZVxubGF0b2hhaXJsaW5lX2l0YWxpY1xubGF0b2l0YWxpY1xubGF0b2xpZ2h0XG5sYXRvbGlnaHRfaXRhbGljXG5sYXRvcmVndWxhclxuKi9cbkBpbXBvcnQgJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1MYXRvOjMwMCw0MDAsNzAwLDkwMCc7XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdsZyc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbGcuZW90P24xejM3M1wiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9sZy5lb3Q/I2llZml4bjF6MzczXCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9sZy53b2ZmP24xejM3M1wiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9sZy50dGY/bjF6MzczXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9sZy5zdmc/bjF6MzczI2xnXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi5sZy1pY29uIHtcbiAgZm9udC1mYW1pbHk6ICdsZyc7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4ubGctYWN0aW9ucyAubGctbmV4dCwgLmxnLWFjdGlvbnMgLmxnLXByZXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDUpO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDIycHg7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBwYWRkaW5nOiA4cHggMTBweCA5cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHotaW5kZXg6IDEwODA7IH1cbiAgLmxnLWFjdGlvbnMgLmxnLW5leHQuZGlzYWJsZWQsIC5sZy1hY3Rpb25zIC5sZy1wcmV2LmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLmxnLWFjdGlvbnMgLmxnLW5leHQ6aG92ZXIsIC5sZy1hY3Rpb25zIC5sZy1wcmV2OmhvdmVyIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuXG4ubGctYWN0aW9ucyAubGctbmV4dCB7XG4gIHJpZ2h0OiAyMHB4OyB9XG4gIC5sZy1hY3Rpb25zIC5sZy1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGUwOTVcIjsgfVxuXG4ubGctYWN0aW9ucyAubGctcHJldiB7XG4gIGxlZnQ6IDIwcHg7IH1cbiAgLmxnLWFjdGlvbnMgLmxnLXByZXY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxlMDk0XCI7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxnLXJpZ2h0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwOyB9XG4gIDUwJSB7XG4gICAgbGVmdDogLTMwcHg7IH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMDsgfSB9XG5cbkAtbW96LWtleWZyYW1lcyBsZy1yaWdodC1lbmQge1xuICAwJSB7XG4gICAgbGVmdDogMDsgfVxuICA1MCUge1xuICAgIGxlZnQ6IC0zMHB4OyB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDA7IH0gfVxuXG5ALW1zLWtleWZyYW1lcyBsZy1yaWdodC1lbmQge1xuICAwJSB7XG4gICAgbGVmdDogMDsgfVxuICA1MCUge1xuICAgIGxlZnQ6IC0zMHB4OyB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIGxnLXJpZ2h0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwOyB9XG4gIDUwJSB7XG4gICAgbGVmdDogLTMwcHg7IH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMDsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwOyB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDsgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwOyB9IH1cblxuQC1tb3ota2V5ZnJhbWVzIGxnLWxlZnQtZW5kIHtcbiAgMCUge1xuICAgIGxlZnQ6IDA7IH1cbiAgNTAlIHtcbiAgICBsZWZ0OiAzMHB4OyB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDA7IH0gfVxuXG5ALW1zLWtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwOyB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDsgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwOyB9IH1cblxuQGtleWZyYW1lcyBsZy1sZWZ0LWVuZCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAwOyB9XG4gIDUwJSB7XG4gICAgbGVmdDogMzBweDsgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAwOyB9IH1cblxuLmxnLW91dGVyLmxnLXJpZ2h0LWVuZCAubGctb2JqZWN0IHtcbiAgLXdlYmtpdC1hbmltYXRpb246IGxnLXJpZ2h0LWVuZCAwLjNzO1xuICAtby1hbmltYXRpb246IGxnLXJpZ2h0LWVuZCAwLjNzO1xuICBhbmltYXRpb246IGxnLXJpZ2h0LWVuZCAwLjNzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmxnLW91dGVyLmxnLWxlZnQtZW5kIC5sZy1vYmplY3Qge1xuICAtd2Via2l0LWFuaW1hdGlvbjogbGctbGVmdC1lbmQgMC4zcztcbiAgLW8tYW5pbWF0aW9uOiBsZy1sZWZ0LWVuZCAwLjNzO1xuICBhbmltYXRpb246IGxnLWxlZnQtZW5kIDAuM3M7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubGctdG9vbGJhciB7XG4gIHotaW5kZXg6IDEwODI7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQ1KTsgfVxuICAubGctdG9vbGJhciAubGctaWNvbiB7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgaGVpZ2h0OiA0N3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogbWVkaXVtIG5vbmU7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhcjtcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhcjsgfVxuICAgIC5sZy10b29sYmFyIC5sZy1pY29uOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5sZy10b29sYmFyIC5sZy1jbG9zZTphZnRlciB7XG4gICAgY29udGVudDogXCJcXGUwNzBcIjsgfVxuICAubGctdG9vbGJhciAubGctZG93bmxvYWQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxlMGYyXCI7IH1cblxuLmxnLXN1Yi1odG1sIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbiAgYm90dG9tOiAwO1xuICBjb2xvcjogI0VFRTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxMHB4IDQwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgei1pbmRleDogMTA4MDsgfVxuICAubGctc3ViLWh0bWwgaDQge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmxnLXN1Yi1odG1sIHAge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBtYXJnaW46IDVweCAwIDA7IH1cblxuI2xnLWNvdW50ZXIge1xuICBjb2xvcjogIzk5OTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmxnLXRvb2xiYXIsIC5sZy1wcmV2LCAubGctbmV4dCB7XG4gIG9wYWNpdHk6IDE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgY29sb3IgMC4ycyBsaW5lYXI7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgY29sb3IgMC4ycyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBjb2xvciAwLjJzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIGNvbG9yIDAuMnMgbGluZWFyOyB9XG5cbi5sZy1oaWRlLWl0ZW1zIC5sZy1wcmV2IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7IH1cblxuLmxnLWhpZGUtaXRlbXMgLmxnLW5leHQge1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7IH1cblxuLmxnLWhpZGUtaXRlbXMgLmxnLXRvb2xiYXIge1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTsgfVxuXG5ib2R5Om5vdCgubGctZnJvbS1oYXNoKSAubGctb3V0ZXIubGctc3RhcnQtem9vbSAubGctb2JqZWN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC41LCAwLjUsIDAuNSk7XG4gIHRyYW5zZm9ybTogc2NhbGUzZCgwLjUsIDAuNSwgMC41KTtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpICFpbXBvcnRhbnQ7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDI1MG1zIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuYm9keTpub3QoLmxnLWZyb20taGFzaCkgLmxnLW91dGVyLmxnLXN0YXJ0LXpvb20gLmxnLWl0ZW0ubGctY29tcGxldGUgLmxnLW9iamVjdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmxnLW91dGVyIC5sZy10aHVtYi1vdXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwRDBBMEE7XG4gIGJvdHRvbTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA4MDtcbiAgbWF4LWhlaWdodDogMzUwcHg7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzOyB9XG4gIC5sZy1vdXRlciAubGctdGh1bWItb3V0ZXIubGctZ3JhYiAubGctdGh1bWItaXRlbSB7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gICAgY3Vyc29yOiAtbW96LWdyYWI7XG4gICAgY3Vyc29yOiAtby1ncmFiO1xuICAgIGN1cnNvcjogLW1zLWdyYWI7XG4gICAgY3Vyc29yOiBncmFiOyB9XG4gIC5sZy1vdXRlciAubGctdGh1bWItb3V0ZXIubGctZ3JhYmJpbmcgLmxnLXRodW1iLWl0ZW0ge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuICAgIGN1cnNvcjogLW8tZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiAtbXMtZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiBncmFiYmluZzsgfVxuICAubGctb3V0ZXIgLmxnLXRodW1iLW91dGVyLmxnLWRyYWdnaW5nIC5sZy10aHVtYiB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7IH1cblxuLmxnLW91dGVyLmxnLXRodW1iLW9wZW4gLmxnLXRodW1iLW91dGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwJSwgMCk7IH1cblxuLmxnLW91dGVyIC5sZy10aHVtYiB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAtNXB4OyB9XG5cbi5sZy1vdXRlciAubGctdGh1bWItaXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmbG9hdDogbGVmdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtIHtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2U7XG4gICAgICAtby10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZTtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjI1cyBlYXNlOyB9IH1cbiAgLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtLmFjdGl2ZSwgLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICNhOTA3MDc7IH1cbiAgLmxnLW91dGVyIC5sZy10aHVtYi1pdGVtIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5sZy1vdXRlci5sZy1oYXMtdGh1bWIgLmxnLWl0ZW0ge1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7IH1cblxuLmxnLW91dGVyLmxnLWNhbi10b2dnbGUgLmxnLWl0ZW0ge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ubGctb3V0ZXIubGctcHVsbC1jYXB0aW9uLXVwIC5sZy1zdWItaHRtbCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm90dG9tIDAuMjVzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGJvdHRvbSAwLjI1cyBlYXNlO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4yNXMgZWFzZTsgfVxuXG4ubGctb3V0ZXIubGctcHVsbC1jYXB0aW9uLXVwLmxnLXRodW1iLW9wZW4gLmxnLXN1Yi1odG1sIHtcbiAgYm90dG9tOiAxMDBweDsgfVxuXG4ubGctb3V0ZXIgLmxnLXRvb2dsZS10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwRDBBMEE7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwO1xuICBjb2xvcjogIzk5OTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGhlaWdodDogMzlweDtcbiAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogLTM5cHg7XG4gIHdpZHRoOiA1MHB4OyB9XG4gIC5sZy1vdXRlciAubGctdG9vZ2xlLXRodW1iOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZTFmZlwiOyB9XG4gIC5sZy1vdXRlciAubGctdG9vZ2xlLXRodW1iOmhvdmVyIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuXG4ubGctb3V0ZXIgLmxnLXZpZGVvLWNvbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTE0MHB4O1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCA1cHg7IH1cblxuLmxnLW91dGVyIC5sZy12aWRlbyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubGctb3V0ZXIgLmxnLXZpZGVvIC5sZy1vYmplY3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuICAubGctb3V0ZXIgLmxnLXZpZGVvIC5sZy12aWRlby1wbGF5IHtcbiAgICB3aWR0aDogODRweDtcbiAgICBoZWlnaHQ6IDU5cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTQycHg7XG4gICAgbWFyZ2luLXRvcDogLTMwcHg7XG4gICAgei1pbmRleDogMTA4MDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmxnLW91dGVyIC5sZy1oYXMtdmltZW8gLmxnLXZpZGVvLXBsYXkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdmltZW8tcGxheS5wbmdcIikgbm8tcmVwZWF0IHNjcm9sbCAwIDAgdHJhbnNwYXJlbnQ7IH1cblxuLmxnLW91dGVyIC5sZy1oYXMtdmltZW86aG92ZXIgLmxnLXZpZGVvLXBsYXkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdmltZW8tcGxheS5wbmdcIikgbm8tcmVwZWF0IHNjcm9sbCAwIC01OHB4IHRyYW5zcGFyZW50OyB9XG5cbi5sZy1vdXRlciAubGctaGFzLWh0bWw1IC5sZy12aWRlby1wbGF5IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vaW1nL3ZpZGVvLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwO1xuICBoZWlnaHQ6IDY0cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMzJweDtcbiAgbWFyZ2luLXRvcDogLTMycHg7XG4gIHdpZHRoOiA2NHB4O1xuICBvcGFjaXR5OiAwLjg7IH1cblxuLmxnLW91dGVyIC5sZy1oYXMtaHRtbDU6aG92ZXIgLmxnLXZpZGVvLXBsYXkge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5sZy1vdXRlciAubGctaGFzLXlvdXR1YmUgLmxnLXZpZGVvLXBsYXkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcveW91dHViZS1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgMCB0cmFuc3BhcmVudDsgfVxuXG4ubGctb3V0ZXIgLmxnLWhhcy15b3V0dWJlOmhvdmVyIC5sZy12aWRlby1wbGF5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3lvdXR1YmUtcGxheS5wbmdcIikgbm8tcmVwZWF0IHNjcm9sbCAwIC02MHB4IHRyYW5zcGFyZW50OyB9XG5cbi5sZy1vdXRlciAubGctdmlkZW8tb2JqZWN0IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwOyB9XG5cbi5sZy1vdXRlciAubGctaGFzLXZpZGVvIC5sZy12aWRlby1vYmplY3Qge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmxnLW91dGVyIC5sZy1oYXMtdmlkZW8ubGctdmlkZW8tcGxheWluZyAubGctb2JqZWN0LCAubGctb3V0ZXIgLmxnLWhhcy12aWRlby5sZy12aWRlby1wbGF5aW5nIC5sZy12aWRlby1wbGF5IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubGctb3V0ZXIgLmxnLWhhcy12aWRlby5sZy12aWRlby1wbGF5aW5nIC5sZy12aWRlby1vYmplY3Qge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5sZy1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBoZWlnaHQ6IDVweDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDgzO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4wOHMgZWFzZSAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMDhzIGVhc2UgMHM7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4wOHMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjA4cyBlYXNlIDBzOyB9XG4gIC5sZy1wcm9ncmVzcy1iYXIgLmxnLXByb2dyZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTkwNzA3O1xuICAgIGhlaWdodDogNXB4O1xuICAgIHdpZHRoOiAwOyB9XG4gIC5sZy1wcm9ncmVzcy1iYXIubGctc3RhcnQgLmxnLXByb2dyZXNzIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGctc2hvdy1hdXRvcGxheSAubGctcHJvZ3Jlc3MtYmFyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5sZy1hdXRvcGxheS1idXR0b246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTAxZFwiOyB9XG4gIC5sZy1zaG93LWF1dG9wbGF5IC5sZy1hdXRvcGxheS1idXR0b246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxlMDFhXCI7IH1cblxuLmxnLW91dGVyLmxnLWNzczMubGctem9vbS1kcmFnZ2luZyAubGctaXRlbS5sZy1jb21wbGV0ZS5sZy16b29tYWJsZSAubGctaW1nLXdyYXAsIC5sZy1vdXRlci5sZy1jc3MzLmxnLXpvb20tZHJhZ2dpbmcgLmxnLWl0ZW0ubGctY29tcGxldGUubGctem9vbWFibGUgLmxnLWltYWdlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7IH1cblxuLmxnLW91dGVyIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIC5sZy1pbWctd3JhcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbGVmdCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgdG9wIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICAtbW96LXRyYW5zaXRpb246IGxlZnQgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIHRvcCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcztcbiAgLW8tdHJhbnNpdGlvbjogbGVmdCAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgdG9wIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCB0b3AgMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHM7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmxnLW91dGVyIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIC5sZy1pbWFnZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xNXMgIWltcG9ydGFudDtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjNzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjE1cyAhaW1wb3J0YW50O1xuICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xNXMgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMTVzICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4jbGctem9vbS1pbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlMzExXCI7IH1cblxuI2xnLWFjdHVhbC1zaXplIHtcbiAgZm9udC1zaXplOiAyMHB4OyB9XG4gICNsZy1hY3R1YWwtc2l6ZTphZnRlciB7XG4gICAgY29udGVudDogXCJcXGUwMzNcIjsgfVxuXG4jbGctem9vbS1vdXQge1xuICBvcGFjaXR5OiAwLjU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICNsZy16b29tLW91dDphZnRlciB7XG4gICAgY29udGVudDogXCJcXGUzMTJcIjsgfVxuICAubGctem9vbWVkICNsZy16b29tLW91dCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLW91dGVyIHtcbiAgYm90dG9tOiA2MHB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwODA7XG4gIGhlaWdodDogMTBweDsgfVxuICAubGctb3V0ZXIgLmxnLXBhZ2VyLW91dGVyLmxnLXBhZ2VyLWhvdmVyIC5sZy1wYWdlci1jb250IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4ubGctb3V0ZXIgLmxnLXBhZ2VyLWNvbnQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW46IDAgNXB4OyB9XG4gIC5sZy1vdXRlciAubGctcGFnZXItY29udDpob3ZlciAubGctcGFnZXItdGh1bWItY29udCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICAubGctb3V0ZXIgLmxnLXBhZ2VyLWNvbnQubGctcGFnZXItYWN0aXZlIC5sZy1wYWdlciB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHdoaXRlIGluc2V0OyB9XG5cbi5sZy1vdXRlciAubGctcGFnZXItdGh1bWItY29udCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjRkZGO1xuICBib3R0b206IDEwMCU7XG4gIGhlaWdodDogODNweDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEyMHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjE1cyBlYXNlIDBzO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcywgLW1vei10cmFuc2Zvcm0gMC4xNXMgZWFzZSAwcztcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzLCAtby10cmFuc2Zvcm0gMC4xNXMgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzLCB0cmFuc2Zvcm0gMC4xNXMgZWFzZSAwcztcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTsgfVxuICAubGctb3V0ZXIgLmxnLXBhZ2VyLXRodW1iLWNvbnQgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLmxnLW91dGVyIC5sZy1wYWdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2hhZG93OiAwIDAgMCA4cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIGluc2V0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMnB4O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3MgZWFzZSAwcztcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjNzIGVhc2UgMHM7XG4gIHdpZHRoOiAxMnB4OyB9XG4gIC5sZy1vdXRlciAubGctcGFnZXI6aG92ZXIsIC5sZy1vdXRlciAubGctcGFnZXI6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDhweCB3aGl0ZSBpbnNldDsgfVxuXG4ubGctb3V0ZXIgLmxnLWNhcmV0IHtcbiAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMTBweCBkYXNoZWQ7XG4gIGJvdHRvbTogLTEwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAwOyB9XG5cbi5sZy1mdWxsc2NyZWVuOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUyMGNcIjsgfVxuICAubGctZnVsbHNjcmVlbi1vbiAubGctZnVsbHNjcmVlbjphZnRlciB7XG4gICAgY29udGVudDogXCJcXGUyMGRcIjsgfVxuXG4uZ3JvdXAge1xuICAqem9vbTogMTsgfVxuXG4uZ3JvdXA6YmVmb3JlLCAuZ3JvdXA6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCJcIjtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cblxuLmdyb3VwOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmxnLW91dGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNTA7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwczsgfVxuICAubGctb3V0ZXIgKiB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5sZy1vdXRlci5sZy12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1pdGVtLmxnLXByZXYtc2xpZGUsIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAubGctb3V0ZXIubGctY3NzMy5sZy1kcmFnZ2luZyAubGctaXRlbS5sZy1wcmV2LXNsaWRlLCAubGctb3V0ZXIubGctY3NzMy5sZy1kcmFnZ2luZyAubGctaXRlbS5sZy1uZXh0LXNsaWRlLCAubGctb3V0ZXIubGctY3NzMy5sZy1kcmFnZ2luZyAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDBzICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHMgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5sZy1vdXRlci5sZy1ncmFiIGltZy5sZy1vYmplY3Qge1xuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICAgIGN1cnNvcjogLW1vei1ncmFiO1xuICAgIGN1cnNvcjogLW8tZ3JhYjtcbiAgICBjdXJzb3I6IC1tcy1ncmFiO1xuICAgIGN1cnNvcjogZ3JhYjsgfVxuICAubGctb3V0ZXIubGctZ3JhYmJpbmcgaW1nLmxnLW9iamVjdCB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgICBjdXJzb3I6IC1tb3otZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiAtby1ncmFiYmluZztcbiAgICBjdXJzb3I6IC1tcy1ncmFiYmluZztcbiAgICBjdXJzb3I6IGdyYWJiaW5nOyB9XG4gIC5sZy1vdXRlciAubGcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLmxnLW91dGVyIC5sZy1pbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5sZy1vdXRlciAubGctaXRlbSB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2xvYWRpbmcuZ2lmXCIpIG5vLXJlcGVhdCBzY3JvbGwgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW91dGVyLmxnLWNzczMgLmxnLXByZXYtc2xpZGUsIC5sZy1vdXRlci5sZy1jc3MzIC5sZy1jdXJyZW50LCAubGctb3V0ZXIubGctY3NzMyAubGctbmV4dC1zbGlkZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW91dGVyLmxnLWNzcyAubGctY3VycmVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW91dGVyIC5sZy1pdGVtLCAubGctb3V0ZXIgLmxnLWltZy13cmFwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAubGctb3V0ZXIgLmxnLWl0ZW06YmVmb3JlLCAubGctb3V0ZXIgLmxnLWltZy13cmFwOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXB4OyB9XG4gIC5sZy1vdXRlciAubGctaW1nLXdyYXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwYWRkaW5nOiAwIDVweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7IH1cbiAgLmxnLW91dGVyIC5sZy1pdGVtLmxnLWNvbXBsZXRlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIC5sZy1vdXRlciAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgICB6LWluZGV4OiAxMDYwOyB9XG4gIC5sZy1vdXRlciAubGctaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW91dGVyLmxnLXNob3ctYWZ0ZXItbG9hZCAubGctaXRlbSAubGctb2JqZWN0LCAubGctb3V0ZXIubGctc2hvdy1hZnRlci1sb2FkIC5sZy1pdGVtIC5sZy12aWRlby1wbGF5IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xuICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwcztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7IH1cbiAgLmxnLW91dGVyLmxnLXNob3ctYWZ0ZXItbG9hZCAubGctaXRlbS5sZy1jb21wbGV0ZSAubGctb2JqZWN0LCAubGctb3V0ZXIubGctc2hvdy1hZnRlci1sb2FkIC5sZy1pdGVtLmxnLWNvbXBsZXRlIC5sZy12aWRlby1wbGF5IHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5sZy1vdXRlciAubGctZW1wdHktaHRtbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubGctb3V0ZXIubGctaGlkZS1kb3dubG9hZCAjbGctZG93bmxvYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmxnLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDEwNDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlIDBzO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UgMHM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZSAwczsgfVxuICAubGctYmFja2Ryb3AuaW4ge1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLmxnLWNzczMubGctbm8tdHJhbnMgLmxnLXByZXYtc2xpZGUsIC5sZy1jc3MzLmxnLW5vLXRyYW5zIC5sZy1uZXh0LXNsaWRlLCAubGctY3NzMy5sZy1uby10cmFucyAubGctY3VycmVudCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZSAwcyBlYXNlIDBzICFpbXBvcnRhbnQ7XG4gIC1tb3otdHJhbnNpdGlvbjogbm9uZSAwcyBlYXNlIDBzICFpbXBvcnRhbnQ7XG4gIC1vLXRyYW5zaXRpb246IG5vbmUgMHMgZWFzZSAwcyAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiBub25lIDBzIGVhc2UgMHMgIWltcG9ydGFudDsgfVxuXG4ubGctY3NzMy5sZy11c2UtY3NzMyAubGctaXRlbSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5sZy1jc3MzLmxnLXVzZS1sZWZ0IC5sZy1pdGVtIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmxnLWNzczMubGctZmFkZSAubGctaXRlbSB7XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmxnLWNzczMubGctZmFkZSAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5sZy1jc3MzLmxnLWZhZGUgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSwgLmxnLWNzczMubGctZmFkZSAubGctaXRlbS5sZy1uZXh0LXNsaWRlLCAubGctY3NzMy5sZy1mYWRlIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZSAwczsgfVxuXG4ubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbSB7XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmxnLWNzczMubGctc2xpZGUubGctdXNlLWNzczMgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfVxuICAubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1uZXh0LXNsaWRlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsgfVxuICAubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtY3NzMyAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLXByZXYtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLW5leHQtc2xpZGUsIC5sZy1jc3MzLmxnLXNsaWRlLmxnLXVzZS1jc3MzIC5sZy1pdGVtLmxnLWN1cnJlbnQge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7IH1cblxuLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7IH1cbiAgLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSB7XG4gICAgbGVmdDogLTEwMCU7IH1cbiAgLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctbmV4dC1zbGlkZSB7XG4gICAgbGVmdDogMTAwJTsgfVxuICAubGctY3NzMy5sZy1zbGlkZS5sZy11c2UtbGVmdCAubGctaXRlbS5sZy1jdXJyZW50IHtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctcHJldi1zbGlkZSwgLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctbmV4dC1zbGlkZSwgLmxnLWNzczMubGctc2xpZGUubGctdXNlLWxlZnQgLmxnLWl0ZW0ubGctY3VycmVudCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBsZWZ0IDFzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjFzIGVhc2UgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogbGVmdCAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzO1xuICAgIHRyYW5zaXRpb246IGxlZnQgMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwczsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4uL2ltYWdlcy9hamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7IH1cblxuLyogSWNvbnMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICBzcmM6IHVybChcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svZm9udHMvc2xpY2suZW90XCIpO1xuICBzcmM6IHVybChcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svZm9udHMvc2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9zbGljay1jYXJvdXNlbC9zbGljay9mb250cy9zbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svZm9udHMvc2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL3NsaWNrLWNhcm91c2VsL3NsaWNrL2ZvbnRzL3NsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMHB4O1xuICBmb250LXNpemU6IDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbiAgLnNsaWNrLW5leHQ6aG92ZXIsXG4gIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4gIC5zbGljay1uZXh0LnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC4yNTsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUsXG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IC0yNXB4OyB9XG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLihpBcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaSXCI7IH1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogLTI1cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dCB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKGklwiOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLihpBcIjsgfVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnNsaWNrLWRvdHMgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICBmb250LXNpemU6IDBweDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlcjpiZWZvcmUsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1czpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICAgICAgZm9udC1zaXplOiA2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICBvcGFjaXR5OiAwLjc1OyB9XG5cbi8qXG5TQ1NTIHZhcmlhYmxlcyBhcmUgaW5mb3JtYXRpb24gYWJvdXQgaWNvbidzIGNvbXBpbGVkIHN0YXRlLCBzdG9yZWQgdW5kZXIgaXRzIG9yaWdpbmFsIGZpbGUgbmFtZVxuXG4uaWNvbi1ob21lIHtcbiAgd2lkdGg6ICRpY29uLWhvbWUtd2lkdGg7XG59XG5cblRoZSBsYXJnZSBhcnJheS1saWtlIHZhcmlhYmxlcyBjb250YWluIGFsbCBpbmZvcm1hdGlvbiBhYm91dCBhIHNpbmdsZSBpY29uXG4kaWNvbi1ob21lOiB4IHkgb2Zmc2V0X3ggb2Zmc2V0X3kgd2lkdGggaGVpZ2h0IHRvdGFsX3dpZHRoIHRvdGFsX2hlaWdodCBpbWFnZV9wYXRoO1xuXG5BdCB0aGUgYm90dG9tIG9mIHRoaXMgc2VjdGlvbiwgd2UgcHJvdmlkZSBpbmZvcm1hdGlvbiBhYm91dCB0aGUgc3ByaXRlc2hlZXQgaXRzZWxmXG4kc3ByaXRlc2hlZXQ6IHdpZHRoIGhlaWdodCBpbWFnZSAkc3ByaXRlc2hlZXQtc3ByaXRlcztcbiovXG4vKlxuVGhlIHByb3ZpZGVkIG1peGlucyBhcmUgaW50ZW5kZWQgdG8gYmUgdXNlZCB3aXRoIHRoZSBhcnJheS1saWtlIHZhcmlhYmxlc1xuXG4uaWNvbi1ob21lIHtcbiAgQGluY2x1ZGUgc3ByaXRlLXdpZHRoKCRpY29uLWhvbWUpO1xufVxuXG4uaWNvbi1lbWFpbCB7XG4gIEBpbmNsdWRlIHNwcml0ZSgkaWNvbi1lbWFpbCk7XG59XG4qL1xuLypcblRoZSBgc3ByaXRlc2AgbWl4aW4gZ2VuZXJhdGVzIGlkZW50aWNhbCBvdXRwdXQgdG8gdGhlIENTUyB0ZW1wbGF0ZVxuICBidXQgY2FuIGJlIG92ZXJyaWRkZW4gaW5zaWRlIG9mIFNDU1NcblxuQGluY2x1ZGUgc3ByaXRlcygkc3ByaXRlc2hlZXQtc3ByaXRlcyk7XG4qL1xuLnNwcml0ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuc3ByaXRlLS1ibG9jLWJnLXRhcnRlcmllIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAwcHg7XG4gICAgd2lkdGg6IDIwMDBweDtcbiAgICBoZWlnaHQ6IDk1OHB4OyB9XG4gIC5zcHJpdGUtLWNoZWNrIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMTBweCAtOTU4cHg7XG4gICAgd2lkdGg6IDEzcHg7XG4gICAgaGVpZ2h0OiAxMHB4OyB9XG4gIC5zcHJpdGUtLWljb24tYXJlYS1sZyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUzcHggLTk1OHB4O1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzRweDsgfVxuICAuc3ByaXRlLS1pY29uLWFyZWEge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4N3B4IC05NThweDtcbiAgICB3aWR0aDogMjNweDtcbiAgICBoZWlnaHQ6IDIycHg7IH1cbiAgLnNwcml0ZS0taWNvbi1iYXRocm9vbS1sZyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwcHggLTk1OHB4O1xuICAgIHdpZHRoOiA0OHB4O1xuICAgIGhlaWdodDogNDRweDsgfVxuICAuc3ByaXRlLS1pY29uLWJhdGhyb29tIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xODlweCAtOTU4cHg7XG4gICAgd2lkdGg6IDMxcHg7XG4gICAgaGVpZ2h0OiAyOXB4OyB9XG4gIC5zcHJpdGUtLWljb24tZ2FyYWdlLWxnIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDNweCAtOTU4cHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiAzNHB4OyB9XG4gIC5zcHJpdGUtLWljb24tZ2FyYWdlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yNTVweCAtOTU4cHg7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAyMnB4OyB9XG4gIC5zcHJpdGUtLWljb24tcm9vbXMtbGcge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4cHggLTk1OHB4O1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIGhlaWdodDogMzZweDsgfVxuICAuc3ByaXRlLS1pY29uLXJvb21zIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMjBweCAtOTU4cHg7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgaGVpZ2h0OiAyNHB4OyB9XG5cbi5zcHJpdGUtLWljb24tYmF0aHJvb20tbGcge1xuICBtYXJnaW4tdG9wOiAtMTBweCAhaW1wb3J0YW50OyB9XG5cbi8qXG48ZGl2IGNsYXNzPVwicGFsZXR0ZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2xvciBwcmltYXJ5XCI+PGRpdiBjbGFzcz1cInZhcmlhbnRzXCI+PC9kaXY+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbG9yIHV0aWxpdHlcIj48ZGl2IGNsYXNzPVwidmFyaWFudHNcIj48L2Rpdj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sb3IgYWNjZW50XCI+PGRpdiBjbGFzcz1cInZhcmlhbnRzXCI+PC9kaXY+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbG9yIHNlY29uZGFyeVwiPjxkaXYgY2xhc3M9XCJ2YXJpYW50c1wiPjwvZGl2PjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2xvciBmb3JlZ3JvdW5kXCI+PGRpdiBjbGFzcz1cInZhcmlhbnRzXCI+PC9kaXY+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbG9yIGJhY2tncm91bmRcIj48ZGl2IGNsYXNzPVwidmFyaWFudHNcIj48L2Rpdj48L2Rpdj5cbjwvZGl2PlxuICovXG4ucGFsZXR0ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmNvbG9yIHtcbiAgd2lkdGg6IGNhbGMoMjAlIC0gMXJlbSk7XG4gIGhlaWdodDogMTcwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmNvbG9yOmJlZm9yZSwgLmNvbG9yOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzMCU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiA4NSU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3b3JkLXdyYXA6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAuY29sb3I6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuY29sb3I6YWZ0ZXIge1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgZm9udC1zaXplOiA3MCU7XG4gICAgY29sb3I6IGdyYXk7IH1cbiAgLmNvbG9yLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MWI1ZTQ7IH1cbiAgICAuY29sb3IucHJpbWFyeTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJwcmltYXJ5XCI7IH1cbiAgICAuY29sb3IucHJpbWFyeTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIiM0MWI1ZTRcIjsgfVxuICAgIC5jb2xvci5wcmltYXJ5IC52YXJpYW50cyB7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHdoaXRlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHdoaXRlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiA3LjVyZW07XG4gICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNDFiNWU0IDByZW0sICM0MWI1ZTQgMS41cmVtLCAjZmZmIDEuNXJlbSwgI2ZmZiAzcmVtLCAjNTQ1ODVhIDNyZW0sICM1NDU4NWEgNC41cmVtLCAjZTNlM2UzIDQuNXJlbSwgI2UzZTNlMyA2cmVtLCAjMzM5N2JmIDZyZW0sICMzMzk3YmYgNy41cmVtKTsgfVxuICAuY29sb3IubGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQxYjVlNDsgfVxuICAgIC5jb2xvci5saW5rOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcImxpbmtcIjsgfVxuICAgIC5jb2xvci5saW5rOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIzQxYjVlNFwiOyB9XG4gICAgLmNvbG9yLmxpbmsgLnZhcmlhbnRzIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgd2hpdGU7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgd2hpdGU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDlyZW07XG4gICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNDFiNWU0IDByZW0sICM0MWI1ZTQgMS41cmVtLCAjNTQ1ODVhIDEuNXJlbSwgIzU0NTg1YSAzcmVtLCAjNmI2YjZiIDNyZW0sICM2YjZiNmIgNC41cmVtLCAjNDFiNWU0IDQuNXJlbSwgIzQxYjVlNCA2cmVtLCAjMjQyZDM5IDZyZW0sICMyNDJkMzkgNy41cmVtLCAjZmZmIDcuNXJlbSwgI2ZmZiA5cmVtKTsgfVxuICAuY29sb3IuZm9yZWdyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgwNmE1NjsgfVxuICAgIC5jb2xvci5mb3JlZ3JvdW5kOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcImZvcmVncm91bmRcIjsgfVxuICAgIC5jb2xvci5mb3JlZ3JvdW5kOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIzgwNmE1NlwiOyB9XG4gICAgLmNvbG9yLmZvcmVncm91bmQgLnZhcmlhbnRzIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgd2hpdGU7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgd2hpdGU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjODA2YTU2IDByZW0sICM4MDZhNTYgMS41cmVtLCAjOGVjNTQ5IDEuNXJlbSwgIzhlYzU0OSAzcmVtKTsgfVxuICAuY29sb3IuYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZTllOTsgfVxuICAgIC5jb2xvci5iYWNrZ3JvdW5kOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcImJhY2tncm91bmRcIjsgfVxuICAgIC5jb2xvci5iYWNrZ3JvdW5kOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiI2U5ZTllOVwiOyB9XG4gICAgLmNvbG9yLmJhY2tncm91bmQgLnZhcmlhbnRzIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgd2hpdGU7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgd2hpdGU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDQuNXJlbTtcbiAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlOWU5ZTkgMHJlbSwgI2U5ZTllOSAxLjVyZW0sICNmZmZmZmYgMS41cmVtLCAjZmZmZmZmIDNyZW0sICMwMDAgM3JlbSwgIzAwMCA0LjVyZW0pOyB9XG5cbi5jbGVhcmZpeCwgLmwtcGFnZSwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5tb2RlbF9faW5mb3JtYXRpb25zLCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmRldGFpbCwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5kZXRhaWxfX2NvbnRlbnQsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmItcGFnZV9jb250ZW50IC5jaGFyYWNzIHVsLCAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb24sIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keSwgLmMtZHluYW1pYyAuYi1keW5hbWljX19ib2R5X193cmFwcGVyIHVsOm5vdCgucGVyc29uYWxfaW5mb3JtYXRpb25zKSwgLmMtdGFiLW1lbnUsIC5tb2RlbHMgLm1vZGVsX19pbmZvcm1hdGlvbnMsIC5nYWxsZXJpZXNfX3dyYXBwZXIsIC5nYWxsZXJpZXNfX3dyYXBwZXIgLmdhbGxlcnlfX3dyYXBwZXIsIC5jLWZpbHRlcnNfX3dyYXBwZXIsIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcnNfX3VzZWQsIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCwgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSwgLmMtY29udGFjdCAucmVxdWVzdF9pbmZvcywgLmMtY29udGFjdCAucHJvamVjdHMgLml0ZW0ge1xuICAqem9vbTogMTsgfVxuICAuY2xlYXJmaXg6YmVmb3JlLCAubC1wYWdlOmJlZm9yZSwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5tb2RlbF9faW5mb3JtYXRpb25zOmJlZm9yZSwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5kZXRhaWw6YmVmb3JlLCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmRldGFpbF9fY29udGVudDpiZWZvcmUsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmItcGFnZV9jb250ZW50IC5jaGFyYWNzIHVsOmJlZm9yZSwgLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uOmJlZm9yZSwgLmMtZHluYW1pYyAuYi1keW5hbWljX19ib2R5OmJlZm9yZSwgLmMtZHluYW1pYyAuYi1keW5hbWljX19ib2R5X193cmFwcGVyIHVsOm5vdCgucGVyc29uYWxfaW5mb3JtYXRpb25zKTpiZWZvcmUsIC5jLXRhYi1tZW51OmJlZm9yZSwgLm1vZGVscyAubW9kZWxfX2luZm9ybWF0aW9uczpiZWZvcmUsIC5nYWxsZXJpZXNfX3dyYXBwZXI6YmVmb3JlLCAuZ2FsbGVyaWVzX193cmFwcGVyIC5nYWxsZXJ5X193cmFwcGVyOmJlZm9yZSwgLmMtZmlsdGVyc19fd3JhcHBlcjpiZWZvcmUsIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcnNfX3VzZWQ6YmVmb3JlLCAuYy1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXJfX2xpc3Q6YmVmb3JlLCAuYy1ncmlkX193cmFwcGVyIC5pdGVtOmJlZm9yZSwgLmMtY29udGFjdCAucmVxdWVzdF9pbmZvczpiZWZvcmUsIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtOmJlZm9yZSwgLmNsZWFyZml4OmFmdGVyLCAubC1wYWdlOmFmdGVyLCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLm1vZGVsX19pbmZvcm1hdGlvbnM6YWZ0ZXIsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAuZGV0YWlsOmFmdGVyLCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmRldGFpbF9fY29udGVudDphZnRlciwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnQgLmNoYXJhY3MgdWw6YWZ0ZXIsIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbjphZnRlciwgLmMtZHluYW1pYyAuYi1keW5hbWljX19ib2R5OmFmdGVyLCAuYy1keW5hbWljIC5iLWR5bmFtaWNfX2JvZHlfX3dyYXBwZXIgdWw6bm90KC5wZXJzb25hbF9pbmZvcm1hdGlvbnMpOmFmdGVyLCAuYy10YWItbWVudTphZnRlciwgLm1vZGVscyAubW9kZWxfX2luZm9ybWF0aW9uczphZnRlciwgLmdhbGxlcmllc19fd3JhcHBlcjphZnRlciwgLmdhbGxlcmllc19fd3JhcHBlciAuZ2FsbGVyeV9fd3JhcHBlcjphZnRlciwgLmMtZmlsdGVyc19fd3JhcHBlcjphZnRlciwgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyc19fdXNlZDphZnRlciwgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0OmFmdGVyLCAuYy1ncmlkX193cmFwcGVyIC5pdGVtOmFmdGVyLCAuYy1jb250YWN0IC5yZXF1ZXN0X2luZm9zOmFmdGVyLCAuYy1jb250YWN0IC5wcm9qZWN0cyAuaXRlbTphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5jbGVhcmZpeDphZnRlciwgLmwtcGFnZTphZnRlciwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5tb2RlbF9faW5mb3JtYXRpb25zOmFmdGVyLCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmRldGFpbDphZnRlciwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5kZXRhaWxfX2NvbnRlbnQ6YWZ0ZXIsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmItcGFnZV9jb250ZW50IC5jaGFyYWNzIHVsOmFmdGVyLCAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb246YWZ0ZXIsIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keTphZnRlciwgLmMtZHluYW1pYyAuYi1keW5hbWljX19ib2R5X193cmFwcGVyIHVsOm5vdCgucGVyc29uYWxfaW5mb3JtYXRpb25zKTphZnRlciwgLmMtdGFiLW1lbnU6YWZ0ZXIsIC5tb2RlbHMgLm1vZGVsX19pbmZvcm1hdGlvbnM6YWZ0ZXIsIC5nYWxsZXJpZXNfX3dyYXBwZXI6YWZ0ZXIsIC5nYWxsZXJpZXNfX3dyYXBwZXIgLmdhbGxlcnlfX3dyYXBwZXI6YWZ0ZXIsIC5jLWZpbHRlcnNfX3dyYXBwZXI6YWZ0ZXIsIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcnNfX3VzZWQ6YWZ0ZXIsIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdDphZnRlciwgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbTphZnRlciwgLmMtY29udGFjdCAucmVxdWVzdF9pbmZvczphZnRlciwgLmMtY29udGFjdCAucHJvamVjdHMgLml0ZW06YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qISBzYW5pdGl6ZS5jc3MgdjQuMS4wIHwgQ0MwIExpY2Vuc2UgfCBnaXRodWIuY29tL2pvbmF0aGFudG5lYWwvc2FuaXRpemUuY3NzICovXG4vKiBEaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG50ZW1wbGF0ZSxcbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBFbGVtZW50cyBvZiBIVE1MIChodHRwczovL3d3dy53My5vcmcvVFIvaHRtbDUvc2VtYW50aWNzLmh0bWwpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgcmVwZWF0aW5nIGJhY2tncm91bmRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQWRkIGJveCBzaXppbmcgaW5oZXJpdGVuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbiosXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAvKiAxICovXG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIDEuIEFkZCB0ZXh0IGRlY29yYXRpb24gaW5oZXJpdGFuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBBZGQgdmVydGljYWwgYWxpZ25tZW50IGluaGVyaXRlbmNlIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG46OmJlZm9yZSxcbjo6YWZ0ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIDEuIEFkZCBib3JkZXIgYm94IHNpemluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCB0aGUgZGVmYXVsdCBjdXJzb3IgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAzLiBBZGQgYSBmbGF0dGVuZWQgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiA0LiBQcmV2ZW50IGZvbnQgc2l6ZSBhZGp1c3RtZW50cyBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIGFuZCBpT1MuXG4gKi9cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgLyogMiAqL1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMyAqL1xuICBsaW5lLWhlaWdodDogMS41O1xuICAvKiAzICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiA0ICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogNSAqLyB9XG5cbi8qIFNlY3Rpb25zIChodHRwczovL3d3dy53My5vcmcvVFIvaHRtbDUvc2VjdGlvbnMuaHRtbClcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplcyBhbmQgbWFyZ2lucyBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpblxuICogYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudCAoaHR0cHM6Ly93d3cudzMub3JnL1RSL2h0bWw1L2dyb3VwaW5nLWNvbnRlbnQuaHRtbClcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgZm9udCBzaXppbmcgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaGVpZ2h0IGluIEZpcmVmb3guXG4gKiAyLiBBZGQgdmlzaWJsZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgbGlzdCBzdHlsZSBvbiBuYXZpZ2F0aW9uIGxpc3RzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5uYXYgb2wsXG5uYXYgdWwge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBBZGQgYSBib3JkZXJlZCB1bmRlcmxpbmUgZWZmZWN0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0ZXh0IGRlY29yYXRpb24gaW4gRmlyZWZveCA0MCsuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGNvbG9ycyBpbiBJRSA5LS5cbiAqL1xubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmMDA7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODMuMzMzMyU7IH1cblxuLyoqXG4gKiBDaGFuZ2UgdGhlIHBvc2l0aW9uaW5nIG9uIHN1cGVyc2NyaXB0IGFuZCBzdWJzY3JpcHQgZWxlbWVudHNcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMS4gQ29ycmVjdCB0aGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA4My4zMzMzJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtLjVlbTsgfVxuXG4vKlxuICogUmVtb3ZlIHRoZSB0ZXh0IHNoYWRvdyBvbiB0ZXh0IHNlbGVjdGlvbnMgKG9waW5pb25hdGVkKS5cbiAqIDEuIFJlc3RvcmUgdGhlIGNvbG9yaW5nIHVuZG9uZSBieSBkZWZpbmluZyB0aGUgdGV4dCBzaGFkb3cgKG9waW5pb25hdGVkKS5cbiAqL1xuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiM2Q0ZmM7XG4gIC8qIDEgKi9cbiAgY29sb3I6ICMwMDAwMDA7XG4gIC8qIDEgKi9cbiAgdGV4dC1zaGFkb3c6IG5vbmU7IH1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkNGZjO1xuICAvKiAxICovXG4gIGNvbG9yOiAjMDAwMDAwO1xuICAvKiAxICovXG4gIHRleHQtc2hhZG93OiBub25lOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnQgKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS9lbWJlZGRlZC1jb250ZW50LTAuaHRtbClcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQ2hhbmdlIHRoZSBhbGlnbm1lbnQgb24gbWVkaWEgZWxlbWVudHMgaW4gYWxsIGJyb3dlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG5pZnJhbWUsXG5pbWcsXG5zdmcsXG52aWRlbyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBmaWxsIGNvbG9yIHRvIG1hdGNoIHRoZSB0ZXh0IGNvbG9yIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5zdmcge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7IH1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi8qIExpbmtzIChodHRwczovL3d3dy53My5vcmcvVFIvaHRtbDUvbGlua3MuaHRtbCNsaW5rcylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgZ2FwcyBpbiB1bmRlcmxpbmVzIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIHdoZW4gaG92ZXJpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwOyB9XG5cbi8qIFRhYnVsYXIgZGF0YSAoaHR0cHM6Ly93d3cudzMub3JnL1RSL2h0bWw1L3RhYnVsYXItZGF0YS5odG1sKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBSZW1vdmUgYm9yZGVyIHNwYWNpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxuLyogdHJhbnNmb3JtLXN0eWxlOiAgKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBkZWZhdWx0IHN0eWxpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAzLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMSAqL1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAzICovIH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIENvcnJlY3QgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2UgaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICogMS4gUHJldmVudCB0aGUgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG46LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqLyB9XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKiAyLiBDaGFuZ2UgdGhlIHJlc2l6ZSBkaXJlY3Rpb24gb24gdGV4dGFyZWFzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAvKiAxICovXG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvbiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBmb3IgT1MgWC5cbiAqL1xuOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvbiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogLjU0OyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKiBXQUktQVJJQSAoaHR0cHM6Ly93d3cudzMub3JnL1RSL2h0bWw1L2RvbS5odG1sI3dhaS1hcmlhKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gYnVzeSBlbGVtZW50cyAob3BpbmlvbmF0ZWQpLlxuICovXG5bYXJpYS1idXN5PVwidHJ1ZVwiXSB7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7IH1cblxuLypcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGNvbnRyb2wgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqL1xuW2FyaWEtY29udHJvbHNdIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBkaXNhYmxlZCwgbm90LWVkaXRhYmxlLCBvciBvdGhlcndpc2VcbiAqIGlub3BlcmFibGUgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqL1xuW2FyaWEtZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi8qIFVzZXIgaW50ZXJhY3Rpb24gKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS9lZGl0aW5nLmh0bWwpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFJlbW92ZSB0aGUgdGFwcGluZyBkZWxheSBvbiBjbGlja2FibGUgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqIDEuIFJlbW92ZSB0aGUgdGFwcGluZyBkZWxheSBpbiBJRSAxMC5cbiAqL1xuYSxcbmFyZWEsXG5idXR0b24sXG5pbnB1dCxcbmxhYmVsLFxuc2VsZWN0LFxudGV4dGFyZWEsXG5bdGFiaW5kZXhdIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAvKiAxICovXG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyB9XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGRpc3BsYXkgb24gdmlzdWFsbHkgaGlkZGVuIGFjY2Vzc2libGUgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqL1xuW2hpZGRlbl1bYXJpYS1oaWRkZW49XCJmYWxzZVwiXSB7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGRpc3BsYXk6IGluaGVyaXQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG5baGlkZGVuXVthcmlhLWhpZGRlbj1cImZhbHNlXCJdOmZvY3VzIHtcbiAgY2xpcDogYXV0bzsgfVxuXG5ib2R5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwic21hcnRwaG9uZSA3NjhcIjtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTQ4MHB4KSB7XG4gICAgYm9keTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJkZXNrdG9wIDE2MDBcIjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDc5cHgpIHtcbiAgICBib2R5OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcImRlc2t0b3AgMTIwMFwiOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgYm9keTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJkZXNrdG9wIDk2MFwiOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICBib2R5OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcInRhYmxldCA3NjhcIjsgfSB9XG5cbmh0bWwge1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICBsaW5lLWhlaWdodDogMS40OyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiA0MHB4O1xuICBmb250LXNpemU6IDIuNXJlbTsgfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgZm9udC1zaXplOiAycmVtOyB9XG5cbmgzIHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LXNpemU6IDEuNzVyZW07IH1cblxuaDQge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtc2l6ZTogMS41cmVtOyB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXNpemU6IDEuMjVyZW07IH1cblxuaDYge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4vKlxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdsYXRvYmxhY2snO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9sYXRvLWJsYWNrLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJy4uL2ZvbnRzL2xhdG8tYmxhY2std2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdsYXRvYmxhY2tfaXRhbGljJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvbGF0by1ibGFja2l0YWxpYy13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcuLi9mb250cy9sYXRvLWJsYWNraXRhbGljLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2JvbGQnO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9sYXRvLWJvbGQtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnLi4vZm9udHMvbGF0by1ib2xkLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cblxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2JvbGRfaXRhbGljJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvbGF0by1ib2xkaXRhbGljLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJy4uL2ZvbnRzL2xhdG8tYm9sZGl0YWxpYy13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2hhaXJsaW5lJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvbGF0by1oYWlybGluZS13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcuLi9mb250cy9sYXRvLWhhaXJsaW5lLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdsYXRvaGFpcmxpbmVfaXRhbGljJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvbGF0by1oYWlybGluZWl0YWxpYy13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcuLi9mb250cy9sYXRvLWhhaXJsaW5laXRhbGljLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cblxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2l0YWxpYyc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL2xhdG8taXRhbGljLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJy4uL2ZvbnRzL2xhdG8taXRhbGljLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cblxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2xpZ2h0JztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvbGF0by1saWdodC13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcuLi9mb250cy9sYXRvLWxpZ2h0LXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cblxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2xpZ2h0X2l0YWxpYyc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL2xhdG8tbGlnaHRpdGFsaWMtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnLi4vZm9udHMvbGF0by1saWdodGl0YWxpYy13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2xhdG9yZWd1bGFyJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvbGF0by1yZWd1bGFyLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJy4uL2ZvbnRzL2xhdG8tcmVndWxhci13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufSovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZ2FwIHtcbiAgcGFkZGluZzogMCAxNXB4OyB9XG5cbi5sLWhlYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB6LWluZGV4OiA5OTk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlM2UzO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAubC1oZWFkZXIuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm94LXNoYWRvdzogMCAyNXB4IDQwcHggLTIwcHggcmdiYSg4NCwgODgsIDkwLCAwLjE1KTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubC1oZWFkZXIge1xuICAgICAgcG9zaXRpb246IGZpeGVkOyB9IH1cblxuLmwtcGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAubC1wYWdlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3NXB4OyB9IH1cblxuLmMtbWVudS1wcmltYXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jLW1lbnUtcHJpbWFyeS0tbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYy1tZW51LXByaW1hcnktLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5jLW1lbnUtcHJpbWFyeS0tbW9iaWxlIC5sb2dvIGltZyB7XG4gICAgICBtYXgtaGVpZ2h0OiA0MHB4OyB9XG4gICAgLmMtbWVudS1wcmltYXJ5LS1tb2JpbGUgLm1lbnUtbW9iaWxlLWN0YSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gICAgICAuYy1tZW51LXByaW1hcnktLW1vYmlsZSAubWVudS1tb2JpbGUtY3RhIHN0cm9uZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6ICM0MWI1ZTQ7IH1cbiAgICAgICAgLmMtbWVudS1wcmltYXJ5LS1tb2JpbGUgLm1lbnUtbW9iaWxlLWN0YSBzdHJvbmc6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMzMzk3YmY7IH1cbiAgICAgICAgLmMtbWVudS1wcmltYXJ5LS1tb2JpbGUgLm1lbnUtbW9iaWxlLWN0YSBzdHJvbmcgYSB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgLmMtbWVudS1wcmltYXJ5LS1tb2JpbGUgLm1lbnUtbW9iaWxlLWN0YSBzdHJvbmcgKyBzdHJvbmcge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgd2hpdGU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLmMtbWVudS1wcmltYXJ5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuYy1tZW51LXByaW1hcnlfX3dyYXBwZXIge1xuICAgIGZvbnQtc2l6ZTogMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDgwcHgpIHtcbiAgICAgIC5jLW1lbnUtcHJpbWFyeV9fd3JhcHBlciB7XG4gICAgICAgIHBhZGRpbmc6IDAgOC4zMzMzMyU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpLCAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDc5cHgpIHtcbiAgICAgIC5jLW1lbnUtcHJpbWFyeV9fd3JhcHBlciB7XG4gICAgICAgIG1heC13aWR0aDogOTAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMCAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYy1tZW51LXByaW1hcnlfX3dyYXBwZXIge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0byBhdXRvOyB9IH1cbiAgLmMtbWVudS1wcmltYXJ5IC5sb2dvIHtcbiAgICB3aWR0aDogMTIuNSU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgei1pbmRleDogOTk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgLmMtbWVudS1wcmltYXJ5IC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDIwJTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYy1tZW51LXByaW1hcnkgLmxvZ28ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWF4LXdpZHRoOiAyMC44MzMzMyU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHtcbiAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jLW1lbnUtcHJpbWFyeSAucmlnaHQtbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICAuYy1tZW51LXByaW1hcnkgLnJpZ2h0LW1lbnUgLmhpZ2hsaWdodCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IC5oaWdobGlnaHQ6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgY29udGVudDogXCJcXGYxMDVcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICAuYy1tZW51LXByaW1hcnkgLnJpZ2h0LW1lbnUgdWwge1xuICAgICAgY29sb3I6ICM2YjZiNmI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgIC5jLW1lbnUtcHJpbWFyeSAucmlnaHQtbWVudSB1bCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHVsOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMjAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlM2UzZTM7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHVsOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHVsIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cbiAgICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHVsIGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjNmI2YjZiOyB9XG4gICAgICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHVsIGxpIGE6dmlzaXRlZCB7XG4gICAgICAgICAgICBjb2xvcjogIzZiNmI2YjsgfVxuICAgICAgICAgIC5jLW1lbnUtcHJpbWFyeSAucmlnaHQtbWVudSB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gICAgICAgICAgLmMtbWVudS1wcmltYXJ5IC5yaWdodC1tZW51IHVsIGxpIGE6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gIC5jLW1lbnUtcHJpbWFyeSAuaGFtYnVyZ2VyLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDUwJTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgIC5jLW1lbnUtcHJpbWFyeSAuaGFtYnVyZ2VyLW1lbnUge1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5jLW1lbnUtcHJpbWFyeSAuaGFtYnVyZ2VyLW1lbnVfX3dyYXBwZXIge1xuICAgICAgd2lkdGg6IDUxcHg7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kOiAjNDFiNWU0O1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLmMtbWVudS1wcmltYXJ5IC5oYW1idXJnZXItbWVudSAuYmFyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMG1zIDMwMG1zO1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICBoZWlnaHQ6IDVweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlOyB9XG4gICAgICAuYy1tZW51LXByaW1hcnkgLmhhbWJ1cmdlci1tZW51IC5iYXI6YWZ0ZXIsIC5jLW1lbnUtcHJpbWFyeSAuaGFtYnVyZ2VyLW1lbnUgLmJhcjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDMwMG1zIDMwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKSwgdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTsgfVxuICAgICAgLmMtbWVudS1wcmltYXJ5IC5oYW1idXJnZXItbWVudSAuYmFyOmFmdGVyIHtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMzAwbXMgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLCB0cmFuc2Zvcm0gMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpOyB9XG4gICAgLmMtbWVudS1wcmltYXJ5IC5oYW1idXJnZXItbWVudS5hbmltYXRlIC5iYXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwKTsgfVxuICAgICAgLmMtbWVudS1wcmltYXJ5IC5oYW1idXJnZXItbWVudS5hbmltYXRlIC5iYXI6YWZ0ZXIge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDMwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKSwgdHJhbnNmb3JtIDMwMG1zIDMwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTsgfVxuICAgICAgLmMtbWVudS1wcmltYXJ5IC5oYW1idXJnZXItbWVudS5hbmltYXRlIC5iYXI6YmVmb3JlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLCB0cmFuc2Zvcm0gMzAwbXMgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAuYy1tZW51LXByaW1hcnkgLmhhbWJ1cmdlci1tZW51IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgLmMtbWVudS1wcmltYXJ5ICNtZW51LXByaW1hcnktbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuYy1tZW51LXByaW1hcnkgbmF2IHtcbiAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSBhbmQgKG1heC13aWR0aDogMTQ3OXB4KSB7XG4gICAgICAuYy1tZW51LXByaW1hcnkgbmF2IHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAuYy1tZW51LXByaW1hcnkgbmF2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgdWwge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgdWwge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgLmMtbWVudS1wcmltYXJ5IG5hdiB1bCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSBhbmQgKG1heC13aWR0aDogMTQ3OXB4KSwgKG1pbi13aWR0aDogMTQ4MHB4KSB7XG4gICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgdWwge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IHVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDguMzMzMzMlO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgICAgd2lkdGg6IDM1JTsgfSB9XG4gICAgICAuYy1tZW51LXByaW1hcnkgbmF2IHVsLm1lbnUtbW9iaWxlLWV4dHJhIGxpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQxYjVlNDsgfVxuICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IHVsLm1lbnUtbW9iaWxlLWV4dHJhIGxpIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IHVsLm1lbnUtbW9iaWxlLWV4dHJhIGxpIC5zZXAge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIHNhbnMtc2VyaWY7IH1cbiAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjNmI2YjZiOyB9XG4gICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkgYTp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogIzZiNmI2YjsgfVxuICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IGxpIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkgYTphY3RpdmUge1xuICAgICAgICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSBhbmQgKG1heC13aWR0aDogMTQ3OXB4KSwgKG1pbi13aWR0aDogMTQ4MHB4KSB7XG4gICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkgYTpob3ZlciArIC5zdWItbWVudSB7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCksIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYSwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LXBhZ2UtcGFyZW50ID4gYSwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzZiNmI2YjsgfSB9XG4gICAgICAuYy1tZW51LXByaW1hcnkgbmF2IGxpLmN1cnJlbnQtbWVudS1pdGVtID4gYSwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGE6dmlzaXRlZCwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LXBhZ2UtcGFyZW50ID4gYSwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LXBhZ2UtcGFyZW50ID4gYTp2aXNpdGVkLCAuYy1tZW51LXByaW1hcnkgbmF2IGxpLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhLCAuYy1tZW51LXByaW1hcnkgbmF2IGxpLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhOnZpc2l0ZWQsIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGk6aG92ZXIgPiBhLCAuYy1tZW51LXByaW1hcnkgbmF2IGxpOmhvdmVyID4gYTp2aXNpdGVkIHtcbiAgICAgICAgY29sb3I6ICM0MWI1ZTQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgICAgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LW1lbnUtaXRlbSA+IGEsIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkuY3VycmVudC1tZW51LWl0ZW0gPiBhOnZpc2l0ZWQsIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkuY3VycmVudC1wYWdlLXBhcmVudCA+IGEsIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkuY3VycmVudC1wYWdlLXBhcmVudCA+IGE6dmlzaXRlZCwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYSwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LW1lbnUtcGFyZW50ID4gYTp2aXNpdGVkLCAuYy1tZW51LXByaW1hcnkgbmF2IGxpOmhvdmVyID4gYSwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaTpob3ZlciA+IGE6dmlzaXRlZCB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7IH0gfVxuICAgICAgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LW1lbnUtaXRlbSB1bCAuY3VycmVudC1tZW51LWl0ZW0gYSBzcGFuOjphZnRlciwgLmMtbWVudS1wcmltYXJ5IG5hdiBsaS5jdXJyZW50LXBhZ2UtcGFyZW50IHVsIC5jdXJyZW50LW1lbnUtaXRlbSBhIHNwYW46OmFmdGVyLCAuYy1tZW51LXByaW1hcnkgbmF2IGxpLmN1cnJlbnQtbWVudS1wYXJlbnQgdWwgLmN1cnJlbnQtbWVudS1pdGVtIGEgc3Bhbjo6YWZ0ZXIsIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGk6aG92ZXIgdWwgLmN1cnJlbnQtbWVudS1pdGVtIGEgc3Bhbjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCksIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlM2UzZTM7IH1cbiAgICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAgICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM0MWI1ZTQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAxM3B4IDUlO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkgYTp2aXNpdGVkIHtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzMzk3YmY7IH0gfVxuICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgLnN1Yi1tZW51IHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMC41cywgb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogOTAxOyB9XG4gICAgICAuYy1tZW51LXByaW1hcnkgbmF2IC5zdWItbWVudSAuc2VwIHtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4OyB9XG4gICAgICAuYy1tZW51LXByaW1hcnkgbmF2IC5zdWItbWVudSB1bCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM0MWI1ZTQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMThweCAwIDIzcHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAuYy1tZW51LXByaW1hcnkgbmF2IC5zdWItbWVudSBsaSB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IC5zdWItbWVudSBsaSBhIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IC5zdWItbWVudSBsaSBhOnZpc2l0ZWQge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAgICAgLmMtbWVudS1wcmltYXJ5IG5hdiAuc3ViLW1lbnUgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IC5zdWItbWVudSBsaSBhOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgICAgLmMtbWVudS1wcmltYXJ5IG5hdiAuc3ViLW1lbnUgbGkgYSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgLnN1Yi1tZW51IGxpIGEgc3BhbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgICAgLmMtbWVudS1wcmltYXJ5IG5hdiAuc3ViLW1lbnUgbGkgYTpob3ZlciBzcGFuOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgICAgICAgLmMtbWVudS1wcmltYXJ5IG5hdiAuc3ViLW1lbnUgbGk6bGFzdC1jaGlsZCAuc2VwIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgLnN1Yi1tZW51IGxpOmhvdmVyIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4OyB9XG4gICAgLmMtbWVudS1wcmltYXJ5IG5hdiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciAuc3ViLW1lbnUge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5jLW1lbnUtcHJpbWFyeSBuYXYgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOmFmdGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCksIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAuYy1tZW51LXByaW1hcnkgbmF2IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyICNEZXNjcmlwdGlvbi1jb250ZW50LnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAubW9kZWxfX2luZm9ybWF0aW9ucyA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9IH1cblxuLnNpbmdsZS1fbW9kZWwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5tb2RlbF9faW5mb3JtYXRpb25zIHtcbiAgbWFyZ2luLXRvcDogMjVweDsgfVxuXG4uYy1oYWxmLXJpZ2h0IHtcbiAgd2lkdGg6IDUwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIC5jLWhhbGYtcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbm9uZTsgfSB9XG4gIC5jLWhhbGYtcmlnaHQuaXMtZnVsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAuYy1oYWxmLXJpZ2h0LmlzLWZ1bGwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1keW5hbWljX19ib2R5X193cmFwcGVyIHtcbiAgICAgIHdpZHRoOiA0NS4zNzgxNSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMuMzYxMzQlOyB9XG4gICAgLmMtaGFsZi1yaWdodC5pcy1mdWxsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmItZHluYW1pY19fbWVkaWEge1xuICAgICAgd2lkdGg6IDQ5LjU3OTgzJTsgfVxuICAgIC5jLWhhbGYtcmlnaHQuaXMtZnVsbCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5iLXBhZ2UtdGl0bGUge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgIC5jLWhhbGYtcmlnaHQuaXMtZnVsbCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5iLXBhZ2VfY29udGVudF9fYm90dG9tIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYy1oYWxmLXJpZ2h0IC50ZXh0LS1ncmV5IHtcbiAgICBjb2xvcjogIzU0NTg1YTsgfVxuICAuYy1oYWxmLXJpZ2h0IC50ZXh0LS1saWdodCB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC5jLWhhbGYtcmlnaHQgLnRleHQtLWJhc2Uge1xuICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gIC5jLWhhbGYtcmlnaHQ6bm90KC5pcy1mdWxsKSAuYi1wYWdlX2NvbnRlbnQsIC5jLWhhbGYtcmlnaHQ6bm90KC5pcy1mdWxsKSAuYi1keW5hbWljIHtcbiAgICBtYXgtd2lkdGg6IDEwMDBweDsgfVxuICAuYy1oYWxmLXJpZ2h0Lmhhcy1zb3VyY2UgLmItcGFnZV9jb250ZW50LCAuYy1oYWxmLXJpZ2h0Lmhhcy1zb3VyY2UgLmItZHluYW1pYyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5jLWhhbGYtcmlnaHQgaDEsIC5jLWhhbGYtcmlnaHQgLnBhZ2UtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmMtaGFsZi1yaWdodCBoMSwgLmMtaGFsZi1yaWdodCAucGFnZS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gICAgLmMtaGFsZi1yaWdodCBoMSAuc3VydGl0cmUsIC5jLWhhbGYtcmlnaHQgLnBhZ2UtdGl0bGUgLnN1cnRpdHJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMjBweDsgfVxuICAuYy1oYWxmLXJpZ2h0IGgyLCAuYy1oYWxmLXJpZ2h0IGgzLCAuYy1oYWxmLXJpZ2h0IGg0LCAuYy1oYWxmLXJpZ2h0IGg1LCAuYy1oYWxmLXJpZ2h0IGg2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDsgfSB9XG4gIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnNlcCB7XG4gICAgcGFkZGluZzogNXB4IDAgMTVweCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnNlcDphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTNlM2UzOyB9XG4gIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnNvY2lhbCB7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnNvY2lhbCAuc2VwIHtcbiAgICAgIG1hcmdpbjogMTVweCAwOyB9XG4gICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuc29jaWFsIGgzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5zb2NpYWwgLmFkZHRoaXNfdG9vbGJveCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG4gICAgICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5zb2NpYWwgLmFkZHRoaXNfdG9vbGJveCBhIHtcbiAgICAgICAgY29sb3I6ICM1NDU4NWE7IH1cbiAgICAgICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuc29jaWFsIC5hZGR0aGlzX3Rvb2xib3ggYTp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogIzU0NTg1YTsgfVxuICAgICAgICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5zb2NpYWwgLmFkZHRoaXNfdG9vbGJveCBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogIzQxYjVlNDsgfVxuICAgICAgICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5zb2NpYWwgLmFkZHRoaXNfdG9vbGJveCBhOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICM0MWI1ZTQ7IH1cbiAgICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnNvY2lhbCAuYWRkdGhpc190b29sYm94IGEge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmMtc2xpY2sgLm1vZGVsX19pbmZvcm1hdGlvbnMgPiBkaXYge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5jLXNsaWNrIC5tb2RlbF9faW5mb3JtYXRpb25zID4gZGl2IC5zcHJpdGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLm1vZGVsX19pbmZvcm1hdGlvbnMge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5tb2RlbF9faW5mb3JtYXRpb25zID4gZGl2IHtcbiAgICAgIHdpZHRoOiAyNSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIC8qQGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWJvdHRvbToyMHB4O1xuXHRcdFx0XHRcdFx0fSovXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgc2Fucy1zZXJpZjsgfVxuICAgICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAudGFiLWNvbnRlbnQgLmItcGFnZV9jb250ZW50IC5tb2RlbF9faW5mb3JtYXRpb25zID4gZGl2IC5zcHJpdGUsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAubW9kZWxfX2luZm9ybWF0aW9ucyA+IGRpdiAudGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAubW9kZWxfX2luZm9ybWF0aW9ucyA+IGRpdiAudGl0bGUge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgLypAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6NXB4IDAgMHB4O1xuXHRcdFx0XHRcdFx0XHR9Ki8gfVxuICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmRldGFpbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAuZGV0YWlsX19sYWJlbCB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmRldGFpbF9fbGFiZWwgYSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAjNDFiNWU0O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAuZGV0YWlsX19sYWJlbCBhOmFmdGVyIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA3OFwiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmRldGFpbF9fcmRjLCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLmRldGFpbF9fZmxvb3IsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAuZGV0YWlsX19nYXJhZ2Uge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiA2cHggMTBweDsgfVxuICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAuZGV0YWlsX19jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiAjNDFiNWU0O1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmVtcHR5LXNlYXJjaCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cbiAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnRfX3dyYXBwZXIge1xuICAgIHBhZGRpbmc6IDQ1cHggMDsgfVxuICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmItcGFnZV9jb250ZW50X193cmFwcGVyIC5iLXBhZ2UtY29udGVudCwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnRfX3dyYXBwZXIgLmItcGFnZS10aXRsZSwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnRfX3dyYXBwZXIgLmItcGFnZV9jb250ZW50X19ib3R0b20ge1xuICAgICAgcGFkZGluZzogMCAzLjM2MTM0JTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnRfX3dyYXBwZXIgLmItcGFnZS1jb250ZW50LCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5iLXBhZ2VfY29udGVudF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnRfX2JvdHRvbSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1heC13aWR0aDogOTAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnQgLmNoYXJhY3Mge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnQgLmNoYXJhY3MgaDIsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmItcGFnZV9jb250ZW50IC5jaGFyYWNzIGgzLCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5iLXBhZ2VfY29udGVudCAuY2hhcmFjcyBoNCwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnQgLmNoYXJhY3MgaDUsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmItcGFnZV9jb250ZW50IC5jaGFyYWNzIGg2IHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5iLXBhZ2VfY29udGVudCAuY2hhcmFjcyB1bCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBjb2x1bW4tY291bnQ6IDI7IH1cbiAgICAgIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXIgLmItcGFnZV9jb250ZW50IC5jaGFyYWNzIHVsIGxpIHtcbiAgICAgICAgLypmbG9hdDpsZWZ0O1xuXHRcdFx0XHRcdFx0IHdpZHRoOjUwJTsqL1xuICAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgICAgIHRleHQtaW5kZW50OiAtMWVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMy4zNjEzNCU7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgICAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC5iLXBhZ2VfY29udGVudCAuY2hhcmFjcyB1bCBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgLmMtaGFsZi1yaWdodF9fd3JhcHBlciAuYi1wYWdlX2NvbnRlbnQgLmNoYXJhY3MgLnNlcCB7XG4gICAgICB3aWR0aDogMjAwJTsgfVxuICAuYy1oYWxmLXJpZ2h0Lmhhcy1hY2NvcmRpb24gLmItcGFnZV9jb250ZW50X193cmFwcGVyIC50YWItY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5jLWhhbGYtcmlnaHQuaGFzLWFjY29yZGlvbiAuYi1wYWdlX2NvbnRlbnRfX3dyYXBwZXIgLnRhYi1jb250ZW50OmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jLWhhbGYtbGVmdCB7XG4gIHdpZHRoOiA1MCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQxYjVlNDtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgYW5kIChtYXgtd2lkdGg6IDE0NzlweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgLmMtaGFsZi1sZWZ0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9wYXR0ZXJuLnBuZ1wiKSAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSBhbmQgKG1heC13aWR0aDogMTQ3OXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAuYy1oYWxmLWxlZnQgI0Rlc2NyaXB0aW9uLW1lZGlhcyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmMtaGFsZi1sZWZ0IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmMtaGFsZi1sZWZ0ICNnb29nbGUtbWFwcyBpbWcge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLmMtaGFsZi1sZWZ0IGgyLCAuYy1oYWxmLWxlZnQgaDMsIC5jLWhhbGYtbGVmdCBoNCwgLmMtaGFsZi1sZWZ0IGg1LCAuYy1oYWxmLWxlZnQgaDYge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAzMXB4O1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuYy1oYWxmLWxlZnQgaDIgLnN1cnRpdHJlLCAuYy1oYWxmLWxlZnQgaDMgLnN1cnRpdHJlLCAuYy1oYWxmLWxlZnQgaDQgLnN1cnRpdHJlLCAuYy1oYWxmLWxlZnQgaDUgLnN1cnRpdHJlLCAuYy1oYWxmLWxlZnQgaDYgLnN1cnRpdHJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7IH1cbiAgLmMtaGFsZi1sZWZ0IGltZyB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCksIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCksIChtaW4td2lkdGg6IDEyODBweCkgYW5kIChtYXgtd2lkdGg6IDE0NzlweCkge1xuICAgICAgLmMtaGFsZi1sZWZ0IGltZyB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH0gfVxuICAuYy1oYWxmLWxlZnQuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5jLWhhbGYtbGVmdCAudGFiLW1lZGlhcyB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgLmMtaGFsZi1sZWZ0Lmhhcy1hY2NvcmRpb24gLnRhYi1tZWRpYXMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYy1oYWxmLWxlZnQuaGFzLWFjY29yZGlvbiAudGFiLW1lZGlhczpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgLmMtaGFsZi1sZWZ0Lmhhcy1hY2NvcmRpb24gLnRhZ19zZWxsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuYy1oYWxmLWxlZnQuaGFzLWFjY29yZGlvbiAudGFnX3NlbGwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICB0b3A6IDEwcHg7XG4gICAgbGVmdDogOHB4OyB9XG4gICAgLmMtaGFsZi1sZWZ0Lmhhcy1hY2NvcmRpb24gLnRhZ19zZWxsIGltZyB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5jLXNvY2lhbCB7XG4gIGJhY2tncm91bmQ6ICMzMzk3YmY7IH1cbiAgLmMtc29jaWFsIGEge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5jLXNvY2lhbCBhOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmMtc29jaWFsIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmMtc29jaWFsIGE6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAuYy1zb2NpYWxfX3dyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5jLXNvY2lhbF9fd3JhcHBlciBsaSBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAuYy1zb2NpYWwgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTVweCA2NXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDY2cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgIC5jLXNvY2lhbCBhIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgIC5jLXNvY2lhbCBhIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgLmMtc29jaWFsIGEgaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfSB9XG4gICAgLmMtc29jaWFsIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzNiYTNjZDsgfVxuICAgIC5jLXNvY2lhbCBhLmZhY2Vib29rIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggNTVweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgIC5jLXNvY2lhbCBhLmZhY2Vib29rIHtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7IH0gfVxuICAuYy1zb2NpYWwgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmMtc29jaWFsIHVsIGxpIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgLmMtc29jaWFsIHVsIGxpIHtcbiAgICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYy1zb2NpYWwgdWwgbGkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGZsb2F0OiBub25lOyB9IH1cblxuLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uLS1faGFsZl9ibG9jayB7XG4gIHdpZHRoOiA1MCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpLCAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDc5cHgpIHtcbiAgICAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb24tLV9oYWxmX2Jsb2NrIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH0gfVxuICAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb24tLV9oYWxmX2Jsb2NrIC5jLXNlY3Rpb25fX2JvZHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsgfVxuICAgIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbi0tX2hhbGZfYmxvY2sgLmMtc2VjdGlvbl9fYm9keV9fd3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICAgIG1heC13aWR0aDogMzkwcHg7IH1cblxuLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uLS1fc3RkX2Jsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiA3MHB4IDMuMzYxMzQlOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbi0tX3N0ZF9ibG9jayB7XG4gICAgICBwYWRkaW5nOiA3MHB4IDA7XG4gICAgICBtYXgtd2lkdGg6IDkwJSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuICAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb24tLV9zdGRfYmxvY2sgLmMtc2VjdGlvbl9fd3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb24tLV9zdGRfYmxvY2suaGFzLXRodW1iLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7IH1cblxuLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbiBoMSwgLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uIGgyIHtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbiBoMSAuc3ViX3RpdGxlLCAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb24gaDIgLnN1Yl90aXRsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICBmb250LXNpemU6IDMuNzVyZW07IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb24gaDEgLnN1Yl90aXRsZSwgLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uIGgyIC5zdWJfdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTsgfSB9XG4gIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbiBoMiAuc3ViX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgZm9udC1zaXplOiAyLjgxMjVyZW07IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbiBoMiAuc3ViX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICBmb250LXNpemU6IDIuMTg3NXJlbTsgfSB9XG4gIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbiBoMyB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7IH1cbiAgLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uIHVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAuYy1ibG9jay1saXN0aW5nIC5jLXNlY3Rpb24gdWwgbGkgYSB7XG4gICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbiB1bCBsaSBhOnZpc2l0ZWQge1xuICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbiB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICM1NDU4NWE7IH1cbiAgICAgIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbiB1bCBsaSBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjNTQ1ODVhOyB9XG4gICAgLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uIHVsIGxpIGEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgLmMtYmxvY2stbGlzdGluZyAuYy1zZWN0aW9uIHVsIGxpIGE6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgY29udGVudDogXCJcXGYwNTRcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gIC5jLWJsb2NrLWxpc3RpbmcgLmMtc2VjdGlvbl9fbWVkaWEgc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaXRhbGljO1xuICAgIG1hcmdpbi10b3A6IDVweDsgfVxuXG4uYy1jcmVkaXQge1xuICBiYWNrZ3JvdW5kOiAjNDFiNWU0O1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMzMzk3YmY7IH1cbiAgLmMtY3JlZGl0IGEge1xuICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgIC5jLWNyZWRpdCBhOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmMtY3JlZGl0IGE6aG92ZXIge1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgLmMtY3JlZGl0IGE6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAuYy1jcmVkaXRfX3dyYXBwZXIge1xuICAgIHBhZGRpbmc6IDEycHggMDtcbiAgICBmb250LXNpemU6IDA7IH1cbiAgLmMtY3JlZGl0LWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmMtY3JlZGl0LWl0ZW0ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWZvb3Rlci1ncm91cDsgfVxuICAgICAgICAuYy1jcmVkaXQtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYy1jcmVkaXQgLnZveW91IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLmMtY3JlZGl0IHVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jLWNyZWRpdCB1bCB7XG4gICAgICAgIGZsb2F0OiBub25lOyB9IH1cbiAgICAuYy1jcmVkaXQgdWwgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuYy1jcmVkaXQgdWwgbGkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfSB9XG5cbi5jLWJ0biB7XG4gIHBhZGRpbmc6IDEwcHggMjVweCAxMHB4IDIwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jLWJ0bi0tYmFzZSwgLmMtYnRuLS1iYXNlOnZpc2l0ZWQge1xuICAgIGJhY2tncm91bmQ6ICM0MWI1ZTQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMHB4IDJweCAjNDFiNWU0OyB9XG4gIC5jLWJ0bi0tYmFzZTpob3ZlciwgLmMtYnRuLS1iYXNlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjb2xvcjogIzQxYjVlNDsgfVxuICAuYy1idG4tLXJldmVydCwgLmMtYnRuLS1yZXZlcnQ6dmlzaXRlZCB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgY29sb3I6ICM0MWI1ZTQ7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAwcHggMnB4IHdoaXRlOyB9XG4gIC5jLWJ0bi0tcmV2ZXJ0OmhvdmVyLCAuYy1idG4tLXJldmVydDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogIzQxYjVlNDtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLmMtYnRuOmFmdGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICBjb250ZW50OiBcIlxcZjEwNVwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLmlzLWZ1bGwgLmMtZHluYW1pYyB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gIC5pcy1mdWxsIC5jLWR5bmFtaWMgLmItZHluYW1pYyB7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5pcy1mdWxsIC5jLWR5bmFtaWMgLmItZHluYW1pYyAuc2VwIHtcbiAgICAgIG1hcmdpbjogNDVweCAwOyB9XG4gICAgLmlzLWZ1bGwgLmMtZHluYW1pYyAuYi1keW5hbWljOmxhc3QtY2hpbGQgLnNlcCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uYy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuYy1keW5hbWljIC5iLWR5bmFtaWMge1xuICAgIHBhZGRpbmc6IDAgMy4zNjEzNCU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pYyB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1heC13aWR0aDogOTAlICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgICAuYy1keW5hbWljIC5iLWR5bmFtaWM6bGFzdC1jaGlsZCAuc2VwIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYy1keW5hbWljIC5iLWR5bmFtaWMgLnNlcCB7XG4gICAgICBtYXJnaW46IDIwcHggMDsgfVxuICAgIC5jLWR5bmFtaWMgLmItZHluYW1pYyBoMiwgLmMtZHluYW1pYyAuYi1keW5hbWljIGgzLCAuYy1keW5hbWljIC5iLWR5bmFtaWMgaDQsIC5jLWR5bmFtaWMgLmItZHluYW1pYyBoNSwgLmMtZHluYW1pYyAuYi1keW5hbWljIGg2IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBmb250LXNpemU6IDMxcHg7XG4gICAgICBmb250LXNpemU6IDEuOTM3NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pYyBoMiAuc3VydGl0cmUsIC5jLWR5bmFtaWMgLmItZHluYW1pYyBoMyAuc3VydGl0cmUsIC5jLWR5bmFtaWMgLmItZHluYW1pYyBoNCAuc3VydGl0cmUsIC5jLWR5bmFtaWMgLmItZHluYW1pYyBoNSAuc3VydGl0cmUsIC5jLWR5bmFtaWMgLmItZHluYW1pYyBoNiAuc3VydGl0cmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgLmMtZHluYW1pYyAuYi1keW5hbWljX19ib2R5IHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7IH0gfVxuICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA2Ni4zODY1NSU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtZm9vdGVyLWdyb3VwO1xuICAgICAgICAgIGZsb2F0OiBub25lOyB9IH1cbiAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciB1bDpub3QoLnBlcnNvbmFsX2luZm9ybWF0aW9ucykge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgY29sdW1uLWNvdW50OiAyOyB9XG4gICAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciB1bDpub3QoLnBlcnNvbmFsX2luZm9ybWF0aW9ucykgbGkge1xuICAgICAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTFlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgICAvKmZsb2F0OmxlZnQ7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiBzcGFuKDEyIGluc2lkZSBuby1ndXR0ZXJzKTsqL1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMuMzYxMzQlOyB9XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciB1bDpub3QoLnBlcnNvbmFsX2luZm9ybWF0aW9ucykgbGkge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgICAuYy1keW5hbWljIC5iLWR5bmFtaWNfX2JvZHlfX3dyYXBwZXIgLnBlcnNvbmFsX2luZm9ybWF0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgICAgLmMtZHluYW1pYyAuYi1keW5hbWljX19ib2R5X193cmFwcGVyIC5wZXJzb25hbF9pbmZvcm1hdGlvbnMgbGkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgICAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciAucGVyc29uYWxfaW5mb3JtYXRpb25zIGxpOmJlZm9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9XG4gICAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciAucGVyc29uYWxfaW5mb3JtYXRpb25zIC5waG9uZTpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjA5NVwiOyB9XG4gICAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciAucGVyc29uYWxfaW5mb3JtYXRpb25zIC5jZWxsOmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjEwYlwiOyB9XG4gICAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fYm9keV9fd3JhcHBlciAucGVyc29uYWxfaW5mb3JtYXRpb25zIC5mYXg6YmVmb3JlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgICAgY29udGVudDogXCJcXGYxYWNcIjsgfVxuICAgICAgICAuYy1keW5hbWljIC5iLWR5bmFtaWNfX2JvZHlfX3dyYXBwZXIgLnBlcnNvbmFsX2luZm9ybWF0aW9ucyAuZW1haWw6YmVmb3JlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgICAgY29udGVudDogXCJcXGYwZTBcIjsgfVxuICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fbWVkaWEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDI4LjU3MTQzJTtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgLmMtZHluYW1pYyAuYi1keW5hbWljX19tZWRpYSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgICAgICAgIGZsb2F0OiBub25lOyB9IH1cbiAgICAgIC5jLWR5bmFtaWMgLmItZHluYW1pY19fbWVkaWEgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfVxuXG4udG9nZ2xlLXRhYiB7XG4gIGJhY2tncm91bmQ6ICM0MWI1ZTQ7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTJweCAzLjM2MTM0JTtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB3aGl0ZTsgfVxuICAudG9nZ2xlLXRhYjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6ICMzYmEzY2Q7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAudG9nZ2xlLXRhYjphZnRlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC50b2dnbGUtdGFiLnRhYi1jb250ZW50LS1hY3RpdmU6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcXGYxMDZcIjsgfSB9XG5cbi5jLXRhYi1tZW51IHtcbiAgYmFja2dyb3VuZDogIzQxYjVlNDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIC5jLXRhYi1tZW51LnhzLW9ubHkgbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jLXRhYi1tZW51IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuYy10YWItbWVudSB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG4gICAgICAuYy10YWItbWVudSB1bCBsaSBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAgIC5jLXRhYi1tZW51IHVsIGxpIGE6dmlzaXRlZCB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAgIC5jLXRhYi1tZW51IHVsIGxpIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgICAgICAuYy10YWItbWVudSB1bCBsaSBhOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgICAuYy10YWItbWVudSB1bCBsaSBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuICAgICAgICAuYy10YWItbWVudSB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjM2JhM2NkOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpLCAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDc5cHgpLCAobWluLXdpZHRoOiAxNDgwcHgpIHtcbiAgICAgICAgICAuYy10YWItbWVudSB1bCBsaSBhIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHdoaXRlOyB9XG4gICAgICAgICAgICAuYy10YWItbWVudSB1bCBsaSBhIGgyLCAuYy10YWItbWVudSB1bCBsaSBhIGgzLCAuYy10YWItbWVudSB1bCBsaSBhIGg0LCAuYy10YWItbWVudSB1bCBsaSBhIGg1LCAuYy10YWItbWVudSB1bCBsaSBhIGg2IHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAgIC5jLXRhYi1tZW51IHVsIGxpIGEge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHdoaXRlOyB9XG4gICAgICAgICAgICAuYy10YWItbWVudSB1bCBsaSBhIGgyLCAuYy10YWItbWVudSB1bCBsaSBhIGgzLCAuYy10YWItbWVudSB1bCBsaSBhIGg0LCAuYy10YWItbWVudSB1bCBsaSBhIGg1LCAuYy10YWItbWVudSB1bCBsaSBhIGg2IHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAgICAgLmMtdGFiLW1lbnUgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gYSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBjb2xvcjogIzQxYjVlNDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAgIC5jLXRhYi1tZW51IHVsIGxpLmN1cnJlbnRfcGFnZV9pdGVtIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzNiYTNjZDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgfSB9XG4gICAgICAgIC5jLXRhYi1tZW51IHVsIGxpLmN1cnJlbnRfcGFnZV9pdGVtIGEgc3BhbiB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogMTI4MHB4KSBhbmQgKG1heC13aWR0aDogMTQ3OXB4KSwgKG1pbi13aWR0aDogMTQ4MHB4KSB7XG4gICAgICAgICAgICAuYy10YWItbWVudSB1bCBsaS5jdXJyZW50X3BhZ2VfaXRlbSBhIHNwYW46YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNDFiNWU0O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgICAgICBsZWZ0OiAwJTsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgLmMtdGFiLW1lbnUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmMtdGFiLW1lbnUgdWwgbGkgYSB7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMjBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgICAgICAgLmMtdGFiLW1lbnUgdWwgbGkgYSBoMyB7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9IH1cblxuLnRhYi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAudGFiLWNvbnRlbnQudGFiLWNvbnRlbnQtLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnRhYi1jb250ZW50LS1nYWxsZXJ5IC5iLXBhZ2VfY29udGVudF9fd3JhcHBlciB7XG4gICAgcGFkZGluZzogMDsgfVxuXG4uYy1zbGljayB7XG4gIG1hcmdpbjogMCAyNXB4OyB9XG4gIC5jLXNsaWNrIGltZyB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLmMtc2xpY2sgLnNsaWNrLXByZXYsIC5jLXNsaWNrIC5zbGljay1uZXh0IHtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6IDIxcHg7IH1cbiAgICAuYy1zbGljayAuc2xpY2stcHJldjpiZWZvcmUsIC5jLXNsaWNrIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIGNvbG9yOiAjNDFiNWU0O1xuICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgZm9udC1zaXplOiAyLjE4NzVyZW07XG4gICAgICAtd2Via2l0LXRleHQtc3Ryb2tlOiAzcHggI2ZmZjsgfVxuICAuYy1zbGljayAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDUzXCI7IH1cbiAgLmMtc2xpY2sgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA1NFwiOyB9XG4gIC5jLXNsaWNrIC5tb2RlbCB7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAuYy1zbGljayAucGxhbl9kZXNjcmlwdGlvbiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgfVxuXG4uYy1mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAjNDFiNWU0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDUwMTsgfVxuICAuYy1mb290ZXJfX2JvZHkge1xuICAgIHBhZGRpbmc6IDE4cHggMDsgfVxuXG4ud2lkZ2V0LWFyZWEge1xuICBjb2xvcjogI2ZmZjsgfVxuICAud2lkZ2V0LWFyZWFfX3dyYXBwZXIge1xuICAgIGZvbnQtc2l6ZTogMDsgfVxuICAud2lkZ2V0LWFyZWEgYSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAud2lkZ2V0LWFyZWEgYTp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLndpZGdldC1hcmVhIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAud2lkZ2V0LWFyZWEgYTphY3RpdmUge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLndpZGdldC1hcmVhIC53aWRnZXQtaXRlbSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB3aWR0aDogMjUlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAud2lkZ2V0LWFyZWEgLndpZGdldC1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC53aWRnZXQtYXJlYSAud2lkZ2V0LWl0ZW0gLnRleHR3aWRnZXQge1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07IH1cbiAgICAgIC53aWRnZXQtYXJlYSAud2lkZ2V0LWl0ZW0gLnRleHR3aWRnZXQgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgLndpZGdldC1hcmVhIC53aWRnZXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC53aWRnZXQtYXJlYSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLndpZGdldC1hcmVhIHVsIGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC53aWRnZXQtYXJlYSB1bCB1bCB7XG4gICAgICBtYXJnaW46IDAgMCAxOHB4IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAgIC53aWRnZXQtYXJlYSB1bCB1bCBhIHtcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTsgfVxuICAgICAgICAud2lkZ2V0LWFyZWEgdWwgdWwgYTp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAud2lkZ2V0LWFyZWEgdWwgdWwgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgLndpZGdldC1hcmVhIHVsIHVsIGE6YWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLndpZGdldC1hcmVhIHVsIHVsIGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cblxuLm1vZGVscyArIC5zZXAge1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG5cbi5tb2RlbHMgLmNvdW50IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5tb2RlbHMuZ3JpZCAubW9kZWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UzOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDc5cHgpLCAobWluLXdpZHRoOiAxNDgwcHgpIHtcbiAgICAubW9kZWxzLmdyaWQgLm1vZGVsIHtcbiAgICAgIHdpZHRoOiAzMC42NjY2NyU7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgLm1vZGVscy5ncmlkIC5tb2RlbDpudGgtY2hpbGQoM24gKyAxKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgIC5tb2RlbHMuZ3JpZCAubW9kZWw6bnRoLWNoaWxkKDNuICsgMikge1xuICAgICAgICBtYXJnaW4tbGVmdDogMzQuNjY2NjclO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLm1vZGVscy5ncmlkIC5tb2RlbDpudGgtY2hpbGQoM24gKyAzKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA2OS4zMzMzMyU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBub25lOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgIC5tb2RlbHMuZ3JpZCAubW9kZWwge1xuICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAubW9kZWxzLmdyaWQgLm1vZGVsOm50aC1jaGlsZCgybiArIDEpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgLm1vZGVscy5ncmlkIC5tb2RlbDpudGgtY2hpbGQoMm4gKyAyKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1MiU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBub25lOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLm1vZGVscy5ncmlkIC5tb2RlbCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5tb2RlbHMuZ3JpZCAubW9kZWxfX3RpdGxlLCAubW9kZWxzLmdyaWQgLm1vZGVsX19pbmZvcm1hdGlvbnMsIC5tb2RlbHMuZ3JpZCAubW9kZWxfX21lZGlhIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAubW9kZWxzLmdyaWQgLm1vZGVsX190aXRsZSBpbWcsIC5tb2RlbHMuZ3JpZCAubW9kZWxfX2luZm9ybWF0aW9ucyBpbWcsIC5tb2RlbHMuZ3JpZCAubW9kZWxfX21lZGlhIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAubW9kZWxzLmdyaWQgLm1vZGVsX190aXRsZSwgLm1vZGVscy5ncmlkIC5tb2RlbF9faW5mb3JtYXRpb25zIHtcbiAgICBwYWRkaW5nOiAxNXB4IDEwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlM2UzZTM7IH1cblxuLm1vZGVscyAubW9kZWwge1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG4gIC5tb2RlbHMgLm1vZGVsX19tZWRpYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLm1vZGVscyAubW9kZWxfX21lZGlhIGE6aG92ZXI6YmVmb3JlLCAubW9kZWxzIC5tb2RlbF9fbWVkaWEgYTpob3ZlcjphZnRlciB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5tb2RlbHMgLm1vZGVsX19tZWRpYSBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSg2NSwgMTgxLCAyMjgsIDAuOCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwLjVzLCBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICB6LWluZGV4OiA5OTsgfVxuICAgIC5tb2RlbHMgLm1vZGVsX19tZWRpYSBhOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMi44MTI1cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDAuNXMsIG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbiAgICAgIHotaW5kZXg6IDEwMDsgfVxuICAgIC5tb2RlbHMgLm1vZGVsX19tZWRpYSBhIC50YWdfc2VsbCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICB3aWR0aDogMjAlOyB9XG4gIC5tb2RlbHMgLm1vZGVsX190aXRsZSwgLm1vZGVscyAubW9kZWxfX2luZm9ybWF0aW9ucywgLm1vZGVscyAubW9kZWxfX21lZGlhIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UzOyB9XG4gIC5tb2RlbHMgLm1vZGVsX190aXRsZSwgLm1vZGVscyAubW9kZWxfX2luZm9ybWF0aW9ucyB7XG4gICAgcGFkZGluZzogMTVweCAxMHB4OyB9XG4gIC5tb2RlbHMgLm1vZGVsX19pbmZvcm1hdGlvbnMge1xuICAgIGJvcmRlci10b3A6IDA7IH1cbiAgICAubW9kZWxzIC5tb2RlbF9faW5mb3JtYXRpb25zIGRpdiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgICAgIC5tb2RlbHMgLm1vZGVsX19pbmZvcm1hdGlvbnMgZGl2Omxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAubW9kZWxzIC5tb2RlbF9faW5mb3JtYXRpb25zIGRpdiAuc3ByaXRlIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgICAubW9kZWxzIC5tb2RlbF9faW5mb3JtYXRpb25zIGRpdiAuc3ByaXRlLS1pY29uLWJhdGhyb29tIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTVweDsgfVxuICAubW9kZWxzIC5tb2RlbCBoMiwgLm1vZGVscyAubW9kZWwgaDMsIC5tb2RlbHMgLm1vZGVsIGg0LCAubW9kZWxzIC5tb2RlbCBoNSwgLm1vZGVscyAubW9kZWwgaDYge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMzhweDtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7IH1cbiAgICAubW9kZWxzIC5tb2RlbCBoMiAuc3VydGl0cmUsIC5tb2RlbHMgLm1vZGVsIGgzIC5zdXJ0aXRyZSwgLm1vZGVscyAubW9kZWwgaDQgLnN1cnRpdHJlLCAubW9kZWxzIC5tb2RlbCBoNSAuc3VydGl0cmUsIC5tb2RlbHMgLm1vZGVsIGg2IC5zdXJ0aXRyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgY29sb3I6ICM1NDU4NWE7IH1cblxuLmdhbGxlcmllc19fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5nYWxsZXJpZXNfX3dyYXBwZXIgLmdhbGxlcnlfX3dyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmdhbGxlcmllc19fd3JhcHBlciAuZ2FsbGVyeV9fd3JhcHBlciAuaXRlbSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmdhbGxlcmllc19fd3JhcHBlciAuZ2FsbGVyeV9fd3JhcHBlciAuaXRlbV9fd3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgLmdhbGxlcmllc19fd3JhcHBlciAuZ2FsbGVyeV9fd3JhcHBlciAuaXRlbV9fd3JhcHBlciAuaXRlbS5zbWFsbCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7IH1cbiAgICAgIC5nYWxsZXJpZXNfX3dyYXBwZXIgLmdhbGxlcnlfX3dyYXBwZXIgLml0ZW0uaGFsZiB7XG4gICAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMy4zMzMzMyU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLmdhbGxlcmllc19fd3JhcHBlciAuZ2FsbGVyeV9fd3JhcHBlciAuaXRlbS5zbWFsbCB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMy4zMzMzMyU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLmdhbGxlcmllc19fd3JhcHBlciAuZ2FsbGVyeV9fd3JhcHBlciAuaXRlbS5sYXJnZSB7XG4gICAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2Ni42NjY2NyU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLmdhbGxlcmllc19fd3JhcHBlciAuZ2FsbGVyeV9fd3JhcHBlciAuaXRlbS5oYXMtdmlydHVhbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgei1pbmRleDogMTsgfVxuICAgICAgICAuZ2FsbGVyaWVzX193cmFwcGVyIC5nYWxsZXJ5X193cmFwcGVyIC5pdGVtLmhhcy12aXJ0dWFsOmhvdmVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjUpOyB9XG4gICAgICAgIC5nYWxsZXJpZXNfX3dyYXBwZXIgLmdhbGxlcnlfX3dyYXBwZXIgLml0ZW0uaGFzLXZpcnR1YWwgYSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDY1LCAxODEsIDIyOCwgMC43KTtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgICAgICAuZ2FsbGVyaWVzX193cmFwcGVyIC5nYWxsZXJ5X193cmFwcGVyIC5pdGVtLmhhcy12aXJ0dWFsIGE6aG92ZXIgc3BhbjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTlweDtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAgICAgICAgIC5nYWxsZXJpZXNfX3dyYXBwZXIgLmdhbGxlcnlfX3dyYXBwZXIgLml0ZW0uaGFzLXZpcnR1YWwgYSBzcGFuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cbiAgICAgICAgICAgIC5nYWxsZXJpZXNfX3dyYXBwZXIgLmdhbGxlcnlfX3dyYXBwZXIgLml0ZW0uaGFzLXZpcnR1YWwgYSBzcGFuOmFmdGVyIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICAgICAgICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4uYy1jb3Jkb25uZWVzX193cmFwcGVyIC5jb29yZCB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG5cbi5jLWNvcmRvbm5lZXNfX3dyYXBwZXIgLnNlcCB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuLmMtZmlsdGVycyB7XG4gIG1hcmdpbi10b3A6IDU1cHg7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7IH1cbiAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyc19fdXNlZCAuZmlsdGVyIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogN3B4IDA7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMjcsIDIyNywgMjI3LCAwLjM1KTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG4gICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyc19fdXNlZCAuZmlsdGVyOmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA3cHg7XG4gICAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgICAuYy1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXJzX191c2VkIC5maWx0ZXI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2UzZTNlMzsgfVxuICAuYy1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXJfX2xpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCAuY2hlY2tib3gge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCA+IGxpIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6ICM0MWI1ZTQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDFiNWU0O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBzYW5zLXNlcmlmO1xuICAgICAgcGFkZGluZzogOHB4IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDc5cHgpLCAobWluLXdpZHRoOiAxNDgwcHgpIHtcbiAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGkge1xuICAgICAgICAgIHdpZHRoOiAxNi4zNDk4MSU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgICAgICAuYy1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXJfX2xpc3QgPiBsaTpudGgtY2hpbGQoNm4gKyAxKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGk6bnRoLWNoaWxkKDZuICsgMikge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE2LjczMDA0JTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCA+IGxpOm50aC1jaGlsZCg2biArIDMpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMy40NjAwOCU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAuYy1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXJfX2xpc3QgPiBsaTpudGgtY2hpbGQoNm4gKyA0KSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNTAuMTkwMTElO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGk6bnRoLWNoaWxkKDZuICsgNSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDY2LjkyMDE1JTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCA+IGxpOm50aC1jaGlsZCg2biArIDYpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4My42NTAxOSU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgICAgICAuYy1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXJfX2xpc3QgPiBsaSB7XG4gICAgICAgICAgd2lkdGg6IDQ5LjgwOTg5JTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGk6bnRoLWNoaWxkKDJuICsgMSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCA+IGxpOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MC4xOTAxMSU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCA+IGxpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDc5cHgpLCAobWluLXdpZHRoOiAxNDgwcHgpIHtcbiAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGk6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgIGNvbG9yOiAjNDFiNWU0O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgICAuYy1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXJfX2xpc3QgPiBsaTpob3ZlciB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGkub3BlbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgY29sb3I6ICM0MWI1ZTQ7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGkub3BlbiB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgICAgICAgICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCA+IGxpLm9wZW4gdWwgbGkge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgY29sb3I6ICM1NDU4NWE7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCA+IGxpOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBjb250ZW50OiBcIlwiOyB9XG4gICAgICAuYy1maWx0ZXJzX193cmFwcGVyIC5maWx0ZXJfX2xpc3QgPiBsaTphZnRlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICBjb250ZW50OiBcIlxcZjEwN1wiO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0ID4gbGk6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCA+IGxpOmJlZm9yZSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgY29udGVudDogXCJcXGYxMDdcIjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICAgIC5jLWZpbHRlcnNfX3dyYXBwZXIgLmZpbHRlcl9fbGlzdCB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNDFiNWU0O1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIHBhZGRpbmc6IDFweDtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgbGVmdDogLTFweDtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAjNTQ1ODVhO1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiA5MDE7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxuICAgICAgLmMtZmlsdGVyc19fd3JhcHBlciAuZmlsdGVyX19saXN0IHVsIGxpIHtcbiAgICAgICAgcGFkZGluZzogM3B4IDIwcHg7IH1cblxuLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlM2UzZTM7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkgYW5kIChtYXgtd2lkdGg6IDE0NzlweCksIChtaW4td2lkdGg6IDE0ODBweCkge1xuICAgIC5jLWdyaWRfX3dyYXBwZXIgLml0ZW0ge1xuICAgICAgd2lkdGg6IDMwLjY2NjY3JTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtOm50aC1jaGlsZCgzbiArIDEpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbTpudGgtY2hpbGQoM24gKyAyKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzNC42NjY2NyU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtOm50aC1jaGlsZCgzbiArIDMpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDY5LjMzMzMzJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCksIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTI3OXB4KSB7XG4gICAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSB7XG4gICAgICB3aWR0aDogNDglO1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAgIC5jLWdyaWRfX3dyYXBwZXIgLml0ZW06bnRoLWNoaWxkKDJuICsgMSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtOm50aC1jaGlsZCgybiArIDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUyJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTAwJTtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSBoMiwgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSBoMywgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSBoNCwgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSBoNSwgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSBoNiB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAzMXB4O1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtIGgyIC5zdXJ0aXRyZSwgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSBoMyAuc3VydGl0cmUsIC5jLWdyaWRfX3dyYXBwZXIgLml0ZW0gaDQgLnN1cnRpdHJlLCAuYy1ncmlkX193cmFwcGVyIC5pdGVtIGg1IC5zdXJ0aXRyZSwgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSBoNiAuc3VydGl0cmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgIGNvbG9yOiAjNTQ1ODVhOyB9XG4gIC5jLWdyaWRfX3dyYXBwZXIgLml0ZW1fX21lZGlhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtX19tZWRpYSBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtX19tZWRpYSBhOmhvdmVyOmJlZm9yZSwgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbV9fbWVkaWEgYTpob3ZlcjphZnRlciB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5jLWdyaWRfX3dyYXBwZXIgLml0ZW1fX21lZGlhIGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDY1LCAxODEsIDIyOCwgMC44KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDAuNXMsIG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbiAgICAgIHotaW5kZXg6IDk5OyB9XG4gICAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbV9fbWVkaWEgYTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcZjAwMlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICBmb250LXNpemU6IDIuODEyNXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwLjVzLCBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICB6LWluZGV4OiAxMDA7IH1cbiAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSAuaXRlbV9fYm9keV9fd3JhcHBlciB7XG4gICAgcGFkZGluZzogMCAxMHB4OyB9XG4gIC5jLWdyaWRfX3dyYXBwZXIgLml0ZW0gLnNvY2lhbCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlM2UzZTM7IH1cbiAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtIC5zb2NpYWxfX3dyYXBwZXIge1xuICAgICAgcGFkZGluZzogMCAxMHB4OyB9XG4gICAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtIC5zb2NpYWxfX3dyYXBwZXIgaDIsIC5jLWdyaWRfX3dyYXBwZXIgLml0ZW0gLnNvY2lhbF9fd3JhcHBlciBoMywgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSAuc29jaWFsX193cmFwcGVyIGg0LCAuYy1ncmlkX193cmFwcGVyIC5pdGVtIC5zb2NpYWxfX3dyYXBwZXIgaDUsIC5jLWdyaWRfX3dyYXBwZXIgLml0ZW0gLnNvY2lhbF9fd3JhcHBlciBoNiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSAuc29jaWFsX193cmFwcGVyIC5hZGR0aGlzX3Rvb2xib3gge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICAgICAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSAuc29jaWFsX193cmFwcGVyIC5hZGR0aGlzX3Rvb2xib3ggYSB7XG4gICAgICAgICAgY29sb3I6ICM1NDU4NWE7IH1cbiAgICAgICAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtIC5zb2NpYWxfX3dyYXBwZXIgLmFkZHRoaXNfdG9vbGJveCBhOnZpc2l0ZWQge1xuICAgICAgICAgICAgY29sb3I6ICM1NDU4NWE7IH1cbiAgICAgICAgICAuYy1ncmlkX193cmFwcGVyIC5pdGVtIC5zb2NpYWxfX3dyYXBwZXIgLmFkZHRoaXNfdG9vbGJveCBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gICAgICAgICAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSAuc29jaWFsX193cmFwcGVyIC5hZGR0aGlzX3Rvb2xib3ggYTphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICM0MWI1ZTQ7IH1cbiAgICAgICAgLmMtZ3JpZF9fd3JhcHBlciAuaXRlbSAuc29jaWFsX193cmFwcGVyIC5hZGR0aGlzX3Rvb2xib3ggYSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLmMtc2VhcmNoIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiAtNjFweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuYy1zZWFyY2gge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuICAuYy1zZWFyY2ggLnNlYXJjaC1maWVsZCB7XG4gICAgYm9yZGVyOiAycHggc29saWQgIzQxYjVlNDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LWZhbWlseTogXCJMYXRvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBjb2xvcjogIzQxYjVlNDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IDhweCAwIDhweCAxNXB4OyB9XG4gICAgLmMtc2VhcmNoIC5zZWFyY2gtZmllbGQ6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLmMtc2VhcmNoIC5zZWFyY2gtZmllbGQge1xuICAgICAgICB3aWR0aDogODAlOyB9IH1cbiAgLmMtc2VhcmNoIC5zZWFyY2gtc3VibWl0IHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNDFiNWU0O1xuICAgIGJhY2tncm91bmQ6ICM0MWI1ZTQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDhweCAxMHB4IDhweDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgbGluZWFyOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAuYy1zZWFyY2ggLnNlYXJjaC1zdWJtaXQge1xuICAgICAgICB3aWR0aDogMjAlOyB9IH1cbiAgICAuYy1zZWFyY2ggLnNlYXJjaC1zdWJtaXQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBjb2xvcjogIzQxYjVlNDsgfVxuXG4uYy1jb250YWN0IC5oZWFkX29mZmljZV9pbmZvIHtcbiAgd2lkdGg6IDUwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAuYy1jb250YWN0IC5oZWFkX29mZmljZV9pbmZvIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmMtY29udGFjdCAuaGFsZiB7XG4gIHdpZHRoOiA0OS41Nzk4MyU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAuYy1jb250YWN0IC5oYWxmIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmMtY29udGFjdCAuaGFsZi5oYWxmLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAuYy1jb250YWN0IC5oYWxmLmhhbGYtcmlnaHQgdGV4dGFyZWEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYy1jb250YWN0IC5wcm9qZWN0cyB7XG4gIHBhZGRpbmctYm90dG9tOiAyNXB4OyB9XG4gIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtICNjb250YWN0X2FkZHJlc3MgaDIsIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtICNjb250YWN0X2FkZHJlc3MgaDMsIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtICNjb250YWN0X2FkZHJlc3MgaDQsIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtICNjb250YWN0X2FkZHJlc3MgaDUsIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtICNjb250YWN0X2FkZHJlc3MgaDYsIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtIC5vcGVuX2hvdXJzIGgyLCAuYy1jb250YWN0IC5wcm9qZWN0cyAuaXRlbSAub3Blbl9ob3VycyBoMywgLmMtY29udGFjdCAucHJvamVjdHMgLml0ZW0gLm9wZW5faG91cnMgaDQsIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtIC5vcGVuX2hvdXJzIGg1LCAuYy1jb250YWN0IC5wcm9qZWN0cyAuaXRlbSAub3Blbl9ob3VycyBoNiB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpLCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtIC5vcGVuX2hvdXJzIGgyLCAuYy1jb250YWN0IC5wcm9qZWN0cyAuaXRlbSAub3Blbl9ob3VycyBoMywgLmMtY29udGFjdCAucHJvamVjdHMgLml0ZW0gLm9wZW5faG91cnMgaDQsIC5jLWNvbnRhY3QgLnByb2plY3RzIC5pdGVtIC5vcGVuX2hvdXJzIGg1LCAuYy1jb250YWN0IC5wcm9qZWN0cyAuaXRlbSAub3Blbl9ob3VycyBoNiB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgLmMtY29udGFjdCAucHJvamVjdHMgLml0ZW0gLnNlcCB7XG4gICAgcGFkZGluZzogMjBweCAwIDIwcHggMDsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IDEwMHB4OyB9XG4gIC5wYWdpbmF0aW9uIGEge1xuICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gICAgLnBhZ2luYXRpb24gYTp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gICAgLnBhZ2luYXRpb24gYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzQxYjVlNDsgfVxuICAgIC5wYWdpbmF0aW9uIGE6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gIC5wYWdpbmF0aW9uIC5uZXh0LnBhZ2UtbnVtYmVycyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnBhZ2luYXRpb24gLm5leHQucGFnZS1udW1iZXJzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnBhZ2luYXRpb24gLnByZXYucGFnZS1udW1iZXJzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAucGFnaW5hdGlvbiAucHJldi5wYWdlLW51bWJlcnM6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcXGYwNTNcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucGFnaW5hdGlvbiAucGFnZS1udW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhZ2luYXRpb24gYSwgLnBhZ2luYXRpb24gc3Bhbi5jdXJyZW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTJweCAxOHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7IH1cbiAgICAucGFnaW5hdGlvbiBhOmhvdmVyLCAucGFnaW5hdGlvbiBzcGFuLmN1cnJlbnQ6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAwcHggMnB4ICM0MWI1ZTQ7IH1cbiAgLnBhZ2luYXRpb24gc3Bhbi5jdXJyZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAjNDFiNWU0O1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5sLWJvZHkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmNoZWNrYm94LCAucmFkaW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHBhZGRpbmc6IDVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1yaWdodDogMThweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLyogQ2FjaG9ucyBsYSBjYXNlIMOgIGNvY2hlciAqL1xuICAvKiBvbiBwcsOpcGFyZSBsZSBsYWJlbCAqL1xuICAvKiBBc3BlY3QgZ8OpbsOpcmFsIGRlIGxhIGNvY2hlICovXG4gIC8qIEFzcGVjdCBzaSBcInBhcyBjb2Now6llXCIgKi9cbiAgLyogQXNwZWN0IHNpIFwiY29jaMOpZVwiICovXG4gIC8qIGRpc2FibGVkIGNoZWNrYm94ICovXG4gIC8qIGFjY2Vzc2liaWxpdHkgKi8gfVxuICAuY2hlY2tib3g6bGFzdC1jaGlsZCwgLnJhZGlvOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuY2hlY2tib3ggbGFiZWwsIC5yYWRpbyBsYWJlbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jaGVja2JveCBpbnB1dCwgLnJhZGlvIGlucHV0IHtcbiAgICBtYXJnaW4tdG9wOiAtNHB4OyB9XG4gIC5jaGVja2JveCAub3B0cywgLnJhZGlvIC5vcHRzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmNoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSxcbiAgLmNoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCxcbiAgLmNoZWNrYm94IFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSxcbiAgLmNoZWNrYm94IFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCwgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSxcbiAgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCxcbiAgLnJhZGlvIFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSxcbiAgLnJhZGlvIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7IH1cbiAgLmNoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuICAuY2hlY2tib3ggW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbCxcbiAgLmNoZWNrYm94IFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsLCAucmFkaW8gW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWwsXG4gIC5yYWRpbyBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCxcbiAgLnJhZGlvIFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuICAucmFkaW8gW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdLmVycm9yICsgbGFiZWwsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdLmVycm9yICsgbGFiZWwsIC5yYWRpbyBbdHlwZT1cImNoZWNrYm94XCJdLmVycm9yICsgbGFiZWwsXG4gIC5yYWRpbyBbdHlwZT1cInJhZGlvXCJdLmVycm9yICsgbGFiZWwge1xuICAgIGNvbG9yOiAjZmYwMDAwOyB9XG4gIC5jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG4gIC5jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIC5yYWRpbyBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG4gIC5yYWRpbyBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsXG4gIC5yYWRpbyBbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG4gIC5yYWRpbyBbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTVweDtcbiAgICAvKiBkaW0uIGRlIGxhIGNhc2UgKi9cbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MWI1ZTQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC5jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdLmVycm9yICsgbGFiZWw6YmVmb3JlLFxuICAuY2hlY2tib3ggW3R5cGU9XCJyYWRpb1wiXS5lcnJvciArIGxhYmVsOmJlZm9yZSwgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl0uZXJyb3IgKyBsYWJlbDpiZWZvcmUsXG4gIC5yYWRpbyBbdHlwZT1cInJhZGlvXCJdLmVycm9yICsgbGFiZWw6YmVmb3JlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmYwMDAwOyB9XG4gIC5jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcbiAgLmNoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuICAuY2hlY2tib3ggW3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciwgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyLFxuICAucmFkaW8gW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG4gIC5yYWRpbyBbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcbiAgLnJhZGlvIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICAvKiBvbiBwcsOpdm9pdCB1bmUgYW5pbWF0aW9uICovIH1cbiAgLmNoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyLFxuICAuY2hlY2tib3ggW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcbiAgLmNoZWNrYm94IFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyLCAucmFkaW8gW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG4gIC5yYWRpbyBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlcixcbiAgLnJhZGlvIFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyLFxuICAucmFkaW8gW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMxMHB4IC05NThweDtcbiAgICB3aWR0aDogMTNweDtcbiAgICBoZWlnaHQ6IDEwcHg7IH1cbiAgLmNoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyLFxuICAuY2hlY2tib3ggW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsIC5yYWRpbyBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcbiAgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcbiAgLmNoZWNrYm94IFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyLCAucmFkaW8gW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG4gIC5yYWRpbyBbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlciB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuY2hlY2tib3ggW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciwgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuICAucmFkaW8gW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLmNoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSxcbiAgLmNoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSxcbiAgLmNoZWNrYm94IFt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSxcbiAgLmNoZWNrYm94IFt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSxcbiAgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSxcbiAgLnJhZGlvIFt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQ6bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSxcbiAgLnJhZGlvIFt0eXBlPVwicmFkaW9cIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAuY2hlY2tib3ggW3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOmNoZWNrZWQgKyBsYWJlbDphZnRlciwgLnJhZGlvIFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuICAucmFkaW8gW3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIGNvbG9yOiAjOTk5OyB9XG4gIC5jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkICsgbGFiZWwsXG4gIC5jaGVja2JveCBbdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkICsgbGFiZWwsIC5yYWRpbyBbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkICsgbGFiZWwsXG4gIC5yYWRpbyBbdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkICsgbGFiZWwge1xuICAgIGNvbG9yOiAjYWFhOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5bw4lsw6ltZW50cyBIVE1MXVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG46cm9vdCB7XG4gIGZvbnQtc2l6ZTogMTVweDsgfVxuXG5odG1sLCBib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBjb2xvcjogIzU0NTg1YTtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgYmFja2dyb3VuZDogIzQxYjVlNDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IH1cbiAgYm9keSBhIHtcbiAgICBjb2xvcjogIzQxYjVlNDsgfVxuICAgIGJvZHkgYTp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiAjNDFiNWU0OyB9XG4gICAgYm9keSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjNTQ1ODVhOyB9XG4gICAgYm9keSBhOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogIzU0NTg1YTsgfVxuICBib2R5IGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5wLCB1bCB7XG4gIG1hcmdpbjogMCAwIDI1cHggMDsgfVxuICBwOmxhc3QtY2hpbGQsIHVsOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxudWwge1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgaDEgc21hbGwsIGgyIHNtYWxsLCBoMyBzbWFsbCwgaDQgc21hbGwsIGg1IHNtYWxsLCBoNiBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogN3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgLmhpZGUtdG8tc21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ueHMtb25seSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSwgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAueHMtb25seSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiA1NXB4O1xuICBmb250LXNpemU6IDMuNDM3NXJlbTsgfVxuXG4ubW9iaWxlLXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgcGFkZGluZzogMCAzLjM2MTM0JTsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uaG9tZSAuYy1oYWxmLXJpZ2h0Om5vdCguaXMtZnVsbCkgLmItcGFnZV9jb250ZW50IHtcbiAgbWF4LXdpZHRoOiBub25lOyB9XG5cbmlucHV0W3R5cGU9dGV4dF0sIGlucHV0W3R5cGU9bnVtYmVyXSwgaW5wdXRbdHlwZT1lbWFpbF0sIHRleHRhcmVhLCBmb3JtIC5zZWxlY3Qge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTNlM2UzO1xuICBwYWRkaW5nOiAxNHB4O1xuICBvdXRsaW5lOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICByZXNpemU6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuICBjb2xvcjogIzU0NTg1YTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC1mYW1pbHk6IFwiTGF0b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogOTAwOyB9XG4gIGlucHV0LmVycm9yW3R5cGU9dGV4dF0sIGlucHV0LmVycm9yW3R5cGU9bnVtYmVyXSwgaW5wdXQuZXJyb3JbdHlwZT1lbWFpbF0sIHRleHRhcmVhLmVycm9yLCBmb3JtIC5lcnJvci5zZWxlY3Qge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDAsIDAsIDAuNik7IH1cbiAgaW5wdXRbdHlwZT10ZXh0XTo6cGxhY2Vob2xkZXIsIGlucHV0W3R5cGU9bnVtYmVyXTo6cGxhY2Vob2xkZXIsIGlucHV0W3R5cGU9ZW1haWxdOjpwbGFjZWhvbGRlciwgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLCBmb3JtIC5zZWxlY3Q6OnBsYWNlaG9sZGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMThweDsgfVxuXG4uZm9ybV9pbnB1dC5oYWxmIHtcbiAgd2lkdGg6IDQ5LjglOyB9XG5cbi5mb3JtLWdyb3VwIHtcbiAgZm9udC1zaXplOiAwOyB9XG4gIC5mb3JtLWdyb3VwLmJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDRweCBzb2xpZCAjMWIxYjEzO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgICAuZm9ybS1ncm91cC5ib3JkZXJlZCAuaW5wdXQtd3JhcCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gIC5mb3JtLWdyb3VwIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmNvbW1lbnRzLWFyZWEge1xuICAvKi5jb21tZW50LXJlc3BvbmR7XG5cdFx0LmNvbW1lbnQtcmVwbHktdGl0bGV7XG5cdFx0XHRtYXJnaW4tdG9wOjI1cHg7XG5cdFx0fVxuXHRcdC5jb21tZW50LWZvcm17XG5cdFx0XHRsYWJlbHtcblx0XHRcdFx0bWFyZ2luLXRvcDoxMHB4O1xuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH1cblx0XHRcdHRleHRhcmVhe1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCBjb2xvcigncHJpbWFyeScsIGZvbnQtY29sb3IpO1xuICAgIFx0XHRwYWRkaW5nOiA1cHggMnB4O1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHQmOmZvY3Vze1xuXHRcdFx0XHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXHRcdFx0aW5wdXR7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGJhc2UsIGZvbnQtY29sb3IpO1xuXHRcdFx0XHQmOmZvY3Vze1xuXHRcdFx0XHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5zdWJtaXR7XG5cdFx0XHRcdG1hcmdpbi10b3A6MTVweDtcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgY29sb3IoYnJhbmRwcmltYXJ5KTtcblx0XHRcdFx0cGFkZGluZzoxMHB4IDIwcHg7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIC41cyBlYXNlKTtcblx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHRjb2xvcjojZmZmO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6Y29sb3IoYnJhbmRwcmltYXJ5KTtcblx0XHRcdFx0XHRib3JkZXItY29sb3I6Y29sb3IoYnJhbmRwcmltYXJ5KTtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmZvY3Vze1xuXHRcdFx0XHRcdG91dGxpbmU6bm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fSovIH1cbiAgLmNvbW1lbnRzLWFyZWEgLmNvbW1lbnQtbGlzdCB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLmNvbW1lbnRzLWFyZWEgLmNvbW1lbnQtbGlzdCBjaXRlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cbiAgICAuY29tbWVudHMtYXJlYSAuY29tbWVudC1saXN0IC5jb21tZW50IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlM2UzO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMjBweCAxMHB4IDEwcHg7IH1cbiAgICAgIC5jb21tZW50cy1hcmVhIC5jb21tZW50LWxpc3QgLmNvbW1lbnQ6bnRoLWNoaWxkKGV2ZW4pLmRlcHRoLTEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhOyB9XG4gICAgICAuY29tbWVudHMtYXJlYSAuY29tbWVudC1saXN0IC5jb21tZW50OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogMDsgfVxuICAgICAgLmNvbW1lbnRzLWFyZWEgLmNvbW1lbnQtbGlzdCAuY29tbWVudCAuY29tbWVudC1hdXRob3Ige1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzU0NTg1YTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgICAuY29tbWVudHMtYXJlYSAuY29tbWVudC1saXN0IC5jb21tZW50IC5jb21tZW50LWF1dGhvciAuY29tbWVudC1tZXRhIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC5jb21tZW50cy1hcmVhIC5jb21tZW50LWxpc3QgLmNvbW1lbnQgLmNvbW1lbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMiU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLmlucHV0LXdyYXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDRweDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAuaW5wdXQtd3JhcDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5pbnB1dC13cmFwOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTEge1xuICAgIHdpZHRoOiAxMCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTIge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTMge1xuICAgIHdpZHRoOiAzMCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTQge1xuICAgIHdpZHRoOiA0MCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTUge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTYge1xuICAgIHdpZHRoOiA2MCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTcge1xuICAgIHdpZHRoOiA3MCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTgge1xuICAgIHdpZHRoOiA4MCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTkge1xuICAgIHdpZHRoOiA5MCU7IH1cbiAgLmlucHV0LXdyYXAuaW5wdXQtLTEwIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAuaW5wdXQtd3JhcCB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tMSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tMiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tMyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tNCB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tNSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tNiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tNyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tOCB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tOSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuaW5wdXQtd3JhcC5pbnB1dC0tMTAge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5bU3R5bGVdXG5PbiBzZSBsYW5jZSBkYW5zIGxhIHBlcnNvbm5hbGlzYXRpb24gZGUgY2hhY3VuZSBkZXMgZGlmZsOpcmVudGVzXG5wb3J0aW9ucyBkdSBzaXRlIVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKlx0QmxvY2tcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbltMYXlvdXRdXG5QbGFjZWhvbGRlciBwb3VyIGxlIGZvcm1hdCBkZSBsYSBncmlsbGUuIENvbW1lIGxhIGdyaWxsZSBlc3QgYXNzZXpcbnBlcnNvbm5hbGlzw6llIGQndW4gc2l0ZSDDoCBsJ2F1dHJlLCBvbiBsZSBjb25zZXJ2ZSBpY2kuXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5jLWhhbGYtcmlnaHQuaXMtZnVsbCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyLCAuYy1zb2NpYWxfX3dyYXBwZXIsIC5jLWNyZWRpdF9fd3JhcHBlciwgLndpZGdldC1hcmVhX193cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiA5MCU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmMtaGFsZi1yaWdodC5pcy1mdWxsIC5jLWhhbGYtcmlnaHRfX3dyYXBwZXI6YWZ0ZXIsIC5jLXNvY2lhbF9fd3JhcHBlcjphZnRlciwgLmMtY3JlZGl0X193cmFwcGVyOmFmdGVyLCAud2lkZ2V0LWFyZWFfX3dyYXBwZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxNDgwcHgpIHtcbiAgICAuYy1oYWxmLXJpZ2h0LmlzLWZ1bGwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciwgLmMtc29jaWFsX193cmFwcGVyLCAuYy1jcmVkaXRfX3dyYXBwZXIsIC53aWRnZXQtYXJlYV9fd3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IDEyMDBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDc5cHgpIHtcbiAgICAuYy1oYWxmLXJpZ2h0LmlzLWZ1bGwgLmMtaGFsZi1yaWdodF9fd3JhcHBlciwgLmMtc29jaWFsX193cmFwcGVyLCAuYy1jcmVkaXRfX3dyYXBwZXIsIC53aWRnZXQtYXJlYV9fd3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IDEyMDBweDsgfSB9XG4iLCIvKlxuYmFzZS8g4oCTIFN0eWxlIGdsb2JhbCBjb21tZSBsZXMgcmVzZXRzLCBsYSB0eXBvLCBjb2xldXJzLCBldGMuIExlcyBmaWNoaWVycyBuZSBkZXZyYWl0IHBhcyDDqnRyZSBtYW5pcHVsw6ksIGlsIHMnYWdpdCBlbiBxdWVscXVlcyBzb3J0ZSBkJ3VuIHdpcmVmcmFtZS5cbmNvbXBvbmVudHMvIOKAk1xubGF5b3V0LyDigJNcbnBhZ2VzLyDigJMgU3R5bGUgcXVpIHMnYXBwbGlxdWUgw6AgZGVzIHBhZ2VzIHNww6ljaWZpcXVlLCBzaSBuw6ljZXNzYWlyZVxudGhlbWVzLyDigJNcbnV0aWxzLyDigJNcbnZlbmRvcnMvIOKAk1xubWFpbi5zY3NzIOKAk1xuKi9cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbltWYXJpYWJsZXNdXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG5sYXRvYmxhY2tcbmxhdG9ibGFja19pdGFsaWNcbmxhdG9ib2xkXG5sYXRvYm9sZF9pdGFsaWNcbmxhdG9oYWlybGluZVxubGF0b2hhaXJsaW5lX2l0YWxpY1xubGF0b2l0YWxpY1xubGF0b2xpZ2h0XG5sYXRvbGlnaHRfaXRhbGljXG5sYXRvcmVndWxhclxuKi9cbiRmb250LXNpemUtY29udGV4dDogMTU7XG4kZm9udC1yZWd1bGFyOiAnTGF0bycsIHNhbnMtc2VyaWY7XG4kZm9udC1iYXNlOiAkZm9udC1yZWd1bGFyO1xuXG4kbGlnaHQ6IDMwMDtcbiRyZWd1bGFyOiA0MDA7XG4kc2VtaS1ib2xkOiA3MDA7XG4kYmxhY2s6IDkwMDtcblxuLy9UcnVlTm9ydGhCbGFjayBSZWd1bGFyXG5cbiRzY2hlbWUtY29sb3JzOiAoXG5cdCdwcmltYXJ5JzogKFxuXHRcdCdiYXNlJzogIzQxYjVlNCxcblx0XHQnbGlnaHQnOiAjZmZmLFxuXHRcdCdncmV5JzogIzU0NTg1YSxcblx0XHQnbGluZSc6ICNlM2UzZTMsXG5cdFx0J2RhcmsnOiAjMzM5N2JmXG5cdCksXG5cdCdsaW5rJyA6IChcblx0XHQnYmFzZSc6ICM0MWI1ZTQsXG5cdFx0J2hvdmVyJzogIzU0NTg1YSxcblx0XHQnbWVudScgOiAjNmI2YjZiLFxuXHRcdCdtZW51LWhvdmVyJyA6ICM0MWI1ZTQsXG5cdFx0J2RhcmsnOiAjMjQyZDM5LFxuXHRcdCdsaWdodCc6ICNmZmYsXG5cdCksXG5cblx0J2ZvcmVncm91bmQnOiAoXG5cdFx0J2Jhc2UnOiAjODA2YTU2LCAgLy9icm93blxuXHRcdCdsaWdodCc6ICM4ZWM1NDksIC8vZ3JlZW5cblx0KSxcblxuXHQnYmFja2dyb3VuZCc6IChcblx0XHQnYmFzZSc6ICNlOWU5ZTksXG5cdFx0J2xpZ2h0JzogI2ZmZmZmZixcblx0XHQnZGFyayc6ICMwMDBcblx0KVxuKTtcblxuXG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9saWdodGdhbGxlcnkvc3JjL3Nhc3MvbGlnaHRnYWxsZXJ5LnNjc3NcIjtcblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL3NsaWNrLWNhcm91c2VsL3NsaWNrL2ZvbnRzL1wiO1xuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vXCI7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi4vaW1hZ2VzL1wiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2Nzc1wiO1xuQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2stdGhlbWUuc2Nzc1wiO1xuXG4vL19zcHJpdGVzXG5AaW1wb3J0IFwiX3Nwcml0ZXNcIjtcbi5zcHJpdGUge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0QGVhY2ggJHNwcml0ZSBpbiAkc3ByaXRlc2hlZXQtc3ByaXRlcyB7XG5cdFx0JHNwcml0ZS1uYW1lOiBudGgoJHNwcml0ZSwgMTApO1xuXHRcdCYtLSN7JHNwcml0ZS1uYW1lfSB7XG5cdFx0XHRAaW5jbHVkZSBzcHJpdGUoJHNwcml0ZSk7XG5cdFx0fVxuXHR9XG59XG4uc3ByaXRlLS1pY29uLWJhdGhyb29tLWxne1xuXHRtYXJnaW4tdG9wOiAtMTBweCFpbXBvcnRhbnQ7XG59XG4uY2xlYXJmaXgge1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcbn1cbi8vTG9hZCBtaXhpbnMsIGZ1bmN0aW9ucy4uLlxuQGltcG9ydCBcInV0aWxzL19sb2FkZXIuc2Nzc1wiO1xuXG4vLyBodG1sLCBoZWFkaW5nLCBldGMuXG5AaW1wb3J0IFwiYmFzZS9fZ2xvYmFsc1wiO1xuXG4vL19mb250c1xuQGltcG9ydCBcIl9mb250c1wiO1xuXG4uaGlkZGVuIHtcblx0ZGlzcGxheTpub25lO1xufVxuXG4uZ2FwIHtcblx0cGFkZGluZzowIDE1cHg7XG59XG5cbi8vbGF5b3V0XG5AaW1wb3J0IFwibGF5b3V0L19sLWhlYWRlclwiO1xuQGltcG9ydCBcImxheW91dC9fbC1wYWdlXCI7XG5cbi8vY29tcG9uZW50c1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2MtbWVudS1wcmltYXJ5XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYy1oYWxmLXJpZ2h0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYy1oYWxmLWxlZnRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jLXNlY3Rpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jLXNvY2lhbFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2MtYmxvY2stbGlzdGluZ1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2MtY3JlZGl0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYy1idG5cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jLWR5bmFtaWNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jLXRhYi1tZW51XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYy1zbGlja1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2MtZm9vdGVyXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fbW9kZWxcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19nYWxsZXJpZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jLWNvcmRvbm5lZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jLWZpbHRlcnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jLWdyaWRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jLXNlYXJjaFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2MtY29udGFjdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3BhZ2luYXRpb25cIjtcbi8vQGltcG9ydCBcIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL293bC5jYXJvdXNlbFwiO1xuXG4ubC1ib2R5IHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2hlY2tib3gsIC5yYWRpbyB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0cGFkZGluZzogNXB4O1xuXHRwYWRkaW5nLWxlZnQ6IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLXJpZ2h0OiAxOHB4O1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHR9XG5cblx0bGFiZWwge1xuXG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdH1cblxuXHRpbnB1dCB7XG5cdFx0bWFyZ2luLXRvcDogLTRweDtcblx0fVxuXG5cdC5vcHRzIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdH1cblxuXHQvKiBDYWNob25zIGxhIGNhc2Ugw6AgY29jaGVyICovXG5cdFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSxcblx0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkLFxuXHRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCksXG5cdFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCAge1xuXHQgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ICBsZWZ0OiAtOTk5OXB4O1xuXHR9XG5cblx0Lyogb24gcHLDqXBhcmUgbGUgbGFiZWwgKi9cblx0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWwsXG5cdFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsLFxuXHRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbCxcblx0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuXHQgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cdCAgY3Vyc29yOiBwb2ludGVyO1xuXHR9XG5cblx0W3R5cGU9XCJjaGVja2JveFwiXS5lcnJvciArIGxhYmVsLFxuXHRbdHlwZT1cInJhZGlvXCJdLmVycm9yICsgbGFiZWwge1xuXHRcdGNvbG9yOiAjZmYwMDAwO1xuXHR9XG5cblx0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlLFxuXHRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsXG5cdFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSxcblx0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDowOyB0b3A6IDUwJTtcblx0XHR3aWR0aDogMTVweDsgaGVpZ2h0OiAxNXB4OyAvKiBkaW0uIGRlIGxhIGNhc2UgKi9cblx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHNjaGVtZS1jb2xvcigncHJpbWFyeScpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHQvL2JveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCByZ2JhKDAsMCwwLC4zKTsgLyogbMOpZ8OocmUgb21icmUgaW50ZXJuZSAqL1xuXHRcdC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0fVxuXG5cdFt0eXBlPVwiY2hlY2tib3hcIl0uZXJyb3IgKyBsYWJlbDpiZWZvcmUsXG5cdFt0eXBlPVwicmFkaW9cIl0uZXJyb3IgKyBsYWJlbDpiZWZvcmUge1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICNmZjAwMDA7XG5cdH1cblxuXHRbdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG5cdFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG5cdFx0Ly9ib3JkZXItcmFkaXVzOiA1MCU7XG5cdH1cblxuXHQvKiBBc3BlY3QgZ8OpbsOpcmFsIGRlIGxhIGNvY2hlICovXG5cdFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyLFxuXHRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlcixcblx0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG5cdFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7IGxlZnQ6IDJweDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMThweDsgaGVpZ2h0OiAxOHB4O1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRjb2xvcjogIzAwMDtcblx0XHR0cmFuc2l0aW9uOiBhbGwgLjJzOyAvKiBvbiBwcsOpdm9pdCB1bmUgYW5pbWF0aW9uICovXG5cdH1cblxuXHRbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcblx0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG5cdFt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyLFxuXHRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0QGluY2x1ZGUgc3ByaXRlKCRjaGVjayk7XG5cdFx0Ly9iYWNrZ3JvdW5kOiByZWQgdXJsKCcjeyRpbWFnZS1kaXJ9L2NoZWNrLnBuZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuXHRcdC8vYm9yZGVyLXJhZGl1czogNTAlO1xuXHR9XG5cblx0W3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG5cdFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHR9XG5cblx0LyogQXNwZWN0IHNpIFwicGFzIGNvY2jDqWVcIiAqL1xuXHRbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcblx0W3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuXHQgIG9wYWNpdHk6IDA7XG5cdCAvLyB0cmFuc2Zvcm06IHNjYWxlKDApO1xuXHR9XG5cblx0LyogQXNwZWN0IHNpIFwiY29jaMOpZVwiICovXG5cdFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuXHRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG5cdCAgb3BhY2l0eTogMTtcblx0IC8vIHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdH1cblxuXHQvKiBkaXNhYmxlZCBjaGVja2JveCAqL1xuXHRbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG5cdFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSxcblx0W3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlLFxuXHRbdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuXHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0Ym9yZGVyLWNvbG9yOiAjZmZmO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cdH1cblxuXHRbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOmNoZWNrZWQgKyBsYWJlbDphZnRlcixcblx0W3R5cGU9XCJyYWRpb1wiXTpkaXNhYmxlZDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuXHRcdGNvbG9yOiAjOTk5O1xuXHR9XG5cblx0W3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZCArIGxhYmVsLFxuXHRbdHlwZT1cInJhZGlvXCJdOmRpc2FibGVkICsgbGFiZWwge1xuXHRcdGNvbG9yOiAjYWFhO1xuXHR9XG5cblx0LyogYWNjZXNzaWJpbGl0eSAqL1xuXHRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQ6Zm9jdXMgKyBsYWJlbDpiZWZvcmUsXG5cdFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKTpmb2N1cyArIGxhYmVsOmJlZm9yZSB7XG5cdH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5bw4lsw6ltZW50cyBIVE1MXVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG46cm9vdCB7XG5cdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1jb250ZXh0ICogMXB4O1xufVxuXG5odG1sLCBib2R5IHtcblx0bWluLWhlaWdodDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5IHtcblx0Y29sb3I6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdncmV5Jyk7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1iYXNlO1xuXHRmb250LXdlaWdodDogJHNlbWktYm9sZDtcblx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG5cblx0YmFja2dyb3VuZDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XG5cblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdEBpbmNsdWRlIGxpbmtzICgkbGluazogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ2Jhc2UnKSwgJHZpc2l0OiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnYmFzZScpLCAkaG92ZXI6IHNjaGVtZS1jb2xvcignbGluaycsICdob3ZlcicpLCAkYWN0aXZlOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnaG92ZXInKSk7XG5cdGEge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxuXG59XG5pbWd7XG5cdEBleHRlbmQgJWltZy1yZXNwb25zaXZlO1xufVxucCwgdWwge1xuXHRtYXJnaW46IDAgMCAyNXB4IDA7XG5cblx0JjpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59XG5cbnVsIHtcblx0bGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0bGluZS1oZWlnaHQ6IDEuMjtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuXHRzbWFsbCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLXRvcDogN3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdH1cblxuXG59XG4uaGlkZS10by1zbWFsbHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJG1kLW9ubHkpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG4ueHMtb25seSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuaDEge1xuXHRAaW5jbHVkZSBjYWxjLXJlbSg1NSk7XG59XG4ubW9iaWxlLXRpdGxle1xuXHRtYXJnaW4tdG9wOjE1cHg7XG5cdHBhZGRpbmcgOiAwIHNwYW4oMSk7XG59XG5oMyB7XG5cdEBpbmNsdWRlIGNhbGMtcmVtKDMwKTtcblx0bWFyZ2luLWJvdHRvbTogMjVweDtcbn1cbi5ob21lIC5jLWhhbGYtcmlnaHQ6bm90KC5pcy1mdWxsKSAuYi1wYWdlX2NvbnRlbnR7XG5cdG1heC13aWR0aDpub25lO1xufVxuJWlucHV0IHtcblx0QGluY2x1ZGUgY2FsYy1yZW0oMTUpO1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRib3JkZXI6IDFweCBzb2xpZCBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCAnbGluZScpO1xuXHRwYWRkaW5nOiAxNHB4O1xuXHRvdXRsaW5lOiBub25lO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRyZXNpemU6IG5vbmU7XG5cdHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuXHRjb2xvcjogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2dyZXknKTtcblx0Ly9ib3JkZXItcmFkaXVzOiA3cHg7XG5cdG1hcmdpbi1ib3R0b206MTBweDtcblx0Zm9udC1mYW1pbHk6JGZvbnQtcmVndWxhcjtcblx0Zm9udC13ZWlnaHQ6OTAwO1xuXHQmOmZvY3VzIHtcblx0XHQvL2JveC1zaGFkb3c6IGluc2V0IDBweCAwcHggMHB4IDJweCBzY2hlbWUtY29sb3IoJ2Jyb3duJywgJ2Jhc2UnKTtcblx0fVxuXG5cdCYuZXJyb3Ige1xuXHRcdGJvcmRlci1jb2xvcjogcmdiYSgjZmYwMDAwLCAwLjYpO1xuXHR9XG5cblx0Jjo6cGxhY2Vob2xkZXIge1xuXHRcdC8vY29sb3I6IHNjaGVtZS1jb2xvcignYnJvd24nLCAnYmFzZScpO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdH1cbn1cblxuaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT1udW1iZXJdLGlucHV0W3R5cGU9ZW1haWxdLCB0ZXh0YXJlYSwgZm9ybSAuc2VsZWN0IHtcblx0QGV4dGVuZCAlaW5wdXQ7XG59XG5cbnRleHRhcmVhIHtcblx0aGVpZ2h0OiAxMThweDtcbn1cbi5mb3JtX2lucHV0e1xuXHQmLmhhbGZ7XG5cdFx0d2lkdGg6IDQ5LjglO1xuXG5cdH1cbn1cbi5mb3JtLWdyb3VwIHtcblx0Zm9udC1zaXplOiAwO1xuXG5cdCYuYm9yZGVyZWQge1xuXHRcdGJvcmRlcjogNHB4IHNvbGlkICMxYjFiMTM7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjVweDtcblxuXHRcdC5pbnB1dC13cmFwIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG5cblx0bGFiZWwge1xuXHRcdEBpbmNsdWRlIGNhbGMtcmVtKCRmb250LXNpemUtY29udGV4dCk7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cbi5jb21tZW50cy1hcmVhe1xuXHQuY29tbWVudC1saXN0e1xuXHRcdGNpdGV7XG5cdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxNSk7XG4gICAgXHRcdGZvbnQtZmFtaWx5OiAkZm9udC1ibGFjaztcbiAgICBcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdH1cblx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cdFx0cGFkZGluZzowO1xuXHRcdC5jb21tZW50e1xuXHRcdFx0Ym9yZGVyLWJvdHRvbToxcHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2xpbmUnKTtcblx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0cGFkZGluZzoyMHB4IDEwcHggMTBweDtcblx0XHRcdCY6bnRoLWNoaWxkKGV2ZW4pLmRlcHRoLTF7XG5cdFx0XHRcdGJhY2tncm91bmQ6I2ZhZmFmYTtcblx0XHRcdH1cblx0XHRcdCY6YmVmb3Jle1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDFweDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdsaW5lJyk7XG4gICAgICB9XG5cdFx0XHQuY29tbWVudC1hdXRob3J7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdncmV5Jyk7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206MTBweDtcblx0XHRcdFx0LmNvbW1lbnQtbWV0YXtcblx0XHRcdFx0XHQvL21hcmdpbi1sZWZ0OiAxNXB4O1xuXHRcdFx0XHRcdGZsb2F0OnJpZ2h0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuY29tbWVudHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6MiU7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206bm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblxuXHR9XG5cdC8qLmNvbW1lbnQtcmVzcG9uZHtcblx0XHQuY29tbWVudC1yZXBseS10aXRsZXtcblx0XHRcdG1hcmdpbi10b3A6MjVweDtcblx0XHR9XG5cdFx0LmNvbW1lbnQtZm9ybXtcblx0XHRcdGxhYmVse1xuXHRcdFx0XHRtYXJnaW4tdG9wOjEwcHg7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdFx0dGV4dGFyZWF7XG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKCdwcmltYXJ5JywgZm9udC1jb2xvcik7XG4gICAgXHRcdHBhZGRpbmc6IDVweCAycHg7XG5cdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdCY6Zm9jdXN7XG5cdFx0XHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0XHRpbnB1dHtcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgY29sb3IoYmFzZSwgZm9udC1jb2xvcik7XG5cdFx0XHRcdCY6Zm9jdXN7XG5cdFx0XHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnN1Ym1pdHtcblx0XHRcdFx0bWFyZ2luLXRvcDoxNXB4O1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCBjb2xvcihicmFuZHByaW1hcnkpO1xuXHRcdFx0XHRwYWRkaW5nOjEwcHggMjBweDtcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgLjVzIGVhc2UpO1xuXHRcdFx0XHQmOmhvdmVye1xuXHRcdFx0XHRcdGNvbG9yOiNmZmY7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDpjb2xvcihicmFuZHByaW1hcnkpO1xuXHRcdFx0XHRcdGJvcmRlci1jb2xvcjpjb2xvcihicmFuZHByaW1hcnkpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6Zm9jdXN7XG5cdFx0XHRcdFx0b3V0bGluZTpub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9Ki9cblxufVxuXG4uaW5wdXQtd3JhcCB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZzogNHB4O1xuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG5cdCY6Zmlyc3QtY2hpbGQge1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0fVxuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0fVxuXG5cdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xuXHRcdCYuaW5wdXQtLSN7JGl9IHtcblx0XHRcdHdpZHRoOiAkaSAqIDEwJTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR4cy1vbmx5KSB7XG5cdFx0cGFkZGluZzogMDtcblxuXHRcdEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTAge1xuXHRcdFx0Ji5pbnB1dC0tI3skaX0ge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuW1N0eWxlXVxuT24gc2UgbGFuY2UgZGFucyBsYSBwZXJzb25uYWxpc2F0aW9uIGRlIGNoYWN1bmUgZGVzIGRpZmbDqXJlbnRlc1xucG9ydGlvbnMgZHUgc2l0ZSFcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcdEJsb2NrXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuW0xheW91dF1cblBsYWNlaG9sZGVyIHBvdXIgbGUgZm9ybWF0IGRlIGxhIGdyaWxsZS4gQ29tbWUgbGEgZ3JpbGxlIGVzdCBhc3NlelxucGVyc29ubmFsaXPDqWUgZCd1biBzaXRlIMOgIGwnYXV0cmUsIG9uIGxlIGNvbnNlcnZlIGljaS5cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuJWxheW91dCB7XG5cdEBpbmNsdWRlIGNvbnRhaW5lcjtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KCR4bGctb25seSkge1xuXHRcdG1heC13aWR0aDogJGNvbnRhaW5lci13aWR0aC1sZyArIHB4O1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkbGctb25seSkge1xuXHRcdG1heC13aWR0aDogJGNvbnRhaW5lci13aWR0aC1sZyArIHB4O1xuXHR9XG59XG4iLCJAaW1wb3J0ICdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TGF0bzozMDAsNDAwLDcwMCw5MDAnO1xuXG4vKlxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdsYXRvYmxhY2snO1xuICAgIHNyYzogdXJsKCcjeyRmb250cy1kaXJ9L2xhdG8tYmxhY2std2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnI3skZm9udHMtZGlyfS9sYXRvLWJsYWNrLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2JsYWNrX2l0YWxpYyc7XG4gICAgc3JjOiB1cmwoJyN7JGZvbnRzLWRpcn0vbGF0by1ibGFja2l0YWxpYy13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcjeyRmb250cy1kaXJ9L2xhdG8tYmxhY2tpdGFsaWMtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdsYXRvYm9sZCc7XG4gICAgc3JjOiB1cmwoJyN7JGZvbnRzLWRpcn0vbGF0by1ib2xkLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJyN7JGZvbnRzLWRpcn0vbGF0by1ib2xkLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cblxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2JvbGRfaXRhbGljJztcbiAgICBzcmM6IHVybCgnI3skZm9udHMtZGlyfS9sYXRvLWJvbGRpdGFsaWMtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnI3skZm9udHMtZGlyfS9sYXRvLWJvbGRpdGFsaWMtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2xhdG9oYWlybGluZSc7XG4gICAgc3JjOiB1cmwoJyN7JGZvbnRzLWRpcn0vbGF0by1oYWlybGluZS13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcjeyRmb250cy1kaXJ9L2xhdG8taGFpcmxpbmUtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2xhdG9oYWlybGluZV9pdGFsaWMnO1xuICAgIHNyYzogdXJsKCcjeyRmb250cy1kaXJ9L2xhdG8taGFpcmxpbmVpdGFsaWMtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnI3skZm9udHMtZGlyfS9sYXRvLWhhaXJsaW5laXRhbGljLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59XG5cblxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbGF0b2l0YWxpYyc7XG4gICAgc3JjOiB1cmwoJyN7JGZvbnRzLWRpcn0vbGF0by1pdGFsaWMtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnI3skZm9udHMtZGlyfS9sYXRvLWl0YWxpYy13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2xhdG9saWdodCc7XG4gICAgc3JjOiB1cmwoJyN7JGZvbnRzLWRpcn0vbGF0by1saWdodC13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICAgdXJsKCcjeyRmb250cy1kaXJ9L2xhdG8tbGlnaHQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cblxuXG5cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdsYXRvbGlnaHRfaXRhbGljJztcbiAgICBzcmM6IHVybCgnI3skZm9udHMtZGlyfS9sYXRvLWxpZ2h0aXRhbGljLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoJyN7JGZvbnRzLWRpcn0vbGF0by1saWdodGl0YWxpYy13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2xhdG9yZWd1bGFyJztcbiAgICBzcmM6IHVybCgnI3skZm9udHMtZGlyfS9sYXRvLXJlZ3VsYXItd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgIHVybCgnI3skZm9udHMtZGlyfS9sYXRvLXJlZ3VsYXItd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn0qL1xuIiwiLy8gZm9udCBpY29ucyBzdXBwb3J0XG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ2xnJztcbiAgICBzcmM6IHVybChcIiN7JGxnLXBhdGgtZm9udHN9L2xnLmVvdD9uMXozNzNcIik7XG4gICAgc3JjOiB1cmwoXCIjeyRsZy1wYXRoLWZvbnRzfS9sZy5lb3Q/I2llZml4bjF6MzczXCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIjeyRsZy1wYXRoLWZvbnRzfS9sZy53b2ZmP24xejM3M1wiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIjeyRsZy1wYXRoLWZvbnRzfS9sZy50dGY/bjF6MzczXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIjeyRsZy1wYXRoLWZvbnRzfS9sZy5zdmc/bjF6MzczI2xnXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG4ubGctaWNvbiB7XG4gICAgZm9udC1mYW1pbHk6ICdsZyc7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn0iLCIvLyBkZWZhdWx0IHRoZW1lXG4ubGctYWN0aW9ucyB7XG4gICAgLmxnLW5leHQsIC5sZy1wcmV2IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxnLW5leHQtcHJldi1iZztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGxnLWJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICAgICAgY29sb3I6ICRsZy1uZXh0LXByZXYtY29sb3I7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDlweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgei1pbmRleDogJHppbmRleC1jb250cm9scztcblxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGxnLW5leHQtcHJldi1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGUwOTVcIjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1wcmV2IHtcbiAgICAgICAgbGVmdDogMjBweDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlMDk0XCI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIGtleWZyYW1lcyhsZy1yaWdodC1lbmQpIHtcbiAgICAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgNTAlIHtcbiAgICAgICAgbGVmdDogLTMwcHg7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuXG5cbkBpbmNsdWRlIGtleWZyYW1lcyhsZy1sZWZ0LWVuZCkge1xuICAgIDAlIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICA1MCUge1xuICAgICAgICBsZWZ0OiAzMHB4O1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cbn1cblxuXG4ubGctb3V0ZXIge1xuICAgICYubGctcmlnaHQtZW5kIHtcbiAgICAgICAgLmxnLW9iamVjdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBhbmltYXRpb24obGctcmlnaHQtZW5kIDAuM3MpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sZy1sZWZ0LWVuZCB7XG4gICAgICAgIC5sZy1vYmplY3Qge1xuICAgICAgICAgICAgQGluY2x1ZGUgYW5pbWF0aW9uKGxnLWxlZnQtZW5kIDAuM3MpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBsZyB0b29sYmFyXG4ubGctdG9vbGJhciB7XG4gICAgei1pbmRleDogJHppbmRleC10b29sYmFyO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGctdG9vbGJhci1iZztcblxuICAgIC5sZy1pY29uIHtcbiAgICAgICAgY29sb3I6ICRsZy10b29sYmFyLWljb24tY29sb3I7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGhlaWdodDogNDdweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG91dGxpbmU6IG1lZGl1bSBub25lO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yIDAuMnMgbGluZWFyKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGctdG9vbGJhci1pY29uLWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLWNsb3NlIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTA3MFwiO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLWRvd25sb2FkIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTBmMlwiO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBsaWdodEdhbGxlcnkgdGl0bGVcbi5sZy1zdWItaHRtbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxnLXN1Yi1odG1sLWJnO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb2xvcjogJGxnLXN1Yi1odG1sLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDEwcHggNDBweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtc3ViaHRtbDtcblxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIG1hcmdpbjogNXB4IDAgMDtcbiAgICB9XG59XG5cbi8vIGxnIGltYWdlIGNvdW50ZXJcbiNsZy1jb3VudGVyIHtcbiAgICBjb2xvcjogJGxnLWljb24tY29sb3I7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGxnLWNvdW50ZXItZm9udC1zaXplO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vLyBmb3IgaWRsZSBzdGF0ZVxuLmxnLXRvb2xiYXIsIC5sZy1wcmV2LCAubGctbmV4dCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKHRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4zNXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBjb2xvciAwLjJzIGxpbmVhcik7XG59XG5cbi5sZy1oaWRlLWl0ZW1zIHtcbiAgICAubGctcHJldiB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB9XG5cbiAgICAubGctbmV4dCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIH1cblxuICAgIC5sZy10b29sYmFyIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIH1cbn1cblxuLy8gU3RhcnRpbmcgZWZmZWN0XG5ib2R5Om5vdCgubGctZnJvbS1oYXNoKXtcbiAgICAubGctb3V0ZXIge1xuICAgICAgICAmLmxnLXN0YXJ0LXpvb217XG4gICAgICAgICAgICAubGctb2JqZWN0e1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlM2QoMC41LCAwLjUsIDAuNSk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKHRyYW5zZm9ybSAyNTBtcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMjUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpICFpbXBvcnRhbnQpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oNTAlIDUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGctaXRlbS5sZy1jb21wbGV0ZXtcbiAgICAgICAgICAgICAgICAubGctb2JqZWN0e1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBzY2FsZTNkKDEsIDEsIDEpO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIkYmFja2Ryb3Atb3BhY2l0eTogMSAhZGVmYXVsdDtcbiRsZy10b29sYmFyLWJnOiByZ2JhKDAsIDAsIDAsIDAuNDUpICFkZWZhdWx0O1xuJGxnLWJvcmRlci1yYWRpdXMtYmFzZTogMnB4ICFkZWZhdWx0O1xuJGxnLXRoZW1lLWhpZ2hsaWdodDogcmdiKDE2OSwgNywgNykgIWRlZmF1bHQ7XG4kbGctdGhlbWU6ICMwRDBBMEEgIWRlZmF1bHQ7XG5cbi8vIGJhc2ljIGljb24gY29sb3Vyc1xuJGxnLWljb24tYmc6IHJnYmEoMCwgMCwgMCwgMC40NSkgIWRlZmF1bHQ7XG4kbGctaWNvbi1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRsZy1pY29uLWhvdmVyLWNvbG9yOiAjRkZGICFkZWZhdWx0O1xuXG4vLyBjb3VudGVyXG4kbGctY291bnRlci1jb2xvcjogI2U2ZTZlNiAhZGVmYXVsdDtcbiRsZy1jb3VudGVyLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gTmV4dCBwcmV2IGljb25zXG4kbGctbmV4dC1wcmV2LWJnOiAkbGctaWNvbi1iZyAhZGVmYXVsdDtcbiRsZy1uZXh0LXByZXYtY29sb3I6ICRsZy1pY29uLWNvbG9yICFkZWZhdWx0O1xuJGxnLW5leHQtcHJldi1ob3Zlci1jb2xvcjogJGxnLWljb24taG92ZXItY29sb3IgIWRlZmF1bHQ7XG5cbi8vIHRvb2xiYXIgaWNvbnNcbiRsZy10b29sYmFyLWljb24tY29sb3I6ICRsZy1pY29uLWNvbG9yICFkZWZhdWx0O1xuJGxnLXRvb2xiYXItaWNvbi1ob3Zlci1jb2xvcjogJGxnLWljb24taG92ZXItY29sb3IgIWRlZmF1bHQ7XG5cbi8vIGF1dG9wbGF5IHByb2dyZXNzIGJhclxuJGxnLXByb2dyZXNzLWJhci1iZzogIzMzMyAhZGVmYXVsdDtcbiRsZy1wcm9ncmVzcy1iYXItYWN0aXZlLWJnOiAkbGctdGhlbWUtaGlnaGxpZ2h0ICFkZWZhdWx0O1xuJGxnLXByb2dyZXNzLWJhci1oZWlnaHQ6IDVweCAhZGVmYXVsdDtcblxuLy8gcGF0aHNcbiRsZy1wYXRoLWZvbnRzOiAnLi4vZm9udHMnIWRlZmF1bHQ7XG4kbGctcGF0aC1pbWFnZXM6ICcuLi9pbWcnIWRlZmF1bHQ7XG5cbi8vIFpvb20gcGx1Z2luXG4kem9vbS10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzICFkZWZhdWx0O1xuXG4vLyBTdWIgaHRtbCAtIHRpdGlsZVxuJGxnLXN1Yi1odG1sLWJnOiByZ2JhKDAsIDAsIDAsIDAuNDUpICFkZWZhdWx0O1xuJGxnLXN1Yi1odG1sLWNvbG9yOiAjRUVFICFkZWZhdWx0O1xuXG4vLyB0aHVtYm5haWwgdG9nZ2xlIGJ1dHRvblxuJGxnLXRodW1iLXRvZ2dsZS1iZzogIzBEMEEwQSAhZGVmYXVsdDtcbiRsZy10aHVtYi10b2dnbGUtY29sb3I6ICRsZy1pY29uLWNvbG9yICFkZWZhdWx0O1xuJGxnLXRodW1iLXRvZ2dsZS1ob3Zlci1jb2xvcjogJGxnLWljb24taG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbGctdGh1bWItYmc6ICMwRDBBMEEgIWRlZmF1bHQ7XG5cbi8vIHotaW5kZXhcbiR6aW5kZXgtb3V0ZXI6IDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXByb2dyZXNzYmFyOiAxMDgzICFkZWZhdWx0O1xuJHppbmRleC1jb250cm9sczogMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbGJhcjogMTA4MiAhZGVmYXVsdDtcbiR6aW5kZXgtc3ViaHRtbDogMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtdGh1bWJuYWlsOiAxMDgwICFkZWZhdWx0O1xuJHppbmRleC1wYWdlcjogMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtcGxheWJ1dHRvbjogMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtaXRlbTogMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtYmFja2Ryb3A6IDEwNDAgIWRlZmF1bHQ7XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IHdpbGwgYmUgcmVtb3ZlZCBpbiB2NC5cblxuLy8gLSBBbmltYXRpb25zXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIC0gQm94IHNoYWRvd1xuLy8gLSBCb3ggc2l6aW5nXG4vLyAtIENvbnRlbnQgY29sdW1uc1xuLy8gLSBIeXBoZW5zXG4vLyAtIFBsYWNlaG9sZGVyIHRleHRcbi8vIC0gVHJhbnNmb3JtYXRpb25zXG4vLyAtIFRyYW5zaXRpb25zXG4vLyAtIFVzZXIgU2VsZWN0XG4vLyAtIGN1cnNvciBncmFiXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgIC1vLWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICBhbmltYXRpb246ICRhbmltYXRpb247XG59XG5cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cblxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJGl0ZXJhdGlvbi1jb3VudCkge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuXG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG5cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuQG1peGluIGtleWZyYW1lcygkbmFtZSkge1xuICAgIEAtd2Via2l0LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEAtbW96LWtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIEAtbXMta2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgaHlwaGVuczogJG1vZGU7XG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuXG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5cbkBtaXhpbiBzY2FsZTNkKCR4LCAkeSwgJHopIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgkeCwgJHksICR6KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoJHgsICR5LCAkeik7XG59XG5cbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cblxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuXG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XG4gICAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuXG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xuICAgIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cblxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuQG1peGluIHRyYW5zZm9ybSgkdHJhbnNmb3Jtcykge1xuICAgIC1tb3otdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICAtby10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuICAgIC1tcy10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiAkdHJhbnNmb3JtcztcbiAgICB0cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cblxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cbi8vIHRyYW5zaXRpb24gY3VzdG9tXG5cbkBmdW5jdGlvbiBwcmVmaXgoJHByb3BlcnR5LCAkcHJlZml4ZXM6IHdlYmtpdCBtb3ogbyBtcykge1xuICAgICR2ZW5kb3ItcHJlZml4ZWQtcHJvcGVydGllczogdHJhbnNmb3JtIGJhY2tncm91bmQtY2xpcCBiYWNrZ3JvdW5kLXNpemU7XG4gICAgJHJlc3VsdDogKCk7XG5cbiAgICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgICAgIEBpZiBpbmRleCgkdmVuZG9yLXByZWZpeGVkLXByb3BlcnRpZXMsICRwcm9wZXJ0eSkge1xuICAgICAgICAgICAgJHByb3BlcnR5OiAtI3skcHJlZml4fS0jeyRwcm9wZXJ0eX07XG4gICAgICAgIH1cbiAgICAgICAgJHJlc3VsdDogYXBwZW5kKCRyZXN1bHQsICRwcm9wZXJ0eSk7XG4gICAgfVxuICAgIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuQGZ1bmN0aW9uIHRyYW5zLXByZWZpeCgkdHJhbnNpdGlvbiwgJHByZWZpeDogbW96KSB7XG4gICAgJHByZWZpeGVkOiAoKTtcblxuICAgIEBlYWNoICR0cmFucyBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICAgICRwcm9wLW5hbWU6IG50aCgkdHJhbnMsIDEpO1xuICAgICAgICAkdmVuZG9yLXByb3AtbmFtZTogcHJlZml4KCRwcm9wLW5hbWUsICRwcmVmaXgpO1xuICAgICAgICAkcHJvcC12YWxzOiBudGgoJHRyYW5zLCAyKTtcbiAgICAgICAgJHByZWZpeGVkOiBhcHBlbmQoJHByZWZpeGVkLCAkdmVuZG9yLXByb3AtbmFtZSAkcHJvcC12YWxzLCBjb21tYSk7XG4gICAgfVxuICAgIEByZXR1cm4gJHByZWZpeGVkO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbkN1c3RvbSgkdmFsdWVzLi4uKSB7XG4gICAgJHRyYW5zaXRpb25zOiAoKTtcblxuICAgIEBlYWNoICRkZWNsYXJhdGlvbiBpbiAkdmFsdWVzIHtcbiAgICAgICAgJHByb3A6IG50aCgkZGVjbGFyYXRpb24sIDEpO1xuICAgICAgICAkcHJvcC1vcHRzOiAoKTtcbiAgICAgICAgJGxlbmd0aDogbGVuZ3RoKCRkZWNsYXJhdGlvbik7XG5cbiAgICAgICAgQGlmICRsZW5ndGggPj0gMiB7XG4gICAgICAgICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRsZW5ndGgge1xuICAgICAgICAgICAgICAgICRwcm9wLW9wdHM6IGFwcGVuZCgkcHJvcC1vcHRzLCBudGgoJGRlY2xhcmF0aW9uLCAkaSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICR0cmFuczogJHByb3AsICRwcm9wLW9wdHM7XG4gICAgICAgICR0cmFuc2l0aW9uczogYXBwZW5kKCR0cmFuc2l0aW9ucywgJHRyYW5zLCBjb21tYSk7XG4gICAgfVxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnMtcHJlZml4KCR0cmFuc2l0aW9ucywgd2Via2l0KTtcbiAgICAtbW96LXRyYW5zaXRpb246IHRyYW5zLXByZWZpeCgkdHJhbnNpdGlvbnMsIG1veik7XG4gICAgLW8tdHJhbnNpdGlvbjogdHJhbnMtcHJlZml4KCR0cmFuc2l0aW9ucywgbyk7XG4gICAgdHJhbnNpdGlvbjogJHZhbHVlcztcbn1cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG5cbi8vIG1vdXNlIGdyYWJcblxuQG1peGluIGdyYWItY3Vyc29yIHtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgICBjdXJzb3I6IC1vLWdyYWI7XG4gICAgY3Vyc29yOiAtbXMtZ3JhYjtcbiAgICBjdXJzb3I6IGdyYWI7XG59XG5cbkBtaXhpbiBncmFiYmluZy1jdXJzb3Ige1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuICAgIGN1cnNvcjogLW8tZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiAtbXMtZ3JhYmJpbmc7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbn1cbiIsIi5sZy1vdXRlciB7XG4gICAgLmxnLXRodW1iLW91dGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxnLXRodW1iLWJnO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtdGh1bWJuYWlsO1xuICAgICAgICBtYXgtaGVpZ2h0OiAzNTBweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20odHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcyk7XG5cbiAgICAgICAgJi5sZy1ncmFiIHtcbiAgICAgICAgICAgIC5sZy10aHVtYi1pdGVtIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmFiLWN1cnNvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubGctZ3JhYmJpbmcge1xuICAgICAgICAgICAgLmxnLXRodW1iLWl0ZW0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyYWJiaW5nLWN1cnNvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubGctZHJhZ2dpbmcge1xuICAgICAgICAgICAgLmxnLXRodW1iIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDBzICFpbXBvcnRhbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYubGctdGh1bWItb3BlbntcbiAgICAgICAgLmxnLXRodW1iLW91dGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAlLCAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy10aHVtYiB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICAgIH1cblxuICAgIC5sZy10aHVtYi1pdGVtIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJvcmRlci1jb2xvciAwLjI1cyBlYXNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlLCAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGxnLXRoZW1lLWhpZ2hsaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sZy1oYXMtdGh1bWIge1xuICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxnLWNhbi10b2dnbGUge1xuICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmxnLXB1bGwtY2FwdGlvbi11cHtcbiAgICAgICAgLmxnLXN1Yi1odG1sIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYm90dG9tIDAuMjVzIGVhc2UpO1xuICAgICAgICB9XG4gICAgICAgICYubGctdGh1bWItb3BlbntcbiAgICAgICAgICAgIC5sZy1zdWItaHRtbCB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy10b29nbGUtdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGctdGh1bWItdG9nZ2xlLWJnO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkbGctYm9yZGVyLXJhZGl1cy1iYXNlICRsZy1ib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgICAgICBjb2xvcjogJGxnLXRodW1iLXRvZ2dsZS1jb2xvcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMzlweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI3cHg7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRvcDogLTM5cHg7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGUxZmZcIjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRsZy10aHVtYi10b2dnbGUtaG92ZXItY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmxnLW91dGVyIHtcbiAgICAubGctdmlkZW8tY29udCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICB9XG5cbiAgICAubGctdmlkZW8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmxnLW9iamVjdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmxnLXZpZGVvLXBsYXkge1xuICAgICAgICAgICAgd2lkdGg6IDg0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDU5cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDJweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgICAgICAgICAgei1pbmRleDogJHppbmRleC1wbGF5YnV0dG9uO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLWhhcy12aW1lb3tcbiAgICAgICAgLmxnLXZpZGVvLXBsYXl7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIjeyRsZy1wYXRoLWltYWdlc30vdmltZW8tcGxheS5wbmdcIikgbm8tcmVwZWF0IHNjcm9sbCAwIDAgdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIC5sZy12aWRlby1wbGF5e1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIiN7JGxnLXBhdGgtaW1hZ2VzfS92aW1lby1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgLTU4cHggdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9IFxuXG4gICAgICAgIH0gIFxuICAgIH1cblxuICAgIC5sZy1oYXMtaHRtbDV7XG4gICAgICAgIC5sZy12aWRlby1wbGF5e1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiI3skbGctcGF0aC1pbWFnZXN9L3ZpZGVvLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwO1xuICAgICAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0zMnB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTMycHg7XG4gICAgICAgICAgICB3aWR0aDogNjRweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgfSAgXG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAubGctdmlkZW8tcGxheXtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxXG4gICAgICAgICAgICB9IFxuXG4gICAgICAgIH0gXG4gICAgfVxuXG4gICAgLmxnLWhhcy15b3V0dWJle1xuICAgICAgICAubGctdmlkZW8tcGxheXtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIiN7JGxnLXBhdGgtaW1hZ2VzfS95b3V0dWJlLXBsYXkucG5nXCIpIG5vLXJlcGVhdCBzY3JvbGwgMCAwIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAubGctdmlkZW8tcGxheXtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIjeyRsZy1wYXRoLWltYWdlc30veW91dHViZS1wbGF5LnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIDAgLTYwcHggdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9IFxuXG4gICAgICAgIH0gIFxuICAgIH1cbiAgICAubGctdmlkZW8tb2JqZWN0IHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgIH1cblxuICAgIC5sZy1oYXMtdmlkZW8ge1xuICAgICAgICAubGctdmlkZW8tb2JqZWN0IHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuXG4gICAgICAgICYubGctdmlkZW8tcGxheWluZyB7XG4gICAgICAgICAgICAubGctb2JqZWN0LCAubGctdmlkZW8tcGxheSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxnLXZpZGVvLW9iamVjdCB7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIubGctcHJvZ3Jlc3MtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGctcHJvZ3Jlc3MtYmFyLWJnO1xuICAgIGhlaWdodDogJGxnLXByb2dyZXNzLWJhci1oZWlnaHQ7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtcHJvZ3Jlc3NiYXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKG9wYWNpdHkgMC4wOHMgZWFzZSAwcyk7XG5cbiAgICAubGctcHJvZ3Jlc3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGctcHJvZ3Jlc3MtYmFyLWFjdGl2ZS1iZztcbiAgICAgICAgaGVpZ2h0OiAkbGctcHJvZ3Jlc3MtYmFyLWhlaWdodDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJi5sZy1zdGFydCB7XG4gICAgICAgIC5sZy1wcm9ncmVzcyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1zaG93LWF1dG9wbGF5ICYge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLmxnLWF1dG9wbGF5LWJ1dHRvbiB7XG4gICAgJjphZnRlciB7XG4gICAgICAgIC5sZy1zaG93LWF1dG9wbGF5ICYge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGUwMWFcIjtcbiAgICAgICAgfVxuICAgICAgICBjb250ZW50OiBcIlxcZTAxZFwiO1xuICAgIH1cbn0iLCIubGctb3V0ZXIge1xuICAgIC8vIHJlc2V0IHRyYW5zaXRpb24gZHVyYXRpb25cbiAgICAmLmxnLWNzczMubGctem9vbS1kcmFnZ2luZyB7XG4gICAgICAgIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxlIHtcbiAgICAgICAgICAgIC5sZy1pbWctd3JhcCwgLmxnLWltYWdlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKDBzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1pdGVtLmxnLWNvbXBsZXRlLmxnLXpvb21hYmxle1xuXG4gICAgICAgIC5sZy1pbWctd3JhcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKGxlZnQgJHpvb20tdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIHRvcCAkem9vbS10cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcyk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sZy1pbWFnZSB7XG4gICAgICAgICAgICAvLyBUcmFuc2xhdGUgcmVxdWlyZWQgZm9yIHpvb21cbiAgICAgICAgICAgIEBpbmNsdWRlIHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKHRyYW5zZm9ybSAkem9vbS10cmFuc2l0aW9uLWR1cmF0aW9uIGN1YmljLWJlemllcigwLCAwLCAwLjI1LCAxKSAwcywgb3BhY2l0eSAwLjE1cyAhaW1wb3J0YW50KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybS1vcmlnaW4oMCAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJhY2tmYWNlLXZpc2liaWxpdHkoaGlkZGVuKTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4vLyB6b29tIGJ1dHRvbnNcbiNsZy16b29tLWluIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGUzMTFcIjtcbiAgICB9XG59XG5cbiNsZy1hY3R1YWwtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlxcZTAzM1wiO1xuICAgIH1cbn1cblxuI2xnLXpvb20tb3V0IHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGUzMTJcIjtcbiAgICB9XG5cbiAgICAubGctem9vbWVkICYge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG59IiwiLmxnLW91dGVyIHtcbiAgICAubGctcGFnZXItb3V0ZXIge1xuICAgICAgICBib3R0b206IDYwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgei1pbmRleDogJHppbmRleC1wYWdlcjtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuXG4gICAgICAgICYubGctcGFnZXItaG92ZXIge1xuICAgICAgICAgICAgLmxnLXBhZ2VyLWNvbnQge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLXBhZ2VyLWNvbnQge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmxnLXBhZ2VyLXRodW1iLWNvbnQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmxnLXBhZ2VyLWFjdGl2ZSB7XG4gICAgICAgICAgICAubGctcGFnZXIge1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCB3aGl0ZSBpbnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1wYWdlci10aHVtYi1jb250IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA4M3B4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbkN1c3RvbShvcGFjaXR5IDAuMTVzIGVhc2UgMHMsIHRyYW5zZm9ybSAwLjE1cyBlYXNlIDBzKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctcGFnZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSBpbnNldDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3gtc2hhZG93IDAuM3MgZWFzZSAwcyk7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHdoaXRlIGluc2V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxnLWNhcmV0IHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogMTBweCBkYXNoZWQ7XG4gICAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgIH1cbn0iLCIubGctZnVsbHNjcmVlbiB7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlMjBjXCI7XG5cbiAgICAgICAgLmxnLWZ1bGxzY3JlZW4tb24gJiB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTIwZFwiO1xuICAgICAgICB9XG4gICAgfVxufSIsIi8vIENvcmUgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJsZy12YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJsZy1taXhpbnNcIjtcbkBpbXBvcnQgXCJsZy1mb250c1wiO1xuQGltcG9ydCBcImxnLXRoZW1lLWRlZmF1bHRcIjtcbkBpbXBvcnQgXCJsZy10aHVtYm5haWxcIjtcbkBpbXBvcnQgXCJsZy12aWRlb1wiO1xuQGltcG9ydCBcImxnLWF1dG9wbGF5XCI7XG5AaW1wb3J0IFwibGctem9vbVwiO1xuQGltcG9ydCBcImxnLXBhZ2VyXCI7XG5AaW1wb3J0IFwibGctZnVsbHNjcmVlblwiO1xuXG4vLyBDbGVhcmZpeFxuLmdyb3VwIHtcbiAgICAqem9vbTogMTtcbn1cblxuLmdyb3VwOmJlZm9yZSwgLmdyb3VwOmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG4uZ3JvdXA6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4vLyBsaWdodGdhbGxlcnkgY29yZVxuLmxnLW91dGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtb3V0ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICAvLyBGb3Igc3RhcnQvZW5kIHRyYW5zaXRpb25cbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC4xNXMgZWFzZSAwcyk7XG5cbiAgICAqIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgICB9XG5cbiAgICAmLmxnLXZpc2libGUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC8vIFNldCB0cmFuc2l0aW9uIHNwZWVkIGFuZCB0aW1pbmcgZnVuY3Rpb25cbiAgICAmLmxnLWNzczMge1xuICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICAmLmxnLXByZXYtc2xpZGUsICYubGctbmV4dC1zbGlkZSwgJi5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWR1cmF0aW9uKGluaGVyaXQgIWltcG9ydGFudCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oaW5oZXJpdCAhaW1wb3J0YW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlbW92ZSB0cmFuc2l0aW9uIHdoaWxlIGRyYWdnaW5nXG4gICAgJi5sZy1jc3MzLmxnLWRyYWdnaW5nIHtcbiAgICAgICAgLmxnLWl0ZW0ge1xuICAgICAgICAgICAgJi5sZy1wcmV2LXNsaWRlLCAmLmxnLW5leHQtc2xpZGUsICYubGctY3VycmVudCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigwcyAhaW1wb3J0YW50KTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0IGN1cnNvciBncmFiIHdoaWxlIGRyYWdnaW5nXG4gICAgJi5sZy1ncmFiIHtcbiAgICAgICAgaW1nLmxnLW9iamVjdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmFiLWN1cnNvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGctZ3JhYmJpbmcge1xuICAgICAgICBpbWcubGctb2JqZWN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyYWJiaW5nLWN1cnNvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC5sZy1pbm5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgIC5sZy1pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiI3skbGctcGF0aC1pbWFnZXN9L2xvYWRpbmcuZ2lmXCIpIG5vLXJlcGVhdCBzY3JvbGwgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyBcbiAgICB9XG4gICAgJi5sZy1jc3Mze1xuICAgICAgICAubGctcHJldi1zbGlkZSwgLmxnLWN1cnJlbnQsIC5sZy1uZXh0LXNsaWRle1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7IFxuICAgICAgICB9XG4gICAgfVxuICAgICYubGctY3Nze1xuICAgICAgICAubGctY3VycmVudHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyBcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZy1pdGVtLCAubGctaW1nLXdyYXAge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctaW1nLXdyYXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDBcbiAgICB9XG5cbiAgICAubGctaXRlbSB7XG4gICAgICAgICYubGctY29tcGxldGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubGctY3VycmVudCB7XG4gICAgICAgICAgICB6LWluZGV4OiAkemluZGV4LWl0ZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGctaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5sZy1zaG93LWFmdGVyLWxvYWQge1xuICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICAubGctb2JqZWN0LCAubGctdmlkZW8tcGxheSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC4xNXMgZWFzZSAwcyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubGctY29tcGxldGUge1xuICAgICAgICAgICAgICAgIC5sZy1vYmplY3QsIC5sZy12aWRlby1wbGF5IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIaWRlIHRpdGxlIGRpdiBpZiBlbXB0eVxuICAgIC5sZy1lbXB0eS1odG1sIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmxnLWhpZGUtZG93bmxvYWR7XG4gICAgICAgICNsZy1kb3dubG9hZHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGctYmFja2Ryb3B7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAkemluZGV4LWJhY2tkcm9wO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC4xNXMgZWFzZSAwcyk7XG4gICAgJi5pbntcbiAgICAgICAgb3BhY2l0eTogJGJhY2tkcm9wLW9wYWNpdHk7XG4gICAgfVxufVxuXG4vLyBEZWZhdWx0IHNsaWRlIGFuaW1hdGlvbnMuIFNob3VsZCBiZSBwbGFjZWQgYXQgdGhlIGJvdHRvbSBvZiB0aGUgYW5pbWF0aW9uIGNzc1xuLmxnLWNzczMge1xuXG4gICAgLy8gUmVtb3ZlIGFsbCB0cmFuc2l0aW9uIGVmZmVjdHNcbiAgICAmLmxnLW5vLXRyYW5zIHtcbiAgICAgICAgLmxnLXByZXYtc2xpZGUsIC5sZy1uZXh0LXNsaWRlLCAubGctY3VycmVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKG5vbmUgMHMgZWFzZSAwcyAhaW1wb3J0YW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGctdXNlLWNzczMge1xuICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxnLXVzZS1sZWZ0IHtcbiAgICAgICAgLmxnLWl0ZW0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eShoaWRkZW4pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmFkZSBtb2RlXG4gICAgJi5sZy1mYWRlIHtcbiAgICAgICAgLmxnLWl0ZW0ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAgICAgJi5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyB0cmFuc2l0aW9uIHRpbWluZyBwcm9wZXJ0eSBhbmQgZHVyYXRpb24gd2lsbCBiZSBvdmVyIHdyaXR0ZW4gZnJvbSBqYXZhc2NyaXB0XG4gICAgICAgICAgICAmLmxnLXByZXYtc2xpZGUsICYubGctbmV4dC1zbGlkZSwgJi5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uQ3VzdG9tKG9wYWNpdHkgMC4xcyBlYXNlIDBzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGctc2xpZGUge1xuICAgICAgICAmLmxnLXVzZS1jc3MzIHtcbiAgICAgICAgICAgIC5sZy1pdGVtIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICAgICAgJi5sZy1wcmV2LXNsaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubGctbmV4dC1zbGlkZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubGctY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIHRyYW5zaXRpb24gdGltaW5nIHByb3BlcnR5IGFuZCBkdXJhdGlvbiB3aWxsIGJlIG92ZXIgd3JpdHRlbiBmcm9tIGphdmFzY3JpcHRcbiAgICAgICAgICAgICAgICAmLmxnLXByZXYtc2xpZGUsICYubGctbmV4dC1zbGlkZSwgJi5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbkN1c3RvbSh0cmFuc2Zvcm0gMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMjUsIDEpIDBzLCBvcGFjaXR5IDAuMXMgZWFzZSAwcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5sZy11c2UtbGVmdCB7XG4gICAgICAgICAgICAubGctaXRlbSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAgICAgICAgICYubGctcHJldi1zbGlkZSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubGctbmV4dC1zbGlkZSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5sZy1jdXJyZW50IHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyB0cmFuc2l0aW9uIHRpbWluZyBwcm9wZXJ0eSBhbmQgZHVyYXRpb24gd2lsbCBiZSBvdmVyIHdyaXR0ZW4gZnJvbSBqYXZhc2NyaXB0XG4gICAgICAgICAgICAgICAgJi5sZy1wcmV2LXNsaWRlLCAmLmxnLW5leHQtc2xpZGUsICYubGctY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb25DdXN0b20obGVmdCAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yNSwgMSkgMHMsIG9wYWNpdHkgMC4xcyBlYXNlIDBzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuXG4vLyBTbGljayBpY29uIGVudGl0eSBjb2RlcyBvdXRwdXRzIHRoZSBmb2xsb3dpbmdcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXG4vLyBcIlxcMjAyMlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oCiXCJcblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuL2ZvbnRzL1wiICFkZWZhdWx0O1xuJHNsaWNrLWZvbnQtZmFtaWx5OiBcInNsaWNrXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yICFkZWZhdWx0O1xuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcMjE5MFwiICFkZWZhdWx0O1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcMjE5MlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgfVxufVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxufVxuXG4uc2xpY2stcHJldiB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEb3RzICovXG5cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTI1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLypcblNDU1MgdmFyaWFibGVzIGFyZSBpbmZvcm1hdGlvbiBhYm91dCBpY29uJ3MgY29tcGlsZWQgc3RhdGUsIHN0b3JlZCB1bmRlciBpdHMgb3JpZ2luYWwgZmlsZSBuYW1lXG5cbi5pY29uLWhvbWUge1xuICB3aWR0aDogJGljb24taG9tZS13aWR0aDtcbn1cblxuVGhlIGxhcmdlIGFycmF5LWxpa2UgdmFyaWFibGVzIGNvbnRhaW4gYWxsIGluZm9ybWF0aW9uIGFib3V0IGEgc2luZ2xlIGljb25cbiRpY29uLWhvbWU6IHggeSBvZmZzZXRfeCBvZmZzZXRfeSB3aWR0aCBoZWlnaHQgdG90YWxfd2lkdGggdG90YWxfaGVpZ2h0IGltYWdlX3BhdGg7XG5cbkF0IHRoZSBib3R0b20gb2YgdGhpcyBzZWN0aW9uLCB3ZSBwcm92aWRlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBzcHJpdGVzaGVldCBpdHNlbGZcbiRzcHJpdGVzaGVldDogd2lkdGggaGVpZ2h0IGltYWdlICRzcHJpdGVzaGVldC1zcHJpdGVzO1xuKi9cbiRibG9jLWJnLXRhcnRlcmllLW5hbWU6ICdibG9jLWJnLXRhcnRlcmllJztcbiRibG9jLWJnLXRhcnRlcmllLXg6IDBweDtcbiRibG9jLWJnLXRhcnRlcmllLXk6IDBweDtcbiRibG9jLWJnLXRhcnRlcmllLW9mZnNldC14OiAwcHg7XG4kYmxvYy1iZy10YXJ0ZXJpZS1vZmZzZXQteTogMHB4O1xuJGJsb2MtYmctdGFydGVyaWUtd2lkdGg6IDIwMDBweDtcbiRibG9jLWJnLXRhcnRlcmllLWhlaWdodDogOTU4cHg7XG4kYmxvYy1iZy10YXJ0ZXJpZS10b3RhbC13aWR0aDogMjAwMHB4O1xuJGJsb2MtYmctdGFydGVyaWUtdG90YWwtaGVpZ2h0OiAxMDAycHg7XG4kYmxvYy1iZy10YXJ0ZXJpZS1pbWFnZTogJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJztcbiRibG9jLWJnLXRhcnRlcmllOiAoMHB4LCAwcHgsIDBweCwgMHB4LCAyMDAwcHgsIDk1OHB4LCAyMDAwcHgsIDEwMDJweCwgJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJywgJ2Jsb2MtYmctdGFydGVyaWUnLCApO1xuJGNoZWNrLW5hbWU6ICdjaGVjayc7XG4kY2hlY2steDogMzEwcHg7XG4kY2hlY2steTogOTU4cHg7XG4kY2hlY2stb2Zmc2V0LXg6IC0zMTBweDtcbiRjaGVjay1vZmZzZXQteTogLTk1OHB4O1xuJGNoZWNrLXdpZHRoOiAxM3B4O1xuJGNoZWNrLWhlaWdodDogMTBweDtcbiRjaGVjay10b3RhbC13aWR0aDogMjAwMHB4O1xuJGNoZWNrLXRvdGFsLWhlaWdodDogMTAwMnB4O1xuJGNoZWNrLWltYWdlOiAnLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcnO1xuJGNoZWNrOiAoMzEwcHgsIDk1OHB4LCAtMzEwcHgsIC05NThweCwgMTNweCwgMTBweCwgMjAwMHB4LCAxMDAycHgsICcuLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZycsICdjaGVjaycsICk7XG4kaWNvbi1hcmVhLWxnLW5hbWU6ICdpY29uLWFyZWEtbGcnO1xuJGljb24tYXJlYS1sZy14OiAxNTNweDtcbiRpY29uLWFyZWEtbGcteTogOTU4cHg7XG4kaWNvbi1hcmVhLWxnLW9mZnNldC14OiAtMTUzcHg7XG4kaWNvbi1hcmVhLWxnLW9mZnNldC15OiAtOTU4cHg7XG4kaWNvbi1hcmVhLWxnLXdpZHRoOiAzNnB4O1xuJGljb24tYXJlYS1sZy1oZWlnaHQ6IDM0cHg7XG4kaWNvbi1hcmVhLWxnLXRvdGFsLXdpZHRoOiAyMDAwcHg7XG4kaWNvbi1hcmVhLWxnLXRvdGFsLWhlaWdodDogMTAwMnB4O1xuJGljb24tYXJlYS1sZy1pbWFnZTogJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJztcbiRpY29uLWFyZWEtbGc6ICgxNTNweCwgOTU4cHgsIC0xNTNweCwgLTk1OHB4LCAzNnB4LCAzNHB4LCAyMDAwcHgsIDEwMDJweCwgJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJywgJ2ljb24tYXJlYS1sZycsICk7XG4kaWNvbi1hcmVhLW5hbWU6ICdpY29uLWFyZWEnO1xuJGljb24tYXJlYS14OiAyODdweDtcbiRpY29uLWFyZWEteTogOTU4cHg7XG4kaWNvbi1hcmVhLW9mZnNldC14OiAtMjg3cHg7XG4kaWNvbi1hcmVhLW9mZnNldC15OiAtOTU4cHg7XG4kaWNvbi1hcmVhLXdpZHRoOiAyM3B4O1xuJGljb24tYXJlYS1oZWlnaHQ6IDIycHg7XG4kaWNvbi1hcmVhLXRvdGFsLXdpZHRoOiAyMDAwcHg7XG4kaWNvbi1hcmVhLXRvdGFsLWhlaWdodDogMTAwMnB4O1xuJGljb24tYXJlYS1pbWFnZTogJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJztcbiRpY29uLWFyZWE6ICgyODdweCwgOTU4cHgsIC0yODdweCwgLTk1OHB4LCAyM3B4LCAyMnB4LCAyMDAwcHgsIDEwMDJweCwgJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJywgJ2ljb24tYXJlYScsICk7XG4kaWNvbi1iYXRocm9vbS1sZy1uYW1lOiAnaWNvbi1iYXRocm9vbS1sZyc7XG4kaWNvbi1iYXRocm9vbS1sZy14OiAwcHg7XG4kaWNvbi1iYXRocm9vbS1sZy15OiA5NThweDtcbiRpY29uLWJhdGhyb29tLWxnLW9mZnNldC14OiAwcHg7XG4kaWNvbi1iYXRocm9vbS1sZy1vZmZzZXQteTogLTk1OHB4O1xuJGljb24tYmF0aHJvb20tbGctd2lkdGg6IDQ4cHg7XG4kaWNvbi1iYXRocm9vbS1sZy1oZWlnaHQ6IDQ0cHg7XG4kaWNvbi1iYXRocm9vbS1sZy10b3RhbC13aWR0aDogMjAwMHB4O1xuJGljb24tYmF0aHJvb20tbGctdG90YWwtaGVpZ2h0OiAxMDAycHg7XG4kaWNvbi1iYXRocm9vbS1sZy1pbWFnZTogJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJztcbiRpY29uLWJhdGhyb29tLWxnOiAoMHB4LCA5NThweCwgMHB4LCAtOTU4cHgsIDQ4cHgsIDQ0cHgsIDIwMDBweCwgMTAwMnB4LCAnLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcnLCAnaWNvbi1iYXRocm9vbS1sZycsICk7XG4kaWNvbi1iYXRocm9vbS1uYW1lOiAnaWNvbi1iYXRocm9vbSc7XG4kaWNvbi1iYXRocm9vbS14OiAxODlweDtcbiRpY29uLWJhdGhyb29tLXk6IDk1OHB4O1xuJGljb24tYmF0aHJvb20tb2Zmc2V0LXg6IC0xODlweDtcbiRpY29uLWJhdGhyb29tLW9mZnNldC15OiAtOTU4cHg7XG4kaWNvbi1iYXRocm9vbS13aWR0aDogMzFweDtcbiRpY29uLWJhdGhyb29tLWhlaWdodDogMjlweDtcbiRpY29uLWJhdGhyb29tLXRvdGFsLXdpZHRoOiAyMDAwcHg7XG4kaWNvbi1iYXRocm9vbS10b3RhbC1oZWlnaHQ6IDEwMDJweDtcbiRpY29uLWJhdGhyb29tLWltYWdlOiAnLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcnO1xuJGljb24tYmF0aHJvb206ICgxODlweCwgOTU4cHgsIC0xODlweCwgLTk1OHB4LCAzMXB4LCAyOXB4LCAyMDAwcHgsIDEwMDJweCwgJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJywgJ2ljb24tYmF0aHJvb20nLCApO1xuJGljb24tZ2FyYWdlLWxnLW5hbWU6ICdpY29uLWdhcmFnZS1sZyc7XG4kaWNvbi1nYXJhZ2UtbGcteDogMTAzcHg7XG4kaWNvbi1nYXJhZ2UtbGcteTogOTU4cHg7XG4kaWNvbi1nYXJhZ2UtbGctb2Zmc2V0LXg6IC0xMDNweDtcbiRpY29uLWdhcmFnZS1sZy1vZmZzZXQteTogLTk1OHB4O1xuJGljb24tZ2FyYWdlLWxnLXdpZHRoOiA1MHB4O1xuJGljb24tZ2FyYWdlLWxnLWhlaWdodDogMzRweDtcbiRpY29uLWdhcmFnZS1sZy10b3RhbC13aWR0aDogMjAwMHB4O1xuJGljb24tZ2FyYWdlLWxnLXRvdGFsLWhlaWdodDogMTAwMnB4O1xuJGljb24tZ2FyYWdlLWxnLWltYWdlOiAnLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcnO1xuJGljb24tZ2FyYWdlLWxnOiAoMTAzcHgsIDk1OHB4LCAtMTAzcHgsIC05NThweCwgNTBweCwgMzRweCwgMjAwMHB4LCAxMDAycHgsICcuLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZycsICdpY29uLWdhcmFnZS1sZycsICk7XG4kaWNvbi1nYXJhZ2UtbmFtZTogJ2ljb24tZ2FyYWdlJztcbiRpY29uLWdhcmFnZS14OiAyNTVweDtcbiRpY29uLWdhcmFnZS15OiA5NThweDtcbiRpY29uLWdhcmFnZS1vZmZzZXQteDogLTI1NXB4O1xuJGljb24tZ2FyYWdlLW9mZnNldC15OiAtOTU4cHg7XG4kaWNvbi1nYXJhZ2Utd2lkdGg6IDMycHg7XG4kaWNvbi1nYXJhZ2UtaGVpZ2h0OiAyMnB4O1xuJGljb24tZ2FyYWdlLXRvdGFsLXdpZHRoOiAyMDAwcHg7XG4kaWNvbi1nYXJhZ2UtdG90YWwtaGVpZ2h0OiAxMDAycHg7XG4kaWNvbi1nYXJhZ2UtaW1hZ2U6ICcuLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZyc7XG4kaWNvbi1nYXJhZ2U6ICgyNTVweCwgOTU4cHgsIC0yNTVweCwgLTk1OHB4LCAzMnB4LCAyMnB4LCAyMDAwcHgsIDEwMDJweCwgJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJywgJ2ljb24tZ2FyYWdlJywgKTtcbiRpY29uLXJvb21zLWxnLW5hbWU6ICdpY29uLXJvb21zLWxnJztcbiRpY29uLXJvb21zLWxnLXg6IDQ4cHg7XG4kaWNvbi1yb29tcy1sZy15OiA5NThweDtcbiRpY29uLXJvb21zLWxnLW9mZnNldC14OiAtNDhweDtcbiRpY29uLXJvb21zLWxnLW9mZnNldC15OiAtOTU4cHg7XG4kaWNvbi1yb29tcy1sZy13aWR0aDogNTVweDtcbiRpY29uLXJvb21zLWxnLWhlaWdodDogMzZweDtcbiRpY29uLXJvb21zLWxnLXRvdGFsLXdpZHRoOiAyMDAwcHg7XG4kaWNvbi1yb29tcy1sZy10b3RhbC1oZWlnaHQ6IDEwMDJweDtcbiRpY29uLXJvb21zLWxnLWltYWdlOiAnLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcnO1xuJGljb24tcm9vbXMtbGc6ICg0OHB4LCA5NThweCwgLTQ4cHgsIC05NThweCwgNTVweCwgMzZweCwgMjAwMHB4LCAxMDAycHgsICcuLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZycsICdpY29uLXJvb21zLWxnJywgKTtcbiRpY29uLXJvb21zLW5hbWU6ICdpY29uLXJvb21zJztcbiRpY29uLXJvb21zLXg6IDIyMHB4O1xuJGljb24tcm9vbXMteTogOTU4cHg7XG4kaWNvbi1yb29tcy1vZmZzZXQteDogLTIyMHB4O1xuJGljb24tcm9vbXMtb2Zmc2V0LXk6IC05NThweDtcbiRpY29uLXJvb21zLXdpZHRoOiAzNXB4O1xuJGljb24tcm9vbXMtaGVpZ2h0OiAyNHB4O1xuJGljb24tcm9vbXMtdG90YWwtd2lkdGg6IDIwMDBweDtcbiRpY29uLXJvb21zLXRvdGFsLWhlaWdodDogMTAwMnB4O1xuJGljb24tcm9vbXMtaW1hZ2U6ICcuLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZyc7XG4kaWNvbi1yb29tczogKDIyMHB4LCA5NThweCwgLTIyMHB4LCAtOTU4cHgsIDM1cHgsIDI0cHgsIDIwMDBweCwgMTAwMnB4LCAnLi4vLi4vcHVibGljL2ltYWdlcy9pY29uLXNwcml0ZS5wbmcnLCAnaWNvbi1yb29tcycsICk7XG4kc3ByaXRlc2hlZXQtd2lkdGg6IDIwMDBweDtcbiRzcHJpdGVzaGVldC1oZWlnaHQ6IDEwMDJweDtcbiRzcHJpdGVzaGVldC1pbWFnZTogJy4uLy4uL3B1YmxpYy9pbWFnZXMvaWNvbi1zcHJpdGUucG5nJztcbiRzcHJpdGVzaGVldC1zcHJpdGVzOiAoJGJsb2MtYmctdGFydGVyaWUsICRjaGVjaywgJGljb24tYXJlYS1sZywgJGljb24tYXJlYSwgJGljb24tYmF0aHJvb20tbGcsICRpY29uLWJhdGhyb29tLCAkaWNvbi1nYXJhZ2UtbGcsICRpY29uLWdhcmFnZSwgJGljb24tcm9vbXMtbGcsICRpY29uLXJvb21zLCApO1xuJHNwcml0ZXNoZWV0OiAoMjAwMHB4LCAxMDAycHgsICcuLi8uLi9wdWJsaWMvaW1hZ2VzL2ljb24tc3ByaXRlLnBuZycsICRzcHJpdGVzaGVldC1zcHJpdGVzLCApO1xuXG4vKlxuVGhlIHByb3ZpZGVkIG1peGlucyBhcmUgaW50ZW5kZWQgdG8gYmUgdXNlZCB3aXRoIHRoZSBhcnJheS1saWtlIHZhcmlhYmxlc1xuXG4uaWNvbi1ob21lIHtcbiAgQGluY2x1ZGUgc3ByaXRlLXdpZHRoKCRpY29uLWhvbWUpO1xufVxuXG4uaWNvbi1lbWFpbCB7XG4gIEBpbmNsdWRlIHNwcml0ZSgkaWNvbi1lbWFpbCk7XG59XG4qL1xuQG1peGluIHNwcml0ZS13aWR0aCgkc3ByaXRlKSB7XG4gIHdpZHRoOiBudGgoJHNwcml0ZSwgNSk7XG59XG5cbkBtaXhpbiBzcHJpdGUtaGVpZ2h0KCRzcHJpdGUpIHtcbiAgaGVpZ2h0OiBudGgoJHNwcml0ZSwgNik7XG59XG5cbkBtaXhpbiBzcHJpdGUtcG9zaXRpb24oJHNwcml0ZSkge1xuICAkc3ByaXRlLW9mZnNldC14OiBudGgoJHNwcml0ZSwgMyk7XG4gICRzcHJpdGUtb2Zmc2V0LXk6IG50aCgkc3ByaXRlLCA0KTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogJHNwcml0ZS1vZmZzZXQteCAgJHNwcml0ZS1vZmZzZXQteTtcbn1cblxuQG1peGluIHNwcml0ZS1pbWFnZSgkc3ByaXRlKSB7XG4gICRzcHJpdGUtaW1hZ2U6IG50aCgkc3ByaXRlLCA5KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCN7JHNwcml0ZS1pbWFnZX0pO1xufVxuXG5AbWl4aW4gc3ByaXRlKCRzcHJpdGUpIHtcbiAgQGluY2x1ZGUgc3ByaXRlLWltYWdlKCRzcHJpdGUpO1xuICBAaW5jbHVkZSBzcHJpdGUtcG9zaXRpb24oJHNwcml0ZSk7XG4gIEBpbmNsdWRlIHNwcml0ZS13aWR0aCgkc3ByaXRlKTtcbiAgQGluY2x1ZGUgc3ByaXRlLWhlaWdodCgkc3ByaXRlKTtcbn1cblxuLypcblRoZSBgc3ByaXRlc2AgbWl4aW4gZ2VuZXJhdGVzIGlkZW50aWNhbCBvdXRwdXQgdG8gdGhlIENTUyB0ZW1wbGF0ZVxuICBidXQgY2FuIGJlIG92ZXJyaWRkZW4gaW5zaWRlIG9mIFNDU1NcblxuQGluY2x1ZGUgc3ByaXRlcygkc3ByaXRlc2hlZXQtc3ByaXRlcyk7XG4qL1xuQG1peGluIHNwcml0ZXMoJHNwcml0ZXMpIHtcbiAgQGVhY2ggJHNwcml0ZSBpbiAkc3ByaXRlcyB7XG4gICAgJHNwcml0ZS1uYW1lOiBudGgoJHNwcml0ZSwgMTApO1xuICAgIC4jeyRzcHJpdGUtbmFtZX0ge1xuICAgICAgQGluY2x1ZGUgc3ByaXRlKCRzcHJpdGUpO1xuICAgIH1cbiAgfVxufVxuIiwiLypcbjxkaXYgY2xhc3M9XCJwYWxldHRlXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbG9yIHByaW1hcnlcIj48ZGl2IGNsYXNzPVwidmFyaWFudHNcIj48L2Rpdj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sb3IgdXRpbGl0eVwiPjxkaXYgY2xhc3M9XCJ2YXJpYW50c1wiPjwvZGl2PjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2xvciBhY2NlbnRcIj48ZGl2IGNsYXNzPVwidmFyaWFudHNcIj48L2Rpdj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sb3Igc2Vjb25kYXJ5XCI+PGRpdiBjbGFzcz1cInZhcmlhbnRzXCI+PC9kaXY+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbG9yIGZvcmVncm91bmRcIj48ZGl2IGNsYXNzPVwidmFyaWFudHNcIj48L2Rpdj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sb3IgYmFja2dyb3VuZFwiPjxkaXYgY2xhc3M9XCJ2YXJpYW50c1wiPjwvZGl2PjwvZGl2PlxuPC9kaXY+XG4gKi9cblxuJHZhcmlhbnQtaGVpZ2h0OiAxLjVyZW07XG5cbi5wYWxldHRlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uY29sb3Ige1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDFyZW0pO1xuICAgIGhlaWdodDogMTcwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwJTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDg1JTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdvcmQtd3JhcDogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgICBmb250LXNpemU6IDcwJTtcbiAgICBjb2xvcjogZ3JheTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvci1rZXksICRjb2xvci12YXJpYW50cyBpbiAkc2NoZW1lLWNvbG9ycyB7XG4gICAgJGJhc2UtY29sb3ItdmFsdWU6IG1hcC1nZXQoJGNvbG9yLXZhcmlhbnRzLCAnYmFzZScpO1xuXG4gICAgJi4jeyRjb2xvci1rZXl9IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWNvbG9yLXZhbHVlO1xuXG4gICAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiI3skY29sb3Ita2V5fVwiOyB9XG4gICAgICAmOmFmdGVyIHsgY29udGVudDogXCIjeyRiYXNlLWNvbG9yLXZhbHVlfVwiOyB9XG5cbiAgICAgICR2YXJpYW50LWdyYWRpZW50OiAodW5xdW90ZShcInRvIGJvdHRvbVwiKSwpO1xuXG4gICAgICAkaW5kZXg6IDA7XG4gICAgICBAZWFjaCAkdmFyaWFudC1uYW1lLCAkdmFyaWFudC12YWx1ZSBpbiAkY29sb3ItdmFyaWFudHMge1xuICAgICAgICAkdmFyaWFudC1ncmFkaWVudDogYXBwZW5kKCR2YXJpYW50LWdyYWRpZW50LCAkdmFyaWFudC12YWx1ZSAkaW5kZXggKiAkdmFyaWFudC1oZWlnaHQpO1xuICAgICAgICAkaW5kZXg6ICRpbmRleCArIDE7XG4gICAgICAgICR2YXJpYW50LWdyYWRpZW50OiBhcHBlbmQoJHZhcmlhbnQtZ3JhZGllbnQsICR2YXJpYW50LXZhbHVlICRpbmRleCAqICR2YXJpYW50LWhlaWdodCk7XG4gICAgICB9XG5cbiAgICAgIC52YXJpYW50cyB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgd2hpdGU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBoZWlnaHQ6ICR2YXJpYW50LWhlaWdodCAqIGxlbmd0aCgkY29sb3ItdmFyaWFudHMpO1xuICAgICAgICB3aWR0aDogJHZhcmlhbnQtaGVpZ2h0O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI3skdmFyaWFudC1ncmFkaWVudH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCBcIm1peGlucy9fYnV0dG9uLnNjc3NcIjtcbkBpbXBvcnQgXCJtaXhpbnMvX2xpbmtzLnNjc3NcIjtcblxuQG1peGluIHVuc3R5bGVkLWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8vLyBUaGUgdncgdW5pdCAodmlld3BvcnQgd2lkdGgpIGlzIGVxdWFsIHRvIDEvMTAwdGggb3IgMSUgb2YgdGhlIHdpZHRoIG9mIHRoZSB2aWV3cG9ydC5cbi8vLyBJbiB0aGUgZXhhbXBsZSBiZWxvdywgaWYgdGhlIHdpZHRoIG9mIHRoZSB2aWV3cG9ydCBpcyAxMDAwcHgsIHRoZSBmb250IHNpemUgb2YgdGhlIGgxIHdpbGwgYmUgNDBweC5cbkBmdW5jdGlvbiBnZXQtdncoJHNpemUsICRtYXg6IGZhbHNlLCAkbWluOiBmYWxzZSwgJGNvbnRleHQ6ICRjb250YWluZXItd2lkdGgteGxnKSB7XG4gICAgJHZ3LWNvbnRleHQ6ICgkY29udGV4dCAqIC4wMSk7IC8vIDElIHZpZXdwb3J0IHdpZHRoXG4gICAgQHJldHVybiAoJHNpemUgLyAkdnctY29udGV4dCkgKyB2dztcbn1cblxuQGZ1bmN0aW9uIGdldC12aCgkc2l6ZSwgJGNvbnRleHQ6ICRjb250YWluZXItd2lkdGgteGxnKSB7XG4gICAgJHZoLWNvbnRleHQ6ICgkY29udGV4dCAqIC4wMSk7IC8vIDElIHZpZXdwb3J0IHdpZHRoXG4gICAgQHJldHVybiAoJHNpemUgLyAkdmgtY29udGV4dCkgKyB2aDtcbn1cblxuQG1peGluIGhvcml6b250YWwtYWxpZ24oJHBlcmNlbnQ6IDUwJSkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRwZXJjZW50ICogLTEpO1xufVxuXG5AbWl4aW4gdmVydGljYWwtYWxpZ24oJHBlcmNlbnQ6IDUwJSkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHBlcmNlbnQgKiAtMSk7XG59XG5cbkBtaXhpbiBjYWxjLXZ3KCRzaXplLCAkbWluLXNpemU6IGZhbHNlLCAkbWluLWJyZWFrcG9pbnQ6IGZhbHNlLCAkbWF4LWJyZWFrcG9pbnQ6ICRjb250YWluZXItd2lkdGgteGxnKSB7XG4gIGZvbnQtc2l6ZTogZ2V0LXZ3KCRzaXplKTtcblxuICAvL1ByZXZlbnQgZm9udC1zaXplIGZyb20gZ2V0dGluZyB0b28gc21hbGxcbiAgQGlmICRtaW4tc2l6ZSAhPSBmYWxzZSB7XG4gICAgQGlmIHR5cGUtb2YoJG1pbi1icmVha3BvaW50KSA9PSBmYWxzZSB7XG4gICAgICAgIEB3YXJuIFwiYCN7JG1pbi1icmVha3BvaW50fWAgaXMgbm90IGRlZmluZWQuXCI7XG4gICAgfVxuXG4gICAgJHNtYWxsLXNjcmVlbjogXCIobWF4LXdpZHRoOiAjeyRtaW4tYnJlYWtwb2ludH0pXCI7XG4gICAgQG1lZGlhICN7JHNtYWxsLXNjcmVlbn0ge1xuICAgICAgICBAaW5jbHVkZSBjYWxjLXJlbSgkbWluLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgZm9udC1zaXplIGZyb20gZ2V0dGluZyB0b28gYmlnXG4gICR3aWRlLXNjcmVlbjogXCIobWluLXdpZHRoOiAjeyRtYXgtYnJlYWtwb2ludH1weClcIjtcbiAgQG1lZGlhICN7JHdpZGUtc2NyZWVufSB7XG4gICAgICBAaW5jbHVkZSBjYWxjLXJlbSgkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNpbWlsYXIgdG8gdncsIHRoZSB2aCB1bml0ICh2aWV3cG9ydCBoZWlnaHQpIGlzIGVxdWFsIHRvIDEvMTAwdGggb3IgMSUgb2YgdGhlIGhlaWdodCBvZiB0aGUgdmlld3BvcnQuXG4vLy8gSW4gdGhpcyBleGFtcGxlLCBpZiB0aGUgdmlld3BvcnQgaGVpZ2h0IGlzIDcwMHB4LCB0aGUgbWF4LWhlaWdodCBvZiB0aGUgaW1hZ2Ugd2lsbCBiZSAxNzVweCAoMjXDlzcwMC8xMDAgPSAxNzUgKS5cbkBmdW5jdGlvbiBjYWxjLXZoKCRzaXplLCAkY29udGV4dDogJGJhc2UtZm9udC1jb250ZXh0KSB7XG5cbn1cblxuLy8vIFRlc3QgaWYgYCR2YWx1ZWAgaXMgYSB2YWxpZCBkaXJlY3Rpb25cbi8vLyBAcGFyYW0geyp9ICR2YWx1ZSAtIFZhbHVlIHRvIHRlc3Rcbi8vLyBAcmV0dXJuIHtCb29sfVxuQGZ1bmN0aW9uIGlzLWRpcmVjdGlvbigkdmFsdWUpIHtcbiAgJGlzLWtleXdvcmQ6IGluZGV4KCh0byB0b3AsIHRvIHRvcCByaWdodCwgdG8gcmlnaHQgdG9wLCB0byByaWdodCwgdG8gYm90dG9tIHJpZ2h0LCB0byByaWdodCBib3R0b20sIHRvIGJvdHRvbSwgdG8gYm90dG9tIGxlZnQsIHRvIGxlZnQgYm90dG9tLCB0byBsZWZ0LCB0byBsZWZ0IHRvcCwgdG8gdG9wIGxlZnQpLCAkdmFsdWUpO1xuICAkaXMtYW5nbGU6IHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyBhbmQgaW5kZXgoJ2RlZycgJ2dyYWQnICd0dXJuJyAncmFkJywgdW5pdCgkdmFsdWUpKTtcblxuICBAcmV0dXJuICRpcy1rZXl3b3JkIG9yICRpcy1hbmdsZTtcbn1cblxuLy8vIENvbnZlcnQgYSBkaXJlY3Rpb24gdG8gbGVnYWN5IHN5bnRheFxuLy8vIEBwYXJhbSB7S2V5d29yZCB8IEFuZ2xlfSAkdmFsdWUgLSBWYWx1ZSB0byBjb252ZXJ0XG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1kaXJlY3Rpb25cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnZlcnQtYW5nbGVcbi8vLyBAdGhyb3cgQ2Fubm90IGNvbnZlcnQgYCN7JHZhbHVlfWAgdG8gbGVnYWN5IHN5bnRheCBiZWNhdXNlIGl0IGRvZXNuJ3Qgc2VlbSB0byBiZSBhIGRpcmVjdGlvbi47XG5AZnVuY3Rpb24gbGVnYWN5LWRpcmVjdGlvbigkdmFsdWUpIHtcbiAgQGlmIGlzLWRpcmVjdGlvbigkdmFsdWUpID09IGZhbHNlIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgY29udmVydCBgI3skdmFsdWV9YCB0byBsZWdhY3kgc3ludGF4IGJlY2F1c2UgaXQgZG9lc24ndCBzZWVtIHRvIGJlIGEgZGlyZWN0aW9uLlwiO1xuICB9XG5cbiAgJGNvbnZlcnNpb24tbWFwOiAoXG4gICAgdG8gdG9wICAgICAgICAgIDogYm90dG9tLFxuICAgIHRvIHRvcCByaWdodCAgICA6IGJvdHRvbSBsZWZ0LFxuICAgIHRvIHJpZ2h0IHRvcCAgICA6IGxlZnQgYm90dG9tLFxuICAgIHRvIHJpZ2h0ICAgICAgICA6IGxlZnQsXG4gICAgdG8gYm90dG9tIHJpZ2h0IDogdG9wIGxlZnQsXG4gICAgdG8gcmlnaHQgYm90dG9tIDogbGVmdCB0b3AsXG4gICAgdG8gYm90dG9tICAgICAgIDogdG9wLFxuICAgIHRvIGJvdHRvbSBsZWZ0ICA6IHRvcCByaWdodCxcbiAgICB0byBsZWZ0IGJvdHRvbSAgOiByaWdodCB0b3AsXG4gICAgdG8gbGVmdCAgICAgICAgIDogcmlnaHQsXG4gICAgdG8gbGVmdCB0b3AgICAgIDogcmlnaHQgYm90dG9tLFxuICAgIHRvIHRvcCBsZWZ0ICAgICA6IGJvdHRvbSByaWdodFxuICApO1xuXG4gIEBpZiBtYXAtaGFzLWtleSgkY29udmVyc2lvbi1tYXAsICR2YWx1ZSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkY29udmVyc2lvbi1tYXAsICR2YWx1ZSk7XG4gIH1cblxuICBAcmV0dXJuIDkwZGVnIC0gJHZhbHVlO1xufVxuXG5AbWl4aW4gbGluZWFyLWdyYWRpZW50KCRkaXJlY3Rpb24sICRjb2xvci1zdG9wcy4uLikge1xuICBAaWYgaXMtZGlyZWN0aW9uKCRkaXJlY3Rpb24pID09IGZhbHNlIHtcbiAgICAkY29sb3Itc3RvcHM6ICRkaXJlY3Rpb24sICRjb2xvci1zdG9wcztcbiAgICAkZGlyZWN0aW9uOiAxODBkZWc7XG4gIH1cblxuICBiYWNrZ3JvdW5kOiBudGgobnRoKCRjb2xvci1zdG9wcywgMSksIDEpO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWdhY3ktZGlyZWN0aW9uKCRkaXJlY3Rpb24pLCAkY29sb3Itc3RvcHMpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzKTtcbn1cblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgICAtbW96LXRyYW5zaXRpb246ICAgICR0cmFuc2l0aW9uO1xuICAgIC1vLXRyYW5zaXRpb246ICAgICAgJHRyYW5zaXRpb247XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB0cmFuc2l0aW9uOiAgICAgICAgICR0cmFuc2l0aW9uO1xufVxuXG4vLy8gQ2xlYXJmaXggZXh0ZW5kXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gLmZvbyB7XG4vLy8gQGV4dGVuZCAlY2xlYXJmaXg7XG4vLy8gfVxuXG4lY2xlYXJmaXgge1xuICAgICp6b29tOiAxO1xuXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG59XG5cbi8vLyBSZXBzb25zaXZlIGltYWdlIGV4dGVuZFxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vIC5mb28ge1xuLy8vIGltZyB7XG4vLy8gQGV4dGVuZCAlaW1nLXJlc3BvbnNpdmU7XG4vLy8gfVxuLy8vIH1cbiVpbWctcmVzcG9uc2l2ZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLy8vIEdpdmVuIHRoZSBsb2NhdGlvbiBvZiBhIHdlYmZvbnQsIHdpbGwgZ2VuZXJhdGUgYSBmb250LWZhY2UgZGVjbGFyYXRpb24gd2l0aCBtdWx0aXBsZSBmaWxlIGZvcm1hdHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRmb250LW5hbWUgLSBGb250IGZhbWlseSBuYW1lXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRmaWxlLW5hbWUgLSBGaWxlIG5hbWUgKG5vIGV4dGVuc2lvbilcbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHdlaWdodCBbbm9ybWFsXSAtIEZvbnQgd2VpZ2h0XG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHlsZSBbbm9ybWFsXSAtIEZvbnQgc3R5bGVcblxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vIEBpbmNsdWRlIGZvbnQtZmFjZSgnZ290aGFtJywgJy9mb250cy9nb3RoYW0nKTtcbkBtaXhpbiBmb250LWZhY2UoJGZvbnQtbmFtZSwgJGZpbGUtbmFtZSwgJHdlaWdodDogbm9ybWFsLCAkc3R5bGU6IG5vcm1hbCkge1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogcXVvdGUoJGZvbnQtbmFtZSk7XG4gICAgc3JjOiB1cmwoJGZpbGUtbmFtZSArICcuZW90Jyk7XG4gICAgc3JjOiB1cmwoJGZpbGUtbmFtZSArICcuZW90PyNpZWZpeCcpICBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgICB1cmwoJGZpbGUtbmFtZSArICcud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICAgdXJsKCRmaWxlLW5hbWUgKyAnLnR0ZicpICBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoJGZpbGUtbmFtZSArICcuc3ZnIyN7JGZvbnQtbmFtZX0nKSAgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogJHdlaWdodDtcbiAgICBmb250LXN0eWxlOiAkc3R5bGU7XG4gIH1cbn1cblxuLy8vIENyZWF0ZSByb3VuZGVkIGNvcm5lcnNcbi8vLyBAcGFyYW0ge051bWJlcn0gLSBBcmMgdmFsdWUsIGNhbiBiZSBweCBvciBwZXJjZW50XG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gQGluY2x1ZGUgcm91bmRlZC1jb3JuZXJzKDUwJSk7XG5AbWl4aW4gcm91bmRlZC1jb3JuZXJzKCRhcmMpIHtcblx0LW1vei1ib3JkZXItcmFkaXVzOiAkYXJjO1xuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRhcmM7XG5cdGJvcmRlci1yYWRpdXM6ICRhcmM7XG5cdC1raHRtbC1ib3JkZXItcmFkaXVzOiAkYXJjO1xufVxuXG4vLy8gQ29udmVydCBweCBmb250LXNpemUgdG8gZW1cbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gRm9udCBzaXplICgxOHB4KVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29udGV4dCAtIENvbnRleHQgZm9udCBzaXplICgxOHB4KVxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vZm9udC1zaXplOiBjYWxjLWVtKDE4cHgsIDIwcHgpO1xuQGZ1bmN0aW9uIGNhbGMtZW0oJHNpemUsICRjb250ZXh0OiAkYmFzZS1mb250LWNvbnRleHQpIHtcbiAgICBAcmV0dXJuICgkc2l6ZSAvICRjb250ZXh0KSAqIDFlbTtcbn1cblxuQG1peGluIGNhbGMtcmVtKCRzaXplLCAkY29udGV4dDogJGJhc2UtZm9udC1jb250ZXh0KSB7XG4gIGZvbnQtc2l6ZTogJHNpemUgKyBweDtcbiAgZm9udC1zaXplOiAoJHNpemUgLyAkY29udGV4dCkgKiAxcmVtO1xufVxuXG4vLy8gQ3JlYXRlIGEgdGV4dC1zaGFkb3dcbkBtaXhpbiBsZXR0ZXJwcmVzcygkc2hhZG93KXtcbiAgICB0ZXh0LXNoYWRvdzogbWl4KGJsYWNrLCAkc2hhZG93LCAxNSUpIDAgMXB4IDA7XG59XG5cbi8vLyBDcmVhdGUgYSBzbWFsbCBiYWRnZSAtIHRleHQgd2l0aCBiYWNrZ3JvdW5kIChNeSBJbmJveCBbMTBdKVxuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vIEBpbmNsdWRlIGJhZGdlKCMwMDAsICNmZmYpO1xuQG1peGluIGJhZGdlKCRiYWNrZ3JvdW5kLCAkY29sb3IsICR3aWR0aDogZmFsc2UsICRoZWlnaHQ6IGZhbHNlKSB7XG4gICAgQGluY2x1ZGUgcm91bmRlZC1jb3JuZXJzKDUwJSk7XG4gICAgQGluY2x1ZGUgbGV0dGVycHJlc3MoJGJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGxpbmVhci1ncmFkaWVudCgkYmFja2dyb3VuZCwgbWl4KGJsYWNrLCAkYmFja2dyb3VuZCwgMjAlKSk7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuXG4gICAgLy9mb250LXNpemU6IDgwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAuNWVtIDAuOGVtO1xuICAgIHBhZGRpbmc6IDNweCA3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuQG1peGluIGJveC1zaGFkb3coICRob3JpeiA6IC41ZW0gLCAkdmVydCA6IC41ZW0gLCAkYmx1ciA6IDBweCAsICRzcHJlYWQgOiAwcHggLCAkY29sb3IgOiAjMDAwMDAwICl7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJGhvcml6ICR2ZXJ0ICRibHVyICRzcHJlYWQgJGNvbG9yO1xuICAtbW96LWJveC1zaGFkb3c6ICRob3JpeiAkdmVydCAkYmx1ciAkc3ByZWFkICRjb2xvcjtcbiAgYm94LXNoYWRvdzogJGhvcml6ICR2ZXJ0ICRibHVyICRzcHJlYWQgJGNvbG9yO1xufVxuXG5AbWl4aW4gZGVidWdtZXNzYWdlKCRtZXNzYWdlLCAkc2l6ZSwgJGNvbG9yOiByZ2JhKDI1NSwyNTUsMCwgMC42KSwgJGNvbG9yX3RleHQ6ICMwMDAwMDAgKXtcbiAgICAmOjphZnRlcntcbiAgICAgICAgY29udGVudDogJG1lc3NhZ2U7IGJhY2tncm91bmQ6ICN7JGNvbG9yfTsgY29sb3I6ICN7JGNvbG9yX3RleHR9O1xuICAgICAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgZm9udC13ZWlnaHQ6IGJvbGQ7IGRpc3BsYXk6IGJsb2NrOyB0ZXh0LWFsaWduOiBjZW50ZXI7IGhlaWdodDogMzBweDsgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDsgcmlnaHQ6IDA7IGxlZnQ6IDA7IGJvdHRvbTogMDsgei1pbmRleDogOTk5O1xuICAgIH1cbn1cbiIsIi8qISBzYW5pdGl6ZS5jc3MgdjQuMS4wIHwgQ0MwIExpY2Vuc2UgfCBnaXRodWIuY29tL2pvbmF0aGFudG5lYWwvc2FuaXRpemUuY3NzICovXG5cbi8qIERpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLCAvKiAxICovXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxubWFpbiwgLyogMiAqL1xubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHsgLyogMSAqL1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuXHRkaXNwbGF5OiBub25lO1xuXHRoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUsIC8qIDEgKi9cbltoaWRkZW5dIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogRWxlbWVudHMgb2YgSFRNTCAoaHR0cHM6Ly93d3cudzMub3JnL1RSL2h0bWw1L3NlbWFudGljcy5odG1sKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgcmVwZWF0aW5nIGJhY2tncm91bmRzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQWRkIGJveCBzaXppbmcgaW5oZXJpdGVuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuKixcbjo6YmVmb3JlLFxuOjphZnRlciB7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IC8qIDEgKi9cblx0Ym94LXNpemluZzogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIEFkZCB0ZXh0IGRlY29yYXRpb24gaW5oZXJpdGFuY2UgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBBZGQgdmVydGljYWwgYWxpZ25tZW50IGluaGVyaXRlbmNlIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbjo6YmVmb3JlLFxuOjphZnRlciB7XG5cdHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDsgLyogMSAqL1xuXHR2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIEFkZCBib3JkZXIgYm94IHNpemluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIEFkZCB0aGUgZGVmYXVsdCBjdXJzb3IgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAzLiBBZGQgYSBmbGF0dGVuZWQgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiA0LiBQcmV2ZW50IGZvbnQgc2l6ZSBhZGp1c3RtZW50cyBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIGFuZCBpT1MuXG4gKi9cblxuaHRtbCB7XG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cblx0Y3Vyc29yOiBkZWZhdWx0OyAvKiAyICovXG5cdGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAzICovXG5cdGxpbmUtaGVpZ2h0OiAxLjU7IC8qIDMgKi9cblx0LW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDQgKi9cblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiA1ICovXG59XG5cbi8qIFNlY3Rpb25zIChodHRwczovL3d3dy53My5vcmcvVFIvaHRtbDUvc2VjdGlvbnMuaHRtbClcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYm9keSB7XG5cdG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemVzIGFuZCBtYXJnaW5zIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluXG4gKiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuXHRmb250LXNpemU6IDJlbTtcblx0bWFyZ2luOiAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50IChodHRwczovL3d3dy53My5vcmcvVFIvaHRtbDUvZ3JvdXBpbmctY29udGVudC5odG1sKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGZvbnQgc2l6aW5nIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuXHRmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGhlaWdodCBpbiBGaXJlZm94LlxuICogMi4gQWRkIHZpc2libGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuXHRoZWlnaHQ6IDA7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGxpc3Qgc3R5bGUgb24gbmF2aWdhdGlvbiBsaXN0cyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5uYXYgb2wsXG5uYXYgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgYSBib3JkZXJlZCB1bmRlcmxpbmUgZWZmZWN0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0ZXh0IGRlY29yYXRpb24gaW4gRmlyZWZveCA0MCsuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuXHRib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyAvKiAxICovXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGNvbG9ycyBpbiBJRSA5LS5cbiAqL1xuXG5tYXJrIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZmYwMDtcblx0Y29sb3I6ICMwMDAwMDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcblx0Zm9udC1zaXplOiA4My4zMzMzJTtcbn1cblxuLyoqXG4gKiBDaGFuZ2UgdGhlIHBvc2l0aW9uaW5nIG9uIHN1cGVyc2NyaXB0IGFuZCBzdWJzY3JpcHQgZWxlbWVudHNcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMS4gQ29ycmVjdCB0aGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuXHRmb250LXNpemU6IDgzLjMzMzMlOyAvKiAxICovXG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcblx0Ym90dG9tOiAtLjI1ZW07XG59XG5cbnN1cCB7XG5cdHRvcDogLS41ZW07XG59XG5cbi8qXG4gKiBSZW1vdmUgdGhlIHRleHQgc2hhZG93IG9uIHRleHQgc2VsZWN0aW9ucyAob3BpbmlvbmF0ZWQpLlxuICogMS4gUmVzdG9yZSB0aGUgY29sb3JpbmcgdW5kb25lIGJ5IGRlZmluaW5nIHRoZSB0ZXh0IHNoYWRvdyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjYjNkNGZjOyAvKiAxICovXG5cdGNvbG9yOiAjMDAwMDAwOyAvKiAxICovXG5cdHRleHQtc2hhZG93OiBub25lO1xufVxuXG46OnNlbGVjdGlvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNiM2Q0ZmM7IC8qIDEgKi9cblx0Y29sb3I6ICMwMDAwMDA7IC8qIDEgKi9cblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnQgKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS9lbWJlZGRlZC1jb250ZW50LTAuaHRtbClcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGFsaWdubWVudCBvbiBtZWRpYSBlbGVtZW50cyBpbiBhbGwgYnJvd2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG5cdGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiBDaGFuZ2UgdGhlIGZpbGwgY29sb3IgdG8gbWF0Y2ggdGhlIHRleHQgY29sb3IgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuc3ZnIHtcblx0ZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogTGlua3MgKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS9saW5rcy5odG1sI2xpbmtzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIGdhcHMgaW4gdW5kZXJsaW5lcyBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuXG5hIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cblx0LXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSB3aGVuIGhvdmVyaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmE6aG92ZXIge1xuXHRvdXRsaW5lLXdpZHRoOiAwO1xufVxuXG4vKiBUYWJ1bGFyIGRhdGEgKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS90YWJ1bGFyLWRhdGEuaHRtbClcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgYm9yZGVyIHNwYWNpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxudGFibGUge1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRib3JkZXItc3BhY2luZzogMDtcbn1cblxuLyogdHJhbnNmb3JtLXN0eWxlOiAgKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS9mb3Jtcy5odG1sKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGRlZmF1bHQgc3R5bGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDMuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cblx0Ym9yZGVyLXN0eWxlOiBub25lOyAvKiAxICovXG5cdGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG5cdGZvbnQtc2l6ZTogMWVtOyAvKiAxICovXG5cdG1hcmdpbjogMDsgLyogMyAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gQ29ycmVjdCB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cblx0b3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IHRoZSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuOjotbW96LWZvY3VzLWlubmVyIHtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG46LW1vei1mb2N1c3Jpbmcge1xuXHRvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5maWVsZHNldCB7XG5cdGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG5cdG1hcmdpbjogMCAycHg7XG5cdHBhZGRpbmc6IC4zNWVtIC42MjVlbSAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcblx0ZGlzcGxheTogdGFibGU7IC8qIDEgKi9cblx0bWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG5cdHBhZGRpbmc6IDA7IC8qIDIgKi9cblx0d2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICogMi4gQ2hhbmdlIHRoZSByZXNpemUgZGlyZWN0aW9uIG9uIHRleHRhcmVhcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG50ZXh0YXJlYSB7XG5cdG92ZXJmbG93OiBhdXRvOyAvKiAxICovXG5cdHJlc2l6ZTogdmVydGljYWw7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcblx0cGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb24gaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuXHQtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgZm9yIE9TIFguXG4gKi9cblxuOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHRleHQgc3R5bGUgb24gcGxhY2Vob2xkZXJzIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRjb2xvcjogaW5oZXJpdDtcblx0b3BhY2l0eTogLjU0O1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG5cdGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogV0FJLUFSSUEgKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS9kb20uaHRtbCN3YWktYXJpYSlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ2hhbmdlIHRoZSBjdXJzb3Igb24gYnVzeSBlbGVtZW50cyAob3BpbmlvbmF0ZWQpLlxuICovXG5cblthcmlhLWJ1c3k9XCJ0cnVlXCJdIHtcblx0Y3Vyc29yOiBwcm9ncmVzcztcbn1cblxuLypcbiAqIENoYW5nZSB0aGUgY3Vyc29yIG9uIGNvbnRyb2wgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5bYXJpYS1jb250cm9sc10ge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBvbiBkaXNhYmxlZCwgbm90LWVkaXRhYmxlLCBvciBvdGhlcndpc2VcbiAqIGlub3BlcmFibGUgZWxlbWVudHMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5bYXJpYS1kaXNhYmxlZF0ge1xuXHRjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qIFVzZXIgaW50ZXJhY3Rpb24gKGh0dHBzOi8vd3d3LnczLm9yZy9UUi9odG1sNS9lZGl0aW5nLmh0bWwpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlIHRoZSB0YXBwaW5nIGRlbGF5IG9uIGNsaWNrYWJsZSBlbGVtZW50cyAob3BpbmlvbmF0ZWQpLlxuICogMS4gUmVtb3ZlIHRoZSB0YXBwaW5nIGRlbGF5IGluIElFIDEwLlxuICovXG5cbmEsXG5hcmVhLFxuYnV0dG9uLFxuaW5wdXQsXG5sYWJlbCxcbnNlbGVjdCxcbnRleHRhcmVhLFxuW3RhYmluZGV4XSB7XG5cdC1tcy10b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgLyogMSAqL1xuXHR0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuLypcbiAqIENoYW5nZSB0aGUgZGlzcGxheSBvbiB2aXN1YWxseSBoaWRkZW4gYWNjZXNzaWJsZSBlbGVtZW50cyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbltoaWRkZW5dW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl0ge1xuXHRjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuXHRkaXNwbGF5OiBpbmhlcml0O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbltoaWRkZW5dW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl06Zm9jdXMge1xuXHRjbGlwOiBhdXRvO1xufSIsImJvZHkge1xuXHRcblx0JjpiZWZvcmUge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhsZy1vbmx5KSB7XG5cdFx0XHRjb250ZW50OiBcImRlc2t0b3AgI3skY29udGFpbmVyLXdpZHRoLXhsZ31cIjtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRsZy1vbmx5KSB7XG5cdFx0XHRjb250ZW50OiBcImRlc2t0b3AgI3skY29udGFpbmVyLXdpZHRoLWxnfVwiO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1kLW9ubHkpIHtcblx0XHRcdGNvbnRlbnQ6IFwiZGVza3RvcCAjeyRjb250YWluZXItd2lkdGgtbWR9XCI7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkc20tb25seSkge1xuXHRcdFx0Y29udGVudDogXCJ0YWJsZXQgI3skY29udGFpbmVyLXdpZHRoLXNtfVwiO1xuXHRcdH1cblxuXHRcdGNvbnRlbnQ6IFwic21hcnRwaG9uZSAjeyRjb250YWluZXItd2lkdGgteHN9XCI7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufSIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRGVmYXVsdCBWYXJpYWJsZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJEJyZWFrcG9pbnQtU2V0dGluZ3M6IChcbiAgJ2RlZmF1bHQgbWVkaWEnOiBhbGwsXG4gICdkZWZhdWx0IGZlYXR1cmUnOiBtaW4td2lkdGgsXG4gICdkZWZhdWx0IHBhaXInOiB3aWR0aCxcblxuICAnZm9yY2UgYWxsIG1lZGlhIHR5cGUnOiBmYWxzZSxcbiAgJ3RvIGVtcyc6IGZhbHNlLFxuICAndHJhbnNmb3JtIHJlc29sdXRpb25zJzogdHJ1ZSxcblxuICAnbm8gcXVlcmllcyc6IGZhbHNlLFxuICAnbm8gcXVlcnkgZmFsbGJhY2tzJzogZmFsc2UsXG5cbiAgJ2Jhc2UgZm9udCBzaXplJzogMTZweCxcblxuICAnbGVnYWN5IHN5bnRheCc6IGZhbHNlXG4pO1xuXG4kYnJlYWtwb2ludDogKCkgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0c1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwiYnJlYWtwb2ludC9zZXR0aW5nc1wiO1xuQGltcG9ydCAnYnJlYWtwb2ludC9jb250ZXh0JztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvaGVscGVycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L3BhcnNlcnMnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9uby1xdWVyeSc7XG5cbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcmVzcG9uZC10byc7XG5cbkBpbXBvcnQgXCJicmVha3BvaW50L2xlZ2FjeS1zZXR0aW5nc1wiO1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEJyZWFrcG9pbnQgTWl4aW5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5AbWl4aW4gYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgbGVnYWN5LXNldHRpbmdzLXdhcm5pbmc7XG5cbiAgLy8gUmVzZXQgY29udGV4dHNcbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG5cbiAgJGJyZWFrcG9pbnQ6IGJyZWFrcG9pbnQoJHF1ZXJ5LCBmYWxzZSk7XG5cbiAgJHF1ZXJ5LXN0cmluZzogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5Jyk7XG4gICRxdWVyeS1mYWxsYmFjazogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2ZhbGxiYWNrJyk7XG5cbiAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLWdldCgkYnJlYWtwb2ludCwgJ2NvbnRleHQgaG9sZGVyJykgIWdsb2JhbDtcbiAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogbWFwLWdldCgkYnJlYWtwb2ludCwgJ3F1ZXJ5IGNvdW50JykgIWdsb2JhbDtcblxuICAvLyBBbGxvdyBmb3IgYW4gYXMtbmVlZGVkIG92ZXJyaWRlIG9yIHVzYWdlIG9mIG5vIHF1ZXJ5IGZhbGxiYWNrLlxuICBAaWYgJG5vLXF1ZXJ5ICE9IGZhbHNlIHtcbiAgICAkcXVlcnktZmFsbGJhY2s6ICRuby1xdWVyeTtcbiAgfVxuXG4gIEBpZiAkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2Uge1xuICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCduby1xdWVyeScsICRxdWVyeS1mYWxsYmFjayk7XG4gIH1cblxuICAvLyBQcmludCBPdXQgUXVlcnkgU3RyaW5nXG4gIEBpZiBub3QgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJpZXMnKSB7XG4gICAgQG1lZGlhICN7JHF1ZXJ5LXN0cmluZ30ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSAhPSBmYWxzZSBvciBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpID09IHRydWUge1xuXG4gICAgJHR5cGU6IHR5cGUtb2YoYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpKTtcbiAgICAkcHJpbnQ6IGZhbHNlO1xuXG4gICAgQGlmICgkdHlwZSA9PSAnYm9vbCcpIHtcbiAgICAgICRwcmludDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKCR0eXBlID09ICdzdHJpbmcnKSB7XG4gICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyeSBmYWxsYmFja3MnKSB7XG4gICAgICAgICRwcmludDogdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgKCR0eXBlID09ICdsaXN0Jykge1xuICAgICAgQGVhY2ggJHdyYXBwZXIgaW4gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayA9PSAkd3JhcHBlciB7XG4gICAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gV3JpdGUgRmFsbGJhY2tcbiAgICBAaWYgKCRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSkgYW5kICgkcHJpbnQgPT0gdHJ1ZSkge1xuICAgICAgJHR5cGUtZmFsbGJhY2s6IHR5cGUtb2YoJHF1ZXJ5LWZhbGxiYWNrKTtcblxuICAgICAgQGlmICgkdHlwZS1mYWxsYmFjayAhPSAnYm9vbCcpIHtcbiAgICAgICAgI3skcXVlcnktZmFsbGJhY2t9ICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cygpO1xufVxuXG5cbkBtaXhpbiBtcSgkcXVlcnksICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkcXVlcnksICRuby1xdWVyeSkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCJodG1sIHtcblx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG59XG5cbmJvZHkge1xuXHRmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG5cdGxpbmUtaGVpZ2h0OiAkYmFzZS1saW5lLWhlaWdodDtcbn1cblxuaDEge1xuXHRAaW5jbHVkZSBjYWxjLXJlbSgkYmFzZS1mb250LWNvbnRleHQgKiAyLjUpO1xufVxuXG5oMiB7XG5cdEBpbmNsdWRlIGNhbGMtcmVtKCRiYXNlLWZvbnQtY29udGV4dCAqIDIpO1xufVxuXG5oMyB7XG5cdEBpbmNsdWRlIGNhbGMtcmVtKCRiYXNlLWZvbnQtY29udGV4dCAqIDEuNzUpO1xufVxuXG5oNCB7XG5cdEBpbmNsdWRlIGNhbGMtcmVtKCRiYXNlLWZvbnQtY29udGV4dCAqIDEuNSk7XG59XG5cbmg1IHtcblx0QGluY2x1ZGUgY2FsYy1yZW0oJGJhc2UtZm9udC1jb250ZXh0ICogMS4yNSk7XG59XG5cbmg2IHtcblx0QGluY2x1ZGUgY2FsYy1yZW0oJGJhc2UtZm9udC1jb250ZXh0ICogMSk7XG59XG4iLCIkZGVidWctbW9kZTogZmFsc2UgIWRlZmF1bHQ7XG5cbiRmb250cy1kaXI6ICcuLi9mb250cycgIWRlZmF1bHQ7XG4kaW1hZ2UtZGlyOiAnLi4vaW1hZ2VzJyAhZGVmYXVsdDtcblxuJGNvbnRhaW5lci13aWR0aC14czogNzY4O1xuJGNvbnRhaW5lci13aWR0aC1zbTogNzY4O1xuJGNvbnRhaW5lci13aWR0aC1tZDogOTYwO1xuJGNvbnRhaW5lci13aWR0aC1sZzogMTIwMDtcbiRjb250YWluZXItd2lkdGgteGxnOiAxNjAwO1xuXG4kc3VzeTogKFxuXHRjb2x1bW5zOiAyNCxcblx0Y29udGFpbmVyOiA5MCUsXG5cdGdsb2JhbC1ib3gtc2l6aW5nOiBib3JkZXItYm94XG4pO1xuXG4kbGlnaHQ6IDIwMCAhZGVmYXVsdDtcbiRyZWd1bGFyOiA0MDAgIWRlZmF1bHQ7XG4kbWVkaXVtOiA1MDAgIWRlZmF1bHQ7XG4kYm9sZDogNzAwICFkZWZhdWx0O1xuJGJsYWNrOiA4MDAgIWRlZmF1bHQ7XG5cbiRiYXNlLWZvbnQtY29udGV4dDogMTYgIWRlZmF1bHQ7XG4kYmFzZS1mb250LXNpemU6ICRiYXNlLWZvbnQtY29udGV4dCAqIDFweDtcbiRiYXNlLWxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiRmb250LXNjcmlwdDogc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1saWdodDogc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWJsYWNrOiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtbWVkaXVtOiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtYm9sZDogc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGJhc2UtZm9udC1mYW1pbHk6ICRmb250LW1lZGl1bSAhZGVmYXVsdDtcbiRiYXNlLWZvbnQtd2VpZ2h0OiAkcmVndWxhciAhZGVmYXVsdDtcblxuXG4kc2NoZW1lLWNvbG9yLWtleTogJ2Jhc2UnICFkZWZhdWx0O1xuJHNjaGVtZS1jb2xvcnM6IChcblx0J3ByaW1hcnknOiAoXG5cdFx0J2Jhc2UnOiAjOGUzMzI5LFxuXHRcdCdsaWdodCc6ICNkOTUzNGYsXG5cdFx0J2RhcmsnOiAjYzkzMDJjXG5cdCksXG5cblx0J2FjY2VudCc6IChcblx0XHQnYmFzZSc6ICNkOTgzMjgsXG5cdFx0J2xpZ2h0JzogI2RkOGYzZCxcblx0XHQnZGFyayc6ICNjNTc2MjNcblx0KSxcblxuXHQnc2Vjb25kYXJ5JzogKFxuXHRcdCdiYXNlJzogIzVhMTMyMSxcblx0XHQnbGlnaHQnOiAjN2IxYTJkLFxuXHRcdCdkYXJrJzogIzUxMTExZVxuXHQpLFxuXG5cdCdmb3JlZ3JvdW5kJzogKFxuXHRcdCdiYXNlJzogIzE5MTkxOSxcblx0XHQnbGlnaHQnOiAjMzMzMzMzLFxuXHRcdCdkYXJrJzogIzExMTExMSxcblx0XHQnZGFya2VyJzogIzAwMDAwMFxuXHQpLFxuXG5cdCdiYWNrZ3JvdW5kJzogKFxuXHRcdCdiYXNlJzogI2U5ZTllOSxcblx0XHQnbGlnaHQnOiAjZmZmZmZmLFxuXHRcdCdkYXJrJzogI2RkZGRkZFxuXHQpXG4pICFkZWZhdWx0O1xuXG5cbiRzY2hlbWUtb3BhY2l0eTogKFxuICAnbGlnaHQnOiAwLjgsXG4gICdtZWRpdW0nOiAwLjUsXG4gICdkYXJrJzogMC4yXG4pICFkZWZhdWx0O1xuIiwiLmwtaGVhZGVye1xuXHR3aWR0aDoxMDAlO1xuXHRiYWNrZ3JvdW5kOiNmZmY7XG5cdHotaW5kZXg6OTk5O1xuXHRib3JkZXItYm90dG9tOjFweCBzb2xpZCBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCAnbGluZScpO1xuXG5cdHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBlYXNlO1xuIFx0Ym94LXNoYWRvdzogbm9uZTtcblxuIFx0Ji5zdGlja3kge1xuXHRcdHBvc2l0aW9uOmZpeGVkO1xuIFx0XHRib3gtc2hhZG93OiAwIDI1cHggNDBweCAtMjBweCByZ2JhKHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdncmV5JyksIDAuMTUpO1xuIFx0fVxuXG4gXHRAaW5jbHVkZSBicmVha3BvaW50KCR4cy1vbmx5KSB7XG4gXHRcdHBvc2l0aW9uOiBmaXhlZDtcbiBcdH1cbn0iLCIubC1wYWdle1xuXHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0Ly9wYWRkaW5nLXRvcDogMTA2cHg7XG5cdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KCR4cy1vbmx5KSB7XG5cdFx0cGFkZGluZy10b3A6IDc1cHg7XG5cdH1cbn0iLCIuYy1tZW51LXByaW1hcnkge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Ji0tbW9iaWxlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHRcdC5sb2dvIGltZ3tcblx0XHRcdG1heC1oZWlnaHQ6NDBweDtcblx0XHR9XG5cdFx0Lm1lbnUtbW9iaWxlLWN0YXtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTUpO1xuXHRcdFx0c3Ryb25ne1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRiYWNrZ3JvdW5kIDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2Jhc2UnKTtcblx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHRiYWNrZ3JvdW5kIDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2RhcmsnKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRhe1xuXHRcdFx0XHRcdGNvbG9yOndoaXRlO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDVweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdFx0KyBzdHJvbmd7XG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIHdoaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Jl9fd3JhcHBlciB7XG5cdFx0Zm9udC1zaXplOiAwO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhsZy1vbmx5KSB7XG5cdFx0XHRwYWRkaW5nOiAwIHNwYW4oMiBpbnNpZGUgbm8tZ3V0dGVycyk7XG5cdFx0XHRwYWRkaW5nLXRvcDoyNXB4O1xuXHRcdFx0cGFkZGluZy1ib3R0b206MjBweDtcblx0XHRcdG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHNtLW9ubHksICRtZC1vbmx5LCAkbGctb25seSkge1xuXHRcdFx0bWF4LXdpZHRoOiA5MCUhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZzogMjVweCAwIDIwcHg7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0cGFkZGluZzogMTVweCAwO1xuXHRcdFx0bWF4LXdpZHRoOiA5MCU7XG5cdFx0XHRtYXJnaW46IDAgYXV0byBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdC5sb2dvIHtcblx0XHR3aWR0aDogc3BhbigzIGluc2lkZSBuby1ndXR0ZXJzKTtcblx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdHotaW5kZXg6IDk5O1xuICAgIFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRzbS1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0XHR3aWR0aDogMjAlO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdH1cblx0fVxuXG5cdC5yaWdodC1tZW51IHtcblx0XHRAaW5jbHVkZSBjYWxjLXJlbSgkYmFzZS1mb250LWNvbnRleHQpO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdGZsb2F0OnJpZ2h0O1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdG1heC13aWR0aDogc3Bhbig1IGluc2lkZSBuby1ndXR0ZXJzKTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRtZC1vbmx5KSB7XG5cdFx0XHR3aWR0aDogODUlO1xuICAgXHRcdFx0bWF4LXdpZHRoOiBub25lO1xuICAgXHRcdFx0bGVmdDogMDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHNtLW9ubHkpIHtcblx0XHRcdHdpZHRoOiA4MCU7XG4gICBcdFx0XHRtYXgtd2lkdGg6IG5vbmU7XG4gICBcdFx0XHRsZWZ0OiAwO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1heC13aWR0aDogbm9uZTtcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdGNsZWFyOiBib3RoO1xuXHRcdH1cblxuXHRcdC5oaWdobGlnaHQge1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkYmxhY2s7XG5cdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxMik7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQmOmFmdGVye1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6NXB4O1xuXHRcdFx0XHRjb250ZW50OiBcIlxcZjEwNVwiO1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHQgICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcblx0XHRcdCAgICBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHQgICAgICAgIHRvcDogNTAlO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dWwge1xuXHRcdFx0Y29sb3I6IHNjaGVtZS1jb2xvcignbGluaycsICdtZW51Jyk7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nLXRvcDogMTBweDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJHNtLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdFx0cGFkZGluZzogMDsgbWFyZ2luOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwOyBsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMjAwJTsgaGVpZ2h0OiAxcHg7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdsaW5lJyk7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJHNtLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGxpIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRAaW5jbHVkZSBsaW5rcyAoXG5cdFx0XHRcdFx0JGxpbms6IHNjaGVtZS1jb2xvcignbGluaycsICdtZW51JyksXG5cdFx0XHRcdFx0JHZpc2l0OiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbWVudScpLFxuXHRcdFx0XHRcdCRob3Zlcjogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ21lbnUtaG92ZXInKSxcblx0XHRcdFx0XHQkYWN0aXZlOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbWVudS1ob3ZlcicpXG5cdFx0XHRcdCk7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDoxNXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5oYW1idXJnZXItbWVudSB7XG5cdFx0JGJhci13aWR0aDogMzVweDtcblx0XHQkYmFyLWhlaWdodDogNXB4O1xuXHRcdCRiYXItc3BhY2luZzogMTBweDtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdHdpZHRoOiA1MCU7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHNtLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdHdpZHRoOiAyMCU7XG5cdFx0XHRmbG9hdDpyaWdodDtcblx0XHR9XG5cblx0XHQmX193cmFwcGVyIHtcblx0XHRcdHdpZHRoOiAkYmFyLXdpZHRoICsgMTY7XG5cdFx0XHRoZWlnaHQ6ICgkYmFyLWhlaWdodCArICRiYXItc3BhY2luZyoyKSArIDIwO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogN3B4O1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0YmFja2dyb3VuZDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XG5cdFx0XHRtYXJnaW46IGF1dG87XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0fVxuXG5cdFx0LmJhciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMG1zIDMwMG1zO1xuXHRcdFx0d2lkdGg6ICRiYXItd2lkdGg7IGhlaWdodDogJGJhci1oZWlnaHQ7XG5cdFx0XHR0b3A6IDUwJTsgbGVmdDogNTAlO1xuXG5cdFx0XHQmOmFmdGVyLCAmOmJlZm9yZSB7XG5cdFx0XHRcdHdpZHRoOiAkYmFyLXdpZHRoO1xuXHRcdFx0XHRoZWlnaHQ6ICRiYXItaGVpZ2h0O1xuXG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0Ym90dG9tOiAkYmFyLXNwYWNpbmc7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG5cdFx0XHRcdHRyYW5zaXRpb246IGJvdHRvbSAzMDBtcyAzMDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSksIHRyYW5zZm9ybSAzMDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG5cdFx0XHR9XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHR0b3A6ICRiYXItc3BhY2luZztcblx0XHRcdFx0dHJhbnNpdGlvbjogdG9wIDMwMG1zIDMwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKSwgdHJhbnNmb3JtIDMwMG1zIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLmFuaW1hdGUge1xuXHRcdFx0LmJhciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG5cblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiB0b3AgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpLCB0cmFuc2Zvcm0gMzAwbXMgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjMsIDEsIDAuMzIsIDEpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IGJvdHRvbSAzMDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSksIHRyYW5zZm9ybSAzMDBtcyAzMDBtcyBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdH1cblx0fVxuXHQjbWVudS1wcmltYXJ5LW1vYmlsZXtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblx0bmF2IHtcblx0XHR3aWR0aDogc3BhbigxNiBpbnNpZGUgbm8tZ3V0dGVycyk7XG5cdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdEBpbmNsdWRlIGNhbGMtcmVtKDE1KTtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRsZy1vbmx5KSB7XG5cdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxMyk7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5LCRzbS1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdFx0XG5cdFx0dWwge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0bWFyZ2luOiAwOyBwYWRkaW5nOiAwO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRzbS1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0XHRcdGRpc3BsYXk6bm9uZTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRsZy1vbmx5LCR4bGctb25seSkge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0XHRwYWRkaW5nOiAwIHNwYW4oMiBpbnNpZGUgbm8tZ3V0dGVycyk7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0XHRyaWdodDogMHB4O1xuXHRcdFx0XHR6LWluZGV4OiA5OTk7XG5cdFx0XHRcdC8vbWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0XHRcdHdpZHRoOiAzNSU7XG5cdFx0XHR9XG5cdFx0XHQmLm1lbnUtbW9iaWxlLWV4dHJhIGxpIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2Jhc2UnKTtcblx0XHRcdFx0YXtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnNlcHtcblx0XHRcdFx0XHRjb2xvcjp3aGl0ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGxpIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdEBpbmNsdWRlIGxpbmtzIChcblx0XHRcdFx0JGxpbms6IHNjaGVtZS1jb2xvcignbGluaycsICdtZW51JyksXG5cdFx0XHRcdCR2aXNpdDogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ21lbnUnKSxcblx0XHRcdFx0JGhvdmVyOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbWVudS1ob3ZlcicpLFxuXHRcdFx0XHQkYWN0aXZlOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbWVudS1ob3ZlcicpXG5cdFx0XHQpO1xuXG5cdFx0XHQvL21hcmdpbi1yaWdodDozMHB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyJTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHQvL2xpbmUtaGVpZ2h0OiAwcHg7XG5cblx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1yZWd1bGFyO1xuXHRcdFx0YTpob3Zlcisuc3ViLW1lbnUge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkbGctb25seSwkeGxnLW9ubHkpIHtcblx0XHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCYuY3VycmVudC1tZW51LWl0ZW0sJi5jdXJyZW50LXBhZ2UtcGFyZW50LCYuY3VycmVudC1tZW51LXBhcmVudHtcblx0XHRcdFx0Jj5he1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5LCRzbS1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kIDogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ21lbnUnKTtcblx0XHRcdFx0XHRcdC8vY29sb3IgOiBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCAnbGlnaHQnKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCYuY3VycmVudC1tZW51LWl0ZW0sJi5jdXJyZW50LXBhZ2UtcGFyZW50LCYuY3VycmVudC1tZW51LXBhcmVudCwgJjpob3ZlciAge1xuXHRcdFx0XHQmPmEsJj5hOnZpc2l0ZWQge1xuXHRcdFx0XHRcdGNvbG9yOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbWVudS1ob3ZlcicpO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OjkwMDtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0XHRcdFx0Ly9iYWNrZ3JvdW5kIDogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ21lbnUnKTtcblx0XHRcdFx0XHRcdGNvbG9yIDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2xpZ2h0Jyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdHVsIHtcblx0XHRcdFx0XHQuY3VycmVudC1tZW51LWl0ZW0ge1xuXHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdHNwYW46OmFmdGVye1xuXHRcdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRcdCAgICBiYWNrZ3JvdW5kOiBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXHRcdFx0XHRcdFx0XHQgICAgaGVpZ2h0OiAycHg7XG5cdFx0XHRcdFx0XHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0ICAgIHRvcDogMTAwJTtcblx0XHRcdFx0XHRcdFx0ICAgIGxlZnQ6IDUwJTtcblx0XHRcdFx0XHRcdFx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2xpbmUnKTtcblxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBzY2hlbWUtY29sb3IoJ3ByaW1hcnknKTtcblx0XHRcdFx0XHRwYWRkaW5nOiAxM3B4IDUlO1xuXHRcdFx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0XHRcdCY6dmlzaXRlZCB7XG5cdFx0XHRcdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdkYXJrJyk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0XHQuc3ViLW1lbnUge1xuXHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFx0Ly9vcGFjaXR5OiAwO1xuXHRcdFx0dHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwLjVzLCBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0dG9wOiAxMDAlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR6LWluZGV4OiA5MDE7XG5cblx0XHRcdC5zZXAge1xuXHRcdFx0XHRwYWRkaW5nOiAwIDE1cHg7XG5cdFx0XHR9XG5cblx0XHRcdHVsIHtcblx0XHRcdFx0YmFja2dyb3VuZDpzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCAnYmFzZScpO1xuXHRcdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHBhZGRpbmc6IDE4cHggMCAyM3B4IDA7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cblxuXHRcdCAgICBsaXtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXG5cdFx0ICAgIFx0QGluY2x1ZGUgbGlua3MgKFxuXHRcdCAgICBcdFx0JGxpbms6IHNjaGVtZS1jb2xvcignbGluaycsICdsaWdodCcpLFxuXHRcdFx0ICAgIFx0JHZpc2l0OiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbGlnaHQnKSxcblx0XHRcdCAgICBcdCRob3Zlcjogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ2xpZ2h0JyksXG5cdFx0XHQgICAgXHQkYWN0aXZlOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbGlnaHQnKVxuXHRcdFx0ICAgICk7XG5cblx0XHQgICAgXHRhIHtcblx0XHQgICAgXHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdCAgICBcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0ICAgIFx0XHRzcGFuIHtcblx0XHQgICAgXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdCAgICBcdFx0XHRwYWRkaW5nOiAzcHggMDtcblx0XHQgICAgXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0ICAgIFx0XHR9XG5cblx0XHQgICAgXHRcdCY6aG92ZXIgc3BhbiB7XG5cblx0XHRcdCAgICBcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHQgICAgYmFja2dyb3VuZDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnbGlnaHQnKTtcblx0XHRcdFx0XHRcdCAgICBoZWlnaHQ6IDJweDtcblx0XHRcdFx0XHRcdCAgICB3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHQgICAgdG9wOiAxMDAlO1xuXHRcdFx0XHRcdFx0ICAgIGxlZnQ6IDUwJTtcblx0XHRcdFx0XHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHQgICAgXHR9XG5cdFx0ICAgIFx0fVxuXG5cdFx0ICAgIFx0JjpsYXN0LWNoaWxke1xuXHRcdCAgICBcdFx0LnNlcHtcblx0XHQgICAgXHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdCAgICBcdFx0fVxuXG5cdFx0XHRcdH1cblxuXHRcdCAgICBcdCY6aG92ZXJ7XG5cdFx0ICAgIFx0XHRwYWRkaW5nLWJvdHRvbTogMHB4O1xuXHRcdCAgICBcdH1cblx0XHQgICAgfVxuXG5cdFx0fVxuXG5cdFx0Lm1lbnUtaXRlbS1oYXMtY2hpbGRyZW57XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcblx0XHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRcblx0XHRcdH1cblxuXHRcdFx0Jj5hIHtcblx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiA1cHg7XG5cdFx0XHRcdFx0Y29udGVudDogXCJcXGYxMDdcIjtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdCAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuXG5cdFx0XHRcdCAgICBAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0XHQgICAgXHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHQgICAgfVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cblx0fVxufSIsIi8vIFNwYW4gU3ludGF4XG4vLyA9PT09PT09PT09PVxuXG4vLyBTcGFuIFttaXhpbl1cbi8vIC0tLS0tLS0tLS0tLVxuLy8gU2V0IGEgc3Bhbm5pbmcgZWxlbWVudCB1c2luZyBzaG9ydGhhbmQgc3ludGF4LlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBtaXhpbiBzcGFuKFxuICAkc3BhblxuKSB7XG4gICRpbnNwZWN0OiAkc3BhbjtcbiAgJHNwYW46IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkb3V0cHV0OiBzcGFuLW1hdGgoJHNwYW4pO1xuICAkbmVzdGluZzogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkY2xlYXI6IHN1c3ktZ2V0KGNsZWFyLCAkc3Bhbik7XG5cbiAgJGJveDogc3VzeS1nZXQoYm94LXNpemluZywgJHNwYW4pO1xuICAkY29udGVudC1ib3g6IGlmKHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSAhPSAnYm9yZGVyLWJveCcsIHRydWUsIGZhbHNlKTtcbiAgJGJveDogJGJveCBvciBpZihpcy1pbnNpZGUoJHNwYW4pIGFuZCAkY29udGVudC1ib3gsIGJvcmRlci1ib3gsIG51bGwpO1xuXG4gIEBpZiAkY2xlYXIgPT0gYnJlYWsge1xuICAgIEBpbmNsdWRlIGJyZWFrO1xuICB9IEBlbHNlIGlmICRjbGVhciA9PSBub2JyZWFrIHtcbiAgICBAaW5jbHVkZSBub2JyZWFrO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KHNwYW4sICRpbnNwZWN0KTtcbiAgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkYm94KSk7XG4gIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gIEBpZiB2YWxpZC1jb2x1bW5zKCRuZXN0aW5nLCBzaWxlbnQpIHtcbiAgICBAaW5jbHVkZSBuZXN0ZWQoJHNwYW4pIHsgQGNvbnRlbnQ7IH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gU3BhbiBbZnVuY3Rpb25dXG4vLyAtLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgd2lkdGggb2YgYSBzcGFuLlxuLy8gLSAkc3BhbiAgOiA8c3Bhbj5cbkBmdW5jdGlvbiBzcGFuKFxuICAkc3BhblxuKSB7XG4gIEByZXR1cm4gZ2V0LXNwYW4td2lkdGgoJHNwYW4pO1xufVxuXG4vLyBTcGFuIE1hdGhcbi8vIC0tLS0tLS0tLVxuLy8gR2V0IGFsbCB0aGUgc3BhbiByZXN1bHRzLlxuLy8gLSAkc3BhbjogPG1hcD5cbkBmdW5jdGlvbiBzcGFuLW1hdGgoXG4gICRzcGFuXG4pIHtcbiAgJG5lc3QgICAgICAgICAgICAgOiBpZihzdXN5LWdldChyb2xlLCAkc3BhbikgPT0gbmVzdCwgdHJ1ZSwgZmFsc2UpO1xuICAkc3BsaXQtbmVzdCAgICAgICA6IGlmKGlzLXNwbGl0KCRzcGFuKSBhbmQgJG5lc3QsIHRydWUsIGZhbHNlKTtcbiAgJGVkZ2UgICAgICAgICAgICAgOiBnZXQtZWRnZSgkc3Bhbik7XG4gICRsb2NhdGlvbiAgICAgICAgIDogZ2V0LWxvY2F0aW9uKCRzcGFuKTtcblxuICAkZmxvYXQgICAgICAgICAgICA6IGZyb207XG4gICRwYWRkaW5nLWJlZm9yZSAgIDogbnVsbDtcbiAgJHBhZGRpbmctYWZ0ZXIgICAgOiBudWxsO1xuICAkbWFyZ2luLWJlZm9yZSAgICA6IG51bGw7XG4gICRtYXJnaW4tYWZ0ZXIgICAgIDogbnVsbDtcblxuICAvLyBjYWxjdWxhdGUgd2lkdGhzXG4gICRzcHJlYWQ6IGluZGV4KG1hcC12YWx1ZXMoJHNwYW4pLCBzcHJlYWQpO1xuICAkc3BhbjogaWYoJHNwbGl0LW5lc3QgYW5kIG5vdCgkc3ByZWFkKSwgbWFwLW1lcmdlKCRzcGFuLCAoc3ByZWFkOiB3aWRlKSksICRzcGFuKTtcbiAgJHdpZHRoOiBnZXQtc3Bhbi13aWR0aCgkc3Bhbik7XG4gICRndXR0ZXJzOiBnZXQtZ3V0dGVycygkc3Bhbik7XG5cbiAgLy8gYXBwbHkgZ3V0dGVyc1xuICBAaWYgaXMtaW5zaWRlKCRzcGFuKSB7XG4gICAgQGlmIG5vdChzdXN5LWdldChyb2xlLCAkc3BhbikpIHtcbiAgICAgICRwYWRkaW5nLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKTtcbiAgICAgICRwYWRkaW5nLWFmdGVyOiBtYXAtZ2V0KCRndXR0ZXJzLCBhZnRlcik7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAaWYgbm90KCRzcGxpdC1uZXN0KSB7XG4gICAgICAkbWFyZ2luLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKTtcbiAgICAgICRtYXJnaW4tYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBzcGVjaWFsIG1hcmdpbiBoYW5kbGluZ1xuICBAaWYgc3VzeS1nZXQob3V0cHV0LCAkc3BhbikgPT0gaXNvbGF0ZSBhbmQgJGxvY2F0aW9uIHtcbiAgICAkbWFyZ2luLWJlZm9yZTogZ2V0LWlzb2xhdGlvbigkc3Bhbik7XG4gICAgJG1hcmdpbi1hZnRlcjogLTEwMCU7XG4gIH0gQGVsc2UgaWYgJGVkZ2Uge1xuICAgICRpcy1zcGxpdDogaXMtc3BsaXQoJHNwYW4pO1xuICAgICRwb3M6IHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJHNwYW4pO1xuXG4gICAgQGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGZsb2F0OiBzdXN5LWdldChsYXN0LWZsb3csICRzcGFuKTtcbiAgICB9XG5cbiAgICBAaWYgbm90KCRpcy1zcGxpdCkge1xuICAgICAgQGlmICRlZGdlID09IGZ1bGwgb3IgKCRlZGdlID09IGZpcnN0IGFuZCAkcG9zID09IGJlZm9yZSkge1xuICAgICAgICAkbWFyZ2luLWJlZm9yZTogMDtcbiAgICAgIH1cbiAgICAgIEBpZiAkZWRnZSA9PSBmdWxsIG9yICgkZWRnZSA9PSBsYXN0IGFuZCAkcG9zID09IGFmdGVyKSB7XG4gICAgICAgICRtYXJnaW4tYWZ0ZXI6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBAcmV0dXJuIChcbiAgICB3aWR0aCAgICAgICAgICAgOiAkd2lkdGgsXG4gICAgZmxvYXQgICAgICAgICAgIDogJGZsb2F0LFxuICAgIG1hcmdpbi1iZWZvcmUgICA6ICRtYXJnaW4tYmVmb3JlLFxuICAgIG1hcmdpbi1hZnRlciAgICA6ICRtYXJnaW4tYWZ0ZXIsXG4gICAgcGFkZGluZy1iZWZvcmUgIDogJHBhZGRpbmctYmVmb3JlLFxuICAgIHBhZGRpbmctYWZ0ZXIgICA6ICRwYWRkaW5nLWFmdGVyLFxuICAgIGZsb3cgICAgICAgICAgICA6IHN1c3ktZ2V0KGZsb3csICRzcGFuKSxcbiAgKTtcbn1cblxuLy8gR2V0IFNwYW4gV2lkdGhcbi8vIC0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gc3BhbiB3aWR0aC5cbi8vIC0gJHNwYW46IDxtYXA+XG5AZnVuY3Rpb24gZ2V0LXNwYW4td2lkdGgoXG4gICRzcGFuXG4pIHtcbiAgJHNwYW4gICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG5cbiAgJG4gICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkbG9jYXRpb24gOiBnZXQtbG9jYXRpb24oJHNwYW4pO1xuICAkY29sdW1ucyAgOiBzdXN5LWdldChjb2x1bW5zLCAkc3Bhbik7XG4gICRndXR0ZXJzICA6IHN1c3ktZ2V0KGd1dHRlcnMsICRzcGFuKTtcbiAgJHNwcmVhZCAgIDogc3VzeS1nZXQoc3ByZWFkLCAkc3Bhbik7XG5cbiAgJGNvbnRleHQgIDogbnVsbDtcbiAgJHNwYW4tc3VtIDogbnVsbDtcbiAgJHdpZHRoICAgIDogbnVsbDtcblxuICBAaWYgJG4gPT0gJ2Z1bGwnIHtcbiAgICAkcG9zOiBzdXN5LWdldChndXR0ZXItcG9zaXRpb24sICRzcGFuKTtcbiAgICAkcm9sZTogc3VzeS1nZXQocm9sZSwgJHNwYW4pO1xuICAgICRuOiBpZigkcG9zID09IHNwbGl0IGFuZCAkcm9sZSAhPSBuZXN0LCBzdXN5LWNvdW50KCRjb2x1bW5zKSwgMTAwJSk7XG4gIH1cblxuICBAaWYgdHlwZS1vZigkbikgIT0gbnVtYmVyIHtcbiAgICBAd2FybiBcIigje3R5cGUtb2YoJG4pfSkgI3skbn0gaXMgbm90IGEgdmFsaWQgc3Bhbi5cIjtcbiAgfSBAZWxzZSBpZiB1bml0bGVzcygkbikge1xuICAgICRjb250ZXh0OiBzdXN5LXN1bSgkY29sdW1ucywgJGd1dHRlcnMsIGlmKGlzLXNwbGl0KCRzcGFuKSwgd2lkZSwgbmFycm93KSk7XG4gICAgJHNwcmVhZDogaWYoaXMtaW5zaWRlKCRzcGFuKSwgJHNwcmVhZCBvciB3aWRlLCAkc3ByZWFkKTtcbiAgICAkc3Bhbi1zdW06IHN1c3koJG4sICRsb2NhdGlvbiwgJGNvbHVtbnMsICRndXR0ZXJzLCAkc3ByZWFkKTtcblxuICAgICRfbWF0aDogc3VzeS1nZXQobWF0aCwgJHNwYW4pO1xuICAgICRfY29sdW1uLXdpZHRoOiBzdXN5LWdldChjb2x1bW4td2lkdGgsICRzcGFuKTtcbiAgICBAaWYgJF9tYXRoID09IHN0YXRpYyB7XG4gICAgICAkd2lkdGg6ICRzcGFuLXN1bSAqIHZhbGlkLWNvbHVtbi1tYXRoKCRfbWF0aCwgJF9jb2x1bW4td2lkdGgpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRzcGFuLXN1bSAvICRjb250ZXh0KTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICR3aWR0aDogJG47XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aDtcbn1cbiIsIkBtaXhpbiBsaW5rcyAoJGxpbmssICR2aXNpdCwgJGhvdmVyLCAkYWN0aXZlKSB7XG4gIGEge1xuICAgIGNvbG9yOiAkbGluaztcbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6ICR2aXNpdDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGhvdmVyO1xuICAgIH1cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJGFjdGl2ZTtcbiAgICB9XG4gIH1cbn0iLCJAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHQuYy1oYWxmLXJpZ2h0X193cmFwcGVyICNEZXNjcmlwdGlvbi1jb250ZW50LnRhYi1jb250ZW50IC5iLXBhZ2VfY29udGVudCAubW9kZWxfX2luZm9ybWF0aW9ucyA+IGRpdntcblx0XHR3aWR0aDo1MCU7XG5cdFx0bWFyZ2luLWJvdHRvbToxNXB4O1xuXHR9XG59XG4uc2luZ2xlLV9tb2RlbCAuYy1oYWxmLXJpZ2h0X193cmFwcGVyIC50YWItY29udGVudCAuYi1wYWdlX2NvbnRlbnQgLm1vZGVsX19pbmZvcm1hdGlvbnN7XG5cdG1hcmdpbi10b3A6MjVweDtcbn1cbi5jLWhhbGYtcmlnaHQge1xuXHR3aWR0aDo1MCU7XG5cdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRmbG9hdDogcmlnaHQ7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksICRzbS1vbmx5KSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZmxvYXQ6IG5vbmU7XG5cdH1cblxuXHQmLmlzLWZ1bGwge1xuXHRcdHdpZHRoOjEwMCU7XG5cdFx0ZmxvYXQ6bm9uZTtcblxuXHRcdC5iLXBhZ2VfY29udGVudCwgLmItZHluYW1pYyB7XG5cdFx0XHQvL3BhZGRpbmc6IDIwcHggMCA2MHB4IDA7XG5cdFx0fVxuXG5cdFx0LmMtaGFsZi1yaWdodF9fd3JhcHBlciB7XG5cdFx0XHRAZXh0ZW5kICVsYXlvdXQ7XG4gICBcdFx0XHQuYi1keW5hbWljIHtcbiAgIFx0XHRcdFx0Jl9fYm9keV9fd3JhcHBlciB7XG5cdFx0XHRcdCAgICB3aWR0aDogc3BhbigxMSk7XG5cdFx0XHRcdCAgICBtYXJnaW4tcmlnaHQ6IHNwYW4oMSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Jl9fbWVkaWF7XG5cdFx0XHRcdFx0d2lkdGg6IHNwYW4oMTIpO1xuXHRcdFx0XHR9XG4gICBcdFx0XHR9XG5cbiAgIFx0XHRcdC5iLXBhZ2UtdGl0bGUge1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQuYi1wYWdlX2NvbnRlbnRfX2JvdHRvbXtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC50ZXh0LS0ge1xuXHRcdCZncmV5IHtcblx0XHRcdGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsICdncmV5Jyk7XG5cdFx0fVxuXG5cdFx0JmxpZ2h0IHtcblx0XHRcdGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsICdsaWdodCcpO1xuXHRcdH1cblxuXHRcdCZiYXNlIHtcblx0XHRcdGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsICdiYXNlJyk7XG5cdFx0fVxuXHR9XG5cdCY6bm90KC5pcy1mdWxsKXtcblx0XHQuYi1wYWdlX2NvbnRlbnQsIC5iLWR5bmFtaWMge1xuXHRcdFx0XHRtYXgtd2lkdGg6MTAwMHB4O1xuXHRcdH1cblx0fVxuXHQmLmhhcy1zb3VyY2V7XG5cdFx0LmItcGFnZV9jb250ZW50LCAuYi1keW5hbWljIHtcblx0XHRcdFx0bWF4LXdpZHRoOm5vbmU7XG5cdFx0fVxuXHR9XG5cdFxuXHRoMSwgLnBhZ2UtdGl0bGUge1xuXHRcdEBpbmNsdWRlIGNhbGMtcmVtKDQwKTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGZvbnQtd2VpZ2h0OiAkbGlnaHQ7XG5cdFx0IG1hcmdpbi1ib3R0b206IDQ1cHg7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDMwKTtcblx0XHR9XG5cdFx0XG5cdFx0LnN1cnRpdHJlIHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRmb250LXdlaWdodDogJGJsYWNrO1xuXHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTQpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDIwcHg7XG5cdFx0fVxuXHR9XG5cblx0aDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0XHRtYXJnaW4tYm90dG9tOjEwcHg7XG5cdFx0Zm9udC13ZWlnaHQ6ICRibGFjaztcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdEBpbmNsdWRlIGNhbGMtcmVtKDIwKTtcblx0fVxuXG5cdCZfX3dyYXBwZXIge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNjBweDtcblx0XHR9XG5cdFx0LnNlcCB7XG5cdFx0XHRwYWRkaW5nOiA1cHggMCAxNXB4IDA7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRoZWlnaHQ6MXB4O1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kIDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2xpbmUnKTtcblx0XHRcdH1cblxuXHRcdFx0Y2xlYXI6Ym90aDtcblx0XHR9XG5cdFx0LnNvY2lhbCB7XG5cdFx0ICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cblx0XHQgICAgLnNlcCB7XG5cdFx0ICAgIFx0bWFyZ2luOjE1cHggMDtcblx0XHQgICAgfVxuXG5cdFx0XHRoMyB7XG5cdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRtYXJnaW4tdG9wOjEwcHg7XG5cdFx0XHR9XG5cblx0XHRcdC5hZGR0aGlzX3Rvb2xib3gge1xuXHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0bWFyZ2luLWxlZnQ6NXB4O1xuXHRcdFx0XHRAaW5jbHVkZSBsaW5rcyAoJGxpbms6IHNjaGVtZS1jb2xvcignbGluaycsICdob3ZlcicpLCAkdmlzaXQ6IHNjaGVtZS1jb2xvcignbGluaycsICdob3ZlcicpLCAkaG92ZXI6IHNjaGVtZS1jb2xvcignbGluaycsICdiYXNlJyksICRhY3RpdmU6IHNjaGVtZS1jb2xvcignbGluaycsICdiYXNlJykpO1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDoxMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnRhYi1jb250ZW50IHtcblx0XHRcdC5iLXBhZ2VfY29udGVudCB7XG5cdFx0XHRcdC5jLXNsaWNre1xuXHRcdFx0XHRcdC5tb2RlbF9faW5mb3JtYXRpb25ze1xuXHRcdFx0XHRcdFx0Jj5kaXZ7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDE0KTtcblx0XHRcdFx0XHRcdFx0LnNwcml0ZXtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjEwcHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5tb2RlbF9faW5mb3JtYXRpb25ze1xuXG5cdFx0XHRcdFx0d2lkdGg6c3BhbigyNCk7XG5cdFx0XHRcdFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdFx0XHRcdFx0Jj5kaXZ7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBzcGFuKDYgaW5zaWRlIG5vLWd1dHRlcnMpO1xuXHRcdFx0XHRcdFx0LypAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjIwcHg7XG5cdFx0XHRcdFx0XHR9Ki9cblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDI1KTtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1yZWd1bGFyO1xuXG5cdFx0XHRcdFx0XHQuc3ByaXRlLC50aXRsZXtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHQudGl0bGV7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6MjBweCAwO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogJGZvbnQtYmxhY2s7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDE2KTtcblx0XHRcdFx0XHRcdFx0LypAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0XHRcdFx0XHRcdHBhZGRpbmc6NXB4IDAgMHB4O1xuXHRcdFx0XHRcdFx0XHR9Ki9cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LmRldGFpbHtcblx0XHRcdFx0XHRAZXh0ZW5kICVjbGVhcmZpeDtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOjM1cHg7XG5cdFx0XHRcdFx0Jl9fbGFiZWx7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjE1cHg7XG5cdFx0XHRcdFx0XHRhe1xuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogJGZvbnQtYmxhY2s7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDE0KTtcblx0XHRcdFx0XHRcdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHQmOmFmdGVye1xuXHRcdFx0XHRcdFx0XHRcdC8vY29sb3I6c2NoZW1lLWNvbG9yKCdsaW5rJywgJ21lbnUnKTtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6NXB4O1xuXHRcdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0XHQgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuXHRcdFx0XHRcdFx0XHQgICAgZm9udC1zaXplOiBpbmhlcml0O1xuXHRcdFx0XHRcdFx0XHQgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG5cdFx0XHRcdFx0XHRcdCAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0XHRcdFx0XHRcdFx0ICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Jl9fcmRjLCZfX2Zsb29yLCZfX2dhcmFnZXtcblx0XHRcdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDZweCAxMHB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmX19jb250ZW50e1xuXHRcdFx0XHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0XHRcdFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOnNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblx0XHRcdFx0XHRcdGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cdFx0XHRcdFx0XHQvL2Rpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MTVweDtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuZW1wdHktc2VhcmNoe1xuXHRcdFx0dGV4dC1hbGlnbjpjZW50ZXI7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjYwcHg7XG5cdFx0fVxuXHRcdC5iLXBhZ2VfY29udGVudCB7XG5cblx0XHRcdCZfX3dyYXBwZXIge1xuXHRcdFx0XHRwYWRkaW5nOjQ1cHggMDtcblxuXHRcdFx0XHQuYi1wYWdlLWNvbnRlbnQsIC5iLXBhZ2UtdGl0bGUsIC5iLXBhZ2VfY29udGVudF9fYm90dG9tIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwIHNwYW4oMSk7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdFx0LmItcGFnZS1jb250ZW50LC5iLXBhZ2VfY29udGVudF9fYm90dG9te1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5KSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOiA5MCUhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0bWFyZ2luOjAgYXV0bztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cblx0XHRcdC5jaGFyYWNzIHtcblx0XHRcdFx0cGFkZGluZy10b3A6MzBweDtcblx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhsZy1vbmx5KSB7XG5cdFx0XHRcdFx0Ly93aWR0aDo1MCU7XG5cdFx0XHRcdH1cblx0XHRcdFx0aDIsaDMsaDQsaDUsaDYge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6MzBweDtcblx0XHRcdFx0fVxuXHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0cGFkZGluZzowO1xuXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0Y29sdW1uLWNvdW50OiAyO1xuXHRcdFx0XHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdCAvKmZsb2F0OmxlZnQ7XG5cdFx0XHRcdFx0XHQgd2lkdGg6NTAlOyovXG5cdFx0XHRcdFx0XHQgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuXHRcdFx0XHRcdCAgICB0ZXh0LWluZGVudDogLTFlbTtcblx0XHRcdFx0XHQgICAgcGFkZGluZy1sZWZ0OiAxZW07XG5cdFx0XHRcdFx0ICAgIHBhZGRpbmctcmlnaHQ6c3BhbigxKTtcblx0XHRcdFx0XHRcdCBAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwgJG1kLW9ubHkpIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0LnNlcCB7XG5cdFx0XHRcdFx0d2lkdGg6MjAwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5iLXBhZ2VfY29udGVudF9fYm90dG9tIHtcblx0XHQvL21hcmdpbi10b3A6IDM1cHg7XG5cdH1cblxuXHQmLmhhcy1hY2NvcmRpb257XG5cdFx0LmItcGFnZV9jb250ZW50X193cmFwcGVye1xuXHRcdFx0LnRhYi1jb250ZW50e1xuXHRcdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRcdCY6Zmlyc3QtY2hpbGR7XG5cdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuYWNjb3JkaW9ue1xuXG5cblx0XHR9XG5cdH1cblxufSIsIi8vIHJlbSBTdXBwb3J0XG4vLyA9PT09PT09PT09PVxuXG4vLyByZW1cbi8vIC0tLVxuLy8gQ2hlY2sgZm9yIGFuIGV4aXN0aW5nIHN1cHBvcnQgbWl4aW4sIG9yIG91dHB1dCBkaXJlY3RseS5cbi8vIC0gJHByb3AgIDogPGNzcyBwcm9wZXJ0eT5cbi8vIC0gJHZhbCAgIDogPGNzcyB2YWx1ZT5cbkBtaXhpbiBzdXN5LXJlbShcbiAgJHByb3AsXG4gICR2YWxcbikge1xuICAkX3JlcXM6IChcbiAgICB2YXJpYWJsZTogcmh5dGhtLXVuaXQgcmVtLXdpdGgtcHgtZmFsbGJhY2ssXG4gICAgbWl4aW46IHJlbSxcbiAgKTtcbiAgQGlmIHN1c3ktc3VwcG9ydChyZW0sICRfcmVxcywgJHdhcm46IGZhbHNlKSBhbmQgJHJoeXRobS11bml0ID09IHJlbSB7XG4gICAgQGluY2x1ZGUgcmVtKCRwcm9wLCAkdmFsKTtcbiAgfSBAZWxzZSB7XG4gICAgI3skcHJvcH06ICR2YWw7XG4gIH1cbn1cbiIsIi8vIERpcmVjdGlvbiBIZWxwZXJzXG4vLyA9PT09PT09PT09PT09PT09PVxuXG4vLyBTdXN5IEZsb3cgRGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gLSBQUklWQVRFXG5AaW5jbHVkZSBzdXN5LWRlZmF1bHRzKChcbiAgZmxvdzogbHRyLFxuKSk7XG5cbi8vIEdldCBEaXJlY3Rpb25cbi8vIC0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiB0aGUgJ2Zyb20nIG9yICd0bycgZGlyZWN0aW9uIG9mIGEgbHRyIG9yIHJ0bCBmbG93LlxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuLy8gLSBbJGtleV0gICA6IGZyb20gfCB0b1xuQGZ1bmN0aW9uIGdldC1kaXJlY3Rpb24oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KSxcbiAgJGtleTogZnJvbVxuKSB7XG4gICRyZXR1cm46IGlmKCRmbG93ID09IHJ0bCwgKGZyb206IHJpZ2h0LCB0bzogbGVmdCksIChmcm9tOiBsZWZ0LCB0bzogcmlnaHQpKTtcbiAgQHJldHVybiBtYXAtZ2V0KCRyZXR1cm4sICRrZXkpO1xufVxuXG4vLyBUb1xuLy8gLS1cbi8vIFJldHVybiB0aGUgJ3RvJyBkaXJlY3Rpb24gb2YgYSBmbG93XG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AZnVuY3Rpb24gdG8oXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gIEByZXR1cm4gZ2V0LWRpcmVjdGlvbigkZmxvdywgdG8pO1xufVxuXG4vLyBGcm9tXG4vLyAtLS0tXG4vLyBSZXR1cm4gdGhlICdmcm9tJyBkaXJlY3Rpb24gb2YgYSBmbG93XG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AZnVuY3Rpb24gZnJvbShcbiAgJGZsb3c6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGZsb3cpXG4pIHtcbiAgQHJldHVybiBnZXQtZGlyZWN0aW9uKCRmbG93LCBmcm9tKTtcbn1cbiIsIi5jLWhhbGYtbGVmdCB7XG5cdHdpZHRoOiBzcGFuKDEyIGluc2lkZSBuby1ndXR0ZXJzKTtcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG5cdGJhY2tncm91bmQtY29sb3I6IHNjaGVtZS1jb2xvcigncHJpbWFyeScpO1xuXHRmbG9hdDpsZWZ0O1xuXHRAaW5jbHVkZSBicmVha3BvaW50cygkbGctb25seSwgJG1kLW9ubHkpIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJyN7JGltYWdlLWRpcn0vcGF0dGVybi5wbmcnKSAhaW1wb3J0YW50O1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGF1dG87XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJGxnLW9ubHksICRtZC1vbmx5KSB7XG5cdFx0I0Rlc2NyaXB0aW9uLW1lZGlhc3tcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6bm9uZSFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksICRzbS1vbmx5KSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblx0XG5cdFx0I2dvb2dsZS1tYXBze1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdH1cblx0XHR9XG5cdFxuXHRoMixoMyxoNCxoNSxoNiB7XG5cdFx0Zm9udC13ZWlnaHQ6ICRsaWdodDtcblx0XHRAaW5jbHVkZSBjYWxjLXJlbSgzMSk7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHQuc3VydGl0cmUge1xuXHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdGZvbnQtd2VpZ2h0OiAkYmxhY2s7XG5cdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxMyk7XG5cdFx0XHRsaW5lLWhlaWdodDogMjBweDtcblx0XHR9XG5cdH1cblx0XG5cdGltZyB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5LCAkc20tb25seSwgJG1kLW9ubHksICRsZy1vbmx5KSB7XG5cdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdH1cblx0fVxuXG5cdCYuc3RpY2t5IHtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG5cblx0LnRhYi1tZWRpYXMge1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyIGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOmNvdmVyO1xuXHR9XG5cblx0Ji5oYXMtYWNjb3JkaW9uIHtcblx0XHQvL3Bvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdC50YWItbWVkaWFze1xuXHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0JjpmaXJzdC1jaGlsZHtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdH1cblxuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwgJHNtLW9ubHkpIHtcblx0XHRcdC50YWdfc2VsbHtcblx0XHRcdFx0ZGlzcGxheTpub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQudGFnX3NlbGx7XG5cdFx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdHotaW5kZXg6OTk7XG5cdFx0XHR0b3A6MTBweDtcblx0XHRcdGxlZnQ6OHB4O1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufSIsIi5jLXNvY2lhbCB7XG5cdGJhY2tncm91bmQ6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdkYXJrJyk7XG5cblx0QGluY2x1ZGUgbGlua3MgKFxuXHRcdCRsaW5rOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbGlnaHQnKSxcbiAgICBcdCR2aXNpdDogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ2xpZ2h0JyksXG4gICAgXHQkaG92ZXI6IHNjaGVtZS1jb2xvcignbGluaycsICdsaWdodCcpLFxuICAgIFx0JGFjdGl2ZTogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ2xpZ2h0JylcbiAgICApO1xuXG5cdCZfX3dyYXBwZXIge1xuXHRcdEBleHRlbmQgJWxheW91dDtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O1xuXHRcdFx0bGkgYXtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OjIwcHghaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdFx0XG5cdFx0fVxuXHR9XG5cblx0YSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZzogMTVweCA2NXB4O1xuXHRcdG1hcmdpbi1sZWZ0OiAtMjBweDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdG1pbi1oZWlnaHQ6IDY2cHg7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJHNtLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdHBhZGRpbmc6IDE1cHggMDtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cblx0XHRpbWcge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMjBweDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJHNtLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdFx0cG9zaXRpb246IHN0YXRpYztcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQmOmhvdmVye1xuXHRcdFx0YmFja2dyb3VuZDogbWl4KGJsYWNrLCBzY2hlbWUtY29sb3IoJ3ByaW1hcnknKSwgMTAlKTtcblx0XHR9XG5cblx0XHQmLmZhY2Vib29re1xuXHRcdFx0cGFkZGluZzogMTVweCA1NXB4O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0XHRwYWRkaW5nOiAxNXB4IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0dWwge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0bWFyZ2luOiAwOyBwYWRkaW5nOiAwO1xuXHRcdGZvbnQtc2l6ZTogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdGxpIHtcbiAgIFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICBcdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxNCk7XG5cdFx0XHRkaXNwbGF5OiBibG9jazsgZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogc3Bhbig2IGluc2lkZSBuby1ndXR0ZXJzKTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHNtLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdFx0d2lkdGg6NTAlO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5jLWJsb2NrLWxpc3Rpbmcge1xuXHQuYy1zZWN0aW9uLS0ge1xuXHRcdCZfaGFsZl9ibG9jayB7XG5cdFx0XHR3aWR0aDo1MCU7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkbWQtb25seSwkbGctb25seSkge1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHQgICAgaGVpZ2h0OiAxMDAlIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXG5cdFx0XHQuYy1zZWN0aW9uX19ib2R5e1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHQgICAgd2lkdGg6IDEwMCU7XG5cdFx0XHQgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG5cblx0XHRcdFx0Jl9fd3JhcHBlciB7XG5cdFx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdCAgICB0b3A6IDUwJTtcblx0XHRcdFx0ICAgIGxlZnQ6IDUwJTtcblx0XHRcdFx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG5cdFx0XHRcdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdCAgICB3aWR0aDogODAlO1xuXHRcdFx0XHQgICAgbWF4LXdpZHRoOiAzOTBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfc3RkX2Jsb2NrIHtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdHBhZGRpbmc6NzBweCBzcGFuKDEpO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHRcdFx0cGFkZGluZzo3MHB4IDA7XG5cdFx0XHRcdG1heC13aWR0aDogOTAlIWltcG9ydGFudDtcblx0XHRcdFx0bWFyZ2luOjAgYXV0bztcblx0XHRcdH1cblxuXHRcdFx0LmMtc2VjdGlvbl9fd3JhcHBlciB7XG5cdFx0XHRcdG1heC13aWR0aDo2NTBweDtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHR9XG5cdFx0XHQmLmhhcy10aHVtYi10b3Age1xuXHRcdFx0XHRwYWRkaW5nLXRvcDoxMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5jLXNlY3Rpb24ge1xuXHRcdHRleHQtYWxpZ246Y2VudGVyO1xuXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXG5cdFx0aDEsIGgyIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkYmxhY2s7XG5cdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgyOCk7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdFx0XHQuc3ViX3RpdGxlIHtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRsaWdodDtcblx0XHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oNjApO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDQwKTtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aDIge1xuXHRcdFx0LnN1Yl90aXRsZSB7XG5cdFx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDQ1KTtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgzNSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRoMyB7XG5cdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgyMCk7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkYm9sZDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDE4cHg7XG5cdFx0fVxuXG5cdFx0dWx7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0bGl7XG5cdFx0XHRcdEBpbmNsdWRlIGxpbmtzICgkbGluazogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2xpZ2h0JyksICR2aXNpdDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2xpZ2h0JyksICRob3Zlcjogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2dyZXknKSwgJGFjdGl2ZTogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2dyZXknKSk7XG5cblxuXHRcdFx0XHRhe1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0JjphZnRlcntcblx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDo1cHg7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBcIlxcZjA1NFwiO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdCAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG5cdFx0XHRcdFx0ICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0XHRcdFx0XHQgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG5cdFx0XHRcdFx0ICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRcdFx0XHRcdCAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cdFx0fVxuXHRcdCZfX21lZGlhe1xuXHRcdFx0c21hbGx7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogaXRhbGljO1xuXHRcdFx0XHRtYXJnaW4tdG9wOjVweDtcblx0XHRcdH1cblx0XHR9XG5cblxuXHR9XG59IiwiLmMtY3JlZGl0IHtcblx0YmFja2dyb3VuZDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5Jyk7XG5cdGNvbG9yOiAjZmZmO1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywgJ2RhcmsnKTtcblxuXHRAaW5jbHVkZSBsaW5rcyAoXG5cdFx0JGxpbms6IHNjaGVtZS1jb2xvcignbGluaycsICdsaWdodCcpLFxuICAgIFx0JHZpc2l0OiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbGlnaHQnKSxcbiAgICBcdCRob3Zlcjogc2NoZW1lLWNvbG9yKCdsaW5rJywgJ2xpZ2h0JyksXG4gICAgXHQkYWN0aXZlOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnbGlnaHQnKVxuICAgICk7XG5cblx0Jl9fd3JhcHBlciB7XG5cdFx0QGV4dGVuZCAlbGF5b3V0O1xuXHRcdHBhZGRpbmc6IDEycHggMDtcblx0XHRmb250LXNpemU6IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR4cy1vbmx5KSB7XG5cdFx0XHQvL2Rpc3BsYXk6IHRhYmxlO1xuXHRcdH1cblx0fVxuXG5cdCYtaXRlbSB7XG5cdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTIpO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdHdpZHRoOiBzcGFuKDEyIGluc2lkZSBuby1ndXR0ZXJzKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhzLW9ubHkpIHtcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiB0YWJsZS1mb290ZXItZ3JvdXA7XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LnZveW91e1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHhzLW9ubHkpIHtcblx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0fVxuXHR9XG5cdHVsIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0cGFkZGluZzowOyBtYXJnaW46IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCR4cy1vbmx5KSB7XG5cdFx0XHRmbG9hdDogbm9uZTtcblx0XHR9XG5cblx0XHRsaSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRtYXJnaW4tbGVmdDozMHB4O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCgkeHMtb25seSkge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDowcHg7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206MTVweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIuYy1idG4ge1xuXHRwYWRkaW5nOjEwcHggMjVweCAxMHB4IDIwcHg7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGZvbnQtd2VpZ2h0OiAkYmxhY2s7XG5cdHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGN1cnNvcjpwb2ludGVyO1xuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0Ji0tYmFzZSwgJi0tYmFzZTp2aXNpdGVkIHtcblx0XHRiYWNrZ3JvdW5kIDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cdFx0Ym94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAwcHggMnB4IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblxuXHR9XG5cblx0Ji0tYmFzZTpob3ZlciwgJi0tYmFzZTpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZCA6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdC8vYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAwcHggMnB4IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cblx0fVxuXG5cdCYtLXJldmVydCwgJi0tcmV2ZXJ0OnZpc2l0ZWQge1xuXHRcdGJhY2tncm91bmQgOiBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXHRcdGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblx0XHRib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAycHggc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnbGlnaHQnKTtcblxuXHR9XG5cdCYtLXJldmVydDpob3ZlciwmLS1yZXZlcnQ6Zm9jdXN7XG5cdFx0YmFja2dyb3VuZCA6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblx0XHRjb2xvcjpzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXHRcdC8vYm94LXNoYWRvdzogaW5zZXQgMHB4IDBweCAwcHggMnB4IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblxuXHR9XG5cdCY6YWZ0ZXJ7XG5cdFx0cGFkZGluZy1sZWZ0OjVweDtcblx0XHRjb250ZW50OiBcIlxcZjEwNVwiO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0ICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG5cdCAgICBwb3NpdGlvbjphYnNvbHV0ZTtcblx0ICAgIHJpZ2h0OjEwcHg7XG5cdCAgICB0b3A6NTAlO1xuXHQgICAgdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7XG5cdH1cbn1cbiIsIi5pcy1mdWxsIHtcblx0LmMtZHluYW1pYyB7XG5cdFx0cGFkZGluZy1ib3R0b206NTBweDtcblx0LmItZHluYW1pYyB7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHQuc2VwIHtcblx0XHRcdFx0bWFyZ2luOiA0NXB4IDA7XG5cblx0XHRcdH1cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdC5zZXAge1xuXHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmMtZHluYW1pYyB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdC5iLWR5bmFtaWMge1xuXHRcdFx0cGFkZGluZzowIHNwYW4oMSk7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRcdG1heC13aWR0aDogOTAlIWltcG9ydGFudDtcblx0XHRcdFx0bWFyZ2luOjAgYXV0bztcblx0XHRcdH1cblx0XHRcdCY6bGFzdC1jaGlsZHtcblx0XHRcdFx0LnNlcHtcblx0XHRcdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnNlcHtcblx0XHRcdFx0bWFyZ2luOjIwcHggMDtcblx0XHRcdH1cblxuXHRcdFx0aDIsaDMsaDQsaDUsaDYge1xuXHRcdFx0XHRmb250LXdlaWdodDogJGxpZ2h0O1xuXHRcdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgzMSk7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdC5zdXJ0aXRyZSB7XG5cdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0XHRmb250LXdlaWdodDogJGJsYWNrO1xuXHRcdFx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDEzKTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX19ib2R5e1xuXHRcdFx0XHRAZXh0ZW5kICVjbGVhcmZpeDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwgJG1kLW9ubHkpIHtcblx0XHRcdFx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmX19ib2R5X193cmFwcGVyIHtcblx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRcdGZsb2F0OmxlZnQ7XG5cdFx0XHRcdHdpZHRoOiBzcGFuKDE2KTtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwgJG1kLW9ubHkpIHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRkaXNwbGF5OiB0YWJsZS1mb290ZXItZ3JvdXA7XG5cdFx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0Jjpub3QoLnBlcnNvbmFsX2luZm9ybWF0aW9ucyl7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRcdFx0Y29sdW1uLWNvdW50OiAyO1xuXHRcdFx0XHRcdFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdFx0XHRcdFx0XHRsaXtcblx0XHRcdFx0XHRcdFx0bGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICAgIFx0XHRcdFx0XHRcdHRleHQtaW5kZW50OiAtMWVtO1xuICAgIFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMWVtO1xuXHRcdFx0XHRcdFx0XHQvKmZsb2F0OmxlZnQ7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiBzcGFuKDEyIGluc2lkZSBuby1ndXR0ZXJzKTsqL1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwgJG1kLW9ubHkpIHtcblx0XHRcdFx0XHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdC8vcGFkZGluZy1yaWdodDogc3BhbigxIG9mIDEyIGluc2lkZSBuby1ndXR0ZXJzKTtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDpzcGFuKDEpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQucGVyc29uYWxfaW5mb3JtYXRpb25ze1xuXHRcdFx0XHRcdHBhZGRpbmcgOjA7XG5cdFx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdFx0XHRsaXtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206NXB4O1xuXHRcdFx0XHRcdFx0JjpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdC8vY29sb3I6c2NoZW1lLWNvbG9yKCdsaW5rJywgJ21lbnUnKTtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjVweDtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogXCIgXCI7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdCAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG5cdFx0XHRcdFx0XHQgICAgZm9udC1zaXplOiBpbmhlcml0O1xuXHRcdFx0XHRcdFx0ICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuXHRcdFx0XHRcdFx0ICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRcdFx0XHRcdFx0ICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdFx0XHRcdFx0XHQgICAgcGFkZGluZy1yaWdodDoxNXB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQucGhvbmV7XG5cdFx0XHRcdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTMpO1xuXHRcdFx0XHRcdFx0XHRjb250ZW50OiBcIlxcZjA5NVwiO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5jZWxse1xuXHRcdFx0XHRcdFx0JjpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDIwKTtcblx0XHRcdFx0XHRcdFx0Y29udGVudDogXCJcXGYxMGJcIjtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LmZheHtcblx0XHRcdFx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxMyk7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMWFjXCI7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5lbWFpbHtcblx0XHRcdFx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxMyk7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMGUwXCI7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Jl9fbWVkaWF7XG5cdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHR3aWR0aDogc3Bhbig3KTtcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5LCAkbWQtb25seSkge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcblx0XHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG59IiwiLnRvZ2dsZS10YWIge1xuXHRiYWNrZ3JvdW5kOiBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdiYXNlJyk7XG5cdGNvbG9yOiAjZmZmO1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogMTJweCBzcGFuKDEpO1xuXHRtYXJnaW46IDAgIWltcG9ydGFudDtcblxuXHRib3JkZXItYm90dG9tOjFweCBzb2xpZCBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXG5cdCY6aG92ZXIge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRiYWNrZ3JvdW5kOiBtaXgoYmxhY2ssIHNjaGVtZS1jb2xvcigncHJpbWFyeScpLCAxMCUpO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0JjphZnRlcntcblx0XHRcdHBhZGRpbmctbGVmdDo1cHg7XG5cdFx0XHRjb250ZW50OiBcIlxcZjEwN1wiO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdCAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiLDtcblx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cmlnaHQ6IDI1cHg7XG5cdFx0XHRjb2xvcjojZmZmO1xuXHRcdH1cblx0XHQmLnRhYi1jb250ZW50LS1hY3RpdmV7XG5cdFx0XHQmOmFmdGVye1xuXHRcdFx0XHRjb250ZW50OiBcIlxcZjEwNlwiO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uYy10YWItbWVudSB7XG5cdGJhY2tncm91bmQ6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdEBpbmNsdWRlIGNhbGMtcmVtKDE0KTtcblxuXHRcblxuXHQmLnhzLW9ubHkge1xuXHRcdGxpIHtcblx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG5cblx0dWwge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0cGFkZGluZzowO1xuXG5cdFx0bGkge1xuXHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cdFx0XHRmbG9hdDpsZWZ0O1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuNXM7XG5cblx0XHRcdEBpbmNsdWRlIGxpbmtzIChcblx0XHRcdFx0JGxpbms6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdsaWdodCcpLFxuXHRcdFx0XHQkdmlzaXQ6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdsaWdodCcpLFxuXHRcdFx0XHQkaG92ZXI6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdsaWdodCcpLFxuXHRcdFx0XHQkYWN0aXZlOiBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCAnbGlnaHQnKVxuXHRcdFx0KTtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdHBhZGRpbmc6IDI1cHggMjBweDtcblx0XHRcdFx0XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdHBvc2l0aW9uOnJlbGF0aXZlO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC41cztcblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogbWl4KGJsYWNrLCBzY2hlbWUtY29sb3IoJ3ByaW1hcnknKSwgMTAlKTtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkc20tb25seSwkbWQtb25seSwkbGctb25seSwkeGxnLW9ubHkpIHtcblx0XHRcdFx0XHRib3JkZXItcmlnaHQ6MXB4IHNvbGlkIHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cdFx0XHRcdFx0aDIsaDMsaDQsaDUsaDZ7XG5cdFx0XHRcdFx0ICAgIG1hcmdpbjogMDtcblx0XHRcdFx0XHQgICAgZm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdFx0XHQgICAgQGluY2x1ZGUgY2FsYy1yZW0oMTQpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkbWQtb25seSkge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cdFx0XHRcdFx0aDIsaDMsaDQsaDUsaDZ7XG5cdFx0XHRcdFx0ICAgIFxuXHRcdFx0XHRcdCAgICBmb250LXdlaWdodDogOTAwO1xuXHRcdFx0XHRcdCAgICBAaW5jbHVkZSBjYWxjLXJlbSgyMCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYuY3VycmVudF9wYWdlX2l0ZW0ge1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOnNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cdFx0XHRcdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBtaXgoYmxhY2ssIHNjaGVtZS1jb2xvcigncHJpbWFyeScpLCAxMCUpO1xuXHRcdFx0XHRcdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnbGlnaHQnKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XG5cblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRzbS1vbmx5LCRsZy1vbmx5LCR4bGctb25seSkge1xuXHRcdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdFx0XHQgICAgYmFja2dyb3VuZDogIzQxYjVlNDtcblx0XHRcdFx0XHRcdFx0ICAgIGhlaWdodDogMnB4O1xuXHRcdFx0XHRcdFx0XHQgICAgd2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdCBcdHRvcDogMTAwJTtcblx0XHRcdFx0XHRcdFx0ICAgIGxlZnQ6IDAlO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJG1kLW9ubHkpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdHVsIGxpIGF7XG5cdFx0ICAgIHBhZGRpbmc6IDEzcHggMjBweDtcblx0XHQgICAgZm9udC13ZWlnaHQ6OTAwO1xuXHRcdCAgICBAaW5jbHVkZSBjYWxjLXJlbSgyMCk7XG5cdFx0ICAgIGgze1xuXHRcdCAgICBcdG1hcmdpbjowO1xuXHRcdCAgICB9XG5cdFx0fVxuXG5cdH1cbn1cblxuLnRhYi1jb250ZW50IHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHQmLnRhYi1jb250ZW50LS1hY3RpdmUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cdCYjRGVzY3JpcHRpb24tY29udGVudHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkbWQtb25seSkge1xuXHRcdFx0Ly9kaXNwbGF5OmJsb2NrIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblx0Ji0tZ2FsbGVyeSB7XG5cdFx0LmItcGFnZV9jb250ZW50X193cmFwcGVyIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG59IiwiLmMtc2xpY2t7XG5cdG1hcmdpbjogMCAyNXB4O1xuXHRpbWd7XG5cdFx0bWFyZ2luOjAgYXV0bztcblx0fVxuXHQuc2xpY2stcHJldiwuc2xpY2stbmV4dHtcblx0XHRoZWlnaHQ6IDMwcHg7XG4gICAgXHR3aWR0aDogMjFweDtcbiAgICBcdCY6YmVmb3Jle1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdCAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG5cdFx0ICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0XHQgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG5cdFx0ICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRcdCAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHRcdCAgICBjb2xvcjpzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdiYXNlJyk7XG5cdFx0ICAgIEBpbmNsdWRlIGNhbGMtcmVtKDM1KTtcblx0XHQgICAgLXdlYmtpdC10ZXh0LXN0cm9rZTogM3B4ICNmZmY7XG4gICAgXHR9XG5cdH1cblxuXHQuc2xpY2stcHJldjpiZWZvcmUge1xuXHQgICAgY29udGVudDogXCJcXGYwNTNcIjtcblx0fVxuXHQuc2xpY2stbmV4dDpiZWZvcmUge1xuXHQgICBjb250ZW50OiBcIlxcZjA1NFwiO1xuXHR9XG5cdC5tb2RlbHtcblx0XHRtYXgtd2lkdGg6MzYwcHg7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblx0LnBsYW5fZGVzY3JpcHRpb257XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LWZhbWlseTogJGZvbnQtYmxhY2s7XG5cblx0fVxufSIsIi5jLWZvb3RlciB7XG5cdGJhY2tncm91bmQ6IHNjaGVtZS1jb2xvcigncHJpbWFyeScpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDUwMTtcblxuXHQmX19ib2R5IHtcblx0XHRwYWRkaW5nOiAxOHB4IDA7XG5cdH1cbn1cblxuLndpZGdldC1hcmVhIHtcblx0Y29sb3I6ICNmZmY7XG5cblx0Jl9fd3JhcHBlciB7XG5cdFx0QGV4dGVuZCAlbGF5b3V0O1xuXHRcdGZvbnQtc2l6ZTogMDtcblx0fVxuXG5cdEBpbmNsdWRlIGxpbmtzICgkbGluazogI2ZmZiwgJHZpc2l0OiAjZmZmLCAkaG92ZXI6ICNmZmYsICRhY3RpdmU6ICNmZmYpO1xuXG5cdC53aWRnZXQtaXRlbSB7XG5cdFx0QGluY2x1ZGUgY2FsYy1yZW0oJGJhc2UtZm9udC1jb250ZXh0KTtcblx0XHR3aWR0aDogc3Bhbig2IGluc2lkZSBuby1ndXR0ZXJzKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdCB3aWR0aDoxMDAlO1xuXHRcdH1cblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0ZmxvYXQ6bGVmdDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdC50ZXh0d2lkZ2V0e1xuXHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTMpO1xuXHRcdFx0cHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQud2lkZ2V0LXRpdGxlIHtcblx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxNCk7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRjb2xvcjogI2ZmZjsgbWFyZ2luOiAwO1xuXHR9XG5cblx0dWwge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTQpO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bWFyZ2luOiAwOyBwYWRkaW5nOiAwO1xuXHRcdFxuXHRcdGF7XG5cdFx0XHRtYXJnaW4tYm90dG9tOjEwcHg7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0fVxuXHRcdFxuXHRcdFxuXHRcdHVsIHtcblx0XHRcdG1hcmdpbjogMCAwIDE4cHggMDsgcGFkZGluZzogMDtcblx0XHRcdEBpbmNsdWRlIGxpbmtzICgkbGluazogcmdiYSgjZmZmLCAwLjgpLCAkdmlzaXQ6ICNmZmYsICRob3ZlcjogI2ZmZiwgJGFjdGl2ZTogI2ZmZik7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdGF7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206MDtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIiRnYWxsZXJ5LWd1dHRlcnMgOiAoXG5cdGNvbHVtbnM6IDYsXG5cdGd1dHRlcnM6IDAuM1xuKTtcblxuLm1vZGVsc3tcblx0Ly9vdmVyZmxvdzogaGlkZGVuO1xuXHQmKy5zZXB7XG5cdFx0bWFyZ2luLWJvdHRvbTozNXB4O1xuXHR9XG5cdC5jb3VudCB7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LWZhbWlseTogJGZvbnQtYmxhY2s7XG5cdFx0bWFyZ2luLWJvdHRvbToxMHB4O1xuXHR9XG5cblx0Ji5ncmlkIHtcblx0XHQubW9kZWwge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJGxnLW9ubHksJHhsZy1vbmx5KSB7XG5cdFx0XHRcdEBpbmNsdWRlIHdpdGgtbGF5b3V0KCRnYWxsZXJ5LWd1dHRlcnMpIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBnYWxsZXJ5KDIpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0XHRAaW5jbHVkZSB3aXRoLWxheW91dCgkZ2FsbGVyeS1ndXR0ZXJzKSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ2FsbGVyeSgzKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHRcdFx0d2lkdGg6MTAwJTtcblx0XHRcdH1cblx0XHRcdGJvcmRlcjoxcHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnbGluZScpO1xuXG5cdFx0XHQmX190aXRsZSwgJl9faW5mb3JtYXRpb25zLCAmX19tZWRpYXtcblx0XHRcdFx0Ly9tYXgtd2lkdGg6MzYwcHg7XG5cdFx0XHRcdG1hcmdpbjowIGF1dG87XG5cdFx0XHRcdGJvcmRlcjpub25lO1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX3RpdGxlLCAmX19pbmZvcm1hdGlvbnMge1xuXHRcdFx0XHRwYWRkaW5nOjE1cHggMTBweDtcblx0XHRcdFx0Ym9yZGVyLXRvcDoxcHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnbGluZScpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQubW9kZWx7XG5cdFx0bWFyZ2luLWJvdHRvbTozNXB4O1xuXG5cdFx0Jl9fbWVkaWF7XG5cdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblxuXHRcdFx0YXtcblx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHQmOmJlZm9yZSwmOmFmdGVye1xuXHRcdFx0XHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0ICAgIFx0XHRcdFx0b3BhY2l0eTogMTtcblxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0XHRjb250ZW50IDogXCJcIjtcblx0XHRcdFx0ICAgIGJhY2tncm91bmQ6cmdiYShzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdiYXNlJyksIDAuOCk7XG5cdFx0XHRcdFx0cG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdFx0dG9wOjA7XG5cdFx0XHRcdFx0Ym90dG9tOjA7XG5cdFx0XHRcdFx0bGVmdDowO1xuXHRcdFx0XHRcdHJpZ2h0OjA7XG5cdFx0XHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHQgICAgXHRcdFx0b3BhY2l0eTogMDtcblx0ICAgIFx0XHRcdHRyYW5zaXRpb246IHZpc2liaWxpdHkgMC41cywgb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xuXHQgICAgXHRcdFx0ei1pbmRleDogOTk7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjphZnRlcntcblx0XHRcdFx0XHRjb250ZW50IDogXCJcXGYwMDJcIjtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdCAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG5cdFx0XHRcdCAgICBmb250LXNpemU6IGluaGVyaXQ7XG5cdFx0XHRcdCAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcblx0XHRcdFx0ICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRcdFx0XHQgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0XHRcdFx0ICAgIGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cdFx0XHRcdCAgICBAaW5jbHVkZSBjYWxjLXJlbSg0NSk7XG5cdFx0XHRcdCAgICAvLy13ZWJraXQtdGV4dC1zdHJva2U6IDNweCBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdiYXNlJyk7XG5cdFx0XHRcdCAgICBwb3NpdGlvbjphYnNvbHV0ZTtcblx0XHRcdFx0ICAgIHRvcDo1MCU7XG5cdFx0XHRcdCAgICBsZWZ0OjUwJTtcblx0XHRcdFx0ICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTtcblx0XHRcdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdCAgICBcdFx0XHRvcGFjaXR5OiAwO1xuXHQgICAgXHRcdFx0dHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwLjVzLCBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XG5cdCAgICBcdFx0XHR6LWluZGV4OiAxMDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnRhZ19zZWxse1xuXHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMTBweDtcblx0XHRcdFx0ICAgIGxlZnQ6IDhweDtcblx0XHRcdFx0ICAgIHdpZHRoOiAyMCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0Jl9fdGl0bGUsJl9faW5mb3JtYXRpb25zLCZfX21lZGlhe1xuXHRcdFx0Ly9tYXgtd2lkdGg6MzYwcHg7XG5cdFx0XHRtYXJnaW46MCBhdXRvO1xuXHRcdFx0Ym9yZGVyOjFweCBzb2xpZCBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaW5lJyk7XG5cdFx0fVxuXG5cdFx0Jl9fdGl0bGUsJl9faW5mb3JtYXRpb25ze1xuXHRcdFx0cGFkZGluZzoxNXB4IDEwcHg7XG5cblx0XHR9XG5cdFx0Jl9faW5mb3JtYXRpb25ze1xuXHRcdFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdFx0XHRib3JkZXItdG9wOjA7XG5cdFx0XHRkaXZ7XG5cdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRmbG9hdDpsZWZ0O1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRcdFx0XHQvL21hcmdpbi1ib3R0b206MTVweDtcblx0XHRcdFx0JjpsYXN0LWNoaWxke1xuXHRcdFx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdFx0fVxuXHRcdFx0XHQuc3ByaXRle1xuXHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdFx0ICAgIG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdFx0fVxuXHRcdFx0XHQuc3ByaXRlLS1pY29uLWJhdGhyb29tIHtcblxuXHRcdFx0XHQgICAgbWFyZ2luLXRvcDogLTVweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRoMixoMyxoNCxoNSxoNntcblx0XHRcdG1hcmdpbjowO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRsaWdodDtcblx0XHRcdEBpbmNsdWRlIGNhbGMtcmVtKDM4KTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRsaW5lLWhlaWdodDogNDBweDtcblx0XHRcdC5zdXJ0aXRyZXtcblx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRibGFjaztcblx0XHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTMpO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcblx0XHRcdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnZ3JleScpO1xuXG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cbn1cbiIsIi8vIElzb2xhdGlvbiBTeW50YXhcbi8vID09PT09PT09PT09PT09PT1cblxuXG4vLyBJc29sYXRlIFtNaXhpbl1cbi8vIC0tLS0tLS0tLS0tLS0tLVxuLy8gU2V0IGlzb2xhdGlvbiBhcyBhbiBvdmVycmlkZS5cbi8vIC0gJGxvY2F0aW9uOiA8c3Bhbj5cbkBtaXhpbiBpc29sYXRlKFxuICAkaXNvbGF0ZTogMVxuKSB7XG4gICRpbnNwZWN0OiAkaXNvbGF0ZTtcblxuICAkb3V0cHV0OiAoXG4gICAgcHVzaDogaXNvbGF0ZSgkaXNvbGF0ZSksXG4gICAgZmxvdzogc3VzeS1nZXQoZmxvdywgJGlzb2xhdGUpLFxuICApO1xuXG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChpc29sYXRlLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIGlzb2xhdGUtb3V0cHV0KCRvdXRwdXQuLi4pO1xufVxuXG5cbi8vIElzb2xhdGUgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gYW4gaXNvbGF0aW9uIG9mZnNldCB3aWR0aC5cbi8vIC0gJGxvY2F0aW9uOiA8c3Bhbj5cbkBmdW5jdGlvbiBpc29sYXRlKFxuICAkaXNvbGF0ZTogMVxuKSB7XG4gICRpc29sYXRlOiBwYXJzZS1zcGFuKCRpc29sYXRlKTtcbiAgJGlzb2xhdGlvbjogc3VzeS1nZXQoc3BhbiwgJGlzb2xhdGUpO1xuXG4gIEBpZiAkaXNvbGF0aW9uIGFuZCBub3QoZ2V0LWxvY2F0aW9uKCRpc29sYXRlKSkge1xuICAgICRuZXc6IChcbiAgICAgIHNwYW46IG51bGwsXG4gICAgICBsb2NhdGlvbjogJGlzb2xhdGlvbixcbiAgICApO1xuICAgICRpc29sYXRlOiBtYXAtbWVyZ2UoJGlzb2xhdGUsICRuZXcpO1xuICB9XG5cbiAgQHJldHVybiBnZXQtaXNvbGF0aW9uKCRpc29sYXRlKTtcbn1cblxuXG4vLyBHZXQgSXNvbGF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tXG4vLyBSZXR1cm4gdGhlIGlzb2xhdGlvbiBvZmZzZXQgd2lkdGhcbi8vIC0gJGlucHV0OiA8bWFwPlxuQGZ1bmN0aW9uIGdldC1pc29sYXRpb24oXG4gICRpbnB1dFxuKSB7XG4gICRsb2NhdGlvbiAgIDogZ2V0LWxvY2F0aW9uKCRpbnB1dCk7XG4gICRjb2x1bW5zICAgIDogc3VzeS1nZXQoY29sdW1ucywgJGlucHV0KTtcbiAgJHdpZHRoICAgICAgOiBudWxsO1xuXG4gIEBpZiB0eXBlLW9mKCRsb2NhdGlvbikgPT0gbnVtYmVyIGFuZCBub3QodW5pdGxlc3MoJGxvY2F0aW9uKSkge1xuICAgICR3aWR0aDogJGxvY2F0aW9uO1xuICB9IEBlbHNlIGlmICRsb2NhdGlvbiB7XG4gICAgJHB1c2g6ICRsb2NhdGlvbiAtIDE7XG4gICAgQGlmICRwdXNoID4gMCB7XG4gICAgICAkcHVzaDogbWFwLW1lcmdlKCRpbnB1dCwgKFxuICAgICAgICBzcGFuOiAkcHVzaCxcbiAgICAgICAgbG9jYXRpb246IDEsXG4gICAgICAgIHNwcmVhZDogd2lkZSxcbiAgICAgICkpO1xuICAgICAgJHdpZHRoOiBnZXQtc3Bhbi13aWR0aCgkcHVzaCk7XG4gICAgfVxuICB9XG5cbiAgQGlmIHN1c3ktZ2V0KGd1dHRlci1wb3NpdGlvbiwgJGlucHV0KSA9PSBzcGxpdFxuICAgICAgYW5kIHN1c3ktZ2V0KGd1dHRlcnMsICRpbnB1dCkgPiAwIHtcbiAgICAkd2lkdGg6IGlmKCR3aWR0aCA9PSBudWxsLCBndXR0ZXJzKCRpbnB1dCksICR3aWR0aCArIGd1dHRlcnMoJGlucHV0KSk7XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aCBvciAwO1xufVxuIiwiLy8gR2FsbGVyeSBTeW50YXhcbi8vID09PT09PT09PT09PT09XG5cbi8vIEdhbGxlcnlcbi8vIC0tLS0tLS1cbi8vIENyZWF0ZSBhbiBpc29sYXRlZCBnYWxsZXJ5XG4vLyAtICRzcGFuICAgICAgICA6IDxzcGFuPlxuLy8gLSBbJHNlbGVjdG9yXSAgOiBjaGlsZCB8IG9mLXR5cGVcbkBtaXhpbiBnYWxsZXJ5KFxuICAkc3BhbixcbiAgJHNlbGVjdG9yOiBjaGlsZFxuKSB7XG4gICRpbnNwZWN0ICAgIDogJHNwYW47XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRzcGFuICAgICAgIDogbWFwLW1lcmdlKCRzcGFuLCAobG9jYXRpb246IDEpKTtcblxuICAkbiAgICAgICAgICAgIDogc3VzeS1nZXQoc3BhbiwgJHNwYW4pO1xuICAkY29sdW1ucyAgICAgIDogc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pO1xuICAkY29udGV4dCAgICAgIDogc3VzeS1jb3VudCgkY29sdW1ucyk7XG4gICRmbG93ICAgICAgICAgOiBzdXN5LWdldChmbG93LCAkc3Bhbik7XG5cbiAgJGluc2lkZSAgICAgICA6IGlzLWluc2lkZSgkc3Bhbik7XG4gICRmcm9tICAgICAgICAgOiBmcm9tKCRmbG93KTtcbiAgJGxpbmUgICAgICAgICA6IGZsb29yKCRjb250ZXh0IC8gJG4pO1xuICAkc3ltbWV0cmljYWwgIDogaXMtc3ltbWV0cmljYWwoJGNvbHVtbnMpO1xuXG4gICRvdXRwdXQ6IChcbiAgICB3aWR0aCAgICAgICAgICAgICA6IG51bGwsXG4gICAgZmxvYXQgICAgICAgICAgICAgOiBmcm9tLFxuICAgIG1hcmdpbi1iZWZvcmUgICAgIDogbnVsbCxcbiAgICBtYXJnaW4tYWZ0ZXIgICAgICA6IG51bGwsXG4gICAgcGFkZGluZy1iZWZvcmUgICAgOiBudWxsLFxuICAgIHBhZGRpbmctYWZ0ZXIgICAgIDogbnVsbCxcbiAgICBmbG93ICAgICAgICAgICAgICA6ICRmbG93LFxuICApO1xuXG4gIEBpZiAkaW5zaWRlIHtcbiAgICAkZ3V0dGVyczogZ2V0LWd1dHRlcnMoJHNwYW4pO1xuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAoXG4gICAgICBwYWRkaW5nLWJlZm9yZTogbWFwLWdldCgkZ3V0dGVycywgYmVmb3JlKSxcbiAgICAgIHBhZGRpbmctYWZ0ZXI6IG1hcC1nZXQoJGd1dHRlcnMsIGFmdGVyKSxcbiAgICApKTtcbiAgfVxuXG4gIEBpZiAkc3ltbWV0cmljYWwge1xuICAgICRvdXRwdXQ6IG1hcC1tZXJnZSgkb3V0cHV0LCAod2lkdGg6IGdldC1zcGFuLXdpZHRoKCRzcGFuKSkpO1xuICB9XG5cbiAgJGJveCAgICAgICAgICA6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRzcGFuKTtcbiAgJGdsb2JhbC1ib3ggICA6IGlmKHN1c3ktZ2V0KGdsb2JhbC1ib3gtc2l6aW5nKSA9PSAnYm9yZGVyLWJveCcsIHRydWUsIGZhbHNlKTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QoZ2FsbGVyeSwgJGluc3BlY3QpO1xuXG4gIC8vIENvbGxlY3RpdmUgT3V0cHV0XG4gIEBpZiAkYm94ID09IGJvcmRlci1ib3ggb3IgKCRpbnNpZGUgYW5kIG5vdCgkYm94KSBhbmQgbm90KCRnbG9iYWwtYm94KSkge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogYm9yZGVyLWJveCkpO1xuICB9IEBlbHNlIGlmICRib3ggPT0gY29udGVudC1ib3gge1xuICAgIEBpbmNsdWRlIG91dHB1dCgoYm94LXNpemluZzogY29udGVudC1ib3gpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZsb2F0LXNwYW4tb3V0cHV0KCRvdXRwdXQuLi4pO1xuXG4gIC8vIEluZGl2aWR1YWwgTG9vcFxuICBAZm9yICRpdGVtIGZyb20gMSB0aHJvdWdoICRsaW5lIHtcbiAgICAkbnRoOiAnI3skbGluZX1uICsgI3skaXRlbX0nO1xuICAgICY6bnRoLSN7JHNlbGVjdG9yfSgjeyRudGh9KSB7XG4gICAgICAvLyBJbmRpdmlkdWFsIFByZXBcbiAgICAgICRvdXRwdXQ6IChcbiAgICAgICAgd2lkdGggICAgICAgICAgICAgOiBpZigkc3ltbWV0cmljYWwsIG51bGwsIGdldC1zcGFuLXdpZHRoKCRzcGFuKSksXG4gICAgICAgIGZsb2F0ICAgICAgICAgICAgIDogbnVsbCxcbiAgICAgICAgbWFyZ2luLWJlZm9yZSAgICAgOiBnZXQtaXNvbGF0aW9uKCRzcGFuKSxcbiAgICAgICAgbWFyZ2luLWFmdGVyICAgICAgOiAtMTAwJSxcbiAgICAgICAgcGFkZGluZy1iZWZvcmUgICAgOiBudWxsLFxuICAgICAgICBwYWRkaW5nLWFmdGVyICAgICA6IG51bGwsXG4gICAgICAgIGZsb3cgICAgICAgICAgICAgIDogJGZsb3csXG4gICAgICApO1xuXG4gICAgICAvLyBJbmRpdmlkdWFsIE91dHB1dFxuICAgICAgQGluY2x1ZGUgZmxvYXQtc3Bhbi1vdXRwdXQoJG91dHB1dC4uLik7XG5cbiAgICAgIEBpZiBnZXQtZWRnZSgkc3BhbikgPT0gZmlyc3Qge1xuICAgICAgICBAaW5jbHVkZSBicmVhaztcbiAgICAgICAgQGluY2x1ZGUgZmlyc3QoJHNwYW4pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIC8vIEluZGl2aWR1YWwgTG9jYXRpb24gSW5jcmVtZW50XG4gICAgICAkbG9jYXRpb246IGdldC1sb2NhdGlvbigkc3BhbikgKyAkbjtcbiAgICAgICRsb2NhdGlvbjogaWYoJGxvY2F0aW9uID4gJGNvbnRleHQsIDEsICRsb2NhdGlvbik7XG4gICAgICAkc3BhbjogbWFwLW1lcmdlKCRzcGFuLCAobG9jYXRpb246ICRsb2NhdGlvbikpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93IFN0YXJ0ICYgRW5kXG4vLyA9PT09PT09PT09PT09PT1cblxuLy8gQnJlYWtcbi8vIC0tLS0tXG4vLyBBcHBseSB0byBhbnkgZWxlbWVudCB0aGF0IHNob3VsZCBmb3JjZSBhIGxpbmUgYnJlYWsuXG5AbWl4aW4gYnJlYWsge1xuICBAaW5jbHVkZSBvdXRwdXQoKGNsZWFyOiBib3RoKSk7XG59XG5cblxuLy8gTm9CcmVha1xuLy8gLS0tLS0tLVxuLy8gQ2FuY2VsIHRoZSBicmVhaygpIGVmZmVjdCwgZS5nLiB3aGVuIHVzaW5nIG1lZGlhIHF1ZXJpZXMuXG5AbWl4aW4gbm9icmVhayB7XG4gIEBpbmNsdWRlIG91dHB1dCgoY2xlYXI6IG5vbmUpKTtcbn1cblxuXG4vLyBGdWxsXG4vLyAtLS0tXG4vLyAtIFskY29udGV4dF06IDxsYXlvdXQgc2hvcnRoYW5kPlxuQG1peGluIGZ1bGwoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0IDogJGNvbnRleHQ7XG4gIEBpbmNsdWRlIHN1c3ktaW5zcGVjdChmdWxsLCAkaW5zcGVjdCk7XG4gIEBpbmNsdWRlIHNwYW4oZnVsbCBvZiBwYXJzZS1ncmlkKCRjb250ZXh0KSBicmVhayk7XG59XG5cblxuLy8gRmlyc3Rcbi8vIC0tLS0tXG4vLyAtIFskY29udGV4dF06IDxzZXR0aW5ncz5cbkBtaXhpbiBmaXJzdChcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgJGluc3BlY3QgIDogJGNvbnRleHQ7XG4gICRjb250ZXh0ICA6IHBhcnNlLWdyaWQoJGNvbnRleHQpO1xuICAkZmxvdyAgICAgOiBzdXN5LWdldChmbG93LCAkY29udGV4dCk7XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGZpcnN0LCAkaW5zcGVjdCk7XG4gIEBpZiBub3QoaXMtc3BsaXQoJGNvbnRleHQpKSB7XG4gICAgQGluY2x1ZGUgZmxvYXQtZmlyc3QoJGZsb3cpO1xuICB9XG59XG5cbkBtaXhpbiBhbHBoYShcbiAgJGNvbnRleHQ6ICRzdXN5XG4pIHtcbiAgQGluY2x1ZGUgZmlyc3QoJGNvbnRleHQpO1xufVxuXG5cbi8vIExhc3Rcbi8vIC0tLS1cbi8vIC0gWyRjb250ZXh0XTogPHNldHRpbmdzPlxuQG1peGluIGxhc3QoXG4gICRjb250ZXh0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICA6ICRjb250ZXh0O1xuICAkY29udGV4dCAgOiBwYXJzZS1ncmlkKCRjb250ZXh0KTtcblxuICBAaW5jbHVkZSBzdXN5LWluc3BlY3QobGFzdCwgJGluc3BlY3QpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBmbG93OiBzdXN5LWdldChmbG93LCAkY29udGV4dCksXG4gICAgbGFzdC1mbG93OiBzdXN5LWdldChsYXN0LWZsb3csICRjb250ZXh0KSxcbiAgICBtYXJnaW46IGlmKGlzLXNwbGl0KCRjb250ZXh0KSwgbnVsbCwgMCksXG4gICk7XG5cbiAgQGluY2x1ZGUgZmxvYXQtbGFzdCgkb3V0cHV0Li4uKTtcbn1cblxuQG1peGluIG9tZWdhKFxuICAkY29udGV4dDogJHN1c3lcbikge1xuICBAaW5jbHVkZSBsYXN0KCRjb250ZXh0KTtcbn1cblxuXG4vLyBHZXQgRWRnZVxuLy8gLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBlZGdlIHZhbHVlIGJhc2VkIG9uIGxvY2F0aW9uLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1lZGdlKFxuICAkc3BhblxuKSB7XG4gICRzcGFuICAgICAgIDogcGFyc2Utc3Bhbigkc3Bhbik7XG4gICRlZGdlICAgICAgIDogc3VzeS1nZXQoZWRnZSwgJHNwYW4pO1xuXG4gIEBpZiBub3QoJGVkZ2UpIHtcbiAgICAkY291bnQ6IHN1c3ktY291bnQoc3VzeS1nZXQoY29sdW1ucywgJHNwYW4pKTtcbiAgICAkbG9jYXRpb246IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICAgJG46IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICAgICRudW1iZXI6IGlmKHR5cGUtb2YoJGxvY2F0aW9uKSA9PSBudW1iZXIsIHRydWUsIGZhbHNlKTtcbiAgICAkaW5kZXg6IGlmKCRudW1iZXIgYW5kIHVuaXRsZXNzKCRsb2NhdGlvbiksIHRydWUsIGZhbHNlKTtcblxuICAgIEBpZiAkbiA9PSAkY291bnQge1xuICAgICAgJGVkZ2U6IGZ1bGw7XG4gICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gYW5kICRuIGFuZCAkaW5kZXgge1xuICAgICAgQGlmICRsb2NhdGlvbiA9PSAxIHtcbiAgICAgICAgJGVkZ2U6IGlmKCRuID09ICRjb3VudCwgZnVsbCwgZmlyc3QpO1xuICAgICAgfSBAZWxzZSBpZiAkbG9jYXRpb24gKyAkbiAtIDEgPT0gJGNvdW50IHtcbiAgICAgICAgJGVkZ2U6IGxhc3Q7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRlZGdlID09IGFscGhhIG9yICRlZGdlID09IG9tZWdhIHtcbiAgICAkZWRnZTogaWYoJGVkZ2UgPT0gYWxwaGEsIGZpcnN0LCBsYXN0KTtcbiAgfVxuXG4gIEByZXR1cm4gJGVkZ2U7XG59XG5cblxuLy8gR2V0IExvY2F0aW9uXG4vLyAtLS0tLS0tLS0tLS1cbi8vIENhbGN1bGF0ZSBsb2NhdGlvbiB2YWx1ZSBiYXNlZCBvbiBlZGdlLCBpZiBwb3NzaWJsZVxuQGZ1bmN0aW9uIGdldC1sb2NhdGlvbihcbiAgJHNwYW5cbikge1xuICAkc3BhbiAgICAgICA6IHBhcnNlLXNwYW4oJHNwYW4pO1xuICAkbG9jYXRpb24gICA6IHN1c3ktZ2V0KGxvY2F0aW9uLCAkc3Bhbik7XG4gICRlZGdlICAgICAgIDogZ2V0LWVkZ2UoJHNwYW4pO1xuICAkbiAgICAgICAgICA6IHN1c3ktZ2V0KHNwYW4sICRzcGFuKTtcblxuICBAaWYgJGVkZ2UgYW5kIG5vdCgkbG9jYXRpb24pIGFuZCB0eXBlLW9mKCRuKSA9PSBudW1iZXIgYW5kIHVuaXRsZXNzKCRuKSB7XG4gICAgQGlmICRlZGdlID09IGZpcnN0IHtcbiAgICAgICRsb2NhdGlvbjogMTtcbiAgICB9IEBlbHNlIGlmICRlZGdlID09IGxhc3Qge1xuICAgICAgJGxvY2F0aW9uOiBzdXN5LWNvdW50KHN1c3ktZ2V0KGNvbHVtbnMsICRzcGFuKSkgLSAkbiArIDE7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbG9jYXRpb25cbn1cbiIsIi8vIEZsb2F0IEVuZHMgQVBJXG4vLyA9PT09PT09PT09PT09PVxuXG4vLyBTdXN5IEVuZCBEZWZhdWx0c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIC0gUFJJVkFURVxuQGluY2x1ZGUgc3VzeS1kZWZhdWx0cygoXG4gIGxhc3QtZmxvdzogdG8sXG4pKTtcblxuLy8gRmxvYXQgTGFzdFxuLy8gLS0tLS0tLS0tLVxuLy8gLSBbJGZsb3ddICA6IGx0ciB8IHJ0bFxuQG1peGluIGZsb2F0LWxhc3QoXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KSxcbiAgJGxhc3QtZmxvdzogbWFwLWdldCgkc3VzeS1kZWZhdWx0cywgbGFzdC1mbG93KSxcbiAgJG1hcmdpbjogMFxuKSB7XG4gICR0bzogdG8oJGZsb3cpO1xuXG4gICRvdXRwdXQ6IChcbiAgICBmbG9hdDogaWYoJGxhc3QtZmxvdyA9PSB0bywgJHRvLCBudWxsKSxcbiAgICBtYXJnaW4tI3skdG99OiAkbWFyZ2luLFxuICApO1xuXG4gIEBpbmNsdWRlIG91dHB1dCgkb3V0cHV0KTtcbn1cblxuLy8gRmxvYXQgRmlyc3Rcbi8vIC0tLS0tLS0tLS0tXG4vLyAtIFskZmxvd10gIDogbHRyIHwgcnRsXG5AbWl4aW4gZmxvYXQtZmlyc3QoXG4gICRmbG93OiBtYXAtZ2V0KCRzdXN5LWRlZmF1bHRzLCBmbG93KVxuKSB7XG4gICRvdXRwdXQ6IChcbiAgICBtYXJnaW4tI3tmcm9tKCRmbG93KX06IDAsXG4gICk7XG5cbiAgQGluY2x1ZGUgb3V0cHV0KCRvdXRwdXQpO1xufVxuIiwiLmdhbGxlcmllc3tcblxuXHQmX193cmFwcGVye1xuXHRcdHdpZHRoOnNwYW4oMjQpO1xuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXHRcdC5nYWxsZXJ5e1xuXHRcdFx0Jl9fd3JhcHBlcntcblx0XHRcdFx0d2lkdGg6c3BhbigyNCk7XG5cdFx0XHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXHRcdFx0XHQuaXRlbXtcblx0XHRcdFx0XHRmbG9hdDpsZWZ0O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICBcdFx0XHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgIFx0XHRcdFx0XHR6LWluZGV4OiAyO1xuICAgIFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdCZfX3dyYXBwZXJ7XG5cdFx0XHRcdFx0XHR3aWR0aDooMTAwLzMpKjElO1xuXHRcdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFx0XHRcdFx0Lml0ZW0uc21hbGx7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxMDAlO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmLmhhbGZ7XG5cdFx0XHRcdFx0XHR3aWR0aDooMTAwLzMpKjIlO1xuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206ICgxMDAvMykqMSU7XG4gICAgXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ji5zbWFsbHtcblx0XHRcdFx0XHRcdHdpZHRoOigxMDAvMykqMSU7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogKDEwMC8zKSoxJTtcbiAgICBcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmLmxhcmdle1xuXHRcdFx0XHRcdFx0d2lkdGg6KDEwMC8zKSoyJTtcblx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAoMTAwLzMpKjIlO1xuICAgIFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYuaGFzLXZpcnR1YWx7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG5cdFx0XHRcdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHRcdFx0IHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG5cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGF7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHR0b3A6MDtcblx0XHRcdFx0XHRcdFx0Ym90dG9tOjA7XG5cdFx0XHRcdFx0XHRcdHJpZ2h0OjA7XG5cdFx0XHRcdFx0XHRcdGxlZnQ6MDtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDpyZ2JhKHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKSwwLjcpO1xuXHRcdFx0XHRcdFx0XHRmb250LWZhbWlseTogJGZvbnQtcmVndWxhcjtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTQpO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjpzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHQmOmhvdmVye1xuXHRcdFx0XHRcdFx0XHRcdHNwYW57XG5cdFx0XHRcdFx0XHRcdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0XHRcdFx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0XHRcdFx0XHRcdCAgICBiYWNrZ3JvdW5kOiBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXHRcdFx0XHRcdFx0XHRcdFx0ICAgIGhlaWdodDogM3B4O1xuXHRcdFx0XHRcdFx0XHRcdFx0ICAgIHdpZHRoOiAxMjAlO1xuXHRcdFx0XHRcdFx0XHRcdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdFx0XHRcdCAgICBib3R0b206IC05cHg7XG5cdFx0XHRcdFx0XHRcdFx0XHQgICAgbGVmdDogNTAlO1xuXHRcdFx0XHRcdFx0XHRcdFx0ICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXHRcdFx0XHRcdFx0XHRcdFx0ICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdFx0XHRcdFx0XHRcdFx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXHRcdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRzcGFue1xuXHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHRcdHRvcDo1MCU7XG5cdFx0XHRcdFx0XHRcdFx0bGVmdDo1MCU7XG5cdFx0XHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcblx0XHRcdFx0XHRcdFx0XHQmOmFmdGVye1xuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjVweDtcblx0XHRcdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG5cdFx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdFx0ICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcblx0XHRcdFx0XHRcdFx0XHQgICAgZm9udC1zaXplOiBpbmhlcml0O1xuXHRcdFx0XHRcdFx0XHRcdCAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcblx0XHRcdFx0XHRcdFx0XHQgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdFx0XHRcdFx0XHRcdFx0ICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLmMtY29yZG9ubmVlc3tcblx0Jl9fd3JhcHBlcntcblx0XHQuY29vcmR7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTo1MHB4O1xuXHRcdH1cblx0XHQuc2Vwe1xuXHRcdFx0bWFyZ2luLWJvdHRvbTo1MHB4O1xuXHRcdH1cblx0fVxufSIsIiRnYWxsZXJ5LWd1dHRlcnMgOiAoXG5cdGNvbHVtbnM6IDI0LFxuXHRndXR0ZXJzOiAwLjFcbik7XG5cbi5jLWZpbHRlcnMge1xuXHRtYXJnaW4tdG9wOiA1NXB4O1xuXHRtYXJnaW4tYm90dG9tOiA0NXB4O1xuXG5cdCZfX3dyYXBwZXJ7XG5cdFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdFx0LmZpbHRlcnNfX3VzZWQge1xuXHRcdFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cblx0XHRcdC5maWx0ZXIge1xuXHRcdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxMyk7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdCAgICBwYWRkaW5nOiAxMHB4O1xuXHRcdFx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdCAgICBmbG9hdDogbGVmdDtcblx0XHRcdCAgICBtYXJnaW46N3B4IDA7XG5cdFx0XHQgICAgYmFja2dyb3VuZDogcmdiYShzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCAnbGluZScpLCAwLjM1KTtcblx0XHRcdCAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XG5cdFx0XHQgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjdweDtcblx0XHRcdFx0XHRjb250ZW50OiBcIlxcZjAwZFwiO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0ICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE0cHgvMSBGb250QXdlc29tZTtcblx0XHRcdFx0ICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0XHRcdFx0ICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuXHRcdFx0XHQgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdFx0XHRcdCAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHQgICAgXHRiYWNrZ3JvdW5kOiByZ2JhKHNjaGVtZS1jb2xvcigncHJpbWFyeScsICdsaW5lJyksIDEpO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuZmlsdGVyX19saXN0IHtcblx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOjA7XG5cdFx0XHRAZXh0ZW5kICVjbGVhcmZpeDtcblxuXHRcdFx0LmNoZWNrYm94IHtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdH1cblxuXHRcdFx0JiA+IGxpIHtcblx0XHRcdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnbGlnaHQnKTtcblx0XHRcdFx0YmFja2dyb3VuZDpzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdiYXNlJyk7XG5cdFx0XHRcdGJvcmRlcjoxcHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdFx0XHRkaXNwbGF5OmlubGluZS1ibG9jaztcblx0XHRcdFx0ZmxvYXQ6bGVmdDtcblx0XHRcdFx0XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRsZy1vbmx5LCR4bGctb25seSkge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHdpdGgtbGF5b3V0KCRnYWxsZXJ5LWd1dHRlcnMpIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGdhbGxlcnkoNCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRzbS1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgd2l0aC1sYXlvdXQoJGdhbGxlcnktZ3V0dGVycykge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ2FsbGVyeSgxMik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206MTVweDtcblx0XHRcdFx0fVxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbToxNXB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly93aWR0aDpzcGFuKDQgaW5zaWRlIG5vLWd1dHRlcnMpO1xuXHRcdFx0XHQvL21hcmdpbi1yaWdodDo1cHg7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1yZWd1bGFyO1xuXHRcdFx0XHRwYWRkaW5nOiA4cHggMjBweDtcblx0XHRcdFx0cG9zaXRpb246cmVsYXRpdmU7XG5cdFx0XHRcdC8vY3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkbGctb25seSwkeGxnLW9ubHkpIHtcblx0XHRcdFx0XHQmOmhvdmVye1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDpzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXHRcdFx0XHRcdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG5cdFx0XHRcdFx0XHR1bHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTpibG9jaztcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJHNtLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdFx0XHQmLm9wZW4ge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDpzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXHRcdFx0XHRcdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdFx0Ly9ib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0XHRcdFx0XHRcdHVse1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OmJsb2NrO1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXHRcdFx0XHRcdFx0Ym9yZGVyOiAwO1xuICAgIFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6MTVweDtcbiAgICBcdFx0XHRcdFx0XHRsaXtcbiAgICBcdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDowO1xuICAgIFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XHRcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdGJvcmRlcjowO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDowO1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6bm9uZTtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0XHRcdHBhZGRpbmc6MDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Y29sb3I6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2dyZXknKTtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OjA7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdC8vY29sb3I6c2NoZW1lLWNvbG9yKCdsaW5rJywgJ21lbnUnKTtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6NXB4O1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHQgICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIiw7XG5cdFx0XHRcdCAgICBAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkc20tb25seSwkbWQtb25seSkge1xuXHRcdFx0XHQgICAgXHRjb250ZW50IDogJyc7XG5cdFx0XHRcdCAgICB9XG5cdFx0XHRcdH1cblx0XHRcdFx0JjpiZWZvcmV7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJHNtLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdFx0ICAgIFx0cGFkZGluZy1sZWZ0OjVweDtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0ICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCIsO1xuXHRcdFx0XHRcdCAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgXHRcdFx0XHRcdHJpZ2h0OiAyNXB4O1xuICAgIFx0XHRcdFx0XHRjb2xvcjojZmZmO1xuXHRcdFx0XHQgICAgfVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHVse1xuXHRcdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0XHRkaXNwbGF5Om5vbmU7XG5cdFx0XHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0XHRcdGJvcmRlcjoxcHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0XHRwYWRkaW5nOiAxcHg7XG5cdFx0XHRcdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuXHRcdFx0XHRsZWZ0OiAtMXB4OyB0b3A6IDEwMCU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0ICAgIHBhZGRpbmc6IDA7XG5cdFx0XHQgICAgY29sb3I6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2dyZXknKTtcblx0XHRcdCAgICBAaW5jbHVkZSBjYWxjLXJlbSgxMSk7XG5cdFx0XHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ICAgIHotaW5kZXg6IDkwMTtcblx0XHRcdCAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuXHRcdFx0ICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG5cblx0XHRcdCAgICBsaSB7XG5cdFx0XHRcdFx0cGFkZGluZzogM3B4IDIwcHg7XG5cdFx0XHQgICAgfVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG59IiwiJGdhbGxlcnktZ3V0dGVycyA6IChcblx0Y29sdW1uczogNixcblx0Z3V0dGVyczogMC4zXG4pO1xuXG4uYy1ncmlke1xuXHQmX193cmFwcGVye1xuXG5cdFx0Lml0ZW17XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkbGctb25seSwkeGxnLW9ubHkpIHtcblx0XHRcdFx0QGluY2x1ZGUgd2l0aC1sYXlvdXQoJGdhbGxlcnktZ3V0dGVycykge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdhbGxlcnkoMik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnRzKCRzbS1vbmx5LCRtZC1vbmx5KSB7XG5cdFx0XHRcdEBpbmNsdWRlIHdpdGgtbGF5b3V0KCRnYWxsZXJ5LWd1dHRlcnMpIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBnYWxsZXJ5KDMpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuXHRcdFx0XHR3aWR0aDoxMDAlO1xuXHRcdFx0fVxuXG5cdFx0XHRib3JkZXI6MXB4IHNvbGlkIHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpbmUnKTtcblx0XHRcdG1hcmdpbi1ib3R0b206MTVweDtcblxuXHRcdFx0QGV4dGVuZCAlY2xlYXJmaXg7XG5cdFx0XHRoMiwgaDMsIGg0LCBoNSwgaDYge1xuXHRcdFx0XHRtYXJnaW4tdG9wOjVweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRsaWdodDtcblx0XHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oMzEpO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHQuc3VydGl0cmUge1xuXHRcdFx0XHRcdGRpc3BsYXk6YmxvY2s7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRibGFjaztcblx0XHRcdFx0XHRAaW5jbHVkZSBjYWxjLXJlbSgxMyk7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDIwcHg7XG5cdFx0XHRcdFx0Y29sb3I6c2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnZ3JleScpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCZfX21lZGlhe1xuXHRcdFx0XHRwb3NpdGlvbjpyZWxhdGl2ZTtcblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGF7XG5cdFx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHRcdCY6YmVmb3JlLCY6YWZ0ZXJ7XG5cdFx0XHRcdFx0XHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdFx0ICAgIFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjpiZWZvcmV7XG5cdFx0XHRcdFx0XHRjb250ZW50IDogXCJcIjtcblx0XHRcdFx0XHQgICAgYmFja2dyb3VuZDpyZ2JhKHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKSwgMC44KTtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOmFic29sdXRlO1xuXHRcdFx0XHRcdFx0dG9wOjA7XG5cdFx0XHRcdFx0XHRib3R0b206MDtcblx0XHRcdFx0XHRcdGxlZnQ6MDtcblx0XHRcdFx0XHRcdHJpZ2h0OjA7XG5cdFx0XHRcdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0ICAgIFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0ICAgIFx0XHRcdHRyYW5zaXRpb246IHZpc2liaWxpdHkgMC41cywgb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xuXHRcdCAgICBcdFx0XHR6LWluZGV4OiA5OTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0JjphZnRlcntcblx0XHRcdFx0XHRcdGNvbnRlbnQgOiBcIlxcZjAwMlwiO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdCAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG5cdFx0XHRcdFx0ICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0XHRcdFx0XHQgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG5cdFx0XHRcdFx0ICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRcdFx0XHRcdCAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHRcdFx0XHRcdCAgICBjb2xvcjpzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdsaWdodCcpO1xuXHRcdFx0XHRcdCAgICBAaW5jbHVkZSBjYWxjLXJlbSg0NSk7XG5cdFx0XHRcdFx0ICAgIC8vLXdlYmtpdC10ZXh0LXN0cm9rZTogM3B4IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblx0XHRcdFx0XHQgICAgcG9zaXRpb246YWJzb2x1dGU7XG5cdFx0XHRcdFx0ICAgIHRvcDo1MCU7XG5cdFx0XHRcdFx0ICAgIGxlZnQ6NTAlO1xuXHRcdFx0XHRcdCAgICB0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7XG5cdFx0XHRcdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0ICAgIFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0ICAgIFx0XHRcdHRyYW5zaXRpb246IHZpc2liaWxpdHkgMC41cywgb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xuXHRcdCAgICBcdFx0XHR6LWluZGV4OiAxMDA7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdC5pdGVtX19ib2R5e1xuXHRcdFx0XHQmX193cmFwcGVye1xuXHRcdFx0XHRcdHBhZGRpbmc6MCAxMHB4O1xuXG5cdFx0XHRcdH1cblxuXHRcdFx0fVxuXHRcdFx0LnNvY2lhbHtcblx0XHRcdFx0Ym9yZGVyLXRvcDoxcHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnbGluZScpO1xuXHRcdFx0XHQmX193cmFwcGVye1xuXHRcdFx0XHRcdHBhZGRpbmc6MCAxMHB4O1xuXHRcdFx0XHRcdGgyLGgzLGg0LGg1LGg2e1xuXG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOjVweDtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1yZWd1bGFyO1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgY2FsYy1yZW0oMTcpO1xuXHRcdFx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206NXB4O1xuXHRcdFx0XHRcdFx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XG5cblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LmFkZHRoaXNfdG9vbGJveHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6NXB4O1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgbGlua3MgKCRsaW5rOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnaG92ZXInKSwgJHZpc2l0OiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnaG92ZXInKSwgJGhvdmVyOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnYmFzZScpLCAkYWN0aXZlOiBzY2hlbWUtY29sb3IoJ2xpbmsnLCAnYmFzZScpKTtcblx0XHRcdFx0XHRcdGF7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OjEwcHg7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdH1cbn0iLCIuYy1zZWFyY2h7XG5cdGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAtNjFweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSkge1xuICAgIFx0ZmxvYXQ6bm9uZTtcbiAgICBcdGRpc3BsYXk6YmxvY2s7XG4gICAgXHRtYXJnaW4tdG9wOjE1cHg7XG4gICAgfVxuXHQuc2VhcmNoLWZpZWxke1xuXHRcdGJvcmRlcjoycHggc29saWQgc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdCAgICBmbG9hdDogbGVmdDtcblx0XHQgZm9udC1mYW1pbHk6ICRmb250LXJlZ3VsYXI7XG5cdFx0IGZvbnQtd2VpZ2h0OjkwMDtcblx0XHQgY29sb3I6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblx0XHQgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHQgcGFkZGluZzo4cHggMCA4cHggMTVweDtcblx0XHQgJjpmb2N1c3tcblx0XHQgXHRvdXRsaW5lOiBub25lO1xuXHRcdCB9XG5cdFx0IEBpbmNsdWRlIGJyZWFrcG9pbnRzKCR4cy1vbmx5KSB7XG5cdFx0IFx0d2lkdGg6ODAlO1xuXHRcdCB9XG5cdH1cblx0LnNlYXJjaC1zdWJtaXR7XG5cdFx0Ym9yZGVyOjJweCBzb2xpZCBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdiYXNlJyk7XG5cdFx0YmFja2dyb3VuZDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2xpZ2h0Jyk7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0cGFkZGluZzogOHB4IDEwcHggOHB4O1xuICAgIFx0Ym9yZGVyLWxlZnQ6IDA7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjtcblx0XHQgQGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHkpIHtcblx0XHQgXHR3aWR0aDoyMCU7XG5cdFx0IH1cblx0XHQmOmhvdmVye1xuXHRcdFx0YmFja2dyb3VuZDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnbGlnaHQnKTtcblx0XHRcdGNvbG9yOnNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKTtcblx0XHR9XG5cdH1cbn0iLCIuYy1jb250YWN0e1xuXHQuaGVhZF9vZmZpY2VfaW5mb3tcblx0XHR3aWR0aDogc3BhbigxMiBpbnNpZGUgbm8tZ3V0dGVycyk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0fVxuXHRcdGZsb2F0OmxlZnQ7XG5cdFx0bWFyZ2luLWJvdHRvbToxNXB4O1xuXHR9XG5cdC5yZXF1ZXN0X2luZm9ze1xuXHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXHRcdFxuXG5cdH1cblx0LmhhbGYge1xuXHQgICAgd2lkdGg6IHNwYW4oMTIpO1xuXHQgICAgQGluY2x1ZGUgYnJlYWtwb2ludHMoJHhzLW9ubHksJG1kLW9ubHkpIHtcblx0XHRcdHdpZHRoOjEwMCU7XG5cdFx0fVxuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgICAgZmxvYXQ6IGxlZnQ7XG5cdCAgICAmLmhhbGYtcmlnaHR7XG5cdCAgICBcdGZsb2F0OnJpZ2h0O1xuXHQgICAgXHR0ZXh0YXJlYXtcblx0ICAgIFx0XHRtYXJnaW4tYm90dG9tOjA7XG5cdCAgICBcdH1cblx0ICAgIH1cblx0fVxuXHQucHJvamVjdHN7XG5cdFx0cGFkZGluZy1ib3R0b206MjVweDtcblx0XHQuaXRlbXtcblx0XHRcdEBleHRlbmQgJWNsZWFyZml4O1xuXHRcdFx0I2NvbnRhY3RfYWRkcmVzcywub3Blbl9ob3Vyc3tcblx0XHRcdFx0aDIsaDMsaDQsaDUsaDZ7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDowO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHRcdC5vcGVuX2hvdXJze1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50cygkeHMtb25seSwkbWQtb25seSkge1xuXHRcdFx0XHRcdGgyLGgzLGg0LGg1LGg2e1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDoxNXB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnNlcHtcblx0XHRcdFx0cGFkZGluZzogMjBweCAwIDIwcHggMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdFxufSIsIi5wYWdpbmF0aW9uIHtcblx0QGluY2x1ZGUgbGlua3MgKCRsaW5rOiBzY2hlbWUtY29sb3IoJ3ByaW1hcnknLCdiYXNlJyksICR2aXNpdDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpLCAkaG92ZXI6IHNjaGVtZS1jb2xvcigncHJpbWFyeScsJ2Jhc2UnKSwgJGFjdGl2ZTogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LWZhbWlseTogJGZvbnQtcmVndWxhcjtcblx0Ly9mb250LXdlaWdodDogJGJvbGQ7XG5cdEBpbmNsdWRlIGNhbGMtcmVtKDE2KTtcblx0bGluZS1oZWlnaHQ6IDE7XG5cblx0bWFyZ2luLXRvcDogMTAwcHg7XG5cblx0Jl93cmFwcGVyIHtcblxuXHR9XG5cblx0Lm5leHQucGFnZS1udW1iZXJzIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Ly90ZXh0LWluZGVudDogLTk5OTk5cHg7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdC8vQGluY2x1ZGUgc3ByaXRlKCRhcnJvdy1yaWdodC1ibGFjayk7XG5cdFx0XHRjb250ZW50OiBcIlxcZjA1NFwiO1xuXHQgICAgXHRmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcblx0XHR9XG5cdH1cblxuXHQucHJldi5wYWdlLW51bWJlcnMge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQvL3RleHQtaW5kZW50OiAtOTk5OTlweDtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Ly9AaW5jbHVkZSBzcHJpdGUoJGFycm93LWxlZnQtYmxhY2spO1xuXHRcdFx0Y29udGVudDogXCJcXGYwNTNcIjtcblx0XHRcdGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFxuXHRcdH1cblx0fVxuXG5cdC5wYWdlLW51bSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdGEsIHNwYW4uY3VycmVudCB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6IDEycHggMThweDtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRib3gtc2hhZG93OiBpbnNldCAwcHggMHB4IDBweCAycHggc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdH1cblxuXHRcdCYubmV4dDpob3ZlciB7XG5cdFx0XHQvL2JveC1zaGFkb3c6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0c3Bhbi5jdXJyZW50IHtcblx0XHQvL2ZvbnQtd2VpZ2h0OiAkaGVhdnk7XG5cdFx0YmFja2dyb3VuZDogc2NoZW1lLWNvbG9yKCdwcmltYXJ5JywnYmFzZScpO1xuXHRcdGNvbG9yOiAjZmZmO1xuXHR9XG59IiwiLy8gQ29udGFpbmVyIFN5bnRheFxuLy8gPT09PT09PT09PT09PT09PVxuXG4vLyBDb250YWluZXIgW21peGluXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNldCBhIGNvbnRhaW5lciBlbGVtZW50XG4vLyAtIFskbGF5b3V0XSAgOiA8c2V0dGluZ3M+XG5AbWl4aW4gY29udGFpbmVyKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRpbnNwZWN0ICAgIDogJGxheW91dDtcbiAgJGxheW91dCAgICAgOiBwYXJzZS1ncmlkKCRsYXlvdXQpO1xuXG4gICRfd2lkdGggICAgIDogZ2V0LWNvbnRhaW5lci13aWR0aCgkbGF5b3V0KTtcbiAgJF9qdXN0aWZ5ICAgOiBwYXJzZS1jb250YWluZXItcG9zaXRpb24oc3VzeS1nZXQoY29udGFpbmVyLXBvc2l0aW9uLCAkbGF5b3V0KSk7XG4gICRfcHJvcGVydHkgIDogaWYoc3VzeS1nZXQobWF0aCwgJGxheW91dCkgPT0gc3RhdGljLCB3aWR0aCwgbWF4LXdpZHRoKTtcblxuICAkX2JveCAgICAgICA6IHN1c3ktZ2V0KGJveC1zaXppbmcsICRsYXlvdXQpO1xuXG4gIEBpZiAkX2JveCB7XG4gICAgQGluY2x1ZGUgb3V0cHV0KChib3gtc2l6aW5nOiAkX2JveCkpO1xuICB9XG5cbiAgQGluY2x1ZGUgc3VzeS1pbnNwZWN0KGNvbnRhaW5lciwgJGluc3BlY3QpO1xuICBAaW5jbHVkZSBmbG9hdC1jb250YWluZXIoJF93aWR0aCwgJF9qdXN0aWZ5LCAkX3Byb3BlcnR5KTtcbiAgQGluY2x1ZGUgc2hvdy1ncmlkKCRsYXlvdXQpO1xufVxuXG4vLyBDb250YWluZXIgW2Z1bmN0aW9uXVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJldHVybiBjb250YWluZXIgd2lkdGhcbi8vIC0gWyRsYXlvdXRdICA6IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBjb250YWluZXIoXG4gICRsYXlvdXQ6ICRzdXN5XG4pIHtcbiAgJGxheW91dDogcGFyc2UtZ3JpZCgkbGF5b3V0KTtcbiAgQHJldHVybiBnZXQtY29udGFpbmVyLXdpZHRoKCRsYXlvdXQpO1xufVxuXG4vLyBHZXQgQ29udGFpbmVyIFdpZHRoXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDYWxjdWxhdGUgdGhlIGNvbnRhaW5lciB3aWR0aFxuLy8gLSBbJGxheW91dF06IDxzZXR0aW5ncz5cbkBmdW5jdGlvbiBnZXQtY29udGFpbmVyLXdpZHRoKFxuICAkbGF5b3V0OiAkc3VzeVxuKSB7XG4gICRsYXlvdXQgICAgICAgICA6IHBhcnNlLWdyaWQoJGxheW91dCk7XG4gICRfd2lkdGggICAgICAgICA6IHN1c3ktZ2V0KGNvbnRhaW5lciwgJGxheW91dCk7XG4gICRfY29sdW1uLXdpZHRoICA6IHN1c3ktZ2V0KGNvbHVtbi13aWR0aCwgJGxheW91dCk7XG4gICRfbWF0aCAgICAgICAgICA6IHN1c3ktZ2V0KG1hdGgsICRsYXlvdXQpO1xuXG4gIEBpZiBub3QoJF93aWR0aCkgb3IgJF93aWR0aCA9PSBhdXRvIHtcbiAgICBAaWYgdmFsaWQtY29sdW1uLW1hdGgoJF9tYXRoLCAkX2NvbHVtbi13aWR0aCkge1xuICAgICAgJF9jb2x1bW5zICAgOiBzdXN5LWdldChjb2x1bW5zLCAkbGF5b3V0KTtcbiAgICAgICRfZ3V0dGVycyAgIDogc3VzeS1nZXQoZ3V0dGVycywgJGxheW91dCk7XG4gICAgICAkX3NwcmVhZCAgICA6IGlmKGlzLXNwbGl0KCRsYXlvdXQpLCB3aWRlLCBuYXJyb3cpO1xuICAgICAgJF93aWR0aCAgICAgOiBzdXN5LXN1bSgkX2NvbHVtbnMsICRfZ3V0dGVycywgJF9zcHJlYWQpICogJF9jb2x1bW4td2lkdGg7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkX3dpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJF93aWR0aDtcbn1cblxuLy8gUGFyc2UgQ29udGFpbmVyIFBvc2l0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBhcnNlIHRoZSAkY29udGFpbmVyLXBvc2l0aW9uIGludG8gbWFyZ2luIHZhbHVlcy5cbi8vIC0gWyRqdXN0aWZ5XSAgIDogbGVmdCB8IGNlbnRlciB8IHJpZ2h0IHwgPGxlbmd0aD4gWzxsZW5ndGg+XVxuQGZ1bmN0aW9uIHBhcnNlLWNvbnRhaW5lci1wb3NpdGlvbihcbiAgJGp1c3RpZnk6IG1hcC1nZXQoJHN1c3ktZGVmYXVsdHMsIGNvbnRhaW5lci1wb3NpdGlvbilcbikge1xuICAkX3JldHVybjogaWYoJGp1c3RpZnkgPT0gbGVmdCwgMCwgYXV0bykgaWYoJGp1c3RpZnkgPT0gcmlnaHQsIDAsIGF1dG8pO1xuXG4gIEBpZiBub3QoaW5kZXgobGVmdCByaWdodCBjZW50ZXIsICRqdXN0aWZ5KSkge1xuICAgICRfcmV0dXJuOiBudGgoJGp1c3RpZnksIDEpO1xuICAgICRfcmV0dXJuOiAkX3JldHVybiBpZihsZW5ndGgoJGp1c3RpZnkpID4gMSwgbnRoKCRqdXN0aWZ5LCAyKSwgJF9yZXR1cm4pO1xuICB9XG5cbiAgQHJldHVybiAkX3JldHVybjtcbn1cbiIsIi8vIFN1c3kgRmFsbGJhY2sgQ2xlYXJmaXhcbi8vID09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBDbGVhcmZpeFxuLy8gLS0tLS0tLS1cbi8vIENoZWNrIGZvciBhbiBleGlzdGluZyBzdXBwb3J0IG1peGluLCBvciBwcm92aWRlIGEgc2ltcGxlIGZhbGxiYWNrLlxuQG1peGluIHN1c3ktY2xlYXJmaXgge1xuICBAaWYgc3VzeS1zdXBwb3J0KGNsZWFyZml4LCAobWl4aW46IGNsZWFyZml4KSkge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9IEBlbHNlIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */
