﻿@charset "UTF-8";
/* 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; }

html {
  box-sizing: border-box; }

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

a.button,
button,
input[type="button"],
input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #f25022;
  border: 0;
  border-radius: 3px;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-family: "Montserrat", sans-serif;
  font-size: 1em;
  -webkit-font-smoothing: antialiased;
  font-weight: 400;
  line-height: 1;
  padding: 0.75em 1.5em;
  text-decoration: none;
  transition: background-color 150ms ease;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  vertical-align: middle;
  white-space: nowrap; }
  a.button:hover,
  a.button:focus,
  button:hover,
  button:focus,
  input[type="button"]:hover,
  input[type="button"]:focus,
  input[type="submit"]:hover,
  input[type="submit"]:focus {
    background-color: #c2401b;
    color: #fff; }
  a.button:disabled,
  button:disabled,
  input[type="button"]:disabled,
  input[type="submit"]:disabled {
    cursor: not-allowed;
    opacity: 0.5; }
    a.button:disabled:hover,
    button:disabled:hover,
    input[type="button"]:disabled:hover,
    input[type="submit"]:disabled:hover {
      background-color: #f25022; }

fieldset {
  background-color: transparent;
  border: 0;
  margin: 0;
  padding: 0; }

legend {
  font-weight: 600;
  margin-bottom: 0.375em;
  padding: 0; }

label {
  display: block;
  font-weight: 600;
  margin-bottom: 0.375em; }

input,
select,
textarea {
  display: block;
  font-family: "Montserrat", sans-serif;
  font-size: 1em; }

input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"], input:not([type]), textarea,
select[multiple] {
  background-color: #fff;
  border: 1px solid #DDD;
  border-radius: 3px;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06);
  box-sizing: border-box;
  margin-bottom: 0.75em;
  padding: 0.5em;
  transition: border-color 150ms ease;
  width: 100%; }
  input[type="color"]:hover, input[type="date"]:hover, input[type="datetime"]:hover, input[type="datetime-local"]:hover, input[type="email"]:hover, input[type="month"]:hover, input[type="number"]:hover, input[type="password"]:hover, input[type="search"]:hover, input[type="tel"]:hover, input[type="text"]:hover, input[type="time"]:hover, input[type="url"]:hover, input[type="week"]:hover, input:not([type]):hover, textarea:hover,
  select[multiple]:hover {
    border-color: #b1b1b1; }
  input[type="color"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="week"]:focus, input:not([type]):focus, textarea:focus,
  select[multiple]:focus {
    border-color: #f25022;
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.06), 0 0 5px rgba(237, 63, 14, 0.7);
    outline: none; }
  input[type="color"]:disabled, input[type="date"]:disabled, input[type="datetime"]:disabled, input[type="datetime-local"]:disabled, input[type="email"]:disabled, input[type="month"]:disabled, input[type="number"]:disabled, input[type="password"]:disabled, input[type="search"]:disabled, input[type="tel"]:disabled, input[type="text"]:disabled, input[type="time"]:disabled, input[type="url"]:disabled, input[type="week"]:disabled, input:not([type]):disabled, textarea:disabled,
  select[multiple]:disabled {
    background-color: #f2f2f2;
    cursor: not-allowed; }
    input[type="color"]:disabled:hover, input[type="date"]:disabled:hover, input[type="datetime"]:disabled:hover, input[type="datetime-local"]:disabled:hover, input[type="email"]:disabled:hover, input[type="month"]:disabled:hover, input[type="number"]:disabled:hover, input[type="password"]:disabled:hover, input[type="search"]:disabled:hover, input[type="tel"]:disabled:hover, input[type="text"]:disabled:hover, input[type="time"]:disabled:hover, input[type="url"]:disabled:hover, input[type="week"]:disabled:hover, input:not([type]):disabled:hover, textarea:disabled:hover,
    select[multiple]:disabled:hover {
      border: 1px solid #DDD; }

textarea {
  resize: vertical; }

[type="search"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

[type="checkbox"],
[type="radio"] {
  display: inline;
  margin-right: 0.375em; }

[type="file"] {
  margin-bottom: 0.75em;
  width: 100%; }

select {
  margin-bottom: 0.75em;
  max-width: 100%;
  width: auto; }

html {
  box-sizing: border-box; }

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

ul,
ol {
  list-style-type: none;
  margin: 0;
  padding: 0; }

dl {
  margin: 0; }

dt {
  font-weight: 600;
  margin: 0; }

dd {
  margin: 0; }

figure {
  margin: 0; }

img,
picture {
  margin: 0;
  max-width: 100%; }

table {
  border-collapse: collapse;
  margin: 0.75em 0;
  table-layout: fixed;
  width: 100%; }

th {
  border-bottom: 1px solid #a6a6a6;
  font-weight: 600;
  padding: 0.75em 0;
  text-align: left; }

td {
  border-bottom: 1px solid #DDD;
  padding: 0.75em 0; }

table.minimal {
  margin-top: 0; }

th.minimal {
  border-bottom: 0;
  padding: 0; }

td.minimal {
  border-bottom: 0;
  padding: 0; }

table.minimal-fit-content {
  table-layout: auto;
  width: fit-content;
  width: -moz-fit-content;
  margin: 1.5em auto; }
  @media screen and (min-width: 54.375em) {
    table.minimal-fit-content {
      transform: translateX(-1.5em); } }

th.minimal-fit-content {
  border: 1px solid #fff;
  padding: 0.2em 2em;
  text-align: center; }

td.minimal-fit-content {
  border: 1px solid #fff;
  padding: 0.2em 2em;
  text-align: center; }

tr,
td,
th {
  vertical-align: middle; }

body {
  color: #999;
  font-family: "Montserrat", sans-serif;
  font-size: 1em;
  line-height: 1.5em;
  -webkit-font-smoothing: antialiased; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Montserrat", sans-serif;
  font-size: 1.333em;
  line-height: 1.25em;
  margin: 0 0 0.75em; }

p {
  margin: 0 0 0.75em; }

a {
  color: #f25022;
  text-decoration: none;
  transition: color 150ms ease; }
  a:active, a:focus, a:hover {
    color: #b63c1a; }

hr {
  border-bottom: 1px solid #DDD;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0; }

img {
  margin: 0;
  max-width: 100%; }

blockquote {
  border-left: 2px solid #DDD;
  color: #bfbfbf;
  margin: 1.5em 0;
  padding-left: 0.75em;
  line-height: 1.5em; }

cite {
  color: #d9d9d9;
  font-style: italic; }
  cite:before {
    content: '\2014 \00A0'; }

p.caption {
  font-size: 0.5em;
  margin: -1em 0 0;
  }

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
  touch-action: manipulation;
  -moz-backface-visibility: hidden;
  /* fix firefox animation glitch */ }
.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }
.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px); }
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0); }
.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }
.owl-carousel .owl-item img {
  display: block;
  width: 100%; }
.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
  display: none; }
.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next,
.owl-carousel button.owl-dot {
  background: none;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit; }
.owl-carousel.owl-loaded {
  display: block; }
.owl-carousel.owl-loading {
  opacity: 0;
  display: block; }
.owl-carousel.owl-hidden {
  opacity: 0; }
.owl-carousel.owl-refresh .owl-item {
  visibility: hidden; }
.owl-carousel.owl-drag .owl-item {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
.owl-carousel.owl-grab {
  cursor: move;
  cursor: grab; }
.owl-carousel.owl-rtl {
  direction: rtl; }
.owl-carousel.owl-rtl .owl-item {
  float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
            This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
            calculation of the height of the owl-item that breaks page layouts
         */ }
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease; }
.owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
  max-height: 0; }
.owl-carousel .owl-item img.owl-lazy {
  transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
  transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 * 	Default theme - Owl Carousel CSS File
 */
.owl-theme .owl-nav {
  margin-top: 10px;
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
.owl-theme .owl-nav [class*='owl-'] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #D6D6D6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px; }
.owl-theme .owl-nav [class*='owl-']:hover {
  background: #869791;
  color: #FFF;
  text-decoration: none; }
.owl-theme .owl-nav .disabled {
  opacity: 0.5;
  cursor: default; }

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px; }

.owl-theme .owl-dots {
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
.owl-theme .owl-dots .owl-dot {
  display: inline-block;
  zoom: 1;
  *display: inline; }
.owl-theme .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  margin: 5px 7px;
  background: #D6D6D6;
  display: block;
  -webkit-backface-visibility: visible;
  transition: opacity 200ms ease;
  border-radius: 30px; }
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
  background: #869791; }

/*
 * jQuery FlexSlider v2.2.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 */
/* Browser Resets
*********************************/
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus {
  outline: none; }

.slides,
.flex-control-nav,
.flex-direction-nav {
  margin: 0;
  padding: 0;
  list-style: none; }

/* Icon Fonts
*********************************/
/* Font-face Icons */
@font-face {
  font-family: 'flexslider-icon';
  src: url("fonts/flexslider-icon.eot");
  src: url("fonts/flexslider-icon.eot?#iefix") format("embedded-opentype"), url("fonts/flexslider-icon.woff") format("woff"), url("fonts/flexslider-icon.ttf") format("truetype"), url("fonts/flexslider-icon.svg#flexslider-icon") format("svg");
  font-weight: normal;
  font-style: normal; }

/* FlexSlider Necessary Styles
*********************************/
.flexslider {
  margin: 0;
  padding: 0; }

.flexslider .slides > li {
  display: none;
  -webkit-backface-visibility: hidden; }

/* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {
  width: 100%;
  display: block; }

.flex-pauseplay span {
  text-transform: capitalize; }

/* Clearfix for the .slides element */
.slides:after {
  content: "\0020";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

html[xmlns] .slides {
  display: block; }

* html .slides {
  height: 1%; }

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {
  display: block; }

/* FlexSlider Default Theme
*********************************/
.flexslider {
  margin: 0 0 60px;
  position: relative;
  zoom: 1; }

.flex-viewport {
  max-height: 2000px;
  transition: all 1s ease; }

.loading .flex-viewport {
  max-height: 300px; }

.flexslider .slides {
  zoom: 1; }

.carousel li {
  margin-right: 5px; }

/* Direction Nav */
.flex-direction-nav {
  *height: 0; }

.flex-direction-nav a {
  text-decoration: none;
  display: block;
  width: 40px;
  height: 40px;
  margin: -20px 0 0;
  position: absolute;
  top: 50%;
  z-index: 10;
  overflow: hidden;
  opacity: 0;
  cursor: pointer;
  color: rgba(0, 0, 0, 0.8);
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
  transition: all .3s ease; }

.flex-direction-nav .flex-prev {
  left: -50px; }

.flex-direction-nav .flex-next {
  right: -50px;
  text-align: right; }

.flexslider:hover .flex-prev {
  opacity: 0.7;
  left: 10px; }

.flexslider:hover .flex-next {
  opacity: 0.7;
  right: 10px; }

.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {
  opacity: 1; }

.flex-direction-nav .flex-disabled {
  opacity: 0 !important;
  filter: alpha(opacity=0);
  cursor: default; }

.flex-direction-nav a:before {
  font-family: "flexslider-icon";
  font-size: 40px;
  display: inline-block;
  content: '\f001'; }

.flex-direction-nav a.flex-next:before {
  content: '\f002'; }

/* Pause/Play */
.flex-pauseplay a {
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  bottom: 5px;
  left: 10px;
  opacity: 0.8;
  z-index: 10;
  overflow: hidden;
  cursor: pointer;
  color: #000; }

.flex-pauseplay a:before {
  font-family: "flexslider-icon";
  font-size: 20px;
  display: inline-block;
  content: '\f004'; }

.flex-pauseplay a:hover {
  opacity: 1; }

.flex-pauseplay a.flex-play:before {
  content: '\f003'; }

/* Control Nav */
.flex-control-nav {
  width: 100%;
  position: absolute;
  bottom: 0px;
  text-align: center; }

.flex-control-nav li {
  margin: 0 6px;
  display: inline-block;
  zoom: 1;
  *display: inline; }

.flex-control-paging li a {
  width: 11px;
  height: 11px;
  display: block;
  background: #666;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  text-indent: -9999px;
  border-radius: 20px;
  -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); }

.flex-control-paging li a:hover {
  background: #333;
  background: rgba(0, 0, 0, 0.7); }

.flex-control-paging li a.flex-active {
  background: #000;
  background: rgba(0, 0, 0, 0.9);
  cursor: default; }

.flex-control-thumbs {
  margin: 5px 0 0;
  position: static;
  overflow: hidden; }

.flex-control-thumbs li {
  width: 25%;
  float: left;
  margin: 0; }

.flex-control-thumbs img {
  width: 100%;
  display: block;
  opacity: .7;
  cursor: pointer; }

.flex-control-thumbs img:hover {
  opacity: 1; }

.flex-control-thumbs .flex-active {
  opacity: 1;
  cursor: default; }

@media screen and (max-width: 860px) {
  .flex-direction-nav .flex-prev {
    opacity: 1;
    left: 10px; }
  .flex-direction-nav .flex-next {
    opacity: 1;
    right: 10px; } }

/* 
 * 	Default theme - Owl Carousel CSS File
 */
.owl-theme .owl-nav {
  margin-top: 10px;
  text-align: center;
  -webkit-tap-highlight-color: transparent; }

.owl-theme .owl-nav [class*='owl-'] {
  color: white;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #d6d6d6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px; }

.owl-theme .owl-nav [class*='owl-']:hover {
  background: #869791;
  color: white;
  text-decoration: none; }

.owl-theme .owl-nav .disabled {
  opacity: 0.5;
  cursor: default; }

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px; }

.owl-theme .owl-dots {
  text-align: center;
  -webkit-tap-highlight-color: transparent; }

.owl-theme .owl-dots .owl-dot {
  display: inline-block;
  zoom: 1;
  *display: inline; }

.owl-theme .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  margin: 5px 7px;
  background: #d6d6d6;
  display: block;
  -webkit-backface-visibility: visible;
  transition: opacity 200ms ease;
  border-radius: 30px; }

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
  background: #869791; }

/* DAP stuff */
/* typography */
body {
  font-family: 'Montserrat', sans-serif;
  color: #ededf0; }

h1, h2 {
  text-transform: uppercase; }

p.lead {
  font-family: "Coda", sans-serif;
  font-size: 1.5em;
  color: #90b1c8; }

blockquote {
  font-style: italic;
  color: #b3b3b3;
  font-size: 1.1em; }
  blockquote p {
    margin: 0; }

a {
  color: #21c4ab; }
  a:hover {
    color: #1dae98; }

input,
textarea,
button {
  font-family: "Montserrat", sans-serif !important; }

input[type="text"],
input[type="email"],
textarea {
  color: #999999;
  border: solid 2px #ebebeb !important;
  box-shadow: none !important; }
  input[type="text"]::-webkit-input-placeholder,
  input[type="email"]::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #bfbfbf; }
  input[type="text"]::-moz-placeholder,
  input[type="email"]::-moz-placeholder,
  textarea::-moz-placeholder {
    color: #bfbfbf; }
  input[type="text"]:-moz-placeholder,
  input[type="email"]:-moz-placeholder,
  textarea:-moz-placeholder {
    color: #bfbfbf; }
  input[type="text"]:-ms-input-placeholder,
  input[type="email"]:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    color: #bfbfbf; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  textarea:focus {
    border: solid 2px #cccccc !important; }

/* layout */
.container {
  max-width: 68em;
  min-height: ;
  margin-left: auto;
  margin-right: auto;
  padding: 0 .5em; }
  .container::after {
    clear: both;
    content: "";
    display: table; }

html, body, section.intro, .split, .split-text {
  height: 100%; }

section {
  padding: 4em 0;
  position: relative; }

.serif {
  font-family: "Roboto Slab", serif; }

em {
  color: #21c4ab;
  font-family: "Roboto Slab", serif; }

code {
  font-family: "Cousine", monospace;
  font-size: 0.95em; }

kbd {
  color: #fff;
  font-family: "Coda", sans-serif;
  font-size: 1.1em; }

.centered {
  text-align: center; }

.no-transformation {
  text-transform: none; }

.italic {
  font-style: italic; }

.monospace {
  font-family: "Cousine", monospace;
  font-size: medium; }

.monospace-small {
  font-family: "Cousine", monospace;
  font-size: small; }

.color-overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #21c4ab;
  z-index: -100; }

.dark {
  background-color: #2d2d2d; }

.mid {
  background-color: #324655; }

.lite {
  background-color: #ededf0; }

.highlight {
  background-color: #21c4ab; }

.smaller {
  font-size: 85%; }

.superscript {
  position: relative;
  font-size: 60%;
  bottom: 0.8em;
}

.cleared {
  clear: both; }

sup {
  vertical-align: super;
  font-size: small;
}

.table-footnote {
  color: #94c3d4;
  font-size: 80%;
  font-style: italic;
  line-height: 1.5em; }

.table-footnote a {
  color: #94c3d4; }

.post-catchline {
  color: #ffcb6b;
  font-weight: bold;
  letter-spacing: 0.05em;
}

.festive {
  color: #e72c2c;
  font-weight: bold;
  background: white; }

.mbsig {
  color: #66ff00; }

.mbsig sub {
  position: relative;
  bottom: -0.15em; }

.mbversion {
  color: #ffe893;
  font-family: "Cousine", monospace; }

.fkey {
  color: #fff;
  font-family: "Cousine", monospace; }

/* title section */
.title {
  font-size: 1.5em;
  text-align: center;
  margin-bottom: 2em;
  color: #ededf0; }
  .title h2 {
    text-transform: none; }
  .title hr {
    border: solid 2px rgba(0, 0, 0, 0.1);
    margin: 1em auto 1.5em; }
    .title hr.small {
      width: 50px; }
  .title p {
    opacity: 0.5;
    font-size: 1.25em; }

/* buttons */
a.button.standalone {
  color: #333;
  background-color: #ededf0;
  text-transform: uppercase;
  text-align: center;
  padding: 0.55em 0.2em;
  margin: 0.5em;
  width: 195px;
  height: 34px; }
  a.button.standalone:hover {
    background: #c4c4c7; }

a.button.mid {
  color: #333;
  background-color: #21c4ab;
  text-transform: uppercase;
  text-align: center;
  padding: 0.55em 0.2em;
  margin: 0.25em 0.5em;
  width: 195px;
  height: 50px; }
  a.button.mid:hover {
    background: #1dae98; }

a.button.large {
  color: #477DCA;
  background-color: #ededf0;
  text-transform: uppercase;
  text-align: center;
  padding: 1em 0.2em;
  margin: 1em 0.5em;
  width: 200px;
  height: 50px; }
  a.button.large:hover {
    background: #bbcbe5; }

a.button.alt,
a.button.large.alt {
  color: #ededf0;
  background-color: #f25022; }
  a.button.alt:hover,
  a.button.large.alt:hover {
    background: #f57652; }

/* owl carousel styles */
.owl-theme .owl-dots .owl-dot span {
  height: 14px;
  width: 14px; }

.owl-theme .owl-nav [class*='owl-'] {
  padding: 17px 16px 16px;
}

.owl-carousel {
  cursor: move; }

/* flexslider */
.flexslider {
  margin: 0; }

.flex-control-nav {
  bottom: 0;
  z-index: 100; }
  .flex-control-nav li a {
    background: white;
    opacity: 0.5;
    height: 14px;
    width: 14px;
    box-shadow: none; }
    .flex-control-nav li a:hover {
      opacity: 0.7; }
    .flex-control-nav li a.flex-active {
      background: white;
      opacity: 1; }

.flex-direction-nav a {
  height: 52px;
  width: 52px;
  top: 45%;
  font-weight: bold;
  box-shadow: none;
  text-shadow: none;
  color: white; }
  .flex-direction-nav a:before {
    font-family: 'Font Awesome 6 Pro';
    font-size: 3em;
    display: inline-block;
    content: '\f104'; }
  .flex-direction-nav a.flex-next:before {
    content: '\f105'; }

header.navigation.headroom--unpinned {
  transform: translateY(-100%); }

header.navigation.headroom--pinned {
  transform: translateY(0%); }

header.navigation.headroom {
  position: fixed;
  background-color: #2d2d2d;
  border-bottom: 1px solid #141414;
  height: 6em;
  width: 100%;
  z-index: 999;
  transition: transform 200ms linear; }
  header.navigation.headroom .navigation-wrapper {
    max-width: 68em;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 9999; }
    header.navigation.headroom .navigation-wrapper::after {
      clear: both;
      content: "";
      display: table; }
    header.navigation.headroom .navigation-wrapper::after {
      clear: both;
      content: "";
      display: table; }
  header.navigation.headroom .logo {
    float: left;
    max-height: 6em;
    padding-left: 1em;
    padding-right: 1em; }
    header.navigation.headroom .logo img {
      max-height: 6em;
      padding: 1em 0; }
  header.navigation.headroom .navigation-menu-button {
    color: #ededf0;
    display: block;
    float: right;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    line-height: 6em;
    margin: 0;
    padding-right: 1em;
    text-transform: uppercase; }
    @media screen and (min-width: 54.375em) {
      header.navigation.headroom .navigation-menu-button {
        display: none; } }
    header.navigation.headroom .navigation-menu-button:hover {
      color: #f25022; }
  header.navigation.headroom .nav {
    z-index: 9999999;
    float: none; }
    @media screen and (min-width: 54.375em) {
      header.navigation.headroom .nav {
        float: right; } }
  header.navigation.headroom ul#navigation-menu {
    -webkit-transform-style: preserve-3d;
    clear: both;
    display: none;
    margin: 0 auto;
    overflow: visible;
    padding: 0;
    width: 100%;
    z-index: 9999; }
    @media screen and (min-width: 54.375em) {
      header.navigation.headroom ul#navigation-menu {
        display: inline;
        margin: 0;
        padding: 0; } }
  header.navigation.headroom ul li.nav-link {
    background: #2d2d2d;
    display: block;
    line-height: 4em;
    overflow: hidden;
    padding-left: 0.4em;
    text-align: right;
    width: 100%;
    z-index: 9999; }
    @media screen and (max-width: 54.375em) {
      header.navigation.headroom ul li.nav-link {
        padding-left: 0;
        text-align: center;
        border-bottom: solid 1px #202020; } }
    @media screen and (min-width: 54.375em) {
      header.navigation.headroom ul li.nav-link {
        background: transparent;
        display: inline;
        line-height: 6em;
        text-decoration: none;
        width: auto; } }
    header.navigation.headroom ul li.nav-link.active a {
      color: #21c4ab; }
    header.navigation.headroom ul li.nav-link a {
      display: inline-block;
      font-weight: 600;
      color: #ededf0; }
      @media screen and (min-width: 54.375em) {
        header.navigation.headroom ul li.nav-link a {
          padding-right: 0.6em; } }
      header.navigation.headroom ul li.nav-link a:hover {
        color: #f25022; }
      @media screen and (max-width: 54.375em) {
        header.navigation.headroom ul li.nav-link a {
          display: block; } }

header.navigation li.more.nav-link {
  padding-right: 0; }
  @media screen and (min-width: 54.375em) {
    header.navigation li.more.nav-link {
      padding-right: 0; } }
  header.navigation li.more.nav-link > ul > li:first-child a {
    padding-top: 1em; }
  header.navigation li.more.nav-link a {
    margin-right: 1em; }
    @media screen and (max-width: 54.375em) {
      header.navigation li.more.nav-link a {
        margin-right: 0;
        padding: 0;
        text-align: center; } }
  header.navigation li.more.nav-link > a {
    padding-right: 0.6em; }
  header.navigation li.more.nav-link > a:after {
    position: absolute;
    top: auto;
    right: -0.4em;
    bottom: auto;
    left: auto;
    content: '\25BE';
    color: #ededf0; }
  @media screen and (max-width: 54.375em) {
    header.navigation li.more.nav-link > a:after {
      right: 0.4em; } }

header.navigation li.more {
  overflow: visible;
  padding-right: 0; }
  header.navigation li.more a {
    padding-right: .8em; }
  header.navigation li.more > a {
    padding-right: 1.6em;
    position: relative; }
    @media screen and (min-width: 54.375em) {
      header.navigation li.more > a {
        margin-right: 0; } }
    header.navigation li.more > a:after {
      content: '›';
      font-size: 1.2em;
      position: absolute;
      right: 0.5em; }
  header.navigation li.more:hover > .submenu {
    display: block; }
  @media screen and (min-width: 54.375em) {
    header.navigation li.more {
      padding-right: .8em;
      position: relative; } }

header.navigation ul.submenu {
  display: none;
  padding-left: 0; }
  @media screen and (min-width: 54.375em) {
    header.navigation ul.submenu {
      position: absolute;
      top: 2.5em;
      left: 0; } }
  @media screen and (min-width: 54.375em) {
    header.navigation ul.submenu .submenu {
      left: 11.8em;
      top: 0; } }
  header.navigation ul.submenu li {
    display: block;
    padding-right: 0; }
    @media screen and (max-width: 54.375em) {
      header.navigation ul.submenu li {
        padding-left: 0;
        text-align: center;
        border-bottom: solid 1px #191919; } }
    @media screen and (min-width: 54.375em) {
      header.navigation ul.submenu li {
        line-height: 2em; }
        header.navigation ul.submenu li:first-child > a {
          border-top-left-radius: 3px;
          border-top-right-radius: 3px; }
        header.navigation ul.submenu li:last-child > a {
          border-bottom-left-radius: 3px;
          border-bottom-right-radius: 3px;
          padding-bottom: 1.2em; } }
    header.navigation ul.submenu li a {
      background-color: #252525;
      display: inline-block;
      text-align: right;
      width: 100%; }
      @media screen and (min-width: 54.375em) {
        header.navigation ul.submenu li a {
          padding: 0;
          text-align: center; } }
      @media screen and (min-width: 54.375em) {
        header.navigation ul.submenu li a {
          background-color: #2d2d2d;
          padding-left: 1em;
          text-align: left;
          width: 12em; } }

section.intro {
  padding: 0;
  color: white;
  text-transform: uppercase; }
  @media screen and (min-width: 30em) {
    section.intro .container {
      position: relative;
      top: 50%;
      transform: translateY(-50%); } }
  @media screen and (max-width: 30em) {
    section.intro .container {
      padding-top: 8em; } }
  section.intro h1 {
    text-align: center;
    color: white;
    padding-bottom: .5em; }
    section.intro h1 img {
      max-width: 50%; }
  section.intro h3 {
    text-align: center;
    font-size: 1.2em;
    padding: 0 20%; }
  section.intro a.jump-down {
    position: absolute;
    bottom: 4em;
    left: 20%;
    right: 20%;
    margin: 2em auto 0;
    display: block;
    width: 4em;
    text-align: center; }
    section.intro a.jump-down i {
      color: white;
      opacity: 0.5;
      font-size: 3.5em;
      text-align: center;
      transition: opacity 0.2s; }
      section.intro a.jump-down i:hover {
        opacity: 1; }

@media screen and (max-width: 54.375em) {
  #section-features {
    padding: 2em 0; } }

.features .title {
  color: #324655; }

.features .feature-item {
  padding: 1.5em 0;
  text-align: center; }
  @media screen and (min-width: 54.375em) {
    .features .feature-item {
      float: left;
      display: block;
      margin-right: 2.35765%;
      width: 31.76157%; }
      .features .feature-item:last-child {
        margin-right: 0; }
      .features .feature-item:nth-child(3n) {
        margin-right: 0; }
      .features .feature-item:nth-child(3n+1) {
        clear: left; } }
  @media screen and (max-width: 54.375em) {
    .features .feature-item {
      float: left;
      display: block;
      margin-right: 2.35765%;
      width: 48.82117%; }
      .features .feature-item:last-child {
        margin-right: 0; }
      .features .feature-item:nth-child(2n) {
        margin-right: 0; }
      .features .feature-item:nth-child(2n+1) {
        clear: left; } }
  @media screen and (max-width: 30em) {
    .features .feature-item {
      float: left;
      display: block;
      margin-right: 2.35765%;
      width: 100%; }
      .features .feature-item:last-child {
        margin-right: 0; }
      .features .feature-item:nth-child(1n) {
        margin-right: 0; }
      .features .feature-item:nth-child(1n+1) {
        clear: left; } }
  .features .feature-item i {
    font-size: 2.8em;
    color: #3e6784;
    margin-bottom: .4em; }
  .features .feature-item h4 {
    text-transform: uppercase;
    color: #324655;
    font-size: 1.2em; }
  .features .feature-item p {
    color: #324655;
    font-size: 1em; }

#section-newsletter {
  padding: 9em 0 3em; }

.newsletter {
  padding: 3em 0 2em;
  color: #126d5f;
  background-color: #21c4ab; }
  .newsletter .nl-text,
  .newsletter .nl-form {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%; }
    .newsletter .nl-text:last-child,
    .newsletter .nl-form:last-child {
      margin-right: 0; }
    @media screen and (max-width: 54.375em) {
      .newsletter .nl-text,
      .newsletter .nl-form {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%;
        padding: 1em 5%; }
        .newsletter .nl-text:last-child,
        .newsletter .nl-form:last-child {
          margin-right: 0; } }
  .newsletter .nl-text p {
    margin-bottom: 0;
    font-weight: 700; }
  .newsletter .nl-form input[type="email"] {
    float: left;
    display: block;
    margin-right: 4.82916%;
    width: 65.05695%;
    padding: 0 1em;
    box-shadow: none;
    border: none !important;
    border-radius: 3px 0 0 3px;
    height: 3em;
    margin: 0; }
    @media screen and (max-width: 37.5em) {
      .newsletter .nl-form input[type="email"] {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 31.76157%;
        width: 100%;
        border-radius: 3px; }
        .newsletter .nl-form input[type="email"]:last-child {
          margin-right: 0; } }
    .newsletter .nl-form input[type="email"]:last-child {
      margin-right: 0; }
  .newsletter .nl-form input[type="submit"] {
    float: left;
    display: block;
    margin-right: 4.82916%;
    width: 30.11389%;
    margin-right: 0;
    height: 3em;
    border-radius: 0 3px 3px 0;
    background: #1a9885;
    text-transform: uppercase;
    margin: 0; }
    @media screen and (max-width: 37.5em) {
      .newsletter .nl-form input[type="submit"] {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 31.76157%;
        width: 100%;
        margin-top: 1em;
        border-radius: 3px; }
        .newsletter .nl-form input[type="submit"]:last-child {
          margin-right: 0; } }
    .newsletter .nl-form input[type="submit"]:last-child {
      margin-right: 0; }
    .newsletter .nl-form input[type="submit"]:hover {
      background: #1dae98; }

#section-page {
  padding: 9em 0 4em;
  min-height: 830px; }
  @media screen and (max-width: 54.375em) {
    #section-page {
      min-height: 0;
      padding: 8em 0; } }

.page {
  color: #ededf0;
  background-color: #324655; }
  .page .title {
    text-align: left;
    margin-bottom: 0; }
    @media screen and (max-width: 54.375em) {
      .page .title {
        text-align: center; } }
  .page a {
    text-decoration: underline; }
  .page a.button {
    text-decoration: none; }
  .page b {
    font-weight: 600; }
  .page .main-column {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 74.41059%; }
    .page .main-column:last-child {
      margin-right: 0; }
    @media screen and (max-width: 54.375em) {
      .page .main-column {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%;
        text-align: center; }
        .page .main-column:last-child {
          margin-right: 0; } }
    .page .main-column h2, h3 {
      color: #90b1c8;
      font-weight: 300;
      margin-top: 0.3em; }
    .page .main-column h3 {
      margin-top: 0.6em; }
    .page .main-column h4 {
      color: #66ff00;
      font-size: 90%;
      font-style: italic;
      margin-top: 0.4em;
      margin-bottom: 0.4em; }
    .page .main-column ol {
      list-style-type: decimal;
      padding-left: 1em;
      text-align: left; }
    .page .main-column em {
      font-family: "Cousine", monospace;
      font-weight: 400;
      font-size: x-large; }
    .page .main-column p {
      padding-right: 3em;
      padding-bottom: 0.5em; }
    @media screen and (max-width: 54.375em) {
      .page .main-column p {
        padding-right: 0; }
      .page .main-column ol {
        padding-left: 1.5em; }
    }
    .page .main-column .float-right {
      float: right;
      margin: 0 0 1em 1em;
      width: 50%; }
    .page ul.plain-list li:before {
      content: '•';
      padding-left: 1em;
      padding-right: 1em; }
    @media screen and (max-width: 54.375em) {
      .page .main-column .float-right {
        display: none; }
    }
  .page aside.sidebar {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 23.23176%; }
    .page aside.sidebar:last-child {
      margin-right: 0; }
    @media screen and (max-width: 54.375em) {
      .page aside.sidebar {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%;
        padding: 2em 20% 0; }
        .page aside.sidebar:last-child {
          margin-right: 0; } }
    @media screen and (max-width: 30em) {
      .page aside.sidebar {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%;
        padding: 1em 3% 0; }
        .page aside.sidebar:last-child {
          margin-right: 0; } }
    .page aside.sidebar .widget-wrapper .icon {
      font-size: 9em; }
    .page aside.sidebar .widget-wrapper .small-icon {
      font-size: 8em; }
    @media screen and (max-width: 54.375em) {
      .page aside.sidebar .widget-wrapper.large {
        display: none; }
      .page aside.sidebar .widget-wrapper.med {
        display: none; } }
      .page aside.sidebar .widget-wrapper .widget-title {
        border-bottom: solid 4px #f2f2f2;
        margin-bottom: 0; }
      .page aside.sidebar .widget-wrapper .widget-title h4 {
          margin-bottom: 0; }
      .page aside.sidebar .widget-wrapper ul.blog-categories li {
        border-bottom: solid 1px #f2f2f2; }
      .page aside.sidebar .widget-wrapper ul.blog-categories li:before {
        content: '\f105';
        font-family: 'Font Awesome 6 Pro';
        float: left;
        padding: .5em;
        color: #999; }
      .page aside.sidebar .widget-wrapper ul.blog-categories li:hover:before {
        color: #21c4ab; }
      .page aside.sidebar .widget-wrapper ul.blog-categories li a {
        display: block;
        padding: .5em;
        color: #999;
        text-transform: uppercase;
        text-decoration: none; }
      .page aside.sidebar .widget-wrapper ul.blog-categories li a:hover {
        color: #21c4ab; }
      .page ul.system-requirement li:before {
        content: '\f14a';
        font-family: 'Font Awesome 6 Pro';
        padding-left: 0.25em;
        padding-right: 0.5em ; }
      .page ul.wizard-responsibilities li:before {
        content: '\f14a';
        font-family: 'Font Awesome 6 Pro';
        padding-left: 0.25em;
        padding-right: 0.5em; }
      .page ul.plain-list {
        margin-top: -0.5em; }
      .page ul.plain-list li:before {
        content: '•';
        padding-left: 1em;
        padding-right: 1em; }

#section-full-page {
  padding: 9em 0 3em;
  min-height: 830px; }
  @media screen and (max-width: 54.375em) {
    #section-full-page {
      min-height: 0; } }

.full-page {
  color: #ededf0;
  background-color: #324655; }
  .full-page .title {
    text-align: left;
    margin-bottom: 0; }
    @media screen and (max-width: 54.375em) {
      .full-page .title {
        text-align: center; } }
  .full-page .main-column {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 100%; }
    .full-page .main-column:last-child {
      margin-right: 0; }
    @media screen and (max-width: 54.375em) {
      .full-page .main-column {
        text-align: center; }
      tr, td, th {
            text-align: center; } }
    .full-page .main-column h2 {
      color: #93adc0;
      font-weight: 300; }
    .full-page .main-column h3 {
      color: #ededf0;
      font-weight: 300;
      font-size: 0.9em; }
    .full-page .main-column a.article-link {
      padding-left: 1em;
      margin-bottom: 0;
      margin-top: 0;
      font-weight: 400;}
    @media screen and (max-width: 54.375em) {
      .full-page .main-column a.article-link {
        padding-left: 0;} }

.pricing {
  padding-right: 1.5em; }
  .pricing .price-item {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 31.76157%;
    margin-bottom: 1.7em;
    text-align: center;
    font-size: 1.2em;
    color: #324655; }
    .pricing .price-item a {
      color: #324655; }
    .pricing .price-item:last-child {
      margin-right: 0; }
    .pricing .price-item:nth-child(3n) {
      margin-right: 0; }
    .pricing .price-item:nth-child(3n+1) {
      clear: left; }
      @media screen and (max-width: 54.375em) {
        .pricing .price-item {
          float: left;
          display: block;
          margin-right: 2.35765%;
          width: 100%;
          padding-left: 1.5em; }
          .pricing .price-item:last-child {
            margin-right: 0; }
          .pricing .price-item:nth-child(1n) {
            margin-right: 0; }
          .pricing .price-item:nth-child(1n+1) {
            clear: left; } }
    .pricing .price-item .price-item-1 {
      color: #ededf0;
      background-color: #00aced; }
    .pricing .price-item .price-item-1-alt {
      background-color: #0092c9; }
    .pricing .price-item .price-item-2 {
      color: #ededf0;
      background-color: #1abc9c; }
    .pricing .price-item .price-item-2-alt {
      background-color: #169d82; }
    .pricing .price-item .price-item-3 {
      color: #ededf0;
      background-color: #c0a16b; }
    .pricing .price-item .price-item-3-alt {
      background-color: #b59152; }
    .pricing .price-item .price-item-4 {
      color: #ffffff;
      background-color: #ba6fe3; }
    .pricing .price-item .price-item-4-alt {
      background-color: #9b53c3; }
    .pricing .price-item .price-item-heading {
      text-transform: uppercase;
      border-top-left-radius: 5px;
      border-top-right-radius: 5px;
      padding: 0.5em 0.5em 0; }
    .pricing .price-item .price-item-price {
      font-size: 1.5em;
      font-weight: 700;
      color: #1c313f;
      padding: 0.3em 0.5em 0.4em; }
    .pricing .price-item ul.price-item-list {
      font-size: 0.7em; }
      .pricing .price-item ul.price-item-list li.price-item-list-item-odd {
        background-color: #ededf0;
        padding-left: 0.3em;
        padding-right: 0.3em; }
      .pricing .price-item ul.price-item-list li.price-item-list-item-even {
        background-color: #dadae0;
        padding-left: 0.3em;
        padding-right: 0.3em; }
    .pricing .price-item .price-item-cta {
      border-bottom-left-radius: 5px;
      border-bottom-right-radius: 5px;
      padding: 0.5em; }
    .pricing .price-item a.button {
      font-size: 0.9em; }

.pricing .price-list {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 100%;
  margin-bottom: 1.7em;
  text-align: left;
  font-size: 1.2em;
  color: #324655; }
  .pricing .price-list .price-list-heading {
    text-transform: uppercase;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    padding: 0.25em 0.5em; }
  .pricing .price-list .price-list-footer {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    padding: 0.25em; }
  .pricing .price-list .price-list-1 {
    color: #ededf0;
    background-color: #6a8041; }
  .pricing .price-list .price-list-2 {
    color: #ededf0;
    background-color: #6e5648; }
  .pricing .price-list .price-list-3 {
    color: #ededf0;
    background-color: #e66b2c; }
  .pricing .price-list ul.price-list-items {
    position: relative;
    font-size: 0.8em; }
  .pricing .price-list ul.price-list-items li.price-list-item-odd {
    background-color: #ededf0;
    padding-left: 0.5em;
    padding-right: 0.5em; }
  .pricing .price-list ul.price-list-items li.price-list-item-even {
    background-color: #dadae0;
    padding-left: 0.5em;
    padding-right: 0.5em; }
  .pricing .price-list ul.price-list-items .price-list-item-price {
    position: absolute;
    right: 5px;
    margin-top: -1px;
    font-weight: bold; }
  .pricing .price-list ul.price-list-items .price-list-item-price sup {
    vertical-align: 4px;
    font-size: x-small; }
  @media screen and (max-width: 54.375em) {
    .pricing .price-list {
      padding-left: 1.5em; }
  }

#section-showcase {
  padding: 6em 0 4em; }
  @media screen and (max-width: 54.375em) {
    #section-showcase {
      padding: 2em 0; } }

.showcase {
  padding: 1em 0 5em; }
  .showcase .split {
    margin: 5em 0 0 0; }
    .showcase .split::after {
      clear: both;
      content: "";
      display: table; }
    .showcase .split .split-left,
    .showcase .split .split-right {
      float: left;
      display: block;
      margin-right: 2.35765%;
      width: 48.82117%;
      color: #ededf0; }
      .showcase .split .split-left:last-child,
      .showcase .split .split-right:last-child {
        margin-right: 0; }
      @media screen and (max-width: 54.375em) {
        .showcase .split .split-left,
        .showcase .split .split-right {
          float: left;
          display: block;
          margin-right: 2.35765%;
          width: 100%;
          padding: 1em 3em;
          text-align: center;
          float: none !important; }
          .showcase .split .split-left:last-child,
          .showcase .split .split-right:last-child {
            margin-right: 0; } }
      @media screen and (max-width: 30em) {
        .showcase .split .split-left,
        .showcase .split .split-right {
          padding: 10px; } }
      .showcase .split .split-left h1,
      .showcase .split .split-right h1 {
        font-size: 2.6em;
        margin: 0 0 0.3em;
        text-transform: none; }
      .showcase .split .split-left p.buttons,
      .showcase .split .split-right p.buttons {
        text-align: center; }
        @media screen and (min-width: 54.375em) {
          .showcase .split .split-left p.buttons,
          .showcase .split .split-right p.buttons {
            padding-right: 1.5em; } }
    .showcase .split .split-left.float-right {
      float: right; }
      @media screen and (min-width: 54.375em) {
        .showcase .split .split-left.float-right.split-text {
          padding-left: 1.5em; } }
    .showcase .split .split-right.float-left {
      float: left; }
    .showcase .split .split-media #showcase-slider .item img {
      display: block;
      width: 100%;
      height: auto;
      cursor: move; }
    .showcase .split .img {
      float: left;
      display: block;
      margin-right: 2.35765%;
      width: 23.23176%;
      margin-bottom: 1em; }
      .showcase .split .img:last-child {
        margin-right: 0; }
      .showcase .split .img:nth-child(5n) {
        margin-right: 0; }
      .showcase .split .img:nth-child(5n+1) {
        clear: left; }

.showcase.gray {
  background: #f2f2f2; }

section.quote {
  padding: 3em 0.25em; }
  section.quote blockquote {
    text-align: center;
    font-style: normal;
    color: #bdf4eb;
    font-size: 1.5em;
    margin: 0;
    border: 0;
    padding-left: 0; }
    section.quote blockquote cite {
      padding-top: 1em;
      font-size: 0.9em;
      display: block;
      color: #bdf4eb; }

section.ticker {
  text-align: center;
  padding: 4.4em 0.25em; }
  @media screen and (max-width: 54.375em) {
    section.ticker {
      display: none; } }
  section.ticker h2 {
    color: white;
    font-family: "Share Tech Mono", monospace;
    font-size: 2.5em;
    letter-spacing: -0.05em;
    margin: 0; }
  section.ticker .ticker {
    padding-left: 0.2em;
    color: #324655; }

#section-contact {
  min-height: 694px;
  padding: 9em 0 3em;
  color: #ededf0;
  background-color: #324655; }
  @media screen and (max-width: 54.375em) {
    #section-contact {
      min-height: 0; } }
  #section-contact p {
    font-weight: 300; }

.contact .title {
  text-align: left;
  margin-bottom: 0; }
  @media screen and (max-width: 54.375em) {
    .contact .title {
      text-align: center; } }
  .contact .title h2 {
    padding-bottom: .4em; }

.contact .form::after {
  clear: both;
  content: "";
  display: table; }

.contact .form .form-left {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
  padding-right: 1.65em;
  font-size: 1.2em;
  line-height: 1.33em; }
  .contact .form .form-left:last-child {
    margin-right: 0; }
  @media screen and (max-width: 54.375em) {
    .contact .form .form-left {
      float: left;
      display: block;
      margin-right: 2.35765%;
      width: 100%;
      padding: 0 5%;
      text-align: center; }
      .contact .form .form-left:last-child {
        margin-right: 0; } }
  @media screen and (max-width: 37.5em) {
    .contact .form .form-left {
      font-size: 1.2em; } }

.contact .form .form-right {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%; }
  .contact .form .form-right:last-child {
    margin-right: 0; }
  @media screen and (max-width: 54.375em) {
    .contact .form .form-right {
      float: left;
      display: block;
      margin-right: 2.35765%;
      width: 100%;
      padding: 0 5%; }
      .contact .form .form-right:last-child {
        margin-right: 0; } }

.contact .form label {
  display: none; }

.contact .form input {
  height: 3em;
  margin-bottom: 1em;
  padding: 0 1em; }

.contact .form textarea {
  padding: 1em;
  height: 12em; }

.contact p.submit {
  text-align: center;
  display: block; }
  .contact p.submit input {
    background: #f25022;
    width: 160px;
    height: 50px;
    text-transform: uppercase; }
    .contact p.submit input:hover {
      background: #f3633a; }

.contact .form-feedback {
  padding: 1em 2em;
  color: white; }

.contact .form-feedback.form-success {
  background-color: #2ecc71; }

.contact .form-feedback.form-error {
  background-color: #e74c3c; }

.contact #contact-error {
  margin: 0 20% 2em; }
  @media screen and (max-width: 37.5em) {
    .contact #contact-error {
      margin: 0 5% 2em; } }

#section-social-contacts {
  padding: 3.45em 0; }

.social-contacts {
  color: #ededf0;
  background-color: #21c4ab;
  font-family: "Coda", sans-serif; }
  .social-contacts p {
    font-size: 1.7em;
    color: #bdf4eb;
    text-align: center;
    margin-bottom: 0; }

footer.footer {
  position: relative;
  width: 100%;
  bottom: 0;
  left: 0;
  background-color: #2d2d2d;
  z-index: -100;
  box-shadow: 0 50vh 0 50vh #2d2d2d; }
  footer.footer p.copyright {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 65.88078%;
    padding: 2em 0;
    color: #bfbfbf;
    margin-bottom: 0; }
    @media screen and (max-width: 37.5em) {
      footer.footer p.copyright {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%;
        text-align: center;
        padding: 2em 0 0; }
        footer.footer p.copyright:last-child {
          margin-right: 0; } }
    footer.footer p.copyright:last-child {
      margin-right: 0; }
  footer.footer ul.social {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 31.76157%;
    float: right;
    text-align: right;
    margin: 2em auto; }
    @media screen and (max-width: 37.5em) {
      footer.footer ul.social {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%;
        text-align: center;
        padding: 0; }
        footer.footer ul.social:last-child {
          margin-right: 0; } }
    footer.footer ul.social:last-child {
      margin-right: 0; }
    footer.footer ul.social li {
      display: inline-block;
      text-align: center;
      list-style: none;
      color: #cccccc;
      transition: all 0.2s; }
      footer.footer ul.social li a {
        font-size: 1.3em;
        padding: 0 0 0 1.2em;
        color: #cccccc; }
        footer.footer ul.social li a:hover {
          color: #21c4ab; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwicGFydGlhbHMvX3Jlc2V0LnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fYm94LXNpemluZy5zY3NzIiwidmVuZG9yL2JpdHRlcnMvX2J1dHRvbnMuc2NzcyIsInZlbmRvci9iaXR0ZXJzL192YXJpYWJsZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL19zaGFkZS5zY3NzIiwidmVuZG9yL2JpdHRlcnMvX2Zvcm1zLnNjc3MiLCJ2ZW5kb3IvYml0dGVycy9fbGF5b3V0LnNjc3MiLCJ2ZW5kb3IvYml0dGVycy9fbGlzdHMuc2NzcyIsInZlbmRvci9iaXR0ZXJzL19tZWRpYS5zY3NzIiwidmVuZG9yL2JpdHRlcnMvX3RhYmxlcy5zY3NzIiwidmVuZG9yL2JpdHRlcnMvX3R5cG9ncmFwaHkuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL19tb2R1bGFyLXNjYWxlLnNjc3MiLCJwYXJ0aWFscy9vd2wtZmxleHNsaWRlci5zY3NzIiwicGFydGlhbHMvX293bC10aGVtZS5zY3NzIiwicGFydGlhbHMvX2dsb2JhbHMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY3NzMy9fcGxhY2Vob2xkZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uLW5lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ncmlkL19vdXRlci1jb250YWluZXIuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL19weC10by1lbS5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hZGRvbnMvX2NsZWFyZml4LnNjc3MiLCJwYXJ0aWFscy9faGVhZGVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fbWVkaWEuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19wb3NpdGlvbi5zY3NzIiwicGFydGlhbHMvX2ludHJvLnNjc3MiLCJwYXJ0aWFscy9fZmVhdHVyZXMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uLW5lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ncmlkL19zcGFuLWNvbHVtbnMuc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uLW5lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ncmlkL19wcml2YXRlLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fb21lZ2Euc2NzcyIsIi4uL25vZGVfbW9kdWxlcy9ib3VyYm9uLW5lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvX3ByaXZhdGUuc2NzcyIsInBhcnRpYWxzL19uZXdzbGV0dGVyLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fcGFkLnNjc3MiLCJwYXJ0aWFscy9fcGFnZS5zY3NzIiwicGFydGlhbHMvX2Z1bGwtcGFnZS5zY3NzIiwicGFydGlhbHMvX3ByaWNpbmcuc2NzcyIsInBhcnRpYWxzL19zaG93Y2FzZS5zY3NzIiwicGFydGlhbHMvX3F1b3RlLnNjc3MiLCJwYXJ0aWFscy9fdGlja2VyLnNjc3MiLCJwYXJ0aWFscy9fY29udGFjdC5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7O0VBR0U7QUFFRjs7Ozs7Ozs7Ozs7OztFQWFDLFVBQVM7RUFDVCxX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a0VJLFlBQU87UUFHTCxlQUFjO1FBZWQsdUJDdEUwQztRRHVFMUMsWUM1RXlDO1FZSTVDLG1CQUFrQjtRQUNsQixpQkFBZ0IsRUFTakI7UUF2QkY7VWJ3RlEsZ0JBQThCLEVBQy9CLEVBQUE7SWF6RlA7TWJ3RlEsZ0JBQThCLEVBQy9CO0VhekZQO0lia0VJLFlBQU87SUFHTCxlQUFjO0lBZWQsdUJDdEUwQztJRHVFMUMsaUJDNUV5QztJWTBCN0MsYUFBWTtJQUNaLGtCQUFpQjtJQUNqQixpQkFBZ0IsRUFtQmhCO0lqQjZCRTtNaUJyRko7UWJrRUksWUFBTztRQUdMLGVBQWM7UUFlZCx1QkN0RTBDO1FEdUUxQyxZQzVFeUM7UVlvQjVDLG1CQUFrQjtRQUNsQixXQUFVLEVBMEJYO1FBeERGO1Vid0ZRLGdCQUE4QixFQUMvQixFQUFBO0lhekZQO01id0ZRLGdCQUE4QixFQUMvQjtJYXpGUDtNQXdDRyxzQkFBcUI7TUFDckIsbUJBQWtCO01BQ2xCLGlCQUFnQjtNQUNoQixlQUF5QjtNQUN6QixxQkFBb0IsRUFXcEI7TUF2REg7UUErQ0ksaUJBQWdCO1FBQ2hCLHFCQUFvQjtRQUNwQixlQUF5QixFQUt6QjtRQXRESjtVQW9ESyxlbENsQmUsRWtDbUJmIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogaHR0cDovL21leWVyd2ViLmNvbS9lcmljL3Rvb2xzL2Nzcy9yZXNldC8gXG4gICB2Mi4wIHwgMjAxMTAxMjZcbiAgIExpY2Vuc2U6IG5vbmUgKHB1YmxpYyBkb21haW4pXG4qL1xuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXG5tZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSxcbnRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG4vKiBIVE1MNSBkaXNwbGF5LXJvbGUgcmVzZXQgZm9yIG9sZGVyIGJyb3dzZXJzICovXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLFxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbm9sLCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuYmxvY2txdW90ZSwgcSB7XG4gIHF1b3Rlczogbm9uZTsgfVxuXG5ibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixcbnE6YmVmb3JlLCBxOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGNvbnRlbnQ6IG5vbmU7IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qLCAqOjphZnRlciwgKjo6YmVmb3JlIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5hLmJ1dHRvbixcbmJ1dHRvbixcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI1MDIyO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDAuNzVlbSAxLjVlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGVhc2U7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIGEuYnV0dG9uOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cyxcbiAgYnV0dG9uOmhvdmVyLFxuICBidXR0b246Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMjQwMWI7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgYS5idXR0b246ZGlzYWJsZWQsXG4gIGJ1dHRvbjpkaXNhYmxlZCxcbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpkaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICBhLmJ1dHRvbjpkaXNhYmxlZDpob3ZlcixcbiAgICBidXR0b246ZGlzYWJsZWQ6aG92ZXIsXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpkaXNhYmxlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI1MDIyOyB9XG5cbmZpZWxkc2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1ZW07XG4gIHBhZGRpbmc6IDA7IH1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVlbTsgfVxuXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSwgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwidGltZVwiXSwgaW5wdXRbdHlwZT1cInVybFwiXSwgaW5wdXRbdHlwZT1cIndlZWtcIl0sIGlucHV0Om5vdChbdHlwZV0pLCB0ZXh0YXJlYSxcbnNlbGVjdFttdWx0aXBsZV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMDYpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07XG4gIHBhZGRpbmc6IDAuNWVtO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMTUwbXMgZWFzZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpob3ZlciwgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06aG92ZXIsIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpob3ZlciwgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06aG92ZXIsIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06aG92ZXIsIGlucHV0W3R5cGU9XCJ0ZWxcIl06aG92ZXIsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmhvdmVyLCBpbnB1dFt0eXBlPVwidGltZVwiXTpob3ZlciwgaW5wdXRbdHlwZT1cInVybFwiXTpob3ZlciwgaW5wdXRbdHlwZT1cIndlZWtcIl06aG92ZXIsIGlucHV0Om5vdChbdHlwZV0pOmhvdmVyLCB0ZXh0YXJlYTpob3ZlcixcbiAgc2VsZWN0W211bHRpcGxlXTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjYjFiMWIxOyB9XG4gIGlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cywgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpmb2N1cywgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJtb250aFwiXTpmb2N1cywgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cywgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cywgaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmZvY3VzLCBpbnB1dDpub3QoW3R5cGVdKTpmb2N1cywgdGV4dGFyZWE6Zm9jdXMsXG4gIHNlbGVjdFttdWx0aXBsZV06Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI2YyNTAyMjtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjA2KSwgMCAwIDVweCByZ2JhKDIzNywgNjMsIDE0LCAwLjcpO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpkaXNhYmxlZCwgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpkaXNhYmxlZCwgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJ0ZWxcIl06ZGlzYWJsZWQsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmRpc2FibGVkLCBpbnB1dFt0eXBlPVwidGltZVwiXTpkaXNhYmxlZCwgaW5wdXRbdHlwZT1cInVybFwiXTpkaXNhYmxlZCwgaW5wdXRbdHlwZT1cIndlZWtcIl06ZGlzYWJsZWQsIGlucHV0Om5vdChbdHlwZV0pOmRpc2FibGVkLCB0ZXh0YXJlYTpkaXNhYmxlZCxcbiAgc2VsZWN0W211bHRpcGxlXTpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmRpc2FibGVkOmhvdmVyLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpkaXNhYmxlZDpob3ZlciwgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmRpc2FibGVkOmhvdmVyLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06ZGlzYWJsZWQ6aG92ZXIsIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpkaXNhYmxlZDpob3ZlciwgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmRpc2FibGVkOmhvdmVyLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmRpc2FibGVkOmhvdmVyLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06ZGlzYWJsZWQ6aG92ZXIsIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06ZGlzYWJsZWQ6aG92ZXIsIGlucHV0W3R5cGU9XCJ0ZWxcIl06ZGlzYWJsZWQ6aG92ZXIsIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmRpc2FibGVkOmhvdmVyLCBpbnB1dFt0eXBlPVwidGltZVwiXTpkaXNhYmxlZDpob3ZlciwgaW5wdXRbdHlwZT1cInVybFwiXTpkaXNhYmxlZDpob3ZlciwgaW5wdXRbdHlwZT1cIndlZWtcIl06ZGlzYWJsZWQ6aG92ZXIsIGlucHV0Om5vdChbdHlwZV0pOmRpc2FibGVkOmhvdmVyLCB0ZXh0YXJlYTpkaXNhYmxlZDpob3ZlcixcbiAgICBzZWxlY3RbbXVsdGlwbGVdOmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7IH1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyB9XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjM3NWVtOyB9XG5cblt0eXBlPVwiZmlsZVwiXSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVlbTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NWVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxudWwsXG5vbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbmRsIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwOyB9XG5cbmRkIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5pbWcsXG5waWN0dXJlIHtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBtYXJnaW46IDAuNzVlbSAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTsgfVxuXG50aCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTZhNmE2O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAwLjc1ZW0gMDtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG50ZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREREO1xuICBwYWRkaW5nOiAwLjc1ZW0gMDsgfVxuXG50cixcbnRkLFxudGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbmJvZHkge1xuICBjb2xvcjogIzk5OTtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4zMzNlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgbWFyZ2luOiAwIDAgMC43NWVtOyB9XG5cbnAge1xuICBtYXJnaW46IDAgMCAwLjc1ZW07IH1cblxuYSB7XG4gIGNvbG9yOiAjZjI1MDIyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGVhc2U7IH1cbiAgYTphY3RpdmUsIGE6Zm9jdXMsIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjYjYzYzFhOyB9XG5cbmhyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREQ7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIG1hcmdpbjogMS41ZW0gMDsgfVxuXG5pbWcge1xuICBtYXJnaW46IDA7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjREREO1xuICBjb2xvcjogI2JmYmZiZjtcbiAgbWFyZ2luOiAxLjVlbSAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtOyB9XG5cbmNpdGUge1xuICBjb2xvcjogI2Q5ZDlkOTtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7IH1cblxuLyogXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAuYW5pbWF0ZWQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbiB7XG4gIHotaW5kZXg6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dCB7XG4gIHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAuZmFkZU91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0OyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4vKiBcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cbi5vd2wtaGVpZ2h0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDsgfVxuXG4vKiBcbiAqICBDb3JlIE93bCBDYXJvdXNlbCBDU1MgRmlsZVxuICovXG4ub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWNvbnRyb2xzIC5vd2wtbmF2IC5vd2wtcHJldixcbi5vd2wtY2Fyb3VzZWwgLm93bC1jb250cm9scyAub3dsLW5hdiAub3dsLW5leHQsXG4ub3dsLWNhcm91c2VsIC5vd2wtY29udHJvbHMgLm93bC1kb3Qge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogaGFuZDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRpbmcge1xuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1oaWRkZW4ge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtdGV4dC1zZWxlY3Qtb24gLm93bC1pdGVtIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogYXV0bztcbiAgLW1vei11c2VyLXNlbGVjdDogYXV0bztcbiAgLW1zLXVzZXItc2VsZWN0OiBhdXRvO1xuICB1c2VyLXNlbGVjdDogYXV0bzsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtZ3JhYiB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogLW8tZ3JhYjtcbiAgY3Vyc29yOiAtbXMtZ3JhYjtcbiAgY3Vyc29yOiBncmFiOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0ge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogXG4gKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcge1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi8qIFxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDgwcHg7XG4gIHdpZHRoOiA4MHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gIG1hcmdpbi10b3A6IC00MHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJvd2wudmlkZW8ucGxheS5wbmdcIikgbm8tcmVwZWF0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogc2NhbGUgMTAwbXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogc2NhbGUoMS4zLCAxLjMpO1xuICAtbW96LXRyYW5zaXRpb246IHNjYWxlKDEuMywgMS4zKTtcbiAgLW1zLXRyYW5zaXRpb246IHNjYWxlKDEuMywgMS4zKTtcbiAgLW8tdHJhbnNpdGlvbjogc2NhbGUoMS4zLCAxLjMpO1xuICB0cmFuc2l0aW9uOiBzY2FsZSgxLjMsIDEuMyk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10bixcbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tdG4ge1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi8qXG4gKiBqUXVlcnkgRmxleFNsaWRlciB2Mi4yLjBcbiAqIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9mbGV4c2xpZGVyL1xuICpcbiAqIENvcHlyaWdodCAyMDEyIFdvb1RoZW1lc1xuICogRnJlZSB0byB1c2UgdW5kZXIgdGhlIEdQTHYyIGxpY2Vuc2UuXG4gKiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXG4gKlxuICogQ29udHJpYnV0aW5nIGF1dGhvcjogVHlsZXIgU21pdGggKEBtYm11ZmZmaW4pXG4gKi9cbi8qIEJyb3dzZXIgUmVzZXRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZmxleC1jb250YWluZXIgYTphY3RpdmUsXG4uZmxleHNsaWRlciBhOmFjdGl2ZSxcbi5mbGV4LWNvbnRhaW5lciBhOmZvY3VzLFxuLmZsZXhzbGlkZXIgYTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLnNsaWRlcyxcbi5mbGV4LWNvbnRyb2wtbmF2LFxuLmZsZXgtZGlyZWN0aW9uLW5hdiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4vKiBJY29uIEZvbnRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBGb250LWZhY2UgSWNvbnMgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ZsZXhzbGlkZXItaWNvbic7XG4gIHNyYzogdXJsKFwiZm9udHMvZmxleHNsaWRlci1pY29uLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCJmb250cy9mbGV4c2xpZGVyLWljb24uZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiZm9udHMvZmxleHNsaWRlci1pY29uLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiZm9udHMvZmxleHNsaWRlci1pY29uLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiZm9udHMvZmxleHNsaWRlci1pY29uLnN2ZyNmbGV4c2xpZGVyLWljb25cIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLyogRmxleFNsaWRlciBOZWNlc3NhcnkgU3R5bGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZmxleHNsaWRlciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uZmxleHNsaWRlciAuc2xpZGVzID4gbGkge1xuICBkaXNwbGF5OiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiBIaWRlIHRoZSBzbGlkZXMgYmVmb3JlIHRoZSBKUyBpcyBsb2FkZWQuIEF2b2lkcyBpbWFnZSBqdW1waW5nICovXG4uZmxleHNsaWRlciAuc2xpZGVzIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZmxleC1wYXVzZXBsYXkgc3BhbiB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi8qIENsZWFyZml4IGZvciB0aGUgLnNsaWRlcyBlbGVtZW50ICovXG4uc2xpZGVzOmFmdGVyIHtcbiAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBoZWlnaHQ6IDA7IH1cblxuaHRtbFt4bWxuc10gLnNsaWRlcyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbiogaHRtbCAuc2xpZGVzIHtcbiAgaGVpZ2h0OiAxJTsgfVxuXG4vKiBObyBKYXZhU2NyaXB0IEZhbGxiYWNrICovXG4vKiBJZiB5b3UgYXJlIG5vdCB1c2luZyBhbm90aGVyIHNjcmlwdCwgc3VjaCBhcyBNb2Rlcm5penIsIG1ha2Ugc3VyZSB5b3VcbiAqIGluY2x1ZGUganMgdGhhdCBlbGltaW5hdGVzIHRoaXMgY2xhc3Mgb24gcGFnZSBsb2FkICovXG4ubm8tanMgLnNsaWRlcyA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogRmxleFNsaWRlciBEZWZhdWx0IFRoZW1lXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZmxleHNsaWRlciB7XG4gIG1hcmdpbjogMCAwIDYwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgem9vbTogMTsgfVxuXG4uZmxleC12aWV3cG9ydCB7XG4gIG1heC1oZWlnaHQ6IDIwMDBweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlOyB9XG5cbi5sb2FkaW5nIC5mbGV4LXZpZXdwb3J0IHtcbiAgbWF4LWhlaWdodDogMzAwcHg7IH1cblxuLmZsZXhzbGlkZXIgLnNsaWRlcyB7XG4gIHpvb206IDE7IH1cblxuLmNhcm91c2VsIGxpIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cblxuLyogRGlyZWN0aW9uIE5hdiAqL1xuLmZsZXgtZGlyZWN0aW9uLW5hdiB7XG4gICpoZWlnaHQ6IDA7IH1cblxuLmZsZXgtZGlyZWN0aW9uLW5hdiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiAtMjBweCAwIDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHotaW5kZXg6IDEwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIHRleHQtc2hhZG93OiAxcHggMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTsgfVxuXG4uZmxleC1kaXJlY3Rpb24tbmF2IC5mbGV4LXByZXYge1xuICBsZWZ0OiAtNTBweDsgfVxuXG4uZmxleC1kaXJlY3Rpb24tbmF2IC5mbGV4LW5leHQge1xuICByaWdodDogLTUwcHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5mbGV4c2xpZGVyOmhvdmVyIC5mbGV4LXByZXYge1xuICBvcGFjaXR5OiAwLjc7XG4gIGxlZnQ6IDEwcHg7IH1cblxuLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtbmV4dCB7XG4gIG9wYWNpdHk6IDAuNztcbiAgcmlnaHQ6IDEwcHg7IH1cblxuLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtbmV4dDpob3ZlciwgLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtcHJldjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLmZsZXgtZGlyZWN0aW9uLW5hdiBhOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcImZsZXhzbGlkZXItaWNvblwiO1xuICBmb250LXNpemU6IDQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogJ1xcZjAwMSc7IH1cblxuLmZsZXgtZGlyZWN0aW9uLW5hdiBhLmZsZXgtbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDAyJzsgfVxuXG4vKiBQYXVzZS9QbGF5ICovXG4uZmxleC1wYXVzZXBsYXkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNXB4O1xuICBsZWZ0OiAxMHB4O1xuICBvcGFjaXR5OiAwLjg7XG4gIHotaW5kZXg6IDEwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi5mbGV4LXBhdXNlcGxheSBhOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcImZsZXhzbGlkZXItaWNvblwiO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogJ1xcZjAwNCc7IH1cblxuLmZsZXgtcGF1c2VwbGF5IGE6aG92ZXIge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5mbGV4LXBhdXNlcGxheSBhLmZsZXgtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDAzJzsgfVxuXG4vKiBDb250cm9sIE5hdiAqL1xuLmZsZXgtY29udHJvbC1uYXYge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5mbGV4LWNvbnRyb2wtbmF2IGxpIHtcbiAgbWFyZ2luOiAwIDZweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6b29tOiAxO1xuICAqZGlzcGxheTogaW5saW5lOyB9XG5cbi5mbGV4LWNvbnRyb2wtcGFnaW5nIGxpIGEge1xuICB3aWR0aDogMTFweDtcbiAgaGVpZ2h0OiAxMXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogIzY2NjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMjBweDtcbiAgLW8tYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgLW8tYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG5cbi5mbGV4LWNvbnRyb2wtcGFnaW5nIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cblxuLmZsZXgtY29udHJvbC1wYWdpbmcgbGkgYS5mbGV4LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5mbGV4LWNvbnRyb2wtdGh1bWJzIHtcbiAgbWFyZ2luOiA1cHggMCAwO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5mbGV4LWNvbnRyb2wtdGh1bWJzIGxpIHtcbiAgd2lkdGg6IDI1JTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMDsgfVxuXG4uZmxleC1jb250cm9sLXRodW1icyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IC43O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmZsZXgtY29udHJvbC10aHVtYnMgaW1nOmhvdmVyIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uZmxleC1jb250cm9sLXRodW1icyAuZmxleC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1wcmV2IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGxlZnQ6IDEwcHg7IH1cbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1uZXh0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHJpZ2h0OiAxMHB4OyB9IH1cblxuLyogXG4gKiBcdERlZmF1bHQgdGhlbWUgLSBPd2wgQ2Fyb3VzZWwgQ1NTIEZpbGVcbiAqL1xuLm93bC10aGVtZSAub3dsLW5hdiB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ub3dsLXRoZW1lIC5vd2wtbmF2IFtjbGFzcyo9J293bC0nXSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW46IDVweDtcbiAgcGFkZGluZzogNHB4IDdweDtcbiAgYmFja2dyb3VuZDogI2Q2ZDZkNjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj0nb3dsLSddOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzg2OTc5MTtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm93bC10aGVtZSAub3dsLW5hdiAuZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4ub3dsLXRoZW1lIC5vd2wtbmF2LmRpc2FibGVkICsgLm93bC1kb3RzIHtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4ub3dsLXRoZW1lIC5vd2wtZG90cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgem9vbTogMTtcbiAgKmRpc3BsYXk6IGlubGluZTsgfVxuXG4ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdCBzcGFuIHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgbWFyZ2luOiA1cHggN3B4O1xuICBiYWNrZ3JvdW5kOiAjZDZkNmQ2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDsgfVxuXG4ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdC5hY3RpdmUgc3BhbiwgLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Q6aG92ZXIgc3BhbiB7XG4gIGJhY2tncm91bmQ6ICM4Njk3OTE7IH1cblxuLyogREFQIHN0dWZmICovXG4vKiB0eXBvZ3JhcGh5ICovXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICNlZGVkZjA7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1IHtcbiAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5wLmxlYWQge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBjb2xvcjogIzkwYjFjODtcbiAgZm9udC1mYW1pbHk6IFwiQ29kYVwiLCBjdXJzaXZlOyB9XG5cbmJsb2NrcXVvdGUge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjYjNiM2IzO1xuICBmb250LXNpemU6IDEuMWVtOyB9XG4gIGJsb2NrcXVvdGUgcCB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbmEge1xuICBjb2xvcjogIzIxYzRhYjsgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzFkYWU5ODsgfVxuXG5pbnB1dCxcbnRleHRhcmVhLFxuYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7IH1cblxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiAjOTk5OTk5O1xuICBib3JkZXI6IHNvbGlkIDJweCAjZWJlYmViICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICBpbnB1dFt0eXBlPVwidGV4dFwiXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuICB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNiZmJmYmY7IH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl06Oi1tb3otcGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXTo6LW1vei1wbGFjZWhvbGRlcixcbiAgdGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjYmZiZmJmOyB9XG4gIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOi1tb3otcGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXTotbW96LXBsYWNlaG9sZGVyLFxuICB0ZXh0YXJlYTotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2JmYmZiZjsgfVxuICBpbnB1dFt0eXBlPVwidGV4dFwiXTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXTotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG4gIHRleHRhcmVhOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNiZmJmYmY7IH1cbiAgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIGJvcmRlcjogc29saWQgMnB4ICNjY2NjY2MgIWltcG9ydGFudDsgfVxuXG4vKiBsYXlvdXQgKi9cbi5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDY4ZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDAgLjVlbTsgfVxuICAuY29udGFpbmVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuXG5odG1sLCBib2R5LCBzZWN0aW9uLmludHJvLCAuc3BsaXQsIC5zcGxpdC10ZXh0IHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbnNlY3Rpb24ge1xuICBwYWRkaW5nOiA0ZW0gMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zZXJpZiB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIsIHNlcmlmOyB9XG5cbmVtIHtcbiAgY29sb3I6ICMyMWM0YWI7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90byBTbGFiXCIsIHNlcmlmOyB9XG5cbmNvZGUge1xuICBjb2xvcjogIzkzYWRjMDtcbiAgZm9udC1mYW1pbHk6IFwiU2hhcmUgVGVjaCBNb25vXCIsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxLjFlbTsgfVxuXG5rYmQge1xuICBjb2xvcjogI2ZmYzkyOTtcbiAgZm9udC1mYW1pbHk6IFwiQ29kYVwiLCBjdXJzaXZlO1xuICBmb250LXNpemU6IDEuMWVtOyB9XG5cbi5jZW50ZXJlZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubm8tdHJhbnNmb3JtYXRpb24ge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4uaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5tb25vc3BhY2Uge1xuICBmb250LWZhbWlseTogXCJTaGFyZSBUZWNoIE1vbm9cIiwgbW9ub3NwYWNlOyB9XG5cbi5jb2xvci1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMWM0YWI7XG4gIHotaW5kZXg6IC0xMDA7IH1cblxuLmRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmQyZDJkOyB9XG5cbi5taWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzI0NjU1OyB9XG5cbi5saXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRmMDsgfVxuXG4uaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIxYzRhYjsgfVxuXG4uZGVlbXBoYXNpemUge1xuICBmb250LXNpemU6IDAuOWVtOyB9XG5cbi5zdXBlcnNjcmlwdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiA1MCU7XG4gIG1heC13aWR0aDogNSU7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbiAgdG9wOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4vKiB0aXRsZSBzZWN0aW9uICovXG4udGl0bGUge1xuICBmb250LXNpemU6IDEuNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgY29sb3I6ICNlZGVkZjA7IH1cbiAgLnRpdGxlIGgyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAudGl0bGUgaHIge1xuICAgIGJvcmRlcjogc29saWQgMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBtYXJnaW46IDFlbSBhdXRvIDEuNWVtOyB9XG4gICAgLnRpdGxlIGhyLnNtYWxsIHtcbiAgICAgIHdpZHRoOiA1MHB4OyB9XG4gIC50aXRsZSBwIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07IH1cblxuLyogYnV0dG9ucyAqL1xuYS5idXR0b24ubGFyZ2Uge1xuICBjb2xvcjogIzQ3N0RDQTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRmMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxZW0gMC4yZW07XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiA1MHB4OyB9XG4gIGEuYnV0dG9uLmxhcmdlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjYmJjYmU1OyB9XG5cbmEuYnV0dG9uLmFsdCxcbmEuYnV0dG9uLmxhcmdlLmFsdCB7XG4gIGNvbG9yOiAjZWRlZGYwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjI1MDIyOyB9XG4gIGEuYnV0dG9uLmFsdDpob3ZlcixcbiAgYS5idXR0b24ubGFyZ2UuYWx0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjU3NjUyOyB9XG5cbi8qIG93bCBjYXJvdXNlbCBzdHlsZXMgKi9cbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHNwYW4ge1xuICBoZWlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAxNHB4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj0nb3dsLSddIHtcbiAgcGFkZGluZy10b3A6IDE3cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7IH1cblxuLm93bC1jYXJvdXNlbCB7XG4gIGN1cnNvcjogbW92ZTsgfVxuXG4vKiBmbGV4c2xpZGVyICovXG4uZmxleHNsaWRlciB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZmxleC1jb250cm9sLW5hdiB7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTAwOyB9XG4gIC5mbGV4LWNvbnRyb2wtbmF2IGxpIGEge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgIC5mbGV4LWNvbnRyb2wtbmF2IGxpIGE6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC43OyB9XG4gICAgLmZsZXgtY29udHJvbC1uYXYgbGkgYS5mbGV4LWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIG9wYWNpdHk6IDE7IH1cblxuLmZsZXgtZGlyZWN0aW9uLW5hdiBhIHtcbiAgaGVpZ2h0OiA1MnB4O1xuICB3aWR0aDogNTJweDtcbiAgdG9wOiA0NSU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6IHdoaXRlOyB9XG4gIC5mbGV4LWRpcmVjdGlvbi1uYXYgYTpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9udGF3ZXNvbWUnO1xuICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb250ZW50OiAnXFxmMTA0JzsgfVxuICAuZmxleC1kaXJlY3Rpb24tbmF2IGEuZmxleC1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjEwNSc7IH1cblxuaGVhZGVyLm5hdmlnYXRpb24uaGVhZHJvb20tLXVucGlubmVkIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxuXG5oZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbS0tcGlubmVkIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTsgfVxuXG5oZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkMmQyZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxNDE0MTQ7XG4gIGhlaWdodDogNmVtO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgbGluZWFyOyB9XG4gIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIC5uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICAgIG1heC13aWR0aDogNjhlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDk5OTk7IH1cbiAgICBoZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbSAubmF2aWdhdGlvbi13cmFwcGVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIC5uYXZpZ2F0aW9uLXdyYXBwZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIC5sb2dvIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXgtaGVpZ2h0OiA2ZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgcGFkZGluZy1yaWdodDogMWVtOyB9XG4gICAgaGVhZGVyLm5hdmlnYXRpb24uaGVhZHJvb20gLmxvZ28gaW1nIHtcbiAgICAgIG1heC1oZWlnaHQ6IDZlbTtcbiAgICAgIHBhZGRpbmc6IDFlbSAwOyB9XG4gIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIC5uYXZpZ2F0aW9uLW1lbnUtYnV0dG9uIHtcbiAgICBjb2xvcjogI2VkZWRmMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDZlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1yaWdodDogMWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NC4zNzVlbSkge1xuICAgICAgaGVhZGVyLm5hdmlnYXRpb24uaGVhZHJvb20gLm5hdmlnYXRpb24tbWVudS1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBoZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbSAubmF2aWdhdGlvbi1tZW51LWJ1dHRvbjpob3ZlciB7XG4gICAgICBjb2xvcjogI2YyNTAyMjsgfVxuICBoZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbSAubmF2IHtcbiAgICB6LWluZGV4OiA5OTk5OTk5O1xuICAgIGZsb2F0OiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAgIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIC5uYXYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBoZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbSB1bCNuYXZpZ2F0aW9uLW1lbnUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgICBjbGVhcjogYm90aDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogOTk5OTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICBoZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbSB1bCNuYXZpZ2F0aW9uLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIHVsIGxpLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiAjMmQyZDJkO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiA0ZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNGVtO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDk5OTk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NC4zNzVlbSkge1xuICAgICAgaGVhZGVyLm5hdmlnYXRpb24uaGVhZHJvb20gdWwgbGkubmF2LWxpbmsge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICMyMDIwMjA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICBoZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbSB1bCBsaS5uYXYtbGluayB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2ZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAgIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIHVsIGxpLm5hdi1saW5rLmFjdGl2ZSBhIHtcbiAgICAgIGNvbG9yOiAjMjFjNGFiOyB9XG4gICAgaGVhZGVyLm5hdmlnYXRpb24uaGVhZHJvb20gdWwgbGkubmF2LWxpbmsgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICNlZGVkZjA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAgIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIHVsIGxpLm5hdi1saW5rIGEge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFlbTsgfSB9XG4gICAgICBoZWFkZXIubmF2aWdhdGlvbi5oZWFkcm9vbSB1bCBsaS5uYXYtbGluayBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmMjUwMjI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAgIGhlYWRlci5uYXZpZ2F0aW9uLmhlYWRyb29tIHVsIGxpLm5hdi1saW5rIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuaGVhZGVyLm5hdmlnYXRpb24gbGkubW9yZS5uYXYtbGluayB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICBoZWFkZXIubmF2aWdhdGlvbiBsaS5tb3JlLm5hdi1saW5rIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFlbTsgfSB9XG4gIGhlYWRlci5uYXZpZ2F0aW9uIGxpLm1vcmUubmF2LWxpbmsgPiB1bCA+IGxpOmZpcnN0LWNoaWxkIGEge1xuICAgIHBhZGRpbmctdG9wOiAxZW07IH1cbiAgaGVhZGVyLm5hdmlnYXRpb24gbGkubW9yZS5uYXYtbGluayBhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICBoZWFkZXIubmF2aWdhdGlvbiBsaS5tb3JlLm5hdi1saW5rIGEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIGhlYWRlci5uYXZpZ2F0aW9uIGxpLm1vcmUubmF2LWxpbmsgPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjZlbTsgfVxuICBoZWFkZXIubmF2aWdhdGlvbiBsaS5tb3JlLm5hdi1saW5rID4gYTphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogYXV0bztcbiAgICByaWdodDogLTAuNGVtO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIGNvbnRlbnQ6ICdcXDI1QkUnO1xuICAgIGNvbG9yOiAjZWRlZGYwOyB9XG5cbmhlYWRlci5uYXZpZ2F0aW9uIGxpLm1vcmUge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuICBoZWFkZXIubmF2aWdhdGlvbiBsaS5tb3JlIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IC44ZW07IH1cbiAgaGVhZGVyLm5hdmlnYXRpb24gbGkubW9yZSA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICBoZWFkZXIubmF2aWdhdGlvbiBsaS5tb3JlID4gYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMWVtOyB9IH1cbiAgICBoZWFkZXIubmF2aWdhdGlvbiBsaS5tb3JlID4gYTphZnRlciB7XG4gICAgICBjb250ZW50OiAn4oC6JztcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMC41ZW07IH1cbiAgaGVhZGVyLm5hdmlnYXRpb24gbGkubW9yZTpob3ZlciA+IC5zdWJtZW51IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NC4zNzVlbSkge1xuICAgIGhlYWRlci5uYXZpZ2F0aW9uIGxpLm1vcmUge1xuICAgICAgcGFkZGluZy1yaWdodDogLjhlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbmhlYWRlci5uYXZpZ2F0aW9uIHVsLnN1Ym1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICBoZWFkZXIubmF2aWdhdGlvbiB1bC5zdWJtZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMi41ZW07XG4gICAgICBsZWZ0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICBoZWFkZXIubmF2aWdhdGlvbiB1bC5zdWJtZW51IC5zdWJtZW51IHtcbiAgICAgIGxlZnQ6IDExLjhlbTtcbiAgICAgIHRvcDogMDsgfSB9XG4gIGhlYWRlci5uYXZpZ2F0aW9uIHVsLnN1Ym1lbnUgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NC4zNzVlbSkge1xuICAgICAgaGVhZGVyLm5hdmlnYXRpb24gdWwuc3VibWVudSBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzE5MTkxOTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAgIGhlYWRlci5uYXZpZ2F0aW9uIHVsLnN1Ym1lbnUgbGkge1xuICAgICAgICBsaW5lLWhlaWdodDogMy41ZW07IH1cbiAgICAgICAgaGVhZGVyLm5hdmlnYXRpb24gdWwuc3VibWVudSBsaTpmaXJzdC1jaGlsZCA+IGEge1xuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4OyB9XG4gICAgICAgIGhlYWRlci5uYXZpZ2F0aW9uIHVsLnN1Ym1lbnUgbGk6bGFzdC1jaGlsZCA+IGEge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjJlbTsgfSB9XG4gICAgaGVhZGVyLm5hdmlnYXRpb24gdWwuc3VibWVudSBsaSBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTI1MjU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NC4zNzVlbSkge1xuICAgICAgICBoZWFkZXIubmF2aWdhdGlvbiB1bC5zdWJtZW51IGxpIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAgIGhlYWRlci5uYXZpZ2F0aW9uIHVsLnN1Ym1lbnUgbGkgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJkMmQyZDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAxMmVtOyB9IH1cblxuc2VjdGlvbi5pbnRybyB7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgc2VjdGlvbi5pbnRybyAuY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzBlbSkge1xuICAgIHNlY3Rpb24uaW50cm8gLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogOGVtOyB9IH1cbiAgc2VjdGlvbi5pbnRybyBoMSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTsgfVxuICAgIHNlY3Rpb24uaW50cm8gaDEgaW1nIHtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIHNlY3Rpb24uaW50cm8gaDMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIHBhZGRpbmc6IDAgMjAlOyB9XG4gIHNlY3Rpb24uaW50cm8gYS5qdW1wLWRvd24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDRlbTtcbiAgICBsZWZ0OiAyMCU7XG4gICAgcmlnaHQ6IDIwJTtcbiAgICBtYXJnaW46IDJlbSBhdXRvIDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDRlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBzZWN0aW9uLmludHJvIGEuanVtcC1kb3duIGkge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgZm9udC1zaXplOiAzLjVlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yczsgfVxuICAgICAgc2VjdGlvbi5pbnRybyBhLmp1bXAtZG93biBpOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NC4zNzVlbSkge1xuICAjc2VjdGlvbi1mZWF0dXJlcyB7XG4gICAgcGFkZGluZzogMmVtIDA7IH0gfVxuXG4uZmVhdHVyZXMgLnRpdGxlIHtcbiAgY29sb3I6ICMzMjQ2NTU7IH1cblxuLmZlYXR1cmVzIC5mZWF0dXJlLWl0ZW0ge1xuICBwYWRkaW5nOiAxLjVlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAuZmVhdHVyZXMgLmZlYXR1cmUtaXRlbSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgIHdpZHRoOiAzMS43NjE1NyU7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOm50aC1jaGlsZCgzbikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBsZWZ0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAuZmVhdHVyZXMgLmZlYXR1cmUtaXRlbSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgIHdpZHRoOiA0OC44MjExNyU7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOm50aC1jaGlsZCgybikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOm50aC1jaGlsZCgybisxKSB7XG4gICAgICAgIGNsZWFyOiBsZWZ0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzBlbSkge1xuICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOm50aC1jaGlsZCgxbikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtOm50aC1jaGlsZCgxbisxKSB7XG4gICAgICAgIGNsZWFyOiBsZWZ0OyB9IH1cbiAgLmZlYXR1cmVzIC5mZWF0dXJlLWl0ZW0gaSB7XG4gICAgZm9udC1zaXplOiAyLjhlbTtcbiAgICBjb2xvcjogIzNlNjc4NDtcbiAgICBtYXJnaW4tYm90dG9tOiAuNGVtOyB9XG4gIC5mZWF0dXJlcyAuZmVhdHVyZS1pdGVtIGg0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMzI0NjU1O1xuICAgIGZvbnQtc2l6ZTogMS4yZW07IH1cbiAgLmZlYXR1cmVzIC5mZWF0dXJlLWl0ZW0gcCB7XG4gICAgY29sb3I6ICMzMjQ2NTU7XG4gICAgZm9udC1zaXplOiAxZW07IH1cblxuI3NlY3Rpb24tbmV3c2xldHRlciB7XG4gIHBhZGRpbmc6IDllbSAwIDNlbTsgfVxuXG4ubmV3c2xldHRlciB7XG4gIHBhZGRpbmc6IDNlbSAwIDJlbTtcbiAgY29sb3I6ICMxMjZkNWY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMWM0YWI7IH1cbiAgLm5ld3NsZXR0ZXIgLm5sLXRleHQsXG4gIC5uZXdzbGV0dGVyIC5ubC1mb3JtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgIHdpZHRoOiA0OC44MjExNyU7IH1cbiAgICAubmV3c2xldHRlciAubmwtdGV4dDpsYXN0LWNoaWxkLFxuICAgIC5uZXdzbGV0dGVyIC5ubC1mb3JtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAgIC5uZXdzbGV0dGVyIC5ubC10ZXh0LFxuICAgICAgLm5ld3NsZXR0ZXIgLm5sLWZvcm0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxZW0gNSU7IH1cbiAgICAgICAgLm5ld3NsZXR0ZXIgLm5sLXRleHQ6bGFzdC1jaGlsZCxcbiAgICAgICAgLm5ld3NsZXR0ZXIgLm5sLWZvcm06bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgLm5ld3NsZXR0ZXIgLm5sLXRleHQgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIC5uZXdzbGV0dGVyIC5ubC1mb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA0LjgyOTE2JTtcbiAgICB3aWR0aDogNjUuMDU2OTUlO1xuICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG4gICAgaGVpZ2h0OiAzZW07XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gICAgICAubmV3c2xldHRlciAubmwtZm9ybSBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gICAgICAgIHdpZHRoOiAzMS43NjE1NyU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAgICAgLm5ld3NsZXR0ZXIgLm5sLWZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgLm5ld3NsZXR0ZXIgLm5sLWZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5uZXdzbGV0dGVyIC5ubC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogNC44MjkxNiU7XG4gICAgd2lkdGg6IDMwLjExMzg5JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAzZW07XG4gICAgYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XG4gICAgYmFja2dyb3VuZDogIzFhOTg4NTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAgICAgLm5ld3NsZXR0ZXIgLm5sLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgICAgd2lkdGg6IDMxLjc2MTU3JTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG4gICAgICAgIC5uZXdzbGV0dGVyIC5ubC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAubmV3c2xldHRlciAubmwtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLm5ld3NsZXR0ZXIgLm5sLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMWRhZTk4OyB9XG5cbiNzZWN0aW9uLXBhZ2Uge1xuICBwYWRkaW5nOiA5ZW0gMCA0ZW07XG4gIG1pbi1oZWlnaHQ6IDgzMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgI3NlY3Rpb24tcGFnZSB7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogOGVtIDA7IH0gfVxuXG4ucGFnZSB7XG4gIGNvbG9yOiAjZWRlZGYwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzI0NjU1OyB9XG4gIC5wYWdlIC50aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAgIC5wYWdlIC50aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5wYWdlIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5wYWdlIGEuYnV0dG9uIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5wYWdlIC5tYWluLWNvbHVtbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogNzQuNDEwNTklOyB9XG4gICAgLnBhZ2UgLm1haW4tY29sdW1uOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAgIC5wYWdlIC5tYWluLWNvbHVtbiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICAucGFnZSAubWFpbi1jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAucGFnZSAubWFpbi1jb2x1bW4gaDIge1xuICAgICAgY29sb3I6ICM5MGIxYzg7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgbWFyZ2luLXRvcDogMC4zZW07IH1cbiAgICAucGFnZSAubWFpbi1jb2x1bW4gcCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC41ZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAgIC5wYWdlIC5tYWluLWNvbHVtbiBwIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgLnBhZ2UgYXNpZGUuc2lkZWJhciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogMjMuMjMxNzYlOyB9XG4gICAgLnBhZ2UgYXNpZGUuc2lkZWJhcjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAucGFnZSBhc2lkZS5zaWRlYmFyIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMmVtIDIwJSAwOyB9XG4gICAgICAgIC5wYWdlIGFzaWRlLnNpZGViYXI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMGVtKSB7XG4gICAgICAucGFnZSBhc2lkZS5zaWRlYmFyIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMWVtIDMlIDA7IH1cbiAgICAgICAgLnBhZ2UgYXNpZGUuc2lkZWJhcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIC5wYWdlIGFzaWRlLnNpZGViYXIgLndpZGdldC13cmFwcGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNlbTsgfVxuICAgICAgLnBhZ2UgYXNpZGUuc2lkZWJhciAud2lkZ2V0LXdyYXBwZXIgLndpZGdldC10aXRsZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDRweCAjZjJmMmYyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC5wYWdlIGFzaWRlLnNpZGViYXIgLndpZGdldC13cmFwcGVyIC53aWRnZXQtdGl0bGUgaDQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5wYWdlIGFzaWRlLnNpZGViYXIgLndpZGdldC13cmFwcGVyIHVsLmJsb2ctY2F0ZWdvcmllcyBsaSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZjJmMmYyOyB9XG4gICAgICAgIC5wYWdlIGFzaWRlLnNpZGViYXIgLndpZGdldC13cmFwcGVyIHVsLmJsb2ctY2F0ZWdvcmllcyBsaTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXGYxMzgnO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnRm9udGF3ZXNvbWUnO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmc6IC41ZW07XG4gICAgICAgICAgY29sb3I6ICM5OTk7IH1cbiAgICAgICAgLnBhZ2UgYXNpZGUuc2lkZWJhciAud2lkZ2V0LXdyYXBwZXIgdWwuYmxvZy1jYXRlZ29yaWVzIGxpOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgY29sb3I6ICMyMWM0YWI7IH1cbiAgICAgICAgLnBhZ2UgYXNpZGUuc2lkZWJhciAud2lkZ2V0LXdyYXBwZXIgdWwuYmxvZy1jYXRlZ29yaWVzIGxpIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IC41ZW07XG4gICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgICAgICAucGFnZSBhc2lkZS5zaWRlYmFyIC53aWRnZXQtd3JhcHBlciB1bC5ibG9nLWNhdGVnb3JpZXMgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzIxYzRhYjsgfVxuXG4jc2VjdGlvbi1mdWxsLXBhZ2Uge1xuICBwYWRkaW5nOiA5ZW0gMCAzZW07XG4gIG1pbi1oZWlnaHQ6IDgzMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgI3NlY3Rpb24tZnVsbC1wYWdlIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuXG4uZnVsbC1wYWdlIHtcbiAgY29sb3I6ICNlZGVkZjA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjQ2NTU7IH1cbiAgLmZ1bGwtcGFnZSAudGl0bGUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAuZnVsbC1wYWdlIC50aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5mdWxsLXBhZ2UgLm1haW4tY29sdW1uIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmZ1bGwtcGFnZSAubWFpbi1jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NC4zNzVlbSkge1xuICAgICAgLmZ1bGwtcGFnZSAubWFpbi1jb2x1bW4ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgIC5mdWxsLXBhZ2UgLm1haW4tY29sdW1uIGgyIHtcbiAgICAgIGNvbG9yOiAjOTNhZGMwO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgIC5mdWxsLXBhZ2UgLm1haW4tY29sdW1uIGgzLmJsb2ctZGF0ZSB7XG4gICAgICBjb2xvcjogI2VkZWRmMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuZnVsbC1wYWdlIC5tYWluLWNvbHVtbiBhLmJsb2ctbGluayB7XG4gICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxZW07IH1cblxuLnByaWNpbmcge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTsgfVxuICAucHJpY2luZyAucHJpY2UtaXRlbSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogMzEuNzYxNTclO1xuICAgIG1hcmdpbi1ib3R0b206IDEuN2VtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIGNvbG9yOiAjMzI0NjU1OyB9XG4gICAgLnByaWNpbmcgLnByaWNlLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAucHJpY2luZyAucHJpY2UtaXRlbTpudGgtY2hpbGQoM24pIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5wcmljaW5nIC5wcmljZS1pdGVtOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICBjbGVhcjogbGVmdDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU0LjM3NWVtKSB7XG4gICAgICAucHJpY2luZyAucHJpY2UtaXRlbSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS41ZW07IH1cbiAgICAgICAgLnByaWNpbmcgLnByaWNlLWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5wcmljaW5nIC5wcmljZS1pdGVtOm50aC1jaGlsZCgxbikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgICAucHJpY2luZyAucHJpY2UtaXRlbTpudGgtY2hpbGQoMW4rMSkge1xuICAgICAgICAgIGNsZWFyOiBsZWZ0OyB9IH1cbiAgICAucHJpY2luZyAucHJpY2UtaXRlbSAucHJpY2UtaXRlbS0xIHtcbiAgICAgIGNvbG9yOiAjZWRlZGYwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYWNlZDsgfVxuICAgIC5wcmljaW5nIC5wcmljZS1pdGVtIC5wcmljZS1pdGVtLTEtYWx0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDkyYzk7IH1cbiAgICAucHJpY2luZyAucHJpY2UtaXRlbSAucHJpY2UtaXRlbS0yIHtcbiAgICAgIGNvbG9yOiAjZWRlZGYwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzFhYmM5YzsgfVxuICAgIC5wcmljaW5nIC5wcmljZS1pdGVtIC5wcmljZS1pdGVtLTItYWx0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNjlkODI7IH1cbiAgICAucHJpY2luZyAucHJpY2UtaXRlbSAucHJpY2UtaXRlbS0zIHtcbiAgICAgIGNvbG9yOiAjZWRlZGYwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MwYTE2YjsgfVxuICAgIC5wcmljaW5nIC5wcmljZS1pdGVtIC5wcmljZS1pdGVtLTMtYWx0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiNTkxNTI7IH1cbiAgICAucHJpY2luZyAucHJpY2UtaXRlbSAucHJpY2UtaXRlbS1oZWFkaW5nIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1cHg7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4O1xuICAgICAgcGFkZGluZzogMC41ZW0gMC41ZW0gMDsgfVxuICAgIC5wcmljaW5nIC5wcmljZS1pdGVtIC5wcmljZS1pdGVtLXByaWNlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICMzMjQ2NTU7XG4gICAgICBwYWRkaW5nLXRvcDogMC4zZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC41ZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC40ZW07IH1cbiAgICAucHJpY2luZyAucHJpY2UtaXRlbSB1bC5wcmljZS1pdGVtLWxpc3Qge1xuICAgICAgZm9udC1zaXplOiAwLjdlbTsgfVxuICAgICAgLnByaWNpbmcgLnByaWNlLWl0ZW0gdWwucHJpY2UtaXRlbS1saXN0IGxpLnByaWNlLWl0ZW0tbGlzdC1pdGVtLW9kZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZjA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC4zZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuM2VtOyB9XG4gICAgICAucHJpY2luZyAucHJpY2UtaXRlbSB1bC5wcmljZS1pdGVtLWxpc3QgbGkucHJpY2UtaXRlbS1saXN0LWl0ZW0tZXZlbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkYWRhZTA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC4zZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuM2VtOyB9XG4gICAgLnByaWNpbmcgLnByaWNlLWl0ZW0gLnByaWNlLWl0ZW0tY3RhIHtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XG4gICAgICBwYWRkaW5nOiAwLjVlbTsgfVxuICAgIC5wcmljaW5nIC5wcmljZS1pdGVtIGEuYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07IH1cblxuI3NlY3Rpb24tc2hvd2Nhc2Uge1xuICBwYWRkaW5nOiA2ZW0gMCA0ZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAjc2VjdGlvbi1zaG93Y2FzZSB7XG4gICAgICBwYWRkaW5nOiAyZW0gMDsgfSB9XG5cbi5zaG93Y2FzZSB7XG4gIHBhZGRpbmc6IDFlbSAwIDVlbTsgfVxuICAuc2hvd2Nhc2UgLnNwbGl0IHtcbiAgICBtYXJnaW46IDVlbSAwIDAgMDsgfVxuICAgIC5zaG93Y2FzZSAuc3BsaXQ6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgLnNob3djYXNlIC5zcGxpdCAuc3BsaXQtbGVmdCxcbiAgICAuc2hvd2Nhc2UgLnNwbGl0IC5zcGxpdC1yaWdodCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgIHdpZHRoOiA0OC44MjExNyU7XG4gICAgICBjb2xvcjogI2VkZWRmMDsgfVxuICAgICAgLnNob3djYXNlIC5zcGxpdCAuc3BsaXQtbGVmdDpsYXN0LWNoaWxkLFxuICAgICAgLnNob3djYXNlIC5zcGxpdCAuc3BsaXQtcmlnaHQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAgICAgLnNob3djYXNlIC5zcGxpdCAuc3BsaXQtbGVmdCxcbiAgICAgICAgLnNob3djYXNlIC5zcGxpdCAuc3BsaXQtcmlnaHQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMWVtIDNlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgICAgIC5zaG93Y2FzZSAuc3BsaXQgLnNwbGl0LWxlZnQ6bGFzdC1jaGlsZCxcbiAgICAgICAgICAuc2hvd2Nhc2UgLnNwbGl0IC5zcGxpdC1yaWdodDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMGVtKSB7XG4gICAgICAgIC5zaG93Y2FzZSAuc3BsaXQgLnNwbGl0LWxlZnQsXG4gICAgICAgIC5zaG93Y2FzZSAuc3BsaXQgLnNwbGl0LXJpZ2h0IHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4OyB9IH1cbiAgICAgIC5zaG93Y2FzZSAuc3BsaXQgLnNwbGl0LWxlZnQgaDEsXG4gICAgICAuc2hvd2Nhc2UgLnNwbGl0IC5zcGxpdC1yaWdodCBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi42ZW07XG4gICAgICAgIG1hcmdpbjogMCAwIDAuM2VtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgICAgLnNob3djYXNlIC5zcGxpdCAuc3BsaXQtbGVmdCBwLmJ1dHRvbnMsXG4gICAgICAuc2hvd2Nhc2UgLnNwbGl0IC5zcGxpdC1yaWdodCBwLmJ1dHRvbnMge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAgICAgICAuc2hvd2Nhc2UgLnNwbGl0IC5zcGxpdC1sZWZ0IHAuYnV0dG9ucyxcbiAgICAgICAgICAuc2hvd2Nhc2UgLnNwbGl0IC5zcGxpdC1yaWdodCBwLmJ1dHRvbnMge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS41ZW07IH0gfVxuICAgIC5zaG93Y2FzZSAuc3BsaXQgLnNwbGl0LWxlZnQuZmxvYXQtcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NC4zNzVlbSkge1xuICAgICAgICAuc2hvd2Nhc2UgLnNwbGl0IC5zcGxpdC1sZWZ0LmZsb2F0LXJpZ2h0LnNwbGl0LXRleHQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS41ZW07IH0gfVxuICAgIC5zaG93Y2FzZSAuc3BsaXQgLnNwbGl0LXJpZ2h0LmZsb2F0LWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAuc2hvd2Nhc2UgLnNwbGl0IC5zcGxpdC1tZWRpYSAjc2hvd2Nhc2Utc2xpZGVyIC5pdGVtIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgY3Vyc29yOiBtb3ZlOyB9XG4gICAgLnNob3djYXNlIC5zcGxpdCAuaW1nIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgICAgd2lkdGg6IDIzLjIzMTc2JTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFlbTsgfVxuICAgICAgLnNob3djYXNlIC5zcGxpdCAuaW1nOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5zaG93Y2FzZSAuc3BsaXQgLmltZzpudGgtY2hpbGQoNW4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAuc2hvd2Nhc2UgLnNwbGl0IC5pbWc6bnRoLWNoaWxkKDVuKzEpIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7IH1cblxuLnNob3djYXNlLmdyYXkge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyOyB9XG5cbnNlY3Rpb24ucXVvdGUge1xuICBwYWRkaW5nOiAzZW0gMC4yNWVtOyB9XG4gIHNlY3Rpb24ucXVvdGUgYmxvY2txdW90ZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBjb2xvcjogI2JkZjRlYjtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgc2VjdGlvbi5xdW90ZSBibG9ja3F1b3RlIGNpdGUge1xuICAgICAgcGFkZGluZy10b3A6IDFlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAjYmRmNGViOyB9XG5cbnNlY3Rpb24udGlja2VyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA0LjRlbSAwLjI1ZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICBzZWN0aW9uLnRpY2tlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgc2VjdGlvbi50aWNrZXIgaDEge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LWZhbWlseTogXCJTaGFyZSBUZWNoIE1vbm9cIiwgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XG4gICAgbWFyZ2luOiAwOyB9XG4gIHNlY3Rpb24udGlja2VyIC50aWNrZXIge1xuICAgIHBhZGRpbmctbGVmdDogMC4yZW07XG4gICAgY29sb3I6ICMzMjQ2NTU7IH1cblxuI3NlY3Rpb24tY29udGFjdCB7XG4gIHBhZGRpbmc6IDllbSAwIDNlbTtcbiAgY29sb3I6ICNlZGVkZjA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMjQ2NTU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAjc2VjdGlvbi1jb250YWN0IHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICAjc2VjdGlvbi1jb250YWN0IHAge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuLmNvbnRhY3QgLnRpdGxlIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NC4zNzVlbSkge1xuICAgIC5jb250YWN0IC50aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAuY29udGFjdCAudGl0bGUgaDIge1xuICAgIHBhZGRpbmctYm90dG9tOiAuNGVtOyB9XG5cbi5jb250YWN0IC5mb3JtOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTsgfVxuXG4uY29udGFjdCAuZm9ybSAuZm9ybS1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogNDguODIxMTclO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjY1ZW07XG4gIGZvbnQtc2l6ZTogMS40ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzZW07IH1cbiAgLmNvbnRhY3QgLmZvcm0gLmZvcm0tbGVmdDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAuY29udGFjdCAuZm9ybSAuZm9ybS1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDUlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAuY29udGFjdCAuZm9ybSAuZm9ybS1sZWZ0Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgICAuY29udGFjdCAuZm9ybSAuZm9ybS1sZWZ0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07IH0gfVxuXG4uY29udGFjdCAuZm9ybSAuZm9ybS1yaWdodCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDQ4LjgyMTE3JTsgfVxuICAuY29udGFjdCAuZm9ybSAuZm9ybS1yaWdodDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTQuMzc1ZW0pIHtcbiAgICAuY29udGFjdCAuZm9ybSAuZm9ybS1yaWdodCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMCA1JTsgfVxuICAgICAgLmNvbnRhY3QgLmZvcm0gLmZvcm0tcmlnaHQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5jb250YWN0IC5mb3JtIGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY29udGFjdCAuZm9ybSBpbnB1dCB7XG4gIGhlaWdodDogM2VtO1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIHBhZGRpbmc6IDAgMWVtOyB9XG5cbi5jb250YWN0IC5mb3JtIHRleHRhcmVhIHtcbiAgcGFkZGluZzogMWVtO1xuICBoZWlnaHQ6IDEyZW07IH1cblxuLmNvbnRhY3QgcC5zdWJtaXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jb250YWN0IHAuc3VibWl0IGlucHV0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjI1MDIyO1xuICAgIHdpZHRoOiAxNjBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5jb250YWN0IHAuc3VibWl0IGlucHV0OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmMzYzM2E7IH1cblxuLmNvbnRhY3QgLmZvcm0tZmVlZGJhY2sge1xuICBwYWRkaW5nOiAxZW0gMmVtO1xuICBjb2xvcjogd2hpdGU7IH1cblxuLmNvbnRhY3QgLmZvcm0tZmVlZGJhY2suZm9ybS1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJlY2M3MTsgfVxuXG4uY29udGFjdCAuZm9ybS1mZWVkYmFjay5mb3JtLWVycm9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U3NGMzYzsgfVxuXG4uY29udGFjdCAjY29udGFjdC1lcnJvciB7XG4gIG1hcmdpbjogMCAyMCUgMmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAgIC5jb250YWN0ICNjb250YWN0LWVycm9yIHtcbiAgICAgIG1hcmdpbjogMCA1JSAyZW07IH0gfVxuXG4jc2VjdGlvbi1zb2NpYWwtY29udGFjdHMge1xuICBwYWRkaW5nOiAzLjM1ZW0gMDsgfVxuXG4uc29jaWFsLWNvbnRhY3RzIHtcbiAgY29sb3I6ICNlZGVkZjA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMWM0YWI7XG4gIGZvbnQtZmFtaWx5OiBcIkNvZGFcIiwgY3Vyc2l2ZTsgfVxuICAuc29jaWFsLWNvbnRhY3RzIHAge1xuICAgIGZvbnQtc2l6ZTogMS43ZW07XG4gICAgY29sb3I6ICNiZGY0ZWI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZm9vdGVyLmZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJkMmQyZDtcbiAgei1pbmRleDogLTEwMDsgfVxuICBmb290ZXIuZm9vdGVyIHAuY29weXJpZ2h0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgIHdpZHRoOiA2NS44ODA3OCU7XG4gICAgcGFkZGluZzogMmVtIDA7XG4gICAgY29sb3I6ICNiZmJmYmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3LjVlbSkge1xuICAgICAgZm9vdGVyLmZvb3RlciBwLmNvcHlyaWdodCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMmVtIDAgMDsgfVxuICAgICAgICBmb290ZXIuZm9vdGVyIHAuY29weXJpZ2h0Omxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgZm9vdGVyLmZvb3RlciBwLmNvcHlyaWdodDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICBmb290ZXIuZm9vdGVyIHVsLnNvY2lhbCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogMzEuNzYxNTclO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW46IDJlbSBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gICAgICBmb290ZXIuZm9vdGVyIHVsLnNvY2lhbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICBmb290ZXIuZm9vdGVyIHVsLnNvY2lhbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIGZvb3Rlci5mb290ZXIgdWwuc29jaWFsOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgZm9vdGVyLmZvb3RlciB1bC5zb2NpYWwgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGNvbG9yOiAjY2NjY2NjO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7IH1cbiAgICAgIGZvb3Rlci5mb290ZXIgdWwuc29jaWFsIGxpIGEge1xuICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAxLjJlbTtcbiAgICAgICAgY29sb3I6ICNjY2NjY2M7IH1cbiAgICAgICAgZm9vdGVyLmZvb3RlciB1bC5zb2NpYWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICMyMWM0YWI7IH1cbiIsIi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvIFxuICAgdjIuMCB8IDIwMTEwMTI2XG4gICBMaWNlbnNlOiBub25lIChwdWJsaWMgZG9tYWluKVxuKi9cblxuaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLFxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxuYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLFxuZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLFxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcbmIsIHUsIGksIGNlbnRlcixcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsIFxuZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IDA7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0Zm9udDogaW5oZXJpdDtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgXG5mb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbmJvZHkge1xuXHRsaW5lLWhlaWdodDogMTtcbn1cbm9sLCB1bCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5ibG9ja3F1b3RlLCBxIHtcblx0cXVvdGVzOiBub25lO1xufVxuYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIsXG5xOmJlZm9yZSwgcTphZnRlciB7XG5cdGNvbnRlbnQ6ICcnO1xuXHRjb250ZW50OiBub25lO1xufVxudGFibGUge1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRib3JkZXItc3BhY2luZzogMDtcbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpZiAkYm9yZGVyLWJveC1zaXppbmcgPT0gdHJ1ZSB7XG4gIGh0bWwgeyAvLyBodHRwOi8vYml0Lmx5LzFxazJ0VlJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgKiB7XG4gICAgJixcbiAgICAmOjphZnRlcixcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cbiIsImEuYnV0dG9uLFxuYnV0dG9uLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhY3Rpb24tY29sb3I7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6ICRzbWFsbC1zcGFjaW5nICRiYXNlLXNwYWNpbmc7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkYmFzZS1kdXJhdGlvbiAkYmFzZS10aW1pbmc7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNoYWRlKCRhY3Rpb24tY29sb3IsIDIwJSk7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIG9wYWNpdHk6IDAuNTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFjdGlvbi1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnRzXG4kc21hbGwtc2NyZWVuOiBlbSg0ODApO1xuJG1lZGl1bS1zY3JlZW46IGVtKDYwMCk7XG4kbGFyZ2Utc2NyZWVuOiBlbSg4NzApO1xuXG4kc21hbGwtc2NyZWVuLXVwOiBuZXctYnJlYWtwb2ludChtaW4td2lkdGggJHNtYWxsLXNjcmVlbiAxMik7XG4kbWVkaXVtLXNjcmVlbi11cDogbmV3LWJyZWFrcG9pbnQobWluLXdpZHRoICRtZWRpdW0tc2NyZWVuIDEyKTtcbiRsYXJnZS1zY3JlZW4tdXA6IG5ldy1icmVha3BvaW50KG1pbi13aWR0aCAkbGFyZ2Utc2NyZWVuIDEyKTtcblxuJGxhcmdlLXNjcmVlbi1kb3duOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggJGxhcmdlLXNjcmVlbiAxMik7XG4kbWVkaXVtLXNjcmVlbi1kb3duOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggJG1lZGl1bS1zY3JlZW4gMTIpO1xuJHNtYWxsLXNjcmVlbi1kb3duOiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggJHNtYWxsLXNjcmVlbiAxMik7XG5cbi8vIFR5cG9ncmFwaHlcbiRzYW5zLXNlcmlmOiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4kc2VyaWY6ICdSb2JvdG8gU2xhYicsIHNlcmlmO1xuJG1vbm9zcGFjZTogJ1NoYXJlIFRlY2ggTW9ubycsIG1vbm9zcGFjZTtcbiRjdXJzaXZlOiAnQ29kYScsIGN1cnNpdmU7XG4kYmFzZS1mb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG4kaGVhZGluZy1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG5cbi8vIEZvbnQgU2l6ZXNcbiRiYXNlLWZvbnQtc2l6ZTogMWVtO1xuJGJhc2UtbGluZS1oZWlnaHQ6ICRiYXNlLWZvbnQtc2l6ZSAqIDEuNTtcbiR1bml0bGVzcy1saW5lLWhlaWdodDogJGJhc2UtbGluZS1oZWlnaHQgLyAoJGJhc2UtbGluZS1oZWlnaHQgKiAwICsgMSk7IC8vIFN0cmlwIHVuaXRzIGZyb20gbGluZS1oZWlnaHQ6IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9saW5lLWhlaWdodCNQcmVmZXJfdW5pdGxlc3NfbnVtYmVyc19mb3JfbGluZS1oZWlnaHRfdmFsdWVzXG4kaGVhZGluZy1saW5lLWhlaWdodDogJGJhc2UtZm9udC1zaXplICogMS4yNTtcbiRiYXNlLWJvcmRlci1yYWRpdXM6IGVtKDMpO1xuXG4vLyBPdGhlciBTaXplc1xuJGJhc2UtYm9yZGVyLXJhZGl1czogM3B4O1xuJGJhc2Utc3BhY2luZzogJGJhc2UtbGluZS1oZWlnaHQgKiAxO1xuJHNtYWxsLXNwYWNpbmc6ICRiYXNlLXNwYWNpbmcgLyAyO1xuJGJhc2Utei1pbmRleDogMDtcblxuLy8gQ29sb3JzXG4kaGlnaGxpZ2h0OiAgIzIxYzRhYjsgLy8gREFQXG4kaGlnaGxpZ2h0MjogI2YyNTAyMjsgLy8gREFQXG4kaGlnaGxpZ2h0MzogI2ZmYzkyOTsgLy8gREFQXG4kaGlnaGxpZ2h0NDogIzk1OTQ4ZjsgLy8gREFQXG4kaGlnaGxpZ2h0NTogIzkwYjFjODsgLy8gREFQXG4kaGlnaGxpZ2h0NjogIzNlNjc4NDsgLy8gREFQXG4kYmx1ZTogIzQ3N0RDQTtcbiRkYXJrLWdyYXk6ICMzMzM7XG4kbWVkaXVtLWdyYXk6ICM5OTk7XG4kbGlnaHQtZ3JheTogI0RERDtcbiRsaWdodC1yZWQ6ICNGQkUzRTQ7XG4kbGlnaHQteWVsbG93OiAjRkZGNkJGO1xuJGxpZ2h0LWdyZWVuOiAjRTZFRkMyO1xuJGxpZ2h0OiAjZWRlZGYwO1xuXG4vLyBGb250IENvbG9yc1xuJGJhc2UtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJGJhc2UtYWNjZW50LWNvbG9yOiAkaGlnaGxpZ2h0MjtcbiRhY3Rpb24tY29sb3I6ICRiYXNlLWFjY2VudC1jb2xvcjtcblxuLy8gTGluayBDb2xvcnNcbiRiYXNlLWxpbmstY29sb3I6ICRiYXNlLWFjY2VudC1jb2xvcjtcbiRob3Zlci1saW5rLWNvbG9yOiBkYXJrZW4oJGJhc2UtYWNjZW50LWNvbG9yLCAxNSk7XG4kYmFzZS1idXR0b24tY29sb3I6ICRiYXNlLWxpbmstY29sb3I7XG4kaG92ZXItYnV0dG9uLWNvbG9yOiAkaG92ZXItbGluay1jb2xvcjtcblxuLy8gQm9yZGVyXG4kYmFzZS1ib3JkZXItY29sb3I6ICRsaWdodC1ncmF5O1xuJGJhc2UtYm9yZGVyOiAxcHggc29saWQgJGJhc2UtYm9yZGVyLWNvbG9yO1xuXG4vLyBCYWNrZ3JvdW5kIENvbG9yc1xuJGJhc2UtYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiRzZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvcjogdGludCgkYmFzZS1ib3JkZXItY29sb3IsIDc1JSk7XG5cbi8vIEZvcm1zXG4kZm9ybS1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggcmdiYSgjMDAwLCAwLjA2KTtcbiRmb3JtLWJveC1zaGFkb3ctZm9jdXM6ICRmb3JtLWJveC1zaGFkb3csIDAgMCA1cHggYWRqdXN0LWNvbG9yKCRhY3Rpb24tY29sb3IsICRsaWdodG5lc3M6IC01JSwgJGFscGhhOiAtMC4zKTtcblxuLy8gQW5pbWF0aW9uc1xuJGJhc2UtZHVyYXRpb246IDE1MG1zO1xuJGJhc2UtdGltaW5nOiBlYXNlOyIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE1peGVzIGEgY29sb3Igd2l0aCBibGFjay5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvclxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFBlcmNlbnRhZ2UpfSAkcGVyY2VudFxuLy8vICAgVGhlIGFtb3VudCBvZiBibGFjayB0byBiZSBtaXhlZCBpbi5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzaGFkZSgjZmZiYjUyLCA2MCUpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY0YTIwO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJldHVybiB7Q29sb3J9XG5cbkBmdW5jdGlvbiBzaGFkZSgkY29sb3IsICRwZXJjZW50KSB7XG4gIEByZXR1cm4gbWl4KCMwMDAsICRjb2xvciwgJHBlcmNlbnQpO1xufVxuIiwiZmllbGRzZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206ICRzbWFsbC1zcGFjaW5nIC8gMjtcbiAgcGFkZGluZzogMDtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogJHNtYWxsLXNwYWNpbmcgLyAyO1xufVxuXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG59XG5cbiN7JGFsbC10ZXh0LWlucHV0c30sXG5zZWxlY3RbbXVsdGlwbGVdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtYmFja2dyb3VuZC1jb2xvcjtcbiAgYm9yZGVyOiAkYmFzZS1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRiYXNlLWJvcmRlci1yYWRpdXM7XG4gIGJveC1zaGFkb3c6ICRmb3JtLWJveC1zaGFkb3c7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbi1ib3R0b206ICRzbWFsbC1zcGFjaW5nO1xuICBwYWRkaW5nOiAkYmFzZS1zcGFjaW5nIC8gMztcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICRiYXNlLWR1cmF0aW9uICRiYXNlLXRpbWluZztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiBzaGFkZSgkYmFzZS1ib3JkZXItY29sb3IsIDIwJSk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRhY3Rpb24tY29sb3I7XG4gICAgYm94LXNoYWRvdzogJGZvcm0tYm94LXNoYWRvdy1mb2N1cztcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2hhZGUoJGJhc2UtYmFja2dyb3VuZC1jb2xvciwgNSUpO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlcjogJGJhc2UtYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1hcmdpbi1yaWdodDogJHNtYWxsLXNwYWNpbmcgLyAyO1xufVxuXG5bdHlwZT1cImZpbGVcIl0ge1xuICBtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnNlbGVjdCB7XG4gIG1hcmdpbi1ib3R0b206ICRzbWFsbC1zcGFjaW5nO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiBhdXRvO1xufVxuIiwiaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG4iLCJ1bCxcbm9sIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmRsIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbjogMDtcbn1cblxuZGQge1xuICBtYXJnaW46IDA7XG59XG4iLCJmaWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbmltZyxcbnBpY3R1cmUge1xuICBtYXJnaW46IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbiIsInRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWFyZ2luOiAkc21hbGwtc3BhY2luZyAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbn1cblxudGgge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgc2hhZGUoJGJhc2UtYm9yZGVyLWNvbG9yLCAyNSUpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAkc21hbGwtc3BhY2luZyAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50ZCB7XG4gIGJvcmRlci1ib3R0b206ICRiYXNlLWJvcmRlcjtcbiAgcGFkZGluZzogJHNtYWxsLXNwYWNpbmcgMDtcbn1cblxudHIsXG50ZCxcbnRoIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbiIsImJvZHkge1xuICBjb2xvcjogJGJhc2UtZm9udC1jb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1vZHVsYXItc2NhbGUoMSk7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1saW5lLWhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJHNtYWxsLXNwYWNpbmc7XG59XG5cbnAge1xuICBtYXJnaW46IDAgMCAkc21hbGwtc3BhY2luZztcbn1cblxuYSB7XG4gIGNvbG9yOiAkYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yICRiYXNlLWR1cmF0aW9uICRiYXNlLXRpbWluZztcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHNoYWRlKCRhY3Rpb24tY29sb3IsIDI1JSk7XG4gIH1cbn1cblxuaHIge1xuICBib3JkZXItYm90dG9tOiAkYmFzZS1ib3JkZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIG1hcmdpbjogJGJhc2Utc3BhY2luZyAwO1xufVxuXG5pbWcge1xuICBtYXJnaW46IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGJhc2UtYm9yZGVyLWNvbG9yO1xuICBjb2xvcjogbGlnaHRlbigkYmFzZS1mb250LWNvbG9yLCAxNSk7XG4gIG1hcmdpbjogJGJhc2UtbGluZS1oZWlnaHQgMDtcbiAgcGFkZGluZy1sZWZ0OiAkYmFzZS1saW5lLWhlaWdodCAvIDI7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbn1cblxuY2l0ZSB7XG4gIGNvbG9yOiBsaWdodGVuKCRiYXNlLWZvbnQtY29sb3IsIDI1KTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDE0IFxcMDBBMCc7XG4gIH1cbn0iLCIvLyBTY2FsaW5nIFZhcmlhYmxlc1xuJGdvbGRlbjogICAgICAgICAgIDEuNjE4O1xuJG1pbm9yLXNlY29uZDogICAgIDEuMDY3O1xuJG1ham9yLXNlY29uZDogICAgIDEuMTI1O1xuJG1pbm9yLXRoaXJkOiAgICAgIDEuMjtcbiRtYWpvci10aGlyZDogICAgICAxLjI1O1xuJHBlcmZlY3QtZm91cnRoOiAgIDEuMzMzO1xuJGF1Z21lbnRlZC1mb3VydGg6IDEuNDE0O1xuJHBlcmZlY3QtZmlmdGg6ICAgIDEuNTtcbiRtaW5vci1zaXh0aDogICAgICAxLjY7XG4kbWFqb3Itc2l4dGg6ICAgICAgMS42Njc7XG4kbWlub3Itc2V2ZW50aDogICAgMS43Nzg7XG4kbWFqb3Itc2V2ZW50aDogICAgMS44NzU7XG4kb2N0YXZlOiAgICAgICAgICAgMjtcbiRtYWpvci10ZW50aDogICAgICAyLjU7XG4kbWFqb3ItZWxldmVudGg6ICAgMi42Njc7XG4kbWFqb3ItdHdlbGZ0aDogICAgMztcbiRkb3VibGUtb2N0YXZlOiAgICA0O1xuXG4kbW9kdWxhci1zY2FsZS1yYXRpbzogJHBlcmZlY3QtZm91cnRoICFkZWZhdWx0O1xuJG1vZHVsYXItc2NhbGUtYmFzZTogZW0oJGVtLWJhc2UpICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gbW9kdWxhci1zY2FsZSgkaW5jcmVtZW50LCAkdmFsdWU6ICRtb2R1bGFyLXNjYWxlLWJhc2UsICRyYXRpbzogJG1vZHVsYXItc2NhbGUtcmF0aW8pIHtcbiAgJHYxOiBudGgoJHZhbHVlLCAxKTtcbiAgJHYyOiBudGgoJHZhbHVlLCBsZW5ndGgoJHZhbHVlKSk7XG4gICR2YWx1ZTogJHYxO1xuXG4gIC8vIHNjYWxlICR2MiB0byBqdXN0IGFib3ZlICR2MVxuICBAd2hpbGUgJHYyID4gJHYxIHtcbiAgICAkdjI6ICgkdjIgLyAkcmF0aW8pOyAvLyB3aWxsIGJlIG9mZi1ieS0xXG4gIH1cbiAgQHdoaWxlICR2MiA8ICR2MSB7XG4gICAgJHYyOiAoJHYyICogJHJhdGlvKTsgLy8gd2lsbCBmaXggb2ZmLWJ5LTFcbiAgfVxuXG4gIC8vIGNoZWNrIEFGVEVSIHNjYWxpbmcgJHYyIHRvIHByZXZlbnQgZG91YmxlLWNvdW50aW5nIGNvcm5lci1jYXNlXG4gICRkb3VibGUtc3RyYW5kZWQ6ICR2MiA+ICR2MTtcblxuICBAaWYgJGluY3JlbWVudCA+IDAge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGluY3JlbWVudCB7XG4gICAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCBhbmQgKCR2MSAqICRyYXRpbykgPiAkdjIge1xuICAgICAgICAkdmFsdWU6ICR2MjtcbiAgICAgICAgJHYyOiAoJHYyICogJHJhdGlvKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkdjE6ICgkdjEgKiAkcmF0aW8pO1xuICAgICAgICAkdmFsdWU6ICR2MTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJGluY3JlbWVudCA8IDAge1xuICAgIC8vIGFkanVzdCAkdjIgdG8ganVzdCBiZWxvdyAkdjFcbiAgICBAaWYgJGRvdWJsZS1zdHJhbmRlZCB7XG4gICAgICAkdjI6ICgkdjIgLyAkcmF0aW8pO1xuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAkaW5jcmVtZW50IHRocm91Z2ggLTEge1xuICAgICAgQGlmICRkb3VibGUtc3RyYW5kZWQgYW5kICgkdjEgLyAkcmF0aW8pIDwgJHYyIHtcbiAgICAgICAgJHZhbHVlOiAkdjI7XG4gICAgICAgICR2MjogKCR2MiAvICRyYXRpbyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJHYxOiAoJHYxIC8gJHJhdGlvKTtcbiAgICAgICAgJHZhbHVlOiAkdjE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvKiBcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtaW4ge1xuICB6LWluZGV4OiAwO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dCB7XG4gIHotaW5kZXg6IDE7XG59XG4ub3dsLWNhcm91c2VsIC5mYWRlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLyogXG4gKiBcdE93bCBDYXJvdXNlbCAtIEF1dG8gSGVpZ2h0IFBsdWdpblxuICovXG4ub3dsLWhlaWdodCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbiAgLW1zLXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG5cbi8qIFxuICogIENvcmUgT3dsIENhcm91c2VsIENTUyBGaWxlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4tWTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogZml4IGZvciBmbGFzaGluZyBiYWNrZ3JvdW5kICovXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1jb250cm9scyAub3dsLW5hdiAub3dsLXByZXYsXG4ub3dsLWNhcm91c2VsIC5vd2wtY29udHJvbHMgLm93bC1uYXYgLm93bC1uZXh0LFxuLm93bC1jYXJvdXNlbCAub3dsLWNvbnRyb2xzIC5vd2wtZG90IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gIG9wYWNpdHk6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtaGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBmbG9hdDogbGVmdDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtdGV4dC1zZWxlY3Qtb24gLm93bC1pdGVtIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogYXV0bztcbiAgLW1vei11c2VyLXNlbGVjdDogYXV0bztcbiAgLW1zLXVzZXItc2VsZWN0OiBhdXRvO1xuICB1c2VyLXNlbGVjdDogYXV0bztcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1ncmFiIHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiAtby1ncmFiO1xuICBjdXJzb3I6IC1tcy1ncmFiO1xuICBjdXJzb3I6IGdyYWI7XG59XG4ub3dsLWNhcm91c2VsLm93bC1ydGwge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qIE5vIEpzICovXG4ubm8tanMgLm93bC1jYXJvdXNlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBcbiAqIFx0T3dsIENhcm91c2VsIC0gTGF6eSBMb2FkIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLyogXG4gKiBcdE93bCBDYXJvdXNlbCAtIFZpZGVvIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogODBweDtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwib3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBzY2FsZSAxMDBtcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiBzY2FsZSAxMDBtcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBzY2FsZSAxMDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBzY2FsZSAxMDBtcyBlYXNlO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogc2NhbGUoMS4zLCAxLjMpO1xuICAtbW96LXRyYW5zaXRpb246IHNjYWxlKDEuMywgMS4zKTtcbiAgLW1zLXRyYW5zaXRpb246IHNjYWxlKDEuMywgMS4zKTtcbiAgLW8tdHJhbnNpdGlvbjogc2NhbGUoMS4zLCAxLjMpO1xuICB0cmFuc2l0aW9uOiBzY2FsZSgxLjMsIDEuMyk7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRuIHtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIC1vLWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG5cbi8qXG4gKiBqUXVlcnkgRmxleFNsaWRlciB2Mi4yLjBcbiAqIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9mbGV4c2xpZGVyL1xuICpcbiAqIENvcHlyaWdodCAyMDEyIFdvb1RoZW1lc1xuICogRnJlZSB0byB1c2UgdW5kZXIgdGhlIEdQTHYyIGxpY2Vuc2UuXG4gKiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXG4gKlxuICogQ29udHJpYnV0aW5nIGF1dGhvcjogVHlsZXIgU21pdGggKEBtYm11ZmZmaW4pXG4gKi9cblxuXG4vKiBCcm93c2VyIFJlc2V0c1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmZsZXgtY29udGFpbmVyIGE6YWN0aXZlLFxuLmZsZXhzbGlkZXIgYTphY3RpdmUsXG4uZmxleC1jb250YWluZXIgYTpmb2N1cyxcbi5mbGV4c2xpZGVyIGE6Zm9jdXMgIHtvdXRsaW5lOiBub25lO31cbi5zbGlkZXMsXG4uZmxleC1jb250cm9sLW5hdixcbi5mbGV4LWRpcmVjdGlvbi1uYXYge21hcmdpbjogMDsgcGFkZGluZzogMDsgbGlzdC1zdHlsZTogbm9uZTt9XG5cbi8qIEljb24gRm9udHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEZvbnQtZmFjZSBJY29ucyAqL1xuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnZmxleHNsaWRlci1pY29uJztcblx0c3JjOnVybCgnZm9udHMvZmxleHNsaWRlci1pY29uLmVvdCcpO1xuXHRzcmM6dXJsKCdmb250cy9mbGV4c2xpZGVyLWljb24uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcblx0XHR1cmwoJ2ZvbnRzL2ZsZXhzbGlkZXItaWNvbi53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG5cdFx0dXJsKCdmb250cy9mbGV4c2xpZGVyLWljb24udHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuXHRcdHVybCgnZm9udHMvZmxleHNsaWRlci1pY29uLnN2ZyNmbGV4c2xpZGVyLWljb24nKSBmb3JtYXQoJ3N2ZycpO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qIEZsZXhTbGlkZXIgTmVjZXNzYXJ5IFN0eWxlc1xuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmZsZXhzbGlkZXIge21hcmdpbjogMDsgcGFkZGluZzogMDt9XG4uZmxleHNsaWRlciAuc2xpZGVzID4gbGkge2Rpc3BsYXk6IG5vbmU7IC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO30gLyogSGlkZSB0aGUgc2xpZGVzIGJlZm9yZSB0aGUgSlMgaXMgbG9hZGVkLiBBdm9pZHMgaW1hZ2UganVtcGluZyAqL1xuLmZsZXhzbGlkZXIgLnNsaWRlcyBpbWcge3dpZHRoOiAxMDAlOyBkaXNwbGF5OiBibG9jazt9XG4uZmxleC1wYXVzZXBsYXkgc3BhbiB7dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7fVxuXG4vKiBDbGVhcmZpeCBmb3IgdGhlIC5zbGlkZXMgZWxlbWVudCAqL1xuLnNsaWRlczphZnRlciB7Y29udGVudDogXCJcXDAwMjBcIjsgZGlzcGxheTogYmxvY2s7IGNsZWFyOiBib3RoOyB2aXNpYmlsaXR5OiBoaWRkZW47IGxpbmUtaGVpZ2h0OiAwOyBoZWlnaHQ6IDA7fVxuaHRtbFt4bWxuc10gLnNsaWRlcyB7ZGlzcGxheTogYmxvY2s7fVxuKiBodG1sIC5zbGlkZXMge2hlaWdodDogMSU7fVxuXG4vKiBObyBKYXZhU2NyaXB0IEZhbGxiYWNrICovXG4vKiBJZiB5b3UgYXJlIG5vdCB1c2luZyBhbm90aGVyIHNjcmlwdCwgc3VjaCBhcyBNb2Rlcm5penIsIG1ha2Ugc3VyZSB5b3VcbiAqIGluY2x1ZGUganMgdGhhdCBlbGltaW5hdGVzIHRoaXMgY2xhc3Mgb24gcGFnZSBsb2FkICovXG4ubm8tanMgLnNsaWRlcyA+IGxpOmZpcnN0LWNoaWxkIHtkaXNwbGF5OiBibG9jazt9XG5cbi8qIEZsZXhTbGlkZXIgRGVmYXVsdCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmZsZXhzbGlkZXIgeyBtYXJnaW46IDAgMCA2MHB4OyBwb3NpdGlvbjogcmVsYXRpdmU7IHpvb206IDE7IH1cbi5mbGV4LXZpZXdwb3J0IHsgbWF4LWhlaWdodDogMjAwMHB4OyAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlOyAtbW96LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlOyAtby10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTsgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7IH1cbi5sb2FkaW5nIC5mbGV4LXZpZXdwb3J0IHsgbWF4LWhlaWdodDogMzAwcHg7IH1cbi5mbGV4c2xpZGVyIC5zbGlkZXMgeyB6b29tOiAxOyB9XG4uY2Fyb3VzZWwgbGkgeyBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG4vKiBEaXJlY3Rpb24gTmF2ICovXG4uZmxleC1kaXJlY3Rpb24tbmF2IHsqaGVpZ2h0OiAwO31cbi5mbGV4LWRpcmVjdGlvbi1uYXYgYSAgeyB0ZXh0LWRlY29yYXRpb246bm9uZTsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7IG1hcmdpbjogLTIwcHggMCAwOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyB6LWluZGV4OiAxMDsgb3ZlcmZsb3c6IGhpZGRlbjsgb3BhY2l0eTogMDsgY3Vyc29yOiBwb2ludGVyOyBjb2xvcjogcmdiYSgwLDAsMCwwLjgpOyB0ZXh0LXNoYWRvdzogMXB4IDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsMC4zKTsgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7IC1tb3otdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOyB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7IH1cbi5mbGV4LWRpcmVjdGlvbi1uYXYgLmZsZXgtcHJldiB7IGxlZnQ6IC01MHB4OyB9XG4uZmxleC1kaXJlY3Rpb24tbmF2IC5mbGV4LW5leHQgeyByaWdodDogLTUwcHg7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4uZmxleHNsaWRlcjpob3ZlciAuZmxleC1wcmV2IHsgb3BhY2l0eTogMC43OyBsZWZ0OiAxMHB4OyB9XG4uZmxleHNsaWRlcjpob3ZlciAuZmxleC1uZXh0IHsgb3BhY2l0eTogMC43OyByaWdodDogMTBweDsgfVxuLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtbmV4dDpob3ZlciwgLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtcHJldjpob3ZlciB7IG9wYWNpdHk6IDE7IH1cbi5mbGV4LWRpcmVjdGlvbi1uYXYgLmZsZXgtZGlzYWJsZWQgeyBvcGFjaXR5OiAwIWltcG9ydGFudDsgZmlsdGVyOmFscGhhKG9wYWNpdHk9MCk7IGN1cnNvcjogZGVmYXVsdDsgfVxuLmZsZXgtZGlyZWN0aW9uLW5hdiBhOmJlZm9yZSAgeyBmb250LWZhbWlseTogXCJmbGV4c2xpZGVyLWljb25cIjsgZm9udC1zaXplOiA0MHB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbnRlbnQ6ICdcXGYwMDEnOyB9XG4uZmxleC1kaXJlY3Rpb24tbmF2IGEuZmxleC1uZXh0OmJlZm9yZSAgeyBjb250ZW50OiAnXFxmMDAyJzsgfVxuXG4vKiBQYXVzZS9QbGF5ICovXG4uZmxleC1wYXVzZXBsYXkgYSB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogNXB4OyBsZWZ0OiAxMHB4OyBvcGFjaXR5OiAwLjg7IHotaW5kZXg6IDEwOyBvdmVyZmxvdzogaGlkZGVuOyBjdXJzb3I6IHBvaW50ZXI7IGNvbG9yOiAjMDAwOyB9XG4uZmxleC1wYXVzZXBsYXkgYTpiZWZvcmUgIHsgZm9udC1mYW1pbHk6IFwiZmxleHNsaWRlci1pY29uXCI7IGZvbnQtc2l6ZTogMjBweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjb250ZW50OiAnXFxmMDA0JzsgfVxuLmZsZXgtcGF1c2VwbGF5IGE6aG92ZXIgIHsgb3BhY2l0eTogMTsgfVxuLmZsZXgtcGF1c2VwbGF5IGEuZmxleC1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYwMDMnOyB9XG5cbi8qIENvbnRyb2wgTmF2ICovXG4uZmxleC1jb250cm9sLW5hdiB7d2lkdGg6IDEwMCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLmZsZXgtY29udHJvbC1uYXYgbGkge21hcmdpbjogMCA2cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgem9vbTogMTsgKmRpc3BsYXk6IGlubGluZTt9XG4uZmxleC1jb250cm9sLXBhZ2luZyBsaSBhIHt3aWR0aDogMTFweDsgaGVpZ2h0OiAxMXB4OyBkaXNwbGF5OiBibG9jazsgYmFja2dyb3VuZDogIzY2NjsgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjUpOyBjdXJzb3I6IHBvaW50ZXI7IHRleHQtaW5kZW50OiAtOTk5OXB4OyAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwcHg7IC1tb3otYm9yZGVyLXJhZGl1czogMjBweDsgLW8tYm9yZGVyLXJhZGl1czogMjBweDsgYm9yZGVyLXJhZGl1czogMjBweDsgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4IHJnYmEoMCwwLDAsMC4zKTsgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4IHJnYmEoMCwwLDAsMC4zKTsgLW8tYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCByZ2JhKDAsMCwwLDAuMyk7IGJveC1zaGFkb3c6IGluc2V0IDAgMCAzcHggcmdiYSgwLDAsMCwwLjMpOyB9XG4uZmxleC1jb250cm9sLXBhZ2luZyBsaSBhOmhvdmVyIHsgYmFja2dyb3VuZDogIzMzMzsgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjcpOyB9XG4uZmxleC1jb250cm9sLXBhZ2luZyBsaSBhLmZsZXgtYWN0aXZlIHsgYmFja2dyb3VuZDogIzAwMDsgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjkpOyBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLmZsZXgtY29udHJvbC10aHVtYnMge21hcmdpbjogNXB4IDAgMDsgcG9zaXRpb246IHN0YXRpYzsgb3ZlcmZsb3c6IGhpZGRlbjt9XG4uZmxleC1jb250cm9sLXRodW1icyBsaSB7d2lkdGg6IDI1JTsgZmxvYXQ6IGxlZnQ7IG1hcmdpbjogMDt9XG4uZmxleC1jb250cm9sLXRodW1icyBpbWcge3dpZHRoOiAxMDAlOyBkaXNwbGF5OiBibG9jazsgb3BhY2l0eTogLjc7IGN1cnNvcjogcG9pbnRlcjt9XG4uZmxleC1jb250cm9sLXRodW1icyBpbWc6aG92ZXIge29wYWNpdHk6IDE7fVxuLmZsZXgtY29udHJvbC10aHVtYnMgLmZsZXgtYWN0aXZlIHtvcGFjaXR5OiAxOyBjdXJzb3I6IGRlZmF1bHQ7fVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4NjBweCkge1xuICAuZmxleC1kaXJlY3Rpb24tbmF2IC5mbGV4LXByZXYgeyBvcGFjaXR5OiAxOyBsZWZ0OiAxMHB4O31cbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1uZXh0IHsgb3BhY2l0eTogMTsgcmlnaHQ6IDEwcHg7fVxufVxuIiwiLyogXG4gKiBcdERlZmF1bHQgdGhlbWUgLSBPd2wgQ2Fyb3VzZWwgQ1NTIEZpbGVcbiAqL1xuLm93bC10aGVtZSAub3dsLW5hdiB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj0nb3dsLSddIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA0cHggN3B4O1xuICBiYWNrZ3JvdW5kOiAjZDZkNmQ2O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4ub3dsLXRoZW1lIC5vd2wtbmF2IFtjbGFzcyo9J293bC0nXTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM4Njk3OTE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLm93bC10aGVtZSAub3dsLW5hdiAuZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5vd2wtdGhlbWUgLm93bC1uYXYuZGlzYWJsZWQgKyAub3dsLWRvdHMge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuLm93bC10aGVtZSAub3dsLWRvdHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgem9vbTogMTtcbiAgKmRpc3BsYXk6IGlubGluZTtcbn1cbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHNwYW4ge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBtYXJnaW46IDVweCA3cHg7XG4gIGJhY2tncm91bmQ6ICNkNmQ2ZDY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2U7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMzBweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xufVxuLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4sIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90OmhvdmVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiAjODY5NzkxO1xufSIsIi8qIERBUCBzdHVmZiAqL1xuJG91cmRhcms6ICMyZDJkMmQ7XG4kb3VybWlkOiAgIzMyNDY1NTtcbiRvdXJsaXRlOiAjZWRlZGYwO1xuXG4vKiB0eXBvZ3JhcGh5ICovXG5ib2R5IHtcblx0Zm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcblx0Y29sb3I6ICRvdXJsaXRlO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUge1xuXHRmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5wLmxlYWQge1xuXHRmb250LXNpemU6IDEuNWVtO1xuXHRjb2xvcjogJGhpZ2hsaWdodDU7XG5cdGZvbnQtZmFtaWx5OiAkY3Vyc2l2ZTtcbn1cblxuYmxvY2txdW90ZSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Y29sb3I6IGRhcmtlbih3aGl0ZSwgMzAlKTtcblx0Zm9udC1zaXplOiAxLjFlbTtcblxuXHRwIHtcblx0XHRtYXJnaW46MDtcblx0fVxufVxuXG5hIHtcblx0Y29sb3I6ICRoaWdobGlnaHQ7XG5cdCY6aG92ZXIge1xuXHRcdGNvbG9yOiBkYXJrZW4oJGhpZ2hsaWdodCwgNSUpO1xuXHR9XG59XG5cbmlucHV0LCBcbnRleHRhcmVhLCBcbmJ1dHRvbiB7XG5cdGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSwgXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG50ZXh0YXJlYSB7XG5cdGNvbG9yOiBkYXJrZW4od2hpdGUsIDQwJSk7XG5cdGJvcmRlcjogc29saWQgMnB4IGRhcmtlbih3aGl0ZSwgOCUpICFpbXBvcnRhbnQ7XG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuXHRAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG5cdCAgICBjb2xvcjogZGFya2VuKHdoaXRlLCAyNSUpO1xuXHR9XG5cblx0Jjpmb2N1cyB7XG5cdFx0Ym9yZGVyOiBzb2xpZCAycHggZGFya2VuKHdoaXRlLCAyMCUpICFpbXBvcnRhbnQ7XG5cdH1cbn0gXG5cbi8qIGxheW91dCAqL1xuLmNvbnRhaW5lciB7XG5cdEBpbmNsdWRlIG91dGVyLWNvbnRhaW5lcjtcblx0cGFkZGluZzogMCAuNWVtO1xufVxuXG5odG1sLCBib2R5LCBzZWN0aW9uLmludHJvLCAuc3BsaXQsIC5zcGxpdC10ZXh0IHtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5zZWN0aW9uIHtcblx0cGFkZGluZzogNGVtIDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNlcmlmIHtcblx0Zm9udC1mYW1pbHk6ICRzZXJpZjtcbn1cblxuZW0ge1xuXHRjb2xvcjogJGhpZ2hsaWdodDtcblx0Zm9udC1mYW1pbHk6ICRzZXJpZjtcbn1cblxuY29kZSB7XG5cdGNvbG9yOiBsaWdodGVuKCRvdXJtaWQsIDQwJSk7XG5cdGZvbnQtZmFtaWx5OiAkbW9ub3NwYWNlO1xuXHRmb250LXNpemU6IDEuMWVtO1xufVxuXG5rYmQge1xuXHRjb2xvcjogJGhpZ2hsaWdodDM7XG5cdGZvbnQtZmFtaWx5OiAkY3Vyc2l2ZTtcblx0Zm9udC1zaXplOiAxLjFlbTtcbn1cblxuLmNlbnRlcmVkIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubm8tdHJhbnNmb3JtYXRpb24ge1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLml0YWxpYyB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLm1vbm9zcGFjZSB7XG5cdGZvbnQtZmFtaWx5OiAkbW9ub3NwYWNlO1xufVxuXG4uY29sb3Itb3ZlcmxheSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR3aWR0aDogMTAwJTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkaGlnaGxpZ2h0O1xuXHR6LWluZGV4OiAtMTAwO1xufVxuXG4uZGFyayB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRvdXJkYXJrO1xufVxuXG4ubWlkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJG91cm1pZDtcbn1cblxuLmxpdGUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkb3VybGl0ZTtcbn1cblxuLmhpZ2hsaWdodCB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRoaWdobGlnaHQ7XG59XG5cbi5kZWVtcGhhc2l6ZSB7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG4uc3VwZXJzY3JpcHQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGZvbnQtc2l6ZTogNTAlO1xuXHRtYXgtd2lkdGg6NSU7XG5cdHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcblx0dG9wOiAwO1xuXHRtYXJnaW4tdG9wOjA7XG5cdHBhZGRpbmctdG9wOjA7XG59XG5cbi8qIHRpdGxlIHNlY3Rpb24gKi9cbi50aXRsZSB7XG5cdGZvbnQtc2l6ZTogMS41ZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bWFyZ2luLWJvdHRvbTogMmVtO1xuXHRjb2xvcjogJG91cmxpdGU7XG5cdGgyIHtcblx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0fVxuXHRociB7XG5cdFx0Ym9yZGVyOiBzb2xpZCAycHggcmdiYSgwLDAsMCwwLjEpO1xuXHRcdG1hcmdpbjogMWVtIGF1dG8gMS41ZW07XG5cblx0XHQmLnNtYWxsIHtcblx0XHRcdHdpZHRoOiA1MHB4O1x0XG5cdFx0fVxuXHR9XG5cdHAge1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0XHRmb250LXNpemU6IDEuMjVlbVxuXHR9XG59XG5cbi8qIGJ1dHRvbnMgKi9cbmEuYnV0dG9uLmxhcmdlIHtcblx0Y29sb3I6ICRibHVlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkb3VybGl0ZTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nOiAxZW0gMC4yZW07XG5cdG1hcmdpbi10b3A6IDFlbTtcblx0bWFyZ2luLXJpZ2h0OiAwLjVlbTtcblx0bWFyZ2luLWxlZnQ6IDAuNWVtO1xuXHRtYXJnaW4tYm90dG9tOiAxZW07XG5cdHdpZHRoOiAyMDBweDtcblx0aGVpZ2h0OiA1MHB4O1xuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiBtaXgoJGJsdWUsICRvdXJsaXRlLCAzMCUpO1xuXHR9XG59XG5cbmEuYnV0dG9uLmFsdCxcbmEuYnV0dG9uLmxhcmdlLmFsdCB7XG5cdGNvbG9yOiAkb3VybGl0ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGhpZ2hsaWdodDI7XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGhpZ2hsaWdodDIsIDEwJSk7XG5cdH1cbn1cblxuLyogb3dsIGNhcm91c2VsIHN0eWxlcyAqL1xuLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Qgc3BhbiB7XG5cdGhlaWdodDogMTRweDtcblx0d2lkdGg6IDE0cHg7XG59XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj0nb3dsLSddIHtcblx0cGFkZGluZy10b3A6IDE3cHg7XG5cdHBhZGRpbmctcmlnaHQ6IDE2cHg7XG5cdHBhZGRpbmctbGVmdDogMTZweDtcblx0cGFkZGluZy1ib3R0b206IDE2cHg7XG59XG5cbi5vd2wtY2Fyb3VzZWwge1xuXHRjdXJzb3I6IG1vdmU7XG59XG5cbi8qIGZsZXhzbGlkZXIgKi9cbi5mbGV4c2xpZGVyIHtcblx0bWFyZ2luOiAwO1xufVxuXG4uZmxleC1jb250cm9sLW5hdiB7XG5cdGJvdHRvbTogMDtcblx0ei1pbmRleDogMTAwO1xuXG5cdGxpIGEge1xuXHRcdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRcdG9wYWNpdHk6IDAuNTtcblx0XHRoZWlnaHQ6IDE0cHg7XG5cdFx0d2lkdGg6IDE0cHg7XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0b3BhY2l0eTogMC43O1xuXHRcdH1cblxuXHRcdCYuZmxleC1hY3RpdmUge1xuXHRcdFx0YmFja2dyb3VuZDogd2hpdGU7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdH1cblx0fVxufVxuXG4uZmxleC1kaXJlY3Rpb24tbmF2IGEge1xuXHRoZWlnaHQ6IDUycHg7XG5cdHdpZHRoOiA1MnB4O1xuXHR0b3A6IDQ1JTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG5cdHRleHQtc2hhZG93OiBub25lO1xuXHRjb2xvcjogd2hpdGU7XG5cblx0JjpiZWZvcmUge1xuXHRcdGZvbnQtZmFtaWx5OiAnRm9udGF3ZXNvbWUnO1xuXHRcdGZvbnQtc2l6ZTogM2VtOyBcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuXHRcdGNvbnRlbnQ6ICdcXGYxMDQnOyBcblx0fVxuXG5cdCYuZmxleC1uZXh0OmJlZm9yZSB7IFxuXHRcdGNvbnRlbnQ6ICdcXGYxMDUnOyBcblx0fVxufSIsIkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gIEBpbmNsdWRlIF9ib3VyYm9uLWRlcHJlY2F0ZS1mb3ItcHJlZml4aW5nKFwicGxhY2Vob2xkZXJcIik7XG5cbiAgJHBsYWNlaG9sZGVyczogXCI6LXdlYmtpdC1pbnB1dFwiIFwiOi1tb3pcIiBcIi1tb3pcIiBcIi1tcy1pbnB1dFwiO1xuICBAZWFjaCAkcGxhY2Vob2xkZXIgaW4gJHBsYWNlaG9sZGVycyB7XG4gICAgJjojeyRwbGFjZWhvbGRlcn0tcGxhY2Vob2xkZXIge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IGEgb3V0ZXIgY29udGFpbmVyIGJ5IGNlbnRyaW5nIGl0IGluIHRoZSB2aWV3cG9ydCwgY2xlYXJpbmcgaXRzIGZsb2F0cywgYW5kIHNldHRpbmcgaXRzIGBtYXgtd2lkdGhgLlxuLy8vIEFsdGhvdWdoIG9wdGlvbmFsLCB1c2luZyBgb3V0ZXItY29udGFpbmVyYCBpcyByZWNvbW1lbmRlZC4gVGhlIG1peGluIGNhbiBiZSBjYWxsZWQgb24gbW9yZSB0aGFuIG9uZSBlbGVtZW50IHBlciBwYWdlLCBhcyBsb25nIGFzIHRoZXkgYXJlIG5vdCBuZXN0ZWQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciBbdW5pdF19ICRsb2NhbC1tYXgtd2lkdGggWyRtYXgtd2lkdGhdXG4vLy8gICBNYXggd2lkdGggdG8gYmUgYXBwbGllZCB0byB0aGUgZWxlbWVudC4gQ2FuIGJlIGEgcGVyY2VudGFnZSBvciBhIG1lYXN1cmUuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgb3V0ZXItY29udGFpbmVyKDEwMCUpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICAqem9vbTogMTtcbi8vLyAgICAgbWF4LXdpZHRoOiAxMDAlO1xuLy8vICAgICBtYXJnaW4tbGVmdDogYXV0bztcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudDpiZWZvcmUsIC5lbGVtZW50OmFmdGVyIHtcbi8vLyAgICAgY29udGVudDogXCIgXCI7XG4vLy8gICAgIGRpc3BsYXk6IHRhYmxlO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudDphZnRlciB7XG4vLy8gICAgIGNsZWFyOiBib3RoO1xuLy8vICAgfVxuXG5AbWl4aW4gb3V0ZXItY29udGFpbmVyKCRsb2NhbC1tYXgtd2lkdGg6ICRtYXgtd2lkdGgpIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1heC13aWR0aDogJGxvY2FsLW1heC13aWR0aDtcbiAgbWFyZ2luOiB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogYXV0bztcbiAgfVxufVxuIiwiLy8gQ29udmVydCBwaXhlbHMgdG8gZW1zXG4vLyBlZy4gZm9yIGEgcmVsYXRpb25hbCB2YWx1ZSBvZiAxMnB4IHdyaXRlIGVtKDEyKSB3aGVuIHRoZSBwYXJlbnQgaXMgMTZweFxuLy8gaWYgdGhlIHBhcmVudCBpcyBhbm90aGVyIHZhbHVlIHNheSAyNHB4IHdyaXRlIGVtKDEyLCAyNClcblxuQGZ1bmN0aW9uIGVtKCRweHZhbCwgJGJhc2U6ICRlbS1iYXNlKSB7XG4gIEBpZiAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3MgPT0gdHJ1ZSB7XG4gICAgQHdhcm4gXCJbQm91cmJvbl0gW0RlcHJlY2F0aW9uXSBgZW1gIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgXCIgK1xuICAgIFwicmVtb3ZlZCBpbiA1LjAuMC5cIjtcbiAgfVxuXG4gIEBpZiBub3QgdW5pdGxlc3MoJHB4dmFsKSB7XG4gICAgJHB4dmFsOiBzdHJpcC11bml0cygkcHh2YWwpO1xuICB9XG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xuICB9XG4gIEByZXR1cm4gKCRweHZhbCAvICRiYXNlKSAqIDFlbTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGFuIGVhc3kgd2F5IHRvIGluY2x1ZGUgYSBjbGVhcmZpeCBmb3IgY29udGFpbmluZyBmbG9hdHMuXG4vLy9cbi8vLyBAbGluayBodHRwOi8vY3NzbW9qby5jb20vbGF0ZXN0X25ld19jbGVhcmZpeF9zb19mYXIvXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudDo6YWZ0ZXIge1xuLy8vICAgICBjbGVhcjogYm90aDtcbi8vLyAgICAgY29udGVudDogXCJcIjtcbi8vLyAgICAgZGlzcGxheTogdGFibGU7XG4vLy8gICB9XG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG59XG4iLCJcbmhlYWRlci5uYXZpZ2F0aW9uIHtcblxuXHQmLmhlYWRyb29tLS11bnBpbm5lZCB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0fVxuICAgICYuaGVhZHJvb20tLXBpbm5lZCB7XG4gICAgXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIH1cblxuXHQvLyBWQVJJQUJMRVNcblxuXHQkbmF2aWdhdGlvbi1wYWRkaW5nOiAxZW07XG5cdCRuYXZpZ2F0aW9uLWJhY2tncm91bmQ6ICRvdXJkYXJrO1xuXHQkbmF2aWdhdGlvbi1jb2xvcjogJG91cmxpdGU7XG5cdCRuYXZpZ2F0aW9uLWNvbG9yLWhvdmVyOiAkaGlnaGxpZ2h0Mjtcblx0JG5hdmlnYXRpb24tY29sb3ItYWN0aXZlOiAkaGlnaGxpZ2h0O1xuXHQkbmF2aWdhdGlvbi1oZWlnaHQ6IDZlbTtcblx0JG5hdmlnYXRpb24taGVpZ2h0LW1vYmlsZTogNGVtO1xuXHQkaG9yaXpvbnRhbC1iYXItbW9kZTogJGxhcmdlLXNjcmVlbjtcblx0JG5hdmlnYXRpb24tc3VibWVudS1wYWRkaW5nOiAxZW07XG4gIFx0JG5hdmlnYXRpb24tc3VibWVudS13aWR0aDogMTJlbTtcblxuXHQmLmhlYWRyb29tIHtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJG5hdmlnYXRpb24tYmFja2dyb3VuZDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRuYXZpZ2F0aW9uLWJhY2tncm91bmQsIDEwKTtcblx0XHRoZWlnaHQ6ICRuYXZpZ2F0aW9uLWhlaWdodDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHR6LWluZGV4OiA5OTk7XG5cblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgbGluZWFyO1xuXG5cdCAgXHQubmF2aWdhdGlvbi13cmFwcGVyIHtcblx0XHQgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0ICAgIEBpbmNsdWRlIG91dGVyLWNvbnRhaW5lcjtcblx0XHQgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdCAgICB6LWluZGV4OiA5OTk5O1xuXHQgIFx0fVxuXG5cdCAgXHQubG9nbyB7XG5cdFx0ICAgIGZsb2F0OiBsZWZ0OyAgICBcblx0XHQgICAgbWF4LWhlaWdodDogJG5hdmlnYXRpb24taGVpZ2h0O1xuXHRcdCAgICBwYWRkaW5nLWxlZnQ6ICRuYXZpZ2F0aW9uLXBhZGRpbmc7XG5cdFx0ICAgIHBhZGRpbmctcmlnaHQ6ICRuYXZpZ2F0aW9uLXBhZGRpbmc7XG5cblx0XHQgICAgaW1nIHtcblx0XHQgICAgIFx0bWF4LWhlaWdodDogJG5hdmlnYXRpb24taGVpZ2h0O1xuXHRcdFx0XHRwYWRkaW5nOiAxZW0gMDtcblx0XHRcdH1cblx0ICBcdH1cblxuXHQgIFxuXHRcdC8vIE1PQklMRSBWSUVXXG5cblx0ICBcdC5uYXZpZ2F0aW9uLW1lbnUtYnV0dG9uIHtcblx0XHQgICAgY29sb3I6ICRuYXZpZ2F0aW9uLWNvbG9yO1xuXHRcdCAgICBkaXNwbGF5OiBibG9jaztcblx0XHQgICAgZmxvYXQ6IHJpZ2h0O1xuXHRcdCAgICBmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XG5cdFx0ICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0ICAgIGxpbmUtaGVpZ2h0OiAkbmF2aWdhdGlvbi1oZWlnaHQ7XG5cdFx0ICAgIG1hcmdpbjogMDtcblx0XHQgICAgcGFkZGluZy1yaWdodDogMWVtO1xuXHRcdCAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdCAgICBcdEBpbmNsdWRlIG1lZGlhICgkaG9yaXpvbnRhbC1iYXItbW9kZSkge1xuXHQgICAgIFx0XHRkaXNwbGF5OiBub25lO1xuXHQgICAgXHR9XG5cblx0ICAgIFx0Jjpob3ZlciB7XG5cdCAgICAgIFx0XHRjb2xvcjogJG5hdmlnYXRpb24tY29sb3ItaG92ZXI7XG5cdCAgICBcdH1cblx0ICBcdH1cblxuXHQgIFxuXHRcdC8vIE5BVklHQVRJT04gTUVOVVxuXG5cdCAgXHQubmF2IHtcblx0ICAgIFx0ei1pbmRleDogOTk5OTk5OTtcblx0ICAgIFx0ZmxvYXQ6IG5vbmU7XG5cdCAgICBcblx0ICAgIFx0QGluY2x1ZGUgbWVkaWEgKCRob3Jpem9udGFsLWJhci1tb2RlKSB7XG5cdCAgICAgIFx0XHRmbG9hdDogcmlnaHQ7XG5cdCAgICBcdH1cblx0ICBcdH1cblxuXHQgIFx0dWwjbmF2aWdhdGlvbi1tZW51IHsgICAgXG5cdCAgICBcdC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgXG5cdFx0XHQvLyBzdG9wIHdlYmtpdCBmbGlja2VyXG5cdFx0ICAgIGNsZWFyOiBib3RoO1xuXHRcdCAgICBkaXNwbGF5OiBub25lO1xuXHRcdCAgICBtYXJnaW46IDAgYXV0bztcblx0XHQgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cdFx0ICAgIHBhZGRpbmc6IDA7XG5cdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHRcdCAgICB6LWluZGV4OiA5OTk5O1xuXG5cdCAgICBcdEBpbmNsdWRlIG1lZGlhICgkaG9yaXpvbnRhbC1iYXItbW9kZSkge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0ICAgIFx0fVxuXHQgIFx0fVxuXG5cdCAgXG5cdFx0Ly8gTkFWSUdBVElPTiBMSU5LU1xuXG5cdCAgXHR1bCBsaS5uYXYtbGluayB7XG5cblx0ICBcdFx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG5cdCAgXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHQgIFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0ICBcdFx0XHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggZGFya2VuKCRuYXZpZ2F0aW9uLWJhY2tncm91bmQsIDUlKTtcblx0ICBcdFx0fVxuXG5cdFx0ICAgIGJhY2tncm91bmQ6ICRuYXZpZ2F0aW9uLWJhY2tncm91bmQ7XG5cdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICBsaW5lLWhlaWdodDogJG5hdmlnYXRpb24taGVpZ2h0LW1vYmlsZTtcblx0XHQgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQgICAgcGFkZGluZy1sZWZ0OiAwLjRlbTtcblx0XHQgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHRcdCAgICB6LWluZGV4OiA5OTk5O1xuXG5cdCAgICBcdEBpbmNsdWRlIG1lZGlhICgkaG9yaXpvbnRhbC1iYXItbW9kZSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogJG5hdmlnYXRpb24taGVpZ2h0O1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHQgICAgXHR9XG5cblx0ICAgIFx0Ji5hY3RpdmUgYSB7XG5cdCAgICBcdFx0Y29sb3I6ICRuYXZpZ2F0aW9uLWNvbG9yLWFjdGl2ZTtcblx0ICAgIFx0fVxuXG5cdCAgICBcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdGNvbG9yOiAkbmF2aWdhdGlvbi1jb2xvcjtcblxuXHQgICAgICBcdFx0QGluY2x1ZGUgbWVkaWEgKCRob3Jpem9udGFsLWJhci1tb2RlKSB7XG5cdCAgICAgICAgXHRcdHBhZGRpbmctcmlnaHQ6IDFlbTtcblx0ICAgICAgXHRcdH1cblxuXHQgICAgICBcdFx0Jjpob3ZlciB7XG5cdCAgICAgICAgXHRcdGNvbG9yOiAkbmF2aWdhdGlvbi1jb2xvci1ob3ZlcjtcbiAgICAgIFx0XHRcdH1cblxuICAgICAgXHRcdFx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG4gICAgICBcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuICAgICAgXHRcdFx0fVxuXHQgICAgXHR9XG5cdCAgXHR9XG5cdH1cblxuXHQvLyBTdWIgbWVudXNcblxuXHRsaS5tb3JlLm5hdi1saW5rIHtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXG5cdCAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuKSB7XG5cdCAgICBcdHBhZGRpbmctcmlnaHQ6ICRuYXZpZ2F0aW9uLXN1Ym1lbnUtcGFkZGluZztcblx0ICAgIH1cblxuXHQgICAgPiB1bCA+IGxpOmZpcnN0LWNoaWxkIGEgIHtcblx0ICAgICAgXHRwYWRkaW5nLXRvcDogMWVtO1xuXHQgICAgfVxuXG5cdCAgICBhIHtcblx0ICAgICAgXHRtYXJnaW4tcmlnaHQ6ICRuYXZpZ2F0aW9uLXN1Ym1lbnUtcGFkZGluZztcblxuXHQgICAgICBcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cblx0ICAgIH1cblxuXHQgICAgPiBhIHtcblx0ICAgICAgXHRwYWRkaW5nLXJpZ2h0OiAwLjZlbTtcblx0ICAgIH1cblxuXHQgICAgPiBhOmFmdGVyIHtcblx0ICAgICAgXHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgYXV0byAtLjRlbSBhdXRvIGF1dG8pO1xuXHQgICAgICBcdGNvbnRlbnQ6ICdcXDI1QkUnO1xuXHQgICAgICBcdGNvbG9yOiAkbmF2aWdhdGlvbi1jb2xvcjtcblx0ICAgIH1cblx0fVxuXG5cdGxpLm1vcmUge1xuXHQgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cdCAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG5cdCAgICBhIHtcblx0ICAgICAgXHRwYWRkaW5nLXJpZ2h0OiAuOGVtO1xuXHQgICAgfVxuXG5cdCAgICA+IGEge1xuXHQgICAgICBcdHBhZGRpbmctcmlnaHQ6IDEuNmVtO1xuXHQgICAgICBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQgICAgICBcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4pIHtcblx0ICAgICAgICBcdG1hcmdpbi1yaWdodDogJG5hdmlnYXRpb24tc3VibWVudS1wYWRkaW5nO1xuXHQgICAgXHR9XG5cblx0XHQgICAgJjphZnRlciB7XG5cdFx0ICAgICAgICBjb250ZW50OiAn4oC6Jztcblx0XHQgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG5cdFx0ICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ICAgICAgICByaWdodDogJG5hdmlnYXRpb24tc3VibWVudS1wYWRkaW5nIC8gMjtcblx0XHQgICAgfSAgICAgIFxuXHRcdH1cblxuXHRcdCY6aG92ZXIgPiAuc3VibWVudSB7XG5cdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRob3Jpem9udGFsLWJhci1tb2RlKSB7XG5cdFx0ICAgIHBhZGRpbmctcmlnaHQ6IC44ZW07XG5cdFx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9XG5cdH1cblxuXHR1bC5zdWJtZW51IHtcblx0ICAgIGRpc3BsYXk6IG5vbmU7XG5cdCAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cblx0ICAgIEBpbmNsdWRlIG1lZGlhKCRob3Jpem9udGFsLWJhci1tb2RlKSB7XG5cdCAgICAgIFx0cG9zaXRpb246IGFic29sdXRlO1xuXHQgICAgICBcdHRvcDogMi41ZW07XG5cdCAgICAgIFx0bGVmdDogMDtcblx0ICAgIH1cblxuXHQgICAgLnN1Ym1lbnUge1xuXHQgICAgICBcdEBpbmNsdWRlIG1lZGlhKCRob3Jpem9udGFsLWJhci1tb2RlKSB7XG5cdCAgICAgICAgXHRsZWZ0OiAkbmF2aWdhdGlvbi1zdWJtZW51LXdpZHRoIC0gLjJlbTtcblx0ICAgICAgICBcdHRvcDogMDtcblx0ICAgICAgXHR9XG5cdCAgICB9XG5cblx0ICAgIGxpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMDtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0XHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggZGFya2VuKCRuYXZpZ2F0aW9uLWJhY2tncm91bmQsIDglKTtcblx0XHRcdH1cblxuXHQgICAgICBcdEBpbmNsdWRlIG1lZGlhKCRob3Jpem9udGFsLWJhci1tb2RlKSB7XG5cdCAgICAgICAgXHRsaW5lLWhlaWdodDogMy41ZW07XG5cblx0ICAgICAgICBcdCY6Zmlyc3QtY2hpbGQgPiBhIHtcblx0XHRcdFx0XHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xuXHRcdFx0XHRcdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xuXHQgICAgICAgIFx0fVxuXG5cdCAgICAgICAgXHQmOmxhc3QtY2hpbGQgPiBhIHtcblx0ICAgICAgICAgIFx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xuXHQgICAgICAgICAgXHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xuXHQgICAgICAgICAgXHRcdHBhZGRpbmctYm90dG9tOiAxLjJlbTtcblx0ICAgICAgICBcdH1cblx0ICAgICAgXHR9XG5cblx0ICAgICAgXHRhIHtcblx0ICAgICAgICBcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkbmF2aWdhdGlvbi1iYWNrZ3JvdW5kLCAzKTtcblx0XHQgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHQgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdCAgICAgICAgd2lkdGg6IDEwMCU7XG5cblx0ICAgICAgICBcdEBpbmNsdWRlIG1lZGlhKCRob3Jpem9udGFsLWJhci1tb2RlKSB7XG5cdCAgICAgICAgXHRcdHBhZGRpbmc6IDA7XG5cdCAgICAgICAgXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0ICAgICAgICBcdH1cblxuXHQgICAgICAgIFx0QGluY2x1ZGUgbWVkaWEoJGhvcml6b250YWwtYmFyLW1vZGUpIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2aWdhdGlvbi1iYWNrZ3JvdW5kO1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogJG5hdmlnYXRpb24tc3VibWVudS1wYWRkaW5nO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0d2lkdGg6ICRuYXZpZ2F0aW9uLXN1Ym1lbnUtd2lkdGg7XG5cdCAgICAgICAgXHR9XG5cdCAgICAgIFx0fVxuXHQgICAgfVxuXHR9XG59ICAiLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBPdXRwdXRzIGEgbWVkaWEtcXVlcnkgYmxvY2sgd2l0aCBhbiBvcHRpb25hbCBncmlkIGNvbnRleHQgKHRoZSB0b3RhbCBudW1iZXIgb2YgY29sdW1ucyB1c2VkIGluIHRoZSBncmlkKS5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHF1ZXJ5XG4vLy8gICBBIGxpc3Qgb2YgbWVkaWEgcXVlcnkgZmVhdHVyZXMgYW5kIHZhbHVlcywgd2hlcmUgZWFjaCBgJGZlYXR1cmVgIHNob3VsZCBoYXZlIGEgY29ycmVzcG9uZGluZyBgJHZhbHVlYC5cbi8vLyAgIEZvciBhIGxpc3Qgb2YgdmFsaWQgdmFsdWVzIGZvciBgJGZlYXR1cmVgLCBjbGljayBbaGVyZV0oaHR0cDovL3d3dy53My5vcmcvVFIvY3NzMy1tZWRpYXF1ZXJpZXMvI21lZGlhMSkuXG4vLy9cbi8vLyAgIElmIHRoZXJlIGlzIG9ubHkgYSBzaW5nbGUgYCR2YWx1ZWAgaW4gYCRxdWVyeWAsIGAkZGVmYXVsdC1mZWF0dXJlYCBpcyBnb2luZyB0byBiZSB1c2VkLlxuLy8vXG4vLy8gICBUaGUgbnVtYmVyIG9mIHRvdGFsIGNvbHVtbnMgaW4gdGhlIGdyaWQgY2FuIGJlIHNldCBieSBwYXNzaW5nIGAkY29sdW1uc2AgYXQgdGhlIGVuZCBvZiB0aGUgbGlzdCAob3ZlcnJpZGVzIGAkdG90YWwtY29sdW1uc2ApLlxuLy8vXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciAodW5pdGxlc3MpfSAkdG90YWwtY29sdW1ucyBbJGdyaWQtY29sdW1uc11cbi8vLyAgIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGluIHRoZSBuZXcgZ3JpZCBjb250ZXh0LiBDYW4gYmUgc2V0IGFzIGEgc2hvcnRoYW5kIGluIHRoZSBmaXJzdCBwYXJhbWV0ZXIuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5yZXNwb25zaXZlLWVsZW1lbnQge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoNzY5cHgpIHtcbi8vLyAgICAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xuLy8vICAgICAgfVxuLy8vICAgfVxuLy8vXG4vLy8gIC5uZXctY29udGV4dC1lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtZWRpYShtaW4td2lkdGggMzIwcHggbWF4LXdpZHRoIDQ4MHB4LCA2KSB7XG4vLy8gICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OXB4KSB7XG4vLy8gICAgLnJlc3BvbnNpdmUtZWxlbWVudCB7XG4vLy8gICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbi8vLyAgICAgIHdpZHRoOiA0OC44MjExNyU7XG4vLy8gICAgfVxuLy8vXG4vLy8gICAgLnJlc3BvbnNpdmUtZWxlbWVudDpsYXN0LWNoaWxkIHtcbi8vLyAgICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4vLy8gICAgLm5ldy1jb250ZXh0LWVsZW1lbnQge1xuLy8vICAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgICBmbG9hdDogbGVmdDtcbi8vLyAgICAgIG1hcmdpbi1yaWdodDogNC44MjkxNiU7XG4vLy8gICAgICB3aWR0aDogMTAwJTtcbi8vLyAgICB9XG4vLy9cbi8vLyAgICAubmV3LWNvbnRleHQtZWxlbWVudDpsYXN0LWNoaWxkIHtcbi8vLyAgICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgICB9XG4vLy8gIH1cblxuQG1peGluIG1lZGlhKCRxdWVyeTogJGZlYXR1cmUgJHZhbHVlICRjb2x1bW5zLCAkdG90YWwtY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBAaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKCRkZWZhdWx0LWZlYXR1cmU6IG50aCgkcXVlcnksIDEpKSB7XG4gICAgICAkZGVmYXVsdC1ncmlkLWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkdG90YWwtY29sdW1ucyAhZ2xvYmFsO1xuICAgICAgQGNvbnRlbnQ7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkZGVmYXVsdC1ncmlkLWNvbHVtbnMgIWdsb2JhbDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgICRsb29wLXRvOiBsZW5ndGgoJHF1ZXJ5KTtcbiAgICAkbWVkaWEtcXVlcnk6IFwic2NyZWVuIGFuZCBcIjtcbiAgICAkZGVmYXVsdC1ncmlkLWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XG4gICAgJGdyaWQtY29sdW1uczogJHRvdGFsLWNvbHVtbnMgIWdsb2JhbDtcblxuICAgIEBpZiBpcy1ub3QoaXMtZXZlbihsZW5ndGgoJHF1ZXJ5KSkpIHtcbiAgICAgICRncmlkLWNvbHVtbnM6IG50aCgkcXVlcnksICRsb29wLXRvKSAhZ2xvYmFsO1xuICAgICAgJGxvb3AtdG86ICRsb29wLXRvIC0gMTtcbiAgICB9XG5cbiAgICAkaTogMTtcbiAgICBAd2hpbGUgJGkgPD0gJGxvb3AtdG8ge1xuICAgICAgJG1lZGlhLXF1ZXJ5OiAkbWVkaWEtcXVlcnkgKyBcIihcIiArIG50aCgkcXVlcnksICRpKSArIFwiOiBcIiArIG50aCgkcXVlcnksICRpICsgMSkgKyBcIikgXCI7XG5cbiAgICAgIEBpZiAoJGkgKyAxKSAhPSAkbG9vcC10byB7XG4gICAgICAgICRtZWRpYS1xdWVyeTogJG1lZGlhLXF1ZXJ5ICsgXCJhbmQgXCI7XG4gICAgICB9XG5cbiAgICAgICRpOiAkaSArIDI7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JG1lZGlhLXF1ZXJ5fSB7XG4gICAgICBAY29udGVudDtcbiAgICAgICRncmlkLWNvbHVtbnM6ICRkZWZhdWx0LWdyaWQtY29sdW1ucyAhZ2xvYmFsO1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYSBxdWljayBtZXRob2QgZm9yIHNldHRpbmcgYW4gZWxlbWVudOKAmXMgcG9zaXRpb24uIFVzZSBhIGBudWxsYCB2YWx1ZSB0byDigJxza2lw4oCdIGEgc2lkZS5cbi8vL1xuLy8vIEBwYXJhbSB7UG9zaXRpb259ICRwb3NpdGlvbiBbcmVsYXRpdmVdXG4vLy8gICBBIENTUyBwb3NpdGlvbiB2YWx1ZVxuLy8vXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkY29vcmRpbmF0ZXMgW251bGwgbnVsbCBudWxsIG51bGxdXG4vLy8gICBMaXN0IG9mIHZhbHVlcyB0aGF0IGNvcnJlc3BvbmQgdG8gdGhlIDQtdmFsdWUgc3ludGF4IGZvciB0aGUgZWRnZXMgb2YgYSBib3hcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCBudWxsIG51bGwgMTBlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGxlZnQ6IDEwZW07XG4vLy8gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbi8vLyAgICAgdG9wOiAwO1xuLy8vICAgfVxuLy8vXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBpcy1sZW5ndGhcbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IHVucGFja1xuXG5AbWl4aW4gcG9zaXRpb24oJHBvc2l0aW9uOiByZWxhdGl2ZSwgJGNvb3JkaW5hdGVzOiBudWxsIG51bGwgbnVsbCBudWxsKSB7XG4gIEBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gbGlzdCB7XG4gICAgJGNvb3JkaW5hdGVzOiAkcG9zaXRpb247XG4gICAgJHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gICRjb29yZGluYXRlczogdW5wYWNrKCRjb29yZGluYXRlcyk7XG5cbiAgJG9mZnNldHM6IChcbiAgICB0b3A6ICAgIG50aCgkY29vcmRpbmF0ZXMsIDEpLFxuICAgIHJpZ2h0OiAgbnRoKCRjb29yZGluYXRlcywgMiksXG4gICAgYm90dG9tOiBudGgoJGNvb3JkaW5hdGVzLCAzKSxcbiAgICBsZWZ0OiAgIG50aCgkY29vcmRpbmF0ZXMsIDQpXG4gICk7XG5cbiAgcG9zaXRpb246ICRwb3NpdGlvbjtcblxuICBAZWFjaCAkb2Zmc2V0LCAkdmFsdWUgaW4gJG9mZnNldHMge1xuICAgIEBpZiBpcy1sZW5ndGgoJHZhbHVlKSB7XG4gICAgICAjeyRvZmZzZXR9OiAkdmFsdWU7XG4gICAgfVxuICB9XG59XG4iLCJcbnNlY3Rpb24uaW50cm8ge1xuXHRwYWRkaW5nOiAwO1xuXHRjb2xvcjogd2hpdGU7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0LmNvbnRhaW5lciB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0fVx0XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcblx0XHRcdHBhZGRpbmctdG9wOiA4ZW07XG5cdFx0fVxuXHR9XG5cblx0aDEge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0cGFkZGluZy1ib3R0b206IC41ZW07XG5cblx0XHRpbWcge1xuXHRcdCAgICBtYXgtd2lkdGg6IDUwJTtcblx0XHR9XHRcblx0fVxuXG5cdGgzIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Zm9udC1zaXplOiAxLjJlbTtcblx0XHRwYWRkaW5nOiAwIDIwJTtcblx0fVxuXG5cdGEuanVtcC1kb3duIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiA0ZW07XG5cdFx0bGVmdDogMjAlO1xuXHRcdHJpZ2h0OiAyMCU7XG5cdFx0bWFyZ2luOiAyZW0gYXV0byAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiA0ZW07XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0aSB7XG5cdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRvcGFjaXR5OiAwLjU7XG5cdFx0XHRmb250LXNpemU6IDMuNWVtO1x0XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIiNzZWN0aW9uLWZlYXR1cmVzIHtcblx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG5cdFx0cGFkZGluZzogMmVtIDA7XG5cdH1cbn1cbi5mZWF0dXJlcyB7XG5cdC50aXRsZSB7XG5cdFx0Y29sb3I6ICRvdXJtaWQ7XG5cdH1cblx0LmZlYXR1cmUtaXRlbSB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDQpO1xuXHRcdFx0QGluY2x1ZGUgb21lZ2EoM24pO1x0XG5cdFx0fVxuXHRcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xuXHRcdFx0QGluY2x1ZGUgb21lZ2EoMm4pO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygxMik7XG5cdFx0XHRAaW5jbHVkZSBvbWVnYSgxbik7XG5cdFx0fVxuXHRcdHBhZGRpbmc6IDEuNWVtIDA7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGkge1xuXHRcdFx0Zm9udC1zaXplOiAyLjhlbTtcblx0XHRcdGNvbG9yOiAkaGlnaGxpZ2h0Njtcblx0XHRcdG1hcmdpbi1ib3R0b206IC40ZW07XG5cdFx0fVxuXHRcdGg0IHtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRjb2xvcjogJG91cm1pZDtcblx0XHRcdGZvbnQtc2l6ZTogMS4yZW07XG5cdFx0fVxuXHRcdHAge1xuXHRcdFx0Y29sb3I6ICRvdXJtaWQ7XG5cdFx0XHRmb250LXNpemU6IDFlbTtcblx0XHR9XG5cdH1cbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuIGVsZW1lbnQgc2hvdWxkIHNwYW4uIElmIHRoZSBzZWxlY3RvciBpcyBuZXN0ZWQgdGhlIG51bWJlciBvZiBjb2x1bW5zIG9mIGl0cyBwYXJlbnQgZWxlbWVudCBzaG91bGQgYmUgcGFzc2VkIGFzIGFuIGFyZ3VtZW50IGFzIHdlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzcGFuXG4vLy8gICBBIGxpc3QgY29udGFpbmluZyBgJGNvbHVtbnNgLCB0aGUgdW5pdGxlc3MgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIGVsZW1lbnQgc3BhbnMgKHJlcXVpcmVkKSwgYW5kIGAkY29udGFpbmVyLWNvbHVtbnNgLCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIHBhcmVudCBlbGVtZW50IHNwYW5zIChvcHRpb25hbCkuXG4vLy9cbi8vLyAgIElmIG9ubHkgb25lIHZhbHVlIGlzIHBhc3NlZCwgaXQgaXMgYXNzdW1lZCB0aGF0IGl0J3MgYCRjb2x1bW5zYCBhbmQgdGhhdCB0aGF0IGAkY29udGFpbmVyLWNvbHVtbnNgIGlzIGVxdWFsIHRvIGAkZ3JpZC1jb2x1bW5zYCwgdGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuLy8vXG4vLy8gICBUaGUgdmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgd2l0aCBhbnkgc3RyaW5nIHN1Y2ggYXMgYG9mYCwgYC9gLCBldGMuXG4vLy9cbi8vLyAgIGAkY29sdW1uc2AgYWxzbyBhY2NlcHRzIGRlY2ltYWxzIGZvciB3aGVuIGl0J3MgbmVjZXNzYXJ5IHRvIGJyZWFrIG91dCBvZiB0aGUgc3RhbmRhcmQgZ3JpZC4gRS5nLiBQYXNzaW5nIGAyLjRgIGluIGEgc3RhbmRhcmQgMTIgY29sdW1uIGdyaWQgd2lsbCBkaXZpZGUgdGhlIHJvdyBpbnRvIDUgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlzcGxheSBbYmxvY2tdXG4vLy8gICBTZXRzIHRoZSBkaXNwbGF5IHByb3BlcnR5IG9mIHRoZSBlbGVtZW50LiBCeSBkZWZhdWx0IGl0IHNldHMgdGhlIGRpc3BsYXkgcHJvcGVydCBvZiB0aGUgZWxlbWVudCB0byBgYmxvY2tgLlxuLy8vXG4vLy8gICBJZiBwYXNzZWQgYGJsb2NrLWNvbGxhcHNlYCwgaXQgYWxzbyByZW1vdmVzIHRoZSBtYXJnaW4gZ3V0dGVyIGJ5IGFkZGluZyBpdCB0byB0aGUgZWxlbWVudCB3aWR0aC5cbi8vL1xuLy8vICAgSWYgcGFzc2VkIGB0YWJsZWAsIGl0IHNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgdG8gYHRhYmxlLWNlbGxgIGFuZCBjYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiB0aGUgZWxlbWVudCB3aXRob3V0IHRha2luZyBndXR0ZXJzIGludG8gY29uc2lkZXJhdGlvbi4gVGhlIHJlc3VsdCBkb2VzIG5vdCBhbGlnbiB3aXRoIHRoZSBibG9jay1iYXNlZCBncmlkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcbi8vL1xuLy8vICAgIC5uZXN0ZWQtZWxlbWVudCB7XG4vLy8gICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMiBvZiA2KTtcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuLy8vICAgICB3aWR0aDogNDguODIxMTclO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudDpsYXN0LWNoaWxkIHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudCAubmVzdGVkLWVsZW1lbnQge1xuLy8vICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgICAgZmxvYXQ6IGxlZnQ7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogNC44MjkxNiU7XG4vLy8gICAgIHdpZHRoOiAzMC4xMTM4OSU7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5lbGVtZW50IC5uZXN0ZWQtZWxlbWVudDpsYXN0LWNoaWxkIHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgfVxuXG5AbWl4aW4gc3Bhbi1jb2x1bW5zKCRzcGFuOiAkY29sdW1ucyBvZiAkY29udGFpbmVyLWNvbHVtbnMsICRkaXNwbGF5OiBibG9jaykge1xuICAkY29sdW1uczogbnRoKCRzcGFuLCAxKTtcbiAgJGNvbnRhaW5lci1jb2x1bW5zOiBjb250YWluZXItc3Bhbigkc3Bhbik7XG5cbiAgJHBhcmVudC1jb2x1bW5zOiBnZXQtcGFyZW50LWNvbHVtbnMoJGNvbnRhaW5lci1jb2x1bW5zKSAhZ2xvYmFsO1xuXG4gICRkaXJlY3Rpb246IGdldC1kaXJlY3Rpb24oJGxheW91dC1kaXJlY3Rpb24sICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24pO1xuICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiBnZXQtb3Bwb3NpdGUtZGlyZWN0aW9uKCRkaXJlY3Rpb24pO1xuXG4gICRkaXNwbGF5LXRhYmxlOiBpcy1kaXNwbGF5LXRhYmxlKCRjb250YWluZXItZGlzcGxheS10YWJsZSwgJGRpc3BsYXkpO1xuXG4gIEBpZiAkZGlzcGxheS10YWJsZSAge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkY29udGFpbmVyLWNvbHVtbnMpO1xuICB9IEBlbHNlIHtcbiAgICBmbG9hdDogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcblxuICAgIEBpZiAkZGlzcGxheSAhPSBuby1kaXNwbGF5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkZGlzcGxheSA9PSBjb2xsYXBzZSB7XG4gICAgICBAaW5jbHVkZSAtbmVhdC13YXJuKFwiVGhlICdjb2xsYXBzZScgYXJndW1lbnQgd2lsbCBiZSBkZXByZWNhdGVkLiBVc2UgJ2Jsb2NrLWNvbGxhcHNlJyBpbnN0ZWFkLlwiKTtcbiAgICB9XG5cbiAgICBAaWYgJGRpc3BsYXkgPT0gY29sbGFwc2Ugb3IgJGRpc3BsYXkgPT0gYmxvY2stY29sbGFwc2Uge1xuICAgICAgd2lkdGg6IGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zKSArIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1ucyk7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucyk7XG4gICAgICB9XG5cbiAgICB9IEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiBmbGV4LWd1dHRlcigkY29udGFpbmVyLWNvbHVtbnMpO1xuICAgICAgd2lkdGg6IGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zKTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIkcGFyZW50LWNvbHVtbnM6ICRncmlkLWNvbHVtbnMgIWRlZmF1bHQ7XG4kZmctY29sdW1uOiAkY29sdW1uO1xuJGZnLWd1dHRlcjogJGd1dHRlcjtcbiRmZy1tYXgtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiRjb250YWluZXItZGlzcGxheS10YWJsZTogZmFsc2UgIWRlZmF1bHQ7XG4kbGF5b3V0LWRpcmVjdGlvbjogTFRSICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gZmxleC1ncmlkKCRjb2x1bW5zLCAkY29udGFpbmVyLWNvbHVtbnM6ICRmZy1tYXgtY29sdW1ucykge1xuICAkd2lkdGg6ICRjb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcbiAgJGNvbnRhaW5lci13aWR0aDogJGNvbnRhaW5lci1jb2x1bW5zICogJGZnLWNvbHVtbiArICgkY29udGFpbmVyLWNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XG4gIEByZXR1cm4gcGVyY2VudGFnZSgkd2lkdGggLyAkY29udGFpbmVyLXdpZHRoKTtcbn1cblxuQGZ1bmN0aW9uIGZsZXgtZ3V0dGVyKCRjb250YWluZXItY29sdW1uczogJGZnLW1heC1jb2x1bW5zLCAkZ3V0dGVyOiAkZmctZ3V0dGVyKSB7XG4gICRjb250YWluZXItd2lkdGg6ICRjb250YWluZXItY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbnRhaW5lci1jb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJGd1dHRlciAvICRjb250YWluZXItd2lkdGgpO1xufVxuXG5AZnVuY3Rpb24gZ3JpZC13aWR0aCgkbikge1xuICBAcmV0dXJuICRuICogJGd3LWNvbHVtbiArICgkbiAtIDEpICogJGd3LWd1dHRlcjtcbn1cblxuQGZ1bmN0aW9uIGdldC1wYXJlbnQtY29sdW1ucygkY29sdW1ucykge1xuICBAaWYgJGNvbHVtbnMgIT0gJGdyaWQtY29sdW1ucyB7XG4gICAgJHBhcmVudC1jb2x1bW5zOiAkY29sdW1ucyAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkcGFyZW50LWNvbHVtbnM6ICRncmlkLWNvbHVtbnMgIWdsb2JhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHBhcmVudC1jb2x1bW5zO1xufVxuXG5AZnVuY3Rpb24gaXMtZGlzcGxheS10YWJsZSgkY29udGFpbmVyLWlzLWRpc3BsYXktdGFibGUsICRkaXNwbGF5KSB7XG4gIEByZXR1cm4gJGNvbnRhaW5lci1pcy1kaXNwbGF5LXRhYmxlID09IHRydWUgb3IgJGRpc3BsYXkgPT0gdGFibGU7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBSZW1vdmVzIHRoZSBlbGVtZW50J3MgZ3V0dGVyIG1hcmdpbiwgcmVnYXJkbGVzcyBvZiBpdHMgcG9zaXRpb24gaW4gdGhlIGdyaWQgaGllcmFyY2h5IG9yIGRpc3BsYXkgcHJvcGVydHkuIEl0IGNhbiB0YXJnZXQgYSBzcGVjaWZpYyBlbGVtZW50LCBvciBldmVyeSBgbnRoLWNoaWxkYCBvY2N1cnJlbmNlLiBXb3JrcyBvbmx5IHdpdGggYGJsb2NrYCBsYXlvdXRzLlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkcXVlcnkgW2Jsb2NrXVxuLy8vICAgTGlzdCBvZiBhcmd1bWVudHMuIFN1cHBvcnRlZCBhcmd1bWVudHMgYXJlIGBudGgtY2hpbGRgIHNlbGVjdG9ycyAodGFyZ2V0cyBhIHNwZWNpZmljIHBzZXVkbyBlbGVtZW50KSBhbmQgYGF1dG9gICh0YXJnZXRzIGBsYXN0LWNoaWxkYCkuXG4vLy9cbi8vLyAgIFdoZW4gcGFzc2VkIGFuIGBudGgtY2hpbGRgIGFyZ3VtZW50IG9mIHR5cGUgYCpuYCB3aXRoIGBibG9ja2AgZGlzcGxheSwgdGhlIG9tZWdhIG1peGluIGF1dG9tYXRpY2FsbHkgYWRkcyBhIGNsZWFyIHRvIHRoZSBgKm4rMWAgdGggZWxlbWVudC4gTm90ZSB0aGF0IGNvbXBvc2l0ZSBhcmd1bWVudHMgc3VjaCBhcyBgMm4rMWAgZG8gbm90IHN1cHBvcnQgdGhpcyBmZWF0dXJlLlxuLy8vXG4vLy8gICAqKkRlcHJlY2F0aW9uIHdhcm5pbmcqKjogVGhlIG9tZWdhIG1peGluIHdpbGwgbm8gbG9uZ2VyIHRha2UgYSBgJGRpcmVjdGlvbmAgYXJndW1lbnQuIFRvIGNoYW5nZSB0aGUgbGF5b3V0IGRpcmVjdGlvbiwgdXNlIGByb3coJGRpcmVjdGlvbilgIG9yIHNldCBgJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbmAgaW5zdGVhZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBvbWVnYTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLm50aC1lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgb21lZ2EoNG4pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLy8gICB9XG4vLy9cbi8vLyAgIC5udGgtZWxlbWVudDpudGgtY2hpbGQoNG4pIHtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgfVxuLy8vXG4vLy8gICAubnRoLWVsZW1lbnQ6bnRoLWNoaWxkKDRuKzEpIHtcbi8vLyAgICAgY2xlYXI6IGxlZnQ7XG4vLy8gICB9XG5cbkBtaXhpbiBvbWVnYSgkcXVlcnk6IGJsb2NrLCAkZGlyZWN0aW9uOiBkZWZhdWx0KSB7XG4gICR0YWJsZTogYmVsb25ncy10byh0YWJsZSwgJHF1ZXJ5KTtcbiAgJGF1dG86IGJlbG9uZ3MtdG8oYXV0bywgJHF1ZXJ5KTtcblxuICBAaWYgJGRpcmVjdGlvbiAhPSBkZWZhdWx0IHtcbiAgICBAaW5jbHVkZSAtbmVhdC13YXJuKFwiVGhlIG9tZWdhIG1peGluIHdpbGwgbm8gbG9uZ2VyIHRha2UgYSAkZGlyZWN0aW9uIGFyZ3VtZW50LiBUbyBjaGFuZ2UgdGhlIGxheW91dCBkaXJlY3Rpb24sIHVzZSB0aGUgZGlyZWN0aW9uKCl7Li4ufSBtaXhpbi5cIik7XG4gIH0gQGVsc2Uge1xuICAgICRkaXJlY3Rpb246IGdldC1kaXJlY3Rpb24oJGxheW91dC1kaXJlY3Rpb24sICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24pO1xuICB9XG5cbiAgQGlmICR0YWJsZSB7XG4gICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSBvbWVnYSBtaXhpbiBubyBsb25nZXIgcmVtb3ZlcyBwYWRkaW5nIGluIHRhYmxlIGxheW91dHMuXCIpO1xuICB9XG5cbiAgQGlmIGxlbmd0aCgkcXVlcnkpID09IDEge1xuICAgIEBpZiAkYXV0byB7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSBpZiBjb250YWlucy1kaXNwbGF5LXZhbHVlKCRxdWVyeSkgYW5kICR0YWJsZSA9PSBmYWxzZSB7XG4gICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogMDtcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBudGgtY2hpbGQoJHF1ZXJ5LCAkZGlyZWN0aW9uKTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRxdWVyeSkgPT0gMiB7XG4gICAgQGlmICRhdXRvIHtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgbnRoLWNoaWxkKG50aCgkcXVlcnksIDEpLCAkZGlyZWN0aW9uKTtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBpbmNsdWRlIC1uZWF0LXdhcm4oXCJUb28gbWFueSBhcmd1bWVudHMgcGFzc2VkIHRvIHRoZSBvbWVnYSgpIG1peGluLlwiKTtcbiAgfVxufVxuXG5AbWl4aW4gbnRoLWNoaWxkKCRxdWVyeSwgJGRpcmVjdGlvbikge1xuICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiBnZXQtb3Bwb3NpdGUtZGlyZWN0aW9uKCRkaXJlY3Rpb24pO1xuXG4gICY6bnRoLWNoaWxkKCN7JHF1ZXJ5fSkge1xuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJHF1ZXJ5KSA9PSBudW1iZXIgYW5kIHVuaXQoJHF1ZXJ5KSA9PSBcIm5cIiB7XG4gICAgJjpudGgtY2hpbGQoI3skcXVlcnl9KzEpIHtcbiAgICAgIGNsZWFyOiAkb3Bwb3NpdGUtZGlyZWN0aW9uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gTm90IGZ1bmN0aW9uIGZvciBMaWJzYXNzIGNvbXBhdGliaWxpdHlcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL2xpYnNhc3MvaXNzdWVzLzM2OFxuQGZ1bmN0aW9uIGlzLW5vdCgkdmFsdWUpIHtcbiAgQHJldHVybiBpZigkdmFsdWUsIGZhbHNlLCB0cnVlKTtcbn1cblxuLy8gQ2hlY2tzIGlmIGEgbnVtYmVyIGlzIGV2ZW5cbkBmdW5jdGlvbiBpcy1ldmVuKCRpbnQpIHtcbiAgQHJldHVybiAkaW50ICUgMiA9PSAwO1xufVxuXG4vLyBDaGVja3MgaWYgYW4gZWxlbWVudCBiZWxvbmdzIHRvIGEgbGlzdCBvciBub3RcbkBmdW5jdGlvbiBiZWxvbmdzLXRvKCR0ZXN0ZWQtaXRlbSwgJGxpc3QpIHtcbiAgQHJldHVybiBpcy1ub3Qobm90LWJlbG9uZ3MtdG8oJHRlc3RlZC1pdGVtLCAkbGlzdCkpO1xufVxuXG5AZnVuY3Rpb24gbm90LWJlbG9uZ3MtdG8oJHRlc3RlZC1pdGVtLCAkbGlzdCkge1xuICBAcmV0dXJuIGlzLW5vdChpbmRleCgkbGlzdCwgJHRlc3RlZC1pdGVtKSk7XG59XG5cbi8vIENvbnRhaW5zIGRpc3BsYXkgdmFsdWVcbkBmdW5jdGlvbiBjb250YWlucy1kaXNwbGF5LXZhbHVlKCRxdWVyeSkge1xuICBAcmV0dXJuIGJlbG9uZ3MtdG8odGFibGUsICRxdWVyeSlcbiAgICAgICBvciBiZWxvbmdzLXRvKGJsb2NrLCAkcXVlcnkpXG4gICAgICAgb3IgYmVsb25ncy10byhpbmxpbmUtYmxvY2ssICRxdWVyeSlcbiAgICAgICBvciBiZWxvbmdzLXRvKGlubGluZSwgJHF1ZXJ5KTtcbn1cblxuLy8gUGFyc2VzIHRoZSBmaXJzdCBhcmd1bWVudCBvZiBzcGFuLWNvbHVtbnMoKVxuQGZ1bmN0aW9uIGNvbnRhaW5lci1zcGFuKCRzcGFuOiAkc3Bhbikge1xuICBAaWYgbGVuZ3RoKCRzcGFuKSA9PSAzIHtcbiAgICAkY29udGFpbmVyLWNvbHVtbnM6IG50aCgkc3BhbiwgMyk7XG4gICAgQHJldHVybiAkY29udGFpbmVyLWNvbHVtbnM7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRzcGFuKSA9PSAyIHtcbiAgICAkY29udGFpbmVyLWNvbHVtbnM6IG50aCgkc3BhbiwgMik7XG4gICAgQHJldHVybiAkY29udGFpbmVyLWNvbHVtbnM7XG4gIH1cblxuICBAcmV0dXJuICRncmlkLWNvbHVtbnM7XG59XG5cbkBmdW5jdGlvbiBjb250YWluZXItc2hpZnQoJHNoaWZ0OiAkc2hpZnQpIHtcbiAgJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFkZWZhdWx0ICFnbG9iYWw7XG5cbiAgQGlmIGxlbmd0aCgkc2hpZnQpID09IDMge1xuICAgICRjb250YWluZXItY29sdW1uczogbnRoKCRzaGlmdCwgMyk7XG4gICAgQHJldHVybiAkY29udGFpbmVyLWNvbHVtbnM7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCRzaGlmdCkgPT0gMiB7XG4gICAgJGNvbnRhaW5lci1jb2x1bW5zOiBudGgoJHNoaWZ0LCAyKTtcbiAgICBAcmV0dXJuICRjb250YWluZXItY29sdW1ucztcbiAgfVxuXG4gIEByZXR1cm4gJHBhcmVudC1jb2x1bW5zO1xufVxuXG4vLyBHZW5lcmF0ZXMgYSBzdHJpcGVkIGJhY2tncm91bmRcbkBmdW5jdGlvbiBncmFkaWVudC1zdG9wcygkZ3JpZC1jb2x1bW5zLCAkY29sb3I6ICR2aXN1YWwtZ3JpZC1jb2xvcikge1xuICAkdHJhbnNwYXJlbnQ6IHRyYW5zcGFyZW50O1xuXG4gICRjb2x1bW4td2lkdGg6IGZsZXgtZ3JpZCgxLCAkZ3JpZC1jb2x1bW5zKTtcbiAgJGd1dHRlci13aWR0aDogZmxleC1ndXR0ZXIoJGdyaWQtY29sdW1ucyk7XG4gICRjb2x1bW4tb2Zmc2V0OiAkY29sdW1uLXdpZHRoO1xuXG4gICR2YWx1ZXM6ICgkdHJhbnNwYXJlbnQgMCwgJGNvbG9yIDApO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRvICRncmlkLWNvbHVtbnMqMiB7XG4gICAgQGlmIGlzLWV2ZW4oJGkpIHtcbiAgICAgICR2YWx1ZXM6IGFwcGVuZCgkdmFsdWVzLCAkdHJhbnNwYXJlbnQgJGNvbHVtbi1vZmZzZXQsIGNvbW1hKTtcbiAgICAgICR2YWx1ZXM6IGFwcGVuZCgkdmFsdWVzLCAkY29sb3IgJGNvbHVtbi1vZmZzZXQsIGNvbW1hKTtcbiAgICAgICRjb2x1bW4tb2Zmc2V0OiAkY29sdW1uLW9mZnNldCArICRjb2x1bW4td2lkdGg7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkdmFsdWVzOiBhcHBlbmQoJHZhbHVlcywgJGNvbG9yICRjb2x1bW4tb2Zmc2V0LCBjb21tYSk7XG4gICAgICAkdmFsdWVzOiBhcHBlbmQoJHZhbHVlcywgJHRyYW5zcGFyZW50ICRjb2x1bW4tb2Zmc2V0LCBjb21tYSk7XG4gICAgICAkY29sdW1uLW9mZnNldDogJGNvbHVtbi1vZmZzZXQgKyAkZ3V0dGVyLXdpZHRoO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlcztcbn1cblxuLy8gTGF5b3V0IGRpcmVjdGlvblxuQGZ1bmN0aW9uIGdldC1kaXJlY3Rpb24oJGxheW91dCwgJGRlZmF1bHQpIHtcbiAgJGRpcmVjdGlvbjogbnVsbDtcblxuICBAaWYgdG8tdXBwZXItY2FzZSgkbGF5b3V0KSA9PSBcIkxUUlwiIG9yIHRvLXVwcGVyLWNhc2UoJGxheW91dCkgPT0gXCJSVExcIiB7XG4gICAgJGRpcmVjdGlvbjogZGlyZWN0aW9uLWZyb20tbGF5b3V0KCRsYXlvdXQpO1xuICB9IEBlbHNlIHtcbiAgICAkZGlyZWN0aW9uOiBkaXJlY3Rpb24tZnJvbS1sYXlvdXQoJGRlZmF1bHQpO1xuICB9XG5cbiAgQHJldHVybiAkZGlyZWN0aW9uO1xufVxuXG5AZnVuY3Rpb24gZGlyZWN0aW9uLWZyb20tbGF5b3V0KCRsYXlvdXQpIHtcbiAgJGRpcmVjdGlvbjogbnVsbDtcblxuICBAaWYgdG8tdXBwZXItY2FzZSgkbGF5b3V0KSA9PSBcIkxUUlwiIHtcbiAgICAkZGlyZWN0aW9uOiByaWdodDtcbiAgfSBAZWxzZSB7XG4gICAgJGRpcmVjdGlvbjogbGVmdDtcbiAgfVxuXG4gIEByZXR1cm4gJGRpcmVjdGlvbjtcbn1cblxuQGZ1bmN0aW9uIGdldC1vcHBvc2l0ZS1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiBsZWZ0O1xuXG4gIEBpZiAkZGlyZWN0aW9uID09IFwibGVmdFwiIHtcbiAgICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiByaWdodDtcbiAgfVxuXG4gIEByZXR1cm4gJG9wcG9zaXRlLWRpcmVjdGlvbjtcbn1cbiIsIiNzZWN0aW9uLW5ld3NsZXR0ZXIge1xuXHRwYWRkaW5nOiA5ZW0gMCAzZW07XG59XG4ubmV3c2xldHRlciB7XG5cdHBhZGRpbmc6IDNlbSAwIDJlbTtcblx0Y29sb3I6IGRhcmtlbigkaGlnaGxpZ2h0LCAyMCUpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkaGlnaGxpZ2h0O1xuXHQubmwtdGV4dCxcblx0Lm5sLWZvcm0ge1xuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcblx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygxMik7XG5cdFx0XHRAaW5jbHVkZSBwYWQoMWVtIDUlKTtcblx0XHR9XG5cdH1cblx0Lm5sLXRleHQge1xuXHRcdHAge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0fVxuXHR9XG5cdC5ubC1mb3JtIHtcblx0XHRpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tZG93bikge1xuXHRcdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNCk7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNCBvZiA2KTtcblx0XHRcdHBhZGRpbmc6IDAgMWVtO1xuXHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XG5cdFx0XHRoZWlnaHQ6IDNlbTtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cdFx0aW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi1kb3duKSB7XG5cdFx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg0KTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1hcmdpbi10b3A6IDFlbTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDIgb2YgNik7XG5cdFx0XHRAaW5jbHVkZSBvbWVnYTtcblx0XHRcdGhlaWdodDogM2VtO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XG5cdFx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJGhpZ2hsaWdodCwgMTAlKTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogZGFya2VuKCRoaWdobGlnaHQsIDUlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBBZGRzIHBhZGRpbmcgdG8gdGhlIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRwYWRkaW5nIFtmbGV4LWd1dHRlcigpXVxuLy8vICAgQSBsaXN0IG9mIHBhZGRpbmcgdmFsdWUocykgdG8gdXNlLiBQYXNzaW5nIGBkZWZhdWx0YCBpbiB0aGUgbGlzdCB3aWxsIHJlc3VsdCBpbiB1c2luZyB0aGUgZ3V0dGVyIHdpZHRoIGFzIGEgcGFkZGluZyB2YWx1ZS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwYWQoMzBweCAtMjBweCAxMHB4IGRlZmF1bHQpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBwYWRkaW5nOiAzMHB4IC0yMHB4IDEwcHggMi4zNTc2NSU7XG4vLy8gICB9XG5cbkBtaXhpbiBwYWQoJHBhZGRpbmc6IGZsZXgtZ3V0dGVyKCkpIHtcbiAgJHBhZGRpbmctbGlzdDogbnVsbDtcbiAgQGVhY2ggJHZhbHVlIGluICRwYWRkaW5nIHtcbiAgICAkdmFsdWU6IGlmKCR2YWx1ZSA9PSAnZGVmYXVsdCcsIGZsZXgtZ3V0dGVyKCksICR2YWx1ZSk7XG4gICAgJHBhZGRpbmctbGlzdDogam9pbigkcGFkZGluZy1saXN0LCAkdmFsdWUpO1xuICB9XG4gIHBhZGRpbmc6ICRwYWRkaW5nLWxpc3Q7XG59XG4iLCIjc2VjdGlvbi1wYWdlIHtcblx0cGFkZGluZzogOWVtIDAgNGVtO1xuXHRtaW4taGVpZ2h0OiA4MzBweDtcblx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG5cdFx0bWluLWhlaWdodDogMDtcblx0XHRwYWRkaW5nOiA4ZW0gMDtcblx0fVxufVxuLnBhZ2Uge1xuXHRjb2xvcjogJG91cmxpdGU7XG5cdGJhY2tncm91bmQtY29sb3I6ICRvdXJtaWQ7XG5cdC50aXRsZSB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblx0fVxuXHRhIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0fVxuXHRhLmJ1dHRvbiB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0fVxuXHQubWFpbi1jb2x1bW4ge1xuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg5KTtcblx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygxMik7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0fVxuXHRcdGgyIHtcblx0XHRcdGNvbG9yOiAkaGlnaGxpZ2h0NTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0XHRtYXJnaW4tdG9wOiAwLjNlbTtcblx0XHR9XG5cdFx0cCB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAzZW07XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMC41ZW07XG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0YXNpZGUuc2lkZWJhciB7XG5cdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDMpO1xuXHRcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTtcblx0XHRcdEBpbmNsdWRlIHBhZCgyZW0gMjAlIDApO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygxMik7XG5cdFx0XHRAaW5jbHVkZSBwYWQoMWVtIDMlIDApO1xuXHRcdH1cblx0XHQud2lkZ2V0LXdyYXBwZXIge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogM2VtO1xuXHRcdFx0LndpZGdldC10aXRsZSB7XG5cdFx0XHRcdGg0IHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IHNvbGlkIDRweCBkYXJrZW4od2hpdGUsIDUlKTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHRcdHVsLmJsb2ctY2F0ZWdvcmllcyBsaSB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IHNvbGlkIDFweCBkYXJrZW4od2hpdGUsIDUlKTtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICdcXGYxMzgnO1xuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OiAnRm9udGF3ZXNvbWUnO1xuXHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRcdHBhZGRpbmc6IC41ZW07XG5cdFx0XHRcdFx0Y29sb3I6ICRtZWRpdW0tZ3JheTtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmhvdmVyOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRoaWdobGlnaHQ7XG5cdFx0XHRcdH1cblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0cGFkZGluZzogLjVlbTtcblx0XHRcdFx0XHRjb2xvcjogJG1lZGl1bS1ncmF5O1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRoaWdobGlnaHQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiI3NlY3Rpb24tZnVsbC1wYWdlIHtcblx0cGFkZGluZzogOWVtIDAgM2VtO1xuXHRtaW4taGVpZ2h0OiA4MzBweDtcblx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG5cdFx0bWluLWhlaWdodDogMDtcblx0fVxufVxuLmZ1bGwtcGFnZSB7XG5cdGNvbG9yOiAkb3VybGl0ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogJG91cm1pZDtcblx0LnRpdGxlIHtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cdC5tYWluLWNvbHVtbiB7XG5cdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTtcblx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdFx0aDIge1xuXHRcdFx0Y29sb3I6IGxpZ2h0ZW4oJG91cm1pZCwgNDAlKTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0fVxuXHRcdGgzLmJsb2ctZGF0ZSB7XG5cdFx0XHRjb2xvcjogJG91cmxpdGU7XG5cdFx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdFx0Zm9udC1zaXplOiAwLjc1ZW07XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0XHRhLmJsb2ctbGluayB7XG5cdFx0XHRmb250LXNpemU6IDEuM2VtO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxZW07XG5cdFx0fVxuXHR9XG59IiwiLnByaWNpbmcge1xuXHRwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcblx0LnByaWNlLWl0ZW0ge1xuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg0KTtcblx0XHRAaW5jbHVkZSBvbWVnYSgzbik7XG5cdFx0bWFyZ2luLWJvdHRvbTogMS43ZW07XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygxMik7XG5cdFx0XHRAaW5jbHVkZSBvbWVnYSgxbik7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDEuNWVtO1xuXHRcdH1cblxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmb250LXNpemU6IDEuMmVtO1xuXHRcdGNvbG9yOiAkb3VybWlkO1xuXG5cdFx0LnByaWNlLWl0ZW0tMSB7XG5cdFx0XHRjb2xvcjogJG91cmxpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhY2VkO1xuXHRcdH1cblxuXHRcdC5wcmljZS1pdGVtLTEtYWx0IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjMDBhY2VkLCA3JSk7XG5cdFx0fVxuXG5cdFx0LnByaWNlLWl0ZW0tMiB7XG5cdFx0XHRjb2xvcjogJG91cmxpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMWFiYzljO1xuXHRcdH1cblxuXHRcdC5wcmljZS1pdGVtLTItYWx0IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjMWFiYzljLCA3JSk7XG5cdFx0fVxuXG5cdFx0LnByaWNlLWl0ZW0tMyB7XG5cdFx0XHRjb2xvcjogJG91cmxpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjYzBhMTZiO1xuXHRcdH1cblxuXHRcdC5wcmljZS1pdGVtLTMtYWx0IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigjYzBhMTZiLCA3JSk7XG5cdFx0fVxuXG5cdFx0LnByaWNlLWl0ZW0taGVhZGluZyB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuXHRcdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDVweDtcblx0XHRcdHBhZGRpbmc6IDAuNWVtIDAuNWVtIDA7XG5cdFx0fVxuXG5cdFx0LnByaWNlLWl0ZW0tcHJpY2Uge1xuXHRcdFx0Zm9udC1zaXplOiAxLjVlbTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRjb2xvcjogJG91cm1pZDtcblx0XHRcdHBhZGRpbmctdG9wOiAwLjNlbTtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwLjVlbTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwLjRlbTtcblx0XHR9XG5cblx0XHR1bC5wcmljZS1pdGVtLWxpc3Qge1xuXHRcdFx0Zm9udC1zaXplOiAwLjdlbTtcblx0XHRcdGxpLnByaWNlLWl0ZW0tbGlzdC1pdGVtLW9kZCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRvdXJsaXRlO1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDAuM2VtO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwLjNlbTtcblx0XHRcdH1cblx0XHRcdGxpLnByaWNlLWl0ZW0tbGlzdC1pdGVtLWV2ZW4ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJG91cmxpdGUsIDclKTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwLjNlbTtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMC4zZW07XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnByaWNlLWl0ZW0tY3RhIHtcblx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDVweDtcblx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7XG5cdFx0XHRwYWRkaW5nOiAwLjVlbTtcblx0XHR9XG5cblx0XHRhLmJ1dHRvbiB7XG5cdFx0XHRmb250LXNpemU6IDAuOWVtO1xuXHRcdH1cblx0fVxufSIsIiNzZWN0aW9uLXNob3djYXNlIHtcblx0cGFkZGluZzogNmVtIDAgNGVtO1xuXHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcblx0XHRwYWRkaW5nOiAyZW0gMDtcblx0fVxufVxuLnNob3djYXNlIHtcblx0cGFkZGluZzogMWVtIDAgNWVtO1xuXHQuc3BsaXQge1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdG1hcmdpbjogNWVtIDAgMCAwO1xuXHRcdC5zcGxpdC1sZWZ0LFxuXHRcdC5zcGxpdC1yaWdodCB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcblx0XHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTtcblx0XHRcdFx0QGluY2x1ZGUgcGFkKDFlbSAzZW0pO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcblx0XHRcdFx0QGluY2x1ZGUgcGFkKDEwcHgpO1xuXHRcdFx0fVxuXHRcdFx0Y29sb3I6ICRvdXJsaXRlO1xuXHRcdFx0aDEge1xuXHRcdFx0XHRmb250LXNpemU6IDIuNmVtO1xuXHRcdFx0XHRtYXJnaW46IDAgMCAwLjNlbTtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHRwLmJ1dHRvbnMge1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuc3BsaXQtbGVmdC5mbG9hdC1yaWdodCB7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHQmLnNwbGl0LXRleHQge1xuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxLjVlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQuc3BsaXQtcmlnaHQuZmxvYXQtbGVmdCB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cdFx0LnNwbGl0LW1lZGlhIHtcblx0XHRcdCNzaG93Y2FzZS1zbGlkZXIgLml0ZW0gaW1ne1xuXHRcdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0ICAgIHdpZHRoOiAxMDAlO1xuXHRcdFx0ICAgIGhlaWdodDogYXV0bztcblx0XHRcdCAgICBjdXJzb3I6IG1vdmU7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5pbWcge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDMpO1xuXHRcdFx0QGluY2x1ZGUgb21lZ2EoNW4pO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMWVtO1xuXHRcdH1cblx0fVxufVxuLnNob3djYXNlLmdyYXkge1xuXHRiYWNrZ3JvdW5kOiBkYXJrZW4od2hpdGUsIDUlKTtcbn0iLCJzZWN0aW9uLnF1b3RlIHtcblx0cGFkZGluZzogM2VtIDAuMjVlbTtcblx0YmxvY2txdW90ZSB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRjb2xvcjogbGlnaHRlbigkaGlnaGxpZ2h0LCA0MCUpO1xuXHRcdGZvbnQtc2l6ZTogMS41ZW07XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGJvcmRlcjogMDtcblx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0Y2l0ZSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMWVtO1xuXHRcdFx0Zm9udC1zaXplOiAwLjllbTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Y29sb3I6IGxpZ2h0ZW4oJGhpZ2hsaWdodCwgNDAlKTtcblx0XHR9XG5cdH1cbn0iLCJzZWN0aW9uLnRpY2tlciB7XG5cdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nOiA0LjRlbSAwLjI1ZW07XG5cdGgxIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0Zm9udC1mYW1pbHk6ICRtb25vc3BhY2U7XG5cdFx0Zm9udC1zaXplOiAyLjVlbTtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcblx0XHRtYXJnaW46IDA7XG5cdH1cblx0LnRpY2tlciB7XG5cdFx0cGFkZGluZy1sZWZ0OiAwLjJlbTtcblx0XHRjb2xvcjogJG91cm1pZDtcblx0fVxufSIsIiNzZWN0aW9uLWNvbnRhY3Qge1xuXHRwYWRkaW5nOiA5ZW0gMCAzZW07XG5cdGNvbG9yOiAkb3VybGl0ZTtcblx0YmFja2dyb3VuZC1jb2xvcjogJG91cm1pZDtcblx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG5cdFx0bWluLWhlaWdodDogMDtcblx0fVxuXHRwIHtcblx0XHRmb250LXdlaWdodDogMzAwO1xuXHR9XG59XG4uY29udGFjdCB7XG5cdC50aXRsZSB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdH1cblx0XHRoMiB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogLjRlbTtcblx0XHR9XG5cdH1cblx0LmZvcm0ge1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdC5mb3JtLWxlZnQge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogMS42NWVtO1xuXHRcdFx0Zm9udC1zaXplOiAxLjRlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjMzZW07XG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcblx0XHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTtcblx0XHRcdFx0QGluY2x1ZGUgcGFkKDAgNSUpO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi1kb3duKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMS4yZW07XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5mb3JtLXJpZ2h0IHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuXHRcdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMTIpO1xuXHRcdFx0XHRAaW5jbHVkZSBwYWQoMCA1JSk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdGxhYmVsIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHRcdGlucHV0IHtcblx0XHRcdGhlaWdodDogM2VtO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMWVtO1xuXHRcdFx0cGFkZGluZzogMCAxZW07XG5cdFx0fVxuXHRcdHRleHRhcmVhIHtcblx0XHRcdHBhZGRpbmc6IDFlbTtcblx0XHRcdGhlaWdodDogMTJlbTtcblx0XHR9XG5cdH1cblx0cC5zdWJtaXQge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRpbnB1dCB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkaGlnaGxpZ2h0Mjtcblx0XHRcdHdpZHRoOiAxNjBweDtcblx0XHRcdGhlaWdodDogNTBweDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogbGlnaHRlbigkaGlnaGxpZ2h0MiwgNSUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuZm9ybS1mZWVkYmFjayB7XG5cdFx0cGFkZGluZzogMWVtIDJlbTtcblx0XHRjb2xvcjogd2hpdGU7XG5cdH1cblx0LmZvcm0tZmVlZGJhY2suZm9ybS1zdWNjZXNzIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMmVjYzcxO1xuXHR9XG5cdC5mb3JtLWZlZWRiYWNrLmZvcm0tZXJyb3Ige1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlNzRjM2M7XG5cdH1cblx0I2NvbnRhY3QtZXJyb3Ige1xuXHRcdG1hcmdpbjogMCAyMCUgMmVtO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tZG93bikge1xuXHRcdFx0bWFyZ2luOiAwIDUlIDJlbTtcblx0XHR9XG5cdH1cbn1cblxuI3NlY3Rpb24tc29jaWFsLWNvbnRhY3RzIHtcblx0cGFkZGluZzogMy4zNWVtIDA7XG59XG5cbi5zb2NpYWwtY29udGFjdHMge1xuXHRjb2xvcjogJG91cmxpdGU7XG5cdGJhY2tncm91bmQtY29sb3I6ICRoaWdobGlnaHQ7XG5cdGZvbnQtZmFtaWx5OiAkY3Vyc2l2ZTtcblx0cCB7XG5cdFx0Zm9udC1zaXplOiAxLjdlbTtcblx0XHRjb2xvcjogbGlnaHRlbigkaGlnaGxpZ2h0LCA0MCUpO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59IiwiXG5mb290ZXIuZm9vdGVyIHtcblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICRvdXJkYXJrO1xuXHR6LWluZGV4OiAtMTAwO1xuXG5cdHAuY29weXJpZ2h0IHtcblx0XHRcblx0XHRAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi1kb3duKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMTIpO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0cGFkZGluZzogMmVtIDAgMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoOCk7XG5cblx0XHRwYWRkaW5nOiAyZW0gMDtcblx0XHRjb2xvcjogZGFya2VuKHdoaXRlLCAyNSUpO1xuXHRcdFxuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHR1bC5zb2NpYWwge1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tZG93bikge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHRcdFxuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg0KTtcblxuXHRcdGZsb2F0OiByaWdodDtcblx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRtYXJnaW46IDJlbSBhdXRvO1xuXG5cdFx0bGkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdGNvbG9yOiBkYXJrZW4od2hpdGUsIDIwJSk7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycztcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMS4zZW07XG5cdFx0XHRcdHBhZGRpbmc6IDAgMCAwIDEuMmVtO1xuXHRcdFx0XHRjb2xvcjogZGFya2VuKHdoaXRlLCAyMCUpO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGNvbG9yOiAkaGlnaGxpZ2h0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59Il19 */
