/* ------------------------------------------------------------------------ *\
 * Print
\* ------------------------------------------------------------------------ */
/* stylelint-disable selector-class-pattern, selector-no-qualifying-type, selector-max-type */
/* These styles are intended to be global */
/*
Gutenberg: Web Typography Starter Kit
Website ....... http://matejlatin.github.io/Gutenberg/
Version ....... 1.1
Github ........ https://github.com/matejlatin/Gutenberg
Authors ....... Matej Latin (@matejlatin)
License ....... Creative Commmons Attribution 3.0
License URL ... https://raw.githubusercontent.com/matejlatin/Gutenberg/master/license.txt
*/
/* Configuration
   ========================================================================== */
/* Calculations
   ========================================================================== */
/* Font themes
   ========================================================================== */
@media screen and (min-width: 40em) {
  .floatLeft {
    float: left;
  }
}

@media screen and (min-width: 40em) {
  .floatCenter {
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 40em) {
  .floatRight {
    float: right;
  }
}

/* Grid
   ========================================================================== */
.grid, .grid-double {
  background-image: linear-gradient(to bottom, rgba(0, 170, 255, 0.3) 1px, transparent 1px);
  background-position: left top;
  background-repeat: repeat;
  background-size: 100% 26px;
  background-size: 100% 1.625rem;
}
@media screen and (min-width: 40em) {
  .grid, .grid-double {
    background-size: 100% 31px;
    background-size: 100% 1.7222222222rem;
  }
}

.grid-double {
  background-image: linear-gradient(to bottom, rgba(0, 170, 255, 0.3) 1px, transparent 1px, transparent 13px, rgba(0, 170, 255, 0.2) 13px, transparent 14px, transparent 26px);
}
@media screen and (min-width: 40em) {
  .grid-double {
    background-image: linear-gradient(to bottom, rgba(0, 170, 255, 0.3) 1px, transparent 1px, transparent 15.5px, rgba(0, 170, 255, 0.2) 15.5px, transparent 16.5px, transparent 31px);
  }
}

.toggleWrapper {
  display: block;
  position: fixed;
  top: 26px;
  right: 26px;
  background-color: #231F20;
  border-radius: 25px;
  padding: 0 10px 0 20px;
  height: 32px;
}
@media screen and (min-width: 40em) {
  .toggleWrapper {
    right: 31px;
    top: 31px;
  }
}

.btnToggleGrid {
  background: url("../../assets/images/grid-icons.png") top right no-repeat;
  background-size: 32px;
  display: block;
  font-size: 14px;
  text-decoration: none;
  padding-right: 35px;
  height: 32px;
  line-height: 34px;
  font-family: Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  color: #fff;
}
@media screen and (min-width: 40em) {
  .btnToggleGrid {
    top: 31px;
    right: 31px;
  }
}
.btnToggleGrid:hover {
  color: #fff;
}
.btnToggleGrid:active {
  color: #f00;
}

.double-grid {
  background-position-y: -32px;
}

.grid-off {
  background-position-y: -64px;
}

aside {
  display: block;
}

/* Defaults
   ========================================================================== */
@media screen and (min-width: 40em) {
  body,
html {
    margin: 0;
    width: 100%;
    max-width: none;
  }
}

html {
  box-sizing: border-box;
  font-size: 16px;
  font-size: 100%;
  color: #222;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
@media screen and (min-width: 40em) {
  html {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

* {
  line-height: 26px;
  line-height: 26px;
  line-height: 1.625rem;
  margin: 0px 0px 26px;
  margin: 0px 0px 26px;
  margin: 0rem 0rem 1.625rem;
}
@media screen and (min-width: 40em) {
  * {
    line-height: 31px;
    line-height: 1.7222222222rem;
    margin-bottom: 31px;
    margin-bottom: 1.7222222222rem;
    max-width: 630px;
    max-width: 35rem;
    margin-left: auto;
    margin-right: auto;
  }
}

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

body {
  margin: 0;
}

footer {
  display: block;
}
body > footer {
  margin: 0 auto;
  width: 80%;
}

header {
  display: block;
}

main {
  display: block;
}

section {
  display: block;
}

/* Links
   ========================================================================== */
a {
  background: transparent;
  color: #222;
  transition: all 0.3s;
}
a:active, a:hover {
  outline: 0;
}
a:hover {
  color: #222;
}
a:visited {
  color: #888;
}
a:visited:hover {
  color: #222;
}
a:active {
  color: #f00;
}

article {
  display: block;
  margin: 0 auto;
  width: 80%;
}
@media screen and (min-width: 40em) {
  article {
    max-width: 945px;
    max-width: 52.5rem;
  }
}

audio {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}

canvas {
  display: inline-block;
  vertical-align: baseline;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
}

code {
  padding: 26px;
  padding: 26px;
  padding: 1.625rem;
  display: block;
}
@media screen and (min-width: 40em) {
  code {
    padding: 31px;
    padding: 1.7222222222rem;
  }
}

details {
  display: block;
}

summary {
  display: block;
}

figcaption {
  line-height: 26px;
  line-height: 26px;
  line-height: 1.625rem;
  color: #222;
  display: block;
  font-size: 13px;
  font-size: 0.8125rem;
  font-style: italic;
  margin-bottom: 0;
  text-align: center;
}
@media screen and (min-width: 40em) {
  figcaption {
    line-height: 31px;
    line-height: 1.7222222222rem;
    margin-bottom: 0;
  }
}

figure {
  display: block;
}

@media screen and (min-width: 40em) {
  figure.floatLeft,
figure.floatRight {
    max-width: 315px;
    max-width: 17.5rem;
    padding: 0px 31px;
    padding: 0rem 1.7222222222rem;
  }
}
@media screen and (min-width: 40em) {
  figure.floatLeft blockquote,
figure.floatRight blockquote {
    padding: 0px;
    padding: 0rem;
    text-align: left;
  }
}
@media screen and (min-width: 40em) {
  figure.floatLeft blockquote p,
figure.floatRight blockquote p {
    font-size: 19.2px;
    font-size: 1.2rem;
    line-height: 31px;
    line-height: 1.7222222222rem;
  }
}

/* Headings
   ========================================================================== */
h1 {
  font-size: 40px;
  font-size: 40px;
  font-size: 2.5rem;
  line-height: 52px;
  line-height: 52px;
  line-height: 3.25rem;
  margin-top: 104px;
  margin-top: 104px;
  margin-top: 6.5rem;
  margin-bottom: 26px;
  margin-bottom: 26px;
  margin-bottom: 1.625rem;
}

h2 {
  font-size: 27px;
  font-size: 27px;
  font-size: 1.6875rem;
  line-height: 39px;
  line-height: 39px;
  line-height: 2.4375rem;
  margin-top: 65px;
  margin-top: 65px;
  margin-top: 4.0625rem;
  margin-bottom: 13px;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
}

h3 {
  font-size: 22px;
  font-size: 22px;
  font-size: 1.375rem;
  line-height: 26px;
  line-height: 26px;
  line-height: 1.625rem;
  margin-top: 52px;
  margin-top: 52px;
  margin-top: 3.25rem;
  margin-bottom: 13px;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
}

h4 {
  font-size: 19.2px;
  font-size: 19.2px;
  font-size: 1.2rem;
  line-height: 26px;
  line-height: 26px;
  line-height: 1.625rem;
  margin-top: 39px;
  margin-top: 39px;
  margin-top: 2.4375rem;
  margin-bottom: 13px;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
}

h5 {
  font-size: 16px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 26px;
  line-height: 26px;
  line-height: 1.625rem;
  margin-top: 65px;
  margin-top: 65px;
  margin-top: 4.0625rem;
  margin-bottom: 13px;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
}

h6 {
  font-size: 16px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 26px;
  line-height: 26px;
  line-height: 1.625rem;
  margin-top: 65px;
  margin-top: 65px;
  margin-top: 4.0625rem;
  margin-bottom: 13px;
  margin-bottom: 13px;
  margin-bottom: 0.8125rem;
}

@media screen and (min-width: 40em) {
  h1 {
    font-size: 40px;
    font-size: 2.5rem;
    line-height: 62px;
    line-height: 3.4444444444rem;
    margin-top: 124px;
    margin-top: 6.8888888889rem;
    margin-bottom: 31px;
    margin-bottom: 1.7222222222rem;
  }

  h2 {
    font-size: 27px;
    font-size: 1.6875rem;
    line-height: 46.5px;
    line-height: 2.5833333333rem;
    margin-top: 77.5px;
    margin-top: 4.3055555556rem;
    margin-bottom: 15.5px;
    margin-bottom: 0.8611111111rem;
  }

  h3 {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 31px;
    line-height: 1.7222222222rem;
    margin-top: 62px;
    margin-top: 3.4444444444rem;
    margin-bottom: 15.5px;
    margin-bottom: 0.8611111111rem;
  }

  h4 {
    font-size: 19.2px;
    font-size: 1.2rem;
    line-height: 31px;
    line-height: 1.7222222222rem;
    margin-top: 46.5px;
    margin-top: 2.5833333333rem;
    margin-bottom: 15.5px;
    margin-bottom: 0.8611111111rem;
  }

  h5 {
    font-size: 16px;
    font-size: 1rem;
    line-height: 31px;
    line-height: 1.7222222222rem;
    margin-top: 77.5px;
    margin-top: 4.3055555556rem;
    margin-bottom: 15.5px;
    margin-bottom: 0.8611111111rem;
  }

  h6 {
    font-size: 16px;
    font-size: 1rem;
    line-height: 31px;
    line-height: 1.7222222222rem;
    margin-top: 77.5px;
    margin-top: 4.3055555556rem;
    margin-bottom: 15.5px;
    margin-bottom: 0.8611111111rem;
  }
}
h1 + h2 {
  margin-top: 26px;
  margin-top: 26px;
  margin-top: 1.625rem;
}
@media screen and (min-width: 40em) {
  h1 + h2 {
    margin-top: 31px;
    margin-top: 1.7222222222rem;
  }
}

h2 + h3,
h3 + h4,
h4 + h5 {
  margin-top: 13px;
  margin-top: 13px;
  margin-top: 0.8125rem;
}
@media screen and (min-width: 40em) {
  h2 + h3,
h3 + h4,
h4 + h5 {
    margin-top: 15.5px;
    margin-top: 0.8611111111rem;
  }
}

h5 + h6 {
  margin-top: -13px;
  margin-top: -13px;
  margin-top: -0.8125rem;
}
@media screen and (min-width: 40em) {
  h5 + h6 {
    margin-top: -15.5px;
    margin-top: -0.8611111111rem;
  }
}

h6 {
  font-style: italic;
  font-weight: normal;
}

hgroup {
  display: block;
}

hr {
  margin-top: 52px;
  margin-top: 52px;
  margin-top: 3.25rem;
  margin-bottom: 52px;
  margin-bottom: 52px;
  margin-bottom: 3.25rem;
  box-sizing: content-box;
  border: 0;
  color: #222;
  display: block;
  height: 26px;
  height: 26px;
  height: 1.625rem;
  margin-right: auto;
  margin-left: auto;
  background-size: 100% 26px;
  background-size: 100% 1.625rem;
  background-image: linear-gradient(to bottom, transparent 1px, transparent 11px, #222 11px, #222 15px, transparent 15px, transparent 26px);
  width: 100px;
}
@media screen and (min-width: 40em) {
  hr {
    margin-top: 62px;
    margin-top: 3.4444444444rem;
    margin-bottom: 62px;
    margin-bottom: 3.4444444444rem;
    height: 31px;
    height: 1.7222222222rem;
  }
}
@media screen and (min-width: 40em) {
  hr {
    background-size: 100% 31px;
    background-size: 100% 1.7222222222rem;
    background-image: linear-gradient(to bottom, transparent 1px, transparent 13.5px, #222 13.5px, #222 17.5px, transparent 17.5px, transparent 31px);
  }
}

img {
  border: 0;
  max-width: 100%;
  display: block;
  margin: inherit auto;
}

svg:not(:root) {
  overflow: hidden;
}

ul li,
ol li {
  margin-bottom: 0;
}

nav {
  display: block;
}

progress {
  display: inline-block;
  vertical-align: baseline;
}

blockquote {
  font-style: italic;
  padding-left: 23px;
  padding-left: 1.4375rem;
}
@media screen and (min-width: 40em) {
  blockquote {
    padding-left: 2rem;
  }
}

cite {
  display: block;
  font-style: normal;
}

figure blockquote {
  padding: 26px 0px;
  padding: 26px 0px;
  padding: 1.625rem 0rem;
}
@media screen and (min-width: 40em) {
  figure blockquote {
    padding: 62px 0px 31px;
    padding: 3.4444444444rem 0rem 1.7222222222rem;
    text-align: center;
  }
}
figure blockquote p {
  font-size: 27px;
  font-size: 27px;
  font-size: 1.6875rem;
  line-height: 39px;
  line-height: 39px;
  line-height: 2.4375rem;
}
@media screen and (min-width: 40em) {
  figure blockquote p {
    font-size: 27px;
    font-size: 1.6875rem;
    line-height: 46.5px;
    line-height: 2.5833333333rem;
  }
}

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

td,
th {
  padding: 0;
}

[hidden],
template {
  display: none;
}

br {
  margin-bottom: 0;
}

abbr {
  letter-spacing: 0.1em;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

em,
i {
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  line-height: 13px;
  line-height: 13px;
  line-height: 0.8125rem;
  font-size: 70%;
}
@media screen and (min-width: 40em) {
  small {
    line-height: 15.5px;
    line-height: 0.8611111111rem;
  }
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Paragraph
========================================================================== */
.attention-grabber {
  font-size: 19.2px;
  font-size: 19.2px;
  font-size: 1.2rem;
}

.alignLeft {
  text-align: left;
}

.alignCenter {
  text-align: center;
}

.alignRight {
  text-align: right;
}

.uppercase {
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

video {
  display: inline-block;
  vertical-align: baseline;
}

/* TODOs:
 - some line heights produce margins with .5 results, seemingly breaking the gird (?),
 - table + side comments elements,
 - translate to Less and Stylus.
 */
.btnToggleGrid {
  background-image: url("/source/6a74c144a1a1e858d86c267deec32a93/gutenberg-grid-icons.png");
}

a[href^="//"]::after {
  content: " (" attr(href) ")";
  font-size: 80%;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvcHJpbnQvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9ndXRlbmJlcmcuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL19ndXRlbmJlcmctY29uZmlnLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9oZWxwZXJzL19hbGlnbm1lbnQuc2NzcyIsInByaW50LmNzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL2hlbHBlcnMvX2dyaWQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL2xheW91dC9fYXNpZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL2xheW91dC9fYmFzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbWl4aW5zL19saW5lLWhlaWdodC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbWl4aW5zL19tYXJnaW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL2xheW91dC9fZm9vdGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9sYXlvdXQvX2hlYWRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbGF5b3V0L19tYWluLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9sYXlvdXQvX3NlY3Rpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL21vZHVsZXMvX2FuY2hvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbW9kdWxlcy9fYXJ0aWNsZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbW9kdWxlcy9fYXVkaW8uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL21vZHVsZXMvX2NhbnZhcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbW9kdWxlcy9fY29kZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbWl4aW5zL19wYWRkaW5nLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9tb2R1bGVzL19kZXRhaWxzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9tb2R1bGVzL19maWd1cmUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL21peGlucy9fZm9udC1zaXplLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9tb2R1bGVzL19oZWFkaW5nLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9tb2R1bGVzL19ob3Jpem9udGFsLXJ1bGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL21vZHVsZXMvX2ltYWdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9tb2R1bGVzL19saXN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9tb2R1bGVzL19uYXZpZ2F0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9tb2R1bGVzL19wcm9ncmVzcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbW9kdWxlcy9fcXVvdGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ndXRlbmJlcmctd2ViLXR5cGUvc3JjL3N0eWxlL21vZHVsZXMvX3RhYmxlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZ3V0ZW5iZXJnLXdlYi10eXBlL3NyYy9zdHlsZS9tb2R1bGVzL190ZW1wbGF0ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbW9kdWxlcy9fdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2d1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvbW9kdWxlcy9fdmlkZW8uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7NkVBQUE7QUFJQSw2RkFBQTtBQUVBLDJDQUFBO0FDUkE7Ozs7Ozs7O0NBQUE7QUNBQTsrRUFBQTtBQXdDQTsrRUFBQTtBQWFBOytFQUFBO0FDbERFO0VBRkY7SUFHSSxXQUFBO0VDbUJGO0FBQ0Y7O0FEYkU7RUFGRjtJQUdJLGlCQUFBO0lBQ0Esa0JBQUE7RUNpQkY7QUFDRjs7QURYRTtFQUZGO0lBR0ksWUFBQTtFQ2VGO0FBQ0Y7O0FDckNBOytFQUFBO0FBSUE7RUFDRSx5RkFBQTtFQUNBLDZCQUFBO0VBQ0EseUJBQUE7RUFD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Q0UsZUFBQTtBNUJvbUJGOztBNEJqbUJBOzRFQUFBO0FBZ0NBO0VWdEdFLGlCQUFBO0VBQ0EsaUJBQUE7RUFBQSxpQkFBQTtBbEI2cUJGOztBNEJqakJBO0VBQ0UsZ0JBQUE7QTVCb2pCRjs7QTRCampCQTtFQUNFLGtCQUFBO0E1Qm9qQkY7O0E0QmpqQkE7RUFDRSxpQkFBQTtBNUJvakJGOztBNEJoakJBO0VBQ0UscUJBQUE7RUFDQSx5QkFBQTtBNUJtakJGOztBNkJqc0JBO0VBQ0UscUJBQUE7RUFDQSx3QkFBQTtBN0Jvc0JGOztBSHZwQkE7Ozs7RUFBQTtBRDVCQTtFQUNJLGlFQUFBO0FJMnJCSjs7QUp4ckJBO0VBQ0ksNEJBQUE7RUFDQSxjQUFBO0FJMnJCSiIsImZpbGUiOiJwcmludC44ZmRmM2JjZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFByaW50XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4sIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgc2VsZWN0b3ItbWF4LXR5cGUgKi9cblxuLyogVGhlc2Ugc3R5bGVzIGFyZSBpbnRlbmRlZCB0byBiZSBnbG9iYWwgKi9cblxuLy8gVmVuZG9yXG5cbiR0aGVtZTogY3VzdG9tO1xuJGZvbnQtYm9keTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcblxuQGltcG9ydCBcImd1dGVuYmVyZy13ZWItdHlwZS9zcmMvc3R5bGUvZ3V0ZW5iZXJnXCI7XG5cbi8vIEN1c3RvbVxuXG4uYnRuVG9nZ2xlR3JpZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvdmVuZG9yL2d1dGVuYmVyZy1ncmlkLWljb25zLnBuZ1wiKTtcbn1cblxuYVtocmVmXj1cIi8vXCJdOjphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgZm9udC1zaXplOiA4MCU7XG59XG4iLCIvKlxuR3V0ZW5iZXJnOiBXZWIgVHlwb2dyYXBoeSBTdGFydGVyIEtpdFxuV2Vic2l0ZSAuLi4uLi4uIGh0dHA6Ly9tYXRlamxhdGluLmdpdGh1Yi5pby9HdXRlbmJlcmcvXG5WZXJzaW9uIC4uLi4uLi4gMS4xXG5HaXRodWIgLi4uLi4uLi4gaHR0cHM6Ly9naXRodWIuY29tL21hdGVqbGF0aW4vR3V0ZW5iZXJnXG5BdXRob3JzIC4uLi4uLi4gTWF0ZWogTGF0aW4gKEBtYXRlamxhdGluKVxuTGljZW5zZSAuLi4uLi4uIENyZWF0aXZlIENvbW1tb25zIEF0dHJpYnV0aW9uIDMuMFxuTGljZW5zZSBVUkwgLi4uIGh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9tYXRlamxhdGluL0d1dGVuYmVyZy9tYXN0ZXIvbGljZW5zZS50eHRcbiovXG5cbkBpbXBvcnQgJ2d1dGVuYmVyZy1jb25maWcnO1xuXG5AaW1wb3J0ICdtaXhpbnMvZm9udC1zaXplJztcbkBpbXBvcnQgJ21peGlucy9saW5lLWhlaWdodCc7XG5AaW1wb3J0ICdtaXhpbnMvbWFyZ2luJztcbkBpbXBvcnQgJ21peGlucy9wYWRkaW5nJztcblxuQGltcG9ydCAnaGVscGVycy9hbGlnbm1lbnQnO1xuQGltcG9ydCAnaGVscGVycy9ncmlkJztcblxuQGltcG9ydCAnbGF5b3V0L2FzaWRlJztcbkBpbXBvcnQgJ2xheW91dC9iYXNlJztcbkBpbXBvcnQgJ2xheW91dC9mb290ZXInO1xuQGltcG9ydCAnbGF5b3V0L2hlYWRlcic7XG5AaW1wb3J0ICdsYXlvdXQvbWFpbic7XG5AaW1wb3J0ICdsYXlvdXQvc2VjdGlvbic7XG5cbkBpbXBvcnQgJ21vZHVsZXMvYW5jaG9yJztcbkBpbXBvcnQgJ21vZHVsZXMvYXJ0aWNsZSc7XG5AaW1wb3J0ICdtb2R1bGVzL2F1ZGlvJztcbkBpbXBvcnQgJ21vZHVsZXMvY2FudmFzJztcbkBpbXBvcnQgJ21vZHVsZXMvY29kZSc7XG5AaW1wb3J0ICdtb2R1bGVzL2RldGFpbHMnO1xuQGltcG9ydCAnbW9kdWxlcy9maWd1cmUnO1xuQGltcG9ydCAnbW9kdWxlcy9mb3JtJztcbkBpbXBvcnQgJ21vZHVsZXMvaGVhZGluZyc7XG5AaW1wb3J0ICdtb2R1bGVzL2hvcml6b250YWwtcnVsZSc7XG5AaW1wb3J0ICdtb2R1bGVzL2ltYWdlJztcbkBpbXBvcnQgJ21vZHVsZXMvbGlzdCc7XG5AaW1wb3J0ICdtb2R1bGVzL25hdmlnYXRpb24nO1xuQGltcG9ydCAnbW9kdWxlcy9wcm9ncmVzcyc7XG5AaW1wb3J0ICdtb2R1bGVzL3F1b3RlJztcbkBpbXBvcnQgJ21vZHVsZXMvdGFibGUnO1xuQGltcG9ydCAnbW9kdWxlcy90ZW1wbGF0ZSc7XG5AaW1wb3J0ICdtb2R1bGVzL3RleHQnO1xuQGltcG9ydCAnbW9kdWxlcy92aWRlbyc7XG5cbi8qIFRPRE9zOlxuIC0gc29tZSBsaW5lIGhlaWdodHMgcHJvZHVjZSBtYXJnaW5zIHdpdGggLjUgcmVzdWx0cywgc2VlbWluZ2x5IGJyZWFraW5nIHRoZSBnaXJkICg/KSxcbiAtIHRhYmxlICsgc2lkZSBjb21tZW50cyBlbGVtZW50cyxcbiAtIHRyYW5zbGF0ZSB0byBMZXNzIGFuZCBTdHlsdXMuXG4gKi9cbiIsIi8qIENvbmZpZ3VyYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiRlZGl0LW1vZGU6IHRydWUgIWRlZmF1bHQ7IC8vIFsgdHJ1ZSAvIGZhbHNlIF0gLSBFbmFibGVzL2Rpc2FibGVzIHRoZSBncmlkIHRvZ2dsZSBidXR0b24uXG5cbi8vIFRoZW1lIC8gRm9udHNcbiR0aGVtZTogTWVycml3ZWF0aGVyICFkZWZhdWx0OyAvLyBbIE1lcnJpd2VhdGhlciAvIE9wZW5TYW5zIC8gY3VzdG9tIF1cbiRjdXN0b20tZm9udC1ib2R5OiBudWxsICFkZWZhdWx0OyAvLyBbIFwiTGlicmUgQmFza2VydmlsbGVcIiwgR2VvcmdpYSwgc2VyaWYgXVxuJGN1c3RvbS1mb250LWhlYWRpbmdzOiBudWxsICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGggaW5kZW50aW5nXG4kcGFyYWdyYXBoLWluZGVudDogZmFsc2U7IC8vIFsgdHJ1ZSAvIGZhbHNlIF1cblxuLy8gQmFzZSBzaXplc1xuJGJhc2UtZm9udC1zaXplOiAxMDAgIWRlZmF1bHQ7IC8vIEluICUuIEFsc28gdXNlZCBmb3IgbW9iaWxlLiBOdW1iZXIgb25seSwgbm8gdW5pdHMuXG4kYmFzZS1mb250LXNpemUtZGVza3RvcDogMTEyLjUgIWRlZmF1bHQ7IC8vIEluICUuIFVzZWQgdG8gY2FsY3VsYXRlIHRoZSBkZXNrdG9wIGZvbnQgc2l6ZS4gTnVtYmVyIG9ubHksIG5vIHVuaXRzLlxuJGxpbmUtaGVpZ2h0OiAxLjYyNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1kZXNrdG9wOiAxLjcgIWRlZmF1bHQ7XG4kbWF4LXdpZHRoOiAzNSAhZGVmYXVsdDsgLy8gTnVtYmVyIG9ubHksIG5vIHVuaXRzLiBHZXRzIGNvbnZlcnRlZCB0byBSRU1zIGFuZCBwaXhlbHMuXG5cbi8vIE1vZHVsYXIgU2NhbGVcbiRtb2R1bGFyLXNjYWxlOiAoXG4gIHh4eGw6IDQuMyxcbiAgeHhsOiAzLjUsXG4gIHhsOiAzLFxuICBsOiAyLjUsXG4gIG06IDIsXG4gIHM6IDEuNjg3NSxcbiAgeHM6IDEuNDM3NSxcbiAgeHhzOiAxLjIsXG4gIHh4eHM6IDEsXG4gIHh4eHhzOiAuODEyNVxuKSAhZGVmYXVsdDtcblxuLy8gQ29sb3JzXG4kY29sb3ItZm9udC1ib2R5OiAjMjIyICFkZWZhdWx0O1xuJGNvbG9yLWZvbnQtaGVhZGluZ3M6ICRjb2xvci1mb250LWJvZHkgIWRlZmF1bHQ7XG4kY29sb3ItZm9udC1saWdodDogIzg4OCAhZGVmYXVsdDtcbiRjb2xvci1mb250LWZpZ2NhcHRpb246ICRjb2xvci1mb250LWJvZHkgIWRlZmF1bHQ7XG5cbi8qIENhbGN1bGF0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLy8gTW9iaWxlIGJhc2UgJiBsZWFkaW5nXG4kYmFzZTogMTYgKiAoJGJhc2UtZm9udC1zaXplIC8gMTAwKTtcbiRsZWFkaW5nOiByb3VuZCgkYmFzZSAqICRsaW5lLWhlaWdodCk7XG4kbGVhZGluZy1yZW06ICRsZWFkaW5nIC8gJGJhc2U7XG5cbi8vIERlc2t0b3AgYmFzZSAmIGxlYWRpbmdcbiRiYXNlLWRlc2t0b3A6IDE2ICogKCRiYXNlLWZvbnQtc2l6ZS1kZXNrdG9wIC8gMTAwKTtcbiRsZWFkaW5nLWRlc2t0b3A6IHJvdW5kKCRiYXNlLWRlc2t0b3AgKiAkbGluZS1oZWlnaHQtZGVza3RvcCk7XG4kbGVhZGluZy1yZW0tZGVza3RvcDogJGxlYWRpbmctZGVza3RvcCAvICRiYXNlLWRlc2t0b3A7XG5cbi8qIEZvbnQgdGhlbWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kZm9udC1ib2R5OiBudWxsO1xuJGZvbnQtaGVhZGluZ3M6IG51bGw7XG5cbkBpZiAkdGhlbWUgPT0gTWVycml3ZWF0aGVyIHtcblxuICAvLyBJbXBvcnQgTWVycml3ZWF0aGVyXG4gIEBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1NZXJyaXdlYXRoZXI6NDAwLDcwMCw0MDBpdGFsaWMpO1xuXG4gIC8vIFNldCBib2R5IGZvbnRcbiAgJGZvbnQtYm9keTogTWVycml3ZWF0aGVyLCBHZW9yZ2lhLCBzZXJpZjtcblxufSBAZWxzZSBpZiAkdGhlbWUgPT0gT3BlblNhbnMge1xuXG4gIC8vIEltcG9ydCBPcGVuIFNhbnNcbiAgQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU9wZW4rU2Fuczo0MDAsNzAwLDQwMGl0YWxpYyk7XG5cbiAgLy8gU2V0IGJvZHkgZm9udFxuICAkZm9udC1ib2R5OiBPcGVuIFNhbnMsIEFyaWFsLCBIZWx2ZXRpY2EsIFNhbnMtc2VyaWY7XG5cbn0gQGVsc2UgaWYgJHRoZW1lID09IGN1c3RvbSB7XG5cbiAgLy8gU2V0IGN1c3RvbSBib2R5IGZvbnRcbiAgJGZvbnQtYm9keTogJGN1c3RvbS1mb250LWJvZHk7XG5cbiAgLy8gU2V0IGN1c3RvbSBoZWFkaW5ncyBmb250XG4gIEBpZiAkY3VzdG9tLWZvbnQtaGVhZGluZ3MgIT0gJGN1c3RvbS1mb250LWJvZHkge1xuICAgICRmb250LWhlYWRpbmdzOiAkY3VzdG9tLWZvbnQtaGVhZGluZ3M7XG4gIH1cbn1cbiIsIi8vIEZsb2F0IGRlZmF1bHRzXG4uZmxvYXRMZWZ0IHtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyAkbWF4LXdpZHRoICsgNSArICdlbSd9KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxufVxuXG4uZmxvYXRDZW50ZXIge1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxufVxuXG4uZmxvYXRSaWdodCB7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3sgJG1heC13aWR0aCArIDUgKyAnZW0nfSkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQcmludFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuLyogVGhlc2Ugc3R5bGVzIGFyZSBpbnRlbmRlZCB0byBiZSBnbG9iYWwgKi9cbi8qXG5HdXRlbmJlcmc6IFdlYiBUeXBvZ3JhcGh5IFN0YXJ0ZXIgS2l0XG5XZWJzaXRlIC4uLi4uLi4gaHR0cDovL21hdGVqbGF0aW4uZ2l0aHViLmlvL0d1dGVuYmVyZy9cblZlcnNpb24gLi4uLi4uLiAxLjFcbkdpdGh1YiAuLi4uLi4uLiBodHRwczovL2dpdGh1Yi5jb20vbWF0ZWpsYXRpbi9HdXRlbmJlcmdcbkF1dGhvcnMgLi4uLi4uLiBNYXRlaiBMYXRpbiAoQG1hdGVqbGF0aW4pXG5MaWNlbnNlIC4uLi4uLi4gQ3JlYXRpdmUgQ29tbW1vbnMgQXR0cmlidXRpb24gMy4wXG5MaWNlbnNlIFVSTCAuLi4gaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL21hdGVqbGF0aW4vR3V0ZW5iZXJnL21hc3Rlci9saWNlbnNlLnR4dFxuKi9cbi8qIENvbmZpZ3VyYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBDYWxjdWxhdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBGb250IHRoZW1lc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZsb2F0TGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmxvYXRDZW50ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mbG9hdFJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLyogR3JpZFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5ncmlkLCAuZ3JpZC1kb3VibGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDE3MCwgMjU1LCAwLjMpIDFweCwgdHJhbnNwYXJlbnQgMXB4KTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAyNnB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMS42MjVyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLCAuZ3JpZC1kb3VibGUge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAzMXB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxLjcyMjIyMjIyMjJyZW07XG4gIH1cbn1cblxuLmdyaWQtZG91YmxlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAxNzAsIDI1NSwgMC4zKSAxcHgsIHRyYW5zcGFyZW50IDFweCwgdHJhbnNwYXJlbnQgMTNweCwgcmdiYSgwLCAxNzAsIDI1NSwgMC4yKSAxM3B4LCB0cmFuc3BhcmVudCAxNHB4LCB0cmFuc3BhcmVudCAyNnB4KTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtZG91YmxlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDE3MCwgMjU1LCAwLjMpIDFweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAxNS41cHgsIHJnYmEoMCwgMTcwLCAyNTUsIDAuMikgMTUuNXB4LCB0cmFuc3BhcmVudCAxNi41cHgsIHRyYW5zcGFyZW50IDMxcHgpO1xuICB9XG59XG5cbi50b2dnbGVXcmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAyNnB4O1xuICByaWdodDogMjZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIzMUYyMDtcbiAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgcGFkZGluZzogMCAxMHB4IDAgMjBweDtcbiAgaGVpZ2h0OiAzMnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudG9nZ2xlV3JhcHBlciB7XG4gICAgcmlnaHQ6IDMxcHg7XG4gICAgdG9wOiAzMXB4O1xuICB9XG59XG5cbi5idG5Ub2dnbGVHcmlkIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vLi4vYXNzZXRzL2ltYWdlcy9ncmlkLWljb25zLnBuZ1wiKSB0b3AgcmlnaHQgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDMycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYnRuVG9nZ2xlR3JpZCB7XG4gICAgdG9wOiAzMXB4O1xuICAgIHJpZ2h0OiAzMXB4O1xuICB9XG59XG4uYnRuVG9nZ2xlR3JpZDpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmJ0blRvZ2dsZUdyaWQ6YWN0aXZlIHtcbiAgY29sb3I6ICNmMDA7XG59XG5cbi5kb3VibGUtZ3JpZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogLTMycHg7XG59XG5cbi5ncmlkLW9mZiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogLTY0cHg7XG59XG5cbmFzaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIERlZmF1bHRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBib2R5LFxuaHRtbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGNvbG9yOiAjMjIyO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBodG1sIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuXG4qIHtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTtcbiAgbWFyZ2luOiAwcHggMHB4IDI2cHg7XG4gIG1hcmdpbjogMHJlbSAwcmVtIDEuNjI1cmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAqIHtcbiAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICBsaW5lLWhlaWdodDogMS43MjIyMjIyMjIycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDMxcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMS43MjIyMjIyMjIycmVtO1xuICAgIG1heC13aWR0aDogNjMwcHg7XG4gICAgbWF4LXdpZHRoOiAzNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5ib2R5ID4gZm9vdGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiA4MCU7XG59XG5cbmhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5hIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMjIyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbn1cbmE6YWN0aXZlLCBhOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cbmE6aG92ZXIge1xuICBjb2xvcjogIzIyMjtcbn1cbmE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjODg4O1xufVxuYTp2aXNpdGVkOmhvdmVyIHtcbiAgY29sb3I6ICMyMjI7XG59XG5hOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZjAwO1xufVxuXG5hcnRpY2xlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogODAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBhcnRpY2xlIHtcbiAgICBtYXgtd2lkdGg6IDk0NXB4O1xuICAgIG1heC13aWR0aDogNTIuNXJlbTtcbiAgfVxufVxuXG5hdWRpbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xufVxuXG5jb2RlIHtcbiAgcGFkZGluZzogMjZweDtcbiAgcGFkZGluZzogMS42MjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAzMXB4O1xuICAgIHBhZGRpbmc6IDEuNzIyMjIyMjIyMnJlbTtcbiAgfVxufVxuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuZmlnY2FwdGlvbiB7XG4gIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gIGNvbG9yOiAjMjIyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBmaWdjYXB0aW9uIHtcbiAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICBsaW5lLWhlaWdodDogMS43MjIyMjIyMjIycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgZmlndXJlLmZsb2F0TGVmdCxcbmZpZ3VyZS5mbG9hdFJpZ2h0IHtcbiAgICBtYXgtd2lkdGg6IDMxNXB4O1xuICAgIG1heC13aWR0aDogMTcuNXJlbTtcbiAgICBwYWRkaW5nOiAwcHggMzFweDtcbiAgICBwYWRkaW5nOiAwcmVtIDEuNzIyMjIyMjIyMnJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBmaWd1cmUuZmxvYXRMZWZ0IGJsb2NrcXVvdGUsXG5maWd1cmUuZmxvYXRSaWdodCBibG9ja3F1b3RlIHtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgcGFkZGluZzogMHJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGZpZ3VyZS5mbG9hdExlZnQgYmxvY2txdW90ZSBwLFxuZmlndXJlLmZsb2F0UmlnaHQgYmxvY2txdW90ZSBwIHtcbiAgICBmb250LXNpemU6IDE5LjJweDtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICBsaW5lLWhlaWdodDogMS43MjIyMjIyMjIycmVtO1xuICB9XG59XG5cbi8qIEhlYWRpbmdzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaDEge1xuICBmb250LXNpemU6IDQwcHg7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogNTJweDtcbiAgbGluZS1oZWlnaHQ6IDMuMjVyZW07XG4gIG1hcmdpbi10b3A6IDEwNHB4O1xuICBtYXJnaW4tdG9wOiA2LjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDI2cHg7XG4gIG1hcmdpbi1ib3R0b206IDEuNjI1cmVtO1xufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMjdweDtcbiAgZm9udC1zaXplOiAxLjY4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICBsaW5lLWhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW4tdG9wOiA2NXB4O1xuICBtYXJnaW4tdG9wOiA0LjA2MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEzcHg7XG4gIG1hcmdpbi1ib3R0b206IDAuODEyNXJlbTtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gIG1hcmdpbi10b3A6IDUycHg7XG4gIG1hcmdpbi10b3A6IDMuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEzcHg7XG4gIG1hcmdpbi1ib3R0b206IDAuODEyNXJlbTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IDE5LjJweDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICBsaW5lLWhlaWdodDogMS42MjVyZW07XG4gIG1hcmdpbi10b3A6IDM5cHg7XG4gIG1hcmdpbi10b3A6IDIuNDM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMTNweDtcbiAgbWFyZ2luLWJvdHRvbTogMC44MTI1cmVtO1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMjZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiA2NXB4O1xuICBtYXJnaW4tdG9wOiA0LjA2MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEzcHg7XG4gIG1hcmdpbi1ib3R0b206IDAuODEyNXJlbTtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjYyNXJlbTtcbiAgbWFyZ2luLXRvcDogNjVweDtcbiAgbWFyZ2luLXRvcDogNC4wNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuICBtYXJnaW4tYm90dG9tOiAwLjgxMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogNjJweDtcbiAgICBsaW5lLWhlaWdodDogMy40NDQ0NDQ0NDQ0cmVtO1xuICAgIG1hcmdpbi10b3A6IDEyNHB4O1xuICAgIG1hcmdpbi10b3A6IDYuODg4ODg4ODg4OXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEuNzIyMjIyMjIyMnJlbTtcbiAgfVxuXG4gIGgyIHtcbiAgICBmb250LXNpemU6IDI3cHg7XG4gICAgZm9udC1zaXplOiAxLjY4NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDQ2LjVweDtcbiAgICBsaW5lLWhlaWdodDogMi41ODMzMzMzMzMzcmVtO1xuICAgIG1hcmdpbi10b3A6IDc3LjVweDtcbiAgICBtYXJnaW4tdG9wOiA0LjMwNTU1NTU1NTZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMTUuNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDAuODYxMTExMTExMXJlbTtcbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICBsaW5lLWhlaWdodDogMS43MjIyMjIyMjIycmVtO1xuICAgIG1hcmdpbi10b3A6IDYycHg7XG4gICAgbWFyZ2luLXRvcDogMy40NDQ0NDQ0NDQ0cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDE1LjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjg2MTExMTExMTFyZW07XG4gIH1cblxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxOS4ycHg7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMxcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzIyMjIyMjIyMnJlbTtcbiAgICBtYXJnaW4tdG9wOiA0Ni41cHg7XG4gICAgbWFyZ2luLXRvcDogMi41ODMzMzMzMzMzcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDE1LjVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjg2MTExMTExMTFyZW07XG4gIH1cblxuICBoNSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICBsaW5lLWhlaWdodDogMS43MjIyMjIyMjIycmVtO1xuICAgIG1hcmdpbi10b3A6IDc3LjVweDtcbiAgICBtYXJnaW4tdG9wOiA0LjMwNTU1NTU1NTZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMTUuNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDAuODYxMTExMTExMXJlbTtcbiAgfVxuXG4gIGg2IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzMXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjcyMjIyMjIyMjJyZW07XG4gICAgbWFyZ2luLXRvcDogNzcuNXB4O1xuICAgIG1hcmdpbi10b3A6IDQuMzA1NTU1NTU1NnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNS41cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMC44NjExMTExMTExcmVtO1xuICB9XG59XG5oMSArIGgyIHtcbiAgbWFyZ2luLXRvcDogMjZweDtcbiAgbWFyZ2luLXRvcDogMS42MjVyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGgxICsgaDIge1xuICAgIG1hcmdpbi10b3A6IDMxcHg7XG4gICAgbWFyZ2luLXRvcDogMS43MjIyMjIyMjIycmVtO1xuICB9XG59XG5cbmgyICsgaDMsXG5oMyArIGg0LFxuaDQgKyBoNSB7XG4gIG1hcmdpbi10b3A6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDAuODEyNXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDIgKyBoMyxcbmgzICsgaDQsXG5oNCArIGg1IHtcbiAgICBtYXJnaW4tdG9wOiAxNS41cHg7XG4gICAgbWFyZ2luLXRvcDogMC44NjExMTExMTExcmVtO1xuICB9XG59XG5cbmg1ICsgaDYge1xuICBtYXJnaW4tdG9wOiAtMTNweDtcbiAgbWFyZ2luLXRvcDogLTAuODEyNXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDUgKyBoNiB7XG4gICAgbWFyZ2luLXRvcDogLTE1LjVweDtcbiAgICBtYXJnaW4tdG9wOiAtMC44NjExMTExMTExcmVtO1xuICB9XG59XG5cbmg2IHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5oZ3JvdXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuaHIge1xuICBtYXJnaW4tdG9wOiA1MnB4O1xuICBtYXJnaW4tdG9wOiAzLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiA1MnB4O1xuICBtYXJnaW4tYm90dG9tOiAzLjI1cmVtO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogIzIyMjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjZweDtcbiAgaGVpZ2h0OiAxLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDI2cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxLjYyNXJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAxMXB4LCAjMjIyIDExcHgsICMyMjIgMTVweCwgdHJhbnNwYXJlbnQgMTVweCwgdHJhbnNwYXJlbnQgMjZweCk7XG4gIHdpZHRoOiAxMDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaHIge1xuICAgIG1hcmdpbi10b3A6IDYycHg7XG4gICAgbWFyZ2luLXRvcDogMy40NDQ0NDQ0NDQ0cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDYycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMy40NDQ0NDQ0NDQ0cmVtO1xuICAgIGhlaWdodDogMzFweDtcbiAgICBoZWlnaHQ6IDEuNzIyMjIyMjIyMnJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBociB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDMxcHg7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEuNzIyMjIyMjIyMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50IDEzLjVweCwgIzIyMiAxMy41cHgsICMyMjIgMTcuNXB4LCB0cmFuc3BhcmVudCAxNy41cHgsIHRyYW5zcGFyZW50IDMxcHgpO1xuICB9XG59XG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBpbmhlcml0IGF1dG87XG59XG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxudWwgbGksXG5vbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbm5hdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBwYWRkaW5nLWxlZnQ6IDEuNDM3NXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgYmxvY2txdW90ZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICB9XG59XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5maWd1cmUgYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6IDI2cHggMHB4O1xuICBwYWRkaW5nOiAxLjYyNXJlbSAwcmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBmaWd1cmUgYmxvY2txdW90ZSB7XG4gICAgcGFkZGluZzogNjJweCAwcHggMzFweDtcbiAgICBwYWRkaW5nOiAzLjQ0NDQ0NDQ0NDRyZW0gMHJlbSAxLjcyMjIyMjIyMjJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5maWd1cmUgYmxvY2txdW90ZSBwIHtcbiAgZm9udC1zaXplOiAyN3B4O1xuICBmb250LXNpemU6IDEuNjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDM5cHg7XG4gIGxpbmUtaGVpZ2h0OiAyLjQzNzVyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGZpZ3VyZSBibG9ja3F1b3RlIHAge1xuICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgICBmb250LXNpemU6IDEuNjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogNDYuNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyLjU4MzMzMzMzMzNyZW07XG4gIH1cbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5iciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmFiYnIge1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmVtLFxuaSB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG5zbWFsbCB7XG4gIGxpbmUtaGVpZ2h0OiAxM3B4O1xuICBsaW5lLWhlaWdodDogMC44MTI1cmVtO1xuICBmb250LXNpemU6IDcwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAxNS41cHg7XG4gICAgbGluZS1oZWlnaHQ6IDAuODYxMTExMTExMXJlbTtcbiAgfVxufVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiBQYXJhZ3JhcGhcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYXR0ZW50aW9uLWdyYWJiZXIge1xuICBmb250LXNpemU6IDE5LjJweDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG59XG5cbi5hbGlnbkxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYWxpZ25DZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hbGlnblJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi51cHBlcmNhc2Uge1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qIFRPRE9zOlxuIC0gc29tZSBsaW5lIGhlaWdodHMgcHJvZHVjZSBtYXJnaW5zIHdpdGggLjUgcmVzdWx0cywgc2VlbWluZ2x5IGJyZWFraW5nIHRoZSBnaXJkICg/KSxcbiAtIHRhYmxlICsgc2lkZSBjb21tZW50cyBlbGVtZW50cyxcbiAtIHRyYW5zbGF0ZSB0byBMZXNzIGFuZCBTdHlsdXMuXG4gKi9cbi5idG5Ub2dnbGVHcmlkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvdmVuZG9yL2d1dGVuYmVyZy1ncmlkLWljb25zLnBuZ1wiKTtcbn1cblxuYVtocmVmXj1cIi8vXCJdOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICBmb250LXNpemU6IDgwJTtcbn0iLCIvKiBHcmlkXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBHcmlkIGJhY2tncm91bmRcbi5ncmlkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgaHNsYSgyMDAsIDEwMCUsIDUwJSwgLjMpIDFweCwgdHJhbnNwYXJlbnQgMXB4KTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAjeyRsZWFkaW5nICsgJ3B4J307XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAjeyRsZWFkaW5nLXJlbSArICdyZW0nfTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyAkbWF4LXdpZHRoICsgNSArICdlbSd9KSB7XG4gICAgJGxlYWRpbmc6ICRsZWFkaW5nLWRlc2t0b3A7XG4gICAgJGxlYWRpbmctcmVtOiAkbGVhZGluZy1yZW0tZGVza3RvcDtcblxuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAjeyRsZWFkaW5nICsgJ3B4J307XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlICN7JGxlYWRpbmctcmVtICsgJ3JlbSd9O1xuICB9XG5cbn1cblxuLy8gRG91YmxlIGdyaWQgYmFja2dyb3VuZFxuLmdyaWQtZG91YmxlIHtcbiAgQGV4dGVuZCAuZ3JpZDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgaHNsYSgyMDAsIDEwMCUsIDUwJSwgLjMpIDFweCwgdHJhbnNwYXJlbnQgMXB4LCB0cmFuc3BhcmVudCAjeyAuNSAqICRsZWFkaW5nICsgJ3B4J30sIGhzbGEoMjAwLCAxMDAlLCA1MCUsIC4yKSAjeyAuNSAqICRsZWFkaW5nICsgJ3B4J30sIHRyYW5zcGFyZW50ICN7IC41ICogJGxlYWRpbmcgKyAxICsgJ3B4J30sIHRyYW5zcGFyZW50ICN7JGxlYWRpbmcgKyAncHgnfSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3sgJG1heC13aWR0aCArIDUgKyAnZW0nfSkge1xuICAgICRsZWFkaW5nOiAkbGVhZGluZy1kZXNrdG9wO1xuICAgICRsZWFkaW5nLXJlbTogJGxlYWRpbmctcmVtLWRlc2t0b3A7XG5cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBoc2xhKDIwMCwgMTAwJSwgNTAlLCAuMykgMXB4LCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50ICN7IC41ICogJGxlYWRpbmcgKyAncHgnfSwgIGhzbGEoMjAwLCAxMDAlLCA1MCUsIC4yKSAjeyAuNSAqICRsZWFkaW5nICsgJ3B4J30sIHRyYW5zcGFyZW50ICN7IDAuNSAqICRsZWFkaW5nICsgMSArICdweCd9LCB0cmFuc3BhcmVudCAjeyRsZWFkaW5nICsgJ3B4J30pO1xuICB9XG5cbn1cblxuLy8gR3JpZCBidXR0b25cbi50b2dnbGVXcmFwcGVyIHtcbiAgQGlmICRlZGl0LW1vZGUgPT0gdHJ1ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH0gQGVsc2UgaWYgJGVkaXQtbW9kZSA9PSBmYWxzZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogI3skbGVhZGluZyArICdweCd9O1xuICByaWdodDogI3skbGVhZGluZyArICdweCd9O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjMxRjIwO1xuICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICBwYWRkaW5nOiAwIDEwcHggMCAyMHB4O1xuICBoZWlnaHQ6IDMycHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3sgJG1heC13aWR0aCArIDUgKyAnZW0nfSkge1xuICAgIHJpZ2h0OiAjeyRsZWFkaW5nLWRlc2t0b3AgKyAncHgnfTtcbiAgICB0b3A6ICN7JGxlYWRpbmctZGVza3RvcCArICdweCd9O1xuICB9XG5cbn1cblxuLmJ0blRvZ2dsZUdyaWQge1xuICBiYWNrZ3JvdW5kOiB1cmwoJy4uLy4uL2Fzc2V0cy9pbWFnZXMvZ3JpZC1pY29ucy5wbmcnKSB0b3AgcmlnaHQgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDMycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBsaW5lLWhlaWdodDogMzRweDtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZmZmO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gICAgdG9wOiAjeyRsZWFkaW5nICsgJ3B4J307XG4gICAgcmlnaHQ6ICN7JGxlYWRpbmcgKyAncHgnfTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAjZjAwO1xuICB9XG59XG5cbi5kb3VibGUtZ3JpZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogLTMycHg7XG59XG5cbi5ncmlkLW9mZiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogLTY0cHg7XG59XG4iLCJhc2lkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLyogRGVmYXVsdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmJvZHksXG5odG1sIHtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyAkbWF4LXdpZHRoICsgNSArICdlbSd9KSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG59XG5cbi8vIEZvbnQgZGVmYXVsdHNcbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6ICN7JGJhc2UgKyAncHgnfTtcbiAgZm9udC1zaXplOiAjeyRiYXNlLWZvbnQtc2l6ZSArICclJ307XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1ib2R5O1xuICBjb2xvcjogJGNvbG9yLWZvbnQtYm9keTtcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyAkbWF4LXdpZHRoICsgNSArICdlbSd9KSB7XG4gICAgZm9udC1zaXplOiAjeyRiYXNlLWRlc2t0b3AgKyAncHgnfTtcbiAgICBmb250LXNpemU6ICN7JGJhc2UtZm9udC1zaXplLWRlc2t0b3AgLyAxMDAgKyAncmVtJ307XG4gIH1cblxufVxuXG4vLyBMaW5lLWhlaWdodCAmIG1hcmdpbiByZXNldFxuKiB7XG4gIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDEpO1xuICBAaW5jbHVkZSBtYXJnaW4oMCwgMCwgMSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3sgJG1heC13aWR0aCArIDUgKyAnZW0nfSkge1xuICAgICRsZWFkaW5nOiAkbGVhZGluZy1kZXNrdG9wO1xuICAgICRsZWFkaW5nLXJlbTogJGxlYWRpbmctcmVtLWRlc2t0b3A7XG5cbiAgICBAaW1wb3J0ICcuLi9taXhpbnMvbGluZS1oZWlnaHQnO1xuICAgIEBpbXBvcnQgJy4uL21peGlucy9tYXJnaW4nO1xuXG4gICAgQGluY2x1ZGUgbGluZS1oZWlnaHQoMSk7XG4gICAgQGluY2x1ZGUgbWFyZ2luLWJvdHRvbSgxKTtcbiAgICBtYXgtd2lkdGg6ICN7JG1heC13aWR0aCAqICRiYXNlLWRlc2t0b3AgKyAncHgnfTtcbiAgICBtYXgtd2lkdGg6ICN7JG1heC13aWR0aCArICdyZW0nfTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuIiwiLy8gTGluZS1oZWlnaHRcbkBtaXhpbiBsaW5lLWhlaWdodCgkbnVtYmVyKSB7XG4gIGxpbmUtaGVpZ2h0OiAjeyAkbnVtYmVyICogJGxlYWRpbmcgKyAncHgnfTtcbiAgbGluZS1oZWlnaHQ6ICN7ICRudW1iZXIgKiAkbGVhZGluZy1yZW0gKyAncmVtJ307XG59XG4iLCIvLyBNYXJnaW4tdG9wXG5AbWl4aW4gbWFyZ2luLXRvcCgkbnVtYmVyKSB7XG4gIG1hcmdpbi10b3A6ICN7ICRudW1iZXIgKiAkbGVhZGluZyArICdweCd9O1xuICBtYXJnaW4tdG9wOiAjeyAkbnVtYmVyICogJGxlYWRpbmctcmVtICsgJ3JlbSd9O1xufVxuXG4vLyBNYXJnaW4tYm90dG9tXG5AbWl4aW4gbWFyZ2luLWJvdHRvbSgkbnVtYmVyKSB7XG4gIG1hcmdpbi1ib3R0b206ICN7ICRudW1iZXIgKiAkbGVhZGluZyArICdweCd9O1xuICBtYXJnaW4tYm90dG9tOiAjeyAkbnVtYmVyICogJGxlYWRpbmctcmVtICsgJ3JlbSd9O1xufVxuXG4vLyBNYXJnaW5cbkBtaXhpbiBtYXJnaW4oJHRvcCwgJHJpZ2h0LCAkYm90dG9tOm51bGwsICRsZWZ0Om51bGwpIHtcbiAgQGlmICRsZWZ0ID09IG51bGwgYW5kICRib3R0b20gPT0gbnVsbCB7XG4gICAgbWFyZ2luOiAjeyAkdG9wICogJGxlYWRpbmcgKyAncHgnfSAjeyAkcmlnaHQgKiAkbGVhZGluZyArICdweCd9O1xuICAgIG1hcmdpbjogI3sgJHRvcCAqICRsZWFkaW5nLXJlbSArICdyZW0nfSAjeyAkcmlnaHQgKiAkbGVhZGluZy1yZW0gKyAncmVtJ307XG4gIH0gQGVsc2UgaWYgJGxlZnQgPT0gbnVsbCBvciAkbGVmdCA9PSAkcmlnaHQge1xuICAgIG1hcmdpbjogI3sgJHRvcCAqICRsZWFkaW5nICsgJ3B4J30gI3sgJHJpZ2h0ICogJGxlYWRpbmcgKyAncHgnfSAjeyAkYm90dG9tICogJGxlYWRpbmcgKyAncHgnfTtcbiAgICBtYXJnaW46ICN7ICR0b3AgKiAkbGVhZGluZy1yZW0gKyAncmVtJ30gI3sgJHJpZ2h0ICogJGxlYWRpbmctcmVtICsgJ3JlbSd9ICN7ICRib3R0b20gKiAkbGVhZGluZy1yZW0gKyAncmVtJ307XG4gIH0gQGVsc2Uge1xuICAgIG1hcmdpbjogI3sgJHRvcCAqICRsZWFkaW5nICsgJ3B4J30gI3sgJHJpZ2h0ICogJGxlYWRpbmcgKyAncHgnfSAjeyAkYm90dG9tICogJGxlYWRpbmcgKyAncHgnfSAjeyAkbGVmdCAqICRsZWFkaW5nICsgJ3B4J307XG4gICAgbWFyZ2luOiAjeyAkdG9wICogJGxlYWRpbmctcmVtICsgJ3JlbSd9ICN7ICRyaWdodCAqICRsZWFkaW5nLXJlbSArICdyZW0nfSAjeyAkYm90dG9tICogJGxlYWRpbmctcmVtICsgJ3JlbSd9ICN7ICRsZWZ0ICogJGxlYWRpbmctcmVtICsgJ3JlbSd9O1xuICB9XG59XG4iLCJmb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcblxuICBib2R5ID4gJiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDgwJTtcbiAgfVxuXG59XG4iLCJoZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsInNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4kY29sb3ItbGluay1ub3JtYWw6ICRjb2xvci1mb250LWJvZHk7XG4kY29sb3ItbGluay1ob3ZlcjogJGNvbG9yLWZvbnQtYm9keTtcbiRjb2xvci1saW5rLWFjdGl2ZTogI2YwMDtcbiRjb2xvci1saW5rLXZpc2l0ZWQ6ICRjb2xvci1mb250LWxpZ2h0O1xuXG5hIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItbGluay1ub3JtYWw7XG4gIHRyYW5zaXRpb246IGFsbCAuM3M7XG5cbiAgJjphY3RpdmUsXG4gICY6aG92ZXIge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yLWxpbmstaG92ZXI7XG4gIH1cblxuICAmOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAkY29sb3ItbGluay12aXNpdGVkO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yLWxpbmstaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkY29sb3ItbGluay1hY3RpdmU7XG4gIH1cbn1cbiIsImFydGljbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiA4MCU7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3sgJG1heC13aWR0aCArIDUgKyAnZW0nfSkge1xuICAgIG1heC13aWR0aDogI3sxLjUgKiAkbWF4LXdpZHRoICogJGJhc2UtZGVza3RvcCArICdweCd9O1xuICAgIG1heC13aWR0aDogI3sxLjUgKiAkbWF4LXdpZHRoICsgJ3JlbSd9O1xuICB9XG5cbn1cbiIsImF1ZGlvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgJjpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG5cbn1cbiIsImNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuIiwiLy8gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLy8gQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG59XG5cbmNvZGUge1xuICBAaW5jbHVkZSBwYWRkaW5nLWVxdWFsKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gICAgQGltcG9ydCAnLi4vbWl4aW5zL3BhZGRpbmcnO1xuXG4gICAgQGluY2x1ZGUgcGFkZGluZy1lcXVhbCgxKTtcbiAgfVxuXG59XG4iLCIvLyBwYWRkaW5nXG5AbWl4aW4gcGFkZGluZygkdG9wLCAkcmlnaHQsICRib3R0b206bnVsbCwgJGxlZnQ6bnVsbCkge1xuICBAaWYgJGxlZnQgPT0gbnVsbCBhbmQgJGJvdHRvbSA9PSBudWxsIHtcbiAgICBwYWRkaW5nOiAjeyAkdG9wICogJGxlYWRpbmcgKyAncHgnfSAjeyAkcmlnaHQgKiAkbGVhZGluZyArICdweCd9O1xuICAgIHBhZGRpbmc6ICN7ICR0b3AgKiAkbGVhZGluZy1yZW0gKyAncmVtJ30gI3sgJHJpZ2h0ICogJGxlYWRpbmctcmVtICsgJ3JlbSd9O1xuICB9IEBlbHNlIGlmICRsZWZ0ID09IG51bGwgb3IgJGxlZnQgPT0gJHJpZ2h0IHtcbiAgICBwYWRkaW5nOiAjeyAkdG9wICogJGxlYWRpbmcgKyAncHgnfSAjeyAkcmlnaHQgKiAkbGVhZGluZyArICdweCd9ICN7ICRib3R0b20gKiAkbGVhZGluZyArICdweCd9O1xuICAgIHBhZGRpbmc6ICN7ICR0b3AgKiAkbGVhZGluZy1yZW0gKyAncmVtJ30gI3sgJHJpZ2h0ICogJGxlYWRpbmctcmVtICsgJ3JlbSd9ICN7ICRib3R0b20gKiAkbGVhZGluZy1yZW0gKyAncmVtJ307XG4gIH0gQGVsc2Uge1xuICAgIHBhZGRpbmc6ICN7ICR0b3AgKiAkbGVhZGluZyArICdweCd9ICN7ICRyaWdodCAqICRsZWFkaW5nICsgJ3B4J30gI3sgJGJvdHRvbSAqICRsZWFkaW5nICsgJ3B4J30gI3sgJGxlZnQgKiAkbGVhZGluZyArICdweCd9O1xuICAgIHBhZGRpbmc6ICN7ICR0b3AgKiAkbGVhZGluZy1yZW0gKyAncmVtJ30gI3sgJHJpZ2h0ICogJGxlYWRpbmctcmVtICsgJ3JlbSd9ICN7ICRib3R0b20gKiAkbGVhZGluZy1yZW0gKyAncmVtJ30gI3sgJGxlZnQgKiAkbGVhZGluZy1yZW0gKyAncmVtJ307XG4gIH1cblxuICAvLyBwYWRkaW5nLXRvcDogI3sgJHRvcCAqICRsZWFkaW5nICsgJ3B4J307XG4gLy8gICAgcGFkZGluZy10b3A6ICN7ICR0b3AgKiAkbGVhZGluZy1yZW0gKyAncmVtJ307XG4gLy8gICAgcGFkZGluZy1yaWdodDogI3sgJHJpZ2h0ICogJGxlYWRpbmcgKyAncHgnfTtcbiAvLyAgICBwYWRkaW5nLXJpZ2h0OiAjeyAkcmlnaHQgKiAkbGVhZGluZy1yZW0gKyAncmVtJ307XG4gIC8vIHBhZGRpbmctYm90dG9tOiAjeyAkYm90dG9tICogJGxlYWRpbmcgKyAncHgnfTtcbiAvLyAgICBwYWRkaW5nLWJvdHRvbTogI3sgJGJvdHRvbSAqICRsZWFkaW5nLXJlbSArICdyZW0nfTtcbiAvLyAgICBwYWRkaW5nLWxlZnQ6ICN7ICRsZWZ0ICogJGxlYWRpbmcgKyAncHgnfTtcbiAvLyAgICBwYWRkaW5nLWxlZnQ6ICN7ICRsZWZ0ICogJGxlYWRpbmctcmVtICsgJ3JlbSd9O1xufVxuXG5AbWl4aW4gcGFkZGluZy1lcXVhbCgkbnVtYmVyKSB7XG4gIHBhZGRpbmc6ICN7ICRudW1iZXIgKiAkbGVhZGluZyArICdweCd9O1xuICBwYWRkaW5nOiAjeyAkbnVtYmVyICogJGxlYWRpbmctcmVtICsgJ3JlbSd9O1xufVxuIiwiZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCJmaWdjYXB0aW9uIHtcbiAgQGluY2x1ZGUgbGluZS1oZWlnaHQoMSk7XG4gIGNvbG9yOiAkY29sb3ItZm9udC1maWdjYXB0aW9uO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3sgJG1heC13aWR0aCArIDUgKyAnZW0nfSkge1xuICAgICRsZWFkaW5nOiAkbGVhZGluZy1kZXNrdG9wO1xuICAgICRsZWFkaW5nLXJlbTogJGxlYWRpbmctcmVtLWRlc2t0b3A7XG5cbiAgICBAaW1wb3J0ICcuLi9taXhpbnMvbGluZS1oZWlnaHQnO1xuXG4gICAgQGluY2x1ZGUgbGluZS1oZWlnaHQoMSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG59XG5cbmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5maWd1cmUuZmxvYXRMZWZ0LFxuZmlndXJlLmZsb2F0UmlnaHQge1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gICAgQGltcG9ydCAnLi4vbWl4aW5zL21hcmdpbic7XG4gICAgQGltcG9ydCAnLi4vbWl4aW5zL3BhZGRpbmcnO1xuXG4gICAgbWF4LXdpZHRoOiAjey41ICogJG1heC13aWR0aCAqICRiYXNlLWRlc2t0b3AgKyAncHgnfTtcbiAgICBtYXgtd2lkdGg6ICN7LjUgKiAkbWF4LXdpZHRoICsgJ3JlbSd9O1xuXG4gICAgQGlmICRwYXJhZ3JhcGgtaW5kZW50ID09IHRydWUge1xuICAgICAgQGluY2x1ZGUgcGFkZGluZy1lcXVhbCgxKTtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi1ib3R0b20oMCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBwYWRkaW5nKDAsIDEpO1xuICAgIH1cblxuICB9XG5cbiAgYmxvY2txdW90ZSB7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyAkbWF4LXdpZHRoICsgNSArICdlbSd9KSB7XG4gICAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAgICRsZWFkaW5nLXJlbTogJGxlYWRpbmctcmVtLWRlc2t0b3A7XG5cbiAgICAgIEBpbXBvcnQgJy4uL21peGlucy9tYXJnaW4nO1xuICAgICAgQGltcG9ydCAnLi4vbWl4aW5zL3BhZGRpbmcnO1xuXG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLWVxdWFsKDApO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgQGlmICRwYXJhZ3JhcGgtaW5kZW50ID09IHRydWUge1xuICAgICAgICBAaW5jbHVkZSBtYXJnaW4tdG9wKDEpO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgcCB7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAgICAgJGxlYWRpbmc6ICRsZWFkaW5nLWRlc2t0b3A7XG4gICAgICAgICRsZWFkaW5nLXJlbTogJGxlYWRpbmctcmVtLWRlc2t0b3A7XG5cbiAgICAgICAgQGltcG9ydCAnLi4vbWl4aW5zL2ZvbnQtc2l6ZSc7XG4gICAgICAgIEBpbXBvcnQgJy4uL21peGlucy9saW5lLWhlaWdodCc7XG5cbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKDEuMik7XG4gICAgICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KDEpO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxufVxuIiwiLy8gRm9udC1zaXplXG5AbWl4aW4gZm9udC1zaXplKCRudW1iZXIpIHtcbiAgZm9udC1zaXplOiAjeyAkbnVtYmVyICogJGJhc2UgKyAncHgnfTtcbiAgZm9udC1zaXplOiAjeyAkbnVtYmVyICsgJ3JlbSd9O1xufVxuIiwiLyogSGVhZGluZ3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8vIEhlYWRpbmdzIE9wdGlvbnNcbi8vIFsgaDE6IHNpemUgKGluIHJlbSksIGxpbmUgaGVpZ2h0ICgqIGxlYWRpbmcpLCBtYXJnaW4gdG9wICgqIGxlYWRpbmcpLCBtYXJnaW4gYm90dG9tICgqIGxlYWRpbmcpIF1cbiRoZWFkaW5nczogKFxuICBoMTogKDIuNSwgMiwgNCwgMSksXG4gIGgyOiAoMS42ODc1LCAxLjUsIDIuNSwgLjUpLFxuICBoMzogKDEuMzc1LCAxLCAyLCAuNSksXG4gIGg0OiAoMS4yLCAxLCAxLjUsIC41KSxcbiAgaDU6ICgxLCAxLCAyLjUsIC41KSxcbiAgaDY6ICgxLCAxLCAyLjUsIC41KVxuKSAhZGVmYXVsdDtcblxuLy8gU2V0IGhlYWRpbmdzIHNpemVzLCBsaW5lLWhlaWdodHMgYW5kIG1hcmdpbnNcbkBlYWNoICRoZWFkaW5nLCAkcHJvcGVydGllcyBpbiAkaGVhZGluZ3Mge1xuICAjeyRoZWFkaW5nfSB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KG50aCgkcHJvcGVydGllcywgMikpO1xuICAgIEBpbmNsdWRlIG1hcmdpbi10b3AobnRoKCRwcm9wZXJ0aWVzLCAzKSk7XG4gICAgQGluY2x1ZGUgbWFyZ2luLWJvdHRvbShudGgoJHByb3BlcnRpZXMsIDQpKTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyAkbWF4LXdpZHRoICsgNSArICdlbSd9KSB7XG4gICRsZWFkaW5nOiAkbGVhZGluZy1kZXNrdG9wO1xuICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gIEBpbXBvcnQgJy4uL21peGlucy9mb250LXNpemUnO1xuICBAaW1wb3J0ICcuLi9taXhpbnMvbGluZS1oZWlnaHQnO1xuICBAaW1wb3J0ICcuLi9taXhpbnMvbWFyZ2luJztcblxuICBAZWFjaCAkaGVhZGluZywgJHByb3BlcnRpZXMgaW4gJGhlYWRpbmdzIHtcbiAgICAjeyRoZWFkaW5nfSB7XG4gICAgICBAaW5jbHVkZSBmb250LXNpemUobnRoKCRwcm9wZXJ0aWVzLCAxKSk7XG4gICAgICBAaW5jbHVkZSBsaW5lLWhlaWdodChudGgoJHByb3BlcnRpZXMsIDIpKTtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi10b3AobnRoKCRwcm9wZXJ0aWVzLCAzKSk7XG4gICAgICBAaW5jbHVkZSBtYXJnaW4tYm90dG9tKG50aCgkcHJvcGVydGllcywgNCkpO1xuICAgIH1cbiAgfVxuXG59XG5cbi8vIFNldCBtYXJnaW5zIGJldHdlZW4gaGVhZGluZ3NcbmgxICsgaDIge1xuICBAaW5jbHVkZSBtYXJnaW4tdG9wKDEpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gICAgQGltcG9ydCAnLi4vbWl4aW5zL21hcmdpbic7XG5cbiAgICBAaW5jbHVkZSBtYXJnaW4tdG9wKDEpO1xuICB9XG5cbn1cblxuaDIgKyBoMyxcbmgzICsgaDQsXG5oNCArIGg1IHtcbiAgQGluY2x1ZGUgbWFyZ2luLXRvcCguNSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3sgJG1heC13aWR0aCArIDUgKyAnZW0nfSkge1xuICAgICRsZWFkaW5nOiAkbGVhZGluZy1kZXNrdG9wO1xuICAgICRsZWFkaW5nLXJlbTogJGxlYWRpbmctcmVtLWRlc2t0b3A7XG5cbiAgICBAaW1wb3J0ICcuLi9taXhpbnMvbWFyZ2luJztcblxuICAgIEBpbmNsdWRlIG1hcmdpbi10b3AoLjUpO1xuICB9XG5cbn1cblxuaDUgKyBoNiB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoLS41KTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyAkbWF4LXdpZHRoICsgNSArICdlbSd9KSB7XG4gICAgJGxlYWRpbmc6ICRsZWFkaW5nLWRlc2t0b3A7XG4gICAgJGxlYWRpbmctcmVtOiAkbGVhZGluZy1yZW0tZGVza3RvcDtcblxuICAgIEBpbXBvcnQgJy4uL21peGlucy9tYXJnaW4nO1xuXG4gICAgQGluY2x1ZGUgbWFyZ2luLXRvcCgtLjUpO1xuICB9XG5cbn1cblxuaDYge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi8vIENoYW5nZSBoZWFkaW5ncyBmb250IGlmIGEgaGVhZGluZyBmb250IGlzIHNldFxuQGlmICRmb250LWhlYWRpbmdzICE9IG51bGwge1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtaGVhZGluZ3M7XG4gIH1cbn1cblxuaGdyb3VwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIvLyBIb3Jpem9udGFsIHJ1bGVcbiRoci1zdHlsZTogbGluZTsgLy8gWyBsaW5lIC8gdHlwZSBdXG4kaHItdHlwZS1jb250ZW50OiAnKioqJzsgLy8gWyAnKioqJyBdXG4kaHItdHlwZS1jaGFyLXNwYWNpbmc6IC4yZW07IC8vIFsgLjJlbSBdXG4kaHItbWFyZ2luOiAyO1xuJGhyLW1hcmdpbi1kZXNrdG9wOiAkaHItbWFyZ2luO1xuJGhyLWNvbG9yOiAkY29sb3ItZm9udC1ib2R5O1xuJGhyLXdpZHRoOiAxMDA7IC8vIFsgMTAwIF0g4oCUIEluIHBpeGVscywgb25seSBmb3IgbGluZSBzdHlsZVxuJGhyLWhlaWdodDogNDsgLy8gWyAyIF0g4oCUIEluIHBpeGVscywgb25seSBmb3IgbGluZSBzdHlsZVxuXG5ociB7XG4gIEBpbmNsdWRlIG1hcmdpbi10b3AoJGhyLW1hcmdpbik7XG4gIEBpbmNsdWRlIG1hcmdpbi1ib3R0b20oJGhyLW1hcmdpbik7XG5cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICRoci1jb2xvcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogI3skbGVhZGluZyArICdweCd9O1xuICBoZWlnaHQ6ICN7JGxlYWRpbmctcmVtICsgJ3JlbSd9O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gICAgQGltcG9ydCAnLi4vbWl4aW5zL21hcmdpbic7XG5cbiAgICBAaW5jbHVkZSBtYXJnaW4tdG9wKCRoci1tYXJnaW4pO1xuICAgIEBpbmNsdWRlIG1hcmdpbi1ib3R0b20oJGhyLW1hcmdpbik7XG4gICAgaGVpZ2h0OiAjeyRsZWFkaW5nICsgJ3B4J307XG4gICAgaGVpZ2h0OiAjeyRsZWFkaW5nLXJlbSArICdyZW0nfTtcbiAgfVxuXG4gIEBpZiAkaHItc3R5bGUgPT0gJ2xpbmUnIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgI3skbGVhZGluZyArICdweCd9O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAjeyRsZWFkaW5nLXJlbSArICdyZW0nfTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50ICN7IDAuNSAqICRsZWFkaW5nIC0gKDAuNSAqICRoci1oZWlnaHQpICsgJ3B4J30sICAkaHItY29sb3IgI3sgMC41ICogJGxlYWRpbmcgLSAoMC41ICogJGhyLWhlaWdodCkgKyAncHgnfSwgJGhyLWNvbG9yICN7ICgwLjUgKiAkbGVhZGluZyAgLSAoMC41ICogJGhyLWhlaWdodCkpICsgJGhyLWhlaWdodCArICdweCd9LCB0cmFuc3BhcmVudCAjeyAoMC41ICogJGxlYWRpbmcgIC0gKDAuNSAqICRoci1oZWlnaHQpKSArICRoci1oZWlnaHQgKyAncHgnfSwgdHJhbnNwYXJlbnQgI3skbGVhZGluZyArICdweCd9KTtcblxuICAgIEBpZiAkaHItd2lkdGggPT0gbnVsbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHdpZHRoOiAjeyRoci13aWR0aCArICdweCd9O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuICAgICRoci1tYXJnaW46ICRoci1tYXJnaW4tZGVza3RvcDtcblxuICAgIEBpZiAkaHItc3R5bGUgPT0gJ2xpbmUnIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAjeyRsZWFkaW5nICsgJ3B4J307XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgI3skbGVhZGluZy1yZW0gKyAncmVtJ307XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB0cmFuc3BhcmVudCAxcHgsIHRyYW5zcGFyZW50ICN7IC41ICogJGxlYWRpbmcgLSAoLjUgKiAkaHItaGVpZ2h0KSArICdweCd9LCAkaHItY29sb3IgI3sgLjUgKiAkbGVhZGluZyAtICguNSAqICRoci1oZWlnaHQpICsgJ3B4J30sICRoci1jb2xvciAjeyAoLjUgKiAkbGVhZGluZyAtICguNSAqICRoci1oZWlnaHQpKSArICRoci1oZWlnaHQgKyAncHgnfSwgdHJhbnNwYXJlbnQgI3sgKC41ICogJGxlYWRpbmcgLSAoLjUgKiAkaHItaGVpZ2h0KSkgKyAkaHItaGVpZ2h0ICsgJ3B4J30sIHRyYW5zcGFyZW50ICN7JGxlYWRpbmcgKyAncHgnfSk7XG4gICAgfVxuXG4gIH1cblxuICBAaWYgJGhyLXN0eWxlID09ICd0eXBlJyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGhyLXR5cGUtY29udGVudDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAkaHItdHlwZS1jaGFyLXNwYWNpbmc7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbmltZyB7XG4gIGJvcmRlcjogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBpbmhlcml0IGF1dG87XG59XG5cbi8vIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuIiwiLy8gTGlzdHNcbnVsLFxub2wge1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbn1cbiIsIm5hdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuIiwicHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbiIsImJsb2NrcXVvdGUge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHBhZGRpbmctbGVmdDogMS40Mzc1cmVtO1xuICAvLyBmb250LXNpemU6IDk1JTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAjeyAkbWF4LXdpZHRoICsgNSArICdlbSd9KSB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICB9XG5cbn1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFF1b3Rlc1xuZmlndXJlIGJsb2NrcXVvdGUge1xuICBAaW5jbHVkZSBwYWRkaW5nKDEsIDApO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gICAgQGltcG9ydCAnLi4vbWl4aW5zL3BhZGRpbmcnO1xuXG4gICAgQGluY2x1ZGUgcGFkZGluZygyLCAwLCAxKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBwIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoMS42ODc1KTtcbiAgICBAaW5jbHVkZSBsaW5lLWhlaWdodCgxLjUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogI3sgJG1heC13aWR0aCArIDUgKyAnZW0nfSkge1xuICAgICAgJGxlYWRpbmc6ICRsZWFkaW5nLWRlc2t0b3A7XG4gICAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gICAgICBAaW1wb3J0ICcuLi9taXhpbnMvZm9udC1zaXplJztcbiAgICAgIEBpbXBvcnQgJy4uL21peGlucy9saW5lLWhlaWdodCc7XG5cbiAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjY4NzUpO1xuICAgICAgQGluY2x1ZGUgbGluZS1oZWlnaHQoMS41KTtcbiAgICB9XG5cbiAgfVxuXG59XG4iLCIvLyBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbn1cbiIsIltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLy8gQ2xlYXIgbWFyZ2luIGZvciBsaW5lIGJyZWFrc1xuYnIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLy8gRW5hYmxlIHNtYWxsIGNhcHMgaWYgYXZhaWxhYmxlICYgZml4IGxldHRlciBzcGFjaW5nXG5hYmJyIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xufVxuXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8vIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy8gQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vLyBQcmV2ZW50IGBlbWAgYW5kIGBpYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG5lbSxcbmkge1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgbGluZS1oZWlnaHQoLjUpO1xuXG4gIGZvbnQtc2l6ZTogNzAlO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAkbGVhZGluZzogJGxlYWRpbmctZGVza3RvcDtcbiAgICAkbGVhZGluZy1yZW06ICRsZWFkaW5nLXJlbS1kZXNrdG9wO1xuXG4gICAgQGltcG9ydCAnLi4vbWl4aW5zL2xpbmUtaGVpZ2h0JztcblxuICAgIEBpbmNsdWRlIGxpbmUtaGVpZ2h0KC41KTtcbiAgfVxuXG59XG5cbi8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIFBhcmFncmFwaFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGlmICRwYXJhZ3JhcGgtaW5kZW50ID09IHRydWUge1xuXG4gIHAgKyBwIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4tdG9wKC0xKTtcbiAgICB0ZXh0LWluZGVudDogI3sgJGxlYWRpbmcgKyAncHgnfTtcbiAgICB0ZXh0LWluZGVudDogI3sgJGxlYWRpbmctcmVtICsgJ3JlbSd9O1xuXG4gIH1cblxuICAuZmxvYXRMZWZ0ICsgcCxcbiAgLmZsb2F0UmlnaHQgKyBwIHtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgICAgICRsZWFkaW5nOiAkbGVhZGluZy1kZXNrdG9wO1xuICAgICAgJGxlYWRpbmctcmVtOiAkbGVhZGluZy1yZW0tZGVza3RvcDtcblxuICAgICAgdGV4dC1pbmRlbnQ6ICN7ICRsZWFkaW5nICsgJ3B4J307XG4gICAgICB0ZXh0LWluZGVudDogI3sgJGxlYWRpbmctcmVtICsgJ3JlbSd9O1xuICAgIH1cblxuICB9XG5cbiAgLmF0dGVudGlvbi1ncmFiYmVyICsgcCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgfVxufVxuXG4vLyBBdHRlbnRpb24gZ3JhYmJlclxuLmF0dGVudGlvbi1ncmFiYmVyIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKDEuMik7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7ICRtYXgtd2lkdGggKyA1ICsgJ2VtJ30pIHtcbiAgJGxlYWRpbmc6ICRsZWFkaW5nLWRlc2t0b3A7XG4gICRsZWFkaW5nLXJlbTogJGxlYWRpbmctcmVtLWRlc2t0b3A7XG5cbiAgQGltcG9ydCAnLi4vbWl4aW5zL21hcmdpbic7XG5cbiAgQGlmICRwYXJhZ3JhcGgtaW5kZW50ID09IHRydWUge1xuXG4gICAgcCArIHAsXG4gICAgLmZsb2F0TGVmdCArIHAsXG4gICAgLmZsb2F0UmlnaHQgKyBwIHtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi10b3AoLTEpO1xuICAgIH1cblxuICB9XG5cbn1cblxuLy8gVGV4dCBBbGlnbm1lbnRcbi5hbGlnbkxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uYWxpZ25DZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hbGlnblJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi8vIEZpeCBsZXR0ZXIgc3BhY2luZyBmb3IgdXBwZXJjYXNlXG4udXBwZXJjYXNlIHtcbiAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4iLCJ2aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuIl19 */
