/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.navbar-toggler:focus, .navbar-toggler:active {
    outline: none;
    box-shadow: none;
}

/*
* Hide only visually, but have it available for screen readers: h5bp.com/v
*/
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/*
* Extends the .visuallyhidden class to allow the element to be focusable
* when navigated to via the keyboard: h5bp.com/p
*/
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

@font-face {
  font-family: 'Cooper';
  src: url("../fonts/cooper/CooperBlack.eot");
  src: url("../fonts/cooper/CooperBlack.eot?#iefix") format("embedded-opentype"), url("../fonts/cooper/CooperBlack.woff2") format("woff2"), url("../fonts/cooper/CooperBlack.woff") format("woff"), url("../fonts/cooper/CooperBlack.ttf") format("truetype"), url("../fonts/cooper/CooperBlack.svg#CooperBlack") format("svg");
  font-weight: 900;
  font-style: normal;
}

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans/OpenSans-Bold.eot");
  src: url("../fonts/open-sans/OpenSans-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans/OpenSans-Bold.woff2") format("woff2"), url("../fonts/open-sans/OpenSans-Bold.woff") format("woff"), url("../fonts/open-sans/OpenSans-Bold.ttf") format("truetype"), url("../fonts/open-sans/OpenSans-Bold.svg#OpenSans-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans/OpenSans-Light.eot");
  src: url("../fonts/open-sans/OpenSans-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans/OpenSans-Light.woff2") format("woff2"), url("../fonts/open-sans/OpenSans-Light.woff") format("woff"), url("../fonts/open-sans/OpenSans-Light.ttf") format("truetype"), url("../fonts/open-sans/OpenSans-Light.svg#OpenSans-Light") format("svg");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans/OpenSans.eot");
  src: url("../fonts/open-sans/OpenSans.eot?#iefix") format("embedded-opentype"), url("../fonts/open-sans/OpenSans.woff2") format("woff2"), url("../fonts/open-sans/OpenSans.woff") format("woff"), url("../fonts/open-sans/OpenSans.ttf") format("truetype"), url("../fonts/open-sans/OpenSans.svg#OpenSans") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* === ICONS ==== */
@font-face {
  font-family: 'icons';
  src: url("../fonts/icons/icons.eot?8pjbyk");
  src: url("../fonts/icons/icons.eot?8pjbyk#iefix") format("embedded-opentype"), url("../fonts/icons/icons.ttf?8pjbyk") format("truetype"), url("../fonts/icons/icons.woff?8pjbyk") format("woff"), url("../fonts/icons/icons.svg?8pjbyk#icons") format("svg");
  font-weight: normal;
  font-style: normal;
}

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

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

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

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

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

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

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

html,
body {
  font-family: 'Open Sans';
  font-size: 16px;
}

body {
  background-color: #fff;
  color: #aaaaaa;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.wrap {
  overflow: hidden;
}

.wrapper {
  display: block;
  overflow: hidden;
}

.btn {
  display: inline-block;
  font-size: 20px;
  padding: 10px 40px;
  border: 2px solid #f7d300;
  font-weight: bold;
  color: #007cc3;
  text-decoration: none;
  border-radius: 50px;
}

/*!
 * Fotorama 4.6.4 | http://fotorama.io/license/
 */
.fotorama__arr:focus:after, .fotorama__fullscreen-icon:focus:after, .fotorama__html, .fotorama__img, .fotorama__nav__frame:focus .fotorama__dot:after, .fotorama__nav__frame:focus .fotorama__thumb:after, .fotorama__stage__frame, .fotorama__stage__shaft, .fotorama__video iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}

.fotorama--fullscreen, .fotorama__img {
  max-width: 99999px !important;
  max-height: 99999px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.fotorama__wrap .fotorama__grab {
  cursor: move;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab;
}

.fotorama__grabbing * {
  cursor: move;
  cursor: -o-grabbing;
  cursor: -ms-grabbing;
  cursor: grabbing;
}

.fotorama__spinner {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
}

.fotorama__wrap--css3 .fotorama__arr, .fotorama__wrap--css3 .fotorama__fullscreen-icon, .fotorama__wrap--css3 .fotorama__nav__shaft, .fotorama__wrap--css3 .fotorama__stage__shaft, .fotorama__wrap--css3 .fotorama__thumb-border, .fotorama__wrap--css3 .fotorama__video-close, .fotorama__wrap--css3 .fotorama__video-play {
  transform: translate3d(0, 0, 0);
}

.fotorama__caption, .fotorama__nav:after, .fotorama__nav:before, .fotorama__stage:after, .fotorama__stage:before, .fotorama__wrap--css3 .fotorama__html, .fotorama__wrap--css3 .fotorama__nav, .fotorama__wrap--css3 .fotorama__spinner, .fotorama__wrap--css3 .fotorama__stage, .fotorama__wrap--css3 .fotorama__stage .fotorama__img, .fotorama__wrap--css3 .fotorama__stage__frame {
  transform: translateZ(0);
}

.fotorama__arr:focus, .fotorama__fullscreen-icon:focus, .fotorama__nav__frame {
  outline: 0;
}

.fotorama__arr:focus:after, .fotorama__fullscreen-icon:focus:after, .fotorama__nav__frame:focus .fotorama__dot:after, .fotorama__nav__frame:focus .fotorama__thumb:after {
  content: '';
  border-radius: inherit;
  background-color: rgba(0, 175, 234, 0.5);
}

.fotorama__wrap--video .fotorama__stage, .fotorama__wrap--video .fotorama__stage__frame--video, .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__html, .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__img, .fotorama__wrap--video .fotorama__stage__shaft {
  transform: none !important;
}

.fotorama__wrap--css3 .fotorama__nav__shaft, .fotorama__wrap--css3 .fotorama__stage__shaft, .fotorama__wrap--css3 .fotorama__thumb-border {
  transition-property: transform,width;
  transition-timing-function: cubic-bezier(0.1, 0, 0.25, 1);
  transition-duration: 0ms;
}

.fotorama__arr, .fotorama__fullscreen-icon, .fotorama__no-select, .fotorama__video-close, .fotorama__video-play, .fotorama__wrap {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fotorama__select {
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

.fotorama__nav, .fotorama__nav__frame {
  margin: auto;
  padding: 0;
}

.fotorama__caption__wrap, .fotorama__nav__frame, .fotorama__nav__shaft {
  display: inline-block;
  vertical-align: middle;
  *display: inline;
  *zoom: 1;
}

.fotorama__nav__frame, .fotorama__thumb-border {
  box-sizing: content-box;
}

.fotorama__caption__wrap {
  box-sizing: border-box;
}

.fotorama--hidden, .fotorama__load {
  position: absolute;
  left: -99999px;
  top: -99999px;
  z-index: -1;
}

.fotorama__arr, .fotorama__fullscreen-icon, .fotorama__nav, .fotorama__nav__frame, .fotorama__nav__shaft, .fotorama__stage__frame, .fotorama__stage__shaft, .fotorama__video-close, .fotorama__video-play {
  -webkit-tap-highlight-color: transparent;
}

.fotorama__arr, .fotorama__fullscreen-icon, .fotorama__video-close, .fotorama__video-play {
  background: url(fotorama.png) no-repeat;
}

@media (-webkit-min-device-pixel-ratio: 1.5), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .fotorama__arr, .fotorama__fullscreen-icon, .fotorama__video-close, .fotorama__video-play {
    background: url(fotorama@2x.png) 0 0/96px 160px no-repeat;
  }
}

.fotorama__thumb {
  background-color: #7f7f7f;
  background-color: rgba(127, 127, 127, 0.2);
}

@media print {
  .fotorama__arr, .fotorama__fullscreen-icon, .fotorama__thumb-border, .fotorama__video-close, .fotorama__video-play {
    background: none !important;
  }
}

.fotorama {
  min-width: 1px;
  overflow: hidden;
}

.fotorama:not(.fotorama--unobtrusive) > *:not(:first-child) {
  display: none;
}

.fullscreen {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #000;
}

.fotorama--fullscreen {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  float: none !important;
  z-index: 2147483647 !important;
  background: #000;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

.fotorama--fullscreen .fotorama__nav, .fotorama--fullscreen .fotorama__stage {
  background: #000;
}

.fotorama__wrap {
  -webkit-text-size-adjust: 100%;
  position: relative;
  direction: ltr;
  z-index: 0;
}

.fotorama__wrap--rtl .fotorama__stage__frame {
  direction: rtl;
}

.fotorama__nav, .fotorama__stage {
  overflow: hidden;
  position: relative;
  max-width: 100%;
}

.fotorama__wrap--pan-y {
  -ms-touch-action: pan-y;
}

.fotorama__wrap .fotorama__pointer {
  cursor: pointer;
}

.fotorama__wrap--slide .fotorama__stage__frame {
  opacity: 1 !important;
}

.fotorama__stage__frame {
  overflow: hidden;
}

.fotorama__stage__frame.fotorama__active {
  z-index: 8;
}

.fotorama__wrap--fade .fotorama__stage__frame {
  display: none;
}

.fotorama__wrap--fade .fotorama__fade-front, .fotorama__wrap--fade .fotorama__fade-rear, .fotorama__wrap--fade .fotorama__stage__frame.fotorama__active {
  display: block;
  left: 0;
  top: 0;
}

.fotorama__wrap--fade .fotorama__fade-front {
  z-index: 8;
}

.fotorama__wrap--fade .fotorama__fade-rear {
  z-index: 7;
}

.fotorama__wrap--fade .fotorama__fade-rear.fotorama__active {
  z-index: 9;
}

.fotorama__wrap--fade .fotorama__stage .fotorama__shadow {
  display: none;
}

.fotorama__img {
  -ms-filter: "alpha(Opacity=0)";
  filter: alpha(opacity=0);
  opacity: 0;
  border: none !important;
}

.fotorama__error .fotorama__img, .fotorama__loaded .fotorama__img {
  -ms-filter: "alpha(Opacity=100)";
  filter: alpha(opacity=100);
  opacity: 1;
}

.fotorama--fullscreen .fotorama__loaded--full .fotorama__img, .fotorama__img--full {
  display: none;
}

.fotorama--fullscreen .fotorama__loaded--full .fotorama__img--full {
  display: block;
}

.fotorama__wrap--only-active .fotorama__nav, .fotorama__wrap--only-active .fotorama__stage {
  max-width: 99999px !important;
}

.fotorama__wrap--only-active .fotorama__stage__frame {
  visibility: hidden;
}

.fotorama__wrap--only-active .fotorama__stage__frame.fotorama__active {
  visibility: visible;
}

.fotorama__nav {
  font-size: 0;
  line-height: 0;
  text-align: center;
  display: none;
  white-space: nowrap;
  z-index: 5;
}

.fotorama__nav__shaft {
  position: relative;
  left: 0;
  top: 0;
  text-align: left;
}

.fotorama__nav__frame {
  position: relative;
  cursor: pointer;
}

.fotorama__nav--dots {
  display: block;
}

.fotorama__nav--dots .fotorama__nav__frame {
  width: 18px;
  height: 30px;
}

.fotorama__nav--dots .fotorama__nav__frame--thumb, .fotorama__nav--dots .fotorama__thumb-border {
  display: none;
}

.fotorama__nav--thumbs {
  display: block;
}

.fotorama__nav--thumbs .fotorama__nav__frame {
  padding-left: 0 !important;
}

.fotorama__nav--thumbs .fotorama__nav__frame:last-child {
  padding-right: 0 !important;
}

.fotorama__nav--thumbs .fotorama__nav__frame--dot {
  display: none;
}

.fotorama__dot {
  display: block;
  width: 4px;
  height: 4px;
  position: relative;
  top: 12px;
  left: 6px;
  border-radius: 6px;
  border: 1px solid #7f7f7f;
}

.fotorama__nav__frame:focus .fotorama__dot:after {
  padding: 1px;
  top: -1px;
  left: -1px;
}

.fotorama__nav__frame.fotorama__active .fotorama__dot {
  width: 0;
  height: 0;
  border-width: 3px;
}

.fotorama__nav__frame.fotorama__active .fotorama__dot:after {
  padding: 3px;
  top: -3px;
  left: -3px;
}

.fotorama__thumb {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;
}

.fotorama__nav__frame:focus .fotorama__thumb {
  z-index: 2;
}

.fotorama__thumb-border {
  position: absolute;
  z-index: 9;
  top: 0;
  left: 0;
  border-style: solid;
  border-color: #00afea;
  background-image: linear-gradient(to bottom right, rgba(255, 255, 255, 0.25), rgba(64, 64, 64, 0.1));
}

.fotorama__caption {
  position: absolute;
  z-index: 12;
  bottom: 0;
  left: 0;
  right: 0;
  font-family: 'Helvetica Neue',Arial,sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: #000;
}

.fotorama__caption a {
  text-decoration: none;
  color: #000;
  border-bottom: 1px solid;
  border-color: rgba(0, 0, 0, 0.5);
}

.fotorama__caption a:hover {
  color: #333;
  border-color: rgba(51, 51, 51, 0.5);
}

.fotorama__wrap--rtl .fotorama__caption {
  left: auto;
  right: 0;
}

.fotorama__wrap--no-captions .fotorama__caption, .fotorama__wrap--video .fotorama__caption {
  display: none;
}

.fotorama__caption__wrap {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9);
  padding: 5px 10px;
}

@keyframes spinner {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}

.fotorama__wrap--css3 .fotorama__spinner {
  animation: spinner 24s infinite linear;
}

.fotorama__wrap--css3 .fotorama__html, .fotorama__wrap--css3 .fotorama__stage .fotorama__img {
  transition-property: opacity;
  transition-timing-function: linear;
  transition-duration: .3s;
}

.fotorama__wrap--video .fotorama__stage__frame--video .fotorama__html, .fotorama__wrap--video .fotorama__stage__frame--video .fotorama__img {
  -ms-filter: "alpha(Opacity=0)";
  filter: alpha(opacity=0);
  opacity: 0;
}

.fotorama__select {
  cursor: auto;
}

.fotorama__video {
  top: 32px;
  right: 0;
  bottom: 0;
  left: 0;
  position: absolute;
  z-index: 10;
}

@-moz-document url-prefix() {
  .fotorama__active {
    box-shadow: 0 0 0 transparent;
  }
}

.fotorama__arr, .fotorama__fullscreen-icon, .fotorama__video-close, .fotorama__video-play {
  position: absolute;
  z-index: 11;
  cursor: pointer;
}

.fotorama__arr {
  position: absolute;
  width: 32px;
  height: 32px;
  top: 50%;
  margin-top: -16px;
}

.fotorama__arr--prev {
  left: 2px;
  background-position: 0 0;
}

.fotorama__arr--next {
  right: 2px;
  background-position: -32px 0;
}

.fotorama__arr--disabled {
  pointer-events: none;
  cursor: default;
  *display: none;
  opacity: .1;
}

.fotorama__fullscreen-icon {
  width: 32px;
  height: 32px;
  top: 2px;
  right: 2px;
  background-position: 0 -32px;
  z-index: 20;
}

.fotorama__arr:focus, .fotorama__fullscreen-icon:focus {
  border-radius: 50%;
}

.fotorama--fullscreen .fotorama__fullscreen-icon {
  background-position: -32px -32px;
}

.fotorama__video-play {
  width: 96px;
  height: 96px;
  left: 50%;
  top: 50%;
  margin-left: -48px;
  margin-top: -48px;
  background-position: 0 -64px;
  opacity: 0;
}

.fotorama__wrap--css2 .fotorama__video-play, .fotorama__wrap--video .fotorama__stage .fotorama__video-play {
  display: none;
}

.fotorama__error .fotorama__video-play, .fotorama__loaded .fotorama__video-play, .fotorama__nav__frame .fotorama__video-play {
  opacity: 1;
  display: block;
}

.fotorama__nav__frame .fotorama__video-play {
  width: 32px;
  height: 32px;
  margin-left: -16px;
  margin-top: -16px;
  background-position: -64px -32px;
}

.fotorama__video-close {
  width: 32px;
  height: 32px;
  top: 0;
  right: 0;
  background-position: -64px 0;
  z-index: 20;
  opacity: 0;
}

.fotorama__wrap--css2 .fotorama__video-close {
  display: none;
}

.fotorama__wrap--css3 .fotorama__video-close {
  transform: translate3d(32px, -32px, 0);
}

.fotorama__wrap--video .fotorama__video-close {
  display: block;
  opacity: 1;
}

.fotorama__wrap--css3.fotorama__wrap--video .fotorama__video-close {
  transform: translate3d(0, 0, 0);
}

.fotorama__wrap--no-controls.fotorama__wrap--toggle-arrows .fotorama__arr, .fotorama__wrap--no-controls.fotorama__wrap--toggle-arrows .fotorama__fullscreen-icon {
  opacity: 0;
}

.fotorama__wrap--no-controls.fotorama__wrap--toggle-arrows .fotorama__arr:focus, .fotorama__wrap--no-controls.fotorama__wrap--toggle-arrows .fotorama__fullscreen-icon:focus {
  opacity: 1;
}

.fotorama__wrap--video .fotorama__arr, .fotorama__wrap--video .fotorama__fullscreen-icon {
  opacity: 0 !important;
}

.fotorama__wrap--css2.fotorama__wrap--no-controls.fotorama__wrap--toggle-arrows .fotorama__arr, .fotorama__wrap--css2.fotorama__wrap--no-controls.fotorama__wrap--toggle-arrows .fotorama__fullscreen-icon {
  display: none;
}

.fotorama__wrap--css2.fotorama__wrap--no-controls.fotorama__wrap--toggle-arrows .fotorama__arr:focus, .fotorama__wrap--css2.fotorama__wrap--no-controls.fotorama__wrap--toggle-arrows .fotorama__fullscreen-icon:focus {
  display: block;
}

.fotorama__wrap--css2.fotorama__wrap--video .fotorama__arr, .fotorama__wrap--css2.fotorama__wrap--video .fotorama__fullscreen-icon {
  display: none !important;
}

.fotorama__wrap--css3.fotorama__wrap--no-controls.fotorama__wrap--slide.fotorama__wrap--toggle-arrows .fotorama__fullscreen-icon:not(:focus) {
  transform: translate3d(32px, -32px, 0);
}

.fotorama__wrap--css3.fotorama__wrap--no-controls.fotorama__wrap--slide.fotorama__wrap--toggle-arrows .fotorama__arr--prev:not(:focus) {
  transform: translate3d(-48px, 0, 0);
}

.fotorama__wrap--css3.fotorama__wrap--no-controls.fotorama__wrap--slide.fotorama__wrap--toggle-arrows .fotorama__arr--next:not(:focus) {
  transform: translate3d(48px, 0, 0);
}

.fotorama__wrap--css3.fotorama__wrap--video .fotorama__fullscreen-icon {
  transform: translate3d(32px, -32px, 0) !important;
}

.fotorama__wrap--css3.fotorama__wrap--video .fotorama__arr--prev {
  transform: translate3d(-48px, 0, 0) !important;
}

.fotorama__wrap--css3.fotorama__wrap--video .fotorama__arr--next {
  transform: translate3d(48px, 0, 0) !important;
}

.fotorama__wrap--css3 .fotorama__arr:not(:focus), .fotorama__wrap--css3 .fotorama__fullscreen-icon:not(:focus), .fotorama__wrap--css3 .fotorama__video-close:not(:focus), .fotorama__wrap--css3 .fotorama__video-play:not(:focus) {
  transition-property: transform,opacity;
  transition-duration: .3s;
}

.fotorama__nav:after, .fotorama__nav:before, .fotorama__stage:after, .fotorama__stage:before {
  content: "";
  display: block;
  position: absolute;
  text-decoration: none;
  top: 0;
  bottom: 0;
  width: 10px;
  height: auto;
  z-index: 10;
  pointer-events: none;
  background-repeat: no-repeat;
  background-size: 1px 100%,5px 100%;
}

.fotorama__nav:before, .fotorama__stage:before {
  background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.2) 25%, rgba(0, 0, 0, 0.3) 75%, transparent), radial-gradient(farthest-side at 0 50%, rgba(0, 0, 0, 0.4), transparent);
  background-position: 0 0,0 0;
  left: -10px;
}

.fotorama__nav.fotorama__shadows--left:before, .fotorama__stage.fotorama__shadows--left:before {
  left: 0;
}

.fotorama__nav:after, .fotorama__stage:after {
  background-image: linear-gradient(transparent, rgba(0, 0, 0, 0.2) 25%, rgba(0, 0, 0, 0.3) 75%, transparent), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.4), transparent);
  background-position: 100% 0,100% 0;
  right: -10px;
}

.fotorama__nav.fotorama__shadows--right:after, .fotorama__stage.fotorama__shadows--right:after {
  right: 0;
}

.fotorama--fullscreen .fotorama__nav:after, .fotorama--fullscreen .fotorama__nav:before, .fotorama--fullscreen .fotorama__stage:after, .fotorama--fullscreen .fotorama__stage:before, .fotorama__wrap--fade .fotorama__stage:after, .fotorama__wrap--fade .fotorama__stage:before, .fotorama__wrap--no-shadows .fotorama__nav:after, .fotorama__wrap--no-shadows .fotorama__nav:before, .fotorama__wrap--no-shadows .fotorama__stage:after, .fotorama__wrap--no-shadows .fotorama__stage:before {
  display: none;
}

/* Keyframes */
@keyframes bounce {
  0%,
  20%,
  60%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  80% {
    transform: translateY(-10px);
  }
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}

/* Styles */
.main-header {
  background: white;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.903799) 65%, rgba(255, 255, 255, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#ffffff", GradientType=1);
  padding: 65px 0;
  text-align: center;
  z-index: 9999;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}

.main-header .wrapper {
  overflow: visible;
  width: auto;
}

.main-header .wrapper .main-nav {
  background-color: transparent !important;
  width: 100%;
}

.main-header .wrapper .main-nav .container {
  width: auto;
}

.main-header .wrapper .main-nav button {
  position: absolute;
  bottom: 50%;
  z-index: 9;
}

.main-header .wrapper .main-nav button span {
  font-size: 20px;
}

.main-header .wrapper .main-nav button span i {
  color: #007cc3;
}

.main-header .wrapper .main-nav .menu {
  position: relative;
  top: -15px;
  -ms-flex-pack: center;
      justify-content: center;
}

.main-header .wrapper .main-nav .menu li {
  float: inherit;
  display: inline-block;
  position: relative;
  padding: 0 1% 0 1%;
}

.main-header .wrapper .main-nav .menu li a {
  text-decoration: none;
  font-family: 'Cooper';
  font-size: 18px;
  color: #007cc3;
  transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
}

.main-header .wrapper .main-nav .menu li a:hover {
  color: #f7d300;
}

.main-header .wrapper .main-nav .menu li a.franquicias:hover {
  font-size: 20px;
  color: #007cc3;
}

.main-header .wrapper .main-nav .menu li .logo-menu {
  width: 70px;
  height: auto;
  position: relative;
  margin: -45px auto -25px auto;
}

.main-header .wrapper .main-nav .menu li .mini-timon {
  position: absolute;
  right: 0;
  left: 0;
  margin: -39.5px auto -39.5px auto;
  width: 50px;
  z-index: -1;
  animation: rotate 5s infinite linear;
}

.cover-page {
  display: block;
  background: url("../images/header.jpg") center center no-repeat;
  background-size: cover;
  max-width: 100%;
  height: auto;
  padding: 100px 0;
}

.cover-page .wrapper {
  text-align: center;
}

.cover-page .wrapper .title {
  display: block;
  width: 550px;
  height: auto;
  margin: 85px auto 0 auto;
}

.cover-page .wrapper .gif-index {
  width: 550px;
  height: 60px;
  position: relative;
  display: inline-block;
}

.cover-page.products {
  position: relative;
  background: #007cc3;
  padding: 70px 0 180px 0;
}

.cover-page.products::after {
  content: '';
  display: block;
  max-width: 100%;
  height: 100px;
  background: url("../images/header-bg.jpg") center bottom no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}

.cover-page.products .wrapper .txt {
  display: block;
  max-width: 850px;
  margin: 0 auto;
  font-weight: bold;
  line-height: 16px;
  color: #FFF;
  font-size: 12px;
  text-align: justify;
  z-index: 9999;
  position: relative;
}

.cover-page.about {
  display: block;
  position: relative;
  height: 800px;
  overflow: hidden;
}

.cover-page.about::after {
  content: '';
  display: block;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: white;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 124, 195, 0.800158) 36%, #007cc3 57%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff", endColorstr="#007cc3", GradientType=1);
}

.cover-page.about::before {
  content: '';
  display: block;
  max-width: 100%;
  height: 300px;
  background: url("../images/about-header-bg.png") center top no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.cover-page.about .wrapper {
  position: relative;
  z-index: 1;
}

.cover-page.about .wrapper .txt {
  display: block;
  max-width: 900px;
  font-family: 'Cooper';
  font-size: 18px;
  color: #FFF;
  text-align: center;
  clear: both;
  overflow: hidden;
  position: relative;
}

.cover-page.about .wrapper .txt.bottom {
  margin: 85px auto 100px auto;
}

.cover-page.about .wrapper .txt.top {
  margin: 80px auto 20px auto;
}

.cover-page.about .wrapper .cols {
  overflow: hidden;
  clear: both;
}

.cover-page.about .wrapper .cols .col {
  display: block;
  float: left;
  text-align: center;
  padding: 20px 30px;
  box-sizing: border-box;
}

.cover-page.about .wrapper .cols .col.mision {
  border-right: 4px #f7d300 solid;
}

.cover-page.about .wrapper .cols .col.vis {
  border-right: 4px #f7d300 solid;
}

.cover-page.about .wrapper .cols .col h4 {
  color: #f7d300;
  font-family: 'Cooper';
  font-size: 25px;
  text-transform: uppercase;
  margin-bottom: 15px;
}

.cover-page.about .wrapper .cols .col p {
  color: #FFF;
  font-size: 16px;
  text-align: left;
}

.quote {
  display: block;
  padding: 185px 0;
  position: relative;
  z-index: 9999;
  background: #007cc3;
}

.quote::before {
  content: '';
  display: block;
  background: url("../images/surf-bg.png") center center no-repeat;
  width: 100%;
  height: 150%;
  background-size: cover;
  position: absolute;
  top: -130px;
  left: 0;
  right: 0;
  z-index: -9;
}

.quote .wrapper {
  overflow: hidden;
}

.quote .wrapper .title {
  display: block;
  width: 600px;
  height: auto;
  margin: 15px auto;
}

.quote .wrapper .timon {
  position: absolute;
  height: 85%;
  margin: auto;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: -9;
}

.more-info {
  display: block;
  padding: 35px 0;
  text-align: center;
  margin-top: 5%;
  margin-bottom: 5%;
}

.more-info .container-fluid .left {
  display: block;
  float: left;
  width: 50%;
  border-right: 3px solid #f7d300;
  box-sizing: border-box;
}

.more-info .container-fluid .left p {
  display: block;
  width: 250px;
  margin: 15px auto 30px auto;
  font-size: 20px;
}

.more-info .container-fluid .left a.btn {
  color: #007cc3;
  background-color: #FFF;
  transition: all 0.3s ease-out;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
}

.more-info .container-fluid .left a.btn:hover {
  color: #FFF;
  background: #f7d300;
}

.more-info .container-fluid .right {
  display: block;
  float: right;
  width: 50%;
  box-sizing: border-box;
}

.more-info .container-fluid .right p {
  display: block;
  width: 250px;
  margin: 15px auto 30px auto;
  font-size: 20px;
}

.more-info .container-fluid .right a.btn {
  color: #007cc3;
  background-color: #FFF;
  transition: all 0.3s ease-out;
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -ms-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
}

.more-info .container-fluid .right a.btn:hover {
  color: #FFF;
  background: #f7d300;
}

.features {
  margin-top: 30px;
  text-align: center;
  height: 100% !important;
}

.features .zoom-effect {
  width: 100%;
  position: relative;
  text-align: center;
  overflow: hidden;
  display: inline-block;
  float: left;
}

.features .zoom-effect .feature {
  height: 300px;
}

.features .zoom-effect .feature::after {
  content: '';
  display: block;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.35);
}

.features .zoom-effect .feature.one {
  background: url("../images/feature1-new.jpg") center center no-repeat;
  background-size: cover;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.features .zoom-effect .feature.two {
  background: url("../images/feature2-new.jpg") center center no-repeat;
  background-size: cover;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.features .zoom-effect .feature.three {
  background: url("../images/feature3-new.jpg") center center no-repeat;
  background-size: cover;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.features .zoom-effect .feature img {
  display: block;
  margin: 0 auto;
  width: auto;
  position: relative;
  top: 120px;
  z-index: 9;
}

.features .zoom-effect:hover .one,
.features .zoom-effect:hover .two,
.features .zoom-effect:hover .three {
  transform: scale(1.08);
}

.btn-fb {
  background: #007cc3;
  border-color: #007cc3;
  color: #FFF;
  font-family: 'Cooper';
  margin: 100px 0 80px 0;
  position: relative;
}

.btn-fb span {
  display: inline-block;
  margin-right: 8px;
  font-size: 20px;
}

.btn-fb::after {
  content: '';
  display: block;
  width: 100px;
  height: 110px;
  background: url("../images/anchor.png") center center no-repeat;
  position: absolute;
  right: -80px;
  top: -10px;
}

.btn-fb::before {
  content: '';
  display: block;
  width: 110px;
  height: 60px;
  background: url("../images/fish.png") center center no-repeat;
  position: absolute;
  left: -90px;
  top: 40px;
}

.btn-fb:hover::after {
  animation: bounce 1s infinite;
}

.btn-fb:hover::before {
  animation: bounce 1.5s infinite;
}

.vision {
  display: block;
  padding: 100px 0 120px 0;
  background: url("../images/sea-bg.png") center bottom no-repeat;
  background-size: cover;
  text-align: center;
}

.vision .wrapper .block h4 {
  font-family: 'Cooper';
  color: #f7d300;
  text-transform: uppercase;
  font-size: 25px;
  margin: 50px 0 15px 0;
}

.vision .wrapper .block p {
  font-family: 'Cooper';
  color: #FFF;
  font-size: 25px;
}

.concepts {
  text-align: center;
  padding: 70px 0;
}

.concepts .wrapper .title {
  display: block;
  width: 360px;
  height: auto;
  margin: 0 auto 100px auto;
  clear: both;
  overflow: hidden;
}

.concepts .wrapper .concept {
  display: inline-block;
}

.concepts .wrapper .concept.one {
  position: relative;
  top: -65px;
}

.concepts .wrapper .concept.three {
  position: relative;
  top: -80px;
}

.concepts .wrapper .concept figure {
  display: block;
  width: 120px;
  margin: 20px auto;
}

.concepts .wrapper .concept figure img {
  width: 100%;
  height: auto;
}

.concepts .wrapper .concept p {
  color: #007cc3;
  font-size: 16px;
  line-height: 20px;
  padding: 0 16px;
}

.blocks {
  margin-bottom: 60px;
}

.blocks .left {
  width: 100%;
  height: 250px;
  float: left;
  background: #ddb90a;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.blocks .left img {
  display: block;
  width: 320px;
  height: auto;
  margin: 40px auto 0 auto;
}

/*
.blocks .left:hover {
  transform: scale(1.1);
}
 */

.blocks .right {
  width: 100%;
  height: 250px;
  float: left;
  background: #f7d300;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.blocks .right img {
  display: block;
  width: 320px;
  height: auto;
  margin: 40px auto 0 auto;
}

/*
.blocks .right:hover {
  transform: scale(1.1);
}
 */
 
.contact {
  text-align: center;
}

.contact .wrapper {
  margin-top: 8em;
}

.contact .wrapper p {
  display: block;
  margin: 12px auto;
  color: #007cc3;
  font-weight: bold;
  font-size: 20px;
}

.contact .wrapper form {
  display: block;
  width: 550px;
  margin: 0 auto;
  margin-top: 30px;
}

.contact .wrapper form input {
  display: block;
  border: 1px solid #007cc3;
  margin: 5px 0;
  border-radius: 8px;
  font-size: 16px;
  padding: 5px 10px;
  width: 100%;
  outline: none;
}

.contact .wrapper form input::-webkit-input-placeholder {
  color: #007cc3;
}

.contact .wrapper form input::-moz-placeholder {
  color: #007cc3;
}

.contact .wrapper form input:-ms-input-placeholder {
  color: #007cc3;
}

.contact .wrapper form input:-moz-placeholder {
  color: #007cc3;
}

.contact .wrapper form textarea {
  display: block;
  border: 1px solid #007cc3;
  margin: 5px 0;
  border-radius: 8px;
  font-size: 16px;
  padding: 5px 10px;
  width: 100%;
  height: 200px;
  resize: none;
  outline: none;
}

.contact .wrapper form textarea::-webkit-input-placeholder {
  color: #007cc3;
}

.contact .wrapper form textarea::-moz-placeholder {
  color: #007cc3;
}

.contact .wrapper form textarea:-ms-input-placeholder {
  color: #007cc3;
}

.contact .wrapper form textarea:-moz-placeholder {
  color: #007cc3;
}

.contact .wrapper form .btn-submit {
  display: inline-block;
  width: 150px;
  cursor: pointer;
  text-align: center;
  font-size: 20px;
  padding: 8px 0;
  border: 3px solid #f7d300;
  font-weight: bold;
  color: #007cc3;
  text-decoration: none;
  border-radius: 50px;
  outline: none;
  background-color: #FFF;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.contact .wrapper form .btn-submit:hover {
  background-color: #f7d300;
  color: #FFF;
}

.contact .wrapper .msgsuccess {
  display: none !important;
}

.contact .wrapper .msgerror {
  display: none !important;
}

.main-footer {
  padding: 20% 0 0 0;
  background: url("../images/footer-bg.svg") center bottom no-repeat;
  background-size: cover;
  margin-top: -93px;
}

.main-footer .wrapper {
  overflow: hidden;
  position: relative;
  height: 200px;
}

.main-footer .wrapper .col {
  display: inline-block;
  width: auto;
}

.main-footer .wrapper .col.top {
  position: relative;
  top: 25px;
}

.main-footer .wrapper .col.right {
  width: 350px;
  float: right;
  position: relative;
  top: 35px;
}

.main-footer .wrapper .col.right p {
  color: #FFF;
  font-size: 12px;
  text-align: right;
  line-height: 16px;
  font-style: italic;
}

.main-footer .wrapper .col.right .social {
  display: block;
  margin-top: 35px;
  float: right;
}

.main-footer .wrapper .col.right .social li {
  text-align: center;
  display: inline-block;
  width: 20px;
  height: 20px;
  line-height: 20px;
  background: #FFF;
  border-radius: 50px;
  margin: 0 2px;
}

.main-footer .wrapper .col.right .social li a {
  text-decoration: none;
  color: #007cc3;
  font-size: 12px;
}

.main-footer .wrapper .col.logo-footer {
  display: block;
  position: absolute;
  top: 15%;
  right: 40%;
}

.main-footer .wrapper .col.logo-footer img {
  width: 80px;
  background-color: #FFF;
  padding: 5px;
  border-radius: 50%;
}

.main-footer .wrapper .col .list li {
  display: block;
  margin: 8px 0;
}

.main-footer .wrapper .col .list li a {
  text-decoration: none;
  color: #FFF;
  font-size: 12px;
  font-weight: bold;
}

@media (max-width: 575.98px) {
  .main-header .wrapper .main-nav .container button {
    margin-right: 10px;
    right: 0;
  }
  .main-header .navbar-brand {
    margin-right: 0.5px;
    position: relative;
    margin-bottom: 15px;
  }
  .cover-page.products {
    padding: 70px 0 70px 0;
  }
  .cover-page.products .wrapper .txt {
    max-width: 300px;
  }
  .cover-page.about {
    height: 1350px;
  }
  .cover-page.about .wrapper .cols .col {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
  .cover-page.about .wrapper .cols .col.mision {
    border-right: none;
    border-bottom: 4px #f7d300 solid;
  }
  .cover-page.about .wrapper .cols .col.vis {
    border-right: none;
    border-bottom: 4px #f7d300 solid;
  }
  .more-info {
    padding-top: 2%;
  }
  .more-info .container-fluid {
    width: 80%;
  }
  .more-info .container-fluid .left {
    width: 100%;
    border-right: 0px;
    padding-bottom: 45px;
    border-bottom: 3px solid #f7d300;
  }
  .more-info .container-fluid .right {
    width: 100%;
    padding-top: 45px;
  }
  .vision {
    padding: 35% 0 15% 0;
  }
  .vision .wrapper .block h4 {
    font-family: 'Cooper';
    color: #f7d300;
    text-transform: uppercase;
    font-size: 15px;
    margin: 50px 0 15px 0;
  }
  .vision .wrapper .block p {
    font-family: 'Cooper';
    color: #FFF;
    font-size: 15px;
  }
  .concepts .wrapper .concept {
    display: inline-block;
    width: 100%;
  }
  .concepts .wrapper .concept.two {
    padding: 0 0 12% 0;
  }
  .concepts .wrapper .concept.three {
    padding: 10% 0 0 0;
  }
  .contact .wrapper {
    margin-top: 2%;
  }
  .contact .wrapper form {
    width: auto;
  }
  .main-footer {
    padding-top: 50%;
  }
  .main-footer .wrapper .col {
    display: block;
  }
  .main-footer .wrapper .col.top {
    top: 0;
  }
  .main-footer .wrapper .col.right {
    width: 50%;
    position: absolute;
    right: 0;
  }
  .main-footer .wrapper .col.logo-footer {
    display: none;
  }
  .main-footer .wrapper .col.logo-footer img {
    width: 60px;
  }
}

@media (min-width: 768px) {
  .main-header .wrapper .main-nav .container button {
    margin-right: 10px;
    right: 0;
  }
  .main-header .navbar-brand {
    margin-right: 0.5px;
    position: relative;
    margin-bottom: 15px;
  }
  .more-info {
    padding-top: 2%;
  }
  .more-info .container-fluid {
    width: 50%;
  }
  .more-info .container-fluid .left {
    border-right: 0px;
    padding-bottom: 45px;
    border-bottom: 3px solid #f7d300;
  }
  .more-info .container-fluid .right {
    padding-top: 45px;
  }
  .cover-page.products {
    padding: 70px 0 120px 0;
  }
  .cover-page.products .wrapper .txt {
    max-width: 700px;
  }
  .cover-page.about {
    height: 1200px;
  }
  .cover-page.about .wrapper .cols .col.mision {
    border-right: none;
    border-bottom: 4px #f7d300 solid;
  }
  .cover-page.about .wrapper .cols .col.vis {
    border-right: none;
    border-bottom: 4px #f7d300 solid;
  }
  .concepts .wrapper .concept {
    display: inline-block;
    width: 80%;
  }
  .concepts .wrapper .concept.two {
    padding: 0 0 5% 0;
  }
  .concepts .wrapper .concept.three {
    padding: 10% 0 0 0;
  }
  .main-footer .wrapper .col.logo-footer {
    display: none;
  }
  .main-footer .wrapper .col.logo-footer img {
    width: 60px;
  }
}

@media (min-width: 992px) {
  .more-info {
    padding-top: 10px;
  }
  .more-info .container-fluid {
    width: 100%;
  }
  .more-info .container-fluid .left {
    padding: 0 20px 0 20px;
    border-bottom: 0;
    border-right: 3px solid #f7d300;
  }
  .more-info .container-fluid .right {
    padding: 0 20px 0 20px;
  }
  .cover-page.about {
    height: 1000px;
  }
  .cover-page.about .wrapper .cols .col.mision {
    border-bottom: none;
    border-right: 4px #f7d300 solid;
  }
  .cover-page.about .wrapper .cols .col.vis {
    border-bottom: none;
    border-right: 4px #f7d300 solid;
  }
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}

.data {
  padding: 90px 0 70px 0;
  overflow: hidden;
  clear: both;
}

.data .wrapper img {
  display: block;
  margin: 0 auto;
  width: auto;
}

.features {
  height: 300px;
  overflow: hidden;
  position: relative;
}

.products-tacos .products-carousel {
  line-height: 300px;
  display: block;
}

.products-tacos .products-carousel .taco.one {
  background: url("../images/Tacos/taco_carousel_1-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-tacos .products-carousel .taco.two {
  background: url("../images/Tacos/taco_carousel_2-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-tacos .products-carousel .taco.three {
  background: url("../images/Tacos/taco_carousel_3-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-tacos .products-carousel .taco.four {
  background: url("../images/Tacos/taco_carousel_4-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-tacos .products-carousel .taco.five {
  background: url("../images/Tacos/taco_carousel_5-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-tacos .products-carousel .taco::after {
  content: '.';
  display: block;
  width: 100%;
  background: rgba(255, 255, 255, 0.35);
}

.products-tacos::after {
  content: 'TACOS';
  display: block;
  font-size: 100px;
  height: 100px;
  font-style: italic;
  font-weight: 300;
  position: absolute;
  top: 30%;
  bottom: 0;
  right: 0;
  left: 0;
  color: #FFF;
  z-index: 1;
}

.products-platillos .products-carousel {
  line-height: 300px;
  display: inline-block;
}

.products-platillos .products-carousel .platillo.one {
  background: url("../images/Platillos/platillo_carousel_1-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-platillos .products-carousel .platillo.two {
  background: url("../images/Platillos/platillo_carousel_2-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-platillos .products-carousel .platillo.three {
  background: url("../images/Platillos/platillo_carousel_3-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-platillos .products-carousel .platillo.four {
  background: url("../images/Platillos/platillo_carousel_4-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-platillos .products-carousel .platillo.five {
  background: url("../images/Platillos/platillo_carousel_5-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-platillos .products-carousel .platillo.six {
  background: url("../images/Platillos/platillo_carousel_6-new.jpg") center center no-repeat;
  background-size: cover;
}

.products-platillos .products-carousel .platillo::after {
  content: '.';
  display: block;
  width: 100%;
  background: rgba(255, 255, 255, 0.35);
}

.products-platillos::after {
  content: 'PLATILLOS';
  display: block;
  height: 100px;
  font-size: 100px;
  font-style: italic;
  font-weight: 300;
  position: absolute;
  top: 30%;
  bottom: 0;
  right: 0;
  left: 0;
  color: #FFF;
  z-index: 1;
}

.warranty {
  padding: 60px 0 10px 0;
  overflow: hidden;
  clear: both;
  background: url("../images/bg-pattern.png") center center no-repeat;
  background-size: cover;
}

.warranty .wrapper .title {
  display: block;
  width: 330px;
  margin: 20px auto 50px auto;
}

.warranty .wrapper p {
  color: #007cc3;
  font-family: 'Cooper';
  font-size: 25px;
  text-align: center;
  display: block;
  max-width: 800px;
  margin: 0 auto 25px auto;
}

.warranty .wrapper .list {
  display: block;
  max-width: 650px;
  margin: 40px auto 0 auto;
}

.warranty .wrapper .list ul li {
  display: block;
  margin: 20px 0;
  font-family: 'Cooper';
  font-size: 15px;
  color: #007cc3;
  position: relative;
}

.warranty .wrapper .list ul li .icon-timon {
  color: #007cc3;
  font-size: 20px;
  position: absolute;
  left: -30px;
  top: -3px;
  transition: .5s ease;
  -webkit-transition: .5s ease;
  -moz-transition: .5s ease;
  -ms-transition: .5s ease;
  -o-transition: .5s ease;
  animation: rotate 2s infinite;
}

.warranty .wrapper .list ul li:hover .icon-timon {
  color: #f7d300;
}

@media (max-width: 575.98px) {
  .products-tacos {
    height: 300px !important;
  }
  .products-tacos::after {
    font-size: 80px;
    top: 35%;
  }
  .products-platillos {
    height: 300px !important;
  }
  .products-platillos::after {
    font-size: 60px;
    top: 35%;
  }
  .warranty .wrapper p {
    font-size: 16px;
  }
  .warranty .wrapper .list {
    max-width: 250px;
  }
  .warranty .wrapper .list ul li {
    font-size: 12px;
  }
}

@media (min-width: 768px) {
  .products-tacos {
    height: 300px !important;
  }
  .products-tacos::after {
    font-size: 100px;
    top: 30%;
  }
  .products-platillos {
    height: 300px !important;
  }
  .products-platillos::after {
    font-size: 100px;
    top: 30%;
  }
}

/* Keyframes */
@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}

.history .wrapper .title {
  display: block;
  width: 300px;
  height: auto;
  margin: 0 auto 40px auto;
}

.history .wrapper p {
  font-size: 18px;
  color: #007cc3;
  line-height: 28px;
  margin-bottom: 40px;
}

.history .wrapper figure {
  display: block;
  max-width: 520px;
  width: 100%;
  height: auto;
  margin: 40px auto 80px auto;
}

.history .wrapper figure img {
  width: 100%;
  height: auto;
}

.founders {
  background: url("../images/bg-founders.png") center center repeat-x;
  background-size: cover;
  position: relative;
  margin: 80px 0 100px 0;
}

.founders .wrapper {
  position: relative;
  padding-top: 4em;
  height: 640px;
  overflow: visible;
}

.founders .wrapper .top .title {
  display: block;
  width: 360px;
  height: auto;
  margin: 0 auto;
  position: absolute;
  left: 30px;
  top: -20px;
}

.founders .wrapper .top .left {
  display: block;
  float: left;
}

.founders .wrapper .top .left .profile {
  display: block;
  position: relative;
  top: 90px;
  width: 300px;
  height: auto;
}

.founders .wrapper .top .left .profile img {
  width: 100%;
  height: auto;
}

.founders .wrapper .top .right {
  display: block;
  width: 400px;
  float: left;
  position: relative;
  top: 140px;
  right: -80px;
}

.founders .wrapper .top .right::after {
  content: '';
  display: block;
  width: 150px;
  height: 150px;
  background: url("../images/timon.png") center center no-repeat;
  background-size: 100%;
  position: absolute;
  top: -80px;
  right: -250px;
  animation: rotate 5s infinite linear;
}

.founders .wrapper .top .right h5 {
  font-size: 28px;
  font-family: 'Cooper';
  color: #FFF;
  margin-bottom: 30px;
}

.founders .wrapper .top .right p {
  font-size: 16px;
  font-family: 'Cooper';
  color: #FFF;
  line-height: 16px;
}

.founders .wrapper .top .right .quote-txt {
  color: #f7d300;
  text-align: center;
  padding: 0 30px;
  margin-top: 15px;
}

.founders .wrapper .quote-bottom {
  display: block;
  max-width: 750px;
  width: 100%;
  margin: 0 auto;
  position: absolute;
  bottom: -80px;
  left: 0;
  right: 0;
}

.founders .wrapper .quote-bottom img {
  width: 100%;
  height: auto;
}

.founder-bottom {
  padding-top: 40px;
}

.founder-bottom .wrapper {
  height: 600px;
}

.founder-bottom .wrapper .left .logo {
  margin: 0 auto;
  width: 300px;
  height: auto;
}

.founder-bottom .wrapper .left .logo img {
  width: 100%;
  height: auto;
}

.founder-bottom .wrapper .right {
  display: inline-block;
}

.founder-bottom .wrapper .right p {
  font-size: 18px;
  text-align: justify;
  padding-right: 20px;
  color: #007cc3;
  line-height: 28px;
  position: relative;
  top: 110px;
}

.quote-main {
  background: url("../images/bg-sun.png") center center repeat-x;
  background-size: cover;
  text-align: center;
  position: relative;
}

.quote-main::after {
  content: '';
  display: block;
  width: 80%;
  height: auto;
  margin: 0 auto;
  background: url("../images/bg-sun-alt.png") center center repeat-x;
  background-size: 100%;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.quote-main .wrapper {
  height: 650px;
}

.quote-main .wrapper .txt {
  display: block;
  max-width: 800px;
  margin: 0 auto;
  font-family: 'Cooper';
  color: #FFF;
  font-size: 29px;
  position: relative;
  top: 175px;
  line-height: 35px;
}

.prestige {
  padding: 50px 0 20px 0;
  text-align: center;
}

.prestige .wrapper .title {
  display: block;
  width: 300px;
  height: auto;
  margin: 0 auto 30px auto;
}

.prestige .wrapper p {
  color: #007cc3;
  font-size: 20px;
  display: block;
  width: 80%;
  margin: 10px auto 60px auto;
  line-height: 28px;
}

.prestige .wrapper .btn-join {
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.prestige .wrapper .btn-join:hover {
  background-color: #f7d300;
  color: #FFF;
}

@media (max-width: 575.98px) {
  .founders .wrapper {
    height: 950px;
  }
  .founders .wrapper .top .title {
    margin-top: 20px;
    width: 280px;
  }
  .founders .wrapper .top .left .profile {
    top: 80px;
    left: 50px;
    width: 250px;
  }
  .founders .wrapper .top .right {
    width: 80%;
    text-align: center;
    right: 0;
    left: 10%;
  }
  .founders .wrapper .top .right h5 {
    font-size: 22px;
  }
  .founders .wrapper .top .right p {
    font-size: 16px;
  }
  .founders .wrapper .top .right::after {
    display: none;
  }
  .founder-bottom .wrapper .left .logo {
    position: relative;
    right: 5px;
  }
  .founder-bottom .wrapper .right p {
    top: 50%;
    font-size: 14px;
    padding: 0;
  }
  .quote-main .wrapper .txt {
    font-size: 24px;
  }
  .quote-main::after {
    bottom: -60%;
  }
  .prestige .wrapper p {
    font-size: 12px;
  }
}

@media (min-width: 768px) {
  .founders .wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .founders .wrapper .top .left .profile {
    top: 120px;
    width: 250px;
  }
  .founders .wrapper .top .right {
    width: 320px;
    margin-right: 80px;
  }
  .founders .wrapper .top .right::after {
    width: 120px;
    right: -10%;
    top: -40%;
  }
  .quote-main .wrapper .txt {
    font-size: 24px;
    top: 40%;
  }
  .quote-main::after {
    bottom: -50%;
  }
}

@media (min-width: 992px) {
  .quote-main::after {
    width: 100%;
    bottom: -25%;
  }
}

@media (min-width: 1200px) {
  .quote-main .wrapper .txt {
    font-size: 32px;
  }
  .quote-main::after {
    width: 100%;
    bottom: -15%;
  }
}

.concepts.sec {
  margin-top: 80px;
}

.model {
  background: url("../images/sea-bg.png") center bottom no-repeat;
  background-size: cover;
  padding: 100px 0;
  text-align: center;
  z-index: -9999;
}

.model .wrapper .title {
  display: block;
  width: 800px;
  height: auto;
  margin: 30px auto;
}

.model .wrapper .list {
  text-align: left;
  display: inline-block;
  width: 60%;
}

.model .wrapper .list li {
  display: block;
  margin: 15px 0;
  font-size: 20px;
  color: #FFF;
  font-family: 'Cooper';
}

.model .wrapper .list li .icon-timon {
  color: #FFF;
  font-size: 25px;
  position: relative;
  top: 4px;
}

.business-opo {
  display: block;
  height: 450px;
  position: relative;
  background: #ddb90a;
}

.business-opo::before {
  content: '';
  display: block;
  width: auto;
  height: 100%;
  background: url("../images/bg-curve-yellow.png") center top no-repeat;
  background-size: cover;
  position: absolute;
  top: -60px;
  left: 0;
  right: 0;
  z-index: 999;
}

.business-opo .wrapper {
  z-index: 9999;
  overflow: hidden;
  position: relative;
  clear: both;
}

.business-opo .wrapper .title {
  display: block;
  width: 350px;
  height: auto;
  margin: 30px 24% 55px auto;
}

.business-opo .wrapper .txt {
  display: block;
  width: 800px;
  margin: 0 auto;
  text-align: center;
  color: #FFF;
  font-size: 20px;
  line-height: 25px;
  font-family: 'Cooper';
}

.points {
  display: block;
  overflow: hidden;
  clear: both;
}

.points .point {
  display: inline-block;
  height: 420px;
  float: left;
  perspective: 1000px;
}

.points .point .card-standar {
  width: 100%;
  height: 100%;
  position: relative;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

.points .point .card-standar .card-face {
  position: absolute;
  width: 100%;
  height: 100%;
  padding: 30px;
  box-sizing: border-box;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.points .point .card-standar .card-face.front-face {
  background: #007cc3;
  transform: rotateY(180deg);
}

.points .point .card-standar .card-face.front-face figure img {
  width: 180px;
  position: relative;
  top: 15px;
}

.points .point .card-standar .card-face.standar {
  background: url("../images/header2.jpg") center center no-repeat;
  background-size: cover;
}

.points .point .card-fc {
  width: 100%;
  height: 100%;
  position: relative;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

.points .point .card-fc .card-face {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 30px;
  box-sizing: border-box;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.points .point .card-fc .card-face.front-face {
  background: #00a5ed;
  transform: rotateY(180deg);
}

.points .point .card-fc .card-face.front-face figure img {
  width: 130px;
}

.points .point .card-fc .card-face.fc {
  background: url("../images/modelo-foodcourt.jpeg") center center no-repeat;
  background-size: cover;
  top: -100%;
}

.points .point .card-macro {
  width: 100%;
  height: 100%;
  position: relative;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

.points .point .card-macro .card-face {
  position: relative;
  width: 100%;
  height: 100%;
  padding: 30px;
  box-sizing: border-box;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.points .point .card-macro .card-face.front-face {
  background: #007cc3;
  transform: rotateY(180deg);
}

.points .point .card-macro .card-face.front-face figure img {
  width: 130px;
}

.points .point .card-macro .card-face.macro {
  background: url("../images/modelo-macrotacofish.jpg") center center no-repeat;
  background-size: cover;
  top: -100%;
}

.points .point figure {
  width: 100%;
  height: 75px;
}

.points .point figure img {
  display: block;
  width: 200px;
  height: auto;
  margin: 0 auto;
}

.points .point p {
  color: #FFF;
  font-size: 16px;
  margin-top: 25px;
  line-height: 20px;
}

.points .point ul {
  list-style: inside;
  margin-top: 20px;
}

.points .point ul li {
  margin: 7px 0;
  color: #FFF;
  font-size: 16px;
  line-height: 20px;
}

.points .point:hover .cardfx {
  transform: rotateY(180deg);
}

.steps-fran {
  padding: 30px 0;
  text-align: center;
  position: relative;
}

.steps-fran::after {
  content: '';
  display: block;
  background: url("../images/bg-curve-white.png") center top no-repeat;
  background-size: cover;
  width: 100%;
  height: 500px;
  position: absolute;
  bottom: -80px;
  left: 0;
  right: 0;
  z-index: 99;
}

.steps-fran .wrapper {
  z-index: 9999;
  position: relative;
}

.steps-fran .wrapper .quote-ribbon {
  display: block;
  width: 800px;
  height: auto;
  margin: 30px auto 0 auto;
}

.steps-fran .wrapper .title {
  display: block;
  width: 400px;
  height: auto;
  margin: 30px auto 45px auto;
}

.steps-fran .wrapper .steps {
  display: block;
  width: 600px;
  margin: 0 auto;
  text-align: left;
  position: relative;
}

.steps-fran .wrapper .steps li {
  font-size: 15px;
  color: #007cc3;
  line-height: 20px;
  margin: 12px 0;
  font-family: 'Cooper';
}

.steps-fran .wrapper .steps li .number {
  font-size: 45px;
  position: absolute;
  left: -70px;
}

.new-fran {
  background: url("../images/feature2.jpg") center top no-repeat;
  background-size: cover;
  background-attachment: fixed;
  padding: 90px 0;
  position: relative;
}

.new-fran::after {
  content: '';
  width: 100%;
  height: 100%;
  background: rgba(0, 124, 195, 0.6);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.new-fran .wrapper {
  position: relative;
  z-index: 9999;
}

.new-fran .wrapper .title {
  display: block;
  width: 350px;
  height: auto;
  margin: 20px auto;
}

.new-fran .wrapper .txt {
  display: block;
  width: 850px;
  margin: 30px auto;
  font-size: 14px;
  line-height: 24px;
  color: #FFF;
  font-weight: bold;
}

.form-contact {
  background: #ddb90a;
  padding: 60px 0 120px 0;
  text-align: center;
  position: relative;
}

.form-contact::after {
  content: '';
  display: block;
  background: url("../images/bg-curve-yellow.png") center top no-repeat;
  background-size: cover;
  width: 100%;
  height: 200px;
  position: absolute;
  top: -60px;
  left: 0;
  right: 0;
}

.form-contact::before {
  content: '';
  display: block;
  background: url("../images/bg-w-surf.png") center top no-repeat;
  background-size: cover;
  width: 100%;
  height: 350px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
}

.form-contact .wrapper {
  position: relative;
  z-index: 9999;
}

.form-contact .wrapper .title {
  font-family: 'Cooper';
  color: #FFF;
  font-size: 29px;
  line-height: 32px;
  display: block;
  width: 600px;
  margin: 0 auto 40px auto;
}

.form-contact .wrapper .form {
  display: block;
  width: 600px;
  margin: 0 auto 40px auto;
  text-align: left;
}

.form-contact .wrapper .form span {
  color: #FFF;
  font-weight: bold;
  font-size: 18px;
  text-align: left;
  display: block;
  margin: 15px 0;
}

.form-contact .wrapper .form .check {
  font-size: 16px;
  color: #FFF;
  font-weight: bold;
  margin-left: 60px;
}

.form-contact .wrapper .form .check input {
  display: inline-block;
  width: auto;
  margin-right: 5px;
  position: relative;
  top: -2px;
}

.form-contact .wrapper .form .checks-list .check {
  display: block;
}

.form-contact .wrapper .form input {
  display: block;
  background: none;
  width: 100%;
  border: 1px solid #FFF;
  padding: 8px 10px;
  box-shadow: none;
  outline: none;
  font-size: 16px;
  margin: 7px 0;
  border-radius: 10px;
  color: #FFF;
}

.form-contact .wrapper .form input::-webkit-input-placeholder {
  color: #FFF;
}

.form-contact .wrapper .form input::-moz-placeholder {
  color: #FFF;
}

.form-contact .wrapper .form input:-ms-input-placeholder {
  color: #FFF;
}

.form-contact .wrapper .form input:-moz-placeholder {
  color: #FFF;
}

.form-contact .wrapper .form .submit-btn {
  background: #007cc3;
  font-size: 20px;
  font-weight: bold;
  cursor: pointer;
  border: none;
  padding: 12px 0;
  border-radius: 50px;
  display: block;
  width: 300px;
  margin: 75px auto 0 auto;
}

@media (max-width: 575.98px) {
  .model {
    padding: 180px 0 120px 0;
  }
  .model .wrapper .title {
    margin: 80px auto 30px auto;
  }
  .model .wrapper .list li {
    font-size: 12px;
  }
  .concepts {
    padding: 70px 0 0 0;
  }
  .business-opo {
    height: 340px;
  }
  .business-opo .wrapper .title {
    margin: auto;
  }
  .business-opo .wrapper .txt {
    width: 100%;
    font-size: 14px;
  }
  .points .point {
    width: 100%;
  }
  .points .point .card-standar .card-face.front-face {
    transform: none;
  }
  .points .point .card-standar .card-face.standar {
    background: none;
  }
  .points .point .card-fc .card-face.front-face {
    transform: none;
  }
  .points .point .card-fc .card-face.fc {
    background: none;
  }
  .points .point .card-macro .card-face.front-face {
    transform: none;
  }
  .points .point .card-macro .card-face.macro {
    background: none;
  }
  .points .point:hover .cardfx {
    transform: none;
  }
  .steps-fran .wrapper .steps {
    width: 80%;
  }
  .steps-fran .wrapper .steps li {
    font-size: 14px;
  }
  .steps-fran .wrapper .steps li .number {
    position: relative;
    left: 0;
  }
  .new-fran .wrapper .txt {
    width: 80%;
  }
  .form-contact .wrapper .title {
    font-size: 20px;
    width: 100%;
  }
  .form-contact .wrapper .form {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .model {
    padding: 180px 0 120px 0;
  }
  .points .point {
    width: 100%;
  }
  .points .point .card-standar .card-face.front-face {
    transform: none;
  }
  .points .point .card-standar .card-face.standar {
    background: none;
  }
  .points .point .card-fc .card-face.front-face {
    transform: none;
  }
  .points .point .card-fc .card-face.fc {
    background: none;
  }
  .points .point .card-macro .card-face.front-face {
    transform: none;
  }
  .points .point .card-macro .card-face.macro {
    background: none;
  }
  .points .point:hover .cardfx {
    transform: none;
  }
  .steps-fran .wrapper .steps {
    width: 80%;
  }
  .steps-fran .wrapper .steps li .number {
    position: relative;
    left: 0;
  }
  .new-fran .wrapper .txt {
    width: 80%;
  }
}

@media (min-width: 992px) {
  .model {
    padding: 180px 0;
  }
  .points {
    display: block;
    overflow: hidden;
    clear: both;
  }
  .points .point {
    display: inline-block;
    height: 420px;
    float: left;
    perspective: 1000px;
  }
  .points .point .card-standar {
    width: 100%;
    height: 100%;
    position: relative;
    transition: transform 0.8s;
    transform-style: preserve-3d;
  }
  .points .point .card-standar .card-face {
    position: absolute;
    width: 100%;
    height: 100%;
    padding: 30px;
    box-sizing: border-box;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
  }
  .points .point .card-standar .card-face.front-face {
    background: #007cc3;
    transform: rotateY(180deg);
  }
  .points .point .card-standar .card-face.front-face figure img {
    width: 180px;
    position: relative;
    top: 15px;
  }
  .points .point .card-standar .card-face.standar {
    background: url("../images/header2.jpg") center center no-repeat;
    background-size: cover;
  }
  .points .point .card-fc {
    width: 100%;
    height: 100%;
    position: relative;
    transition: transform 0.8s;
    transform-style: preserve-3d;
  }
  .points .point .card-fc .card-face {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 30px;
    box-sizing: border-box;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
  }
  .points .point .card-fc .card-face.front-face {
    background: #00a5ed;
    transform: rotateY(180deg);
  }
  .points .point .card-fc .card-face.front-face figure img {
    width: 130px;
  }
  .points .point .card-fc .card-face.fc {
    background: url("../images/modelo-foodcourt.jpeg") center center no-repeat;
    background-size: cover;
    top: -100%;
  }
  .points .point .card-macro {
    width: 100%;
    height: 100%;
    position: relative;
    transition: transform 0.8s;
    transform-style: preserve-3d;
  }
  .points .point .card-macro .card-face {
    position: relative;
    width: 100%;
    height: 100%;
    padding: 30px;
    box-sizing: border-box;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
  }
  .points .point .card-macro .card-face.front-face {
    background: #007cc3;
    transform: rotateY(180deg);
  }
  .points .point .card-macro .card-face.front-face figure img {
    width: 130px;
  }
  .points .point .card-macro .card-face.macro {
    background: url("../images/modelo-macrotacofish.jpg") center center no-repeat;
    background-size: cover;
    top: -100%;
  }
  .points .point figure {
    width: 100%;
    height: 75px;
  }
  .points .point figure img {
    display: block;
    width: 200px;
    height: auto;
    margin: 0 auto;
  }
  .points .point p {
    color: #FFF;
    font-size: 16px;
    margin-top: 25px;
    line-height: 20px;
  }
  .points .point ul {
    list-style: inside;
    margin-top: 20px;
  }
  .points .point ul li {
    margin: 7px 0;
    color: #FFF;
    font-size: 16px;
    line-height: 20px;
  }
  .points .point:hover .cardfx {
    transform: rotateY(180deg);
  }
  .concepts {
    padding: 70px 0 0 0;
  }
}

@keyframes bounce {
  0%,
  20%,
  60%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  80% {
    transform: translateY(-10px);
  }
}

@keyframes splashDR {
  0%,
  20%,
  60%,
  100% {
    transform: translate(0);
  }
  40% {
    transform: translate(20px);
  }
  80% {
    transform: translate(10px);
  }
}

.cover-imgs {
  margin-top: 0px;
}

.cover-imgs .row .img {
  width: 100%;
  height: 340px;
}

.cover-imgs .row .img img {
  width: 100%;
  height: 340px;
}

.cover-imgs .row .txt-block {
  background: #007cc3;
  height: 100%;
}

.cover-imgs .row .txt-block p {
  color: #FFF;
  font-family: 'Cooper';
  font-size: 15px;
  padding: 0 100px;
  position: absolute;
  right: 0;
  left: 0;
  top: 60%;
  bottom: 0;
}

.map-locations {
  margin-top: 50px;
}

.map-locations .wrapper .map {
  display: block;
  margin: 0 auto;
  width: 720px;
  clear: both;
  overflow: hidden;
  position: relative;
  top: -200px;
}

.map-locations .wrapper .map img.mapa {
  width: 100%;
  height: auto;
}

.map-locations .wrapper .map img.anclaG_1 {
  position: absolute;
  top: 12.5%;
  left: 16%;
  animation: bounce 2s infinite;
}

.map-locations .wrapper .map img.anclaG_2 {
  position: absolute;
  top: 17%;
  left: 28.5%;
  animation: bounce 2s infinite;
}

.map-locations .wrapper .map img.anclaG_3 {
  position: absolute;
  top: 36%;
  left: 24%;
  animation: bounce 2s infinite;
}

.map-locations .wrapper .map img.anclaSM {
  position: absolute;
  bottom: 22%;
  left: 51%;
  animation: bounce 2s infinite;
}

.map-locations .wrapper .locations {
  display: block;
  width: 500px;
  float: right;
}

.map-locations .wrapper .locations .col {
  display: inline-block;
  width: 250px;
  text-align: left;
  float: left;
}

.map-locations .wrapper .locations .col h3 {
  color: #ddb90a;
  font-size: 20px;
  font-family: 'Cooper';
}

.map-locations .wrapper .locations .col .loc-info {
  margin: 10px 0 25px 0;
}

.map-locations .wrapper .locations .col .loc-info h5 {
  font-size: 12px;
  color: #007cc3;
  font-weight: bold;
}

.map-locations .wrapper .locations .col .loc-info p {
  font-size: 12px;
  color: #007cc3;
}

.map-locations .wrapper .splash-wrapper {
  position: relative;
  margin-bottom: 40px;
}

.map-locations .wrapper .splash-wrapper .btn-suc {
  display: block;
  width: 230px;
  height: auto;
  line-height: 45px;
  border-radius: 50px;
  text-align: center;
  margin: 0 auto;
  color: #007cc3;
  font-size: 20px;
  font-weight: bold;
  text-decoration: none;
  border: 4px solid #007cc3;
  position: relative;
  top: -40px;
  transition: 0.3s ease;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
}

.map-locations .wrapper .splash-wrapper .splash-img {
  width: 340px;
  position: relative;
  top: -119px;
  left: 36%;
  z-index: -1;
  transition: 0.5s ease;
  transform: rotate(-3deg);
}

.map-locations .wrapper .splash-wrapper .btn-suc:hover + .splash-img {
  transform: scale(1.08);
}

.map-locations .wrapper .splash-wrapper .btn-suc:hover {
  background-color: #007cc3;
  color: #fff;
}

@media (min-width: 320px) and (max-width: 374.28px) {
  .cover-imgs .row {
    width: 100%;
    margin: 0;
  }
  .cover-imgs .row .img {
    height: 260px;
  }
  .cover-imgs .row .img img {
    height: 260px;
  }
  .cover-imgs .row .txt-block {
    display: block;
    height: 260px;
  }
  .cover-imgs .row .txt-block p {
    text-align: center;
    position: relative;
    top: 30%;
    padding: 0 50px;
  }
  .map-locations .wrapper .locations {
    width: 100%;
    text-align: center;
  }
  .map-locations .wrapper .locations .col {
    display: inline-block;
    float: none;
  }
  .map-locations .wrapper .map {
    top: 0;
    width: 100%;
  }
  .map-locations .wrapper .map img.anclaG_1 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaG_2 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaG_3 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaSM {
    width: 25px;
  }
  .map-locations .wrapper .splash-wrapper {
    display: block;
    padding-top: 8em;
    margin: 0;
    height: 220px;
  }
  .map-locations .wrapper .splash-wrapper .btn-suc {
    width: 180px;
    font-size: 16px;
  }
  .map-locations .wrapper .splash-wrapper .splash-img {
    top: -105px;
    left: 5%;
    width: 280px;
  }
}

@media (min-width: 375px) and (max-width: 424.98px) {
  .cover-imgs .row {
    width: 100%;
    margin: 0;
  }
  .cover-imgs .row .img {
    height: 260px;
  }
  .cover-imgs .row .img img {
    height: 260px;
  }
  .cover-imgs .row .txt-block {
    display: block;
    height: 260px;
  }
  .cover-imgs .row .txt-block p {
    text-align: center;
    position: relative;
    top: 30%;
    padding: 0 50px;
  }
  .map-locations .wrapper .locations {
    width: 100%;
    text-align: center;
  }
  .map-locations .wrapper .locations .col {
    display: inline-block;
    float: none;
  }
  .map-locations .wrapper .map {
    top: 0;
    width: 100%;
  }
  .map-locations .wrapper .map img.anclaG_1 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaG_2 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaG_3 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaSM {
    width: 25px;
  }
  .map-locations .wrapper .splash-wrapper {
    display: block;
    padding-top: 8em;
    margin: 0;
    height: 220px;
  }
  .map-locations .wrapper .splash-wrapper .btn-suc {
    width: 180px;
    font-size: 16px;
  }
  .map-locations .wrapper .splash-wrapper .splash-img {
    top: -105px;
    left: 14%;
    width: 280px;
  }
}

@media (min-width: 425px) and (max-width: 575.98px) {
  .cover-imgs .row {
    width: 100%;
    margin: 0;
  }
  .cover-imgs .row .img {
    height: 260px;
  }
  .cover-imgs .row .img img {
    height: 260px;
  }
  .cover-imgs .row .txt-block {
    display: block;
    height: 260px;
  }
  .cover-imgs .row .txt-block p {
    text-align: center;
    position: relative;
    top: 30%;
    padding: 0 50px;
  }
  .map-locations .wrapper .locations {
    width: 100%;
    text-align: center;
  }
  .map-locations .wrapper .locations .col {
    display: inline-block;
    float: none;
  }
  .map-locations .wrapper .map {
    top: 0;
    width: 100%;
  }
  .map-locations .wrapper .map img.anclaG_1 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaG_2 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaG_3 {
    width: 30px;
  }
  .map-locations .wrapper .map img.anclaSM {
    width: 25px;
  }
  .map-locations .wrapper .splash-wrapper {
    display: block;
    padding-top: 8em;
    margin: 0;
    height: 220px;
  }
  .map-locations .wrapper .splash-wrapper .btn-suc {
    width: 180px;
    font-size: 16px;
  }
  .map-locations .wrapper .splash-wrapper .splash-img {
    top: -105px;
    left: 17%;
    width: 280px;
  }
}

@media (min-width: 768px) {
  .cover-imgs .row .txt-block {
    height: 340px;
  }
  .map-locations .wrapper .locations {
    width: 100%;
    text-align: center;
  }
  .map-locations .wrapper .locations .col {
    display: inline-block;
    float: none;
  }
  .map-locations .wrapper .map {
    top: 0;
  }
  .map-locations .wrapper .splash-wrapper {
    display: block;
    padding-top: 8em;
    margin: 0;
    height: 220px;
  }
  .map-locations .wrapper .splash-wrapper .splash-img {
    top: -118px;
    left: 31%;
  }
}

@media (min-width: 992px) {
  .map-locations .wrapper .splash-wrapper .splash-img {
    top: -118px;
    left: 33%;
  }
}

@media (min-width: 1440px) {
  .map-locations .wrapper .splash-wrapper .splash-img {
    top: -118px;
    left: 41%;
  }
}

.main-contact {
  display: block;
  width: 100%;
  height: 620px;
  background: url("../images/bg-sun.png") center -10px no-repeat;
  background-size: cover;
  text-align: center;
  padding: 50px 0;
  padding-top: 150px;
  position: relative;
}

/*
.main-contact::after {
  content: '';
  display: block;
  width: 80%;
  height: auto;
  margin: 0 auto;
  background: url("../images/bg-sun-alt.png") center center repeat-x;
  background-size: 100%;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: -295px;
}
*/
.main-contact .wrapper .title {
  display: block;
  width: 260px;
  margin: 0 auto;
  height: auto;
}

.main-contact .wrapper p {
  font-size: 18px;
  color: #FFF;
  font-weight: bold;
  margin-top: 10px;
}

.main-contact .wrapper .main-form-contact {
  display: block;
  width: 550px;
  margin: 45px auto 0 auto;
}

.main-contact .wrapper .main-form-contact input, .main-contact .wrapper .main-form-contact textarea {
  display: block;
  width: 100%;
  margin: 3px 0;
  background: none;
  border: 1px solid #FFF;
  padding: 5px 10px;
  color: #FFF;
  border-radius: 8px;
  font-size: 16px;
}

.main-contact .wrapper .main-form-contact input::-webkit-input-placeholder, .main-contact .wrapper .main-form-contact textarea::-webkit-input-placeholder {
  color: #FFF;
}

.main-contact .wrapper .main-form-contact input::-moz-placeholder, .main-contact .wrapper .main-form-contact textarea::-moz-placeholder {
  color: #FFF;
}

.main-contact .wrapper .main-form-contact input:-ms-input-placeholder, .main-contact .wrapper .main-form-contact textarea:-ms-input-placeholder {
  color: #FFF;
}

.main-contact .wrapper .main-form-contact input:-moz-placeholder, .main-contact .wrapper .main-form-contact textarea:-moz-placeholder {
  color: #FFF;
}

.main-contact .wrapper .main-form-contact textarea {
  height: 200px;
  resize: none;
}

.main-contact .wrapper .main-form-contact .btn-submit {
  display: block;
  width: 150px;
  padding: 8px 0;
  margin: 30px auto 0 auto;
  border: 3px solid #FFF;
  border-radius: 50px;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  translate: all 2s ease;
  -webkit-translate: all 2s ease;
  -moz-translate: all 2s ease;
  -ms-translate: all 2s ease;
  -o-translate: all 2s ease;
}

@media (max-width: 575.98px) {
  .main-contact {
    height: 800px;
  }
  .main-contact::after {
    top: 52%;
    width: 100%;
    height: 400px;
  }
  .main-contact .wrapper .main-form-contact {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .main-contact {
    height: 780px;
  }
  .main-contact::after {
    width: 100%;
  }
}

@media (min-width: 992px) {
  .main-contact {
    height: 800px;
  }
  .main-contact::after {
    width: 80%;
  }
}

.owl-nav {
  width: 100%;
  margin: 0;
  position: absolute;
  top: 50%;
  bottom: 50%;
}

.owl-nav button {
  width: 50px;
  height: 100px;
  background-color: rgba(95, 95, 95, 0.658) !important;
}

.owl-nav button.owl-prev {
  border-radius: 0 50% 50% 0;
  float: left;
}

.owl-nav button.owl-prev span {
  position: absolute;
  top: 18.5px;
  left: 0;
  right: 96%;
  font-size: 3em;
  text-align: center;
}

.owl-nav button.owl-next {
  border-radius: 50% 0 0 50%;
  float: right;
}

.owl-nav button.owl-next span {
  position: absolute;
  top: 18.5px;
  right: 0;
  left: 96%;
  font-size: 3em;
  text-align: center;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXMiOlsiYXBwLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX3NldHRpbmdzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX2NvbnRleHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9faGVscGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L19wYXJzZXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9fcXVlcnkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL19zaW5nbGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL3NpbmdsZS9fZGVmYXVsdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvX2RvdWJsZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvZG91YmxlL19kZWZhdWx0LXBhaXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL2RvdWJsZS9fZG91YmxlLXN0cmluZy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JyZWFrcG9pbnQtc2Fzcy9zdHlsZXNoZWV0cy9icmVha3BvaW50L3BhcnNlcnMvZG91YmxlL19kZWZhdWx0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9fdHJpcGxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy90cmlwbGUvX2RlZmF1bHQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9wYXJzZXJzL19yZXNvbHV0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvcGFyc2Vycy9yZXNvbHV0aW9uL19yZXNvbHV0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX25vLXF1ZXJ5LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQvX3Jlc3BvbmQtdG8uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9icmVha3BvaW50LXNhc3Mvc3R5bGVzaGVldHMvYnJlYWtwb2ludC9fbGVnYWN5LXNldHRpbmdzLnNjc3MiLCJmdW5jdGlvbnMvX3JlbS1jYWxjLnNjc3MiLCJjb3JlL19yZXNldC5zY3NzIiwiY29yZS9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiY29yZS9fYnJlYWtwb2ludHMuc2NzcyIsImNvcmUvX2NvbG9ycy5zY3NzIiwiY29yZS9fZm9udHMuc2NzcyIsImNvcmUvX2dsb2JhbC5zY3NzIiwiY29yZS9fcGFnZS1sYXlvdXQuc2NzcyIsImNvcmUvX3R5cG9ncmFwaHkuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX2xpc3RzLnNjc3MiLCJjb21wb25lbnRzL19mb3RvcmFtYS5zY3NzIiwidGVtcGxhdGVzL19pbmRleC5zY3NzIiwidGVtcGxhdGVzL19wcm9kdWN0cy5zY3NzIiwidGVtcGxhdGVzL19hYm91dC5zY3NzIiwidGVtcGxhdGVzL19jb25jZXB0LnNjc3MiLCJ0ZW1wbGF0ZXMvX2xvY2F0aW9ucy5zY3NzIiwidGVtcGxhdGVzL19jb250YWN0LnNjc3MiLCJ0ZW1wbGF0ZXMvX21lbnUuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBFeHRlcm5hbCBsaWJzXG5AaW1wb3J0ICcuLi8uLi9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL2JyZWFrcG9pbnQnO1xuXG4vLyBGdW5jdGlvbnNcbkBpbXBvcnQgJ2Z1bmN0aW9ucy9yZW0tY2FsYyc7XG5cbi8vIENvcmVcbkBpbXBvcnQgJ2NvcmUvcmVzZXQnO1xuQGltcG9ydCAnY29yZS9hY2Nlc3NpYmlsaXR5JztcbkBpbXBvcnQgJ2NvcmUvYnJlYWtwb2ludHMnO1xuQGltcG9ydCAnY29yZS9jb2xvcnMnO1xuQGltcG9ydCAnY29yZS9mb250cyc7XG5AaW1wb3J0ICdjb3JlL2dsb2JhbCc7XG5AaW1wb3J0ICdjb3JlL3BhZ2UtbGF5b3V0JztcbkBpbXBvcnQgJ2NvcmUvdHlwb2dyYXBoeSc7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9ucyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xpc3RzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm90b3JhbWEnO1xuXG4vLyBUZW1wbGF0ZXNcbkBpbXBvcnQgJ3RlbXBsYXRlcy9pbmRleCc7XG5AaW1wb3J0ICd0ZW1wbGF0ZXMvcHJvZHVjdHMnO1xuQGltcG9ydCAndGVtcGxhdGVzL2Fib3V0JztcbkBpbXBvcnQgJ3RlbXBsYXRlcy9jb25jZXB0JztcbkBpbXBvcnQgJ3RlbXBsYXRlcy9sb2NhdGlvbnMnO1xuQGltcG9ydCAndGVtcGxhdGVzL2NvbnRhY3QnO1xuQGltcG9ydCAndGVtcGxhdGVzL21lbnUnO1xuXG5cblxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4kQnJlYWtwb2ludC1TZXR0aW5nczogKFxuICAnZGVmYXVsdCBtZWRpYSc6IGFsbCxcbiAgJ2RlZmF1bHQgZmVhdHVyZSc6IG1pbi13aWR0aCxcbiAgJ2RlZmF1bHQgcGFpcic6IHdpZHRoLFxuXG4gICdmb3JjZSBhbGwgbWVkaWEgdHlwZSc6IGZhbHNlLFxuICAndG8gZW1zJzogZmFsc2UsXG4gICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnOiB0cnVlLFxuXG4gICdubyBxdWVyaWVzJzogZmFsc2UsXG4gICdubyBxdWVyeSBmYWxsYmFja3MnOiBmYWxzZSxcblxuICAnYmFzZSBmb250IHNpemUnOiAxNnB4LFxuXG4gICdsZWdhY3kgc3ludGF4JzogZmFsc2Vcbik7XG5cbiRicmVha3BvaW50OiAoKSAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBJbXBvcnRzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJicmVha3BvaW50L3NldHRpbmdzXCI7XG5AaW1wb3J0ICdicmVha3BvaW50L2NvbnRleHQnO1xuQGltcG9ydCAnYnJlYWtwb2ludC9oZWxwZXJzJztcbkBpbXBvcnQgJ2JyZWFrcG9pbnQvcGFyc2Vycyc7XG5AaW1wb3J0ICdicmVha3BvaW50L25vLXF1ZXJ5JztcblxuQGltcG9ydCAnYnJlYWtwb2ludC9yZXNwb25kLXRvJztcblxuQGltcG9ydCBcImJyZWFrcG9pbnQvbGVnYWN5LXNldHRpbmdzXCI7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBNaXhpblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbkBtaXhpbiBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBsZWdhY3ktc2V0dGluZ3Mtd2FybmluZztcblxuICAvLyBSZXNldCBjb250ZXh0c1xuICBAaW5jbHVkZSBwcml2YXRlLWJyZWFrcG9pbnQtcmVzZXQtY29udGV4dHMoKTtcblxuICAkYnJlYWtwb2ludDogYnJlYWtwb2ludCgkcXVlcnksIGZhbHNlKTtcblxuICAkcXVlcnktc3RyaW5nOiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnknKTtcbiAgJHF1ZXJ5LWZhbGxiYWNrOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnZmFsbGJhY2snKTtcblxuICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtZ2V0KCRicmVha3BvaW50LCAnY29udGV4dCBob2xkZXInKSAhZ2xvYmFsO1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiBtYXAtZ2V0KCRicmVha3BvaW50LCAncXVlcnkgY291bnQnKSAhZ2xvYmFsO1xuXG4gIC8vIEFsbG93IGZvciBhbiBhcy1uZWVkZWQgb3ZlcnJpZGUgb3IgdXNhZ2Ugb2Ygbm8gcXVlcnkgZmFsbGJhY2suXG4gIEBpZiAkbm8tcXVlcnkgIT0gZmFsc2Uge1xuICAgICRxdWVyeS1mYWxsYmFjazogJG5vLXF1ZXJ5O1xuICB9XG5cbiAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJ25vLXF1ZXJ5JywgJHF1ZXJ5LWZhbGxiYWNrKTtcbiAgfVxuXG4gIC8vIFByaW50IE91dCBRdWVyeSBTdHJpbmdcbiAgQGlmIG5vdCBicmVha3BvaW50LWdldCgnbm8gcXVlcmllcycpIHtcbiAgICBAbWVkaWEgI3skcXVlcnktc3RyaW5nfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cblxuICBAaWYgYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpICE9IGZhbHNlIG9yIGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykgPT0gdHJ1ZSB7XG5cbiAgICAkdHlwZTogdHlwZS1vZihicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykpO1xuICAgICRwcmludDogZmFsc2U7XG5cbiAgICBAaWYgKCR0eXBlID09ICdib29sJykge1xuICAgICAgJHByaW50OiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ3N0cmluZycpIHtcbiAgICAgIEBpZiAkcXVlcnktZmFsbGJhY2sgPT0gYnJlYWtwb2ludC1nZXQoJ25vIHF1ZXJ5IGZhbGxiYWNrcycpIHtcbiAgICAgICAgJHByaW50OiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSBpZiAoJHR5cGUgPT0gJ2xpc3QnKSB7XG4gICAgICBAZWFjaCAkd3JhcHBlciBpbiBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgICAgICBAaWYgJHF1ZXJ5LWZhbGxiYWNrID09ICR3cmFwcGVyIHtcbiAgICAgICAgICAkcHJpbnQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcml0ZSBGYWxsYmFja1xuICAgIEBpZiAoJHF1ZXJ5LWZhbGxiYWNrICE9IGZhbHNlKSBhbmQgKCRwcmludCA9PSB0cnVlKSB7XG4gICAgICAkdHlwZS1mYWxsYmFjazogdHlwZS1vZigkcXVlcnktZmFsbGJhY2spO1xuXG4gICAgICBAaWYgKCR0eXBlLWZhbGxiYWNrICE9ICdib29sJykge1xuICAgICAgICAjeyRxdWVyeS1mYWxsYmFja30gJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcHJpdmF0ZS1icmVha3BvaW50LXJlc2V0LWNvbnRleHRzKCk7XG59XG5cblxuQG1peGluIG1xKCRxdWVyeSwgJG5vLXF1ZXJ5OiBmYWxzZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRxdWVyeSwgJG5vLXF1ZXJ5KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSGFzIFNldHRpbmdcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaGFzKCRzZXR0aW5nKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludCwgJHNldHRpbmcpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gZmFsc2U7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBHZXQgU2V0dGluZ3Ncbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtZ2V0KCRzZXR0aW5nKSB7XG4gIEBpZiBicmVha3BvaW50LWhhcygkc2V0dGluZykge1xuICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludCwgJHNldHRpbmcpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJEJyZWFrcG9pbnQtU2V0dGluZ3MsICRzZXR0aW5nKTtcbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFNldCBTZXR0aW5nc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1zZXQoJHNldHRpbmcsICR2YWx1ZSkge1xuICBAaWYgKHN0ci1pbmRleCgkc2V0dGluZywgJy0nKSBvciBzdHItaW5kZXgoJHNldHRpbmcsICdfJykpIGFuZCBzdHItaW5kZXgoJHNldHRpbmcsICcgJykgPT0gbnVsbCB7XG4gICAgQHdhcm4gXCJXb3JkcyBpbiBCcmVha3BvaW50IHNldHRpbmdzIHNob3VsZCBiZSBzZXBhcmF0ZWQgYnkgc3BhY2VzLCBub3QgZGFzaGVzIG9yIHVuZGVyc2NvcmVzLiBQbGVhc2UgcmVwbGFjZSBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzIGJldHdlZW4gd29yZHMgd2l0aCBzcGFjZXMuIFNldHRpbmdzIHdpbGwgbm90IHdvcmsgYXMgZXhwZWN0ZWQgdW50aWwgY2hhbmdlZC5cIjtcbiAgfVxuICAkYnJlYWtwb2ludDogbWFwLW1lcmdlKCRicmVha3BvaW50LCAoJHNldHRpbmc6ICR2YWx1ZSkpICFnbG9iYWw7XG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuQG1peGluIGJyZWFrcG9pbnQtY2hhbmdlKCRzZXR0aW5nLCAkdmFsdWUpIHtcbiAgJGJyZWFrcG9pbnQtY2hhbmdlOiBicmVha3BvaW50LXNldCgkc2V0dGluZywgJHZhbHVlKTtcbn1cblxuQG1peGluIGJyZWFrcG9pbnQtc2V0KCRzZXR0aW5nLCAkdmFsdWUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludC1jaGFuZ2UoJHNldHRpbmcsICR2YWx1ZSk7XG59XG5cbkBtaXhpbiBia3B0LWNoYW5nZSgkc2V0dGluZywgJHZhbHVlKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQtY2hhbmdlKCRzZXR0aW5nLCAkdmFsdWUpO1xufVxuQG1peGluIGJrcHQtc2V0KCRzZXR0aW5nLCAkdmFsdWUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludC1jaGFuZ2UoJHNldHRpbmcsICR2YWx1ZSk7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmVtb3ZlIFNldHRpbmdcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcmVzZXQoJHNldHRpbmdzLi4uKSB7XG4gIEBpZiBsZW5ndGgoJHNldHRpbmdzKSA9PSAxIHtcbiAgICAkc2V0dGluZ3M6IG50aCgkc2V0dGluZ3MsIDEpO1xuICB9XG5cbiAgQGVhY2ggJHNldHRpbmcgaW4gJHNldHRpbmdzIHtcbiAgICAkYnJlYWtwb2ludDogbWFwLXJlbW92ZSgkYnJlYWtwb2ludCwgJHNldHRpbmcpICFnbG9iYWw7XG4gIH1cbiAgQHJldHVybiB0cnVlO1xufVxuXG5AbWl4aW4gYnJlYWtwb2ludC1yZXNldCgkc2V0dGluZ3MuLi4pIHtcbiAgJGJyZWFrcG9pbnQtcmVzZXQ6IGJyZWFrcG9pbnQtcmVzZXQoJHNldHRpbmdzKTtcbn1cblxuQG1peGluIGJrcHQtcmVzZXQoJHNldHRpbmdzLi4uKSB7XG4gICRicmVha3BvaW50LXJlc2V0OiBicmVha3BvaW50LXJlc2V0KCRzZXR0aW5ncyk7XG59IiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBQcml2YXRlIEJyZWFrcG9pbnQgVmFyaWFibGVzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6ICgpO1xuJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogMCAhZGVmYXVsdDtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IEhhcyBDb250ZXh0XG4vLyBSZXR1cm5zIHdoZXRoZXIgb3Igbm90IHlvdSBhcmUgaW5zaWRlIGEgQnJlYWtwb2ludCBxdWVyeVxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1oYXMtY29udGV4dCgpIHtcbiAgQGlmIGxlbmd0aCgkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50KSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gQnJlYWtwb2ludCBHZXQgQ29udGV4dFxuLy8gJGZlYXR1cmU6IElucHV0IGZlYXR1cmUgdG8gZ2V0IGl0J3MgY3VycmVudCBNUSBjb250ZXh0LiBSZXR1cm5zIGZhbHNlIGlmIG5vIGNvbnRleHRcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtZ2V0LWNvbnRleHQoJGZlYXR1cmUpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICRmZWF0dXJlKSB7XG4gICAgJGdldDogbWFwLWdldCgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSk7XG4gICAgLy8gU3BlY2lhbCBoYW5kbGluZyBvZiBuby1xdWVyeSBmcm9tIGdldCBzaWRlIHNvIC9mYWxzZS8gcHJlcGVuZHMgYXJlbid0IHJldHVybmVkXG4gICAgQGlmICRmZWF0dXJlID09ICduby1xdWVyeScge1xuICAgICAgQGlmIHR5cGUtb2YoJGdldCkgPT0gJ2xpc3QnIGFuZCBsZW5ndGgoJGdldCkgPiAxIGFuZCBudGgoJGdldCwgMSkgPT0gZmFsc2Uge1xuICAgICAgICAkZ2V0OiBudGgoJGdldCwgbGVuZ3RoKCRnZXQpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgQHJldHVybiAkZ2V0O1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgYnJlYWtwb2ludC1oYXMtY29udGV4dCgpIGFuZCAkZmVhdHVyZSA9PSAnbWVkaWEnIHtcbiAgICAgIEByZXR1cm4gYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgbWVkaWEnKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBQcml2YXRlIGZ1bmN0aW9uIHRvIHNldCBjb250ZXh0XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICR2YWx1ZSkge1xuICBAaWYgJHZhbHVlID09ICdtb25vY2hyb21lJyB7XG4gICAgJGZlYXR1cmU6ICdtb25vY2hyb21lJztcbiAgfVxuXG4gICRjdXJyZW50OiBtYXAtZ2V0KCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICRmZWF0dXJlKTtcbiAgQGlmICRjdXJyZW50IGFuZCBsZW5ndGgoJGN1cnJlbnQpID09ICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQge1xuICAgIEB3YXJuIFwiWW91IGhhdmUgYWxyZWFkeSBxdWVyaWVkIGFnYWluc3QgYCN7JGZlYXR1cmV9YC4gVW5leHBlY3RlZCB0aGluZ3MgbWF5IGhhcHBlbiBpZiB5b3UgcXVlcnkgYWdhaW5zdCB0aGUgc2FtZSBmZWF0dXJlIG1vcmUgdGhhbiBvbmNlIGluIHRoZSBzYW1lIGBhbmRgIHF1ZXJ5LiBCcmVha3BvaW50IGlzIG92ZXJ3cml0aW5nIHRoZSBjdXJyZW50IGNvbnRleHQgd2l0aCBgI3skdmFsdWV9YFwiO1xuICB9XG5cbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyLCAkZmVhdHVyZSkge1xuICAgICR2LWhvbGRlcjogKCk7XG4gICAgQGZvciAkaSBmcm9tIDEgdG8gJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCB7XG4gICAgICBAaWYgJGZlYXR1cmUgPT0gJ21lZGlhJyB7XG4gICAgICAgICR2LWhvbGRlcjogYXBwZW5kKCR2LWhvbGRlciwgYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgbWVkaWEnKSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2LWhvbGRlcjogYXBwZW5kKCR2LWhvbGRlciwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsICR2YWx1ZSk7XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLW1lcmdlKCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICgkZmVhdHVyZTogJHYtaG9sZGVyKSkgIWdsb2JhbDtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHYtaG9sZGVyOiBtYXAtZ2V0KCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICRmZWF0dXJlKTtcbiAgICAkbGVuZ3RoOiBsZW5ndGgoJHYtaG9sZGVyKTtcbiAgICBAZm9yICRpIGZyb20gJGxlbmd0aCB0byAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50IC0gMSB7XG4gICAgICBAaWYgJGZlYXR1cmUgPT0gJ21lZGlhJyB7XG4gICAgICAgICR2LWhvbGRlcjogYXBwZW5kKCR2LWhvbGRlciwgYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgbWVkaWEnKSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICR2LWhvbGRlcjogYXBwZW5kKCR2LWhvbGRlciwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsICR2YWx1ZSk7XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogbWFwLW1lcmdlKCRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXIsICgkZmVhdHVyZTogJHYtaG9sZGVyKSkgIWdsb2JhbDtcbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBQcml2YXRlIGZ1bmN0aW9uIHRvIHJlc2V0IGNvbnRleHRcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQG1peGluIHByaXZhdGUtYnJlYWtwb2ludC1yZXNldC1jb250ZXh0cyB7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6ICgpICFnbG9iYWw7XG4gICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQ6IDAgIWdsb2JhbDtcbn0iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIENvbnZlcnRzIHRoZSBpbnB1dCB2YWx1ZSB0byBCYXNlIEVNc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AZnVuY3Rpb24gYnJlYWtwb2ludC10by1iYXNlLWVtKCR2YWx1ZSkge1xuICAkdmFsdWUtdW5pdDogdW5pdCgkdmFsdWUpO1xuXG4gIC8vIFdpbGwgY29udmVydCByZWxhdGl2ZSBFTXMgaW50byByb290IEVNcy5cbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCdiYXNlIGZvbnQgc2l6ZScpIGFuZCB0eXBlLW9mKGJyZWFrcG9pbnQtZ2V0KCdiYXNlIGZvbnQgc2l6ZScpKSA9PSAnbnVtYmVyJyBhbmQgJHZhbHVlLXVuaXQgPT0gJ2VtJyB7XG4gICAgJGJhc2UtdW5pdDogdW5pdChicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSk7XG5cbiAgICBAaWYgJGJhc2UtdW5pdCA9PSAncHgnIG9yICRiYXNlLXVuaXQgPT0gJyUnIG9yICRiYXNlLXVuaXQgPT0gJ2VtJyBvciAkYmFzZS11bml0ID09ICdwdCcge1xuICAgICAgQHJldHVybiBiYXNlLWNvbnZlcnNpb24oJHZhbHVlKSAvIGJhc2UtY29udmVyc2lvbihicmVha3BvaW50LWdldCgnYmFzZSBmb250IHNpemUnKSkgKiAxZW07XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICcje2JyZWFrcG9pbnQtZ2V0KFxcJ2Jhc2UgZm9udCBzaXplXFwnKX0gaXMgbm90IHNldCBpbiB2YWxpZCB1bml0cyBmb3IgZm9udCBzaXplISc7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBiYXNlLWNvbnZlcnNpb24oJHZhbHVlKTtcbiAgfVxufVxuXG5AZnVuY3Rpb24gYmFzZS1jb252ZXJzaW9uKCR2YWx1ZSkge1xuICAkdW5pdDogdW5pdCgkdmFsdWUpO1xuXG4gIEBpZiAkdW5pdCA9PSAncHgnIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIDE2cHggKiAxZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gJyUnIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIDEwMCUgKiAxZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gJ2VtJyB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gJ3B0JyB7XG4gICAgQHJldHVybiAkdmFsdWUgLyAxMnB0ICogMWVtO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbi8vICAgIEB3YXJuICdFdmVyeXRoaW5nIGlzIHRlcnJpYmxlISBXaGF0IGhhdmUgeW91IGRvbmU/ISc7XG4gIH1cbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBSZXR1cm5zIHdoZXRoZXIgdGhlIGZlYXR1cmUgY2FuIGhhdmUgYSBtaW4vbWF4IHBhaXJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJGJyZWFrcG9pbnQtbWluLW1heC1mZWF0dXJlczogJ2NvbG9yJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjb2xvci1pbmRleCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnYXNwZWN0LXJhdGlvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXZpY2UtYXNwZWN0LXJhdGlvJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXZpY2UtaGVpZ2h0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdkZXZpY2Utd2lkdGgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2hlaWdodCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbW9ub2Nocm9tZScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncmVzb2x1dGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnd2lkdGgnO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4tbWF4KCRmZWF0dXJlKSB7XG4gIEBlYWNoICRpdGVtIGluICRicmVha3BvaW50LW1pbi1tYXgtZmVhdHVyZXMge1xuICAgIEBpZiAkZmVhdHVyZSA9PSAkaXRlbSB7XG4gICAgICBAcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBmZWF0dXJlIGNhbiBoYXZlIGEgc3RyaW5nIHZhbHVlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50LXN0cmluZy1mZWF0dXJlczogICdvcmllbnRhdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2NhbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY29sb3InLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2FzcGVjdC1yYXRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZGV2aWNlLWFzcGVjdC1yYXRpbycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncG9pbnRlcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbHVtaW5vc2l0eSc7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LXN0cmluZy12YWx1ZSgkZmVhdHVyZSkge1xuICBAZWFjaCAkaXRlbSBpbiAkYnJlYWtwb2ludC1zdHJpbmctZmVhdHVyZXMge1xuICAgIEBpZiBicmVha3BvaW50LW1pbi1tYXgoJGl0ZW0pIHtcbiAgICAgIEBpZiAkZmVhdHVyZSA9PSAnbWluLSN7JGl0ZW19JyBvciAkZmVhdHVyZSA9PSAnbWF4LSN7JGl0ZW19JyB7XG4gICAgICAgIEByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2UgaWYgJGZlYXR1cmUgPT0gJGl0ZW0ge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIFJldHVybnMgd2hldGhlciB0aGUgZmVhdHVyZSBpcyBhIG1lZGlhIHR5cGVcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJGJyZWFrcG9pbnQtbWVkaWEtdHlwZXM6ICAnYWxsJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2JyYWlsbGUnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnZW1ib3NzZWQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnaGFuZGhlbGQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAncHJpbnQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAncHJvamVjdGlvbicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICdzY3JlZW4nLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnc3BlZWNoJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3R0eScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICd0dic7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LWlzLW1lZGlhKCRmZWF0dXJlKSB7XG4gIEBlYWNoICRtZWRpYSBpbiAkYnJlYWtwb2ludC1tZWRpYS10eXBlcyB7XG4gICAgQGlmICgkZmVhdHVyZSA9PSAkbWVkaWEpIG9yICgkZmVhdHVyZSA9PSAnbm90ICN7JG1lZGlhfScpIG9yICgkZmVhdHVyZSA9PSAnb25seSAjeyRtZWRpYX0nKSB7XG4gICAgICBAcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBSZXR1cm5zIHdoZXRoZXIgdGhlIGZlYXR1cmUgY2FuIHN0YW5kIGFsb25lXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbiRicmVha3BvaW50LXNpbmdsZS1zdHJpbmctZmVhdHVyZXM6ICdjb2xvcicsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY29sb3ItaW5kZXgnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2dyaWQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ21vbm9jaHJvbWUnO1xuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCRmZWF0dXJlKSB7XG4gIEBlYWNoICRpdGVtIGluICRicmVha3BvaW50LXNpbmdsZS1zdHJpbmctZmVhdHVyZXMge1xuICAgIEBpZiAkZmVhdHVyZSA9PSAkaXRlbSB7XG4gICAgICBAcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBmZWF0dXJlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LWlzLXJlc29sdXRpb24oJGZlYXR1cmUpIHtcbiAgJHJlc29sdXRpb25zOiAnZGV2aWNlLXBpeGVsLXJhdGlvJywgJ2Rwcic7XG5cbiAgQGlmIGJyZWFrcG9pbnQtZ2V0KCd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnKSB7XG4gICAgJHJlc29sdXRpb25zOiBhcHBlbmQoJHJlc29sdXRpb25zLCAncmVzb2x1dGlvbicpO1xuICB9XG5cbiAgQGVhY2ggJHJlc28gaW4gJHJlc29sdXRpb25zIHtcbiAgICBAaWYgaW5kZXgoJGZlYXR1cmUsICRyZXNvKSBvciBpbmRleCgkZmVhdHVyZSwgJ21pbi0jeyRyZXNvfScpIG9yIGluZGV4KCRmZWF0dXJlLCAnbWF4LSN7JHJlc299Jykge1xuICAgICAgQHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gZmFsc2U7XG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydCBQYXJzZXIgUGllY2VzXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBpbXBvcnQgXCJwYXJzZXJzL3F1ZXJ5XCI7XG5AaW1wb3J0IFwicGFyc2Vycy9zaW5nbGVcIjtcbkBpbXBvcnQgXCJwYXJzZXJzL2RvdWJsZVwiO1xuQGltcG9ydCBcInBhcnNlcnMvdHJpcGxlXCI7XG5AaW1wb3J0IFwicGFyc2Vycy9yZXNvbHV0aW9uXCI7XG5cbiRNZW1vLUV4aXN0czogZnVuY3Rpb24tZXhpc3RzKG1lbW8tZ2V0KSBhbmQgZnVuY3Rpb24tZXhpc3RzKG1lbW8tc2V0KTtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBCcmVha3BvaW50IEZ1bmN0aW9uXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50KCRxdWVyeSwgJGNvbnRleHRzLi4uKSB7XG4gICRydW46IHRydWU7XG4gICRyZXR1cm46ICgpO1xuXG4gIC8vIEdyYWIgdGhlIE1lbW8gT3V0cHV0IGlmIE1lbW9pemF0aW9uIGNhbiBiZSBhIHRoaW5nXG4gIEBpZiAkTWVtby1FeGlzdHMge1xuICAgICRyZXR1cm46IG1lbW8tZ2V0KGJyZWFrcG9pbnQsIGJyZWFrcG9pbnQgJHF1ZXJ5ICRjb250ZXh0cyk7XG5cbiAgICBAaWYgJHJldHVybiAhPSBudWxsIHtcbiAgICAgICRydW46IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJE1lbW8tRXhpc3RzIG9yICRydW4ge1xuICAgIC8vIEludGVybmFsIFZhcmlhYmxlc1xuICAgICRxdWVyeS1zdHJpbmc6ICcnO1xuICAgICRxdWVyeS1mYWxsYmFjazogZmFsc2U7XG4gICAgJHJldHVybjogKCk7XG5cbiAgICAvLyBSZXNlcnZlIEdsb2JhbCBQcml2YXRlIEJyZWFrcG9pbnQgQ29udGV4dFxuICAgICRob2xkZXItY29udGV4dDogJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjtcbiAgICAkaG9sZGVyLXF1ZXJ5LWNvdW50OiAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50O1xuXG4gICAgLy8gUmVzZXQgR2xvYmFsIFByaXZhdGUgQnJlYWtwb2ludCBDb250ZXh0XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcjogKCkgIWdsb2JhbDtcbiAgICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiAwICFnbG9iYWw7XG5cblxuICAgIC8vIFRlc3QgdG8gc2VlIGlmIGl0J3MgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdFxuICAgICRvci1saXN0OiBpZihsaXN0LXNlcGFyYXRvcigkcXVlcnkpID09ICdjb21tYScsIHRydWUsIGZhbHNlKTtcblxuXG4gICAgQGlmICgkb3ItbGlzdCA9PSBmYWxzZSBhbmQgYnJlYWtwb2ludC1nZXQoJ2xlZ2FjeSBzeW50YXgnKSA9PSBmYWxzZSkge1xuICAgICAgJHF1ZXJ5LXN0cmluZzogYnJlYWtwb2ludC1wYXJzZSgkcXVlcnkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkbGVuZ3RoOiBsZW5ndGgoJHF1ZXJ5KTtcblxuICAgICAgJGxhc3Q6IG50aCgkcXVlcnksICRsZW5ndGgpO1xuICAgICAgJHF1ZXJ5LWZhbGxiYWNrOiBicmVha3BvaW50LW5vLXF1ZXJ5KCRsYXN0KTtcblxuICAgICAgQGlmICgkcXVlcnktZmFsbGJhY2sgIT0gZmFsc2UpIHtcbiAgICAgICAgJGxlbmd0aDogJGxlbmd0aCAtIDE7XG4gICAgICB9XG5cbiAgICAgIEBpZiAoYnJlYWtwb2ludC1nZXQoJ2xlZ2FjeSBzeW50YXgnKSA9PSB0cnVlKSB7XG4gICAgICAgICRtcTogKCk7XG5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbGVuZ3RoIHtcbiAgICAgICAgICAkbXE6IGFwcGVuZCgkbXEsIG50aCgkcXVlcnksICRpKSwgY29tbWEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJHF1ZXJ5LXN0cmluZzogYnJlYWtwb2ludC1wYXJzZSgkbXEpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkcXVlcnktc3RyaW5nOiAnJztcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbGVuZ3RoIHtcbiAgICAgICAgICAkcXVlcnktc3RyaW5nOiAkcXVlcnktc3RyaW5nICsgaWYoJGkgPT0gMSwgJycsICcsICcpICsgYnJlYWtwb2ludC1wYXJzZShudGgoJHF1ZXJ5LCAkaSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJHJldHVybjogKCdxdWVyeSc6ICRxdWVyeS1zdHJpbmcsXG4gICAgICAgICdmYWxsYmFjayc6ICRxdWVyeS1mYWxsYmFjayxcbiAgICAgICAgJ2NvbnRleHQgaG9sZGVyJzogJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlcixcbiAgICAgICAgJ3F1ZXJ5IGNvdW50JzogJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudFxuICAgICk7XG4gICAgQGlmIGxlbmd0aCgkY29udGV4dHMpID4gMCBhbmQgbnRoKCRjb250ZXh0cywgMSkgIT0gZmFsc2Uge1xuICAgICAgQGlmICRxdWVyeS1mYWxsYmFjayAhPSBmYWxzZSB7XG4gICAgICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KCduby1xdWVyeScsICRxdWVyeS1mYWxsYmFjayk7XG4gICAgICB9XG4gICAgICAkY29udGV4dC1tYXA6ICgpO1xuICAgICAgQGVhY2ggJGNvbnRleHQgaW4gJGNvbnRleHRzIHtcbiAgICAgICAgJGNvbnRleHQtbWFwOiBtYXAtbWVyZ2UoJGNvbnRleHQtbWFwLCAoJGNvbnRleHQ6IGJyZWFrcG9pbnQtZ2V0LWNvbnRleHQoJGNvbnRleHQpKSk7XG4gICAgICB9XG4gICAgICAkcmV0dXJuOiBtYXAtbWVyZ2UoJHJldHVybiwgKGNvbnRleHQ6ICRjb250ZXh0LW1hcCkpO1xuICAgIH1cblxuICAgIC8vIFJlc2V0IEdsb2JhbCBQcml2YXRlIEJyZWFrcG9pbnQgQ29udGV4dFxuICAgICRwcml2YXRlLWJyZWFrcG9pbnQtY29udGV4dC1ob2xkZXI6ICgpICFnbG9iYWw7XG4gICAgJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudDogMCAhZ2xvYmFsO1xuXG4gICAgQGlmICRNZW1vLUV4aXN0cyB7XG4gICAgICAkaG9sZGVyOiBtZW1vLXNldChicmVha3BvaW50LCBicmVha3BvaW50ICRxdWVyeSAkY29udGV4dHMsICRyZXR1cm4pO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBHZW5lcmFsIEJyZWFrcG9pbnQgUGFyc2VyXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlKCRxdWVyeSkge1xuICAvLyBJbmNyZWFzZSBudW1iZXIgb2YgJ2FuZCcgcXVlcmllc1xuICAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50OiAkcHJpdmF0ZS1icmVha3BvaW50LXF1ZXJ5LWNvdW50ICsgMSAhZ2xvYmFsO1xuXG4gIC8vIFNldCB1cCBNZWRpYSBUeXBlXG4gICRxdWVyeS1wcmludDogJyc7XG5cbiAgJGZvcmNlLWFsbDogKChicmVha3BvaW50LWdldCgnZm9yY2UgYWxsIG1lZGlhIHR5cGUnKSA9PSB0cnVlKSBhbmQgKGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykgPT0gJ2FsbCcpKTtcbiAgJGVtcHR5LW1lZGlhOiB0cnVlO1xuICBAaWYgKCRmb3JjZS1hbGwgPT0gdHJ1ZSkgb3IgKGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykgIT0gJ2FsbCcpIHtcbiAgICAvLyBGb3JjZSB0aGUgcHJpbnQgb2YgdGhlIGRlZmF1bHQgbWVkaWEgdHlwZSBpZiAoZm9yY2UgYWxsIGlzIHRydWUgYW5kIGRlZmF1bHQgbWVkaWEgdHlwZSBpcyBhbGwpIG9yIChkZWZhdWx0IG1lZGlhIHR5cGUgaXMgbm90IGFsbClcbiAgICAkcXVlcnktcHJpbnQ6IGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJyk7XG4gICAgJGVtcHR5LW1lZGlhOiBmYWxzZTtcbiAgfVxuXG5cbiAgJHF1ZXJ5LXJlc29sdXRpb246IGZhbHNlO1xuXG4gICRxdWVyeS1ob2xkZXI6IGJyZWFrcG9pbnQtcGFyc2UtcXVlcnkoJHF1ZXJ5KTtcblxuXG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggcGFyc2VkIG91dCBxdWVyeSBhbmQgd3JpdGUgaXQgdG8gJHF1ZXJ5LXByaW50XG4gICRmaXJzdDogdHJ1ZTtcblxuICBAZWFjaCAkZmVhdHVyZSBpbiAkcXVlcnktaG9sZGVyIHtcbiAgICAkbGVuZ3RoOiBsZW5ndGgoJGZlYXR1cmUpO1xuXG4gICAgLy8gUGFyc2UgYSBzaW5nbGUgZmVhdHVyZVxuICAgIEBpZiAoJGxlbmd0aCA9PSAxKSB7XG4gICAgICAvLyBGZWF0dXJlIGlzIGN1cnJlbnRseSBhIGxpc3QsIGdyYWIgdGhlIGFjdHVhbCB2YWx1ZVxuICAgICAgJGZlYXR1cmU6IG50aCgkZmVhdHVyZSwgMSk7XG5cbiAgICAgIC8vIE1lZGlhIFR5cGUgbXVzdCBieSBjb252ZW50aW9uIGJlIHRoZSBmaXJzdCBpdGVtLCBzbyBpdCdzIHNhZmUgdG8gZmxhdCBvdmVycmlkZSAkcXVlcnktcHJpbnQsIHdoaWNoIHJpZ2h0IG5vdyBzaG91bGQgb25seSBiZSB0aGUgZGVmYXVsdCBtZWRpYSB0eXBlXG4gICAgICBAaWYgKGJyZWFrcG9pbnQtaXMtbWVkaWEoJGZlYXR1cmUpKSB7XG4gICAgICAgIEBpZiAoJGZvcmNlLWFsbCA9PSB0cnVlKSBvciAoJGZlYXR1cmUgIT0gJ2FsbCcpIHtcbiAgICAgICAgICAvLyBGb3JjZSB0aGUgcHJpbnQgb2YgdGhlIGRlZmF1bHQgbWVkaWEgdHlwZSBpZiAoZm9yY2UgYWxsIGlzIHRydWUgYW5kIGRlZmF1bHQgbWVkaWEgdHlwZSBpcyBhbGwpIG9yIChkZWZhdWx0IG1lZGlhIHR5cGUgaXMgbm90IGFsbClcbiAgICAgICAgICAkcXVlcnktcHJpbnQ6ICRmZWF0dXJlO1xuICAgICAgICAgICRlbXB0eS1tZWRpYTogZmFsc2U7XG5cbiAgICAgICAgICAvLyBTZXQgQ29udGV4dFxuICAgICAgICAgICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KG1lZGlhLCAkcXVlcnktcHJpbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2Utc2luZ2xlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAgICRxdWVyeS1wcmludDogJyN7JHF1ZXJ5LXByaW50fSAjeyRwYXJzZWR9JztcbiAgICAgICAgJGZpcnN0OiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gUGFyc2UgYSBkb3VibGUgZmVhdHVyZVxuICAgIEBlbHNlIGlmICgkbGVuZ3RoID09IDIpIHtcbiAgICAgIEBpZiAoYnJlYWtwb2ludC1pcy1yZXNvbHV0aW9uKCRmZWF0dXJlKSAhPSBmYWxzZSkge1xuICAgICAgICAkcXVlcnktcmVzb2x1dGlvbjogJGZlYXR1cmU7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRwYXJzZWQ6IG51bGw7XG4gICAgICAgIC8vIElmIGl0J3MgYSBzdHJpbmcvbnVtYmVyIHBhaXIsXG4gICAgICAgIC8vIHdlIGNoZWNrIHRvIHNlZSBpZiBvbmUgaXMgYSBzaW5nbGUtc3RyaW5nIHZhbHVlLFxuICAgICAgICAvLyB0aGVuIHdlIHBhcnNlIGl0IGFzIGEgbm9ybWFsIGRvdWJsZVxuICAgICAgICAkYWxwaGE6IG50aCgkZmVhdHVyZSwgMSk7XG4gICAgICAgICRiZXRhOiBudGgoJGZlYXR1cmUsIDIpO1xuICAgICAgICBAaWYgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCRhbHBoYSkgb3IgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCRiZXRhKSB7XG4gICAgICAgICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1zaW5nbGUoJGFscGhhLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAgICAgJHF1ZXJ5LXByaW50OiAnI3skcXVlcnktcHJpbnR9ICN7JHBhcnNlZH0nO1xuICAgICAgICAgICRmaXJzdDogZmFsc2U7XG4gICAgICAgICAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS1zaW5nbGUoJGJldGEsICRlbXB0eS1tZWRpYSwgJGZpcnN0KTtcbiAgICAgICAgICAkcXVlcnktcHJpbnQ6ICcjeyRxdWVyeS1wcmludH0gI3skcGFyc2VkfSc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtZG91YmxlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAgICAgJHF1ZXJ5LXByaW50OiAnI3skcXVlcnktcHJpbnR9ICN7JHBhcnNlZH0nO1xuICAgICAgICAgICRmaXJzdDogZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLy8gUGFyc2UgYSB0cmlwbGUgZmVhdHVyZVxuICAgIEBlbHNlIGlmICgkbGVuZ3RoID09IDMpIHtcbiAgICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtdHJpcGxlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCk7XG4gICAgICAkcXVlcnktcHJpbnQ6ICcjeyRxdWVyeS1wcmludH0gI3skcGFyc2VkfSc7XG4gICAgICAkZmlyc3Q6IGZhbHNlO1xuICAgIH1cblxuICB9XG5cbiAgQGlmICgkcXVlcnktcmVzb2x1dGlvbiAhPSBmYWxzZSkge1xuICAgICRxdWVyeS1wcmludDogYnJlYWtwb2ludC1idWlsZC1yZXNvbHV0aW9uKCRxdWVyeS1wcmludCwgJHF1ZXJ5LXJlc29sdXRpb24sICRlbXB0eS1tZWRpYSwgJGZpcnN0KTtcbiAgfVxuXG4gIC8vIExvb3AgdGhyb3VnaCBlYWNoIGZlYXR1cmUgdGhhdCdzIGJlZW4gZGV0ZWN0ZWQgc28gZmFyIGFuZCBhcHBlbmQgJ2ZhbHNlJyB0byB0aGUgdGhlIHZhbHVlIGxpc3QgdG8gaW5jcmVtZW50IHRoZWlyIGNvdW50ZXJzXG4gIEBlYWNoICRmLCAkdiBpbiAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyIHtcbiAgICAkdi1ob2xkZXI6ICR2O1xuICAgICRsZW5ndGg6IGxlbmd0aCgkdi1ob2xkZXIpO1xuICAgIEBpZiBsZW5ndGgoJHYtaG9sZGVyKSA8ICRwcml2YXRlLWJyZWFrcG9pbnQtcXVlcnktY291bnQge1xuICAgICAgQGZvciAkaSBmcm9tICRsZW5ndGggdG8gJHByaXZhdGUtYnJlYWtwb2ludC1xdWVyeS1jb3VudCB7XG4gICAgICAgIEBpZiAkZiA9PSAnbWVkaWEnIHtcbiAgICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IG1lZGlhJykpO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAkdi1ob2xkZXI6IGFwcGVuZCgkdi1ob2xkZXIsIGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAkcHJpdmF0ZS1icmVha3BvaW50LWNvbnRleHQtaG9sZGVyOiBtYXAtbWVyZ2UoJHByaXZhdGUtYnJlYWtwb2ludC1jb250ZXh0LWhvbGRlciwgKCRmOiAkdi1ob2xkZXIpKSAhZ2xvYmFsO1xuICB9XG5cbiAgQHJldHVybiAkcXVlcnktcHJpbnQ7XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1xdWVyeSgkcXVlcnkpIHtcbiAgLy8gUGFyc2UgZmVhdHVyZXMgb3V0IG9mIGFuIGluZGl2aWR1YWwgcXVlcnlcbiAgJGZlYXR1cmUtaG9sZGVyOiAoKTtcbiAgJHF1ZXJ5LWhvbGRlcjogKCk7XG4gICRsZW5ndGg6IGxlbmd0aCgkcXVlcnkpO1xuXG4gIEBpZiAkbGVuZ3RoID09IDIge1xuICAgIC8vIElmIHdlJ3ZlIGdvdCBhIHN0cmluZy9udW1iZXIsIG51bWJlci9zdHJpbmcsIGNoZWNrIHRvIHNlZSBpZiBpdCdzIGEgdmFsaWQgc3RyaW5nL251bWJlciBwYWlyIG9yIHR3byBzaW5nbGVzXG4gICAgQGlmICh0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSAnc3RyaW5nJyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgPT0gJ251bWJlcicpIG9yICh0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSAnbnVtYmVyJyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgPT0gJ3N0cmluZycpIHtcblxuICAgICAgJG51bWJlcjogJyc7XG4gICAgICAkdmFsdWU6ICcnO1xuXG4gICAgICBAaWYgdHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgPT0gJ3N0cmluZycge1xuICAgICAgICAkbnVtYmVyOiBudGgoJHF1ZXJ5LCAyKTtcbiAgICAgICAgJHZhbHVlOiBudGgoJHF1ZXJ5LCAxKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJG51bWJlcjogbnRoKCRxdWVyeSwgMSk7XG4gICAgICAgICR2YWx1ZTogbnRoKCRxdWVyeSwgMik7XG4gICAgICB9XG5cbiAgICAgIC8vIElmIHRoZSBzdHJpbmcgdmFsdWUgY2FuIGJlIGEgc2luZ2xlIHZhbHVlLCBjaGVjayB0byBzZWUgaWYgdGhlIG51bWJlciBwYXNzZWQgaW4gaXMgYSB2YWxpZCBpbnB1dCBmb3Igc2FpZCBzaW5nbGUgdmFsdWUuIEZvcnR1bmF0ZWx5LCBhbGwgY3VycmVudCBzaW5nbGUtdmFsdWUgb3B0aW9ucyBvbmx5IGFjY2VwdCB1bml0bGVzcyBudW1iZXJzLCBzbyB0aGlzIGNoZWNrIGlzIGVhc3kuXG4gICAgICBAaWYgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCR2YWx1ZSkge1xuICAgICAgICBAaWYgdW5pdGxlc3MoJG51bWJlcikge1xuICAgICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKCR2YWx1ZSwgJG51bWJlciwgc3BhY2UpO1xuICAgICAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCAkZmVhdHVyZS1ob2xkZXIsIGNvbW1hKTtcbiAgICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC8vIElmIHRoZSBzdHJpbmcgaXMgYSBtZWRpYSB0eXBlLCBzcGxpdCB0aGUgcXVlcnlcbiAgICAgIEBpZiBicmVha3BvaW50LWlzLW1lZGlhKCR2YWx1ZSkge1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgbnRoKCRxdWVyeSwgMSkpO1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgbnRoKCRxdWVyeSwgMikpO1xuICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICB9XG4gICAgICAvLyBJZiBpdCdzIG5vdCBhIHNpbmdsZSBmZWF0dXJlLCB3ZSdyZSBqdXN0IGdvaW5nIHRvIGFzc3VtZSBpdCdzIGEgcHJvcGVyIHN0cmluZy92YWx1ZSBwYWlyLCBhbmQgcm9sbCB3aXRoIGl0LlxuICAgICAgQGVsc2Uge1xuICAgICAgICAkZmVhdHVyZS1ob2xkZXI6IGFwcGVuZCgkdmFsdWUsICRudW1iZXIsIHNwYWNlKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlciwgY29tbWEpO1xuICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICB9XG5cbiAgICB9XG4gICAgLy8gSWYgdGhleSdyZSBib3RoIG51bWJlcnMsIHdlIGFzc3VtZSBpdCdzIGEgZG91YmxlIGFuZCByb2xsIHdpdGggdGhhdFxuICAgIEBlbHNlIGlmICh0eXBlLW9mKG50aCgkcXVlcnksIDEpKSA9PSAnbnVtYmVyJyBhbmQgdHlwZS1vZihudGgoJHF1ZXJ5LCAyKSkgPT0gJ251bWJlcicpIHtcbiAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKG50aCgkcXVlcnksIDEpLCBudGgoJHF1ZXJ5LCAyKSwgc3BhY2UpO1xuICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlciwgY29tbWEpO1xuICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgIH1cbiAgICAvLyBJZiB0aGV5J3JlIGJvdGggc3RyaW5ncyBhbmQgbmVpdGhlciBhcmUgc2luZ2xlcywgd2Ugcm9sbCB3aXRoIHRoYXQuXG4gICAgQGVsc2UgaWYgKHR5cGUtb2YobnRoKCRxdWVyeSwgMSkpID09ICdzdHJpbmcnIGFuZCB0eXBlLW9mKG50aCgkcXVlcnksIDIpKSA9PSAnc3RyaW5nJykge1xuICAgICAgQGlmIG5vdCBicmVha3BvaW50LXNpbmdsZS1zdHJpbmcobnRoKCRxdWVyeSwgMSkpIGFuZCBub3QgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKG50aCgkcXVlcnksIDIpKSB7XG4gICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKG50aCgkcXVlcnksIDEpLCBudGgoJHF1ZXJ5LCAyKSwgc3BhY2UpO1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgJGZlYXR1cmUtaG9sZGVyLCBjb21tYSk7XG4gICAgICAgIEByZXR1cm4gJHF1ZXJ5LWhvbGRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGxlbmd0aCA9PSAzIHtcbiAgICAvLyBJZiB3ZSd2ZSBnb3QgdGhyZWUgaXRlbXMgYW5kIG5vbmUgaXMgYSBsaXN0LCB3ZSBjaGVjayB0byBzZWVcbiAgICBAaWYgdHlwZS1vZihudGgoJHF1ZXJ5LCAxKSkgIT0gJ2xpc3QnIGFuZCB0eXBlLW9mKG50aCgkcXVlcnksIDIpKSAhPSAnbGlzdCcgYW5kIHR5cGUtb2YobnRoKCRxdWVyeSwgMykpICE9ICdsaXN0JyB7XG4gICAgICAvLyBJZiBub25lIG9mIHRoZSBpdGVtcyBhcmUgc2luZ2xlIHN0cmluZyB2YWx1ZXMgYW5kIG5vbmUgb2YgdGhlIHZhbHVlcyBhcmUgbWVkaWEgdmFsdWVzLCB3ZSdyZSBnb29kLlxuICAgICAgQGlmIChub3QgYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKG50aCgkcXVlcnksIDEpKSBhbmQgbm90IGJyZWFrcG9pbnQtc2luZ2xlLXN0cmluZyhudGgoJHF1ZXJ5LCAyKSkgYW5kIG5vdCBicmVha3BvaW50LXNpbmdsZS1zdHJpbmcobnRoKCRxdWVyeSwgMykpKSBhbmQgICgobm90IGJyZWFrcG9pbnQtaXMtbWVkaWEobnRoKCRxdWVyeSwgMSkpIGFuZCBub3QgYnJlYWtwb2ludC1pcy1tZWRpYShudGgoJHF1ZXJ5LCAyKSkgYW5kIG5vdCBicmVha3BvaW50LWlzLW1lZGlhKG50aCgkcXVlcnksIDMpKSkpIHtcbiAgICAgICAgJGZlYXR1cmUtaG9sZGVyOiBhcHBlbmQobnRoKCRxdWVyeSwgMSksIG50aCgkcXVlcnksIDIpLCBzcGFjZSk7XG4gICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKCRmZWF0dXJlLWhvbGRlciwgbnRoKCRxdWVyeSwgMyksIHNwYWNlKTtcbiAgICAgICAgJHF1ZXJ5LWhvbGRlcjogYXBwZW5kKCRxdWVyeS1ob2xkZXIsICRmZWF0dXJlLWhvbGRlciwgY29tbWEpO1xuICAgICAgICBAcmV0dXJuICRxdWVyeS1ob2xkZXI7XG4gICAgICB9XG4gICAgICAvLyBsZXQncyBjaGVjayB0byBzZWUgaWYgdGhlIGZpcnN0IGl0ZW0gaXMgYSBtZWRpYSB0eXBlXG4gICAgICBAZWxzZSBpZiBicmVha3BvaW50LWlzLW1lZGlhKG50aCgkcXVlcnksIDEpKSB7XG4gICAgICAgICRxdWVyeS1ob2xkZXI6IGFwcGVuZCgkcXVlcnktaG9sZGVyLCBudGgoJHF1ZXJ5LCAxKSk7XG4gICAgICAgICRmZWF0dXJlLWhvbGRlcjogYXBwZW5kKG50aCgkcXVlcnksIDIpLCBudGgoJHF1ZXJ5LCAzKSwgc3BhY2UpO1xuICAgICAgICAkcXVlcnktaG9sZGVyOiBhcHBlbmQoJHF1ZXJ5LWhvbGRlciwgJGZlYXR1cmUtaG9sZGVyKTtcbiAgICAgICAgQHJldHVybiAkcXVlcnktaG9sZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIGl0J3MgYSBzaW5nbGUgaXRlbSwgb3IgaWYgaXQncyBub3QgYSBzcGVjaWFsIGNhc2UgZG91YmxlIG9yIHRyaXBsZSwgd2UgY2FuIHNpbXBseSByZXR1cm4gdGhlIHF1ZXJ5LlxuICBAcmV0dXJuICRxdWVyeTtcbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0IFBpZWNlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwic2luZ2xlL2RlZmF1bHRcIjtcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2Utc2luZ2xlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCkge1xuICAkcGFyc2VkOiAnJztcbiAgJGxlYWRlcjogJyc7XG4gIC8vIElmIHdlJ3JlIGZvcmNpbmdcbiAgQGlmIG5vdCAoJGVtcHR5LW1lZGlhKSBvciBub3QgKCRmaXJzdCkge1xuICAgICRsZWFkZXI6ICdhbmQgJztcbiAgfVxuXG4gIC8vIElmIGl0J3MgYSBzaW5nbGUgZmVhdHVyZSB0aGF0IGNhbiBzdGFuZCBhbG9uZSwgd2UgbGV0IGl0XG4gIEBpZiAoYnJlYWtwb2ludC1zaW5nbGUtc3RyaW5nKCRmZWF0dXJlKSkge1xuICAgICRwYXJzZWQ6ICRmZWF0dXJlO1xuICAgIC8vIFNldCBDb250ZXh0XG4gICAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICRmZWF0dXJlKTtcbiAgfVxuICAvLyBJZiBpdCdzIG5vdCBhIHN0YW5kIGFsb25lIGZlYXR1cmUsIHdlIHBhc3MgaXQgb2ZmIHRvIHRoZSBkZWZhdWx0IGhhbmRsZXIuXG4gIEBlbHNlIHtcbiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRlZmF1bHQoJGZlYXR1cmUpO1xuICB9XG5cbiAgQHJldHVybiAkbGVhZGVyICsgJygnICsgJHBhcnNlZCArICcpJztcbn1cbiIsIkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLWRlZmF1bHQoJGZlYXR1cmUpIHtcbiAgJGRlZmF1bHQ6IGJyZWFrcG9pbnQtZ2V0KCdkZWZhdWx0IGZlYXR1cmUnKTtcblxuICAvLyBTZXQgQ29udGV4dFxuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgkZGVmYXVsdCwgJGZlYXR1cmUpO1xuXG4gIEBpZiAoYnJlYWtwb2ludC1nZXQoJ3RvIGVtcycpID09IHRydWUpIGFuZCAodHlwZS1vZigkZmVhdHVyZSkgPT0gJ251bWJlcicpIHtcbiAgICBAcmV0dXJuICcjeyRkZWZhdWx0fTogI3ticmVha3BvaW50LXRvLWJhc2UtZW0oJGZlYXR1cmUpfSc7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJyN7JGRlZmF1bHR9OiAjeyRmZWF0dXJlfSc7XG4gIH1cbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gSW1wb3J0IFBpZWNlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5AaW1wb3J0IFwiZG91YmxlL2RlZmF1bHQtcGFpclwiO1xuQGltcG9ydCBcImRvdWJsZS9kb3VibGUtc3RyaW5nXCI7XG5AaW1wb3J0IFwiZG91YmxlL2RlZmF1bHRcIjtcblxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtcGFyc2UtZG91YmxlKCRmZWF0dXJlLCAkZW1wdHktbWVkaWEsICRmaXJzdCkge1xuICAkcGFyc2VkOiAnJztcbiAgJGxlYWRlcjogJyc7XG4gIC8vIElmIHdlJ3JlIGZvcmNpbmdcbiAgQGlmIG5vdCAoJGVtcHR5LW1lZGlhKSBvciBub3QgKCRmaXJzdCkge1xuICAgICRsZWFkZXI6ICdhbmQgJztcbiAgfVxuXG4gICRmaXJzdDogbnRoKCRmZWF0dXJlLCAxKTtcbiAgJHNlY29uZDogbnRoKCRmZWF0dXJlLCAyKTtcblxuICAvLyBJZiB3ZSd2ZSBnb3QgdHdvIG51bWJlcnMsIHdlIGtub3cgd2UgbmVlZCB0byB1c2UgdGhlIGRlZmF1bHQgcGFpciBiZWNhdXNlIHRoZXJlIGFyZSBubyBtZWRpYSBxdWVyaWVzIHRoYXQgaGFzIGEgbWVkaWEgZmVhdHVyZSB0aGF0IGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCRmaXJzdCkgPT0gJ251bWJlcicgYW5kIHR5cGUtb2YoJHNlY29uZCkgPT0gJ251bWJlcicge1xuICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtZGVmYXVsdC1wYWlyKCRmaXJzdCwgJHNlY29uZCk7XG4gIH1cbiAgLy8gSWYgdGhleSBhcmUgYm90aCBzdHJpbmdzLCB3ZSBzZW5kIGl0IHRocm91Z2ggdGhlIHN0cmluZyBwYXJzZXJcbiAgQGVsc2UgaWYgdHlwZS1vZigkZmlyc3QpID09ICdzdHJpbmcnIGFuZCB0eXBlLW9mKCRzZWNvbmQpID09ICdzdHJpbmcnIHtcbiAgICAkcGFyc2VkOiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1zdHJpbmcoJGZpcnN0LCAkc2Vjb25kKTtcbiAgfVxuICAvLyBJZiBpdCdzIGEgc3RyaW5nL251bWJlciBwYWlyLCB3ZSBwYXJzZSBpdCBhcyBhIG5vcm1hbCBkb3VibGVcbiAgQGVsc2Uge1xuICAgICRwYXJzZWQ6IGJyZWFrcG9pbnQtcGFyc2UtZG91YmxlLWRlZmF1bHQoJGZpcnN0LCAkc2Vjb25kKTtcbiAgfVxuXG4gIEByZXR1cm4gJGxlYWRlciArICRwYXJzZWQ7XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS1kZWZhdWx0LXBhaXIoJGZpcnN0LCAkc2Vjb25kKSB7XG4gICRkZWZhdWx0OiBicmVha3BvaW50LWdldCgnZGVmYXVsdCBwYWlyJyk7XG4gICRtaW46ICcnO1xuICAkbWF4OiAnJztcblxuICAvLyBTb3J0IGludG8gbWluIGFuZCBtYXhcbiAgJG1pbjogbWluKCRmaXJzdCwgJHNlY29uZCk7XG4gICRtYXg6IG1heCgkZmlyc3QsICRzZWNvbmQpO1xuXG4gIC8vIFNldCBDb250ZXh0XG4gICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KG1pbi0jeyRkZWZhdWx0fSwgJG1pbik7XG4gICRjb250ZXh0LXNldHRlcjogcHJpdmF0ZS1icmVha3BvaW50LXNldC1jb250ZXh0KG1heC0jeyRkZWZhdWx0fSwgJG1heCk7XG5cbiAgLy8gTWFrZSB0aGVtIEVNcyBpZiBuZWVkIGJlXG4gIEBpZiAoYnJlYWtwb2ludC1nZXQoJ3RvIGVtcycpID09IHRydWUpIHtcbiAgICAkbWluOiBicmVha3BvaW50LXRvLWJhc2UtZW0oJG1pbik7XG4gICAgJG1heDogYnJlYWtwb2ludC10by1iYXNlLWVtKCRtYXgpO1xuICB9XG5cbiAgQHJldHVybiAnKG1pbi0jeyRkZWZhdWx0fTogI3skbWlufSkgYW5kIChtYXgtI3skZGVmYXVsdH06ICN7JG1heH0pJztcbn1cbiIsIkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1zdHJpbmcoJGZpcnN0LCAkc2Vjb25kKSB7XG4gICRmZWF0dXJlOiAnJztcbiAgJHZhbHVlOiAnJztcblxuICAvLyBUZXN0IHRvIHNlZSB3aGljaCBpcyB0aGUgZmVhdHVyZSBhbmQgd2hpY2ggaXMgdGhlIHZhbHVlXG4gIEBpZiAoYnJlYWtwb2ludC1zdHJpbmctdmFsdWUoJGZpcnN0KSA9PSB0cnVlKSB7XG4gICAgJGZlYXR1cmU6ICRmaXJzdDtcbiAgICAkdmFsdWU6ICRzZWNvbmQ7XG4gIH1cbiAgQGVsc2UgaWYgKGJyZWFrcG9pbnQtc3RyaW5nLXZhbHVlKCRzZWNvbmQpID09IHRydWUpIHtcbiAgICAkZmVhdHVyZTogJHNlY29uZDtcbiAgICAkdmFsdWU6ICRmaXJzdDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gXCJOZWl0aGVyICN7JGZpcnN0fSBub3IgI3skc2Vjb25kfSBpcyBhIHZhbGlkIG1lZGlhIHF1ZXJ5IG5hbWUuXCI7XG4gIH1cblxuICAvLyBTZXQgQ29udGV4dFxuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dCgkZmVhdHVyZSwgJHZhbHVlKTtcblxuICBAcmV0dXJuICcoI3skZmVhdHVyZX06ICN7JHZhbHVlfSknO1xufSIsIkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLWRvdWJsZS1kZWZhdWx0KCRmaXJzdCwgJHNlY29uZCkge1xuICAkZmVhdHVyZTogJyc7XG4gICR2YWx1ZTogJyc7XG5cbiAgQGlmIHR5cGUtb2YoJGZpcnN0KSA9PSAnc3RyaW5nJyB7XG4gICAgJGZlYXR1cmU6ICRmaXJzdDtcbiAgICAkdmFsdWU6ICRzZWNvbmQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgICRmZWF0dXJlOiAkc2Vjb25kO1xuICAgICR2YWx1ZTogJGZpcnN0O1xuICB9XG5cbiAgLy8gU2V0IENvbnRleHRcbiAgJGNvbnRleHQtc2V0dGVyOiBwcml2YXRlLWJyZWFrcG9pbnQtc2V0LWNvbnRleHQoJGZlYXR1cmUsICR2YWx1ZSk7XG5cbiAgQGlmIChicmVha3BvaW50LWdldCgndG8gZW1zJykgPT0gdHJ1ZSkge1xuICAgICR2YWx1ZTogYnJlYWtwb2ludC10by1iYXNlLWVtKCR2YWx1ZSk7XG4gIH1cblxuICBAcmV0dXJuICcoI3skZmVhdHVyZX06ICN7JHZhbHVlfSknXG59XG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEltcG9ydCBQaWVjZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQGltcG9ydCBcInRyaXBsZS9kZWZhdWx0XCI7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LXBhcnNlLXRyaXBsZSgkZmVhdHVyZSwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpIHtcbiAgJHBhcnNlZDogJyc7XG4gICRsZWFkZXI6ICcnO1xuXG4gIC8vIElmIHdlJ3JlIGZvcmNpbmdcbiAgQGlmIG5vdCAoJGVtcHR5LW1lZGlhKSBvciBub3QgKCRmaXJzdCkge1xuICAgICRsZWFkZXI6ICdhbmQgJztcbiAgfVxuXG4gIC8vIHNlcGFyYXRlIHRoZSBzdHJpbmcgZmVhdHVyZXMgZnJvbSB0aGUgdmFsdWUgbnVtYmVyc1xuICAkc3RyaW5nOiBudWxsO1xuICAkbnVtYmVyczogbnVsbDtcbiAgQGVhY2ggJHZhbCBpbiAkZmVhdHVyZSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbCkgPT0gc3RyaW5nIHtcbiAgICAgICRzdHJpbmc6ICR2YWw7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiB0eXBlLW9mKCRudW1iZXJzKSA9PSAnbnVsbCcge1xuICAgICAgICAkbnVtYmVyczogJHZhbDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJG51bWJlcnM6IGFwcGVuZCgkbnVtYmVycywgJHZhbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJHBhcnNlZDogYnJlYWtwb2ludC1wYXJzZS10cmlwbGUtZGVmYXVsdCgkc3RyaW5nLCBudGgoJG51bWJlcnMsIDEpLCBudGgoJG51bWJlcnMsIDIpKTtcblxuICBAcmV0dXJuICRsZWFkZXIgKyAkcGFyc2VkO1xuXG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1wYXJzZS10cmlwbGUtZGVmYXVsdCgkZmVhdHVyZSwgJGZpcnN0LCAkc2Vjb25kKSB7XG5cbiAgLy8gU29ydCBpbnRvIG1pbiBhbmQgbWF4XG4gICRtaW46IG1pbigkZmlyc3QsICRzZWNvbmQpO1xuICAkbWF4OiBtYXgoJGZpcnN0LCAkc2Vjb25kKTtcblxuICAvLyBTZXQgQ29udGV4dFxuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtaW4tI3skZmVhdHVyZX0sICRtaW4pO1xuICAkY29udGV4dC1zZXR0ZXI6IHByaXZhdGUtYnJlYWtwb2ludC1zZXQtY29udGV4dChtYXgtI3skZmVhdHVyZX0sICRtYXgpO1xuXG4gIC8vIE1ha2UgdGhlbSBFTXMgaWYgbmVlZCBiZVxuICBAaWYgKGJyZWFrcG9pbnQtZ2V0KCd0byBlbXMnKSA9PSB0cnVlKSB7XG4gICAgJG1pbjogYnJlYWtwb2ludC10by1iYXNlLWVtKCRtaW4pO1xuICAgICRtYXg6IGJyZWFrcG9pbnQtdG8tYmFzZS1lbSgkbWF4KTtcbiAgfVxuXG4gIEByZXR1cm4gJyhtaW4tI3skZmVhdHVyZX06ICN7JG1pbn0pIGFuZCAobWF4LSN7JGZlYXR1cmV9OiAjeyRtYXh9KSc7XG59XG4iLCJAaW1wb3J0IFwicmVzb2x1dGlvbi9yZXNvbHV0aW9uXCI7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LWJ1aWxkLXJlc29sdXRpb24oJHF1ZXJ5LXByaW50LCAkcXVlcnktcmVzb2x1dGlvbiwgJGVtcHR5LW1lZGlhLCAkZmlyc3QpIHtcbiAgJGxlYWRlcjogJyc7XG4gIC8vIElmIHdlJ3JlIGZvcmNpbmdcbiAgQGlmIG5vdCAoJGVtcHR5LW1lZGlhKSBvciBub3QgKCRmaXJzdCkge1xuICAgICRsZWFkZXI6ICdhbmQgJztcbiAgfVxuXG4gIEBpZiBicmVha3BvaW50LWdldCgndHJhbnNmb3JtIHJlc29sdXRpb25zJykgYW5kICRxdWVyeS1yZXNvbHV0aW9uIHtcbiAgICAkcmVzb2x1dGlvbnM6IGJyZWFrcG9pbnQtbWFrZS1yZXNvbHV0aW9ucygkcXVlcnktcmVzb2x1dGlvbik7XG4gICAgJGxlbmd0aDogbGVuZ3RoKCRyZXNvbHV0aW9ucyk7XG4gICAgJHF1ZXJ5LWhvbGRlcjogJyc7XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRsZW5ndGgge1xuICAgICAgJHF1ZXJ5OiAnI3skcXVlcnktcHJpbnR9ICN7JGxlYWRlcn0je250aCgkcmVzb2x1dGlvbnMsICRpKX0nO1xuICAgICAgQGlmICRpID09IDEge1xuICAgICAgICAkcXVlcnktaG9sZGVyOiAkcXVlcnk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICRxdWVyeS1ob2xkZXI6ICcjeyRxdWVyeS1ob2xkZXJ9LCAjeyRxdWVyeX0nO1xuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gJHF1ZXJ5LWhvbGRlcjtcbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gUmV0dXJuIHdpdGggYXR0YWNoZWQgcmVzb2x1dGlvblxuICAgIEByZXR1cm4gJHF1ZXJ5LXByaW50O1xuICB9XG59XG4iLCJAZnVuY3Rpb24gYnJlYWtwb2ludC1tYWtlLXJlc29sdXRpb25zKCRyZXNvbHV0aW9uKSB7XG4gICRsZW5ndGg6IGxlbmd0aCgkcmVzb2x1dGlvbik7XG5cbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmICRsZW5ndGggPT0gMiB7XG4gICAgJGZlYXR1cmU6ICcnO1xuICAgICR2YWx1ZTogJyc7XG5cbiAgICAvLyBGaW5kIHdoaWNoIGlzIG51bWJlclxuICAgIEBpZiB0eXBlLW9mKG50aCgkcmVzb2x1dGlvbiwgMSkpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogbnRoKCRyZXNvbHV0aW9uLCAxKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHZhbHVlOiBudGgoJHJlc29sdXRpb24sIDIpO1xuICAgIH1cblxuICAgIC8vIERldGVybWluZSBtaW4vbWF4L3N0YW5kYXJkXG4gICAgQGlmIGluZGV4KCRyZXNvbHV0aW9uLCAnbWluLXJlc29sdXRpb24nKSB7XG4gICAgICAkZmVhdHVyZTogJ21pbi0nO1xuICAgIH1cbiAgICBAZWxzZSBpZiBpbmRleCgkcmVzb2x1dGlvbiwgJ21heC1yZXNvbHV0aW9uJykge1xuICAgICAgJGZlYXR1cmU6ICdtYXgtJztcbiAgICB9XG5cbiAgICAkc3RhbmRhcmQ6ICcoI3skZmVhdHVyZX1yZXNvbHV0aW9uOiAjeyR2YWx1ZX0pJztcblxuICAgIC8vIElmIHdlJ3JlIG5vdCBkZWFsaW5nIHdpdGggZHBweCxcbiAgICBAaWYgdW5pdCgkdmFsdWUpICE9ICdkcHB4JyB7XG4gICAgICAkYmFzZTogOTZkcGk7XG4gICAgICBAaWYgdW5pdCgkdmFsdWUpID09ICdkcGNtJyB7XG4gICAgICAgICRiYXNlOiAyNDMuODRkcGNtO1xuICAgICAgfVxuICAgICAgLy8gV3JpdGUgb3V0IGZlYXR1cmUgdGVzdHNcbiAgICAgICR3ZWJraXQ6ICcnO1xuICAgICAgJG1vejogJyc7XG4gICAgICAkd2Via2l0OiAnKC13ZWJraXQtI3skZmVhdHVyZX1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHZhbHVlIC8gJGJhc2V9KSc7XG4gICAgICAkbW96OiAnKCN7JGZlYXR1cmV9LW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86ICN7JHZhbHVlIC8gJGJhc2V9KSc7XG4gICAgICAvLyBBcHBlbmQgdG8gb3V0cHV0XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJHN0YW5kYXJkLCBzcGFjZSk7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJHdlYmtpdCwgc3BhY2UpO1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICRtb3osIHNwYWNlKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdlYmtpdDogJyc7XG4gICAgICAkbW96OiAnJztcbiAgICAgICR3ZWJraXQ6ICcoLXdlYmtpdC0jeyRmZWF0dXJlfWRldmljZS1waXhlbC1yYXRpbzogI3skdmFsdWUgLyAxZHBweH0pJztcbiAgICAgICRtb3o6ICcoI3skZmVhdHVyZX0tbW96LWRldmljZS1waXhlbC1yYXRpbzogI3skdmFsdWUgLyAxZHBweH0pJztcbiAgICAgICRmYWxsYmFjazogJygjeyRmZWF0dXJlfXJlc29sdXRpb246ICN7JHZhbHVlIC8gMWRwcHggKiA5NmRwaX0pJztcbiAgICAgIC8vIEFwcGVuZCB0byBvdXRwdXRcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAkc3RhbmRhcmQsIHNwYWNlKTtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAkd2Via2l0LCBzcGFjZSk7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgJG1veiwgc3BhY2UpO1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICRmYWxsYmFjaywgc3BhY2UpO1xuICAgIH1cblxuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuIiwiQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbm8tcXVlcnkoJHF1ZXJ5KSB7XG4gIEBpZiB0eXBlLW9mKCRxdWVyeSkgPT0gJ2xpc3QnIHtcbiAgICAka2V5d29yZDogbnRoKCRxdWVyeSwgMSk7XG5cbiAgICBAaWYgdHlwZS1vZigka2V5d29yZCkgPT0gJ3N0cmluZycgYW5kICgka2V5d29yZCA9PSAnbm8tcXVlcnknIG9yICRrZXl3b3JkID09ICdubyBxdWVyeScgb3IgJGtleXdvcmQgPT0gJ2ZhbGxiYWNrJykge1xuICAgICAgQHJldHVybiBudGgoJHF1ZXJ5LCAyKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiIsIi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gRGVmYXVsdCB0aGUgQnJlYWtwb2ludHMgdmFyaWFibGVcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuJGJyZWFrcG9pbnRzOiAoKSAhZGVmYXVsdDtcbiRCUkVBS1BPSU5UUzogKCkgIWRlZmF1bHQ7XG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gUmVzcG9uZC10byBBUEkgTWl4aW5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuQG1peGluIHJlc3BvbmQtdG8oJGNvbnRleHQsICRuby1xdWVyeTogZmFsc2UpIHtcbiAgQGlmIGxlbmd0aCgkYnJlYWtwb2ludHMpID4gMCBhbmQgbGVuZ3RoKCRCUkVBS1BPSU5UUykgPT0gMCB7XG4gICAgQHdhcm4gXCJJbiBvcmRlciB0byBhdm9pZCB2YXJpYWJsZSBuYW1lc3BhY2UgY29sbGlzaW9ucywgd2UgaGF2ZSB1cGRhdGVkIHRoZSB3YXkgdG8gYWRkIGJyZWFrcG9pbnRzIGZvciByZXNwb25kLXRvLiBQbGVhc2UgY2hhbmdlIGFsbCBpbnN0YW5jZXMgb2YgYCRicmVha3BvaW50czogYWRkLWJyZWFrcG9pbnQoKWAgdG8gYEBpbmNsdWRlIGFkZC1icmVha3BvaW50KClgLiBUaGUgYGFkZC1icmVha3BvaW50KClgIGZ1bmN0aW9uIHdpbGwgYmUgZGVwcmVjYXRlZCBpbiBhIGZ1dHVyZSByZWxlYXNlLlwiO1xuICAgICRCUkVBS1BPSU5UUzogJGJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICAgJGJyZWFrcG9pbnRzOiAoKSAhZ2xvYmFsO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJEJSRUFLUE9JTlRTKSAhPSAnbWFwJyB7XG4gICAgLy8gSnVzdCBpbiBjYXNlIHNvbWVvbmUgd3JpdGVzIGdpYmJlcmlzaCB0byB0aGUgJGJyZWFrcG9pbnRzIHZhcmlhYmxlLlxuICAgIEB3YXJuIFwiWW91ciBicmVha3BvaW50cyBhcmVuJ3QgYSBtYXAhIGByZXNwb25kLXRvYCBleHBlY3RzIGEgbWFwLiBQbGVhc2UgY2hlY2sgdGhlIHZhbHVlIG9mICRCUkVBS1BPSU5UUyB2YXJpYWJsZS5cIjtcbiAgICBAY29udGVudDtcbiAgfVxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkQlJFQUtQT0lOVFMsICRjb250ZXh0KSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtYXAtZ2V0KCRCUkVBS1BPSU5UUywgJGNvbnRleHQpLCAkbm8tcXVlcnkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiBub3QgbWFwLWhhcy1rZXkoJEJSRUFLUE9JTlRTLCAkY29udGV4dCkge1xuICAgIEB3YXJuIFwiYCN7JGNvbnRleHR9YCBpc24ndCBhIGRlZmluZWQgYnJlYWtwb2ludCEgUGxlYXNlIGFkZCBpdCB1c2luZyBgJGJyZWFrcG9pbnRzOiBhZGQtYnJlYWtwb2ludChgI3skY29udGV4dH1gLCAkdmFsdWUpO2BcIjtcbiAgICBAY29udGVudDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gXCJZb3UgaGF2ZW4ndCBjcmVhdGVkIGFueSBicmVha3BvaW50cyB5ZXQhIE1ha2Ugc29tZSBhbHJlYWR5ISBgQGluY2x1ZGUgYWRkLWJyZWFrcG9pbnQoJG5hbWUsICRia3B0KWBcIjtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIEFkZCBCcmVha3BvaW50IHRvIEJyZWFrcG9pbnRzXG4vLyBUT0RPOiBSZW1vdmUgZnVuY3Rpb24gaW4gbmV4dCByZWxlYXNlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbkBmdW5jdGlvbiBhZGQtYnJlYWtwb2ludCgkbmFtZSwgJGJrcHQsICRvdmVyd3JpdGU6IGZhbHNlKSB7XG4gICRvdXRwdXQ6ICgkbmFtZTogJGJrcHQpO1xuXG4gIEBpZiBsZW5ndGgoJGJyZWFrcG9pbnRzKSA9PSAwIHtcbiAgICBAcmV0dXJuICRvdXRwdXQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSBhbmQgJG92ZXJ3cml0ZSAhPSB0cnVlIHtcbiAgICAgIEB3YXJuIFwiWW91IGFscmVhZHkgaGF2ZSBhIGJyZWFrcG9pbnQgbmFtZWQgYCN7JG5hbWV9YCwgcGxlYXNlIGNob29zZSBhbm90aGVyIGJyZWFrcG9pbnQgbmFtZSwgb3IgcGFzcyBpbiBgJG92ZXJ3cml0ZTogdHJ1ZWAgdG8gb3ZlcndyaXRlIHRoZSBwcmV2aW91cyBicmVha3BvaW50LlwiO1xuICAgICAgQHJldHVybiAkYnJlYWtwb2ludHM7XG4gICAgfVxuICAgIEBlbHNlIGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSBvciAkb3ZlcndyaXRlID09IHRydWUge1xuICAgICAgQHJldHVybiBtYXAtbWVyZ2UoJGJyZWFrcG9pbnRzLCAkb3V0cHV0KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGFkZC1icmVha3BvaW50KCRuYW1lLCAkYmtwdCwgJG92ZXJ3cml0ZTogZmFsc2UpIHtcbiAgJG91dHB1dDogKCRuYW1lOiAkYmtwdCk7XG5cbiAgQGlmIGxlbmd0aCgkQlJFQUtQT0lOVFMpID09IDAge1xuICAgICRCUkVBS1BPSU5UUzogJG91dHB1dCAhZ2xvYmFsO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJEJSRUFLUE9JTlRTLCAkbmFtZSkgYW5kICRvdmVyd3JpdGUgIT0gdHJ1ZSB7XG4gICAgICBAd2FybiBcIllvdSBhbHJlYWR5IGhhdmUgYSBicmVha3BvaW50IG5hbWVkIGAjeyRuYW1lfWAsIHBsZWFzZSBjaG9vc2UgYW5vdGhlciBicmVha3BvaW50IG5hbWUsIG9yIHBhc3MgaW4gYCRvdmVyd3JpdGU6IHRydWVgIHRvIG92ZXJ3cml0ZSB0aGUgcHJldmlvdXMgYnJlYWtwb2ludC5cIjtcbiAgICAgICRCUkVBS1BPSU5UUzogJEJSRUFLUE9JTlRTICFnbG9iYWw7XG4gICAgfVxuICAgIEBlbHNlIGlmIG5vdCBtYXAtaGFzLWtleSgkQlJFQUtQT0lOVFMsICRuYW1lKSBvciAkb3ZlcndyaXRlID09IHRydWUge1xuICAgICAgJEJSRUFLUE9JTlRTOiBtYXAtbWVyZ2UoJEJSRUFLUE9JTlRTLCAkb3V0cHV0KSAhZ2xvYmFsO1xuICAgIH1cbiAgfVxufVxuXG5AZnVuY3Rpb24gZ2V0LWJyZWFrcG9pbnQoJG5hbWU6IGZhbHNlKSB7XG4gIEBpZiAkbmFtZSA9PSBmYWxzZSB7XG4gICAgQHJldHVybiAkQlJFQUtQT0lOVFM7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkQlJFQUtQT0lOVFMsICRuYW1lKTtcbiAgfVxufVxuIiwiQG1peGluIGxlZ2FjeS1zZXR0aW5ncy13YXJuaW5nIHtcbiAgJGxlZ2FjeVZhcnM6IChcbiAgICAnZGVmYXVsdC1tZWRpYSc6ICdkZWZhdWx0IG1lZGlhJyxcbiAgICAnZGVmYXVsdC1mZWF0dXJlJzogJ2RlZmF1bHQgZmVhdHVyZScsXG4gICAgJ2ZvcmNlLW1lZGlhLWFsbCc6ICdmb3JjZSBhbGwgbWVkaWEgdHlwZScsXG4gICAgJ3RvLWVtcyc6ICd0byBlbXMnLFxuICAgICdyZXNvbHV0aW9ucyc6ICd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnLFxuICAgICduby1xdWVyaWVzJzogJ25vIHF1ZXJpZXMnLFxuICAgICduby1xdWVyeS1mYWxsYmFja3MnOiAnbm8gcXVlcnkgZmFsbGJhY2tzJyxcbiAgICAnYmFzZS1mb250LXNpemUnOiAnYmFzZSBmb250IHNpemUnLFxuICAgICdsZWdhY3ktc3ludGF4JzogJ2xlZ2FjeSBzeW50YXgnXG4gICk7XG5cbiAgQGVhY2ggJGxlZ2FjeSwgJG5ldyBpbiAkbGVnYWN5VmFycyB7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtJyArICRsZWdhY3kpIHtcbiAgICAgIEB3YXJuIFwiSW4gb3JkZXIgdG8gYXZvaWQgdmFyaWFibGUgbmFtc3BhY2UgY29sbGlzaW9ucywgd2UgaGF2ZSB1cGRhdGVkIHRoZSB3YXkgdG8gY2hhbmdlIHNldHRpbmdzIGZvciBCcmVha3BvaW50LiBQbGVhc2UgY2hhbmdlIGFsbCBpbnN0YW5jZXMgb2YgYCRicmVha3BvaW50LSN7JGxlZ2FjeX06IHt7c2V0dGluZ319YCB0byBgQGluY2x1ZGUgYnJlYWtwb2ludC1zZXQoJyN7JG5ld30nLCB7e3NldHRpbmd9fSlgLiBWYXJpYWJsZSBzZXR0aW5ncywgYXMgd2VsbCBhcyB0aGlzIHdhcm5pbmcgd2lsbCBiZSBkZXByZWNhdGVkIGluIGEgZnV0dXJlIHJlbGVhc2UuXCJcbiAgICB9XG4gIH07XG5cbiAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC8vIEhhbmQgY29ycmVjdCBlYWNoIHNldHRpbmdcbiAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LWRlZmF1bHQtbWVkaWEnKSBhbmQgJGJyZWFrcG9pbnQtZGVmYXVsdC1tZWRpYSAhPSBicmVha3BvaW50LWdldCgnZGVmYXVsdCBtZWRpYScpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnZGVmYXVsdCBtZWRpYScsICRicmVha3BvaW50LWRlZmF1bHQtbWVkaWEpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LWRlZmF1bHQtZmVhdHVyZScpIGFuZCAkYnJlYWtwb2ludC1kZWZhdWx0LWZlYXR1cmUgIT0gYnJlYWtwb2ludC1nZXQoJ2RlZmF1bHQgZmVhdHVyZScpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnZGVmYXVsdCBmZWF0dXJlJywgJGJyZWFrcG9pbnQtZGVmYXVsdC1mZWF0dXJlKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1mb3JjZS1tZWRpYS1hbGwnKSBhbmQgJGJyZWFrcG9pbnQtZm9yY2UtbWVkaWEtYWxsICE9IGJyZWFrcG9pbnQtZ2V0KCdmb3JjZSBhbGwgbWVkaWEgdHlwZScpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnZm9yY2UgYWxsIG1lZGlhIHR5cGUnLCAkYnJlYWtwb2ludC1mb3JjZS1tZWRpYS1hbGwpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LXRvLWVtcycpIGFuZCAkYnJlYWtwb2ludC10by1lbXMgIT0gYnJlYWtwb2ludC1nZXQoJ3RvIGVtcycpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgndG8gZW1zJywgJGJyZWFrcG9pbnQtdG8tZW1zKTtcbiAgfVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygnYnJlYWtwb2ludC1yZXNvbHV0aW9ucycpIGFuZCAkYnJlYWtwb2ludC1yZXNvbHV0aW9ucyAhPSBicmVha3BvaW50LWdldCgndHJhbnNmb3JtIHJlc29sdXRpb25zJykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCd0cmFuc2Zvcm0gcmVzb2x1dGlvbnMnLCAkYnJlYWtwb2ludC1yZXNvbHV0aW9ucyk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtbm8tcXVlcmllcycpIGFuZCAkYnJlYWtwb2ludC1uby1xdWVyaWVzICE9IGJyZWFrcG9pbnQtZ2V0KCdubyBxdWVyaWVzJykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCdubyBxdWVyaWVzJywgJGJyZWFrcG9pbnQtbm8tcXVlcmllcyk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtbm8tcXVlcnktZmFsbGJhY2tzJykgYW5kICRicmVha3BvaW50LW5vLXF1ZXJ5LWZhbGxiYWNrcyAhPSBicmVha3BvaW50LWdldCgnbm8gcXVlcnkgZmFsbGJhY2tzJykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCdubyBxdWVyeSBmYWxsYmFja3MnLCAkYnJlYWtwb2ludC1uby1xdWVyeS1mYWxsYmFja3MpO1xuICB9XG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKCdicmVha3BvaW50LWJhc2UtZm9udC1zaXplJykgYW5kICRicmVha3BvaW50LWJhc2UtZm9udC1zaXplICE9IGJyZWFrcG9pbnQtZ2V0KCdiYXNlIGZvbnQgc2l6ZScpIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50LXNldCgnYmFzZSBmb250IHNpemUnLCAkYnJlYWtwb2ludC1iYXNlLWZvbnQtc2l6ZSk7XG4gIH1cbiAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoJ2JyZWFrcG9pbnQtbGVnYWN5LXN5bnRheCcpIGFuZCAkYnJlYWtwb2ludC1sZWdhY3ktc3ludGF4ICE9IGJyZWFrcG9pbnQtZ2V0KCdsZWdhY3kgc3ludGF4Jykge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQtc2V0KCdsZWdhY3kgc3ludGF4JywgJGJyZWFrcG9pbnQtbGVnYWN5LXN5bnRheCk7XG4gIH1cbn0iLCJAZnVuY3Rpb24gcmVtLWNhbGMoJHNpemUpIHtcbiAgJHJlbVNpemU6ICRzaXplIC8gMTY7XG4gIEByZXR1cm4gI3skcmVtU2l6ZX1yZW07XG59XG4iLCIvKiBodHRwOi8vbWV5ZXJ3ZWIuY29tL2VyaWMvdG9vbHMvY3NzL3Jlc2V0L1xuICAgdjIuMCB8IDIwMTEwMTI2XG4gICBMaWNlbnNlOiBub25lIChwdWJsaWMgZG9tYWluKVxuKi9cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0Ym9yZGVyOiAwO1xuXHRmb250LXNpemU6IDEwMCU7XG5cdGZvbnQ6IGluaGVyaXQ7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsXG5mb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbmJvZHkge1xuXHRsaW5lLWhlaWdodDogMTtcbn1cbm9sLCB1bCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5ibG9ja3F1b3RlLCBxIHtcblx0cXVvdGVzOiBub25lO1xufVxuYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIsXG5xOmJlZm9yZSwgcTphZnRlciB7XG5cdGNvbnRlbnQ6ICcnO1xuXHRjb250ZW50OiBub25lO1xufVxudGFibGUge1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRib3JkZXItc3BhY2luZzogMDtcbn1cbiIsIi8qXG4qIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW4gcmVhZGVyczogaDVicC5jb20vdlxuKi9cblxuLnZpc3VhbGx5aGlkZGVuIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi8qXG4qIEV4dGVuZHMgdGhlIC52aXN1YWxseWhpZGRlbiBjbGFzcyB0byBhbGxvdyB0aGUgZWxlbWVudCB0byBiZSBmb2N1c2FibGVcbiogd2hlbiBuYXZpZ2F0ZWQgdG8gdmlhIHRoZSBrZXlib2FyZDogaDVicC5jb20vcFxuKi9cblxuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTphY3RpdmUsXG4udmlzdWFsbHloaWRkZW4uZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cbiIsIiRzbWFsbDogcmVtLWNhbGMoMzIwKTtcbiRtZWRpdW06IHJlbS1jYWxjKDc2OCk7XG4kbGFyZ2U6IHJlbS1jYWxjKDEyODApO1xuJHgtbGFyZ2U6IHJlbS1jYWxjKDE0NDApO1xuIiwiJGRhcmstZ3JleS1jb2xvcjogIzMzMzMzMztcbiRncmV5LWNvbG9yOiAjNDg0ODQ4O1xuJG1hZ2VudGEtY29sb3I6ICNCQTJFOEI7XG4kYmx1ZS1jb2xvcjogIzJCQURGRTtcbiR3aGl0ZS1jb2xvcjogI2ZlZmVmZTtcbiIsIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvY29vcGVyL0Nvb3BlckJsYWNrLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9jb29wZXIvQ29vcGVyQmxhY2suZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9jb29wZXIvQ29vcGVyQmxhY2sud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvY29vcGVyL0Nvb3BlckJsYWNrLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9jb29wZXIvQ29vcGVyQmxhY2sudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL2Nvb3Blci9Db29wZXJCbGFjay5zdmcjQ29vcGVyQmxhY2snKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL29wZW4tc2Fucy9PcGVuU2Fucy1Cb2xkLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9vcGVuLXNhbnMvT3BlblNhbnMtQm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL29wZW4tc2Fucy9PcGVuU2Fucy1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL29wZW4tc2Fucy9PcGVuU2Fucy1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9vcGVuLXNhbnMvT3BlblNhbnMtQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvb3Blbi1zYW5zL09wZW5TYW5zLUJvbGQuc3ZnI09wZW5TYW5zLUJvbGQnKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9vcGVuLXNhbnMvT3BlblNhbnMtTGlnaHQuZW90Jyk7XG4gICAgc3JjOiB1cmwoJy4uL2ZvbnRzL29wZW4tc2Fucy9PcGVuU2Fucy1MaWdodC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL29wZW4tc2Fucy9PcGVuU2Fucy1MaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9vcGVuLXNhbnMvT3BlblNhbnMtTGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL29wZW4tc2Fucy9PcGVuU2Fucy1MaWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvb3Blbi1zYW5zL09wZW5TYW5zLUxpZ2h0LnN2ZyNPcGVuU2Fucy1MaWdodCcpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgICBzcmM6IHVybCgnLi4vZm9udHMvb3Blbi1zYW5zL09wZW5TYW5zLmVvdCcpO1xuICAgIHNyYzogdXJsKCcuLi9mb250cy9vcGVuLXNhbnMvT3BlblNhbnMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9vcGVuLXNhbnMvT3BlblNhbnMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvb3Blbi1zYW5zL09wZW5TYW5zLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9vcGVuLXNhbnMvT3BlblNhbnMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL29wZW4tc2Fucy9PcGVuU2Fucy5zdmcjT3BlblNhbnMnKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbi8qID09PSBJQ09OUyA9PT09ICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ljb25zJztcbiAgc3JjOiAgdXJsKCcuLi9mb250cy9pY29ucy9pY29ucy5lb3Q/OHBqYnlrJyk7XG4gIHNyYzogIHVybCgnLi4vZm9udHMvaWNvbnMvaWNvbnMuZW90PzhwamJ5ayNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ljb25zL2ljb25zLnR0Zj84cGpieWsnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcuLi9mb250cy9pY29ucy9pY29ucy53b2ZmPzhwamJ5aycpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnLi4vZm9udHMvaWNvbnMvaWNvbnMuc3ZnPzhwamJ5ayNpY29ucycpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdpY29ucycgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG59XG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cbi5pY29uLWFuY2hvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuLmljb24tdGltb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cblxuIiwiaHRtbCxcbmJvZHkge1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjYWFhYWFhO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuXG4gICYud3JhcCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ud3JhcHBlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4iLCIiLCIiLCIuYnRue1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZvbnQtc2l6ZTogMjBweDtcblx0cGFkZGluZzogMTBweCA0MHB4O1xuXHRib3JkZXI6IDJweCBzb2xpZCAjZjdkMzAwO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Y29sb3I6ICMwMDdjYzM7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogNTBweDtcblxufSIsIiIsIi8qIVxuICogRm90b3JhbWEgNC42LjQgfCBodHRwOi8vZm90b3JhbWEuaW8vbGljZW5zZS9cbiAqL1xuLmZvdG9yYW1hX19hcnI6Zm9jdXM6YWZ0ZXIsLmZvdG9yYW1hX19mdWxsc2NyZWVuLWljb246Zm9jdXM6YWZ0ZXIsLmZvdG9yYW1hX19odG1sLC5mb3RvcmFtYV9faW1nLC5mb3RvcmFtYV9fbmF2X19mcmFtZTpmb2N1cyAuZm90b3JhbWFfX2RvdDphZnRlciwuZm90b3JhbWFfX25hdl9fZnJhbWU6Zm9jdXMgLmZvdG9yYW1hX190aHVtYjphZnRlciwuZm90b3JhbWFfX3N0YWdlX19mcmFtZSwuZm90b3JhbWFfX3N0YWdlX19zaGFmdCwuZm90b3JhbWFfX3ZpZGVvIGlmcmFtZXtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3RvcDowO3JpZ2h0OjA7bGVmdDowO2JvdHRvbTowfS5mb3RvcmFtYS0tZnVsbHNjcmVlbiwuZm90b3JhbWFfX2ltZ3ttYXgtd2lkdGg6OTk5OTlweCFpbXBvcnRhbnQ7bWF4LWhlaWdodDo5OTk5OXB4IWltcG9ydGFudDttaW4td2lkdGg6MCFpbXBvcnRhbnQ7bWluLWhlaWdodDowIWltcG9ydGFudDtib3JkZXItcmFkaXVzOjAhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnQ7cGFkZGluZzowIWltcG9ydGFudH0uZm90b3JhbWFfX3dyYXAgLmZvdG9yYW1hX19ncmFie2N1cnNvcjptb3ZlO2N1cnNvcjotd2Via2l0LWdyYWI7Y3Vyc29yOi1vLWdyYWI7Y3Vyc29yOi1tcy1ncmFiO2N1cnNvcjpncmFifS5mb3RvcmFtYV9fZ3JhYmJpbmcgKntjdXJzb3I6bW92ZTtjdXJzb3I6LXdlYmtpdC1ncmFiYmluZztjdXJzb3I6LW8tZ3JhYmJpbmc7Y3Vyc29yOi1tcy1ncmFiYmluZztjdXJzb3I6Z3JhYmJpbmd9LmZvdG9yYW1hX19zcGlubmVye3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDt0b3A6NTAlIWltcG9ydGFudDtsZWZ0OjUwJSFpbXBvcnRhbnR9LmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9fYXJyLC5mb3RvcmFtYV9fd3JhcC0tY3NzMyAuZm90b3JhbWFfX2Z1bGxzY3JlZW4taWNvbiwuZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX19uYXZfX3NoYWZ0LC5mb3RvcmFtYV9fd3JhcC0tY3NzMyAuZm90b3JhbWFfX3N0YWdlX19zaGFmdCwuZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX190aHVtYi1ib3JkZXIsLmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9fdmlkZW8tY2xvc2UsLmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9fdmlkZW8tcGxheXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKX0uZm90b3JhbWFfX2NhcHRpb24sLmZvdG9yYW1hX19uYXY6YWZ0ZXIsLmZvdG9yYW1hX19uYXY6YmVmb3JlLC5mb3RvcmFtYV9fc3RhZ2U6YWZ0ZXIsLmZvdG9yYW1hX19zdGFnZTpiZWZvcmUsLmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9faHRtbCwuZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX19uYXYsLmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9fc3Bpbm5lciwuZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX19zdGFnZSwuZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX19zdGFnZSAuZm90b3JhbWFfX2ltZywuZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX19zdGFnZV9fZnJhbWV7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWigwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0uZm90b3JhbWFfX2Fycjpmb2N1cywuZm90b3JhbWFfX2Z1bGxzY3JlZW4taWNvbjpmb2N1cywuZm90b3JhbWFfX25hdl9fZnJhbWV7b3V0bGluZTowfS5mb3RvcmFtYV9fYXJyOmZvY3VzOmFmdGVyLC5mb3RvcmFtYV9fZnVsbHNjcmVlbi1pY29uOmZvY3VzOmFmdGVyLC5mb3RvcmFtYV9fbmF2X19mcmFtZTpmb2N1cyAuZm90b3JhbWFfX2RvdDphZnRlciwuZm90b3JhbWFfX25hdl9fZnJhbWU6Zm9jdXMgLmZvdG9yYW1hX190aHVtYjphZnRlcntjb250ZW50OicnO2JvcmRlci1yYWRpdXM6aW5oZXJpdDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwxNzUsMjM0LC41KX0uZm90b3JhbWFfX3dyYXAtLXZpZGVvIC5mb3RvcmFtYV9fc3RhZ2UsLmZvdG9yYW1hX193cmFwLS12aWRlbyAuZm90b3JhbWFfX3N0YWdlX19mcmFtZS0tdmlkZW8sLmZvdG9yYW1hX193cmFwLS12aWRlbyAuZm90b3JhbWFfX3N0YWdlX19mcmFtZS0tdmlkZW8gLmZvdG9yYW1hX19odG1sLC5mb3RvcmFtYV9fd3JhcC0tdmlkZW8gLmZvdG9yYW1hX19zdGFnZV9fZnJhbWUtLXZpZGVvIC5mb3RvcmFtYV9faW1nLC5mb3RvcmFtYV9fd3JhcC0tdmlkZW8gLmZvdG9yYW1hX19zdGFnZV9fc2hhZnR7LXdlYmtpdC10cmFuc2Zvcm06bm9uZSFpbXBvcnRhbnQ7dHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50fS5mb3RvcmFtYV9fd3JhcC0tY3NzMyAuZm90b3JhbWFfX25hdl9fc2hhZnQsLmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9fc3RhZ2VfX3NoYWZ0LC5mb3RvcmFtYV9fd3JhcC0tY3NzMyAuZm90b3JhbWFfX3RodW1iLWJvcmRlcnt0cmFuc2l0aW9uLXByb3BlcnR5Oi13ZWJraXQtdHJhbnNmb3JtLHdpZHRoO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLHdpZHRoO3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmN1YmljLWJlemllcigwLjEsMCwuMjUsMSk7dHJhbnNpdGlvbi1kdXJhdGlvbjowbXN9LmZvdG9yYW1hX19hcnIsLmZvdG9yYW1hX19mdWxsc2NyZWVuLWljb24sLmZvdG9yYW1hX19uby1zZWxlY3QsLmZvdG9yYW1hX192aWRlby1jbG9zZSwuZm90b3JhbWFfX3ZpZGVvLXBsYXksLmZvdG9yYW1hX193cmFwey13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0uZm90b3JhbWFfX3NlbGVjdHstd2Via2l0LXVzZXItc2VsZWN0OnRleHQ7LW1vei11c2VyLXNlbGVjdDp0ZXh0Oy1tcy11c2VyLXNlbGVjdDp0ZXh0O3VzZXItc2VsZWN0OnRleHR9LmZvdG9yYW1hX19uYXYsLmZvdG9yYW1hX19uYXZfX2ZyYW1le21hcmdpbjphdXRvO3BhZGRpbmc6MH0uZm90b3JhbWFfX2NhcHRpb25fX3dyYXAsLmZvdG9yYW1hX19uYXZfX2ZyYW1lLC5mb3RvcmFtYV9fbmF2X19zaGFmdHstbW96LWJveC1vcmllbnQ6dmVydGljYWw7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246bWlkZGxlOypkaXNwbGF5OmlubGluZTsqem9vbToxfS5mb3RvcmFtYV9fbmF2X19mcmFtZSwuZm90b3JhbWFfX3RodW1iLWJvcmRlcntib3gtc2l6aW5nOmNvbnRlbnQtYm94fS5mb3RvcmFtYV9fY2FwdGlvbl9fd3JhcHtib3gtc2l6aW5nOmJvcmRlci1ib3h9LmZvdG9yYW1hLS1oaWRkZW4sLmZvdG9yYW1hX19sb2Fke3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OTk5cHg7dG9wOi05OTk5OXB4O3otaW5kZXg6LTF9LmZvdG9yYW1hX19hcnIsLmZvdG9yYW1hX19mdWxsc2NyZWVuLWljb24sLmZvdG9yYW1hX19uYXYsLmZvdG9yYW1hX19uYXZfX2ZyYW1lLC5mb3RvcmFtYV9fbmF2X19zaGFmdCwuZm90b3JhbWFfX3N0YWdlX19mcmFtZSwuZm90b3JhbWFfX3N0YWdlX19zaGFmdCwuZm90b3JhbWFfX3ZpZGVvLWNsb3NlLC5mb3RvcmFtYV9fdmlkZW8tcGxheXstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9LmZvdG9yYW1hX19hcnIsLmZvdG9yYW1hX19mdWxsc2NyZWVuLWljb24sLmZvdG9yYW1hX192aWRlby1jbG9zZSwuZm90b3JhbWFfX3ZpZGVvLXBsYXl7YmFja2dyb3VuZDp1cmwoZm90b3JhbWEucG5nKSBuby1yZXBlYXR9QG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86MS41KSwobWluLXJlc29sdXRpb246MmRwcHgpey5mb3RvcmFtYV9fYXJyLC5mb3RvcmFtYV9fZnVsbHNjcmVlbi1pY29uLC5mb3RvcmFtYV9fdmlkZW8tY2xvc2UsLmZvdG9yYW1hX192aWRlby1wbGF5e2JhY2tncm91bmQ6dXJsKGZvdG9yYW1hQDJ4LnBuZykgMCAwLzk2cHggMTYwcHggbm8tcmVwZWF0fX0uZm90b3JhbWFfX3RodW1ie2JhY2tncm91bmQtY29sb3I6IzdmN2Y3ZjtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMTI3LDEyNywxMjcsLjIpfUBtZWRpYSBwcmludHsuZm90b3JhbWFfX2FyciwuZm90b3JhbWFfX2Z1bGxzY3JlZW4taWNvbiwuZm90b3JhbWFfX3RodW1iLWJvcmRlciwuZm90b3JhbWFfX3ZpZGVvLWNsb3NlLC5mb3RvcmFtYV9fdmlkZW8tcGxheXtiYWNrZ3JvdW5kOm5vbmUhaW1wb3J0YW50fX0uZm90b3JhbWF7bWluLXdpZHRoOjFweDtvdmVyZmxvdzpoaWRkZW59LmZvdG9yYW1hOm5vdCguZm90b3JhbWEtLXVub2J0cnVzaXZlKT4qOm5vdCg6Zmlyc3QtY2hpbGQpe2Rpc3BsYXk6bm9uZX0uZnVsbHNjcmVlbnt3aWR0aDoxMDAlIWltcG9ydGFudDtoZWlnaHQ6MTAwJSFpbXBvcnRhbnQ7bWF4LXdpZHRoOjEwMCUhaW1wb3J0YW50O21heC1oZWlnaHQ6MTAwJSFpbXBvcnRhbnQ7bWFyZ2luOjAhaW1wb3J0YW50O3BhZGRpbmc6MCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVuIWltcG9ydGFudDtiYWNrZ3JvdW5kOiMwMDB9LmZvdG9yYW1hLS1mdWxsc2NyZWVue3Bvc2l0aW9uOmFic29sdXRlIWltcG9ydGFudDt0b3A6MCFpbXBvcnRhbnQ7bGVmdDowIWltcG9ydGFudDtyaWdodDowIWltcG9ydGFudDtib3R0b206MCFpbXBvcnRhbnQ7ZmxvYXQ6bm9uZSFpbXBvcnRhbnQ7ei1pbmRleDoyMTQ3NDgzNjQ3IWltcG9ydGFudDtiYWNrZ3JvdW5kOiMwMDA7d2lkdGg6MTAwJSFpbXBvcnRhbnQ7aGVpZ2h0OjEwMCUhaW1wb3J0YW50O21hcmdpbjowIWltcG9ydGFudH0uZm90b3JhbWEtLWZ1bGxzY3JlZW4gLmZvdG9yYW1hX19uYXYsLmZvdG9yYW1hLS1mdWxsc2NyZWVuIC5mb3RvcmFtYV9fc3RhZ2V7YmFja2dyb3VuZDojMDAwfS5mb3RvcmFtYV9fd3JhcHstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXJlY3Rpb246bHRyO3otaW5kZXg6MH0uZm90b3JhbWFfX3dyYXAtLXJ0bCAuZm90b3JhbWFfX3N0YWdlX19mcmFtZXtkaXJlY3Rpb246cnRsfS5mb3RvcmFtYV9fbmF2LC5mb3RvcmFtYV9fc3RhZ2V7b3ZlcmZsb3c6aGlkZGVuO3Bvc2l0aW9uOnJlbGF0aXZlO21heC13aWR0aDoxMDAlfS5mb3RvcmFtYV9fd3JhcC0tcGFuLXl7LW1zLXRvdWNoLWFjdGlvbjpwYW4teX0uZm90b3JhbWFfX3dyYXAgLmZvdG9yYW1hX19wb2ludGVye2N1cnNvcjpwb2ludGVyfS5mb3RvcmFtYV9fd3JhcC0tc2xpZGUgLmZvdG9yYW1hX19zdGFnZV9fZnJhbWV7b3BhY2l0eToxIWltcG9ydGFudH0uZm90b3JhbWFfX3N0YWdlX19mcmFtZXtvdmVyZmxvdzpoaWRkZW59LmZvdG9yYW1hX19zdGFnZV9fZnJhbWUuZm90b3JhbWFfX2FjdGl2ZXt6LWluZGV4Ojh9LmZvdG9yYW1hX193cmFwLS1mYWRlIC5mb3RvcmFtYV9fc3RhZ2VfX2ZyYW1le2Rpc3BsYXk6bm9uZX0uZm90b3JhbWFfX3dyYXAtLWZhZGUgLmZvdG9yYW1hX19mYWRlLWZyb250LC5mb3RvcmFtYV9fd3JhcC0tZmFkZSAuZm90b3JhbWFfX2ZhZGUtcmVhciwuZm90b3JhbWFfX3dyYXAtLWZhZGUgLmZvdG9yYW1hX19zdGFnZV9fZnJhbWUuZm90b3JhbWFfX2FjdGl2ZXtkaXNwbGF5OmJsb2NrO2xlZnQ6MDt0b3A6MH0uZm90b3JhbWFfX3dyYXAtLWZhZGUgLmZvdG9yYW1hX19mYWRlLWZyb250e3otaW5kZXg6OH0uZm90b3JhbWFfX3dyYXAtLWZhZGUgLmZvdG9yYW1hX19mYWRlLXJlYXJ7ei1pbmRleDo3fS5mb3RvcmFtYV9fd3JhcC0tZmFkZSAuZm90b3JhbWFfX2ZhZGUtcmVhci5mb3RvcmFtYV9fYWN0aXZle3otaW5kZXg6OX0uZm90b3JhbWFfX3dyYXAtLWZhZGUgLmZvdG9yYW1hX19zdGFnZSAuZm90b3JhbWFfX3NoYWRvd3tkaXNwbGF5Om5vbmV9LmZvdG9yYW1hX19pbWd7LW1zLWZpbHRlcjpcImFscGhhKE9wYWNpdHk9MClcIjtmaWx0ZXI6YWxwaGEob3BhY2l0eT0wKTtvcGFjaXR5OjA7Ym9yZGVyOm5vbmUhaW1wb3J0YW50fS5mb3RvcmFtYV9fZXJyb3IgLmZvdG9yYW1hX19pbWcsLmZvdG9yYW1hX19sb2FkZWQgLmZvdG9yYW1hX19pbWd7LW1zLWZpbHRlcjpcImFscGhhKE9wYWNpdHk9MTAwKVwiO2ZpbHRlcjphbHBoYShvcGFjaXR5PTEwMCk7b3BhY2l0eToxfS5mb3RvcmFtYS0tZnVsbHNjcmVlbiAuZm90b3JhbWFfX2xvYWRlZC0tZnVsbCAuZm90b3JhbWFfX2ltZywuZm90b3JhbWFfX2ltZy0tZnVsbHtkaXNwbGF5Om5vbmV9LmZvdG9yYW1hLS1mdWxsc2NyZWVuIC5mb3RvcmFtYV9fbG9hZGVkLS1mdWxsIC5mb3RvcmFtYV9faW1nLS1mdWxse2Rpc3BsYXk6YmxvY2t9LmZvdG9yYW1hX193cmFwLS1vbmx5LWFjdGl2ZSAuZm90b3JhbWFfX25hdiwuZm90b3JhbWFfX3dyYXAtLW9ubHktYWN0aXZlIC5mb3RvcmFtYV9fc3RhZ2V7bWF4LXdpZHRoOjk5OTk5cHghaW1wb3J0YW50fS5mb3RvcmFtYV9fd3JhcC0tb25seS1hY3RpdmUgLmZvdG9yYW1hX19zdGFnZV9fZnJhbWV7dmlzaWJpbGl0eTpoaWRkZW59LmZvdG9yYW1hX193cmFwLS1vbmx5LWFjdGl2ZSAuZm90b3JhbWFfX3N0YWdlX19mcmFtZS5mb3RvcmFtYV9fYWN0aXZle3Zpc2liaWxpdHk6dmlzaWJsZX0uZm90b3JhbWFfX25hdntmb250LXNpemU6MDtsaW5lLWhlaWdodDowO3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7ei1pbmRleDo1fS5mb3RvcmFtYV9fbmF2X19zaGFmdHtwb3NpdGlvbjpyZWxhdGl2ZTtsZWZ0OjA7dG9wOjA7dGV4dC1hbGlnbjpsZWZ0fS5mb3RvcmFtYV9fbmF2X19mcmFtZXtwb3NpdGlvbjpyZWxhdGl2ZTtjdXJzb3I6cG9pbnRlcn0uZm90b3JhbWFfX25hdi0tZG90c3tkaXNwbGF5OmJsb2NrfS5mb3RvcmFtYV9fbmF2LS1kb3RzIC5mb3RvcmFtYV9fbmF2X19mcmFtZXt3aWR0aDoxOHB4O2hlaWdodDozMHB4fS5mb3RvcmFtYV9fbmF2LS1kb3RzIC5mb3RvcmFtYV9fbmF2X19mcmFtZS0tdGh1bWIsLmZvdG9yYW1hX19uYXYtLWRvdHMgLmZvdG9yYW1hX190aHVtYi1ib3JkZXJ7ZGlzcGxheTpub25lfS5mb3RvcmFtYV9fbmF2LS10aHVtYnN7ZGlzcGxheTpibG9ja30uZm90b3JhbWFfX25hdi0tdGh1bWJzIC5mb3RvcmFtYV9fbmF2X19mcmFtZXtwYWRkaW5nLWxlZnQ6MCFpbXBvcnRhbnR9LmZvdG9yYW1hX19uYXYtLXRodW1icyAuZm90b3JhbWFfX25hdl9fZnJhbWU6bGFzdC1jaGlsZHtwYWRkaW5nLXJpZ2h0OjAhaW1wb3J0YW50fS5mb3RvcmFtYV9fbmF2LS10aHVtYnMgLmZvdG9yYW1hX19uYXZfX2ZyYW1lLS1kb3R7ZGlzcGxheTpub25lfS5mb3RvcmFtYV9fZG90e2Rpc3BsYXk6YmxvY2s7d2lkdGg6NHB4O2hlaWdodDo0cHg7cG9zaXRpb246cmVsYXRpdmU7dG9wOjEycHg7bGVmdDo2cHg7Ym9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyOjFweCBzb2xpZCAjN2Y3ZjdmfS5mb3RvcmFtYV9fbmF2X19mcmFtZTpmb2N1cyAuZm90b3JhbWFfX2RvdDphZnRlcntwYWRkaW5nOjFweDt0b3A6LTFweDtsZWZ0Oi0xcHh9LmZvdG9yYW1hX19uYXZfX2ZyYW1lLmZvdG9yYW1hX19hY3RpdmUgLmZvdG9yYW1hX19kb3R7d2lkdGg6MDtoZWlnaHQ6MDtib3JkZXItd2lkdGg6M3B4fS5mb3RvcmFtYV9fbmF2X19mcmFtZS5mb3RvcmFtYV9fYWN0aXZlIC5mb3RvcmFtYV9fZG90OmFmdGVye3BhZGRpbmc6M3B4O3RvcDotM3B4O2xlZnQ6LTNweH0uZm90b3JhbWFfX3RodW1ie292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS5mb3RvcmFtYV9fbmF2X19mcmFtZTpmb2N1cyAuZm90b3JhbWFfX3RodW1ie3otaW5kZXg6Mn0uZm90b3JhbWFfX3RodW1iLWJvcmRlcntwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4Ojk7dG9wOjA7bGVmdDowO2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6IzAwYWZlYTtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20gcmlnaHQscmdiYSgyNTUsMjU1LDI1NSwuMjUpLHJnYmEoNjQsNjQsNjQsLjEpKX0uZm90b3JhbWFfX2NhcHRpb257cG9zaXRpb246YWJzb2x1dGU7ei1pbmRleDoxMjtib3R0b206MDtsZWZ0OjA7cmlnaHQ6MDtmb250LWZhbWlseTonSGVsdmV0aWNhIE5ldWUnLEFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MS41O2NvbG9yOiMwMDB9LmZvdG9yYW1hX19jYXB0aW9uIGF7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6IzAwMDtib3JkZXItYm90dG9tOjFweCBzb2xpZDtib3JkZXItY29sb3I6cmdiYSgwLDAsMCwuNSl9LmZvdG9yYW1hX19jYXB0aW9uIGE6aG92ZXJ7Y29sb3I6IzMzMztib3JkZXItY29sb3I6cmdiYSg1MSw1MSw1MSwuNSl9LmZvdG9yYW1hX193cmFwLS1ydGwgLmZvdG9yYW1hX19jYXB0aW9ue2xlZnQ6YXV0bztyaWdodDowfS5mb3RvcmFtYV9fd3JhcC0tbm8tY2FwdGlvbnMgLmZvdG9yYW1hX19jYXB0aW9uLC5mb3RvcmFtYV9fd3JhcC0tdmlkZW8gLmZvdG9yYW1hX19jYXB0aW9ue2Rpc3BsYXk6bm9uZX0uZm90b3JhbWFfX2NhcHRpb25fX3dyYXB7YmFja2dyb3VuZC1jb2xvcjojZmZmO2JhY2tncm91bmQtY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuOSk7cGFkZGluZzo1cHggMTBweH1ALXdlYmtpdC1rZXlmcmFtZXMgc3Bpbm5lcnswJXstd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMCk7dHJhbnNmb3JtOnJvdGF0ZSgwKX0xMDAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpO3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19QGtleWZyYW1lcyBzcGlubmVyezAley13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgwKTt0cmFuc2Zvcm06cm90YXRlKDApfTEwMCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0uZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX19zcGlubmVyey13ZWJraXQtYW5pbWF0aW9uOnNwaW5uZXIgMjRzIGluZmluaXRlIGxpbmVhcjthbmltYXRpb246c3Bpbm5lciAyNHMgaW5maW5pdGUgbGluZWFyfS5mb3RvcmFtYV9fd3JhcC0tY3NzMyAuZm90b3JhbWFfX2h0bWwsLmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9fc3RhZ2UgLmZvdG9yYW1hX19pbWd7dHJhbnNpdGlvbi1wcm9wZXJ0eTpvcGFjaXR5O3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmxpbmVhcjt0cmFuc2l0aW9uLWR1cmF0aW9uOi4zc30uZm90b3JhbWFfX3dyYXAtLXZpZGVvIC5mb3RvcmFtYV9fc3RhZ2VfX2ZyYW1lLS12aWRlbyAuZm90b3JhbWFfX2h0bWwsLmZvdG9yYW1hX193cmFwLS12aWRlbyAuZm90b3JhbWFfX3N0YWdlX19mcmFtZS0tdmlkZW8gLmZvdG9yYW1hX19pbWd7LW1zLWZpbHRlcjpcImFscGhhKE9wYWNpdHk9MClcIjtmaWx0ZXI6YWxwaGEob3BhY2l0eT0wKTtvcGFjaXR5OjB9LmZvdG9yYW1hX19zZWxlY3R7Y3Vyc29yOmF1dG99LmZvdG9yYW1hX192aWRlb3t0b3A6MzJweDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjEwfUAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKXsuZm90b3JhbWFfX2FjdGl2ZXtib3gtc2hhZG93OjAgMCAwIHRyYW5zcGFyZW50fX0uZm90b3JhbWFfX2FyciwuZm90b3JhbWFfX2Z1bGxzY3JlZW4taWNvbiwuZm90b3JhbWFfX3ZpZGVvLWNsb3NlLC5mb3RvcmFtYV9fdmlkZW8tcGxheXtwb3NpdGlvbjphYnNvbHV0ZTt6LWluZGV4OjExO2N1cnNvcjpwb2ludGVyfS5mb3RvcmFtYV9fYXJye3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7dG9wOjUwJTttYXJnaW4tdG9wOi0xNnB4fS5mb3RvcmFtYV9fYXJyLS1wcmV2e2xlZnQ6MnB4O2JhY2tncm91bmQtcG9zaXRpb246MCAwfS5mb3RvcmFtYV9fYXJyLS1uZXh0e3JpZ2h0OjJweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOi0zMnB4IDB9LmZvdG9yYW1hX19hcnItLWRpc2FibGVke3BvaW50ZXItZXZlbnRzOm5vbmU7Y3Vyc29yOmRlZmF1bHQ7KmRpc3BsYXk6bm9uZTtvcGFjaXR5Oi4xfS5mb3RvcmFtYV9fZnVsbHNjcmVlbi1pY29ue3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7dG9wOjJweDtyaWdodDoycHg7YmFja2dyb3VuZC1wb3NpdGlvbjowIC0zMnB4O3otaW5kZXg6MjB9LmZvdG9yYW1hX19hcnI6Zm9jdXMsLmZvdG9yYW1hX19mdWxsc2NyZWVuLWljb246Zm9jdXN7Ym9yZGVyLXJhZGl1czo1MCV9LmZvdG9yYW1hLS1mdWxsc2NyZWVuIC5mb3RvcmFtYV9fZnVsbHNjcmVlbi1pY29ue2JhY2tncm91bmQtcG9zaXRpb246LTMycHggLTMycHh9LmZvdG9yYW1hX192aWRlby1wbGF5e3dpZHRoOjk2cHg7aGVpZ2h0Ojk2cHg7bGVmdDo1MCU7dG9wOjUwJTttYXJnaW4tbGVmdDotNDhweDttYXJnaW4tdG9wOi00OHB4O2JhY2tncm91bmQtcG9zaXRpb246MCAtNjRweDtvcGFjaXR5OjB9LmZvdG9yYW1hX193cmFwLS1jc3MyIC5mb3RvcmFtYV9fdmlkZW8tcGxheSwuZm90b3JhbWFfX3dyYXAtLXZpZGVvIC5mb3RvcmFtYV9fc3RhZ2UgLmZvdG9yYW1hX192aWRlby1wbGF5e2Rpc3BsYXk6bm9uZX0uZm90b3JhbWFfX2Vycm9yIC5mb3RvcmFtYV9fdmlkZW8tcGxheSwuZm90b3JhbWFfX2xvYWRlZCAuZm90b3JhbWFfX3ZpZGVvLXBsYXksLmZvdG9yYW1hX19uYXZfX2ZyYW1lIC5mb3RvcmFtYV9fdmlkZW8tcGxheXtvcGFjaXR5OjE7ZGlzcGxheTpibG9ja30uZm90b3JhbWFfX25hdl9fZnJhbWUgLmZvdG9yYW1hX192aWRlby1wbGF5e3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWFyZ2luLWxlZnQ6LTE2cHg7bWFyZ2luLXRvcDotMTZweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOi02NHB4IC0zMnB4fS5mb3RvcmFtYV9fdmlkZW8tY2xvc2V7d2lkdGg6MzJweDtoZWlnaHQ6MzJweDt0b3A6MDtyaWdodDowO2JhY2tncm91bmQtcG9zaXRpb246LTY0cHggMDt6LWluZGV4OjIwO29wYWNpdHk6MH0uZm90b3JhbWFfX3dyYXAtLWNzczIgLmZvdG9yYW1hX192aWRlby1jbG9zZXtkaXNwbGF5Om5vbmV9LmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9fdmlkZW8tY2xvc2V7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMzJweCwtMzJweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMzJweCwtMzJweCwwKX0uZm90b3JhbWFfX3dyYXAtLXZpZGVvIC5mb3RvcmFtYV9fdmlkZW8tY2xvc2V7ZGlzcGxheTpibG9jaztvcGFjaXR5OjF9LmZvdG9yYW1hX193cmFwLS1jc3MzLmZvdG9yYW1hX193cmFwLS12aWRlbyAuZm90b3JhbWFfX3ZpZGVvLWNsb3Nley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApfS5mb3RvcmFtYV9fd3JhcC0tbm8tY29udHJvbHMuZm90b3JhbWFfX3dyYXAtLXRvZ2dsZS1hcnJvd3MgLmZvdG9yYW1hX19hcnIsLmZvdG9yYW1hX193cmFwLS1uby1jb250cm9scy5mb3RvcmFtYV9fd3JhcC0tdG9nZ2xlLWFycm93cyAuZm90b3JhbWFfX2Z1bGxzY3JlZW4taWNvbntvcGFjaXR5OjB9LmZvdG9yYW1hX193cmFwLS1uby1jb250cm9scy5mb3RvcmFtYV9fd3JhcC0tdG9nZ2xlLWFycm93cyAuZm90b3JhbWFfX2Fycjpmb2N1cywuZm90b3JhbWFfX3dyYXAtLW5vLWNvbnRyb2xzLmZvdG9yYW1hX193cmFwLS10b2dnbGUtYXJyb3dzIC5mb3RvcmFtYV9fZnVsbHNjcmVlbi1pY29uOmZvY3Vze29wYWNpdHk6MX0uZm90b3JhbWFfX3dyYXAtLXZpZGVvIC5mb3RvcmFtYV9fYXJyLC5mb3RvcmFtYV9fd3JhcC0tdmlkZW8gLmZvdG9yYW1hX19mdWxsc2NyZWVuLWljb257b3BhY2l0eTowIWltcG9ydGFudH0uZm90b3JhbWFfX3dyYXAtLWNzczIuZm90b3JhbWFfX3dyYXAtLW5vLWNvbnRyb2xzLmZvdG9yYW1hX193cmFwLS10b2dnbGUtYXJyb3dzIC5mb3RvcmFtYV9fYXJyLC5mb3RvcmFtYV9fd3JhcC0tY3NzMi5mb3RvcmFtYV9fd3JhcC0tbm8tY29udHJvbHMuZm90b3JhbWFfX3dyYXAtLXRvZ2dsZS1hcnJvd3MgLmZvdG9yYW1hX19mdWxsc2NyZWVuLWljb257ZGlzcGxheTpub25lfS5mb3RvcmFtYV9fd3JhcC0tY3NzMi5mb3RvcmFtYV9fd3JhcC0tbm8tY29udHJvbHMuZm90b3JhbWFfX3dyYXAtLXRvZ2dsZS1hcnJvd3MgLmZvdG9yYW1hX19hcnI6Zm9jdXMsLmZvdG9yYW1hX193cmFwLS1jc3MyLmZvdG9yYW1hX193cmFwLS1uby1jb250cm9scy5mb3RvcmFtYV9fd3JhcC0tdG9nZ2xlLWFycm93cyAuZm90b3JhbWFfX2Z1bGxzY3JlZW4taWNvbjpmb2N1c3tkaXNwbGF5OmJsb2NrfS5mb3RvcmFtYV9fd3JhcC0tY3NzMi5mb3RvcmFtYV9fd3JhcC0tdmlkZW8gLmZvdG9yYW1hX19hcnIsLmZvdG9yYW1hX193cmFwLS1jc3MyLmZvdG9yYW1hX193cmFwLS12aWRlbyAuZm90b3JhbWFfX2Z1bGxzY3JlZW4taWNvbntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5mb3RvcmFtYV9fd3JhcC0tY3NzMy5mb3RvcmFtYV9fd3JhcC0tbm8tY29udHJvbHMuZm90b3JhbWFfX3dyYXAtLXNsaWRlLmZvdG9yYW1hX193cmFwLS10b2dnbGUtYXJyb3dzIC5mb3RvcmFtYV9fZnVsbHNjcmVlbi1pY29uOm5vdCg6Zm9jdXMpey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMycHgsLTMycHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMycHgsLTMycHgsMCl9LmZvdG9yYW1hX193cmFwLS1jc3MzLmZvdG9yYW1hX193cmFwLS1uby1jb250cm9scy5mb3RvcmFtYV9fd3JhcC0tc2xpZGUuZm90b3JhbWFfX3dyYXAtLXRvZ2dsZS1hcnJvd3MgLmZvdG9yYW1hX19hcnItLXByZXY6bm90KDpmb2N1cyl7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTQ4cHgsMCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoLTQ4cHgsMCwwKX0uZm90b3JhbWFfX3dyYXAtLWNzczMuZm90b3JhbWFfX3dyYXAtLW5vLWNvbnRyb2xzLmZvdG9yYW1hX193cmFwLS1zbGlkZS5mb3RvcmFtYV9fd3JhcC0tdG9nZ2xlLWFycm93cyAuZm90b3JhbWFfX2Fyci0tbmV4dDpub3QoOmZvY3VzKXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCg0OHB4LDAsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDQ4cHgsMCwwKX0uZm90b3JhbWFfX3dyYXAtLWNzczMuZm90b3JhbWFfX3dyYXAtLXZpZGVvIC5mb3RvcmFtYV9fZnVsbHNjcmVlbi1pY29uey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDMycHgsLTMycHgsMCkhaW1wb3J0YW50O3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgzMnB4LC0zMnB4LDApIWltcG9ydGFudH0uZm90b3JhbWFfX3dyYXAtLWNzczMuZm90b3JhbWFfX3dyYXAtLXZpZGVvIC5mb3RvcmFtYV9fYXJyLS1wcmV2ey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKC00OHB4LDAsMCkhaW1wb3J0YW50O3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgtNDhweCwwLDApIWltcG9ydGFudH0uZm90b3JhbWFfX3dyYXAtLWNzczMuZm90b3JhbWFfX3dyYXAtLXZpZGVvIC5mb3RvcmFtYV9fYXJyLS1uZXh0ey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDQ4cHgsMCwwKSFpbXBvcnRhbnQ7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDQ4cHgsMCwwKSFpbXBvcnRhbnR9LmZvdG9yYW1hX193cmFwLS1jc3MzIC5mb3RvcmFtYV9fYXJyOm5vdCg6Zm9jdXMpLC5mb3RvcmFtYV9fd3JhcC0tY3NzMyAuZm90b3JhbWFfX2Z1bGxzY3JlZW4taWNvbjpub3QoOmZvY3VzKSwuZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX192aWRlby1jbG9zZTpub3QoOmZvY3VzKSwuZm90b3JhbWFfX3dyYXAtLWNzczMgLmZvdG9yYW1hX192aWRlby1wbGF5Om5vdCg6Zm9jdXMpe3RyYW5zaXRpb24tcHJvcGVydHk6LXdlYmtpdC10cmFuc2Zvcm0sb3BhY2l0eTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxvcGFjaXR5O3RyYW5zaXRpb24tZHVyYXRpb246LjNzfS5mb3RvcmFtYV9fbmF2OmFmdGVyLC5mb3RvcmFtYV9fbmF2OmJlZm9yZSwuZm90b3JhbWFfX3N0YWdlOmFmdGVyLC5mb3RvcmFtYV9fc3RhZ2U6YmVmb3Jle2NvbnRlbnQ6XCJcIjtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmFic29sdXRlO3RleHQtZGVjb3JhdGlvbjpub25lO3RvcDowO2JvdHRvbTowO3dpZHRoOjEwcHg7aGVpZ2h0OmF1dG87ei1pbmRleDoxMDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6MXB4IDEwMCUsNXB4IDEwMCV9LmZvdG9yYW1hX19uYXY6YmVmb3JlLC5mb3RvcmFtYV9fc3RhZ2U6YmVmb3Jle2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LHJnYmEoMCwwLDAsLjIpIDI1JSxyZ2JhKDAsMCwwLC4zKSA3NSUsdHJhbnNwYXJlbnQpLHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlIGF0IDAgNTAlLHJnYmEoMCwwLDAsLjQpLHRyYW5zcGFyZW50KTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMCwwIDA7bGVmdDotMTBweH0uZm90b3JhbWFfX25hdi5mb3RvcmFtYV9fc2hhZG93cy0tbGVmdDpiZWZvcmUsLmZvdG9yYW1hX19zdGFnZS5mb3RvcmFtYV9fc2hhZG93cy0tbGVmdDpiZWZvcmV7bGVmdDowfS5mb3RvcmFtYV9fbmF2OmFmdGVyLC5mb3RvcmFtYV9fc3RhZ2U6YWZ0ZXJ7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodHJhbnNwYXJlbnQscmdiYSgwLDAsMCwuMikgMjUlLHJnYmEoMCwwLDAsLjMpIDc1JSx0cmFuc3BhcmVudCkscmFkaWFsLWdyYWRpZW50KGZhcnRoZXN0LXNpZGUgYXQgMTAwJSA1MCUscmdiYSgwLDAsMCwuNCksdHJhbnNwYXJlbnQpO2JhY2tncm91bmQtcG9zaXRpb246MTAwJSAwLDEwMCUgMDtyaWdodDotMTBweH0uZm90b3JhbWFfX25hdi5mb3RvcmFtYV9fc2hhZG93cy0tcmlnaHQ6YWZ0ZXIsLmZvdG9yYW1hX19zdGFnZS5mb3RvcmFtYV9fc2hhZG93cy0tcmlnaHQ6YWZ0ZXJ7cmlnaHQ6MH0uZm90b3JhbWEtLWZ1bGxzY3JlZW4gLmZvdG9yYW1hX19uYXY6YWZ0ZXIsLmZvdG9yYW1hLS1mdWxsc2NyZWVuIC5mb3RvcmFtYV9fbmF2OmJlZm9yZSwuZm90b3JhbWEtLWZ1bGxzY3JlZW4gLmZvdG9yYW1hX19zdGFnZTphZnRlciwuZm90b3JhbWEtLWZ1bGxzY3JlZW4gLmZvdG9yYW1hX19zdGFnZTpiZWZvcmUsLmZvdG9yYW1hX193cmFwLS1mYWRlIC5mb3RvcmFtYV9fc3RhZ2U6YWZ0ZXIsLmZvdG9yYW1hX193cmFwLS1mYWRlIC5mb3RvcmFtYV9fc3RhZ2U6YmVmb3JlLC5mb3RvcmFtYV9fd3JhcC0tbm8tc2hhZG93cyAuZm90b3JhbWFfX25hdjphZnRlciwuZm90b3JhbWFfX3dyYXAtLW5vLXNoYWRvd3MgLmZvdG9yYW1hX19uYXY6YmVmb3JlLC5mb3RvcmFtYV9fd3JhcC0tbm8tc2hhZG93cyAuZm90b3JhbWFfX3N0YWdlOmFmdGVyLC5mb3RvcmFtYV9fd3JhcC0tbm8tc2hhZG93cyAuZm90b3JhbWFfX3N0YWdlOmJlZm9yZXtkaXNwbGF5Om5vbmV9IiwiLyogS2V5ZnJhbWVzICovXG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcblxuXHQwJSxcblx0MjAlLFxuXHQ2MCUsXG5cdDEwMCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHRcdC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0LW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0fVxuXG5cdDQwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuXHRcdC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcblx0XHQtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG5cdH1cblxuXHQ4MCUge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcblx0XHQtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG5cdFx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG5cdFx0LW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0XHQtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuXHRcdC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0XHQtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0fVxuXG5cdHRvIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuXHRcdC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuXHRcdC1vLXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcblx0fVxufVxuXG4vKiBTdHlsZXMgKi9cblxuLm1haW4taGVhZGVyIHtcblx0YmFja2dyb3VuZDogcmdiKDI1NSwgMjU1LCAyNTUpO1xuXHRiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45MDM3OTkwMTk2MDc4NDMxKSA2NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG5cdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkwMzc5OTAxOTYwNzg0MzEpIDY1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkwMzc5OTAxOTYwNzg0MzEpIDY1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcblx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNmZmZmZmZcIiwgZW5kQ29sb3JzdHI9XCIjZmZmZmZmXCIsIEdyYWRpZW50VHlwZT0xKTtcblx0cGFkZGluZzogNjVweCAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHotaW5kZXg6IDk5OTk7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG5cdHRvcDogMDtcblxuXHQud3JhcHBlciB7XG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdFx0d2lkdGg6IGF1dG87XG5cblx0XHQubWFpbi1uYXYge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0XHQuY29udGFpbmVyIHtcblx0XHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHR9XG5cblx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiA1MCU7XG5cdFx0XHRcdHotaW5kZXg6IDk7XG5cblx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXG5cdFx0XHRcdFx0aSB7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzAwN2NjMztcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Lm1lbnUge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogLTE1cHg7XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRmbG9hdDogaW5oZXJpdDtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMSUgMCAxJTtcblxuXHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICdDb29wZXInO1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdFx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcblx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cdFx0XHRcdFx0XHQtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXHRcdFx0XHRcdFx0LW1zLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXHRcdFx0XHRcdFx0LW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0YTpob3ZlciB7XG5cdFx0XHRcdFx0XHRjb2xvcjogI2Y3ZDMwMDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRhLmZyYW5xdWljaWFzIHtcblxuXHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmxvZ28tbWVudSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogNzBweDtcblx0XHRcdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdG1hcmdpbjogLTQ1cHggYXV0byAtMjVweCBhdXRvO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5taW5pLXRpbW9uIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRcdG1hcmdpbjogLTM5LjVweCBhdXRvIC0zOS41cHggYXV0bztcblx0XHRcdFx0XHRcdHdpZHRoOiA1MHB4O1xuXHRcdFx0XHRcdFx0ei1pbmRleDogLTE7XG5cdFx0XHRcdFx0XHRhbmltYXRpb246IHJvdGF0ZSA1cyBpbmZpbml0ZSBsaW5lYXI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5jb3Zlci1wYWdlIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2hlYWRlci5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG5cdHBhZGRpbmc6IDEwMHB4IDA7XG5cblx0LndyYXBwZXIge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdC50aXRsZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiA1NTBweDtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdG1hcmdpbjogODVweCBhdXRvIDAgYXV0bztcblxuXHRcdH1cblxuXHRcdC5naWYtaW5kZXgge1xuXHRcdFx0d2lkdGg6IDU1MHB4O1xuXHRcdFx0aGVpZ2h0OiA2MHB4O1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdH1cblx0fVxuXG5cdCYucHJvZHVjdHMge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRiYWNrZ3JvdW5kOiAjMDA3Y2MzO1xuXHRcdHBhZGRpbmc6IDcwcHggMCAxODBweCAwO1xuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9oZWFkZXItYmcuanBnJykgY2VudGVyIGJvdHRvbSBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdH1cblxuXHRcdC53cmFwcGVyIHtcblxuXHRcdFx0LnRpdGxlIHt9XG5cblx0XHRcdC50eHQge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bWF4LXdpZHRoOiA4NTBweDtcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTZweDtcblx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdFx0dGV4dC1hbGlnbjoganVzdGlmeTtcblx0XHRcdFx0ei1pbmRleDogOTk5OTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYuYWJvdXQge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDgwMHB4O1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHQmOjphZnRlciB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG5cdFx0XHRiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMCUsIHJnYmEoMCwgMTI0LCAxOTUsIDAuODAwMTU3NTYzMDI1MjEpIDM2JSwgcmdiYSgwLCAxMjQsIDE5NSwgMSkgNTclKTtcblx0XHRcdGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgwLCAxMjQsIDE5NSwgMC44MDAxNTc1NjMwMjUyMSkgMzYlLCByZ2JhKDAsIDEyNCwgMTk1LCAxKSA1NyUpO1xuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgwLCAxMjQsIDE5NSwgMC44MDAxNTc1NjMwMjUyMSkgMzYlLCByZ2JhKDAsIDEyNCwgMTk1LCAxKSA1NyUpO1xuXHRcdFx0ZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNmZmZmZmZcIiwgZW5kQ29sb3JzdHI9XCIjMDA3Y2MzXCIsIEdyYWRpZW50VHlwZT0xKTtcblx0XHR9XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMzAwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9hYm91dC1oZWFkZXItYmcucG5nJykgY2VudGVyIHRvcCBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cblx0XHQud3JhcHBlciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR6LWluZGV4OiAxO1xuXG5cdFx0XHQudHh0IHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdG1heC13aWR0aDogOTAwcHg7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdCYuYm90dG9tIHtcblx0XHRcdFx0XHRtYXJnaW46IDg1cHggYXV0byAxMDBweCBhdXRvO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji50b3Age1xuXHRcdFx0XHRcdG1hcmdpbjogODBweCBhdXRvIDIwcHggYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY29scyB7XG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdGNsZWFyOiBib3RoO1xuXG5cdFx0XHRcdC5jb2wge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRwYWRkaW5nOiAyMHB4IDMwcHg7XG5cdFx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxuXHRcdFx0XHRcdCYubWlzaW9uIHtcblx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogNHB4ICNmN2QzMDAgc29saWQ7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji52aXMge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiA0cHggI2Y3ZDMwMCBzb2xpZDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRoNCB7XG5cdFx0XHRcdFx0XHRjb2xvcjogI2Y3ZDMwMDtcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjVweDtcblx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdHAge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG59XG5cblxuLnF1b3RlIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IDEwMHB4IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogOTk5OTtcblx0YmFja2dyb3VuZDogIzAwN2NjMztcblxuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL3N1cmYtYmcucG5nJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxNTAlO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogLTkwcHg7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHR6LWluZGV4OiAtOTtcblxuXHR9XG5cblx0LndyYXBwZXIge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHQudGl0bGUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogNjAwcHg7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtYXJnaW46IDE1cHggYXV0bztcblx0XHR9XG5cblx0XHQudGltb24ge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0aGVpZ2h0OiA4NSU7XG5cdFx0XHRtYXJnaW46IGF1dG87XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHR6LWluZGV4OiAtOTtcblx0XHR9XG5cdH1cbn1cblxuLm1vcmUtaW5mbyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiAzNXB4IDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bWFyZ2luLXRvcDogNSU7XG5cdG1hcmdpbi1ib3R0b206IDUlO1xuXG5cdC5jb250YWluZXItZmx1aWQge1xuXG5cdFx0LmxlZnQge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjZjdkMzAwO1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxuXHRcdFx0cCB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMjUwcHg7XG5cdFx0XHRcdG1hcmdpbjogMTVweCBhdXRvIDMwcHggYXV0bztcblx0XHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXG5cdFx0XHR9XG5cblx0XHRcdGEuYnRuIHtcblx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuXHRcdFx0XHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuXHRcdFx0XHQtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuXHRcdFx0XHQtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG5cdFx0XHRcdC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0O1xuXHRcdFx0fVxuXG5cdFx0XHRhLmJ0bjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAjZjdkMzAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5yaWdodCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG5cdFx0XHRwIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiAyNTBweDtcblx0XHRcdFx0bWFyZ2luOiAxNXB4IGF1dG8gMzBweCBhdXRvO1xuXHRcdFx0XHRmb250LXNpemU6IDIwcHg7XG5cblx0XHRcdH1cblxuXHRcdFx0YS5idG4ge1xuXHRcdFx0XHRjb2xvcjogIzAwN2NjMztcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG5cdFx0XHRcdC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG5cdFx0XHRcdC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dDtcblx0XHRcdFx0LW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQ7XG5cdFx0XHR9XG5cblx0XHRcdGEuYnRuOmhvdmVyIHtcblx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmN2QzMDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5mZWF0dXJlcyB7XG5cdG1hcmdpbi10b3A6IDMwcHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0aGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG5cblx0Lnpvb20tZWZmZWN0IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXG5cdFx0LmZlYXR1cmUge1xuXHRcdFx0aGVpZ2h0OiAzMDBweDtcblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcblx0XHRcdH1cblxuXHRcdFx0Ji5vbmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9mZWF0dXJlMS5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdFx0dHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0XHQtd2Via2l0LXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdFx0LW1vei10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0XHRcdC1tcy10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0XHRcdC1vLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdH1cblxuXHRcdFx0Ji50d28ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9mZWF0dXJlMi5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdFx0dHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0XHQtd2Via2l0LXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdFx0LW1vei10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0XHRcdC1tcy10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0XHRcdC1vLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdH1cblxuXHRcdFx0Ji50aHJlZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2ZlYXR1cmUzLmpwZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0XHQtbW96LXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdFx0LW1zLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdFx0LW8tdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0fVxuXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogMTIwcHg7XG5cdFx0XHRcdHotaW5kZXg6IDk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lnpvb20tZWZmZWN0OmhvdmVyIC5vbmUsXG5cdC56b29tLWVmZmVjdDpob3ZlciAudHdvLFxuXHQuem9vbS1lZmZlY3Q6aG92ZXIgLnRocmVlIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xuXHR9XG59XG5cbi5idG4tZmIge1xuXHRiYWNrZ3JvdW5kOiAjMDA3Y2MzO1xuXHRib3JkZXItY29sb3I6ICMwMDdjYzM7XG5cdGNvbG9yOiAjRkZGO1xuXHRmb250LWZhbWlseTogJ0Nvb3Blcic7XG5cdG1hcmdpbjogMTAwcHggMCA4MHB4IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRzcGFuIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdFx0Zm9udC1zaXplOiAyMHB4O1xuXHR9XG5cblx0Jjo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAxMDBweDtcblx0XHRoZWlnaHQ6IDExMHB4O1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2FuY2hvci5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IC04MHB4O1xuXHRcdHRvcDogLTEwcHg7XG5cdH1cblxuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAxMTBweDtcblx0XHRoZWlnaHQ6IDYwcHg7XG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvZmlzaC5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogLTkwcHg7XG5cdFx0dG9wOiA0MHB4O1xuXHR9XG59XG5cbi5idG4tZmI6aG92ZXIge1xuXG5cdCY6OmFmdGVyIHtcblx0XHRhbmltYXRpb246IGJvdW5jZSAxcyBpbmZpbml0ZTtcblx0fVxuXG5cdCY6OmJlZm9yZSB7XG5cdFx0YW5pbWF0aW9uOiBib3VuY2UgMS41cyBpbmZpbml0ZTtcblx0fVxufVxuXG5cbi52aXNpb24ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogMjAwcHggMCAxMjBweCAwO1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9zZWEtYmcucG5nJykgY2VudGVyIGJvdHRvbSBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHQud3JhcHBlciB7XG5cblx0XHQuYmxvY2sge1xuXG5cdFx0XHRoNCB7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblx0XHRcdFx0Y29sb3I6ICNmN2QzMDA7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjVweDtcblx0XHRcdFx0bWFyZ2luOiA1MHB4IDAgMTVweCAwO1xuXHRcdFx0fVxuXG5cdFx0XHRwIHtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICdDb29wZXInO1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0Zm9udC1zaXplOiAyNXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uY29uY2VwdHMge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDcwcHggMDtcblxuXHQud3JhcHBlciB7XG5cblx0XHQudGl0bGUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogNDIwcHg7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtYXJnaW46IDAgYXV0byAxMDBweCBhdXRvO1xuXHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdH1cblxuXHRcdC5jb25jZXB0IHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdFx0Ji5vbmUge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogLTY1cHg7XG5cdFx0XHR9XG5cblx0XHRcdCYudGhyZWUge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogLTgwcHg7XG5cdFx0XHR9XG5cblx0XHRcdGZpZ3VyZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMTIwcHg7XG5cdFx0XHRcdG1hcmdpbjogMjBweCBhdXRvO1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0cCB7XG5cdFx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRcdFx0XHRwYWRkaW5nOiAwIDE2cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5ibG9ja3Mge1xuXHRtYXJnaW4tYm90dG9tOiA2MHB4O1xuXG5cdC5sZWZ0IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDI1MHB4O1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdGJhY2tncm91bmQ6ICNkZGI5MGE7XG5cdFx0dHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdC1tb3otdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdC1tcy10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0LW8tdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXG5cdFx0aW1nIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDMyMHB4O1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0bWFyZ2luOiA0MHB4IGF1dG8gMCBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdC5sZWZ0OmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG5cdH1cblxuXHQucmlnaHQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMjUwcHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0YmFja2dyb3VuZDogI2Y3ZDMwMDtcblx0XHR0cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0LXdlYmtpdC10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0LW1vei10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0LW1zLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHQtby10cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cblx0XHRpbWcge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMzIwcHg7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtYXJnaW46IDQwcHggYXV0byAwIGF1dG87XG5cdFx0fVxuXHR9XG5cblx0LnJpZ2h0OmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG5cdH1cbn1cblxuLmNvbnRhY3Qge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0LndyYXBwZXIge1xuXHRcdG1hcmdpbi10b3A6IDhlbTtcblxuXHRcdHAge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IDEycHggYXV0bztcblx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRmb250LXNpemU6IDIwcHg7XG5cblx0XHR9XG5cblx0XHRmb3JtIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDU1MHB4O1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXG5cdFx0XHRpbnB1dCB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjMDA3Y2MzO1xuXHRcdFx0XHRtYXJnaW46IDVweCAwO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0cGFkZGluZzogNXB4IDEwcHg7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRvdXRsaW5lOiBub25lO1xuXG5cdFx0XHRcdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXHRcdFx0dGV4dGFyZWEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgIzAwN2NjMztcblx0XHRcdFx0bWFyZ2luOiA1cHggMDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHRcdHBhZGRpbmc6IDVweCAxMHB4O1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAyMDBweDtcblx0XHRcdFx0cmVzaXplOiBub25lO1xuXHRcdFx0XHRvdXRsaW5lOiBub25lO1xuXG5cdFx0XHRcdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblxuXHRcdFx0LmJ0bi1zdWJtaXQge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiAxNTBweDtcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0cGFkZGluZzogOHB4IDA7XG5cdFx0XHRcdGJvcmRlcjogM3B4IHNvbGlkICNmN2QzMDA7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRjb2xvcjogIzAwN2NjMztcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MHB4O1xuXHRcdFx0XHRvdXRsaW5lOiBub25lO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0XHQtbW96LXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdFx0LW1zLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdFx0LW8tdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0fVxuXG5cdFx0XHQuYnRuLXN1Ym1pdDpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNmN2QzMDA7XG5cdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5tc2dzdWNjZXNzIHtcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQubXNnZXJyb3Ige1xuXHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxufVxuXG5cbi5tYWluLWZvb3RlciB7XG5cdHBhZGRpbmc6IDIwJSAwIDAgMDtcblx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvZm9vdGVyLWJnLmpwZycpIGNlbnRlciBib3R0b20gbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRtYXJnaW4tdG9wOiAwcHg7XG5cblx0LndyYXBwZXIge1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGhlaWdodDogMjAwcHg7XG5cblx0XHQuY29sIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHdpZHRoOiBhdXRvO1xuXG5cdFx0XHQmLnRvcCB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dG9wOiAyNXB4O1xuXHRcdFx0fVxuXG5cdFx0XHQmLnJpZ2h0IHtcblx0XHRcdFx0d2lkdGg6IDM1MHB4O1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dG9wOiAzNXB4O1xuXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMTZweDtcblx0XHRcdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuc29jaWFsIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAzNXB4O1xuXHRcdFx0XHRcdGZsb2F0OiByaWdodDtcblxuXHRcdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdHdpZHRoOiAyMHB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDIwcHg7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAjRkZGO1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTBweDtcblx0XHRcdFx0XHRcdG1hcmdpbjogMCAycHg7XG5cblx0XHRcdFx0XHRcdGEge1xuXHRcdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYubG9nby1mb290ZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDE1JTtcblx0XHRcdFx0cmlnaHQ6IDQwJTtcblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdHdpZHRoOiA4MHB4O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0cGFkZGluZzogNXB4O1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQubGlzdCB7XG5cblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdG1hcmdpbjogOHB4IDA7XG5cblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIEV4dHJhIHNtYWxsIGRldmljZXMgKHBvcnRyYWl0IHBob25lcywgbGVzcyB0aGFuIDU3NnB4KVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG5cdC5tYWluLWhlYWRlciB7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC5tYWluLW5hdiB7XG5cblx0XHRcdFx0LmNvbnRhaW5lciB7XG5cblx0XHRcdFx0XHRidXR0b24ge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Lm5hdmJhci1icmFuZCB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDAuNXB4O1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcblx0XHR9XG5cdH1cblxuXHQuY292ZXItcGFnZSB7XG5cblx0XHQmLnByb2R1Y3RzIHtcblx0XHRcdHBhZGRpbmc6IDcwcHggMCA3MHB4IDA7XG5cblx0XHRcdC53cmFwcGVyIHtcblxuXHRcdFx0XHQudHh0IHtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDMwMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5hYm91dCB7XG5cdFx0XHRoZWlnaHQ6IDEzNTBweDtcblxuXHRcdFx0LndyYXBwZXIge1xuXG5cdFx0XHRcdC5jb2xzIHtcblxuXHRcdFx0XHRcdC5jb2wge1xuXHRcdFx0XHRcdFx0ZmxleC1iYXNpczogYXV0bztcblxuXHRcdFx0XHRcdFx0Ji5taXNpb24ge1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDRweCAjZjdkMzAwIHNvbGlkO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQmLnZpcyB7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4ICNmN2QzMDAgc29saWQ7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm1vcmUtaW5mbyB7XG5cdFx0cGFkZGluZy10b3A6IDIlO1xuXG5cdFx0LmNvbnRhaW5lci1mbHVpZCB7XG5cdFx0XHR3aWR0aDogODAlO1xuXG5cdFx0XHQubGVmdCB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRib3JkZXItcmlnaHQ6IDBweDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDQ1cHg7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZjdkMzAwO1xuXHRcdFx0fVxuXG5cdFx0XHQucmlnaHQge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cGFkZGluZy10b3A6IDQ1cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnZpc2lvbiB7XG5cdFx0cGFkZGluZzogMzUlIDAgMTUlIDA7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC5ibG9jayB7XG5cblx0XHRcdFx0aDQge1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblx0XHRcdFx0XHRjb2xvcjogI2Y3ZDMwMDtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTVweDtcblx0XHRcdFx0XHRtYXJnaW46IDUwcHggMCAxNXB4IDA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHRmb250LWZhbWlseTogJ0Nvb3Blcic7XG5cdFx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmNvbmNlcHRzIHtcblxuXHRcdC53cmFwcGVyIHtcblxuXHRcdFx0LmNvbmNlcHQge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0XHRcdCYudHdvIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDAgMTIlIDA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnRocmVlIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAxMCUgMCAwIDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuY29udGFjdCB7XG5cblx0XHQud3JhcHBlciB7XG5cdFx0XHRtYXJnaW4tdG9wOiAyJTtcblxuXHRcdFx0Zm9ybSB7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5tYWluLWZvb3RlciB7XG5cdFx0cGFkZGluZy10b3A6IDUwJTtcblxuXHRcdC53cmFwcGVyIHtcblxuXHRcdFx0LmNvbCB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHRcdCYudG9wIHtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnJpZ2h0IHtcblx0XHRcdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYubG9nby1mb290ZXIge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDYwcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIFNtYWxsIGRldmljZXMgKGxhbmRzY2FwZSBwaG9uZXMsIDU3NnB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge31cblxuLy8gTWVkaXVtIGRldmljZXMgKHRhYmxldHMsIDc2OHB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXHQubWFpbi1oZWFkZXIge1xuXG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHQubWFpbi1uYXYge1xuXG5cdFx0XHRcdC5jb250YWluZXIge1xuXG5cdFx0XHRcdFx0YnV0dG9uIHtcblx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5uYXZiYXItYnJhbmQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwLjVweDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XG5cdFx0fVxuXHR9XG5cblx0Lm1vcmUtaW5mbyB7XG5cdFx0cGFkZGluZy10b3A6IDIlO1xuXG5cdFx0LmNvbnRhaW5lci1mbHVpZCB7XG5cdFx0XHR3aWR0aDogNTAlO1xuXG5cdFx0XHQubGVmdCB7XG5cdFx0XHRcdGJvcmRlci1yaWdodDogMHB4O1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNDVweDtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmN2QzMDA7XG5cdFx0XHR9XG5cblx0XHRcdC5yaWdodCB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiA0NXB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5jb3Zlci1wYWdlIHtcblxuXHRcdCYucHJvZHVjdHMge1xuXHRcdFx0cGFkZGluZzogNzBweCAwIDEyMHB4IDA7XG5cblx0XHRcdC53cmFwcGVyIHtcblxuXHRcdFx0XHQudHh0IHtcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDcwMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5hYm91dCB7XG5cdFx0XHRoZWlnaHQ6IDEyMDBweDtcblxuXHRcdFx0LndyYXBwZXIge1xuXG5cdFx0XHRcdC5jb2xzIHtcblxuXHRcdFx0XHRcdC5jb2wge1xuXG5cdFx0XHRcdFx0XHQmLm1pc2lvbiB7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogNHB4ICNmN2QzMDAgc29saWQ7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCYudmlzIHtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiA0cHggI2Y3ZDMwMCBzb2xpZDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuY29uY2VwdHMge1xuXG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHQuY29uY2VwdCB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0d2lkdGg6IDgwJTtcblxuXHRcdFx0XHQmLnR3byB7XG5cdFx0XHRcdFx0cGFkZGluZzogMCAwIDUlIDA7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLnRocmVlIHtcblx0XHRcdFx0XHRwYWRkaW5nOiAxMCUgMCAwIDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWFpbi1mb290ZXIge1xuXG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHQuY29sIHtcblxuXHRcdFx0XHQmLmxvZ28tZm9vdGVyIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRcdHdpZHRoOiA2MHB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBMYXJnZSBkZXZpY2VzIChkZXNrdG9wcywgOTkycHggYW5kIHVwKVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG5cdC5tb3JlLWluZm8ge1xuXHRcdHBhZGRpbmctdG9wOiAxMHB4O1xuXG5cdFx0LmNvbnRhaW5lci1mbHVpZCB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0LmxlZnQge1xuXHRcdFx0XHRwYWRkaW5nOiAwIDIwcHggMCAyMHB4O1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdFx0XHRib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjZjdkMzAwO1xuXHRcdFx0fVxuXG5cdFx0XHQucmlnaHQge1xuXHRcdFx0XHRwYWRkaW5nOiAwIDIwcHggMCAyMHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5jb3Zlci1wYWdlIHtcblxuXHRcdCYuYWJvdXQge1xuXHRcdFx0aGVpZ2h0OiAxMDAwcHg7XG5cblx0XHRcdC53cmFwcGVyIHtcblxuXHRcdFx0XHQuY29scyB7XG5cblx0XHRcdFx0XHQuY29sIHtcblxuXHRcdFx0XHRcdFx0Ji5taXNpb24ge1xuXHRcdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDRweCAjZjdkMzAwIHNvbGlkO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQmLnZpcyB7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogNHB4ICNmN2QzMDAgc29saWQ7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIEV4dHJhIGxhcmdlIGRldmljZXMgKGxhcmdlIGRlc2t0b3BzLCAxMjAwcHggYW5kIHVwKVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge30iLCJAa2V5ZnJhbWVzIHJvdGF0ZSB7XG5cdGZyb20ge1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0XHQtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG5cdFx0LW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG5cdH1cblxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuXHRcdC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcblx0XHQtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcblx0XHQtby10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG5cdH1cbn1cblxuLmRhdGEge1xuXHRwYWRkaW5nOiA5MHB4IDAgNzBweCAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRjbGVhcjogYm90aDtcblxuXHQud3JhcHBlciB7XG5cblx0XHRpbWcge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdHdpZHRoOiBhdXRvO1xuXG5cdFx0fVxuXHR9XG59XG5cbi5mZWF0dXJlcyB7XG5cdGhlaWdodDogMzAwcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnByb2R1Y3RzLXRhY29zIHtcblxuXHQucHJvZHVjdHMtY2Fyb3VzZWwge1xuXHRcdGxpbmUtaGVpZ2h0OiAzMDBweDtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdC50YWNvIHtcblxuXHRcdFx0Ji5vbmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9UYWNvcy90YWNvX2Nhcm91c2VsXzEuanBnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHR9XG5cblx0XHRcdCYudHdvIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvVGFjb3MvdGFjb19jYXJvdXNlbF8yLmpwZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0fVxuXG5cblx0XHRcdCYudGhyZWUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9UYWNvcy90YWNvX2Nhcm91c2VsXzMuanBnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHR9XG5cblx0XHRcdCYuZm91ciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL1RhY29zL3RhY29fY2Fyb3VzZWxfNC5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdH1cblxuXHRcdFx0Ji5maXZlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvVGFjb3MvdGFjb19jYXJvdXNlbF81LmpwZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0fVxuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6ICcuJztcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzUpXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jjo6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6ICdUQUNPUyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAxMDBweDtcblx0XHRoZWlnaHQ6IDEwMHB4O1xuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDMwJTtcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHR6LWluZGV4OiAxO1xuXHR9XG59XG5cbi5wcm9kdWN0cy1wbGF0aWxsb3Mge1xuXG5cdC5wcm9kdWN0cy1jYXJvdXNlbCB7XG5cdFx0bGluZS1oZWlnaHQ6IDMwMHB4O1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdC5wbGF0aWxsbyB7XG5cblx0XHRcdCYub25lIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvUGxhdGlsbG9zL3BsYXRpbGxvX2Nhcm91c2VsXzEuanBnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHR9XG5cblx0XHRcdCYudHdvIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvUGxhdGlsbG9zL3BsYXRpbGxvX2Nhcm91c2VsXzIuanBnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHR9XG5cblxuXHRcdFx0Ji50aHJlZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL1BsYXRpbGxvcy9wbGF0aWxsb19jYXJvdXNlbF8zLmpwZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0fVxuXG5cdFx0XHQmLmZvdXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9QbGF0aWxsb3MvcGxhdGlsbG9fY2Fyb3VzZWxfNC5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdH1cblxuXHRcdFx0Ji5maXZlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvUGxhdGlsbG9zL3BsYXRpbGxvX2Nhcm91c2VsXzUuanBnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHR9XG5cblx0XHRcdCYuc2l4IHtcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvUGxhdGlsbG9zL3BsYXRpbGxvX2Nhcm91c2VsXzYuanBnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHR9XG5cblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogJy4nO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNSlcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmOjphZnRlciB7XG5cdFx0Y29udGVudDogJ1BMQVRJTExPUyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0aGVpZ2h0OiAxMDBweDtcblx0XHRmb250LXNpemU6IDEwMHB4O1xuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDMwJTtcblx0XHRib3R0b206IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHR6LWluZGV4OiAxO1xuXHR9XG59XG5cblxuLndhcnJhbnR5IHtcblx0cGFkZGluZzogNjBweCAwIDEwcHggMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0Y2xlYXI6IGJvdGg7XG5cdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2JnLXBhdHRlcm4ucG5nJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cblx0LndyYXBwZXIge1xuXG5cdFx0LnRpdGxlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDMzMHB4O1xuXHRcdFx0bWFyZ2luOiAyMHB4IGF1dG8gNTBweCBhdXRvO1xuXG5cdFx0fVxuXG5cdFx0cCB7XG5cdFx0XHRjb2xvcjogIzAwN2NjMztcblx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblx0XHRcdGZvbnQtc2l6ZTogMjVweDtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWF4LXdpZHRoOiA4MDBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvIDI1cHggYXV0bztcblx0XHR9XG5cblx0XHQubGlzdCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1heC13aWR0aDogNjUwcHg7XG5cdFx0XHRtYXJnaW46IDQwcHggYXV0byAwIGF1dG87XG5cblx0XHRcdHVsIHtcblxuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0bWFyZ2luOiAyMHB4IDA7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICdDb29wZXInO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTVweDtcblx0XHRcdFx0XHRjb2xvcjogIzAwN2NjMztcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdFx0XHQuaWNvbi10aW1vbiB7XG5cdFx0XHRcdFx0XHRjb2xvcjogIzAwN2NjMztcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdGxlZnQ6IC0zMHB4O1xuXHRcdFx0XHRcdFx0dG9wOiAtM3B4O1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogLjVzIGVhc2U7XG5cdFx0XHRcdFx0XHQtd2Via2l0LXRyYW5zaXRpb246IC41cyBlYXNlO1xuXHRcdFx0XHRcdFx0LW1vei10cmFuc2l0aW9uOiAuNXMgZWFzZTtcblx0XHRcdFx0XHRcdC1tcy10cmFuc2l0aW9uOiAuNXMgZWFzZTtcblx0XHRcdFx0XHRcdC1vLXRyYW5zaXRpb246IC41cyBlYXNlO1xuXHRcdFx0XHRcdFx0YW5pbWF0aW9uOiByb3RhdGUgMnMgaW5maW5pdGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0bGk6aG92ZXIge1xuXHRcdFx0XHRcdC5pY29uLXRpbW9uIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAjZjdkMzAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBFeHRyYSBzbWFsbCBkZXZpY2VzIChwb3J0cmFpdCBwaG9uZXMsIGxlc3MgdGhhbiA1NzZweClcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuXHQucHJvZHVjdHMtdGFjb3Mge1xuXHRcdGhlaWdodDogMzAwcHggIWltcG9ydGFudDtcblxuXHRcdC5wcm9kdWN0cy1jYXJvdXNlbCB7IH1cblxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGZvbnQtc2l6ZTogODBweDtcblx0XHRcdHRvcDogMzUlO1xuXHRcdH1cblx0fVxuXG5cdC5wcm9kdWN0cy1wbGF0aWxsb3Mge1xuXHRcdGhlaWdodDogMzAwcHggIWltcG9ydGFudDtcblxuXHRcdC5wcm9kdWN0cy1jYXJvdXNlbCB7IH1cblxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGZvbnQtc2l6ZTogNjBweDtcblx0XHRcdHRvcDogMzUlO1xuXHRcdH1cblx0fVxuXG5cdC53YXJyYW50eSB7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdHAge1xuXHRcdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHR9XG5cblx0XHRcdC5saXN0IHtcblx0XHRcdFx0bWF4LXdpZHRoOiAyNTBweDtcblxuXHRcdFx0XHR1bCB7XG5cblx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIFNtYWxsIGRldmljZXMgKGxhbmRzY2FwZSBwaG9uZXMsIDU3NnB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge31cblxuLy8gTWVkaXVtIGRldmljZXMgKHRhYmxldHMsIDc2OHB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXHQucHJvZHVjdHMtdGFjb3Mge1xuXHRcdGhlaWdodDogMzAwcHggIWltcG9ydGFudDtcblxuXHRcdC5wcm9kdWN0cy1jYXJvdXNlbCB7IH1cblxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGZvbnQtc2l6ZTogMTAwcHg7XG5cdFx0XHR0b3A6IDMwJTtcblx0XHR9XG5cdH1cblxuXHQucHJvZHVjdHMtcGxhdGlsbG9zIHtcblx0XHRoZWlnaHQ6IDMwMHB4ICFpbXBvcnRhbnQ7XG5cblx0XHQucHJvZHVjdHMtY2Fyb3VzZWwgeyB9XG5cblx0XHQmOjphZnRlciB7XG5cdFx0XHRmb250LXNpemU6IDEwMHB4O1xuXHRcdFx0dG9wOiAzMCU7XG5cdFx0fVxuXHR9XG59XG5cbi8vIExhcmdlIGRldmljZXMgKGRlc2t0b3BzLCA5OTJweCBhbmQgdXApXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHt9XG5cbi8vIEV4dHJhIGxhcmdlIGRldmljZXMgKGxhcmdlIGRlc2t0b3BzLCAxMjAwcHggYW5kIHVwKVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge30iLCIvKiBLZXlmcmFtZXMgKi9cbkBrZXlmcmFtZXMgcm90YXRlIHtcblx0ZnJvbSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0XHQtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuXHRcdC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0XHQtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0fVxuXHR0byB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuXHRcdC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcblx0XHQtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcblx0XHQtby10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG5cdH1cbn1cblxuLmhpc3Rvcnl7XG5cblx0LndyYXBwZXJ7XG5cdFx0XG5cdFx0LnRpdGxle1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMzAwcHg7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtYXJnaW46IDAgYXV0byA0MHB4IGF1dG87XG5cdFx0fVxuXG5cdFx0cHtcblx0XHRcdGZvbnQtc2l6ZTogMThweDtcblx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDI4cHg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAgNDBweDtcblx0XHRcdFxuXHRcdH1cblxuXHRcdGZpZ3VyZXtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWF4LXdpZHRoOiA1MjBweDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0bWFyZ2luOiA0MHB4IGF1dG8gODBweCBhdXRvO1xuXG5cdFx0XHRpbWd7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5mb3VuZGVyc3tcblx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvYmctZm91bmRlcnMucG5nJykgY2VudGVyIGNlbnRlciByZXBlYXQteDtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXJnaW46IDgwcHggMCAxMDBweCAwO1xuXG5cdC53cmFwcGVye1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLXRvcDogNGVtO1xuXHRcdGhlaWdodDogNjQwcHg7XG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cblx0XHQudG9we1xuXG5cdFx0XHQudGl0bGV7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMzYwcHg7XG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogMzBweDtcblx0XHRcdFx0dG9wOiAtMjBweDtcblxuXHRcdFx0fVxuXG5cdFx0XHQubGVmdHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXG5cdFx0XHRcdC5wcm9maWxle1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHR0b3A6IDkwcHg7XG5cdFx0XHRcdFx0d2lkdGg6IDMwMHB4O1xuXHRcdFx0XHRcdGhlaWdodDogYXV0bztcblxuXHRcdFx0XHRcdGltZ3tcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQucmlnaHR7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR3aWR0aDogNDAwcHg7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogMTQwcHg7XG5cdFx0XHRcdHJpZ2h0OiAtODBweDtcblxuXHRcdFx0XHQmOjphZnRlcntcblx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHR3aWR0aDogMTUwcHg7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxNTBweDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy90aW1vbi5wbmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogLTgwcHg7XG5cdFx0XHRcdFx0cmlnaHQ6IC0yNTBweDtcblx0XHRcdFx0XHRhbmltYXRpb246IHJvdGF0ZSA1cyBpbmZpbml0ZSBsaW5lYXI7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRoNXtcblx0XHRcdFx0XHRmb250LXNpemU6IDI4cHg7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICdDb29wZXInO1xuXHRcdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRwe1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0XHRmb250LWZhbWlseTogJ0Nvb3Blcic7XG5cdFx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDE2cHg7XG5cblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnF1b3RlLXR4dHtcblx0XHRcdFx0XHRjb2xvcjogI2Y3ZDMwMDtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0cGFkZGluZzogMCAzMHB4O1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0XHRcdFx0XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQucXVvdGUtYm90dG9te1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXgtd2lkdGg6IDc1MHB4O1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogLTgwcHg7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cblx0XHRcdGltZ3tcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmZvdW5kZXItYm90dG9te1xuXHRwYWRkaW5nLXRvcDogNDBweDtcblxuXHQud3JhcHBlcntcblx0XHRoZWlnaHQ6IDYwMHB4O1xuXG5cdFx0LmxlZnR7XG5cblx0XHRcdC5sb2dve1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0d2lkdGg6IDMwMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cblx0XHRcdFx0aW1ne1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5yaWdodHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdFx0cHtcblx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRcdFx0XHRjb2xvcjogIzAwN2NjMztcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDI4cHg7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dG9wOiAxMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuXG4ucXVvdGUtbWFpbntcblx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvYmctc3VuLnBuZycpIGNlbnRlciBjZW50ZXIgcmVwZWF0LXg7XG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCY6OmFmdGVye1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiA4MCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2JnLXN1bi1hbHQucG5nJykgY2VudGVyIGNlbnRlciByZXBlYXQteDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0fVxuXG5cdC53cmFwcGVye1xuXHRcdGhlaWdodDogNjUwcHg7XG5cblx0XHQudHh0e1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXgtd2lkdGg6IDgwMHB4O1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRmb250LWZhbWlseTogJ0Nvb3Blcic7XG5cdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdGZvbnQtc2l6ZTogMjlweDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRvcDogMTc1cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMzVweDtcblx0XHR9XG5cdH1cbn1cblxuXG4ucHJlc3RpZ2V7XG5cdHBhZGRpbmc6IDUwcHggMCAyMHB4IDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHQud3JhcHBlcntcblxuXHRcdC50aXRsZXtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDMwMHB4O1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0bWFyZ2luOiAwIGF1dG8gMzBweCBhdXRvO1xuXHRcdH1cblxuXHRcdHB7XG5cdFx0XHRjb2xvcjogIzAwN2NjMztcblx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDgwJTtcblx0XHRcdG1hcmdpbjogMTBweCBhdXRvIDYwcHggYXV0bztcblx0XHRcdGxpbmUtaGVpZ2h0OiAyOHB4O1xuXHRcdH1cblxuXHRcdC5idG4tam9pbiB7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0XHQtd2Via2l0LXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdC1tb3otdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0LW1zLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdC1vLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHR9XG5cblx0XHQuYnRuLWpvaW46aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2Y3ZDMwMDtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdH1cblx0fVxufVxuXG4vLyBFeHRyYSBzbWFsbCBkZXZpY2VzIChwb3J0cmFpdCBwaG9uZXMsIGxlc3MgdGhhbiA1NzZweClcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuXHQuZm91bmRlcnN7XG5cdFxuXHRcdC53cmFwcGVye1xuXHRcdFx0aGVpZ2h0OiA5NTBweDtcblx0XG5cdFx0XHQudG9we1xuXG5cdFx0XHRcdC50aXRsZSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMjBweDtcblx0XHRcdFx0XHR3aWR0aDogMjgwcHg7XG5cdFx0XHRcdH1cblx0XG5cdFx0XHRcdC5sZWZ0e1xuXHRcblx0XHRcdFx0XHQucHJvZmlsZXtcblx0XHRcdFx0XHRcdHRvcDogODBweDtcblx0XHRcdFx0XHRcdGxlZnQ6IDUwcHg7XG5cdFx0XHRcdFx0XHR3aWR0aDogMjUwcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFxuXHRcdFx0XHQucmlnaHR7XG5cdFx0XHRcdFx0d2lkdGg6IDgwJTtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0bGVmdDogMTAlO1xuXG5cdFx0XHRcdFx0aDUge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAyMnB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdHAge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRcdH1cblx0XG5cdFx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuZm91bmRlci1ib3R0b20ge1xuXG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHQubGVmdCB7XG5cblx0XHRcdFx0LmxvZ28ge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRyaWdodDogNXB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5yaWdodCB7XG5cblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQucXVvdGUtbWFpbiB7XG5cdFx0XG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHQudHh0IHtcblx0XHRcdFx0Zm9udC1zaXplOiAyNHB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdGJvdHRvbTogLTYwJTtcblx0XHR9XG5cdH1cblxuXHQucHJlc3RpZ2Uge1xuXG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHRwIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBTbWFsbCBkZXZpY2VzIChsYW5kc2NhcGUgcGhvbmVzLCA1NzZweCBhbmQgdXApXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbn1cblxuLy8gTWVkaXVtIGRldmljZXMgKHRhYmxldHMsIDc2OHB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXHQuZm91bmRlcnMge1xuXHRcblx0XHQud3JhcHBlciB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFxuXHRcdFx0LnRvcCB7XG5cdFxuXHRcdFx0XHQubGVmdCB7XG5cdFxuXHRcdFx0XHRcdC5wcm9maWxle1xuXHRcdFx0XHRcdFx0dG9wOiAxMjBweDtcblx0XHRcdFx0XHRcdHdpZHRoOiAyNTBweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XG5cdFx0XHRcdC5yaWdodCB7XG5cdFx0XHRcdFx0d2lkdGg6IDMyMHB4O1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogODBweDtcblx0XG5cdFx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEyMHB4O1xuXHRcdFx0XHRcdFx0cmlnaHQ6IC0xMCU7XG5cdFx0XHRcdFx0XHR0b3A6IC00MCU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnF1b3RlLW1haW4ge1xuXG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHQudHh0IHtcblx0XHRcdFx0Zm9udC1zaXplOiAyNHB4O1xuXHRcdFx0XHR0b3A6IDQwJTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOjphZnRlciB7XG5cdFx0XHRib3R0b206IC01MCU7XG5cdFx0fVxuXHR9XG59XG5cbi8vIExhcmdlIGRldmljZXMgKGRlc2t0b3BzLCA5OTJweCBhbmQgdXApXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblx0LnF1b3RlLW1haW4ge1xuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRib3R0b206IC0yNSU7XG5cdFx0fVxuXHR9XG59XG5cbi8vIEV4dHJhIGxhcmdlIGRldmljZXMgKGxhcmdlIGRlc2t0b3BzLCAxMjAwcHggYW5kIHVwKVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuXHQucXVvdGUtbWFpbiB7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC50eHQge1xuXHRcdFx0XHRmb250LXNpemU6IDMycHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRib3R0b206IC0xNSU7XG5cdFx0fVxuXHR9XG59IiwiLmNvbmNlcHRzLnNlYyB7XG5cdG1hcmdpbi10b3A6IDgwcHg7XG5cbn1cblxuLm1vZGVsIHtcblx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvc2VhLWJnLnBuZycpIGNlbnRlciBib3R0b20gbm8tcmVwZWF0O1xuXHQvL2JhY2tncm91bmQ6IHJlZDtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0cGFkZGluZzogMTAwcHggMDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR6LWluZGV4OiAtOTk5OTtcblxuXHQud3JhcHBlciB7XG5cblx0XHQudGl0bGUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogODAwcHg7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRtYXJnaW46IDMwcHggYXV0bztcblxuXG5cblx0XHR9XG5cblx0XHQubGlzdCB7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IDYwJTtcblxuXHRcdFx0bGkge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bWFyZ2luOiAxNXB4IDA7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblxuXHRcdFx0XHQuaWNvbi10aW1vbiB7XG5cdFx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyNXB4O1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHR0b3A6IDRweDtcblxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5idXNpbmVzcy1vcG8ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0aGVpZ2h0OiA0NTBweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kOiAjZGRiOTBhO1xuXG5cdCY6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2JnLWN1cnZlLXllbGxvdy5wbmcnKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IC02MHB4O1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0ei1pbmRleDogOTk5O1xuXHR9XG5cblxuXHQud3JhcHBlciB7XG5cdFx0ei1pbmRleDogOTk5OTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRjbGVhcjogYm90aDtcblxuXHRcdC50aXRsZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiAzNTBweDtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdG1hcmdpbjogMzBweCAyNCUgNTVweCBhdXRvO1xuXG5cdFx0fVxuXG5cdFx0LnR4dCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiA4MDBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMjVweDtcblx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblxuXHRcdH1cblx0fVxufVxuXG4ucG9pbnRzIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGNsZWFyOiBib3RoO1xuXG5cdC5wb2ludCB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGhlaWdodDogNDIwcHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0cGVyc3BlY3RpdmU6IDEwMDBweDtcblxuXHRcdC5jYXJkLXN0YW5kYXIge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cztcblx0XHRcdHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cblx0XHRcdC5jYXJkLWZhY2Uge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHBhZGRpbmc6IDMwcHg7XG5cdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRcdGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuXHRcdFx0XHQmLmZyb250LWZhY2Uge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICMwMDdjYzM7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XG5cblx0XHRcdFx0XHRmaWd1cmUge1xuXG5cdFx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTgwcHg7XG5cdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdFx0dG9wOiAxNXB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdCYuc3RhbmRhciB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvaGVhZGVyMi5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNhcmQtZmMge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cztcblx0XHRcdHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cblx0XHRcdC5jYXJkLWZhY2Uge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHBhZGRpbmc6IDMwcHg7XG5cdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRcdGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuXHRcdFx0XHQmLmZyb250LWZhY2Uge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICMwMGE1ZWQ7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XG5cblx0XHRcdFx0XHRmaWd1cmUge1xuXG5cdFx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTMwcHg7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5mYyB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvbW9kZWxvLWZvb2Rjb3VydC5qcGVnJykgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0XHRcdFx0XHR0b3A6IC0xMDAlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNhcmQtbWFjcm8ge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cztcblx0XHRcdHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cblx0XHRcdC5jYXJkLWZhY2Uge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHBhZGRpbmc6IDMwcHg7XG5cdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRcdGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuXHRcdFx0XHQmLmZyb250LWZhY2Uge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICMwMDdjYzM7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XG5cblx0XHRcdFx0XHRmaWd1cmUge1xuXG5cdFx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTMwcHg7XG5cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmLm1hY3JvIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tb2RlbG8tbWFjcm90YWNvZmlzaC5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0XHRcdHRvcDogLTEwMCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRmaWd1cmUge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDc1cHg7XG5cblx0XHRcdGltZyB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMjAwcHg7XG5cdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cblx0XHRcdH1cblx0XHR9XG5cblx0XHRwIHtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0bWFyZ2luLXRvcDogMjVweDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRcdH1cblxuXHRcdHVsIHtcblx0XHRcdGxpc3Qtc3R5bGU6IGluc2lkZTtcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRcdGxpIHtcblx0XHRcdFx0bWFyZ2luOiA3cHggMDtcblx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDIwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnBvaW50OmhvdmVyIHtcblxuXHRcdC5jYXJkZngge1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XG5cdFx0fVxuXHR9XG59XG5cblxuLnN0ZXBzLWZyYW4ge1xuXHRwYWRkaW5nOiAzMHB4IDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCY6OmFmdGVyIHtcblx0XHRjb250ZW50OiAnJztcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9iZy1jdXJ2ZS13aGl0ZS5wbmcnKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogNTAwcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogLTgwcHg7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHR6LWluZGV4OiA5OTtcblxuXHR9XG5cblx0LndyYXBwZXIge1xuXHRcdHotaW5kZXg6IDk5OTk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cblx0XHQucXVvdGUtcmliYm9uIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDgwMHB4O1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0bWFyZ2luOiAzMHB4IGF1dG8gMCBhdXRvO1xuXHRcdH1cblxuXHRcdC50aXRsZSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiA0MDBweDtcblx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdG1hcmdpbjogMzBweCBhdXRvIDQ1cHggYXV0bztcblxuXHRcdH1cblxuXHRcdC5zdGVwcyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiA2MDBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0bGkge1xuXHRcdFx0XHRmb250LXNpemU6IDE1cHg7XG5cdFx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcblx0XHRcdFx0bWFyZ2luOiAxMnB4IDA7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblxuXHRcdFx0XHQubnVtYmVyIHtcblx0XHRcdFx0XHRmb250LXNpemU6IDQ1cHg7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGxlZnQ6IC03MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5uZXctZnJhbiB7XG5cdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2ZlYXR1cmUyLmpwZycpIGNlbnRlciB0b3Agbm8tcmVwZWF0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuXHRwYWRkaW5nOiA5MHB4IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOjphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoMCwgMTI0LCAxOTUsIDAuNik7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0fVxuXG5cblx0LndyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiA5OTk5O1xuXG5cdFx0LnRpdGxlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDM1MHB4O1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0bWFyZ2luOiAyMHB4IGF1dG87XG5cblx0XHR9XG5cblx0XHQudHh0IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDg1MHB4O1xuXHRcdFx0bWFyZ2luOiAzMHB4IGF1dG87XG5cdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMjRweDtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHR9XG5cdH1cbn1cblxuLmZvcm0tY29udGFjdCB7XG5cdGJhY2tncm91bmQ6ICNkZGI5MGE7XG5cdHBhZGRpbmc6IDYwcHggMCAxMjBweCAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOjphZnRlciB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvYmctY3VydmUteWVsbG93LnBuZycpIGNlbnRlciB0b3Agbm8tcmVwZWF0O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAyMDBweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAtNjBweDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXG5cdH1cblxuXHQmOjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2JnLXctc3VyZi5wbmcnKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMzUwcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHotaW5kZXg6IDk5OTk7XG5cdH1cblxuXHQud3JhcHBlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDk5OTk7XG5cblx0XHQudGl0bGUge1xuXHRcdFx0Zm9udC1mYW1pbHk6ICdDb29wZXInO1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRmb250LXNpemU6IDI5cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogMzJweDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDYwMHB4O1xuXHRcdFx0bWFyZ2luOiAwIGF1dG8gNDBweCBhdXRvO1xuXHRcdH1cblxuXHRcdC5mb3JtIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDYwMHB4O1xuXHRcdFx0bWFyZ2luOiAwIGF1dG8gNDBweCBhdXRvO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bWFyZ2luOiAxNXB4IDA7XG5cdFx0XHR9XG5cblx0XHRcdC5jaGVjayB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogNjBweDtcblxuXHRcdFx0XHRpbnB1dCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogNXB4O1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHR0b3A6IC0ycHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmNoZWNrcy1saXN0IHtcblxuXHRcdFx0XHQuY2hlY2sge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdGlucHV0IHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjRkZGO1xuXHRcdFx0XHRwYWRkaW5nOiA4cHggMTBweDtcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRtYXJnaW46IDdweCAwO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAxMHB4O1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblxuXHRcdFx0XHQmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjotbW96LXBsYWNlaG9sZGVyIHtcblx0XHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0fVxuXG5cdFx0XHR9XG5cblx0XHRcdC5zdWJtaXQtYnRuIHtcblx0XHRcdFx0YmFja2dyb3VuZDogIzAwN2NjMztcblx0XHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRcdHBhZGRpbmc6IDEycHggMDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTBweDtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiAyMjBweDtcblx0XHRcdFx0bWFyZ2luOiA3NXB4IGF1dG8gMCBhdXRvO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBFeHRyYSBzbWFsbCBkZXZpY2VzIChwb3J0cmFpdCBwaG9uZXMsIGxlc3MgdGhhbiA1NzZweClcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuXHQubW9kZWwge1xuXHRcdHBhZGRpbmc6IDE4MHB4IDAgMTIwcHggMDtcblxuXHRcdC53cmFwcGVyIHtcblxuXHRcdFx0LnRpdGxlIHtcblx0XHRcdFx0bWFyZ2luOiA4MHB4IGF1dG8gMzBweCBhdXRvO1xuXHRcdFx0fVxuXG5cdFx0XHQubGlzdCB7XG5cblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5jb25jZXB0cyB7XG5cdFx0cGFkZGluZzogNzBweCAwIDAgMDtcblx0fVxuXG5cdC5idXNpbmVzcy1vcG8ge1xuXHRcdGhlaWdodDogMzQwcHg7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC50aXRsZSB7XG5cdFx0XHRcdG1hcmdpbjogYXV0bztcblx0XHRcdH1cblxuXHRcdFx0LnR4dCB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnBvaW50cyB7XG5cblx0XHQucG9pbnQge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdC5jYXJkLXN0YW5kYXIge1xuXG5cdFx0XHRcdC5jYXJkLWZhY2Uge1xuXG5cdFx0XHRcdFx0Ji5mcm9udC1mYWNlIHtcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLnN0YW5kYXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmNhcmQtZmMge1xuXG5cdFx0XHRcdC5jYXJkLWZhY2Uge1xuXG5cdFx0XHRcdFx0Ji5mcm9udC1mYWNlIHtcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLmZjIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5jYXJkLW1hY3JvIHtcblxuXHRcdFx0XHQuY2FyZC1mYWNlIHtcblxuXHRcdFx0XHRcdCYuZnJvbnQtZmFjZSB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5tYWNybyB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5wb2ludDpob3ZlciB7XG5cblx0XHRcdC5jYXJkZngge1xuXHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnN0ZXBzLWZyYW4ge1xuXG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHQuc3RlcHMge1xuXHRcdFx0XHR3aWR0aDogODAlO1xuXG5cdFx0XHRcdGxpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XG5cblx0XHRcdFx0XHQubnVtYmVyIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm5ldy1mcmFuIHtcblxuXHRcdC53cmFwcGVyIHtcblxuXHRcdFx0LnR4dCB7XG5cdFx0XHRcdHdpZHRoOiA4MCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmZvcm0tY29udGFjdCB7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC50aXRsZSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cblx0XHRcdC5mb3JtIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIFNtYWxsIGRldmljZXMgKGxhbmRzY2FwZSBwaG9uZXMsIDU3NnB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge31cblxuLy8gTWVkaXVtIGRldmljZXMgKHRhYmxldHMsIDc2OHB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuXHQubW9kZWwge1xuXHRcdHBhZGRpbmc6IDE4MHB4IDAgMTIwcHggMDtcblx0fVxuXG5cdC5wb2ludHMge1xuXG5cdFx0LnBvaW50IHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0XHQuY2FyZC1zdGFuZGFyIHtcblxuXHRcdFx0XHQuY2FyZC1mYWNlIHtcblxuXHRcdFx0XHRcdCYuZnJvbnQtZmFjZSB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5zdGFuZGFyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5jYXJkLWZjIHtcblxuXHRcdFx0XHQuY2FyZC1mYWNlIHtcblxuXHRcdFx0XHRcdCYuZnJvbnQtZmFjZSB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5mYyB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY2FyZC1tYWNybyB7XG5cblx0XHRcdFx0LmNhcmQtZmFjZSB7XG5cblx0XHRcdFx0XHQmLmZyb250LWZhY2Uge1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCYubWFjcm8ge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQucG9pbnQ6aG92ZXIge1xuXG5cdFx0XHQuY2FyZGZ4IHtcblx0XHRcdFx0dHJhbnNmb3JtOiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zdGVwcy1mcmFuIHtcblxuXHRcdC53cmFwcGVyIHtcblxuXHRcdFx0LnN0ZXBzIHtcblx0XHRcdFx0d2lkdGg6IDgwJTtcblxuXHRcdFx0XHRsaSB7XG5cblx0XHRcdFx0XHQubnVtYmVyIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm5ldy1mcmFuIHtcblxuXHRcdC53cmFwcGVyIHtcblxuXHRcdFx0LnR4dCB7XG5cdFx0XHRcdHdpZHRoOiA4MCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIExhcmdlIGRldmljZXMgKGRlc2t0b3BzLCA5OTJweCBhbmQgdXApXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblx0Lm1vZGVsIHtcblx0XHRwYWRkaW5nOiAxODBweCAwO1xuXHR9XG5cblx0LnBvaW50cyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRjbGVhcjogYm90aDtcblxuXHRcdC5wb2ludCB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRoZWlnaHQ6IDQyMHB4O1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRwZXJzcGVjdGl2ZTogMTAwMHB4O1xuXG5cdFx0XHQuY2FyZC1zdGFuZGFyIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cztcblx0XHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblxuXHRcdFx0XHQuY2FyZC1mYWNlIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDMwcHg7XG5cdFx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdFx0XHRiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cblx0XHRcdFx0XHQmLmZyb250LWZhY2Uge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogIzAwN2NjMztcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xuXG5cdFx0XHRcdFx0XHRmaWd1cmUge1xuXG5cdFx0XHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDE4MHB4O1xuXHRcdFx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdFx0XHR0b3A6IDE1cHg7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLnN0YW5kYXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvaGVhZGVyMi5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5jYXJkLWZjIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cztcblx0XHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblxuXHRcdFx0XHQuY2FyZC1mYWNlIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDMwcHg7XG5cdFx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdFx0XHRiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cblx0XHRcdFx0XHQmLmZyb250LWZhY2Uge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogIzAwYTVlZDtcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xuXG5cdFx0XHRcdFx0XHRmaWd1cmUge1xuXG5cdFx0XHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHRcdFx0d2lkdGg6IDEzMHB4O1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5mYyB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tb2RlbG8tZm9vZGNvdXJ0LmpwZWcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRcdFx0XHR0b3A6IC0xMDAlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY2FyZC1tYWNybyB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHM7XG5cdFx0XHRcdHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG5cblx0XHRcdFx0LmNhcmQtZmFjZSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRwYWRkaW5nOiAzMHB4O1xuXHRcdFx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRcdFx0YmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG5cdFx0XHRcdFx0Ji5mcm9udC1mYWNlIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICMwMDdjYzM7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcblxuXHRcdFx0XHRcdFx0ZmlndXJlIHtcblxuXHRcdFx0XHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdFx0XHRcdHdpZHRoOiAxMzBweDtcblxuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5tYWNybyB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9tb2RlbG8tbWFjcm90YWNvZmlzaC5qcGcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRcdFx0XHR0b3A6IC0xMDAlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRmaWd1cmUge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiA3NXB4O1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0d2lkdGg6IDIwMHB4O1xuXHRcdFx0XHRcdGhlaWdodDogYXV0bztcblx0XHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHAge1xuXHRcdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAyNXB4O1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMjBweDtcblx0XHRcdH1cblxuXHRcdFx0dWwge1xuXHRcdFx0XHRsaXN0LXN0eWxlOiBpbnNpZGU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdG1hcmdpbjogN3B4IDA7XG5cdFx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAyMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnBvaW50OmhvdmVyIHtcblxuXHRcdFx0LmNhcmRmeCB7XG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5jb25jZXB0cyB7XG5cdFx0cGFkZGluZzogNzBweCAwIDAgMDtcblx0fVxufVxuXG4vLyBFeHRyYSBsYXJnZSBkZXZpY2VzIChsYXJnZSBkZXNrdG9wcywgMTIwMHB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHt9IiwiQGtleWZyYW1lcyBib3VuY2Uge1xuXG5cdDAlLFxuXHQyMCUsXG5cdDYwJSxcblx0MTAwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0XHQtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHR9XG5cblx0NDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuXHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuXHRcdC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcblx0fVxuXG5cdDgwJSB7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuXHRcdC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcblx0XHQtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBzcGxhc2hEUiB7XG5cblx0MCUsXG5cdDIwJSxcblx0NjAlLFxuXHQxMDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXHRcdC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG5cdFx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXHRcdC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuXHR9XG5cblx0NDAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDIwcHgpO1xuXHRcdC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjBweCk7XG5cdFx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDIwcHgpO1xuXHRcdC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDIwcHgpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDIwcHgpO1xuXHR9XG5cblx0ODAlIHtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwcHgpO1xuXHRcdC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTBweCk7XG5cdFx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwcHgpO1xuXHRcdC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDEwcHgpO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDEwcHgpO1xuXHR9XG59XG5cbi5jb3Zlci1pbWdzIHtcblx0bWFyZ2luLXRvcDogMTI1cHg7XG5cblx0LnJvdyB7XG5cblx0XHQuaW1nIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAzNDBweDtcblxuXHRcdFx0aW1nIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMzQwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnR4dC1ibG9jayB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjMDA3Y2MzO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXG5cdFx0XHRwIHtcblx0XHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblx0XHRcdFx0Zm9udC1zaXplOiAxNXB4O1xuXHRcdFx0XHRwYWRkaW5nOiAwIDEwMHB4O1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR0b3A6IDQwJTtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cbn1cblxuLm1hcC1sb2NhdGlvbnMge1xuXHRtYXJnaW4tdG9wOiA1MHB4O1xuXG5cdC53cmFwcGVyIHtcblxuXHRcdC5tYXAge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdHdpZHRoOiA3MjBweDtcblx0XHRcdGNsZWFyOiBib3RoO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRvcDogLTIwMHB4O1xuXG5cdFx0XHRpbWcge1xuXG5cdFx0XHRcdCYubWFwYSB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5hbmNsYUdfMSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMTIuNSU7XG5cdFx0XHRcdFx0bGVmdDogMTYlO1xuXHRcdFx0XHRcdGFuaW1hdGlvbjogYm91bmNlIDJzIGluZmluaXRlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5hbmNsYUdfMiB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMTclO1xuXHRcdFx0XHRcdGxlZnQ6IDI4LjUlO1xuXHRcdFx0XHRcdGFuaW1hdGlvbjogYm91bmNlIDJzIGluZmluaXRlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5hbmNsYUdfMyB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMzYlO1xuXHRcdFx0XHRcdGxlZnQ6IDI0JTtcblx0XHRcdFx0XHRhbmltYXRpb246IGJvdW5jZSAycyBpbmZpbml0ZTtcblxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5hbmNsYVNNIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Ym90dG9tOiAyMiU7XG5cdFx0XHRcdFx0bGVmdDogNTElO1xuXHRcdFx0XHRcdGFuaW1hdGlvbjogYm91bmNlIDJzIGluZmluaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmxvY2F0aW9ucyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiA1MDBweDtcblx0XHRcdGZsb2F0OiByaWdodDtcblxuXHRcdFx0LmNvbCB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0d2lkdGg6IDI1MHB4O1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblxuXHRcdFx0XHRoMyB7XG5cdFx0XHRcdFx0Y29sb3I6ICNkZGI5MGE7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAyMHB4O1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnQ29vcGVyJztcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5sb2MtaW5mbyB7XG5cdFx0XHRcdFx0bWFyZ2luOiAxMHB4IDAgMjVweCAwO1xuXG5cdFx0XHRcdFx0aDUge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdFx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRwIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdFx0XHRcdGNvbG9yOiAjMDA3Y2MzO1xuXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNwbGFzaC13cmFwcGVyIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdFx0XHRcblx0XHRcdC5idG4tc3VjIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHdpZHRoOiAyMzBweDtcblx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogNDVweDtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTBweDtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRcdFx0Y29sb3I6ICMwMDdjYzM7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0Ym9yZGVyOiA0cHggc29saWQgIzAwN2NjMztcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHR0b3A6IC00MHB4O1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAwLjNzIGVhc2U7XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0XHQtbW96LXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdFx0LW1zLXRyYW5zaXRpb246IDAuM3MgZWFzZTtcblx0XHRcdFx0LW8tdHJhbnNpdGlvbjogMC4zcyBlYXNlO1xuXHRcdFx0fVxuXG5cdFx0XHQuc3BsYXNoLWltZyB7XG5cdFx0XHRcdHdpZHRoOiAzNDBweDtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHR0b3A6IC0xMTlweDtcblx0XHRcdFx0bGVmdDogMzYlO1xuXHRcdFx0XHR6LWluZGV4OiAtMTtcblx0XHRcdFx0dHJhbnNpdGlvbjogMC41cyBlYXNlO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtM2RlZyk7XG5cdFx0XHR9XG5cblx0XHRcdC5idG4tc3VjOmhvdmVyICsgLnNwbGFzaC1pbWcge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xuXHRcdFx0fVxuXHRcblx0XHRcdC5idG4tc3VjOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwN2NjMztcblx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDM3NC4yOHB4KSB7XG5cdC5jb3Zlci1pbWdzIHtcblx0XHQucm93IHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luOiAwO1xuXG5cdFx0XHQuaW1nIHtcblx0XHRcdFx0aGVpZ2h0OiAyNjBweDtcblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGhlaWdodDogMjYwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnR4dC1ibG9jayB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRoZWlnaHQ6IDI2MHB4O1xuXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0dG9wOiAzMCU7XG5cdFx0XHRcdFx0cGFkZGluZzogMCA1MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Lm1hcC1sb2NhdGlvbnMge1xuXG5cdFx0LndyYXBwZXIge1xuXG5cdFx0XHQubG9jYXRpb25zIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdFx0XHQuY29sIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Lm1hcCB7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdFx0aW1nIHtcblx0XG5cdFx0XHRcdFx0Ji5hbmNsYUdfMSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMzBweDtcblx0XHRcdFx0XHR9XG5cdFxuXHRcdFx0XHRcdCYuYW5jbGFHXzIge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHRcdFx0fVxuXHRcblx0XHRcdFx0XHQmLmFuY2xhR18zIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcblx0XHRcdFx0XHR9XG5cdFxuXHRcdFx0XHRcdCYuYW5jbGFTTSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMjVweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnNwbGFzaC13cmFwcGVyIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiA4ZW07XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0aGVpZ2h0OiAyMjBweDtcblxuXHRcdFx0XHQuYnRuLXN1YyB7XG5cdFx0XHRcdFx0d2lkdGg6IDE4MHB4O1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5zcGxhc2gtaW1nIHtcblx0XHRcdFx0XHR0b3A6IC0xMDVweDtcblx0XHRcdFx0XHRsZWZ0OiA1JTtcblx0XHRcdFx0XHR3aWR0aDogMjgwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDM3NXB4KSBhbmQgKG1heC13aWR0aDogNDI0Ljk4cHgpIHtcblx0LmNvdmVyLWltZ3Mge1xuXHRcdC5yb3cge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdC5pbWcge1xuXHRcdFx0XHRoZWlnaHQ6IDI2MHB4O1xuXG5cdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0aGVpZ2h0OiAyNjBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQudHh0LWJsb2NrIHtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGhlaWdodDogMjYwcHg7XG5cblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHR0b3A6IDMwJTtcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDUwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWFwLWxvY2F0aW9ucyB7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC5sb2NhdGlvbnMge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHRcdC5jb2wge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQubWFwIHtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0XHRpbWcge1xuXHRcblx0XHRcdFx0XHQmLmFuY2xhR18xIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcdFx0XHRcdH1cblx0XG5cdFx0XHRcdFx0Ji5hbmNsYUdfMiB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMzBweDtcblx0XHRcdFx0XHR9XG5cdFxuXHRcdFx0XHRcdCYuYW5jbGFHXzMge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDMwcHg7XG5cdFxuXHRcdFx0XHRcdH1cblx0XG5cdFx0XHRcdFx0Ji5hbmNsYVNNIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAyNXB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuc3BsYXNoLXdyYXBwZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cGFkZGluZy10b3A6IDhlbTtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDIyMHB4O1xuXG5cdFx0XHRcdC5idG4tc3VjIHtcblx0XHRcdFx0XHR3aWR0aDogMTgwcHg7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnNwbGFzaC1pbWcge1xuXHRcdFx0XHRcdHRvcDogLTEwNXB4O1xuXHRcdFx0XHRcdGxlZnQ6IDEzJTtcblx0XHRcdFx0XHR3aWR0aDogMjgwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gRXh0cmEgc21hbGwgZGV2aWNlcyAocG9ydHJhaXQgcGhvbmVzLCBsZXNzIHRoYW4gNTc2cHgpXG5AbWVkaWEgKG1pbi13aWR0aDogNDI1cHgpIGFuZCAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuXHQuY292ZXItaW1ncyB7XG5cdFx0LnJvdyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG1hcmdpbjogMDtcblxuXHRcdFx0LmltZyB7XG5cdFx0XHRcdGhlaWdodDogMjYwcHg7XG5cblx0XHRcdFx0aW1nIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDI2MHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC50eHQtYmxvY2sge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0aGVpZ2h0OiAyNjBweDtcblxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdHRvcDogMzAlO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgNTBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5tYXAtbG9jYXRpb25zIHtcblxuXHRcdC53cmFwcGVyIHtcblxuXHRcdFx0LmxvY2F0aW9ucyB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdFx0LmNvbCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5tYXAge1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0XHRcdGltZyB7XG5cdFxuXHRcdFx0XHRcdCYuYW5jbGFHXzEge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDMwcHg7XG5cdFx0XHRcdFx0fVxuXHRcblx0XHRcdFx0XHQmLmFuY2xhR18yIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAzMHB4O1xuXHRcdFx0XHRcdH1cblx0XG5cdFx0XHRcdFx0Ji5hbmNsYUdfMyB7XG5cdFx0XHRcdFx0XHR3aWR0aDogMzBweDtcblx0XG5cdFx0XHRcdFx0fVxuXHRcblx0XHRcdFx0XHQmLmFuY2xhU00ge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDI1cHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5zcGxhc2gtd3JhcHBlciB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogOGVtO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdGhlaWdodDogMjIwcHg7XG5cblx0XHRcdFx0LmJ0bi1zdWMge1xuXHRcdFx0XHRcdHdpZHRoOiAxODBweDtcblx0XHRcdFx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuc3BsYXNoLWltZyB7XG5cdFx0XHRcdFx0dG9wOiAtMTA1cHg7XG5cdFx0XHRcdFx0bGVmdDogMTclO1xuXHRcdFx0XHRcdHdpZHRoOiAyODBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBTbWFsbCBkZXZpY2VzIChsYW5kc2NhcGUgcGhvbmVzLCA1NzZweCBhbmQgdXApXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcblxufVxuXG4vLyBNZWRpdW0gZGV2aWNlcyAodGFibGV0cywgNzY4cHggYW5kIHVwKVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cdC5jb3Zlci1pbWdzIHtcblxuXHRcdC5yb3cge1xuXG5cdFx0XHQudHh0LWJsb2NrIHtcblx0XHRcdFx0aGVpZ2h0OiAzNDBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWFwLWxvY2F0aW9ucyB7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC5sb2NhdGlvbnMge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHRcdC5jb2wge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQubWFwIHtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQuc3BsYXNoLXdyYXBwZXIge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cGFkZGluZy10b3A6IDhlbTtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDIyMHB4O1xuXG5cdFx0XHRcdC5zcGxhc2gtaW1nIHtcblx0XHRcdFx0XHR0b3A6IC0xMThweDtcblx0XHRcdFx0XHRsZWZ0OiAyOCU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gTGFyZ2UgZGV2aWNlcyAoZGVza3RvcHMsIDk5MnB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuXHQubWFwLWxvY2F0aW9ucyB7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC5zcGxhc2gtd3JhcHBlciB7XG5cblx0XHRcdFx0LnNwbGFzaC1pbWcge1xuXHRcdFx0XHRcdHRvcDogLTExOHB4O1xuXHRcdFx0XHRcdGxlZnQ6IDMzJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBFeHRyYSBsYXJnZSBkZXZpY2VzIChsYXJnZSBkZXNrdG9wcywgMTIwMHB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcblx0XHRcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuXHQubWFwLWxvY2F0aW9ucyB7XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC5zcGxhc2gtd3JhcHBlciB7XG5cblx0XHRcdFx0LnNwbGFzaC1pbWcge1xuXHRcdFx0XHRcdHRvcDogLTExOHB4O1xuXHRcdFx0XHRcdGxlZnQ6IDM4JTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLm1haW4tY29udGFjdHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDYyMHB4O1xuXHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltYWdlcy9iZy1zdW4ucG5nJykgY2VudGVyIC0xMHB4IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nOiA1MHB4IDA7XG5cdHBhZGRpbmctdG9wOiAxNTBweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCY6OmFmdGVye1xuXHRcdGNvbnRlbnQ6ICcnO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiA4MCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzL2JnLXN1bi1hbHQucG5nJykgY2VudGVyIGNlbnRlciByZXBlYXQteDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogLTI5NXB4O1xuXHR9XG5cblx0LndyYXBwZXJ7XG5cblx0XHQudGl0bGV7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHdpZHRoOiAyNjBweDtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdH1cblxuXHRcdHB7XG5cdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcblxuXHRcdH1cblxuXHRcdC5tYWluLWZvcm0tY29udGFjdHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0d2lkdGg6IDU1MHB4O1xuXHRcdFx0bWFyZ2luOiA0NXB4IGF1dG8gMCBhdXRvO1xuXG5cdFx0XHRpbnB1dCwgdGV4dGFyZWF7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWFyZ2luOiAzcHggMDtcblx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgI0ZGRjtcblx0XHRcdFx0cGFkZGluZzogNXB4IDEwcHg7XG5cdFx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTZweDtcblxuXHRcdFx0XHQmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHsgXG5cdFx0XHRcdCAgY29sb3I6ICNGRkY7XG5cdFx0XHRcdH1cblx0XHRcdFx0Jjo6LW1vei1wbGFjZWhvbGRlciB7IFxuXHRcdFx0XHQgIGNvbG9yOiAjRkZGO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgXG5cdFx0XHRcdCAgY29sb3I6ICNGRkY7XG5cdFx0XHRcdH1cblx0XHRcdFx0JjotbW96LXBsYWNlaG9sZGVyIHsgXG5cdFx0XHRcdCAgY29sb3I6ICNGRkY7XG5cdFx0XHRcdH1cblxuXG5cdFx0XHR9XG5cblx0XHRcdHRleHRhcmVhe1xuXHRcdFx0XHRoZWlnaHQ6IDIwMHB4O1xuXHRcdFx0XHRyZXNpemU6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdC5idG4tc3VibWl0e1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0d2lkdGg6IDE1MHB4O1xuXHRcdFx0XHRwYWRkaW5nOiA4cHggMDtcblx0XHRcdFx0bWFyZ2luOiAzMHB4IGF1dG8gMCBhdXRvO1xuXHRcdFx0XHRib3JkZXI6IDNweCBzb2xpZCAjRkZGO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MHB4O1xuXHRcdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHRcdHRyYW5zbGF0ZTogYWxsIDJzIGVhc2U7XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNsYXRlOiBhbGwgMnMgZWFzZTtcblx0XHRcdFx0LW1vei10cmFuc2xhdGU6IGFsbCAycyBlYXNlO1xuXHRcdFx0XHQtbXMtdHJhbnNsYXRlOiBhbGwgMnMgZWFzZTtcblx0XHRcdFx0LW8tdHJhbnNsYXRlOiBhbGwgMnMgZWFzZTtcblx0XHRcdH1cblxuXHRcdFx0LmJ0bi1zdWJtaXQ6aG92ZXIge1xuXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIEV4dHJhIHNtYWxsIGRldmljZXMgKHBvcnRyYWl0IHBob25lcywgbGVzcyB0aGFuIDU3NnB4KVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XG5cdC5tYWluLWNvbnRhY3Qge1xuXHRcdGhlaWdodDogODAwcHg7XG5cblx0XHQmOjphZnRlciB7XG5cdFx0XHR0b3A6IDUyJTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiA0MDBweDtcblx0XHR9XG5cblx0XHQud3JhcHBlciB7XG5cblx0XHRcdC5tYWluLWZvcm0tY29udGFjdCB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBTbWFsbCBkZXZpY2VzIChsYW5kc2NhcGUgcGhvbmVzLCA1NzZweCBhbmQgdXApXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcblxufVxuXG4vLyBNZWRpdW0gZGV2aWNlcyAodGFibGV0cywgNzY4cHggYW5kIHVwKVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cdC5tYWluLWNvbnRhY3Qge1xuXHRcdGhlaWdodDogNzgwcHg7XG5cblx0XHQmOjphZnRlciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuLy8gTGFyZ2UgZGV2aWNlcyAoZGVza3RvcHMsIDk5MnB4IGFuZCB1cClcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuXHQubWFpbi1jb250YWN0IHtcblx0XHRoZWlnaHQ6IDgwMHB4O1xuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0d2lkdGg6IDgwJTtcblx0XHR9XG5cdH1cbn1cblxuLy8gRXh0cmEgbGFyZ2UgZGV2aWNlcyAobGFyZ2UgZGVza3RvcHMsIDEyMDBweCBhbmQgdXApXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG5cbn0iLCIub3dsLW5hdiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBib3R0b206IDUwJTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDk1LCA5NSwgOTUsIDAuNjU4KSAhaW1wb3J0YW50O1xuXG4gICAgICAgICYub3dsLXByZXYge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCA1MCUgNTAlIDA7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMTguNXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDk2JTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm93bC1uZXh0IHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAwIDAgNTAlO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxOC41cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogOTYlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iXSwibWFwcGluZ3MiOiJBcUJBQTs7O0VBR0U7QUFFRixBQUFBLElBQUksRUFBRSxBQUFBLElBQUksRUFBRSxBQUFBLEdBQUcsRUFBRSxBQUFBLElBQUksRUFBRSxBQUFBLE1BQU0sRUFBRSxBQUFBLE1BQU0sRUFBRSxBQUFBLE1BQU07QUFDN0MsQUFBQSxFQUFFLEVBQUUsQUFBQSxFQUFFLEVBQUUsQUFBQSxFQUFFLEVBQUUsQUFBQSxFQUFFLEVBQUUsQUFBQSxFQUFFLEVBQUUsQUFBQSxFQUFFLEVBQUUsQUFBQSxDQUFDLEVBQUUsQUFBQSxVQUFVLEVBQUUsQUFBQSxHQUFHO0FBQzFDLEFBQUEsQ0FBQyxFQUFFLEFBQUEsSUFBSSxFQUFFLEFBQUEsT0FBTyxFQUFFLEFBQUEsT0FBTyxFQUFFLEFBQUEsR0FBRyxFQUFFLEFBQUEsSUFBSSxFQUFFLEFBQUEsSUFBSTtBQUMxQyxBQUFBLEdBQUcsRUFBRSxBQUFBLEdBQUcsRUFBRSxBQUFBLEVBQUUsRUFBRSxBQUFBLEdBQUcsRUFBRSxBQUFBLEdBQUcsRUFBRSxBQUFBLEdBQUcsRUFBRSxBQUFBLENBQUMsRUFBRSxBQUFBLENBQUMsRUFBRSxBQUFBLElBQUk7QUFDdkMsQUFBQSxLQUFLLEVBQUUsQUFBQSxNQUFNLEVBQUUsQUFBQSxNQUFNLEVBQUUsQUFBQSxHQUFHLEVBQUUsQUFBQSxHQUFHLEVBQUUsQUFBQSxFQUFFLEVBQUUsQUFBQSxHQUFHO0FBQ3hDLEFBQUEsQ0FBQyxFQUFFLEFBQUEsQ0FBQyxFQUFFLEFBQUEsQ0FBQyxFQUFFLEFBQUEsTUFBTTtBQUNmLEFBQUEsRUFBRSxFQUFFLEFBQUEsRUFBRSxFQUFFLEFBQUEsRUFBRSxFQUFFLEFBQUEsRUFBRSxFQUFFLEFBQUEsRUFBRSxFQUFFLEFBQUEsRUFBRTtBQUN0QixBQUFBLFFBQVEsRUFBRSxBQUFBLElBQUksRUFBRSxBQUFBLEtBQUssRUFBRSxBQUFBLE1BQU07QUFDN0IsQUFBQSxLQUFLLEVBQUUsQUFBQSxPQUFPLEVBQUUsQUFBQSxLQUFLLEVBQUUsQUFBQSxLQUFLLEVBQUUsQUFBQSxLQUFLLEVBQUUsQUFBQSxFQUFFLEVBQUUsQUFBQSxFQUFFLEVBQUUsQUFBQSxFQUFFO0FBQy9DLEFBQUEsT0FBTyxFQUFFLEFBQUEsS0FBSyxFQUFFLEFBQUEsTUFBTSxFQUFFLEFBQUEsT0FBTyxFQUFFLEFBQUEsS0FBSztBQUN0QyxBQUFBLE1BQU0sRUFBRSxBQUFBLFVBQVUsRUFBRSxBQUFBLE1BQU0sRUFBRSxBQUFBLE1BQU0sRUFBRSxBQUFBLE1BQU07QUFDMUMsQUFBQSxJQUFJLEVBQUUsQUFBQSxHQUFHLEVBQUUsQUFBQSxN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 */
