/*
 * Style setup for redsift-ui based sifts.
 *
 * - Provides:
 *   . ready-to-use UI components
 *   . responsive type system
 *   . breakpoint setup (via 'rupture')
 *   . common functionality like reset, patterns and fonts
 *
 * - Used by:
 *   . redsift-light
 *   . redsift-dark
 *
 * - Folder structure:
 *
 *   ./lib        -> mixin and function library
 *   ./common     -> CSS setup and common classes
 *   ./components -> UI components
 */
/*
 * Configuration via object '$ui-rs-core'
 */
/*
 * Mixin/functions library
 *
 * Common mixins and functions used by redsift-ui.
 */
/*
 * Base configuration and common classes:
 *
 * CSS base setup and common CSS classes.
 */
body {
  margin: 0;
  padding: 0;
  min-height: 100%;
}
.-pattern-down-arrow-green {
  background-image: url("/icons/down-arrow-green.svg");
  background-repeat: repeat;
  background-size: 12px 7px;
}
.-pattern-redsift-logo {
  background-image: url("/icons/redsift-logo-red-8.1.svg");
  background-repeat: repeat;
  background-size: 7px 7px;
}
.animate-opacity {
  transition: opacity ease-in 400ms;
}
.fade-in {
  animation: fadein 400ms ease-in 0s 1 normal both;
}
.delay {
  animation-delay: 400ms;
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.hidden {
  opacity: 0;
}
.hash {
  background-image: repeating-linear-gradient(125deg, transparent, transparent 2px, rgba(0,0,0,0.2) 2px, rgba(0,0,0,0.2) 3px, transparent 3px, transparent 5px, rgba(0,0,0,0.2) 5px);
}
.-rs-icon-redsift-red {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-redsift-red.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-redsift-cloud {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-redsift-cloud.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-redsift-white {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-redsift-white.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-github {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/images/icon-github.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-github-white {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-icon-github-white.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-google {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/images/icon-google.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-linkedin {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-icon-linkedin.svg");
  background-position: 50% 50%;
  background-size: 25px;
  background-repeat: no-repeat;
}
.-rs-icon-slack {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/images/icon-slack.png");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-twitter {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/images/icon-twitter.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-settings {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/images/icon-settings.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-down-arrow-green {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/images/icon-down-arrow-green.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-logout {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-logout.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-profile {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-profile.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-dashboard {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-dashboard.svg");
  background-position: 50% 50%;
  background-size: 24px;
  background-repeat: no-repeat;
}
.-rs-icon-catalogue {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-catalogue.svg");
  background-position: 50% 50%;
  background-size: 24px;
  background-repeat: no-repeat;
}
.-rs-icon-workshop {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-workshop.svg");
  background-position: 50% 50%;
  background-size: 24px;
  background-repeat: no-repeat;
}
.-rs-icon-wireframe-blue {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-wireframe-blue.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-expand {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-expand.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-expand-split {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-expand-split.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-exit {
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-exit.svg");
  background-position: 50% 50%;
  background-size: 30px;
  background-repeat: no-repeat;
}
.-rs-icon-question {
  width: 30px;
  height: 70px;
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-question.svg");
  background-position: 50% 50%;
  background-size: 15px;
  background-repeat: no-repeat;
  opacity: 0.7;
}
.-rs-icon-question:hover {
  opacity: 1;
}
/* Heading font @import url("https://fonts.googleapis.com/css?family=Raleway:200"); */
/* latin */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 200;
  src: local('Raleway ExtraLight'), local('Raleway-ExtraLight'), url("https://fonts.gstatic.com/s/raleway/v11/8KhZd3VQBtXTAznvKjw-k73hpw3pgy2gAi-Ip7WPMi0.woff") format('woff'), url("https://fonts.gstatic.com/s/raleway/v11/8KhZd3VQBtXTAznvKjw-ky3USBnSvpkopQaUR-2r7iU.ttf") format('truetype');
}
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 200;
  src: local('Raleway ExtraLight'), local('Raleway-ExtraLight'), url("https://fonts.gstatic.com/s/raleway/v11/8KhZd3VQBtXTAznvKjw-kwzyDMXhdD8sAj6OAJTFsBI.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
@font-face {
  font-family: 'Electrolize';
  font-style: normal;
  font-weight: 400;
  src: local('Electrolize'), local('Electrolize-Regular'), url("https://fonts.gstatic.com/s/electrolize/v5/DDy9sgU2U7S4xAwH5thnJ7rIa-7acMAeDBVuclsi6Gc.woff") format('woff'), url("https://fonts.gstatic.com/s/electrolize/v5/DDy9sgU2U7S4xAwH5thnJywlidHJgAgmTjOEEzwu1L8.ttf") format('truetype');
}
@font-face {
  font-family: 'Electrolize';
  font-style: normal;
  font-weight: 400;
  src: local('Electrolize'), local('Electrolize-Regular'), url("https://fonts.gstatic.com/s/electrolize/v5/DDy9sgU2U7S4xAwH5thnJ4gp9Q8gbYrhqGlRav_IXfk.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 300;
  src: local('Source Code Pro Light'), local('SourceCodePro-Light'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/leqv3v-yTsJNC7nFznSMqcVNtom4QlEDNJaqqqzqdSs.woff") format('woff'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/leqv3v-yTsJNC7nFznSMqfS42wKzre0cxmO5m5GyTsY.ttf") format('truetype');
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 400;
  src: local('Source Code Pro'), local('SourceCodePro-Regular'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/mrl8jkM18OlOQN8JLgasD9Hq-FFgoDNV3GTKpHwuvtI.woff") format('woff'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/mrl8jkM18OlOQN8JLgasD0Y6Fu39Tt9XkmtSosaMoEA.ttf") format('truetype');
}
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 700;
  src: local('Source Code Pro Bold'), local('SourceCodePro-Bold'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/leqv3v-yTsJNC7nFznSMqYqjGYJUyOXcBwUQbRaNH6c.woff") format('woff'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/leqv3v-yTsJNC7nFznSMqblcMrNrsnL9dgADnXgYJjs.ttf") format('truetype');
}
/* latin-ext */
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 300;
  src: local('Source Code Pro Light'), local('SourceCodePro-Light'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/leqv3v-yTsJNC7nFznSMqTOFnJNygIkrHciC8BWzbCz3rGVtsTkPsbDajuO5ueQw.woff2") format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 300;
  src: local('Source Code Pro Light'), local('SourceCodePro-Light'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/leqv3v-yTsJNC7nFznSMqSP2LEk6lMzYsRqr3dHFImA.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
/* latin-ext */
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 400;
  src: local('Source Code Pro'), local('SourceCodePro-Regular'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/mrl8jkM18OlOQN8JLgasD4a1YDtoarzwSXxTHggEXMw.woff2") format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 400;
  src: local('Source Code Pro'), local('SourceCodePro-Regular'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/mrl8jkM18OlOQN8JLgasD5bPFduIYtoLzwST68uhz_Y.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
/* latin-ext */
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 700;
  src: local('Source Code Pro Bold'), local('SourceCodePro-Bold'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/leqv3v-yTsJNC7nFznSMqe4s1Ux4PuImWPk5fSr6HPL3rGVtsTkPsbDajuO5ueQw.woff2") format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Source Code Pro';
  font-style: normal;
  font-weight: 700;
  src: local('Source Code Pro Bold'), local('SourceCodePro-Bold'), url("https://fonts.gstatic.com/s/sourcecodepro/v6/leqv3v-yTsJNC7nFznSMqZkF8H8ye47wsfpWywda8og.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215, U+E0FF, U+EFFD, U+F000;
}
div.cards {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  flex-direction: row;
}
div.cards >div {
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}
/*
   * Default settings:
   */
/* NOTE: It's necessary to use e.g. the $fontNormal variable here. Defining
   * multiple fonts directly in here yields a stylus compiler error.
   */
/*
   * Breakpoint setup:
   */
body {
  font-family: 'Raleway', sans-serif;
  font-size: 1.25rem;
  font-weight: 300;
}
button {
  font-family: 'Electrolize', sans-serif;
  font-weight: 400;
}
.overlayed {
  font-weight: 400;
}
code {
  font-family: 'Source Code Pro', monospace;
  white-space: nowrap;
}
pre code {
  white-space: pre-wrap;
}
p code {
  padding: 0;
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  border-radius: 3px;
}
p code::before,
p code::after {
  letter-spacing: -0.2em;
  content: "\00a0";
}
pre {
  border-radius: 3px;
  padding: 1em;
}
h1 {
  font-family: 'Electrolize', sans-serif;
  font-size: 2rem;
  line-height: 1.2;
  margin-top: 0.1em;
  margin-bottom: 0.1em;
  font-weight: 400;
  text-transform: uppercase;
}
h2 {
  font-family: 'Electrolize', sans-serif;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 1.25rem;
  margin-bottom: 0.625rem;
  font-weight: 400;
  text-transform: uppercase;
}
h3 {
  font-family: 'Electrolize', sans-serif;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 0;
  margin-bottom: 0.625rem;
  font-weight: 400;
  text-transform: uppercase;
}
h4 {
  font-family: 'Electrolize', sans-serif;
  font-size: 1rem;
  line-height: 1.5;
  margin-top: 0.7em;
  margin-bottom: 0.7em;
  font-weight: 400;
  text-transform: uppercase;
  border-bottom: 1px solid #424242;
  text-align: center;
}
h5 {
  font-family: 'Electrolize', sans-serif;
  font-size: 0.9rem;
  line-height: 1;
  margin-top: 0.75em;
  margin-bottom: 0.75em;
  font-weight: 400;
  text-transform: uppercase;
}
p {
  font-family: 'Raleway', sans-serif;
  font-size: 1.25rem;
  line-height: 1.875rem;
  font-weight: 200;
}
a {
  font-family: 'Raleway', sans-serif;
  font-size: 1.25rem;
  line-height: 1.875rem;
  font-weight: 200;
}
@media only screen and (min-width: 48em) {
  h1 {
    font-family: 'Electrolize', sans-serif;
    font-size: 3.8rem;
    line-height: 1.2;
    margin-top: 0.1em;
    margin-bottom: 0.1em;
    font-weight: 400;
    text-transform: uppercase;
  }
  h2 {
    font-family: 'Electrolize', sans-serif;
    font-size: 2.375rem;
    line-height: 1.5;
    margin-top: 1.25rem;
    margin-bottom: 0.625rem;
    font-weight: 400;
    text-transform: uppercase;
  }
  h3 {
    font-family: 'Electrolize', sans-serif;
    font-size: 1.875rem;
    line-height: 2.75rem;
    margin-top: 0;
    margin-bottom: 0.625rem;
    font-weight: 400;
    text-transform: uppercase;
  }
  h4 {
    font-family: 'Electrolize', sans-serif;
    font-size: 1rem;
    line-height: 1.5;
    margin-top: 0.7em;
    margin-bottom: 0.7em;
    font-weight: 400;
    text-transform: uppercase;
    border-bottom: 1px solid #424242;
  }
  h5 {
    font-family: 'Electrolize', sans-serif;
    font-size: 0.9rem;
    line-height: 1;
    margin-top: 0.75em;
    margin-bottom: 0.75em;
    font-weight: 400;
    text-transform: uppercase;
  }
  p {
    font-family: 'Raleway', sans-serif;
    font-size: 1.25rem;
    line-height: 1.875rem;
    font-weight: 200;
  }
  a {
    font-family: 'Raleway', sans-serif;
    font-size: 1.25rem;
    line-height: 1.875rem;
    font-weight: 200;
  }
}
/*
   * Default settings:
   */
/*
   * Breakpoint setup:
   */
body {
  color: #333;
  background: #fff;
}
::-moz-selection {
  background: #e11010;
  color: #fff;
  fill: #fff;
}
::selection {
  background: #e11010;
  color: #fff;
  fill: #fff;
}
a {
  color: #333;
}
a:visited {
  color: #333;
}
a:hover,
a:visited:hover {
  color: #e11010;
}
a:active {
  color: #6a0000;
}
a:focus {
  outline: none;
  color: #e11010;
}
p code {
  color: #333;
  background-color: #f7f7f7;
}
pre {
  color: #333;
  background-color: #f7f7f7;
}
.content {
  background-color: #f7f7f7;
}
.content__container,
.content__container--expand {
  background-color: #fff;
}
.informational {
  color: #bbb;
}
/* Images so assume white text is required */
.hero h1,
.hero h2,
.hero h3,
.hero h4,
.hero h5,
.hero p,
.hero code {
  color: #fff;
}
/*
 * UI components:
 *
 * Each UI component is encapsulated within a setup function which takes an
 * opitional settings hash. If omitted the default settings available in the
 * respective component file are used. This allows a (theme) developer to
 * customize components for their own sifts and projects.
 */
.animate-opacity {
  transition: opacity ease-in 400ms;
}
.fade-in {
  animation: fadein 400ms ease-in 0s 1 normal both;
}
.delay {
  animation-delay: 400ms;
}
@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* FIXXME: refactor into components! */
.svg-center-x {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding-left: 50%;
}
.svg-padding-top {
  padding-top: 1em;
}
.svg-padding-left {
  padding-left: 1em;
}
.reusable path {
  fill: none;
  stroke: #000;
  stroke-width: 1.5px;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.reusable path.bgstroke {
  stroke: #fff;
  stroke-width: 3px;
}
/*
   * Default settings:
   */
input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="tel"],
input[type="url"],
select,
textarea {
  box-sizing: border-box;
  min-height: 2.75em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
  color: #333;
  vertical-align: bottom;
  background-color: #fff;
  background-repeat: no-repeat;
  border: 1px solid #d8d8d8;
  outline: none;
  font-size: 1rem;
}
input[type="text"]:disabled,
input[type="password"]:disabled,
input[type="email"]:disabled,
input[type="number"]:disabled,
input[type="tel"]:disabled,
input[type="url"]:disabled,
select:disabled,
textarea:disabled {
  background-image: repeating-linear-gradient(125deg, transparent, transparent 2px, #f1f1f1 2px, #f1f1f1 3px, transparent 3px, transparent 5px, #f1f1f1 5px);
}
/*
   * Default settings:
   */
button {
  cursor: pointer;
}
button {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  padding-left: 1.9375em;
  padding-right: 1.9375em;
  color: #e11010;
  background: transparent;
  border: 1px solid #e11010;
  font-family: 'Raleway', sans-serif;
  font-size: 1rem;
  transition: background 200ms ease 0s;
}
button:hover {
  color: #fff;
  background: #e11010;
  border: 1px solid #e11010;
}
button:active {
  outline: none;
  color: #fff;
  background: #6a0000;
  border: 1px solid #6a0000;
}
button:disabled {
  color: #7f7f7f;
  background: #cacaca;
  border: 1px solid #cacaca;
  cursor: default;
}
button:focus {
  outline: none;
}
button.rs-btn--small {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
button.rs-btn--selected {
  color: #fff;
  background: #e11010;
  border: 1px solid #e11010;
}
button.rs-btn--selected:hover {
  color: #fff;
  background: #6a0000;
  border: 1px solid #6a0000;
}
button.rs-btn--selected:active {
  color: #fff;
  background: #e11010;
  border: 1px solid #e11010;
}
button.rs-btn--selected:hover:disabled {
  color: #fff;
  background: #e11010;
  border: 1px solid #e11010;
  cursor: default;
}
/* Styling the base button will is implicitly applying the styles to the 'bem' buttons */
p button {
  margin: 0.625rem;
  line-height: 1;
}
p button.rs-btn--small {
  margin: 0.375rem;
}
p a.rs-btn--red,
p a.rs-btn--blue,
p a.rs-btn--green,
p a.rs-btn--black {
  margin: 0.625rem;
}
@media only screen and (min-width: 48em) {
  p button {
    margin: 0.625rem;
    line-height: 1;
  }
  p button.rs-btn--small {
    margin: 0.375rem;
  }
  p a.rs-btn--red,
  p a.rs-btn--blue,
  p a.rs-btn--green,
  p a.rs-btn--black {
    margin: 0.625rem;
  }
}
.rs-btn--red,
a.rs-btn--red {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  padding-left: 1.9375em;
  padding-right: 1.9375em;
  color: #e11010;
  background: transparent;
  border: 1px solid #e11010;
  font-family: 'Raleway', sans-serif;
  font-size: 1rem;
}
.rs-btn--red:hover,
a.rs-btn--red:hover {
  color: #fff;
  background: #e11010;
  border: 1px solid #e11010;
}
.rs-btn--red:active,
a.rs-btn--red:active {
  outline: none;
  color: #fff;
  background: #6a0000;
  border: 1px solid #6a0000;
}
.rs-btn--red:disabled,
a.rs-btn--red:disabled {
  color: #7f7f7f;
  background: #cacaca;
  border: 1px solid #cacaca;
  cursor: default;
}
.rs-btn--red:focus,
a.rs-btn--red:focus {
  outline: none;
}
a.rs-btn--red {
  box-sizing: border-box;
  text-decoration: none;
}
.rs-btn--red.rs-btn--selected {
  color: #fff;
  background: #e11010;
  border: 1px solid #e11010;
}
.rs-btn--red.rs-btn--selected:hover {
  color: #fff;
  background: #6a0000;
  border: 1px solid #6a0000;
}
.rs-btn--red.rs-btn--selected:active {
  color: #fff;
  background: #e11010;
  border: 1px solid #e11010;
}
.rs-btn--red.rs-btn--selected:hover:disabled {
  color: #fff;
  background: #e11010;
  border: 1px solid #e11010;
  cursor: default;
}
.rs-btn--small,
a.rs-btn--small {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.rs-btn--green,
a.rs-btn--green {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  padding-left: 1.9375em;
  padding-right: 1.9375em;
  color: #0ab93a;
  background: transparent;
  border: 1px solid #0ab93a;
  font-family: 'Raleway', sans-serif;
  font-size: 1rem;
}
.rs-btn--green:hover,
a.rs-btn--green:hover {
  color: #fff;
  background: #0ab93a;
  border: 1px solid #0ab93a;
}
.rs-btn--green:active,
a.rs-btn--green:active {
  outline: none;
  color: #fff;
  background: #087927;
  border: 1px solid #087927;
}
.rs-btn--green:disabled,
a.rs-btn--green:disabled {
  color: #7f7f7f;
  background: #cacaca;
  border: 1px solid #cacaca;
  cursor: default;
}
.rs-btn--green:focus,
a.rs-btn--green:focus {
  outline: none;
}
a.rs-btn--green {
  box-sizing: border-box;
  text-decoration: none;
}
.rs-btn--green.rs-btn--selected {
  color: #fff;
  background: #0ab93a;
  border: 1px solid #0ab93a;
}
.rs-btn--green.rs-btn--selected:hover {
  color: #fff;
  background: #087927;
  border: 1px solid #087927;
}
.rs-btn--green.rs-btn--selected:active {
  color: #fff;
  background: #0ab93a;
  border: 1px solid #0ab93a;
}
.rs-btn--green.rs-btn--selected:hover:disabled {
  color: #fff;
  background: #0ab93a;
  border: 1px solid #0ab93a;
  cursor: default;
}
.rs-btn--small,
a.rs-btn--small {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.rs-btn--blue,
a.rs-btn--blue {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  padding-left: 1.9375em;
  padding-right: 1.9375em;
  color: #1671f4;
  background: transparent;
  border: 1px solid #1671f4;
  font-family: 'Raleway', sans-serif;
  font-size: 1rem;
}
.rs-btn--blue:hover,
a.rs-btn--blue:hover {
  color: #fff;
  background: #1671f4;
  border: 1px solid #1671f4;
}
.rs-btn--blue:active,
a.rs-btn--blue:active {
  outline: none;
  color: #fff;
  background: #0b49a2;
  border: 1px solid #0b49a2;
}
.rs-btn--blue:disabled,
a.rs-btn--blue:disabled {
  color: #7f7f7f;
  background: #cacaca;
  border: 1px solid #cacaca;
  cursor: default;
}
.rs-btn--blue:focus,
a.rs-btn--blue:focus {
  outline: none;
}
a.rs-btn--blue {
  box-sizing: border-box;
  text-decoration: none;
}
.rs-btn--blue.rs-btn--selected {
  color: #fff;
  background: #1671f4;
  border: 1px solid #1671f4;
}
.rs-btn--blue.rs-btn--selected:hover {
  color: #fff;
  background: #0b49a2;
  border: 1px solid #0b49a2;
}
.rs-btn--blue.rs-btn--selected:active {
  color: #fff;
  background: #1671f4;
  border: 1px solid #1671f4;
}
.rs-btn--blue.rs-btn--selected:hover:disabled {
  color: #fff;
  background: #1671f4;
  border: 1px solid #1671f4;
  cursor: default;
}
.rs-btn--small,
a.rs-btn--small {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.rs-btn--black,
a.rs-btn--black {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  padding-left: 1.9375em;
  padding-right: 1.9375em;
  color: #777;
  background: transparent;
  border: 1px solid #777;
  font-family: 'Raleway', sans-serif;
  font-size: 1rem;
}
.rs-btn--black:hover,
a.rs-btn--black:hover {
  color: #fff;
  background: #0ab93a;
  border: 1px solid #0ab93a;
}
.rs-btn--black:active,
a.rs-btn--black:active {
  outline: none;
  color: #fff;
  background: #087927;
  border: 1px solid #087927;
}
.rs-btn--black:disabled,
a.rs-btn--black:disabled {
  color: #7f7f7f;
  background: #cacaca;
  border: 1px solid #cacaca;
  cursor: default;
}
.rs-btn--black:focus,
a.rs-btn--black:focus {
  outline: none;
}
a.rs-btn--black {
  box-sizing: border-box;
  text-decoration: none;
}
.rs-btn--black.rs-btn--selected {
  color: #fff;
  background: #0ab93a;
  border: 1px solid #0ab93a;
}
.rs-btn--black.rs-btn--selected:hover {
  color: #fff;
  background: #087927;
  border: 1px solid #087927;
}
.rs-btn--black.rs-btn--selected:active {
  color: #fff;
  background: #0ab93a;
  border: 1px solid #0ab93a;
}
.rs-btn--black.rs-btn--selected:hover:disabled {
  color: #fff;
  background: #0ab93a;
  border: 1px solid #0ab93a;
  cursor: default;
}
.rs-btn--small,
a.rs-btn--small {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.hero button.danger,
button.danger {
  color: #fff;
  background-color: #e11010;
  border: 1px solid #e11010;
}
.hero button.danger:hover,
button.danger:hover {
  background-color: #e11010;
  border: 1px solid #e11010;
}
.hero button.danger:active,
button.danger:active {
  background-color: #6a0000;
  border: 1px solid #6a0000;
}
.hero button.danger:disabled,
button.danger:disabled {
  background-image: repeating-linear-gradient(125deg, transparent, transparent 2px, rgba(0,0,0,0.2) 2px, rgba(0,0,0,0.2) 3px, transparent 3px, transparent 5px, rgba(0,0,0,0.2) 5px);
}
.hero button.danger:disabled:hover,
button.danger:disabled:hover {
  background-color: #e11010;
  background-image: repeating-linear-gradient(125deg, transparent, transparent 2px, rgba(0,0,0,0.2) 2px, rgba(0,0,0,0.2) 3px, transparent 3px, transparent 5px, rgba(0,0,0,0.2) 5px);
  border: 1px solid #e11010;
}
.hero button.danger:focus,
button.danger:focus {
  outline: none;
}
.hero button {
  color: #fff;
  font-size: 1.2em;
  background-color: transparent;
  box-shadow: 0 0 0 1px #fff;
}
.hero button:focus {
  outline: none;
  box-shadow: 0 0 0 1px #e11010;
}
.hero button:hover {
  background-color: rgba(255,255,255,0);
}
.hero button:disabled {
  background-image: repeating-linear-gradient(125deg, transparent, transparent 2px, rgba(255,255,255,0.3) 2px, rgba(255,255,255,0.3) 3px, transparent 3px, transparent 5px, rgba(255,255,255,0.3) 5px);
}
.hero button:disabled:hover {
  background-color: transparent;
  background-image: repeating-linear-gradient(125deg, transparent, transparent 2px, rgba(255,255,255,0.3) 2px, rgba(255,255,255,0.3) 3px, transparent 3px, transparent 5px, rgba(255,255,255,0.3) 5px);
}
.hero button:focus {
  outline: none;
}
.rs-icon-btn {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex: 0 auto;
  flex: 0 auto;
  min-width: 180px;
  color: #777;
  border: 1px solid #777;
  text-decoration: none;
  cursor: pointer;
  font-family: 'Raleway', sans-serif;
  font-size: 1rem;
}
.rs-icon-btn:hover {
  color: #fff;
  background: #0ab93a;
}
.rs-icon-btn:active {
  outline: none;
  color: #fff;
  background: #087927;
  border: 1px solid #087927;
}
.rs-icon-btn:disabled {
  color: #7f7f7f;
  background: #cacaca;
  border: 1px solid #cacaca;
}
.rs-icon-btn:focus {
  outline: none;
}
.rs-icon-btn__icon {
  display: block;
  width: 1.875em;
  height: 1.875em;
  -ms-flex: 0 0 50px;
  flex: 0 0 50px;
  background-color: #fff;
}
.rs-icon-btn__label {
  display: -ms-flexbox;
  display: flex;
  padding-left: 1em;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex: 1;
  flex: 1;
  background: transparent;
  transition: background-color 200ms ease;
}
.rs-icon-btn__label:hover {
  background: #0ab93a;
}
.rs-icon-btn__icon__wrapper {
  width: 2.5em;
  height: 2.5em;
  border-right: 1px solid #777;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
}
.rs-danger-btn {
  display: block;
  width: 220px;
  padding-right: 30px;
  padding-left: 30px;
  background-color: #e11010;
  font-family: Electrolize, sans-serif;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #fff;
  transition: all 300ms ease;
}
.rs-danger-btn:hover,
.rs-danger-btn:visited,
.rs-danger-btn:visited:hover {
  width: 100%;
  background-color: #aa0c0c;
  color: #fff;
}
/*
   * Default settings:
   */
/*
   * Breakpoint setup:
   */
input[type='range'] {
  display: block;
  border: solid 0.5em transparent;
  padding: 0;
  width: 15em;
  height: 2em;
  border-radius: 0.25em;
  background: transparent;
  font-size: 1em;
  cursor: pointer;
}
input[type='range'],
input[type='range']::-webkit-slider-runnable-track,
input[type='range']::-webkit-slider-thumb {
  -webkit-appearance: none;
}
input[type='range']::-ms-track {
  width: 100%;
  cursor: pointer;
  background: transparent;
  border-color: transparent;
  color: transparent;
}
input[type='range']::-webkit-slider-runnable-track {
  width: 15em;
  height: 0.5em;
  border-radius: 0.25em;
  background: linear-gradient(#e11010, #e11010) no-repeat #cacaca;
  background-size: 0% 100%;
}
input[type='range']::-webkit-slider-thumb {
  margin-top: -0.25em;
  border: none;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  box-shadow: 0 0 0.125em #333;
  background: #fff;
}
input[type='range']:focus {
  outline: none;
  box-shadow: 0 0 1px #e11010;
}
input[type='range'].progress {
  cursor: initial;
}
input[type='range'].progress::-webkit-slider-thumb {
  display: none;
}
input[type='range'].progress:focus {
  outline: none;
  box-shadow: none;
}
input[type='range'].animated::-webkit-slider-runnable-track {
  transition: background-size 400ms ease-in;
}
/*
   * Default settings:
   */
/*
   * Breakpoint setup:
   */
.down-arrow {
  display: block;
  width: 20px;
  height: 30px;
  margin-right: auto;
  margin-left: auto;
  padding: 1em;
  float: none;
  clear: none;
  background-image: url("https://static.redsift.io/assets/ui-rs-core/icons/-rs-icon-down-arrow-3.svg");
  background-position: 50% 50%;
  background-size: 30px 20px;
  background-repeat: no-repeat;
  opacity: 0.6;
  background-color: transparent;
  transition: opacity cubic-bezier(0.175, 0.885, 0.335, 1.155) 400ms;
}
.down-arrow:hover {
  opacity: 1;
}
/*
   * Default settings:
   */
/*
   * Breakpoint setup:
   */
.style-switcher {
  z-index: 1000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
  justify-content: flex-end;
  position: fixed;
  right: 0;
  left: 0;
  bottom: 0;
  padding: 0.8em;
  background: rgba(0,0,0,0.9);
}
.style-switcher button {
  margin-right: 1em;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmltcG9ydC5zdHlsIiwidWktcnMtY29yZS5jc3MiLCJzdHlsZXMvY29tbW9uL3Jlc2V0LmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbW1vbi9wYXR0ZXJucy5pbXBvcnQuc3R5bCIsInN0eWxlcy9jb21tb24vYW5pbWF0aW9uLmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbW1vbi9iYXNlLmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbW1vbi9pY29ucy5pbXBvcnQuc3R5bCIsInN0eWxlcy9jb21tb24vZm9udHMuaW1wb3J0LnN0eWwiLCJzdHlsZXMvbGliL2NhcmRzLmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbW1vbi90eXBlcy5pbXBvcnQuc3R5bCIsInN0eWxlcy9saWIvdHlwZS5pbXBvcnQuc3R5bCIsInN0eWxlcy9saWIvcnVwdHVyZS5pbXBvcnQuc3R5bCIsInN0eWxlcy9jb21wb25lbnRzL2NvbG91ci5pbXBvcnQuc3R5bCIsInN0eWxlcy9jb21wb25lbnRzL2QzLmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbXBvbmVudHMvaW5wdXRzLmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbXBvbmVudHMvYnV0dG9ucy5pbXBvcnQuc3R5bCIsInN0eWxlcy9saWIvYnV0dG9uLmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbXBvbmVudHMvaWNvbi1idXR0b25zLmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbXBvbmVudHMvZGFuZ2VyLWJ1dHRvbnMuaW1wb3J0LnN0eWwiLCJzdHlsZXMvY29tcG9uZW50cy9zbGlkZXJzLmltcG9ydC5zdHlsIiwic3R5bGVzL2NvbXBvbmVudHMvd2lkZ2V0cy5pbXBvcnQuc3R5bCIsInN0eWxlcy9jb21wb25lbnRzL3N0eWxlLXN3aXRjaGVyLmltcG9ydC5zdHlsIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0NrQkc7QURFSDs7R0NDRztBRElIOzs7O0dDQ0c7QURRSDs7OztHQ0hHO0FDdEJIO0VB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QkFBQTtFQUNBLGlCQUFBO0NsQm9sQ0Q7QWtCOW5DRztFQUNFLGNBQUE7RUFDQSw0QkFBQTtDbEJnb0NMO0FrQjVuQ0M7RUFDRSxnQkFBQTtDbEI4bkNIO0FrQjduQ0c7RUFDRSxjQUFBO0NsQituQ0w7QWtCN25DRztFQUNFLGNBQUE7RUFDQSxpQkFBQTtDbEIrbkNMO0FrQjFuQ0c7RUFDRSwwQ0FBQTtDbEI0bkNMO0FtQi9yQ0E7O0tuQmtzQ0k7QW1CbnJDSDs7S25Cc3JDRztBbUJuckNIO0VBQ0UsZUFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLHFHQUFBO0VBQ0EsNkJBQUE7RUFDQSwyQkFBQTtFQUNBLDZCQUFBO0VBQ0EsYUFBQTtFQUNBLDhCQUFBO0VBQ0EsbUVBQUE7Q25CcXJDSDtBbUJsckNDO0VBQ0ksV0FBQTtDbkJvckNMO0FvQjN0Q0E7O0twQjh0Q0k7QW9CcnRDSDs7S3BCd3RDRztBb0JydENKO0VBQ0UsY0FBQTtFQUNBLHFCQUFBO0VBQUEsY0FBQTtFQUNBLG1CQUFBO0VBQUEsMEJBQUE7RUFFQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxRQUFBO0VBQ0EsVUFBQTtFQUVBLGVBQUE7RUFDQSw0QkFBQTtDcEJxdENGO0FvQmx0Q0E7RUFDRSxrQkFBQTtDcEJvdENGIiwiZmlsZSI6InVpLXJzLWNvcmUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFN0eWxlIHNldHVwIGZvciByZWRzaWZ0LXVpIGJhc2VkIHNpZnRzLlxuICpcbiAqIC0gUHJvdmlkZXM6XG4gKiAgIC4gcmVhZHktdG8tdXNlIFVJIGNvbXBvbmVudHNcbiAqICAgLiByZXNwb25zaXZlIHR5cGUgc3lzdGVtXG4gKiAgIC4gYnJlYWtwb2ludCBzZXR1cCAodmlhICdydXB0dXJlJylcbiAqICAgLiBjb21tb24gZnVuY3Rpb25hbGl0eSBsaWtlIHJlc2V0LCBwYXR0ZXJucyBhbmQgZm9udHNcbiAqXG4gKiAtIFVzZWQgYnk6XG4gKiAgIC4gcmVkc2lmdC1saWdodFxuICogICAuIHJlZHNpZnQtZGFya1xuICpcbiAqIC0gRm9sZGVyIHN0cnVjdHVyZTpcbiAqXG4gKiAgIC4vbGliICAgICAgICAtPiBtaXhpbiBhbmQgZnVuY3Rpb24gbGlicmFyeVxuICogICAuL2NvbW1vbiAgICAgLT4gQ1NTIHNldHVwIGFuZCBjb21tb24gY2xhc3Nlc1xuICogICAuL2NvbXBvbmVudHMgLT4gVUkgY29tcG9uZW50c1xuICovXG5cbi8qXG4gKiBDb25maWd1cmF0aW9uIHZpYSBvYmplY3QgJyR1aS1ycy1jb3JlJ1xuICovXG5AaW1wb3J0ICcuL3N0eWxlcy9jb25maWcuaW1wb3J0LnN0eWwnO1xuXG4vKlxuICogTWl4aW4vZnVuY3Rpb25zIGxpYnJhcnlcbiAqXG4gKiBDb21tb24gbWl4aW5zIGFuZCBmdW5jdGlvbnMgdXNlZCBieSByZWRzaWZ0LXVpLlxuICovXG5AaW1wb3J0ICcuL3N0eWxlcy9saWIvY2FyZHMuaW1wb3J0LnN0eWwnXG5AaW1wb3J0ICcuL3N0eWxlcy9saWIvZ3JhZGllbnRzLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvbGliL2ltYWdlcy5pbXBvcnQuc3R5bCdcblxuLypcbiAqIEJhc2UgY29uZmlndXJhdGlvbiBhbmQgY29tbW9uIGNsYXNzZXM6XG4gKlxuICogQ1NTIGJhc2Ugc2V0dXAgYW5kIGNvbW1vbiBDU1MgY2xhc3Nlcy5cbiAqL1xuQGltcG9ydCAnLi9zdHlsZXMvY29tbW9uL3Jlc2V0LmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tbW9uL2ZvbnRzLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tbW9uL3BhdHRlcm5zLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tbW9uL2JyZWFrcG9pbnRzLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tbW9uL2FuaW1hdGlvbi5pbXBvcnQuc3R5bCdcbkBpbXBvcnQgJy4vc3R5bGVzL2NvbW1vbi9iYXNlLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tbW9uL3R5cGVzLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tcG9uZW50cy9jb2xvdXIuaW1wb3J0LnN0eWwnXG5AaW1wb3J0ICcuL3N0eWxlcy9jb21tb24vaWNvbnMuaW1wb3J0LnN0eWwnXG5cbnNldHVwLWZvbnQtZmFjZXMoKVxuY3JlYXRlLWNhcmRzKCdjYXJkcycsIGZhbHNlKVxuc2V0dXAtdHlwZXMoJHVpLXJzLWNvcmUudHlwZXMuZm9udHMsICR1aS1ycy1jb3JlLnR5cGVzLnNldHRpbmdzKTtcbnNldHVwLWNvbG9yLXN5c3RlbSgkdWktcnMtY29yZS50aGVtZXMubGlnaHQpXG5cbi8qXG4gKiBVSSBjb21wb25lbnRzOlxuICpcbiAqIEVhY2ggVUkgY29tcG9uZW50IGlzIGVuY2Fwc3VsYXRlZCB3aXRoaW4gYSBzZXR1cCBmdW5jdGlvbiB3aGljaCB0YWtlcyBhblxuICogb3BpdGlvbmFsIHNldHRpbmdzIGhhc2guIElmIG9taXR0ZWQgdGhlIGRlZmF1bHQgc2V0dGluZ3MgYXZhaWxhYmxlIGluIHRoZVxuICogcmVzcGVjdGl2ZSBjb21wb25lbnQgZmlsZSBhcmUgdXNlZC4gVGhpcyBhbGxvd3MgYSAodGhlbWUpIGRldmVsb3BlciB0b1xuICogY3VzdG9taXplIGNvbXBvbmVudHMgZm9yIHRoZWlyIG93biBzaWZ0cyBhbmQgcHJvamVjdHMuXG4gKi9cbkBpbXBvcnQgJy4vc3R5bGVzL2NvbXBvbmVudHMvaW5wdXRzLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tcG9uZW50cy9idXR0b25zLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tcG9uZW50cy9pY29uLWJ1dHRvbnMuaW1wb3J0LnN0eWwnXG5AaW1wb3J0ICcuL3N0eWxlcy9jb21wb25lbnRzL2Rhbmdlci1idXR0b25zLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tcG9uZW50cy9zbGlkZXJzLmltcG9ydC5zdHlsJ1xuQGltcG9ydCAnLi9zdHlsZXMvY29tcG9uZW50cy93aWRnZXRzLmltcG9ydC5zdHlsJ1xuXG5cbkBpbXBvcnQgJy4vc3R5bGVzL2NvbXBvbmVudHMvc3R5bGUtc3dpdGNoZXIuaW1wb3J0LnN0eWwnXG4vKiBGSVhYTUU6IHJlZmFjdG9yIGludG8gY29tcG9uZW50cyEgKi9cbkBpbXBvcnQgJy4vc3R5bGVzL2NvbXBvbmVudHMvZDMuaW1wb3J0LnN0eWwnXG5cbnNldHVwLWlucHV0cygkdWktcnMtY29yZS5pbnB1dHMpXG5zZXR1cC1idXR0b25zKCR1aS1ycy1jb3JlLmJ1dHRvbnMubGlnaHQpXG5zZXR1cC1kZWZhdWx0LWljb24tYnV0dG9uKCR1aS1ycy1jb3JlLmljb25CdXR0b25zLmxpZ2h0LnN0eWxlLCAkdWktcnMtY29yZS5idXR0b25zLmxpZ2h0LmJsYWNrKTtcbnNldHVwLWRlZmF1bHQtZGFuZ2VyLWJ1dHRvbigpXG5zZXR1cC1zbGlkZXJzKCR1aS1ycy1jb3JlLnNsaWRlcnMubGlnaHQpXG5cbnNldHVwLXdpZGdldF9fZG93bi1hcnJvdygpXG5zZXR1cC1zdHlsZS1zd2l0Y2hlcigpXG4iLCIvKlxuICogU3R5bGUgc2V0dXAgZm9yIHJlZHNpZnQtdWkgYmFzZWQgc2lmdHMuXG4gKlxuICogLSBQcm92aWRlczpcbiAqICAgLiByZWFkeS10by11c2UgVUkgY29tcG9uZW50c1xuICogICAuIHJlc3BvbnNpdmUgdHlwZSBzeXN0ZW1cbiAqICAgLiBicmVha3BvaW50IHNldHVwICh2aWEgJ3J1cHR1cmUnKVxuICogICAuIGNvbW1vbiBmdW5jdGlvbmFsaXR5IGxpa2UgcmVzZXQsIHBhdHRlcm5zIGFuZCBmb250c1xuICpcbiAqIC0gVXNlZCBieTpcbiAqICAgLiByZWRzaWZ0LWxpZ2h0XG4gKiAgIC4gcmVkc2lmdC1kYXJrXG4gKlxuICogLSBGb2xkZXIgc3RydWN0dXJlOlxuICpcbiAqICAgLi9saWIgICAgICAgIC0+IG1peGluIGFuZCBmdW5jdGlvbiBsaWJyYXJ5XG4gKiAgIC4vY29tbW9uICAgICAtPiBDU1Mgc2V0dXAgYW5kIGNvbW1vbiBjbGFzc2VzXG4gKiAgIC4vY29tcG9uZW50cyAtPiBVSSBjb21wb25lbnRzXG4gKi9cbi8qXG4gKiBDb25maWd1cmF0aW9uIHZpYSBvYmplY3QgJyR1aS1ycy1jb3JlJ1xuICovXG4vKlxuICogTWl4aW4vZnVuY3Rpb25zIGxpYnJhcnlcbiAqXG4gKiBDb21tb24gbWl4aW5zIGFuZCBmdW5jdGlvbnMgdXNlZCBieSByZWRzaWZ0LXVpLlxuICovXG4vKlxuICogQmFzZSBjb25maWd1cmF0aW9uIGFuZCBjb21tb24gY2xhc3NlczpcbiAqXG4gKiBDU1MgYmFzZSBzZXR1cCBhbmQgY29tbW9uIENTUyBjbGFzc2VzLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuLi1wYXR0ZXJuLWRvd24tYXJyb3ctZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaWNvbnMvZG93bi1hcnJvdy1ncmVlbi5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTJweCA3cHg7XG59XG4uLXBhdHRlcm4tcmVkc2lmdC1sb2dvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ljb25zL3JlZHNpZnQtbG9nby1yZWQtOC4xLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA3cHggN3B4O1xufVxuLmFuaW1hdGUtb3BhY2l0eSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1pbiA0MDBtcztcbn1cbi5mYWRlLWluIHtcbiAgYW5pbWF0aW9uOiBmYWRlaW4gNDAwbXMgZWFzZS1pbiAwcyAxIG5vcm1hbCBib3RoO1xufVxuLmRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA0MDBtcztcbn1cbkAtbW96LWtleWZyYW1lcyBmYWRlaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZWluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmYWRlaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVpbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuLmhhc2gge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDEyNWRlZywgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50IDJweCwgcmdiYSgwLDAsMCwwLjIpIDJweCwgcmdiYSgwLDAsMCwwLjIpIDNweCwgdHJhbnNwYXJlbnQgM3B4LCB0cmFuc3BhcmVudCA1cHgsIHJnYmEoMCwwLDAsMC4yKSA1cHgpO1xufVxuLi1ycy1pY29uLXJlZHNpZnQtcmVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1yZWRzaWZ0LXJlZC5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbi4tcnMtaWNvbi1yZWRzaWZ0LWNsb3VkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1yZWRzaWZ0LWNsb3VkLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLi1ycy1pY29uLXJlZHNpZnQtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLXJlZHNpZnQtd2hpdGUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uLXJzLWljb24tZ2l0aHViIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1naXRodWIuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uLXJzLWljb24tZ2l0aHViLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8taWNvbi1naXRodWItd2hpdGUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uLXJzLWljb24tZ29vZ2xlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1nb29nbGUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uLXJzLWljb24tbGlua2VkaW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1pY29uLWxpbmtlZGluLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAyNXB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLi1ycy1pY29uLXNsYWNrIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1zbGFjay5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbi4tcnMtaWNvbi10d2l0dGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi10d2l0dGVyLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLi1ycy1pY29uLXNldHRpbmdzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1zZXR0aW5ncy5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbi4tcnMtaWNvbi1kb3duLWFycm93LWdyZWVuIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1kb3duLWFycm93LWdyZWVuLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLi1ycy1pY29uLWxvZ291dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHBzOi8vc3RhdGljLnJlZHNpZnQuaW8vYXNzZXRzL3VpLXJzLWNvcmUvaWNvbnMvLXJzLWljb24tbG9nb3V0LnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLi1ycy1pY29uLXByb2ZpbGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLXByb2ZpbGUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uLXJzLWljb24tZGFzaGJvYXJkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1kYXNoYm9hcmQuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI0cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uLXJzLWljb24tY2F0YWxvZ3VlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1jYXRhbG9ndWUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI0cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uLXJzLWljb24td29ya3Nob3Age1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLXdvcmtzaG9wLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAyNHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLi1ycy1pY29uLXdpcmVmcmFtZS1ibHVlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi13aXJlZnJhbWUtYmx1ZS5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbi4tcnMtaWNvbi1leHBhbmQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLWV4cGFuZC5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbi4tcnMtaWNvbi1leHBhbmQtc3BsaXQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLWV4cGFuZC1zcGxpdC5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbi4tcnMtaWNvbi1leGl0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1leGl0LnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLi1ycy1pY29uLXF1ZXN0aW9uIHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogNzBweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1xdWVzdGlvbi5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTVweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgb3BhY2l0eTogMC43O1xufVxuLi1ycy1pY29uLXF1ZXN0aW9uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qIEhlYWRpbmcgZm9udCBAaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1SYWxld2F5OjIwMFwiKTsgKi9cbi8qIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdSYWxld2F5JztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMjAwO1xuICBzcmM6IGxvY2FsKCdSYWxld2F5IEV4dHJhTGlnaHQnKSwgbG9jYWwoJ1JhbGV3YXktRXh0cmFMaWdodCcpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MTEvOEtoWmQzVlFCdFhUQXpudktqdy1rNzNocHczcGd5MmdBaS1JcDdXUE1pMC53b2ZmXCIpIGZvcm1hdCgnd29mZicpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MTEvOEtoWmQzVlFCdFhUQXpudktqdy1reTNVU0JuU3Zwa29wUWFVUi0ycjdpVS50dGZcIikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUmFsZXdheSc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgc3JjOiBsb2NhbCgnUmFsZXdheSBFeHRyYUxpZ2h0JyksIGxvY2FsKCdSYWxld2F5LUV4dHJhTGlnaHQnKSwgdXJsKFwiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjExLzhLaFpkM1ZRQnRYVEF6bnZLancta3d6eURNWGhkRDhzQWo2T0FKVEZzQkkud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIyMTIsIFUrMjIxNSwgVStFMEZGLCBVK0VGRkQsIFUrRjAwMDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0VsZWN0cm9saXplJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdFbGVjdHJvbGl6ZScpLCBsb2NhbCgnRWxlY3Ryb2xpemUtUmVndWxhcicpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvZWxlY3Ryb2xpemUvdjUvRER5OXNnVTJVN1M0eEF3SDV0aG5KN3JJYS03YWNNQWVEQlZ1Y2xzaTZHYy53b2ZmXCIpIGZvcm1hdCgnd29mZicpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvZWxlY3Ryb2xpemUvdjUvRER5OXNnVTJVN1M0eEF3SDV0aG5KeXdsaWRISmdBZ21Uak9FRXp3dTFMOC50dGZcIikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRWxlY3Ryb2xpemUnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ0VsZWN0cm9saXplJyksIGxvY2FsKCdFbGVjdHJvbGl6ZS1SZWd1bGFyJyksIHVybChcImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9lbGVjdHJvbGl6ZS92NS9ERHk5c2dVMlU3UzR4QXdINXRobko0Z3A5UThnYllyaHFHbFJhdl9JWGZrLndvZmYyXCIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMjEyLCBVKzIyMTUsIFUrRTBGRiwgVStFRkZELCBVK0YwMDA7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogbG9jYWwoJ1NvdXJjZSBDb2RlIFBybyBMaWdodCcpLCBsb2NhbCgnU291cmNlQ29kZVByby1MaWdodCcpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvc291cmNlY29kZXByby92Ni9sZXF2M3YteVRzSk5DN25Gem5TTXFjVk50b200UWxFRE5KYXFxcXpxZFNzLndvZmZcIikgZm9ybWF0KCd3b2ZmJyksIHVybChcImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L2xlcXYzdi15VHNKTkM3bkZ6blNNcWZTNDJ3S3pyZTBjeG1PNW01R3lUc1kudHRmXCIpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NvdXJjZSBDb2RlIFBybyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiBsb2NhbCgnU291cmNlIENvZGUgUHJvJyksIGxvY2FsKCdTb3VyY2VDb2RlUHJvLVJlZ3VsYXInKSwgdXJsKFwiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3NvdXJjZWNvZGVwcm8vdjYvbXJsOGprTTE4T2xPUU44SkxnYXNEOUhxLUZGZ29ETlYzR1RLcEh3dXZ0SS53b2ZmXCIpIGZvcm1hdCgnd29mZicpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvc291cmNlY29kZXByby92Ni9tcmw4amtNMThPbE9RTjhKTGdhc0QwWTZGdTM5VHQ5WGttdFNvc2FNb0VBLnR0ZlwiKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoJ1NvdXJjZSBDb2RlIFBybyBCb2xkJyksIGxvY2FsKCdTb3VyY2VDb2RlUHJvLUJvbGQnKSwgdXJsKFwiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3NvdXJjZWNvZGVwcm8vdjYvbGVxdjN2LXlUc0pOQzduRnpuU01xWXFqR1lKVXlPWGNCd1VRYlJhTkg2Yy53b2ZmXCIpIGZvcm1hdCgnd29mZicpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvc291cmNlY29kZXByby92Ni9sZXF2M3YteVRzSk5DN25Gem5TTXFibGNNck5yc25MOWRnQURuWGdZSmpzLnR0ZlwiKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG4vKiBsYXRpbi1leHQgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NvdXJjZSBDb2RlIFBybyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiBsb2NhbCgnU291cmNlIENvZGUgUHJvIExpZ2h0JyksIGxvY2FsKCdTb3VyY2VDb2RlUHJvLUxpZ2h0JyksIHVybChcImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L2xlcXYzdi15VHNKTkM3bkZ6blNNcVRPRm5KTnlnSWtySGNpQzhCV3piQ3ozckdWdHNUa1BzYkRhanVPNXVlUXcud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSsxRTAwLTFFRkYsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDRiwgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NvdXJjZSBDb2RlIFBybyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiBsb2NhbCgnU291cmNlIENvZGUgUHJvIExpZ2h0JyksIGxvY2FsKCdTb3VyY2VDb2RlUHJvLUxpZ2h0JyksIHVybChcImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L2xlcXYzdi15VHNKTkM3bkZ6blNNcVNQMkxFazZsTXpZc1JxcjNkSEZJbUEud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIyMTIsIFUrMjIxNSwgVStFMEZGLCBVK0VGRkQsIFUrRjAwMDtcbn1cbi8qIGxhdGluLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdTb3VyY2UgQ29kZSBQcm8nKSwgbG9jYWwoJ1NvdXJjZUNvZGVQcm8tUmVndWxhcicpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvc291cmNlY29kZXByby92Ni9tcmw4amtNMThPbE9RTjhKTGdhc0Q0YTFZRHRvYXJ6d1NYeFRIZ2dFWE13LndvZmYyXCIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMUUwMC0xRUZGLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbn1cbi8qIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ1NvdXJjZSBDb2RlIFBybycpLCBsb2NhbCgnU291cmNlQ29kZVByby1SZWd1bGFyJyksIHVybChcImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L21ybDhqa00xOE9sT1FOOEpMZ2FzRDViUEZkdUlZdG9MendTVDY4dWh6X1kud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIyMTIsIFUrMjIxNSwgVStFMEZGLCBVK0VGRkQsIFUrRjAwMDtcbn1cbi8qIGxhdGluLWV4dCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IGxvY2FsKCdTb3VyY2UgQ29kZSBQcm8gQm9sZCcpLCBsb2NhbCgnU291cmNlQ29kZVByby1Cb2xkJyksIHVybChcImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L2xlcXYzdi15VHNKTkM3bkZ6blNNcWU0czFVeDRQdUltV1BrNWZTcjZIUEwzckdWdHNUa1BzYkRhanVPNXVlUXcud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDI0RiwgVSsxRTAwLTFFRkYsIFUrMjBBMC0yMEFCLCBVKzIwQUQtMjBDRiwgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xufVxuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NvdXJjZSBDb2RlIFBybyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiBsb2NhbCgnU291cmNlIENvZGUgUHJvIEJvbGQnKSwgbG9jYWwoJ1NvdXJjZUNvZGVQcm8tQm9sZCcpLCB1cmwoXCJodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvc291cmNlY29kZXByby92Ni9sZXF2M3YteVRzSk5DN25Gem5TTXFaa0Y4SDh5ZTQ3d3NmcFd5d2RhOG9nLndvZmYyXCIpIGZvcm1hdCgnd29mZjInKTtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMjEyLCBVKzIyMTUsIFUrRTBGRiwgVStFRkZELCBVK0YwMDA7XG59XG5kaXYuY2FyZHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5kaXYuY2FyZHMgPmRpdiB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG59XG4vKlxuICAgKiBEZWZhdWx0IHNldHRpbmdzOlxuICAgKi9cbi8qIE5PVEU6IEl0J3MgbmVjZXNzYXJ5IHRvIHVzZSBlLmcuIHRoZSAkZm9udE5vcm1hbCB2YXJpYWJsZSBoZXJlLiBEZWZpbmluZ1xuICAgKiBtdWx0aXBsZSBmb250cyBkaXJlY3RseSBpbiBoZXJlIHlpZWxkcyBhIHN0eWx1cyBjb21waWxlciBlcnJvci5cbiAgICovXG4vKlxuICAgKiBCcmVha3BvaW50IHNldHVwOlxuICAgKi9cbmJvZHkge1xuICBmb250LWZhbWlseTogJ1JhbGV3YXknLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5idXR0b24ge1xuICBmb250LWZhbWlseTogJ0VsZWN0cm9saXplJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5vdmVybGF5ZWQge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuY29kZSB7XG4gIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJywgbW9ub3NwYWNlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxucHJlIGNvZGUge1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG59XG5wIGNvZGUge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLXRvcDogMC4yZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjJlbTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxucCBjb2RlOjpiZWZvcmUsXG5wIGNvZGU6OmFmdGVyIHtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjJlbTtcbiAgY29udGVudDogXCJcXDAwYTBcIjtcbn1cbnByZSB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgcGFkZGluZzogMWVtO1xufVxuaDEge1xuICBmb250LWZhbWlseTogJ0VsZWN0cm9saXplJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tdG9wOiAwLjFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5oMiB7XG4gIGZvbnQtZmFtaWx5OiAnRWxlY3Ryb2xpemUnLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5oMyB7XG4gIGZvbnQtZmFtaWx5OiAnRWxlY3Ryb2xpemUnLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5oNCB7XG4gIGZvbnQtZmFtaWx5OiAnRWxlY3Ryb2xpemUnLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbi10b3A6IDAuN2VtO1xuICBtYXJnaW4tYm90dG9tOiAwLjdlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0MjQyNDI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmg1IHtcbiAgZm9udC1mYW1pbHk6ICdFbGVjdHJvbGl6ZScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMC43NWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5wIHtcbiAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG59XG5hIHtcbiAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgaDEge1xuICAgIGZvbnQtZmFtaWx5OiAnRWxlY3Ryb2xpemUnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMy44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luLXRvcDogMC4xZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4xZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIGgyIHtcbiAgICBmb250LWZhbWlseTogJ0VsZWN0cm9saXplJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtZmFtaWx5OiAnRWxlY3Ryb2xpemUnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuNzVyZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtZmFtaWx5OiAnRWxlY3Ryb2xpemUnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbi10b3A6IDAuN2VtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuN2VtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzQyNDI0MjtcbiAgfVxuICBoNSB7XG4gICAgZm9udC1mYW1pbHk6ICdFbGVjdHJvbGl6ZScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLXRvcDogMC43NWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIH1cbiAgYSB7XG4gICAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIH1cbn1cbi8qXG4gICAqIERlZmF1bHQgc2V0dGluZ3M6XG4gICAqL1xuLypcbiAgICogQnJlYWtwb2ludCBzZXR1cDpcbiAgICovXG5ib2R5IHtcbiAgY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNlMTEwMTA7XG4gIGNvbG9yOiAjZmZmO1xuICBmaWxsOiAjZmZmO1xufVxuYSB7XG4gIGNvbG9yOiAjMzMzO1xufVxuYTp2aXNpdGVkIHtcbiAgY29sb3I6ICMzMzM7XG59XG5hOmhvdmVyLFxuYTp2aXNpdGVkOmhvdmVyIHtcbiAgY29sb3I6ICNlMTEwMTA7XG59XG5hOmFjdGl2ZSB7XG4gIGNvbG9yOiAjNmEwMDAwO1xufVxuYTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGNvbG9yOiAjZTExMDEwO1xufVxucCBjb2RlIHtcbiAgY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG59XG5wcmUge1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbn1cbi5jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbn1cbi5jb250ZW50X19jb250YWluZXIsXG4uY29udGVudF9fY29udGFpbmVyLS1leHBhbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuLmluZm9ybWF0aW9uYWwge1xuICBjb2xvcjogI2JiYjtcbn1cbi8qIEltYWdlcyBzbyBhc3N1bWUgd2hpdGUgdGV4dCBpcyByZXF1aXJlZCAqL1xuLmhlcm8gaDEsXG4uaGVybyBoMixcbi5oZXJvIGgzLFxuLmhlcm8gaDQsXG4uaGVybyBoNSxcbi5oZXJvIHAsXG4uaGVybyBjb2RlIHtcbiAgY29sb3I6ICNmZmY7XG59XG4vKlxuICogVUkgY29tcG9uZW50czpcbiAqXG4gKiBFYWNoIFVJIGNvbXBvbmVudCBpcyBlbmNhcHN1bGF0ZWQgd2l0aGluIGEgc2V0dXAgZnVuY3Rpb24gd2hpY2ggdGFrZXMgYW5cbiAqIG9waXRpb25hbCBzZXR0aW5ncyBoYXNoLiBJZiBvbWl0dGVkIHRoZSBkZWZhdWx0IHNldHRpbmdzIGF2YWlsYWJsZSBpbiB0aGVcbiAqIHJlc3BlY3RpdmUgY29tcG9uZW50IGZpbGUgYXJlIHVzZWQuIFRoaXMgYWxsb3dzIGEgKHRoZW1lKSBkZXZlbG9wZXIgdG9cbiAqIGN1c3RvbWl6ZSBjb21wb25lbnRzIGZvciB0aGVpciBvd24gc2lmdHMgYW5kIHByb2plY3RzLlxuICovXG4uYW5pbWF0ZS1vcGFjaXR5IHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLWluIDQwMG1zO1xufVxuLmZhZGUtaW4ge1xuICBhbmltYXRpb246IGZhZGVpbiA0MDBtcyBlYXNlLWluIDBzIDEgbm9ybWFsIGJvdGg7XG59XG4uZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDQwMG1zO1xufVxuQC1tb3ota2V5ZnJhbWVzIGZhZGVpbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGZhZGVpbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZWluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLyogRklYWE1FOiByZWZhY3RvciBpbnRvIGNvbXBvbmVudHMhICovXG4uc3ZnLWNlbnRlci14IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiA1MCU7XG59XG4uc3ZnLXBhZGRpbmctdG9wIHtcbiAgcGFkZGluZy10b3A6IDFlbTtcbn1cbi5zdmctcGFkZGluZy1sZWZ0IHtcbiAgcGFkZGluZy1sZWZ0OiAxZW07XG59XG4ucmV1c2FibGUgcGF0aCB7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZTogIzAwMDtcbiAgc3Ryb2tlLXdpZHRoOiAxLjVweDtcbiAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xufVxuLnJldXNhYmxlIHBhdGguYmdzdHJva2Uge1xuICBzdHJva2U6ICNmZmY7XG4gIHN0cm9rZS13aWR0aDogM3B4O1xufVxuLypcbiAgICogRGVmYXVsdCBzZXR0aW5nczpcbiAgICovXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInVybFwiXSxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWluLWhlaWdodDogMi43NWVtO1xuICBwYWRkaW5nLXRvcDogMC41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gIGNvbG9yOiAjMzMzO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDhkOGQ4O1xuICBvdXRsaW5lOiBub25lO1xuICBmb250LXNpemU6IDFyZW07XG59XG5pbnB1dFt0eXBlPVwidGV4dFwiXTpkaXNhYmxlZCxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpkaXNhYmxlZCxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTpkaXNhYmxlZCxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06ZGlzYWJsZWQsXG5pbnB1dFt0eXBlPVwidGVsXCJdOmRpc2FibGVkLFxuaW5wdXRbdHlwZT1cInVybFwiXTpkaXNhYmxlZCxcbnNlbGVjdDpkaXNhYmxlZCxcbnRleHRhcmVhOmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgxMjVkZWcsIHRyYW5zcGFyZW50LCB0cmFuc3BhcmVudCAycHgsICNmMWYxZjEgMnB4LCAjZjFmMWYxIDNweCwgdHJhbnNwYXJlbnQgM3B4LCB0cmFuc3BhcmVudCA1cHgsICNmMWYxZjEgNXB4KTtcbn1cbi8qXG4gICAqIERlZmF1bHQgc2V0dGluZ3M6XG4gICAqL1xuYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDAuNzVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjkzNzVlbTtcbiAgcGFkZGluZy1yaWdodDogMS45Mzc1ZW07XG4gIGNvbG9yOiAjZTExMDEwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxMTAxMDtcbiAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDIwMG1zIGVhc2UgMHM7XG59XG5idXR0b246aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogI2UxMTAxMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxMTAxMDtcbn1cbmJ1dHRvbjphY3RpdmUge1xuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzZhMDAwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzZhMDAwMDtcbn1cbmJ1dHRvbjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjN2Y3ZjdmO1xuICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5idXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuYnV0dG9uLnJzLWJ0bi0tc21hbGwge1xuICBwYWRkaW5nLXRvcDogMC41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG59XG5idXR0b24ucnMtYnRuLS1zZWxlY3RlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjZTExMDEwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTExMDEwO1xufVxuYnV0dG9uLnJzLWJ0bi0tc2VsZWN0ZWQ6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzZhMDAwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzZhMDAwMDtcbn1cbmJ1dHRvbi5ycy1idG4tLXNlbGVjdGVkOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjZTExMDEwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTExMDEwO1xufVxuYnV0dG9uLnJzLWJ0bi0tc2VsZWN0ZWQ6aG92ZXI6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogI2UxMTAxMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxMTAxMDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLyogU3R5bGluZyB0aGUgYmFzZSBidXR0b24gd2lsbCBpcyBpbXBsaWNpdGx5IGFwcGx5aW5nIHRoZSBzdHlsZXMgdG8gdGhlICdiZW0nIGJ1dHRvbnMgKi9cbnAgYnV0dG9uIHtcbiAgbWFyZ2luOiAwLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5wIGJ1dHRvbi5ycy1idG4tLXNtYWxsIHtcbiAgbWFyZ2luOiAwLjM3NXJlbTtcbn1cbnAgYS5ycy1idG4tLXJlZCxcbnAgYS5ycy1idG4tLWJsdWUsXG5wIGEucnMtYnRuLS1ncmVlbixcbnAgYS5ycy1idG4tLWJsYWNrIHtcbiAgbWFyZ2luOiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBwIGJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwLjYyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuICBwIGJ1dHRvbi5ycy1idG4tLXNtYWxsIHtcbiAgICBtYXJnaW46IDAuMzc1cmVtO1xuICB9XG4gIHAgYS5ycy1idG4tLXJlZCxcbiAgcCBhLnJzLWJ0bi0tYmx1ZSxcbiAgcCBhLnJzLWJ0bi0tZ3JlZW4sXG4gIHAgYS5ycy1idG4tLWJsYWNrIHtcbiAgICBtYXJnaW46IDAuNjI1cmVtO1xuICB9XG59XG4ucnMtYnRuLS1yZWQsXG5hLnJzLWJ0bi0tcmVkIHtcbiAgcGFkZGluZy10b3A6IDAuNzVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjkzNzVlbTtcbiAgcGFkZGluZy1yaWdodDogMS45Mzc1ZW07XG4gIGNvbG9yOiAjZTExMDEwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxMTAxMDtcbiAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnJzLWJ0bi0tcmVkOmhvdmVyLFxuYS5ycy1idG4tLXJlZDpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjZTExMDEwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTExMDEwO1xufVxuLnJzLWJ0bi0tcmVkOmFjdGl2ZSxcbmEucnMtYnRuLS1yZWQ6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICM2YTAwMDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2YTAwMDA7XG59XG4ucnMtYnRuLS1yZWQ6ZGlzYWJsZWQsXG5hLnJzLWJ0bi0tcmVkOmRpc2FibGVkIHtcbiAgY29sb3I6ICM3ZjdmN2Y7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5ycy1idG4tLXJlZDpmb2N1cyxcbmEucnMtYnRuLS1yZWQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuYS5ycy1idG4tLXJlZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5ycy1idG4tLXJlZC5ycy1idG4tLXNlbGVjdGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICNlMTEwMTA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMTEwMTA7XG59XG4ucnMtYnRuLS1yZWQucnMtYnRuLS1zZWxlY3RlZDpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjNmEwMDAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNmEwMDAwO1xufVxuLnJzLWJ0bi0tcmVkLnJzLWJ0bi0tc2VsZWN0ZWQ6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICNlMTEwMTA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMTEwMTA7XG59XG4ucnMtYnRuLS1yZWQucnMtYnRuLS1zZWxlY3RlZDpob3ZlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjZTExMDEwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTExMDEwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucnMtYnRuLS1zbWFsbCxcbmEucnMtYnRuLS1zbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbn1cbi5ycy1idG4tLWdyZWVuLFxuYS5ycy1idG4tLWdyZWVuIHtcbiAgcGFkZGluZy10b3A6IDAuNzVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjkzNzVlbTtcbiAgcGFkZGluZy1yaWdodDogMS45Mzc1ZW07XG4gIGNvbG9yOiAjMGFiOTNhO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzBhYjkzYTtcbiAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnJzLWJ0bi0tZ3JlZW46aG92ZXIsXG5hLnJzLWJ0bi0tZ3JlZW46aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzBhYjkzYTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzBhYjkzYTtcbn1cbi5ycy1idG4tLWdyZWVuOmFjdGl2ZSxcbmEucnMtYnRuLS1ncmVlbjphY3RpdmUge1xuICBvdXRsaW5lOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzA4NzkyNztcbiAgYm9yZGVyOiAxcHggc29saWQgIzA4NzkyNztcbn1cbi5ycy1idG4tLWdyZWVuOmRpc2FibGVkLFxuYS5ycy1idG4tLWdyZWVuOmRpc2FibGVkIHtcbiAgY29sb3I6ICM3ZjdmN2Y7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5ycy1idG4tLWdyZWVuOmZvY3VzLFxuYS5ycy1idG4tLWdyZWVuOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbmEucnMtYnRuLS1ncmVlbiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5ycy1idG4tLWdyZWVuLnJzLWJ0bi0tc2VsZWN0ZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzBhYjkzYTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzBhYjkzYTtcbn1cbi5ycy1idG4tLWdyZWVuLnJzLWJ0bi0tc2VsZWN0ZWQ6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzA4NzkyNztcbiAgYm9yZGVyOiAxcHggc29saWQgIzA4NzkyNztcbn1cbi5ycy1idG4tLWdyZWVuLnJzLWJ0bi0tc2VsZWN0ZWQ6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwYWI5M2E7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwYWI5M2E7XG59XG4ucnMtYnRuLS1ncmVlbi5ycy1idG4tLXNlbGVjdGVkOmhvdmVyOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwYWI5M2E7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwYWI5M2E7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5ycy1idG4tLXNtYWxsLFxuYS5ycy1idG4tLXNtYWxsIHtcbiAgcGFkZGluZy10b3A6IDAuNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG4gIHBhZGRpbmctbGVmdDogMC41ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNWVtO1xufVxuLnJzLWJ0bi0tYmx1ZSxcbmEucnMtYnRuLS1ibHVlIHtcbiAgcGFkZGluZy10b3A6IDAuNzVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjkzNzVlbTtcbiAgcGFkZGluZy1yaWdodDogMS45Mzc1ZW07XG4gIGNvbG9yOiAjMTY3MWY0O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE2NzFmNDtcbiAgZm9udC1mYW1pbHk6ICdSYWxld2F5Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLnJzLWJ0bi0tYmx1ZTpob3ZlcixcbmEucnMtYnRuLS1ibHVlOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMxNjcxZjQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNjcxZjQ7XG59XG4ucnMtYnRuLS1ibHVlOmFjdGl2ZSxcbmEucnMtYnRuLS1ibHVlOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMGI0OWEyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGI0OWEyO1xufVxuLnJzLWJ0bi0tYmx1ZTpkaXNhYmxlZCxcbmEucnMtYnRuLS1ibHVlOmRpc2FibGVkIHtcbiAgY29sb3I6ICM3ZjdmN2Y7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5ycy1idG4tLWJsdWU6Zm9jdXMsXG5hLnJzLWJ0bi0tYmx1ZTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5hLnJzLWJ0bi0tYmx1ZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5ycy1idG4tLWJsdWUucnMtYnRuLS1zZWxlY3RlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMTY3MWY0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTY3MWY0O1xufVxuLnJzLWJ0bi0tYmx1ZS5ycy1idG4tLXNlbGVjdGVkOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwYjQ5YTI7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwYjQ5YTI7XG59XG4ucnMtYnRuLS1ibHVlLnJzLWJ0bi0tc2VsZWN0ZWQ6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMxNjcxZjQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNjcxZjQ7XG59XG4ucnMtYnRuLS1ibHVlLnJzLWJ0bi0tc2VsZWN0ZWQ6aG92ZXI6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzE2NzFmNDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE2NzFmNDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLnJzLWJ0bi0tc21hbGwsXG5hLnJzLWJ0bi0tc21hbGwge1xuICBwYWRkaW5nLXRvcDogMC41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgcGFkZGluZy1yaWdodDogMC41ZW07XG59XG4ucnMtYnRuLS1ibGFjayxcbmEucnMtYnRuLS1ibGFjayB7XG4gIHBhZGRpbmctdG9wOiAwLjc1ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjc1ZW07XG4gIHBhZGRpbmctbGVmdDogMS45Mzc1ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuOTM3NWVtO1xuICBjb2xvcjogIzc3NztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Nzc7XG4gIGZvbnQtZmFtaWx5OiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5ycy1idG4tLWJsYWNrOmhvdmVyLFxuYS5ycy1idG4tLWJsYWNrOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwYWI5M2E7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwYWI5M2E7XG59XG4ucnMtYnRuLS1ibGFjazphY3RpdmUsXG5hLnJzLWJ0bi0tYmxhY2s6YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwODc5Mjc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwODc5Mjc7XG59XG4ucnMtYnRuLS1ibGFjazpkaXNhYmxlZCxcbmEucnMtYnRuLS1ibGFjazpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjN2Y3ZjdmO1xuICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucnMtYnRuLS1ibGFjazpmb2N1cyxcbmEucnMtYnRuLS1ibGFjazpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5hLnJzLWJ0bi0tYmxhY2sge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ucnMtYnRuLS1ibGFjay5ycy1idG4tLXNlbGVjdGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwYWI5M2E7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwYWI5M2E7XG59XG4ucnMtYnRuLS1ibGFjay5ycy1idG4tLXNlbGVjdGVkOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwODc5Mjc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwODc5Mjc7XG59XG4ucnMtYnRuLS1ibGFjay5ycy1idG4tLXNlbGVjdGVkOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMGFiOTNhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGFiOTNhO1xufVxuLnJzLWJ0bi0tYmxhY2sucnMtYnRuLS1zZWxlY3RlZDpob3ZlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMGFiOTNhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGFiOTNhO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucnMtYnRuLS1zbWFsbCxcbmEucnMtYnRuLS1zbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbn1cbi5oZXJvIGJ1dHRvbi5kYW5nZXIsXG5idXR0b24uZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMTEwMTA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMTEwMTA7XG59XG4uaGVybyBidXR0b24uZGFuZ2VyOmhvdmVyLFxuYnV0dG9uLmRhbmdlcjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMTEwMTA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMTEwMTA7XG59XG4uaGVybyBidXR0b24uZGFuZ2VyOmFjdGl2ZSxcbmJ1dHRvbi5kYW5nZXI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZhMDAwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzZhMDAwMDtcbn1cbi5oZXJvIGJ1dHRvbi5kYW5nZXI6ZGlzYWJsZWQsXG5idXR0b24uZGFuZ2VyOmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgxMjVkZWcsIHRyYW5zcGFyZW50LCB0cmFuc3BhcmVudCAycHgsIHJnYmEoMCwwLDAsMC4yKSAycHgsIHJnYmEoMCwwLDAsMC4yKSAzcHgsIHRyYW5zcGFyZW50IDNweCwgdHJhbnNwYXJlbnQgNXB4LCByZ2JhKDAsMCwwLDAuMikgNXB4KTtcbn1cbi5oZXJvIGJ1dHRvbi5kYW5nZXI6ZGlzYWJsZWQ6aG92ZXIsXG5idXR0b24uZGFuZ2VyOmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxMTAxMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCgxMjVkZWcsIHRyYW5zcGFyZW50LCB0cmFuc3BhcmVudCAycHgsIHJnYmEoMCwwLDAsMC4yKSAycHgsIHJnYmEoMCwwLDAsMC4yKSAzcHgsIHRyYW5zcGFyZW50IDNweCwgdHJhbnNwYXJlbnQgNXB4LCByZ2JhKDAsMCwwLDAuMikgNXB4KTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxMTAxMDtcbn1cbi5oZXJvIGJ1dHRvbi5kYW5nZXI6Zm9jdXMsXG5idXR0b24uZGFuZ2VyOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5oZXJvIGJ1dHRvbiB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuMmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmY7XG59XG4uaGVybyBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2UxMTAxMDtcbn1cbi5oZXJvIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMCk7XG59XG4uaGVybyBidXR0b246ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDEyNWRlZywgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50IDJweCwgcmdiYSgyNTUsMjU1LDI1NSwwLjMpIDJweCwgcmdiYSgyNTUsMjU1LDI1NSwwLjMpIDNweCwgdHJhbnNwYXJlbnQgM3B4LCB0cmFuc3BhcmVudCA1cHgsIHJnYmEoMjU1LDI1NSwyNTUsMC4zKSA1cHgpO1xufVxuLmhlcm8gYnV0dG9uOmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoMTI1ZGVnLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQgMnB4LCByZ2JhKDI1NSwyNTUsMjU1LDAuMykgMnB4LCByZ2JhKDI1NSwyNTUsMjU1LDAuMykgM3B4LCB0cmFuc3BhcmVudCAzcHgsIHRyYW5zcGFyZW50IDVweCwgcmdiYSgyNTUsMjU1LDI1NSwwLjMpIDVweCk7XG59XG4uaGVybyBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnJzLWljb24tYnRuIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleDogMCBhdXRvO1xuICBtaW4td2lkdGg6IDE4MHB4O1xuICBjb2xvcjogIzc3NztcbiAgYm9yZGVyOiAxcHggc29saWQgIzc3NztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5ycy1pY29uLWJ0bjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMGFiOTNhO1xufVxuLnJzLWljb24tYnRuOmFjdGl2ZSB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMDg3OTI3O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDg3OTI3O1xufVxuLnJzLWljb24tYnRuOmRpc2FibGVkIHtcbiAgY29sb3I6ICM3ZjdmN2Y7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG59XG4ucnMtaWNvbi1idG46Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnJzLWljb24tYnRuX19pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxLjg3NWVtO1xuICBoZWlnaHQ6IDEuODc1ZW07XG4gIGZsZXg6IDAgMCA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuLnJzLWljb24tYnRuX19sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDE7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2U7XG59XG4ucnMtaWNvbi1idG5fX2xhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzBhYjkzYTtcbn1cbi5ycy1pY29uLWJ0bl9faWNvbl9fd3JhcHBlciB7XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzc3NztcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4ucnMtZGFuZ2VyLWJ0biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxMTAxMDtcbiAgZm9udC1mYW1pbHk6IEVsZWN0cm9saXplLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2U7XG59XG4ucnMtZGFuZ2VyLWJ0bjpob3Zlcixcbi5ycy1kYW5nZXItYnRuOnZpc2l0ZWQsXG4ucnMtZGFuZ2VyLWJ0bjp2aXNpdGVkOmhvdmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYTBjMGM7XG4gIGNvbG9yOiAjZmZmO1xufVxuLypcbiAgICogRGVmYXVsdCBzZXR0aW5nczpcbiAgICovXG4vKlxuICAgKiBCcmVha3BvaW50IHNldHVwOlxuICAgKi9cbmlucHV0W3R5cGU9J3JhbmdlJ10ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiBzb2xpZCAwLjVlbSB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDE1ZW07XG4gIGhlaWdodDogMmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjI1ZW07XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDFlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuaW5wdXRbdHlwZT0ncmFuZ2UnXSxcbmlucHV0W3R5cGU9J3JhbmdlJ106Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuaW5wdXRbdHlwZT0ncmFuZ2UnXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5pbnB1dFt0eXBlPSdyYW5nZSddOjotbXMtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuaW5wdXRbdHlwZT0ncmFuZ2UnXTo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICB3aWR0aDogMTVlbTtcbiAgaGVpZ2h0OiAwLjVlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNWVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoI2UxMTAxMCwgI2UxMTAxMCkgbm8tcmVwZWF0ICNjYWNhY2E7XG4gIGJhY2tncm91bmQtc2l6ZTogMCUgMTAwJTtcbn1cbmlucHV0W3R5cGU9J3JhbmdlJ106Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgbWFyZ2luLXRvcDogLTAuMjVlbTtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2hhZG93OiAwIDAgMC4xMjVlbSAjMzMzO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuaW5wdXRbdHlwZT0ncmFuZ2UnXTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggI2UxMTAxMDtcbn1cbmlucHV0W3R5cGU9J3JhbmdlJ10ucHJvZ3Jlc3Mge1xuICBjdXJzb3I6IGluaXRpYWw7XG59XG5pbnB1dFt0eXBlPSdyYW5nZSddLnByb2dyZXNzOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5pbnB1dFt0eXBlPSdyYW5nZSddLnByb2dyZXNzOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbmlucHV0W3R5cGU9J3JhbmdlJ10uYW5pbWF0ZWQ6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIDQwMG1zIGVhc2UtaW47XG59XG4vKlxuICAgKiBEZWZhdWx0IHNldHRpbmdzOlxuICAgKi9cbi8qXG4gICAqIEJyZWFrcG9pbnQgc2V0dXA6XG4gICAqL1xuLmRvd24tYXJyb3cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZzogMWVtO1xuICBmbG9hdDogbm9uZTtcbiAgY2xlYXI6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHBzOi8vc3RhdGljLnJlZHNpZnQuaW8vYXNzZXRzL3VpLXJzLWNvcmUvaWNvbnMvLXJzLWljb24tZG93bi1hcnJvdy0zLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4IDIwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG9wYWNpdHk6IDAuNjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMzUsIDEuMTU1KSA0MDBtcztcbn1cbi5kb3duLWFycm93OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi8qXG4gICAqIERlZmF1bHQgc2V0dGluZ3M6XG4gICAqL1xuLypcbiAgICogQnJlYWtwb2ludCBzZXR1cDpcbiAgICovXG4uc3R5bGUtc3dpdGNoZXIge1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHBhZGRpbmc6IDAuOGVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuOSk7XG59XG4uc3R5bGUtc3dpdGNoZXIgYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG4iLCIvKlxuICogQm9keSByZXNldFxuICogaHR0cDovL2NvZGVwZW4uaW8vYWJzb2x1dGhvbHovcGVuL1hKSnBQWFxuICpcbiAqL1xuLy8gaHRtbCB7XG4vLyAgIGhlaWdodDogMTAwJTtcbi8vIH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cbiIsIiRwYXR0ZXJuc19fZG93bi1hcnJvdy1ncmVlbi1oZWlnaHQgPSA3cHhcbiRwYXR0ZXJuc19fZG93bi1hcnJvdy1ncmVlbi13aWR0aCA9IDEycHhcbiRwYXR0ZXJuc19fcmVkc2lmdC1sb2dvLWhlaWdodCA9IDdweFxuJHBhdHRlcm5zX19yZWRzaWZ0LWxvZ28td2lkdGggPSA3cHhcblxuLi1wYXR0ZXJuLWRvd24tYXJyb3ctZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaWNvbnMvZG93bi1hcnJvdy1ncmVlbi5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogJHBhdHRlcm5zX19kb3duLWFycm93LWdyZWVuLXdpZHRoICRwYXR0ZXJuc19fZG93bi1hcnJvdy1ncmVlbi1oZWlnaHQ7XG59XG5cbi4tcGF0dGVybi1yZWRzaWZ0LWxvZ28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaWNvbnMvcmVkc2lmdC1sb2dvLXJlZC04LjEuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwYXR0ZXJuc19fcmVkc2lmdC1sb2dvLXdpZHRoICRwYXR0ZXJuc19fcmVkc2lmdC1sb2dvLWhlaWdodDtcbn1cbiIsIi8qIEZvciBKYXZhc2NyaXB0IGNoYW5nZSB0aGUgY3VydmVzIGluIGQzL3Rvb2xzLmpzICovXG4kY3VydmVSZWRzaWZ0ID0gY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMzUsIDEuMTU1KVxuJHRpbWVSZWRzaWZ0ID0gNDAwbXNcblxuLyogbm90IHVzaW5nIHRoZSBjdXJ2ZSBoZXJlIGFzIGZhZGluZyBuZWVkcyBhIGRpZmZyZW50IHNoYXBlICovXG4uYW5pbWF0ZS1vcGFjaXR5IHtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLWluICR0aW1lUmVkc2lmdDtcbn1cblxuLmZhZGUtaW4ge1xuXHRhbmltYXRpb246IGZhZGVpbiAkdGltZVJlZHNpZnQgZWFzZS1pbiAwcyAxIG5vcm1hbCBib3RoO1x0XG59XG5cbi5kZWxheSB7XG5cdGFuaW1hdGlvbi1kZWxheTogJHRpbWVSZWRzaWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVpbiB7XG4gICAgZnJvbSB7IG9wYWNpdHk6IDAuMDsgfVxuICAgIHRvICAgeyBvcGFjaXR5OiAxLjA7IH1cbn0iLCIvKlxuICogQ29tbW9uIGJhc2Ugc3R5bGVzXG4gKi9cbi5oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGFzaCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHBhdHRlcm4tLWNvcmUoKTtcbn1cbiIsIi4tcnMtaWNvbi1yZWRzaWZ0LXJlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1yZWRzaWZ0LXJlZC5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uLXJzLWljb24tcmVkc2lmdC1jbG91ZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1yZWRzaWZ0LWNsb3VkLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi4tcnMtaWNvbi1yZWRzaWZ0LXdoaXRlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLXJlZHNpZnQtd2hpdGUuc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLi1ycy1pY29uLWdpdGh1YiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1naXRodWIuc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLi1ycy1pY29uLWdpdGh1Yi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8taWNvbi1naXRodWItd2hpdGUuc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLi1ycy1pY29uLWdvb2dsZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1nb29nbGUuc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLi1ycy1pY29uLWxpbmtlZGluIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1pY29uLWxpbmtlZGluLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI1cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi4tcnMtaWNvbi1zbGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1zbGFjay5wbmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uLXJzLWljb24tdHdpdHRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi10d2l0dGVyLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi4tcnMtaWNvbi1zZXR0aW5ncyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1zZXR0aW5ncy5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uLXJzLWljb24tZG93bi1hcnJvdy1ncmVlbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pbWFnZXMvaWNvbi1kb3duLWFycm93LWdyZWVuLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi4tcnMtaWNvbi1sb2dvdXQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2h0dHBzOi8vc3RhdGljLnJlZHNpZnQuaW8vYXNzZXRzL3VpLXJzLWNvcmUvaWNvbnMvLXJzLWljb24tbG9nb3V0LnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi4tcnMtaWNvbi1wcm9maWxlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLXByb2ZpbGUuc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLi1ycy1pY29uLWRhc2hib2FyZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1kYXNoYm9hcmQuc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMjRweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLi1ycy1pY29uLWNhdGFsb2d1ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1jYXRhbG9ndWUuc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMjRweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLi1ycy1pY29uLXdvcmtzaG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLXdvcmtzaG9wLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI0cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi4tcnMtaWNvbi13aXJlZnJhbWUtYmx1ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi13aXJlZnJhbWUtYmx1ZS5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uLXJzLWljb24tZXhwYW5kIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLWV4cGFuZC5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uLXJzLWljb24tZXhwYW5kLXNwbGl0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwczovL3N0YXRpYy5yZWRzaWZ0LmlvL2Fzc2V0cy91aS1ycy1jb3JlL2ljb25zLy1ycy1pY29uLWV4cGFuZC1zcGxpdC5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAzMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uLXJzLWljb24tZXhpdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1leGl0LnN2ZycpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5cbi4tcnMtaWNvbi1xdWVzdGlvbiB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDcwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1xdWVzdGlvbi5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi4tcnMtaWNvbi1xdWVzdGlvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG4iLCJzZXR1cC1mb250LWZhY2VzKCR3b2ZmMiA9IHRydWUpIHtcblxuLyogSGVhZGluZyBmb250IEBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVJhbGV3YXk6MjAwXCIpOyAqL1xuLyogbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1JhbGV3YXknO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIHNyYzogbG9jYWwoJ1JhbGV3YXkgRXh0cmFMaWdodCcpLCBsb2NhbCgnUmFsZXdheS1FeHRyYUxpZ2h0JyksIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvcmFsZXdheS92MTEvOEtoWmQzVlFCdFhUQXpudktqdy1rNzNocHczcGd5MmdBaS1JcDdXUE1pMC53b2ZmKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9yYWxld2F5L3YxMS84S2haZDNWUUJ0WFRBem52S2p3LWt5M1VTQm5TdnBrb3BRYVVSLTJyN2lVLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuaWYgJHdvZmYyIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdSYWxld2F5JztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICBzcmM6IGxvY2FsKCdSYWxld2F5IEV4dHJhTGlnaHQnKSwgbG9jYWwoJ1JhbGV3YXktRXh0cmFMaWdodCcpLCB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3JhbGV3YXkvdjExLzhLaFpkM1ZRQnRYVEF6bnZLancta3d6eURNWGhkRDhzQWo2T0FKVEZzQkkud29mZjIpIGZvcm1hdCgnd29mZjInKTtcbiAgICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkM2LCBVKzAyREEsIFUrMDJEQywgVSsyMDAwLTIwNkYsIFUrMjA3NCwgVSsyMEFDLCBVKzIyMTIsIFUrMjIxNSwgVStFMEZGLCBVK0VGRkQsIFUrRjAwMDtcbiAgfVxufVxuLyogSGVhZGluZyBmb250IEBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUVsZWN0cm9saXplXCIpOyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRWxlY3Ryb2xpemUnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ0VsZWN0cm9saXplJyksIGxvY2FsKCdFbGVjdHJvbGl6ZS1SZWd1bGFyJyksIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvZWxlY3Ryb2xpemUvdjUvRER5OXNnVTJVN1M0eEF3SDV0aG5KN3JJYS03YWNNQWVEQlZ1Y2xzaTZHYy53b2ZmKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9lbGVjdHJvbGl6ZS92NS9ERHk5c2dVMlU3UzR4QXdINXRobkp5d2xpZEhKZ0FnbVRqT0VFend1MUw4LnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuaWYgJHdvZmYyIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdFbGVjdHJvbGl6ZSc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgc3JjOiBsb2NhbCgnRWxlY3Ryb2xpemUnKSwgbG9jYWwoJ0VsZWN0cm9saXplLVJlZ3VsYXInKSwgdXJsKFwiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2VsZWN0cm9saXplL3Y1L0REeTlzZ1UyVTdTNHhBd0g1dGhuSjRncDlROGdiWXJocUdsUmF2X0lYZmsud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjIxMiwgVSsyMjE1LCBVK0UwRkYsIFUrRUZGRCwgVStGMDAwO1xuICB9XG59XG4vKiBDb2RlIGZvbnQgQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9U291cmNlK0NvZGUrUHJvOjMwMCw0MDAsNzAwXCIpOyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBzcmM6IGxvY2FsKCdTb3VyY2UgQ29kZSBQcm8gTGlnaHQnKSwgbG9jYWwoJ1NvdXJjZUNvZGVQcm8tTGlnaHQnKSwgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L2xlcXYzdi15VHNKTkM3bkZ6blNNcWNWTnRvbTRRbEVETkphcXFxenFkU3Mud29mZikgZm9ybWF0KCd3b2ZmJyksIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvc291cmNlY29kZXByby92Ni9sZXF2M3YteVRzSk5DN25Gem5TTXFmUzQyd0t6cmUwY3htTzVtNUd5VHNZLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKCdTb3VyY2UgQ29kZSBQcm8nKSwgbG9jYWwoJ1NvdXJjZUNvZGVQcm8tUmVndWxhcicpLCB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3NvdXJjZWNvZGVwcm8vdjYvbXJsOGprTTE4T2xPUU44SkxnYXNEOUhxLUZGZ29ETlYzR1RLcEh3dXZ0SS53b2ZmKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L21ybDhqa00xOE9sT1FOOEpMZ2FzRDBZNkZ1MzlUdDlYa210U29zYU1vRUEudHRmKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoJ1NvdXJjZSBDb2RlIFBybyBCb2xkJyksIGxvY2FsKCdTb3VyY2VDb2RlUHJvLUJvbGQnKSwgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L2xlcXYzdi15VHNKTkM3bkZ6blNNcVlxakdZSlV5T1hjQndVUWJSYU5INmMud29mZikgZm9ybWF0KCd3b2ZmJyksIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3Mvc291cmNlY29kZXByby92Ni9sZXF2M3YteVRzSk5DN25Gem5TTXFibGNNck5yc25MOWRnQURuWGdZSmpzLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuaWYgJHdvZmYyIHtcbiAgLyogbGF0aW4tZXh0ICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBzcmM6IGxvY2FsKCdTb3VyY2UgQ29kZSBQcm8gTGlnaHQnKSwgbG9jYWwoJ1NvdXJjZUNvZGVQcm8tTGlnaHQnKSwgdXJsKFwiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3NvdXJjZWNvZGVwcm8vdjYvbGVxdjN2LXlUc0pOQzduRnpuU01xVE9GbkpOeWdJa3JIY2lDOEJXemJDejNyR1Z0c1RrUHNiRGFqdU81dWVRdy53b2ZmMlwiKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMUUwMC0xRUZGLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbiAgfVxuXG4gIC8qIGxhdGluICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBzcmM6IGxvY2FsKCdTb3VyY2UgQ29kZSBQcm8gTGlnaHQnKSwgbG9jYWwoJ1NvdXJjZUNvZGVQcm8tTGlnaHQnKSwgdXJsKFwiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3NvdXJjZWNvZGVwcm8vdjYvbGVxdjN2LXlUc0pOQzduRnpuU01xU1AyTEVrNmxNellzUnFyM2RIRkltQS53b2ZmMlwiKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMjEyLCBVKzIyMTUsIFUrRTBGRiwgVStFRkZELCBVK0YwMDA7XG4gIH1cblxuICAvKiBsYXRpbi1leHQgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHNyYzogbG9jYWwoJ1NvdXJjZSBDb2RlIFBybycpLCBsb2NhbCgnU291cmNlQ29kZVByby1SZWd1bGFyJyksIHVybChcImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L21ybDhqa00xOE9sT1FOOEpMZ2FzRDRhMVlEdG9hcnp3U1h4VEhnZ0VYTXcud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMjRGLCBVKzFFMDAtMUVGRiwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMENGLCBVKzJDNjAtMkM3RiwgVStBNzIwLUE3RkY7XG4gIH1cblxuICAvKiBsYXRpbiAqL1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ1NvdXJjZSBDb2RlIFBybyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgc3JjOiBsb2NhbCgnU291cmNlIENvZGUgUHJvJyksIGxvY2FsKCdTb3VyY2VDb2RlUHJvLVJlZ3VsYXInKSwgdXJsKFwiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3NvdXJjZWNvZGVwcm8vdjYvbXJsOGprTTE4T2xPUU44SkxnYXNENWJQRmR1SVl0b0x6d1NUNjh1aHpfWS53b2ZmMlwiKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMjAwMC0yMDZGLCBVKzIwNzQsIFUrMjBBQywgVSsyMjEyLCBVKzIyMTUsIFUrRTBGRiwgVStFRkZELCBVK0YwMDA7XG4gIH1cblxuICAvKiBsYXRpbi1leHQgKi9cbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdTb3VyY2UgQ29kZSBQcm8nO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHNyYzogbG9jYWwoJ1NvdXJjZSBDb2RlIFBybyBCb2xkJyksIGxvY2FsKCdTb3VyY2VDb2RlUHJvLUJvbGQnKSwgdXJsKFwiaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL3NvdXJjZWNvZGVwcm8vdjYvbGVxdjN2LXlUc0pOQzduRnpuU01xZTRzMVV4NFB1SW1XUGs1ZlNyNkhQTDNyR1Z0c1RrUHNiRGFqdU81dWVRdy53b2ZmMlwiKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgdW5pY29kZS1yYW5nZTogVSswMTAwLTAyNEYsIFUrMUUwMC0xRUZGLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQ0YsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcbiAgfVxuXG4gIC8qIGxhdGluICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIENvZGUgUHJvJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBzcmM6IGxvY2FsKCdTb3VyY2UgQ29kZSBQcm8gQm9sZCcpLCBsb2NhbCgnU291cmNlQ29kZVByby1Cb2xkJyksIHVybChcImh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9zb3VyY2Vjb2RlcHJvL3Y2L2xlcXYzdi15VHNKTkM3bkZ6blNNcVprRjhIOHllNDd3c2ZwV3l3ZGE4b2cud29mZjJcIikgZm9ybWF0KCd3b2ZmMicpO1xuICAgIHVuaWNvZGUtcmFuZ2U6IFUrMDAwMC0wMEZGLCBVKzAxMzEsIFUrMDE1Mi0wMTUzLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzIwMDAtMjA2RiwgVSsyMDc0LCBVKzIwQUMsIFUrMjIxMiwgVSsyMjE1LCBVK0UwRkYsIFUrRUZGRCwgVStGMDAwO1xuICB9XG59XG59IiwiXG5jcmVhdGUtY2FyZHMoJGNsYXNzTmFtZSwgJGdyb3dzID0gdHJ1ZSkge1xuXHRkaXYueyRjbGFzc05hbWV9IHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHR9XG5cdFxuXHRkaXYueyRjbGFzc05hbWV9ID5kaXYge1xuXHRcdGlmICRncm93cyB7XG5cdFx0XHRmbGV4LWdyb3c6IDE7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGZsZXgtZ3JvdzogMDtcblx0XHR9XG5cdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0ZmxleC1iYXNpczogYXV0bztcblx0fVxufVxuIiwiQGltcG9ydCAnLi4vbGliL3R5cGUuaW1wb3J0J1xuXG5zZXR1cC10eXBlcygkY3VzdG9tRm9udHMgPSB7fSwgJGN1c3RvbVNldHRpbmdzID0ge30pIHtcblxuICAvKlxuICAgKiBEZWZhdWx0IHNldHRpbmdzOlxuICAgKi9cbiAgJGZvbnROb3JtYWwgPSAnUmFsZXdheScsIHNhbnMtc2VyaWZcbiAgJGZvbnRIZWFkaW5ncyA9ICdFbGVjdHJvbGl6ZScsIHNhbnMtc2VyaWZcbiAgJGZvbnRDb2RlID0gJ1NvdXJjZSBDb2RlIFBybycsIG1vbm9zcGFjZVxuXG4gIC8qIE5PVEU6IEl0J3MgbmVjZXNzYXJ5IHRvIHVzZSBlLmcuIHRoZSAkZm9udE5vcm1hbCB2YXJpYWJsZSBoZXJlLiBEZWZpbmluZ1xuICAgKiBtdWx0aXBsZSBmb250cyBkaXJlY3RseSBpbiBoZXJlIHlpZWxkcyBhIHN0eWx1cyBjb21waWxlciBlcnJvci5cbiAgICovXG4gICRkZWZhdWx0Rm9udHMgPSB7XG4gICAgbm9ybWFsOiAkZm9udE5vcm1hbCxcbiAgICBoZWFkaW5nczogJGZvbnRIZWFkaW5ncyxcbiAgICBjb2RlOiAkZm9udENvZGVcbiAgfTtcblxuICAkZGVmYXVsdEZvbnRTaXplID0gMWVtO1xuXG4gICRkZWZhdWx0U2V0dGluZ3MgPSB7XG4gIFx0bW9iaWxlUG9ydHJhaXQ6IHtcbiAgXHQgIGgxOiB7IGZvbnQtZmFtaWx5OiAkZGVmYXVsdEZvbnRzLmhlYWRpbmdzLCBmb250LXNpemU6ICAgMnJlbSwgbGluZS1oZWlnaHQ6IDEuMiwgbWFyZ2luLXRvcDogICAwLjFlbSwgbWFyZ2luLWJvdHRvbTogICAgMC4xZW0sIGZvbnQtd2VpZ2h0OiAyMDAsIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgfSxcbiAgXHQgIGgyOiB7IGZvbnQtZmFtaWx5OiAkZGVmYXVsdEZvbnRzLmhlYWRpbmdzLCBmb250LXNpemU6IDEuNHJlbSwgbGluZS1oZWlnaHQ6IDEuNSwgbWFyZ2luLXRvcDogMS4yNXJlbSwgbWFyZ2luLWJvdHRvbTogMC42MjVyZW0sIGZvbnQtd2VpZ2h0OiAyMDAsIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgfSxcbiAgXHQgIGgzOiB7IGZvbnQtZmFtaWx5OiAkZGVmYXVsdEZvbnRzLmhlYWRpbmdzLCBmb250LXNpemU6IDEuNHJlbSwgbGluZS1oZWlnaHQ6IDEuNSwgbWFyZ2luLXRvcDogICAgICAgMCwgbWFyZ2luLWJvdHRvbTogMC42MjVyZW0sIGZvbnQtd2VpZ2h0OiAyMDAsIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgfSxcbiAgXHQgIGg0OiB7IGZvbnQtZmFtaWx5OiAkZGVmYXVsdEZvbnRzLmhlYWRpbmdzLCBmb250LXNpemU6ICAgMXJlbSwgbGluZS1oZWlnaHQ6IDEuNSwgbWFyZ2luLXRvcDogICAwLjdlbSwgbWFyZ2luLWJvdHRvbTogICAgMC43ZW0sIGZvbnQtd2VpZ2h0OiAyMDAsIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UsIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDI0MjQyLCB0ZXh0LWFsaWduOiBjZW50ZXIgfSxcbiAgXHQgIHA6ICB7IGZvbnQtZmFtaWx5OiAkZGVmYXVsdEZvbnRzLm5vcm1hbCwgICBmb250LXNpemU6ICRkZWZhdWx0Rm9udFNpemUsIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbSwgZm9udC13ZWlnaHQ6IDIwMCB9XG4gIFx0ICBhOiAgeyBmb250LWZhbWlseTogJGRlZmF1bHRGb250cy5ub3JtYWwsICAgZm9udC1zaXplOiAkZGVmYXVsdEZvbnRTaXplLCBsaW5lLWhlaWdodDogMS44NzVyZW0sIGZvbnQtd2VpZ2h0OiAyMDAgfVxuICBcdH0sXG4gIFx0dGFibGV0OiB7XG4gIFx0ICBoMTogeyBmb250LWZhbWlseTogJGRlZmF1bHRGb250cy5oZWFkaW5ncywgZm9udC1zaXplOiAgIDMuOHJlbSwgbGluZS1oZWlnaHQ6IDEuMiwgbWFyZ2luLXRvcDogICAwLjFlbSwgbWFyZ2luLWJvdHRvbTogICAgMC4xZW0sIGZvbnQtd2VpZ2h0OiAyMDAsIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgfSxcbiAgXHQgIGgyOiB7IGZvbnQtZmFtaWx5OiAkZGVmYXVsdEZvbnRzLmhlYWRpbmdzLCBmb250LXNpemU6IDIuMzc1cmVtLCBsaW5lLWhlaWdodDogMS41LCBtYXJnaW4tdG9wOiAxLjI1cmVtLCBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbSwgZm9udC13ZWlnaHQ6IDIwMCwgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSB9LFxuICBcdCAgaDM6IHsgZm9udC1mYW1pbHk6ICRkZWZhdWx0Rm9udHMuaGVhZGluZ3MsIGZvbnQtc2l6ZTogMS44NzVyZW0sIGxpbmUtaGVpZ2h0OiAyLjc1cmVtLCBtYXJnaW4tdG9wOiAgMCwgbWFyZ2luLWJvdHRvbTogIDAuNjI1cmVtLCBmb250LXdlaWdodDogMjAwLCB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlIH0sXG4gIFx0ICBoNDogeyBmb250LWZhbWlseTogJGRlZmF1bHRGb250cy5oZWFkaW5ncywgZm9udC1zaXplOiAgICAgMXJlbSwgbGluZS1oZWlnaHQ6IDEuNSwgbWFyZ2luLXRvcDogICAwLjdlbSwgbWFyZ2luLWJvdHRvbTogICAgMC43ZW0sIGZvbnQtd2VpZ2h0OiAyMDAsIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UsIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDI0MjQyIH1cbiAgXHQgIGg1OiB7IGZvbnQtZmFtaWx5OiAkZGVmYXVsdEZvbnRzLmhlYWRpbmdzLCBmb250LXNpemU6ICAgMC45cmVtLCBsaW5lLWhlaWdodDogICAxLCBtYXJnaW4tdG9wOiAgMC43NWVtLCBtYXJnaW4tYm90dG9tOiAgIDAuNzVlbSwgZm9udC13ZWlnaHQ6IDIwMCwgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSB9LFxuICBcdCAgcDogIHsgZm9udC1mYW1pbHk6ICRkZWZhdWx0Rm9udHMubm9ybWFsLCAgIGZvbnQtc2l6ZTogICAkZGVmYXVsdEZvbnRTaXplLCBsaW5lLWhlaWdodDogMS44NzVyZW0sIGZvbnQtd2VpZ2h0OiAyMDAgfVxuICBcdCAgYTogIHsgZm9udC1mYW1pbHk6ICRkZWZhdWx0Rm9udHMubm9ybWFsLCAgIGZvbnQtc2l6ZTogICAkZGVmYXVsdEZvbnRTaXplLCBsaW5lLWhlaWdodDogMS44NzVyZW0sIGZvbnQtd2VpZ2h0OiAyMDAgfVxuICBcdH0sXG4gICAgZm9udENvZGU6IHtcbiAgICAgIHBhZGRpbmc6IDAuMmVtLFxuICAgICAgcmFkaXVzOiAzcHhcbiAgICB9XG4gICAgZGVmYXVsdEZvbnRTaXplOiAkZGVmYXVsdEZvbnRTaXplXG4gIH07XG5cbiAgJGZvbnRzID0gbWVyZ2UoJGRlZmF1bHRGb250cywgJGN1c3RvbUZvbnRzKTtcbiAgJHNldHRpbmdzID0gbWVyZ2UoJGRlZmF1bHRTZXR0aW5ncywgJGN1c3RvbVNldHRpbmdzKTtcblxuICAvKlxuICAgKiBCcmVha3BvaW50IHNldHVwOlxuICAgKi9cbiAgYm9keSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250cy5ub3JtYWw7XG4gICAgZm9udC1zaXplOiAkc2V0dGluZ3MuZGVmYXVsdEZvbnRTaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cblxuICBidXR0b24ge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udHMuaGVhZGluZ3M7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC5vdmVybGF5ZWQge1xuICBcdGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cblxuICBjcmVhdGUtdHlwZS1jb2RlKCRmb250cy5jb2RlLCAkc2V0dGluZ3MuZm9udENvZGUpO1xuXG4gIGNyZWF0ZS10eXBlcygkc2V0dGluZ3MubW9iaWxlUG9ydHJhaXQpO1xuXG4gIC8vICthYm92ZSgnbW9iaWxlLWxhbmRzY2FwZScpIHtcbiAgLy8gIGNyZWF0ZS10eXBlcygkc2V0dGluZ3MubW9iaWxlTGFuZHNjYXBlKTtcbiAgLy8gfVxuXG4gICthYm92ZSgndGFibGV0Jykge1xuICAgY3JlYXRlLXR5cGVzKCRzZXR0aW5ncy50YWJsZXQpO1xuICB9XG59XG4iLCIvKlxuICogbWl4aW5zIGZvciBzZXR0aW5nIHVwIHR5cGVzXG4gKi9cblxuZGVmaW5lLXR5cGUobmFtZSwgc2V0dGluZ3MpXG5cdHtuYW1lfVxuXHRcdHtibG9ja31cblxuanNvblRvQ3NzKGpzb24pXG5cdGZvciBrZXksIHZhbHVlIGluIGpzb25cblx0XHR7a2V5fTogdmFsdWVcblxuY3JlYXRlLXR5cGVzKHR5cGVzKVxuXHRmb3IgdHlwZSwgc2V0dGluZ3MgaW4gdHlwZXNcblx0XHQrZGVmaW5lLXR5cGUodHlwZSwgc2V0dGluZ3MpIHtcblx0XHRcdGpzb25Ub0NzcyhzZXR0aW5ncylcblx0XHR9XG5cbi8qXG4gKiBjcmVhdGUtdHlwZS1jb2RlKClcbiAqXG4gKiBQcmVwYXJlcyAnY29kZScsICdwcmUnIGFuZCAncCcgZm9yIGNvZGUgZGlzcGxheS5cbiAqL1xuIGNyZWF0ZS10eXBlLWNvZGUoJGZvbnQsICRzZXR0aW5ncykge1xuXHQgY29kZSB7XG5cdCAgIGZvbnQtZmFtaWx5OiAkZm9udDtcblx0ICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0IH1cblxuXHQgcHJlIGNvZGUge1xuXHQgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG5cdCB9XG5cblx0IHAgY29kZSB7XG5cdCAgIHBhZGRpbmc6IDA7XG5cdCAgIHBhZGRpbmctdG9wOiAkc2V0dGluZ3MucGFkZGluZztcblx0ICAgcGFkZGluZy1ib3R0b206ICRzZXR0aW5ncy5wYWRkaW5nO1xuXHQgICBib3JkZXItcmFkaXVzOiAkc2V0dGluZ3MucmFkaXVzO1xuXHQgfVxuXG5cdCBwIGNvZGU6OmJlZm9yZSxcblx0IHAgY29kZTo6YWZ0ZXIge1xuXHQgICBsZXR0ZXItc3BhY2luZzogLSgkc2V0dGluZ3MucGFkZGluZyk7XG5cdCAgIGNvbnRlbnQ6IFwiXFwwMGEwXCI7XG5cdCB9XG5cblx0IHByZSB7XG5cdCAgIGJvcmRlci1yYWRpdXM6ICRzZXR0aW5ncy5yYWRpdXM7XG5cdCAgIHBhZGRpbmc6IDFlbTtcblx0IH1cbiB9XG4iLCIvKiB2ZXJzaW9uOiAwLjYuMSAqL1xuXG5iYXNlLWZvbnQtc2l6ZSA/PSAxNnB4XG5yYXN0ZXJpc2UtbWVkaWEtcXVlcmllcyA/PSBmYWxzZVxuXG5ydXB0dXJlID0ge1xuICByYXN0ZXJpc2UtbWVkaWEtcXVlcmllczogcmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXNcbiAgbW9iaWxlLWN1dG9mZjogNDAwcHhcbiAgZGVza3RvcC1jdXRvZmY6IDEwNTBweFxuICBoZC1jdXRvZmY6IDE4MDBweFxuICBlbmFibGUtZW0tYnJlYWtwb2ludHM6IGZhbHNlXG4gIGJhc2UtZm9udC1zaXplOiBiYXNlLWZvbnQtc2l6ZVxuICBhbnRpLW92ZXJsYXA6IGZhbHNlXG4gIGRlbnNpdHktcXVlcmllczogJ2RwcHgnICd3ZWJraXQnICdtb3onICdkcGknXG4gIHJldGluYS1kZW5zaXR5OiAxLjVcbiAgdXNlLWRldmljZS13aWR0aDogZmFsc2Vcbn1cbnJ1cHR1cmUuc2NhbGUgPSAwIChydXB0dXJlLm1vYmlsZS1jdXRvZmYpIDYwMHB4IDgwMHB4IChydXB0dXJlLmRlc2t0b3AtY3V0b2ZmKSAocnVwdHVyZS5oZC1jdXRvZmYpXG5ydXB0dXJlLnNjYWxlLW5hbWVzID0gJ3hzJyAncycgJ20nICdsJyAneGwnICdoZCdcblxuLWlzLXN0cmluZyh2YWwpXG4gIGlmIHR5cGVvZih2YWwpIGlzIG5vdCAndW5pdCdcbiAgICBpZiB2YWwgaXMgYSAnc3RyaW5nJyBvciB2YWwgaXMgYSAnaWRlbnQnXG4gICAgICB0cnVlXG4gICAgZWxzZVxuICAgICAgZmFsc2VcbiAgZWxzZVxuICAgIGZhbHNlXG5cbi1nZXQtc2NhbGUtbnVtYmVyKHNjYWxlLW5hbWUpXG4gIGZvciBsaXN0LWl0ZW0sIGkgaW4gcnVwdHVyZS5zY2FsZS1uYW1lc1xuICAgIGlmIGxpc3QtaXRlbSBpcyBzY2FsZS1uYW1lXG4gICAgICByZXR1cm4gaSArIDFcbiAgcmV0dXJuIGZhbHNlXG5cbi1jb252ZXJ0LXRvKHRvLXVuaXQsIHZhbHVlLCBjb250ZXh0ID0gcnVwdHVyZS5iYXNlLWZvbnQtc2l6ZSlcbiAgZnJvbS11bml0ID0gdW5pdCh2YWx1ZSlcbiAgcmV0dXJuIHZhbHVlIGlmIHRvLXVuaXQgaXMgZnJvbS11bml0XG4gIGlmIHRvLXVuaXQgaW4gKCdlbScgJ3JlbScpXG4gICAgcmV0dXJuIHZhbHVlIGlmIGZyb20tdW5pdCBpbiAoJ2VtJyAncmVtJylcbiAgICByZXR1cm4gdW5pdCgodmFsdWUgLyBjb250ZXh0KSwgdG8tdW5pdClcbiAgaWYgdG8tdW5pdCBpcyAncHgnXG4gICAgcmV0dXJuIHVuaXQoKHZhbHVlICogY29udGV4dCksICdweCcpXG5cbi1vbi1zY2FsZShuKVxuICByZXR1cm4gdW5pdChuKSBpcyAnJ1xuXG4tbGFyZ2VyLXRoYW4tc2NhbGUobilcbiAgcmV0dXJuIChuID4gKGxlbmd0aChydXB0dXJlLnNjYWxlKSAtIDEpKSBhbmQgLW9uLXNjYWxlKG4pXG5cbi1pcy16ZXJvKG4pXG4gIHJldHVybiBuIGlzIDBcblxuLW92ZXJsYXAtc2hpZnQoYW50aS1vdmVybGFwLCBuKVxuICBzaGlmdC11bml0ID0gdW5pdChuKVxuICBhbnRpLW92ZXJsYXAgPSAwcHggdW5sZXNzIGFudGktb3ZlcmxhcFxuICBhbnRpLW92ZXJsYXAgPSAxcHggaWYgYW50aS1vdmVybGFwIGlzIHRydWVcbiAgaWYgbGVuZ3RoKGFudGktb3ZlcmxhcCkgaXMgMVxuICAgIHJldHVybiAtY29udmVydC10byhzaGlmdC11bml0LCBhbnRpLW92ZXJsYXApXG4gIGZvciB2YWwgaW4gYW50aS1vdmVybGFwXG4gICAgcmV0dXJuIHZhbCBpZiB1bml0KHZhbCkgaXMgc2hpZnQtdW5pdFxuXG4tYWRqdXN0LW92ZXJsYXAoYW50aS1vdmVybGFwLCBuLCBzaWRlID0gJ21pbicpXG4gIC1zaGlmdCA9IC1vdmVybGFwLXNoaWZ0KGFudGktb3ZlcmxhcCwgbilcbiAgaWYgKHNpZGUgaXMgJ21pbicgYW5kIC1zaGlmdCA+IDApIG9yIChzaWRlIGlzICdtYXgnIGFuZCAtc2hpZnQgPCAwKVxuICAgIG4gPSBuICsgLXNoaWZ0XG4gIHJldHVybiBuXG5cbi1pcy1wb3NpdGl2ZShuKVxuICByZXR1cm4gbiA+PSAwXG5cbi1kZW5zaXR5LXF1ZXJpZXMoZGVuc2l0eSlcbiAgaWYgdHlwZW9mKGRlbnNpdHkpIGlzIG5vdCAndW5pdCdcbiAgICBpZiBub3QgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgICAgZGVuc2l0eSA9ICclcycgJSBkZW5zaXR5XG4gIGRlbnNpdHkgPSBydXB0dXJlLnJldGluYS1kZW5zaXR5IGlmIGRlbnNpdHkgaXMgJ3JldGluYSdcbiAgcXVlcmllcyA9ICgpXG4gIGZvciBxdWVyeSBpbiBydXB0dXJlLmRlbnNpdHktcXVlcmllc1xuICAgIGlmIHF1ZXJ5IGlzICd3ZWJraXQnXG4gICAgICBwdXNoKHF1ZXJpZXMsICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAlcyknICUgKGRlbnNpdHkpKVxuICAgIGVsc2UgaWYgcXVlcnkgaXMgJ21veidcbiAgICAgIHB1c2gocXVlcmllcywgJyhtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86ICVzKScgJSAoZGVuc2l0eSkpXG4gICAgZWxzZSBpZiBxdWVyeSBpcyAnbydcbiAgICAgIHB1c2gocXVlcmllcywgJygtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAlcy8xKScgJSAoZGVuc2l0eSkpXG4gICAgZWxzZSBpZiBxdWVyeSBpcyAncmF0aW8nXG4gICAgICBwdXNoKHF1ZXJpZXMsICcobWluLWRldmljZS1waXhlbC1yYXRpbzogJXMpJyAlIChkZW5zaXR5KSlcbiAgICBlbHNlIGlmIHF1ZXJ5IGlzICdkcGknXG4gICAgICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgICAgIGRlbnNpdHk9Y29udmVydChkZW5zaXR5KVxuICAgICAgcHVzaChxdWVyaWVzLCAnKG1pbi1yZXNvbHV0aW9uOiAlc2RwaSknICUgKHJvdW5kKGRlbnNpdHkgKiA5NiwgMSkpKVxuICAgIGVsc2UgaWYgcXVlcnkgaXMgJ2RwcHgnXG4gICAgICBwdXNoKHF1ZXJpZXMsICcobWluLXJlc29sdXRpb246ICVzZHBweCknICUgKGRlbnNpdHkpKVxuICByZXR1cm4gcXVlcmllc1xuXG5jcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGNsYXNzKVxuICAveycnICsgY2xhc3MgKyAnICcgKyBzZWxlY3RlZH1cbiAgICB7YmxvY2t9XG5cbi8vICtiZXR3ZWVuKG1pbiwgbWF4KVxuLy8gdXNhZ2UgKHNjYWxlIGNhbiBiZSBtaXhlZCB3aXRoIGN1c3RvbSB2YWx1ZXMpOlxuLy8gICAtICtiZXR3ZWVuKDEsIDMpIHNjYWxlOnNjYWxlXG4vLyAgIC0gK2JldHdlZW4oMCwgMykgMCB3aWR0aDpzY2FsZVxuLy8gICAtICtiZXR3ZWVuKDIwMHB4LCA1MDBweCkgY3VzdG9tOmN1c3RvbVxuLy8gICAtICtiZXR3ZWVuKDAsIDMwMHB4KSAwIHdpZHRoOmN1c3RvbVxuLy8gICAtICtiZXR3ZWVuKDEsIDMwMHB4KSBzY2FsZTpjdXN0b21cbi8vICAgLSArYmV0d2VlbigyMDBweCwgNCkgY3VzdG9tOnNjYWxlXG5cbmJldHdlZW4obWluLCBtYXgsIGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIHNlbGVjdGVkID0gc2VsZWN0b3IoKVxuXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgaWYgLWlzLXN0cmluZyhtaW4pXG4gICAgbWluID0gLWdldC1zY2FsZS1udW1iZXIobWluKVxuICBpZiAtaXMtc3RyaW5nKG1heClcbiAgICBtYXggPSAtZ2V0LXNjYWxlLW51bWJlcihtYXgpXG5cbiAgLW1pbiA9IHJ1cHR1cmUuc2NhbGVbbWluIC0gMV0gdW5sZXNzIC1pcy16ZXJvKG1pbikgb3IgKG5vdCAtb24tc2NhbGUobWluKSlcbiAgLW1heCA9IHJ1cHR1cmUuc2NhbGVbbWF4XSB1bmxlc3Mgbm90IC1vbi1zY2FsZShtYXgpXG4gIC1taW4gPz0gbWluXG4gIC1tYXggPz0gbWF4XG5cbiAgaWYgKHJ1cHR1cmUucmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXMpXG4gICAgaWYgbm90IChkZW5zaXR5IG9yIC1tYXggb3Igb3JpZW50YXRpb24pXG4gICAgICB7YmxvY2t9XG4gIGVsc2VcbiAgICBjb25kaXRpb24gPSAnb25seSBzY3JlZW4nXG4gICAgdXNlLWRldmljZS13aWR0aCA9IHVzZS1kZXZpY2Utd2lkdGggPyAnZGV2aWNlLScgOiAnJ1xuICAgIHVubGVzcyAtbWluIGlzIDBcbiAgICAgIC1taW4gPSAtY29udmVydC10bygnZW0nLCAtbWluKSBpZiBydXB0dXJlLmVuYWJsZS1lbS1icmVha3BvaW50c1xuICAgICAgLW1pbiA9IC1hZGp1c3Qtb3ZlcmxhcChhbnRpLW92ZXJsYXAsIC1taW4sIHNpZGU6ICdtaW4nKVxuICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uICsgJyBhbmQgKG1pbi0nICsgdXNlLWRldmljZS13aWR0aCArICd3aWR0aDogJXMpJyAlICgtbWluKVxuICAgIHVubGVzcyAtbGFyZ2VyLXRoYW4tc2NhbGUobWF4KVxuICAgICAgLW1heCA9IC1jb252ZXJ0LXRvKCdlbScsIC1tYXgpIGlmIHJ1cHR1cmUuZW5hYmxlLWVtLWJyZWFrcG9pbnRzXG4gICAgICAtbWF4ID0gLWFkanVzdC1vdmVybGFwKGFudGktb3ZlcmxhcCwgLW1heCwgc2lkZTogJ21heCcpXG4gICAgICBjb25kaXRpb24gPSBjb25kaXRpb24gKyAnIGFuZCAobWF4LScgKyB1c2UtZGV2aWNlLXdpZHRoICsgJ3dpZHRoOiAlcyknICUgKC1tYXgpXG4gICAgaWYgb3JpZW50YXRpb25cbiAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbiArICcgYW5kIChvcmllbnRhdGlvbjogJXMpJyAlIChvcmllbnRhdGlvbilcbiAgICBpZiBkZW5zaXR5XG4gICAgICBjb25kaXRpb25zID0gKClcbiAgICAgIGZvciBxdWVyeSBpbiAtZGVuc2l0eS1xdWVyaWVzKGRlbnNpdHkpXG4gICAgICAgIHB1c2goY29uZGl0aW9ucywgY29uZGl0aW9uICsgJyBhbmQgJXMnICUgKHF1ZXJ5KSlcbiAgICAgIGNvbmRpdGlvbiA9IGpvaW4oJywgJywgY29uZGl0aW9ucylcbiAgICBAbWVkaWEgY29uZGl0aW9uXG4gICAgICB7YmxvY2t9XG4gIGlmIGZhbGxiYWNrLWNsYXNzXG4gICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICB7YmxvY2t9XG5cbmF0KHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKHNjYWxlLXBvaW50LCBzY2FsZS1wb2ludCwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG5mcm9tLXdpZHRoKHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKHNjYWxlLXBvaW50LCBsZW5ndGgocnVwdHVyZS5zY2FsZSksIGFudGktb3ZlcmxhcCwgZGVuc2l0eSwgb3JpZW50YXRpb24sIHVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzKVxuICAgIHtibG9ja31cblxuYWJvdmUgPSBmcm9tLXdpZHRoXG5cbnRvLXdpZHRoKHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZXR3ZWVuKDEsIHNjYWxlLXBvaW50LCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmJlbG93ID0gdG8td2lkdGhcblxubW9iaWxlKGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgK2JlbG93KHJ1cHR1cmUubW9iaWxlLWN1dG9mZiwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG50YWJsZXQoYW50aS1vdmVybGFwID0gcnVwdHVyZS5hbnRpLW92ZXJsYXAsIGRlbnNpdHkgPSBudWxsLCBvcmllbnRhdGlvbiA9IG51bGwsIHVzZS1kZXZpY2Utd2lkdGggPSBydXB0dXJlLnVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgaWYgLWlzLXN0cmluZyhvcmllbnRhdGlvbilcbiAgICBvcmllbnRhdGlvbiA9IGNvbnZlcnQob3JpZW50YXRpb24pXG4gIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICArYmV0d2VlbihydXB0dXJlLm1vYmlsZS1jdXRvZmYsIHJ1cHR1cmUuZGVza3RvcC1jdXRvZmYsIGFudGktb3ZlcmxhcCwgZGVuc2l0eSwgb3JpZW50YXRpb24sIHVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzKVxuICAgIHtibG9ja31cblxuZGVza3RvcChhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICthYm92ZShydXB0dXJlLmRlc2t0b3AtY3V0b2ZmLCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmhkKGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgK2Fib3ZlKHJ1cHR1cmUuaGQtY3V0b2ZmLCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmRlbnNpdHkoZGVuc2l0eSwgb3JpZW50YXRpb24gPSBudWxsLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIHNlbGVjdGVkID0gc2VsZWN0b3IoKVxuICBpZiBub3QgKHJ1cHR1cmUucmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXMpXG4gICAgY29uZGl0aW9ucyA9ICgpXG4gICAgZm9yIHF1ZXJ5IGluIC1kZW5zaXR5LXF1ZXJpZXMoZGVuc2l0eSlcbiAgICAgIGNvbmRpdGlvbiA9ICdvbmx5IHNjcmVlbiBhbmQgJXMnICUgKHF1ZXJ5KVxuICAgICAgaWYgb3JpZW50YXRpb25cbiAgICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uICsgJyBhbmQgKG9yaWVudGF0aW9uOiAlcyknICUgKG9yaWVudGF0aW9uKVxuICAgICAgcHVzaChjb25kaXRpb25zLCBjb25kaXRpb24pXG4gICAgY29uZGl0aW9uID0gam9pbignLCAnLCBjb25kaXRpb25zKVxuICAgIEBtZWRpYSBjb25kaXRpb25cbiAgICAgIHtibG9ja31cbiAgICBpZiBmYWxsYmFjay1jbGFzc1xuICAgICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgIHtibG9ja31cblxucGl4ZWwtcmF0aW8gPSBkZW5zaXR5XG5cbnJldGluYShvcmllbnRhdGlvbiA9IG51bGwsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgK2RlbnNpdHkoJ3JldGluYScsIG9yaWVudGF0aW9uLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmxhbmRzY2FwZShkZW5zaXR5ID0gbnVsbCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBzZWxlY3RlZCA9IHNlbGVjdG9yKClcbiAgaWYgbm90IChydXB0dXJlLnJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzKVxuICAgIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICAgaWYgZGVuc2l0eVxuICAgICAgK3BpeGVsLXJhdGlvKGRlbnNpdHksIG9yaWVudGF0aW9uOiBsYW5kc2NhcGUsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICB7YmxvY2t9XG4gICAgZWxzZVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcbiAgICAgICAge2Jsb2NrfVxuICAgICAgaWYgZmFsbGJhY2stY2xhc3NcbiAgICAgICAgK2NyZWF0ZS1mYWxsYmFjay1jbGFzcyhzZWxlY3RlZCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgICAge2Jsb2NrfVxuXG5wb3J0cmFpdChkZW5zaXR5ID0gbnVsbCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBzZWxlY3RlZCA9IHNlbGVjdG9yKClcbiAgaWYgbm90IChydXB0dXJlLnJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzKVxuICAgIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICAgaWYgZGVuc2l0eVxuICAgICAgK3BpeGVsLXJhdGlvKGRlbnNpdHksIG9yaWVudGF0aW9uOiBwb3J0cmFpdCwgZmFsbGJhY2stY2xhc3MpXG4gICAgICAgIHtibG9ja31cbiAgICBlbHNlXG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpXG4gICAgICAgIHtibG9ja31cbiAgICAgIGlmIGZhbGxiYWNrLWNsYXNzXG4gICAgICAgICtjcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICAgIHtibG9ja31cbiIsIkBpbXBvcnQgJy4uL2JyYW5kLmltcG9ydCc7XG5cbnNldHVwLWNvbG9yLXN5c3RlbSgkY3VzdG9tU2V0dGluZ3MgPSB7fSkge1xuXG5cdC8qXG4gICAqIERlZmF1bHQgc2V0dGluZ3M6XG4gICAqL1xuXHQkZGVmYXVsdFNldHRpbmdzID0ge1xuXHRcdHRleHQ6ICRicmFuZEJsYWNrLFxuXHRcdGJnQm9keTogJGJyYW5kV2hpdGUsXG5cdFx0bGluazogJGJyYW5kQmxhY2ssXG5cdFx0aG92ZXI6ICRicmFuZFJlZCxcblx0XHRwcmVzc2VkOiAjNkEwMDAwLFxuXHRcdHZpc2l0ZWQ6ICRicmFuZEJsYWNrLFxuXHRcdHNlbGVjdGlvbjogJGJyYW5kUmVkLFxuXHRcdGJnQ29kZTogI2Y3ZjdmNyxcblx0XHRjb2xvckNvZGU6ICRicmFuZEJsYWNrLFxuXHRcdGNvbG91ckhlcm86IHdoaXRlXG5cdH1cblxuXHQkc2V0dGluZ3MgPSBtZXJnZSgkZGVmYXVsdFNldHRpbmdzLCAkY3VzdG9tU2V0dGluZ3MpO1xuXG4gIC8qXG4gICAqIEJyZWFrcG9pbnQgc2V0dXA6XG4gICAqL1xuXHRib2R5IHtcblx0XHRjb2xvcjogJHNldHRpbmdzLnRleHQ7XG5cdFx0YmFja2dyb3VuZDogJHNldHRpbmdzLmJnQm9keTtcblx0fVxuXG5cdDo6c2VsZWN0aW9uIHtcblx0XHRiYWNrZ3JvdW5kOiAkc2V0dGluZ3Muc2VsZWN0aW9uO1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRmaWxsOiB3aGl0ZTtcblx0fVxuXG5cdGEge1xuICBcdGNvbG9yOiAkc2V0dGluZ3MubGluaztcblx0fVxuXG5cdGE6dmlzaXRlZCB7XG5cdFx0Y29sb3I6ICRzZXR0aW5ncy52aXNpdGVkO1xuXHR9XG5cblx0YTpob3Zlcixcblx0YTp2aXNpdGVkOmhvdmVyIHtcblx0XHRjb2xvcjogJHNldHRpbmdzLmhvdmVyO1xuXHR9XG5cblx0YTphY3RpdmUge1xuXHRcdGNvbG9yOiAkc2V0dGluZ3MucHJlc3NlZDtcbiAgfVxuXG5cdGE6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0Y29sb3I6ICRzZXR0aW5ncy5ob3Zlcjtcblx0fVxuXG5cdHAgY29kZSB7XG4gICAgY29sb3I6ICRzZXR0aW5ncy5jb2xvckNvZGU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHNldHRpbmdzLmJnQ29kZTtcblx0fVxuXG5cdHByZSB7XG4gICAgY29sb3I6ICRzZXR0aW5ncy5jb2xvckNvZGU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHNldHRpbmdzLmJnQ29kZTtcblx0fVxuXG5cdC5jb250ZW50IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2V0dGluZ3MuYmdDb2RlO1xuXHR9XG5cblx0LmNvbnRlbnRfX2NvbnRhaW5lcixcblx0LmNvbnRlbnRfX2NvbnRhaW5lci0tZXhwYW5kIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2V0dGluZ3MuYmdCb2R5O1xuXHR9XG5cbiAgLmluZm9ybWF0aW9uYWwge1xuICAgIGNvbG9yOiAjYmJiO1xuICB9XG5cblx0LyogSW1hZ2VzIHNvIGFzc3VtZSB3aGl0ZSB0ZXh0IGlzIHJlcXVpcmVkICovXG5cdC5oZXJvIHtcblx0XHRoMSwgaDIsIGgzLCBoNCwgaDUsIHAsIGNvZGUge1xuXHRcdFx0Y29sb3I6ICRzZXR0aW5ncy5jb2xvdXJIZXJvO1xuXHRcdH1cblx0fVxufVxuIiwiXG5cbi5zdmctY2VudGVyLXgge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG4gIFx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIFx0cGFkZGluZy1sZWZ0OiA1MCU7XG59XG5cbi5zdmctcGFkZGluZy10b3Age1xuXHRwYWRkaW5nLXRvcDogMWVtO1xufVxuLnN2Zy1wYWRkaW5nLWxlZnQge1xuXHRwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuLnJldXNhYmxlIHtcbiAgICBwYXRoIHtcbiAgICAgICAgZmlsbDogbm9uZTtcbiAgICAgICAgc3Ryb2tlOiBibGFjaztcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjVweDtcbiAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICAgIH1cblxuICAgIHBhdGguYmdzdHJva2Uge1xuICAgICAgICBzdHJva2U6IHdoaXRlO1xuICAgICAgICBzdHJva2Utd2lkdGg6IDNweDtcbiAgICB9XG59XG5cbkBpbXBvcnQgJ2QzLWxlZ2VuZC5pbXBvcnQnXG4iLCJzZXR1cC1pbnB1dHMoJGN1c3RvbVNldHRpbmdzID0ge30pIHtcblx0LypcbiAgICogRGVmYXVsdCBzZXR0aW5nczpcbiAgICovXG5cdCRkZWZhdWx0U2V0dGluZ3MgPSB7XG5cdFx0ZGVmYXVsdEZvbnRTaXplOiAxcmVtLFxuXHRcdGNvbG91ckRpc2FibGVkOiAjZjFmMWYxLFxuXHRcdG1pbkhlaWdodDogMi43NWVtLFxuXHRcdHBhZGRpbmdUb3A6IDAuNWVtLFxuXHRcdHBhZGRpbmdCb3R0b206IDAuNWVtLFxuXHRcdHBhZGRpbmdMZWZ0OiAwLFxuXHRcdHBhZGRpbmdSaWdodDogMCxcbiAgICBib3JkZXJDb2xvcjogI2Q4ZDhkOFxuXHR9XG5cblx0JHNldHRpbmdzID0gbWVyZ2UoJGRlZmF1bHRTZXR0aW5ncywgJGN1c3RvbVNldHRpbmdzKTtcblxuXHRpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWluLWhlaWdodDogJHNldHRpbmdzLm1pbkhlaWdodDtcbiAgICBwYWRkaW5nLXRvcDogJHNldHRpbmdzLnBhZGRpbmdUb3A7XG4gICAgcGFkZGluZy1ib3R0b206ICRzZXR0aW5ncy5wYWRkaW5nQm90dG9tO1xuXHRcdHBhZGRpbmctbGVmdDogJHNldHRpbmdzLnBhZGRpbmdMZWZ0O1xuXHRcdHBhZGRpbmctcmlnaHQ6ICRzZXR0aW5ncy5wYWRkaW5nUmlnaHQ7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzLmJvcmRlckNvbG9yO1xuICAgIC8vIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC8vIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMDc1KTtcblx0XHRmb250LXNpemU6ICRzZXR0aW5ncy5kZWZhdWx0Rm9udFNpemU7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogcGF0dGVybi0tY29yZSgkc2V0dGluZ3MuY29sb3VyRGlzYWJsZWQpO1xuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vYnJhbmQuaW1wb3J0JztcbkBpbXBvcnQgJy4uL2xpYi9idXR0b24uaW1wb3J0JztcbkBpbXBvcnQgJy4uL2xpYi9ncmFkaWVudHMuaW1wb3J0Jztcblxuc2V0dXAtYnV0dG9ucygkY3VzdG9tU2V0dGluZ3MgPSB7fSkge1xuXHQvKlxuICAgKiBEZWZhdWx0IHNldHRpbmdzOlxuICAgKi9cblx0JGRlZmF1bHRTZXR0aW5ncyA9IHtcblx0XHRkZWZhdWx0Rm9udFNpemU6IDFyZW0sXG5cdFx0Y29sb3VyRGVmYXVsdDogJHVpLXJzLWNvcmUudGhlbWVzLmxpZ2h0LnRleHQsXG5cdFx0Y29sb3VyRGlzYWJsZWQ6ICNmMWYxZjEsXG4gICAgY29sb3VyRGFuZ2VyOiAjZWQxNjUxLFxuICAgIGNvbG91ckJ1dHRvbjogJGJyYW5kR3JleSxcbiAgICBjb2xvdXJTaGFkb3c6ICRicmFuZFJlZCxcblx0XHRwYWRkaW5nVG9wOiAxLjkzNzVlbSxcblx0XHRwYWRkaW5nQm90dG9tOiAxLjkzNzVlbSxcblx0XHRwYWRkaW5nTGVmdDogMC43NWVtLFxuXHRcdHBhZGRpbmdSaWdodDogMC43NWVtXG5cdH1cblxuXHQkc2V0dGluZ3MgPSBtZXJnZSgkZGVmYXVsdFNldHRpbmdzLCAkY3VzdG9tU2V0dGluZ3MpO1xuXG4gIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgY3JlYXRlLWRlZmF1bHQtYnV0dG9uKCRzZXR0aW5ncyk7XG4gIGNyZWF0ZS1iZW0tYnV0dG9uKCdyZWQnLCAkc2V0dGluZ3MpO1xuICBjcmVhdGUtYmVtLWJ1dHRvbignZ3JlZW4nLCAkc2V0dGluZ3MpO1xuICBjcmVhdGUtYmVtLWJ1dHRvbignYmx1ZScsICRzZXR0aW5ncyk7XG4gIGNyZWF0ZS1iZW0tYnV0dG9uKCdibGFjaycsICRzZXR0aW5ncyk7XG5cbiAgLy8gVE9ETzogcmVtb3ZlIHRoZXNlIGxlZ2FjeSBidXR0b25zXG4gIC5oZXJvIGJ1dHRvbi5kYW5nZXIsXG4gIGJ1dHRvbi5kYW5nZXIge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNldHRpbmdzLnJlZC5iYWNrZ3JvdW5kLmhvdmVyO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzLnJlZC5iYWNrZ3JvdW5kLmhvdmVyO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogZGVzYXR1cmF0ZSgkc2V0dGluZ3MucmVkLmJhY2tncm91bmQuaG92ZXIsIDIwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZXR0aW5ncy5yZWQuYmFja2dyb3VuZC5ob3ZlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzLnJlZC5iYWNrZ3JvdW5kLmhvdmVyO1xuICAgICAgfVxuXG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IGRlc2F0dXJhdGUoJHNldHRpbmdzLnJlZC5iYWNrZ3JvdW5kLmhvdmVyLCAyMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2V0dGluZ3MucmVkLmJhY2tncm91bmQucHJlc3NlZDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzLnJlZC5iYWNrZ3JvdW5kLnByZXNzZWQ7XG4gICAgICB9XG5cbiAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBwYXR0ZXJuLS1jb3JlKCk7XG4gICAgICB9XG5cbiAgICAgICY6ZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2V0dGluZ3MucmVkLmJhY2tncm91bmQuaG92ZXI7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHBhdHRlcm4tLWNvcmUoKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzLnJlZC5iYWNrZ3JvdW5kLmhvdmVyO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgLy8gRGlzYWJsZSBvdXRsaW5lIGluIGNocm9tZVxuICAgICAgfVxuICB9XG5cbiAgLmhlcm8gYnV0dG9uIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCB3aGl0ZTtcblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJHNldHRpbmdzLmNvbG91clNoYWRvdztcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwKTtcbiAgICAgIH1cblxuICAgICAgJjpkaXNhYmxlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogcGF0dGVybi0tY29yZShyZ2JhKDI1NSwyNTUsMjU1LDAuMykpO1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBwYXR0ZXJuLS1jb3JlKHJnYmEoMjU1LDI1NSwyNTUsMC4zKSk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lOyAvLyBEaXNhYmxlIG91dGxpbmUgaW4gY2hyb21lXG4gICAgICB9XG4gIH1cbn1cbiIsIi8qXG4gKiBtaXhpbnMgZm9yIHNldHRpbmcgdXAgYnV0dG9uc1xuICovXG5cbi8qXG4gKiBjcmVhdGUtZGVmYXVsdC1idXR0b24oKVxuICpcbiAqIFN0eWxlcyBhIGRlZmF1bHQgYnV0dG9uLlxuICovXG5jcmVhdGUtZGVmYXVsdC1idXR0b24oJHNldHRpbmdzKSB7XG4gIGJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogJHNldHRpbmdzLnN0eWxlLmRlZmF1bHQucGFkZGluZ1RvcDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkc2V0dGluZ3Muc3R5bGUuZGVmYXVsdC5wYWRkaW5nQm90dG9tO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc2V0dGluZ3Muc3R5bGUuZGVmYXVsdC5wYWRkaW5nTGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRzZXR0aW5ncy5zdHlsZS5kZWZhdWx0LnBhZGRpbmdSaWdodDtcblxuICAgICAgY29sb3I6ICRzZXR0aW5ncy5kZWZhdWx0LmNvbG9yLmRlZmF1bHQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2V0dGluZ3MuZGVmYXVsdC5iYWNrZ3JvdW5kLmRlZmF1bHQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2V0dGluZ3MuZGVmYXVsdC5jb2xvci5ib3JkZXI7XG5cbiAgICAgIGZvbnQtZmFtaWx5OiAkc2V0dGluZ3MuZm9udEZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogJHNldHRpbmdzLmRlZmF1bHRGb250U2l6ZTtcblxuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyMDBtcyBlYXNlIDBzO1xuXG4gICAgICAvLyBOT1RFOiBwc2V1ZG8gY2xhc3Mgb3JkZXIgbWF0dGVyczogaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9yZW1lbWJlci1zZWxlY3RvcnMtd2l0aC1sb3ZlLWFuZC1oYXRlL1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkc2V0dGluZ3MuZGVmYXVsdC5jb2xvci5ob3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZDogJHNldHRpbmdzLmRlZmF1bHQuYmFja2dyb3VuZC5ob3ZlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzLmRlZmF1bHQuYmFja2dyb3VuZC5ob3ZlcjtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBjb2xvcjogJHNldHRpbmdzLmRlZmF1bHQuY29sb3IucHJlc3NlZDtcbiAgICAgICAgYmFja2dyb3VuZDogJHNldHRpbmdzLmRlZmF1bHQuYmFja2dyb3VuZC5wcmVzc2VkO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2V0dGluZ3MuZGVmYXVsdC5iYWNrZ3JvdW5kLnByZXNzZWQ7XG4gICAgICB9XG5cbiAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJHNldHRpbmdzLmRlZmF1bHQuY29sb3IuZGlzYWJsZWQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzZXR0aW5ncy5kZWZhdWx0LmJhY2tncm91bmQuZGlzYWJsZWQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZXR0aW5ncy5kZWZhdWx0LmJhY2tncm91bmQuZGlzYWJsZWQ7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7IC8vIERpc2FibGUgb3V0bGluZSBpbiBjaHJvbWVcbiAgICAgIH1cbiAgfVxuXG4gIGJ1dHRvbi5ycy1idG4tLXNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogJHNldHRpbmdzLnN0eWxlLnNtYWxsLnBhZGRpbmdUb3A7XG4gICAgcGFkZGluZy1ib3R0b206ICRzZXR0aW5ncy5zdHlsZS5zbWFsbC5wYWRkaW5nQm90dG9tO1xuICAgIHBhZGRpbmctbGVmdDogJHNldHRpbmdzLnN0eWxlLnNtYWxsLnBhZGRpbmdMZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzZXR0aW5ncy5zdHlsZS5zbWFsbC5wYWRkaW5nUmlnaHQ7XG4gIH1cblxuICBidXR0b24ucnMtYnRuLS1zZWxlY3RlZCB7XG4gICAgY29sb3I6ICRzZXR0aW5ncy5kZWZhdWx0LmNvbG9yLmhvdmVyO1xuICAgIGJhY2tncm91bmQ6ICRzZXR0aW5ncy5kZWZhdWx0LmJhY2tncm91bmQuaG92ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzLmRlZmF1bHQuYmFja2dyb3VuZC5ob3ZlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRzZXR0aW5ncy5kZWZhdWx0LmNvbG9yLnByZXNzZWQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2V0dGluZ3MuZGVmYXVsdC5iYWNrZ3JvdW5kLnByZXNzZWQ7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2V0dGluZ3MuZGVmYXVsdC5iYWNrZ3JvdW5kLnByZXNzZWQ7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRzZXR0aW5ncy5kZWZhdWx0LmNvbG9yLmhvdmVyO1xuICAgICAgYmFja2dyb3VuZDogJHNldHRpbmdzLmRlZmF1bHQuYmFja2dyb3VuZC5ob3ZlcjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZXR0aW5ncy5kZWZhdWx0LmJhY2tncm91bmQuaG92ZXI7XG4gICAgfVxuXG4gICAgJjpob3ZlcjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogJHNldHRpbmdzLmRlZmF1bHQuY29sb3IuaG92ZXI7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2V0dGluZ3MuZGVmYXVsdC5iYWNrZ3JvdW5kLmhvdmVyO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzLmRlZmF1bHQuYmFja2dyb3VuZC5ob3ZlcjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gIH1cblxuICAvKiBTdHlsaW5nIHRoZSBiYXNlIGJ1dHRvbiB3aWxsIGlzIGltcGxpY2l0bHkgYXBwbHlpbmcgdGhlIHN0eWxlcyB0byB0aGUgJ2JlbScgYnV0dG9ucyAqL1xuICBhZGp1c3QtcC1ibG9jay1zdHlsaW5nKCR1aS1ycy1jb3JlLnR5cGVzLnNldHRpbmdzLm1vYmlsZVBvcnRyYWl0LCAkc2V0dGluZ3Muc3R5bGUpO1xuXG4gICthYm92ZSgndGFibGV0Jykge1xuICAgIGFkanVzdC1wLWJsb2NrLXN0eWxpbmcoJHVpLXJzLWNvcmUudHlwZXMuc2V0dGluZ3MudGFibGV0LCAkc2V0dGluZ3Muc3R5bGUpO1xuICB9XG59XG5cbi8qXG4gKiBjcmVhdGUtYmVtLWJ1dHRvbigpXG4gKlxuICogQ3JlYXRlcyBhIGJ1dHRvbiB3aXRoIEJFTSBzdHlsZSBjbGFzc2VzLlxuICovXG4gY3JlYXRlLWJlbS1idXR0b24oJG5hbWUsICRzZXR0aW5ncykge1xuICAgIC5ycy1idG4tLXskbmFtZX0sXG4gICAgYS5ycy1idG4tLXskbmFtZX0ge1xuICAgICAgcGFkZGluZy10b3A6ICRzZXR0aW5ncy5zdHlsZS5kZWZhdWx0LnBhZGRpbmdUb3A7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHNldHRpbmdzLnN0eWxlLmRlZmF1bHQucGFkZGluZ0JvdHRvbTtcbiAgICAgIHBhZGRpbmctbGVmdDogJHNldHRpbmdzLnN0eWxlLmRlZmF1bHQucGFkZGluZ0xlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkc2V0dGluZ3Muc3R5bGUuZGVmYXVsdC5wYWRkaW5nUmlnaHQ7XG5cbiAgICAgIGNvbG9yOiAkc2V0dGluZ3NbJG5hbWVdLmNvbG9yLmRlZmF1bHQ7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2V0dGluZ3NbJG5hbWVdLmJhY2tncm91bmQuZGVmYXVsdDtcblxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzWyRuYW1lXS5jb2xvci5ib3JkZXI7XG5cbiAgICAgIGZvbnQtZmFtaWx5OiAkc2V0dGluZ3MuZm9udEZhbWlseTtcblx0XHRcdGZvbnQtc2l6ZTogJHNldHRpbmdzLmRlZmF1bHRGb250U2l6ZTtcblxuICAgICAgLy8gTk9URTogcHNldWRvIGNsYXNzIG9yZGVyIG1hdHRlcnM6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vcmVtZW1iZXItc2VsZWN0b3JzLXdpdGgtbG92ZS1hbmQtaGF0ZS9cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHNldHRpbmdzWyRuYW1lXS5jb2xvci5ob3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZDogJHNldHRpbmdzWyRuYW1lXS5iYWNrZ3JvdW5kLmhvdmVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2V0dGluZ3NbJG5hbWVdLmJhY2tncm91bmQuaG92ZXI7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgY29sb3I6ICRzZXR0aW5nc1skbmFtZV0uY29sb3IucHJlc3NlZDtcbiAgICAgICAgYmFja2dyb3VuZDogJHNldHRpbmdzWyRuYW1lXS5iYWNrZ3JvdW5kLnByZXNzZWQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZXR0aW5nc1skbmFtZV0uYmFja2dyb3VuZC5wcmVzc2VkO1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRzZXR0aW5nc1skbmFtZV0uY29sb3IuZGlzYWJsZWQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzZXR0aW5nc1skbmFtZV0uYmFja2dyb3VuZC5kaXNhYmxlZDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNldHRpbmdzWyRuYW1lXS5iYWNrZ3JvdW5kLmRpc2FibGVkO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lOyAvLyBEaXNhYmxlIG91dGxpbmUgaW4gY2hyb21lXG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBhLnJzLWJ0bi0teyRuYW1lfSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5ycy1idG4tLXskbmFtZX0ucnMtYnRuLS1zZWxlY3RlZCB7XG4gICAgICBjb2xvcjogJHNldHRpbmdzWyRuYW1lXS5jb2xvci5ob3ZlcjtcbiAgICAgIGJhY2tncm91bmQ6ICRzZXR0aW5nc1skbmFtZV0uYmFja2dyb3VuZC5ob3ZlcjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzZXR0aW5nc1skbmFtZV0uYmFja2dyb3VuZC5ob3ZlcjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkc2V0dGluZ3NbJG5hbWVdLmNvbG9yLnByZXNzZWQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzZXR0aW5nc1skbmFtZV0uYmFja2dyb3VuZC5wcmVzc2VkO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2V0dGluZ3NbJG5hbWVdLmJhY2tncm91bmQucHJlc3NlZDtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogJHNldHRpbmdzWyRuYW1lXS5jb2xvci5ob3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZDogJHNldHRpbmdzWyRuYW1lXS5iYWNrZ3JvdW5kLmhvdmVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2V0dGluZ3NbJG5hbWVdLmJhY2tncm91bmQuaG92ZXI7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXI6ZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJHNldHRpbmdzWyRuYW1lXS5jb2xvci5ob3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZDogJHNldHRpbmdzWyRuYW1lXS5iYWNrZ3JvdW5kLmhvdmVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2V0dGluZ3NbJG5hbWVdLmJhY2tncm91bmQuaG92ZXI7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucnMtYnRuLS1zbWFsbCxcbiAgICBhLnJzLWJ0bi0tc21hbGwge1xuICAgICAgcGFkZGluZy10b3A6ICRzZXR0aW5ncy5zdHlsZS5zbWFsbC5wYWRkaW5nVG9wO1xuICAgICAgcGFkZGluZy1ib3R0b206ICRzZXR0aW5ncy5zdHlsZS5zbWFsbC5wYWRkaW5nQm90dG9tO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc2V0dGluZ3Muc3R5bGUuc21hbGwucGFkZGluZ0xlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkc2V0dGluZ3Muc3R5bGUuc21hbGwucGFkZGluZ1JpZ2h0O1xuICAgIH1cbiB9XG5cbi8qXG4gKiBhZGp1c3QtcC1ibG9jay1zdHlsaW5nKClcbiAqXG4gKiBXZSBhc3N1bWUgdGhhdCBjb250ZW50IHdpdGhpbiA8cD4gYmxvY2tzIHdpbGwgYmUgdGV4dCdpc2guIFRoZXJlZm9yZSB3ZSBzdHlsZSBiYXNlIGNvbXBvbmVudCBsaWtlXG4gKiA8YnV0dG9ucz4gc28gdGhhdCB0aGV5IGxvb2sgZ29vZCBpbiBhIHRleHQgZmxvdy5cbiAqIFRoZSBtYXJnaW4gaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgbGluZS1oZWlnaHQgb2YgdGhlIDxwPjogcC5saW5lLWhlaWdodCAtIHAuZm9udC1zaXplIC0gYnV0dG9uLnBhZGRpbmdcbiAqL1xuYWRqdXN0LXAtYmxvY2stc3R5bGluZygkdHlwZVNldHRpbmdzLCAkc3R5bGVTZXR0aW5ncykge1xuICAkcExpbmVIZWlnaHQgPSAkdHlwZVNldHRpbmdzLnBbJ2xpbmUtaGVpZ2h0J107XG4gICRwRm9udFNpemUgPSAkdHlwZVNldHRpbmdzLnBbJ2ZvbnQtc2l6ZSddO1xuXG4gIHAgYnV0dG9uIHtcbiAgICAvLyBwYWRkaW5nOiAkc3R5bGVTZXR0aW5ncy5kZWZhdWx0LnBhZGRpbmdUb3AgJHN0eWxlU2V0dGluZ3MuZGVmYXVsdC5wYWRkaW5nUmlnaHQgJHN0eWxlU2V0dGluZ3MuZGVmYXVsdC5wYWRkaW5nQm90dG9tICRzdHlsZVNldHRpbmdzLmRlZmF1bHQucGFkZGluZ0xlZnQ7XG4gICAgbWFyZ2luOiAoJHBMaW5lSGVpZ2h0IC0gJHBGb250U2l6ZSk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBwIGJ1dHRvbi5ycy1idG4tLXNtYWxsICB7XG4gICAgbWFyZ2luOiAoJHBMaW5lSGVpZ2h0IC0gJHBGb250U2l6ZSAtICRzdHlsZVNldHRpbmdzLnNtYWxsLnBhZGRpbmdUb3AvMik7XG4gIH1cblxuICBwIGEucnMtYnRuLS1yZWQsXG4gIHAgYS5ycy1idG4tLWJsdWUsXG4gIHAgYS5ycy1idG4tLWdyZWVuLFxuICBwIGEucnMtYnRuLS1ibGFjayB7XG4gICAgbWFyZ2luOiAoJHBMaW5lSGVpZ2h0IC0gJHBGb250U2l6ZSk7XG4gIH1cbn1cbiIsIi8qXG4gKiBjcmVhdGUtaWNvbi1idXR0b24oKVxuICpcbiAqIENyZWF0ZXMgYSBidXR0b24gd2l0aCBhbiBpY29uIChlLmcuIGZvciBmZWRlcmF0ZWQgbG9naW4gYnV0dG9ucykuXG4gKi9cbiBzZXR1cC1kZWZhdWx0LWljb24tYnV0dG9uKCRzdHlsZSwgJGNvbG9ycykge1xuICAgIC5ycy1pY29uLWJ0biB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXg6IDAgYXV0bztcblxuICAgICAgbWluLXdpZHRoOiAkc3R5bGUuZGVmYXVsdC5taW5XaWR0aDtcblxuICAgICAgY29sb3I6ICRjb2xvcnMuY29sb3IuZGVmYXVsdDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcnMuY29sb3IuZGVmYXVsdDtcblxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICBmb250LWZhbWlseTogJHN0eWxlLmRlZmF1bHQuZm9udEZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogJHN0eWxlLmRlZmF1bHQuZGVmYXVsdEZvbnRTaXplO1xuXG4gICAgICAvLyBOT1RFOiBwc2V1ZG8gY2xhc3Mgb3JkZXIgbWF0dGVyczogaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9yZW1lbWJlci1zZWxlY3RvcnMtd2l0aC1sb3ZlLWFuZC1oYXRlL1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3JzLmNvbG9yLmhvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JzLmJhY2tncm91bmQuaG92ZXI7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgY29sb3I6ICRjb2xvcnMuY29sb3IucHJlc3NlZDtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9ycy5iYWNrZ3JvdW5kLnByZXNzZWQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcnMuYmFja2dyb3VuZC5wcmVzc2VkO1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcnMuY29sb3IuZGlzYWJsZWQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcnMuYmFja2dyb3VuZC5kaXNhYmxlZDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9ycy5iYWNrZ3JvdW5kLmRpc2FibGVkO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgLy8gRGlzYWJsZSBvdXRsaW5lIGluIGNocm9tZVxuICAgICAgfVxuICAgIH1cblxuICAgIC5ycy1pY29uLWJ0bl9faWNvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxLjg3NWVtO1xuICAgICAgaGVpZ2h0OiAxLjg3NWVtO1xuICAgICAgZmxleDogMCAwIDUwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIC5ycy1pY29uLWJ0bl9fbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXg6IDE7XG5cbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcnMuYmFja2dyb3VuZC5kZWZhdWx0O1xuXG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2U7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JzLmJhY2tncm91bmQuaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJzLWljb24tYnRuX19pY29uX193cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAyLjVlbTtcbiAgICAgIGhlaWdodDogMi41ZW07XG5cbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRjb2xvcnMuY29sb3IuZGVmYXVsdDtcblxuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgfVxuXG4gICAgLnJzLWljb24tYnRuX19pY29uX193cmFwcGVyX19wYWRkaW5nIHtcbiAgICAgIC8qIG9ubHkgbmVjZXNzYXJ5IGZvciBmbGV4Ym94IGNlbnRlcmluZyAqL1xuICAgIH1cblxuICAgIC8vIC5ycy1pY29uLWJ0bi0tc21hbGwge1xuICAgIC8vICAgbWluLXdpZHRoOiAkc3R5bGUuc21hbGwubWluV2lkdGg7XG4gICAgLy8gICBtYXJnaW4tdG9wOiAkc3R5bGUuc21hbGwubWFyZ2luVG9wO1xuICAgIC8vICAgbWFyZ2luLWJvdHRvbTogJHN0eWxlLnNtYWxsLm1hcmdpbkJvdHRvbTtcbiAgICAvLyAgIG1hcmdpbi1sZWZ0OiAkc3R5bGUuc21hbGwubWFyZ2luTGVmdDtcbiAgICAvLyAgIG1hcmdpbi1yaWdodDogJHN0eWxlLnNtYWxsLm1hcmdpblJpZ2h0O1xuICAgIC8vIH1cbiB9XG4iLCIvKlxuICogY3JlYXRlLWljb24tYnV0dG9uKClcbiAqXG4gKiBDcmVhdGVzIGEgZGFuZ2VyIGJ1dHRvbi5cbiAqL1xuIHNldHVwLWRlZmF1bHQtZGFuZ2VyLWJ1dHRvbigpIHtcbiAgLnJzLWRhbmdlci1idG4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTExMDEwO1xuICAgIGZvbnQtZmFtaWx5OiBFbGVjdHJvbGl6ZSwgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuICB9XG5cbiAgLnJzLWRhbmdlci1idG46aG92ZXIsXG4gIC5ycy1kYW5nZXItYnRuOnZpc2l0ZWQsXG4gIC5ycy1kYW5nZXItYnRuOnZpc2l0ZWQ6aG92ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhYTBjMGM7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG4gfVxuIiwiQGltcG9ydCAnLi4vYnJhbmQuaW1wb3J0Jztcblxuc2V0dXAtc2xpZGVycygkY3VzdG9tU2V0dGluZ3MgPSB7fSkge1xuXG5cdC8qXG4gICAqIERlZmF1bHQgc2V0dGluZ3M6XG4gICAqL1xuICAkZGVmYXVsdFNldHRpbmdzID0ge1xuICAgIHdpZHRoOiAxNWVtLFxuICAgIGhlaWdodDogMWVtLFxuICAgIHJhZGl1czogMC4yNWVtLFxuICAgIGhpZ2hsaWdodDogI0UxMTAxMCxcbiAgICBiYWNrZ3JvdW5kOiAjQ0FDQUNBLFxuICAgIHRodW1iQ29sb3VyOiAkYnJhbmRXaGl0ZSxcbiAgICB0aHVtYlNpemU6IDFlbVxuICB9XG5cbiAgJHNldHRpbmdzID0gbWVyZ2UoJGRlZmF1bHRTZXR0aW5ncywgJGN1c3RvbVNldHRpbmdzKTtcblxuICAvKlxuICAgKiBCcmVha3BvaW50IHNldHVwOlxuICAgKi9cbiAgaW5wdXRbdHlwZT0ncmFuZ2UnXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyOiBzb2xpZCAuNWVtIHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6ICRzZXR0aW5ncy53aWR0aDtcbiAgICBoZWlnaHQ6ICRzZXR0aW5ncy5oZWlnaHQqMjtcbiAgICBib3JkZXItcmFkaXVzOiAkc2V0dGluZ3MucmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmLFxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrLFxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICB9XG4gICAgJjo6LW1zLXRyYWNrIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICB0cmFjaygkc2V0dGluZ3MuaGlnaGxpZ2h0LCAkc2V0dGluZ3MuYmFja2dyb3VuZCwgJHNldHRpbmdzLndpZHRoLCAkc2V0dGluZ3MuaGVpZ2h0LzIpO1xuICAgIH1cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICBtYXJnaW4tdG9wOiAoKCRzZXR0aW5ncy5oZWlnaHQvMiAtICRzZXR0aW5ncy50aHVtYlNpemUpLzIpO1xuICAgICAgdGh1bWIoJHNldHRpbmdzLnRodW1iQ29sb3VyLCAkc2V0dGluZ3MudGh1bWJTaXplKTtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDFweCAkc2V0dGluZ3MuaGlnaGxpZ2h0XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT0ncmFuZ2UnXS5wcm9ncmVzcyB7XG4gICAgY3Vyc29yOiBpbml0aWFsO1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT0ncmFuZ2UnXS5hbmltYXRlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIDQwMG1zIGVhc2UtaW47XG4gICAgfVxuICB9XG5cbiAgaW5wdXRbdHlwZT0ncmFuZ2UnXS5pbnRlcm1lZGlhdGUge1xuXG4gIH1cbn1cblxudHJhY2soJGhpZ2hsaWdodCwgJGJnLCAkd2lkdGgsICRoZWlnaHQpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAoQGhlaWdodC8yKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCRoaWdobGlnaHQsICRoaWdobGlnaHQpIG5vLXJlcGVhdCAkYmc7XG4gIGJhY2tncm91bmQtc2l6ZTogMCUgMTAwJTtcbn1cblxudGh1bWIoJGJnLCAkc3ogPSAwLjc1ZW0pIHtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogJHN6O1xuICBoZWlnaHQ6ICRzejtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2hhZG93OiAwIDAgLjEyNWVtICMzMzM7XG4gIGJhY2tncm91bmQ6ICRiZztcbn1cbiIsIkBpbXBvcnQgJy4uL2NvbW1vbi9hbmltYXRpb24uaW1wb3J0J1xuXG5zZXR1cC13aWRnZXRfX2Rvd24tYXJyb3coJGN1c3RvbVNldHRpbmdzID0ge30pIHtcblx0LypcbiAgICogRGVmYXVsdCBzZXR0aW5nczpcbiAgICovXG5cdCRkZWZhdWx0U2V0dGluZ3MgPSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaHR0cHM6Ly9zdGF0aWMucmVkc2lmdC5pby9hc3NldHMvdWktcnMtY29yZS9pY29ucy8tcnMtaWNvbi1kb3duLWFycm93LTMuc3ZnXCIpLFxuICAgIHdpZHRoOiAyMHB4LFxuICAgIGhlaWdodDogMzBweCxcbiAgICBwYWRkaW5nOiAxZW0sXG4gICAgb3BhY2l0eTogMC42LFxuICAgIHRyYW5zaXRpb25DdXJ2ZTogJGN1cnZlUmVkc2lmdCxcbiAgICB0cmFuc2l0aW9uVGltZTogJHRpbWVSZWRzaWZ0XG5cdH1cblxuXHQkc2V0dGluZ3MgPSBtZXJnZSgkZGVmYXVsdFNldHRpbmdzLCAkY3VzdG9tU2V0dGluZ3MpO1xuXG4gIC8qXG4gICAqIEJyZWFrcG9pbnQgc2V0dXA6XG4gICAqL1xuICAuZG93bi1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICRzZXR0aW5ncy53aWR0aDtcbiAgICBoZWlnaHQ6ICRzZXR0aW5ncy5oZWlnaHQgO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwYWRkaW5nOiAkc2V0dGluZ3MucGFkZGluZztcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAkc2V0dGluZ3NbJ2JhY2tncm91bmQtaW1hZ2UnXTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHNldHRpbmdzLmhlaWdodCAkc2V0dGluZ3Mud2lkdGg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBvcGFjaXR5OiAkc2V0dGluZ3Mub3BhY2l0eTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRzZXR0aW5ncy50cmFuc2l0aW9uQ3VydmUgJHNldHRpbmdzLnRyYW5zaXRpb25UaW1lO1xuICB9XG5cbiAgLmRvd24tYXJyb3c6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgfVxufVxuIiwic2V0dXAtc3R5bGUtc3dpdGNoZXIoJGN1c3RvbVNldHRpbmdzID0ge30pIHtcblx0LypcbiAgICogRGVmYXVsdCBzZXR0aW5nczpcbiAgICovXG5cdCRkZWZhdWx0U2V0dGluZ3MgPSB7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjkpXG5cdH1cblxuXHQkc2V0dGluZ3MgPSBtZXJnZSgkZGVmYXVsdFNldHRpbmdzLCAkY3VzdG9tU2V0dGluZ3MpO1xuXG4gIC8qXG4gICAqIEJyZWFrcG9pbnQgc2V0dXA6XG4gICAqL1xuXHQuc3R5bGUtc3dpdGNoZXIge1xuXHQgIHotaW5kZXg6IDEwMDA7XG5cdCAgZGlzcGxheTogZmxleDtcblx0ICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG5cdCAgcG9zaXRpb246IGZpeGVkO1xuXHQgIHJpZ2h0OiAwO1xuXHQgIGxlZnQ6IDA7XG5cdCAgYm90dG9tOiAwO1xuXG5cdCAgcGFkZGluZzogMC44ZW07XG5cdCAgYmFja2dyb3VuZDogJHNldHRpbmdzLmJhY2tncm91bmRcblx0fVxuXG5cdC5zdHlsZS1zd2l0Y2hlciBidXR0b24ge1xuXHQgIG1hcmdpbi1yaWdodDogMWVtO1xuXHR9XG59XG4iXX0= */
