@charset "UTF-8";
/*
Theme Name: MarielineGauthier
Author: Angèle Tenot
Author URI: http://www.mademoiselle-angele.fr/
Description: new website Theme for Marie-Line Gauthier
Version: 1.0
License: Custom Client Theme. Should not be distributed.
*/
/*------------------------------------*\
    # Settings, Functions...
\*------------------------------------*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */
@import url("https://fonts.googleapis.com/css2?family=Libre+Bodoni:ital,wght@0,400..700;1,400..700&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap");
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
/*
svg:not(:root) {
  overflow: hidden;
}
*/
/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type=checkbox],
input[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  box-sizing: content-box; /* 2 */
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
gu

/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

.txtXS, .txtS, .txtM, .txtL, .txtXL, .txtXXL, h6, h5, h4, h3, h2, h1 {
  margin: 0 0 1.25rem 0;
  font-family: "Libre Bodoni", serif;
  line-height: 1.25em;
  font-weight: 400;
  color: #212121;
  text-rendering: optimizeLegibility;
}
.txtXS:first-child, .txtS:first-child, .txtM:first-child, .txtL:first-child, .txtXL:first-child, .txtXXL:first-child, h6:first-child, h5:first-child, h4:first-child, h3:first-child, h2:first-child, h1:first-child {
  margin-top: 0;
}

.u-txtTruncate {
  max-width: 100%;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  word-wrap: normal !important;
}

/*------------------------------------*\
    # Base
\*------------------------------------*/
html,
body {
  height: 100%;
  margin: 0;
}

html {
  box-sizing: border-box;
}

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

body {
  position: relative;
  font-family: "Open Sans", sans-serif;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5;
  color: #212121;
  background: #F8F9F0;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[tabindex="-1"]:focus {
  outline: none !important;
}

main {
  overflow: hidden;
}

a {
  text-decoration: none;
  color: #584910;
  transition: color 0.3s ease-in-out;
}

ol, ul {
  margin-bottom: 0.8125em;
  padding-left: 1.625em;
}
ol:first-child, ul:first-child {
  margin-top: 0;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

dl {
  margin-bottom: 0.8125em;
}
dl dt {
  font-weight: bold;
  margin-top: 0.8125em;
}
dl dd {
  margin: 0;
}

h1 {
  font-size: 2em;
}

h2 {
  font-size: 1.75em;
}

h3 {
  font-size: 1.5em;
}

h4 {
  font-size: 1.25em;
}

h5 {
  font-size: 1em;
}

h6 {
  font-size: 1em;
}

p {
  margin: 1.25rem 0;
}
p:first-child {
  margin-top: 0;
}

small {
  font-size: 1em;
}

abbr[title] {
  font-variant: small-caps;
  font-weight: 600;
  text-transform: lowercase;
}

abbr,
acronym {
  cursor: help;
}

img,
video {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

iframe {
  border: 0;
}

figure {
  margin: 0 0 1.25rem 0;
}

figcaption {
  font-style: italic;
  font-size: 0.875em;
}

hr {
  margin: 3.25rem 0;
  border-bottom: 1px solid #cecece;
  border-left: none;
  border-right: none;
  border-top: none;
}

blockquote {
  margin: 3.25rem 0;
  padding-left: 1.25rem;
  border-left: 2px solid #cecece;
  color: #474747;
}
blockquote cite:before {
  content: "— ";
}

cite {
  color: #616161;
  font-style: italic;
}

pre {
  font-size: 0.8125em;
}

code,
kbd,
pre,
samp {
  font-family: "Source Code Pro", Consolas, monospace;
  white-space: pre-line;
  white-space: pre-wrap;
}

code {
  display: inline-block;
  vertical-align: top;
  padding: 0 0.5em;
  font-size: 0.75em;
  border: 1px solid #aca488;
  color: #584910;
  background-color: #e6e4db;
  border-radius: 0.3rem;
}

input,
label,
select {
  display: block;
  font-family: "Open Sans", sans-serif;
  font-size: 1em;
}

label {
  font-weight: bold;
  margin-bottom: 0.625rem;
  cursor: pointer;
}
label.required:after {
  content: " *";
}
label abbr {
  display: none;
}

textarea,
input[type=email],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=url],
select[multiple=multiple] {
  padding: 0.625em;
  width: 100%;
  margin-bottom: 1.25rem;
  border: 1px solid #cecece;
  background-color: #F8F9F0;
  font-family: "Open Sans", sans-serif;
  font-size: 1em;
  border-radius: 0;
  box-shadow: none;
  transition: all 0.3s;
}
textarea:hover,
input[type=email]:hover,
input[type=number]:hover,
input[type=password]:hover,
input[type=search]:hover,
input[type=tel]:hover,
input[type=text]:hover,
input[type=url]:hover,
select[multiple=multiple]:hover {
  border-color: #a5a5a5;
}
textarea:focus,
input[type=email]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=url]:focus,
select[multiple=multiple]:focus {
  border-color: #800020;
  box-shadow: none, 0 0 5px rgba(103, 0, 26, 0.7);
  outline: none;
}

input[type=submit]:focus {
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: inline;
  margin-right: 0.625rem;
}

input[type=file] {
  margin-bottom: 1.25rem;
  padding-bottom: 0.4166666667rem;
  width: 100%;
}

select {
  width: auto;
  max-width: 100%;
  margin-bottom: 1.25rem;
}

fieldset {
  margin: 0 0 0.8125em 0;
  padding: 1.625em;
  border: 1px solid #cecece;
  background: #eeeeee;
  border-radius: 0;
}

input::-webkit-input-placeholder {
  color: #a6a6a6;
}

input:-moz-placeholder {
  color: #a6a6a6;
}

input::-moz-placeholder {
  color: #a6a6a6;
}

input:-ms-input-placeholder {
  color: #a6a6a6;
}

table {
  margin: 1.25rem 0;
  table-layout: fixed;
  width: 100%;
  border: 1px solid #cecece;
}

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

th {
  padding: 1.25rem;
  border-bottom: 2px solid #cecece;
  font-weight: bold;
  text-align: left;
}
th + th {
  border-left: 1px solid #e7e7e7;
}

tbody tr:nth-child(even) {
  background: #eeeeee;
}
tbody td {
  padding: 0.625rem 1.25rem;
  border-bottom: 1px solid #cecece;
}
tbody td + td {
  border-left: 1px solid #e7e7e7;
}

/*------------------------------------*\
    # Layout
\*------------------------------------*/
/**
 * Wrapper
 */
.wrapper {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
@media (min-width: 30.0625em) {
  .wrapper {
    margin-right: auto;
    margin-left: auto;
    max-width: 75em;
  }
}

/**
 * Grid
 */
@media (min-width: 30.0625em) {
  .grid {
    display: flex;
    flex-wrap: wrap;
  }
  .grid-1-4,
  .grid-2-4,
  .grid-3-4,
  .grid-4-4,
  .grid-1-3,
  .grid-2-3 {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
  }
  .grid-1-4 {
    width: 25%;
  }
  .grid-2-4 {
    width: 50%;
  }
  .grid-3-4 {
    width: 75%;
  }
  .grid-4-4 {
    width: 100%;
  }
  .grid-1-3 {
    width: 33.333%;
  }
  .grid-2-3 {
    width: 66.666%;
  }
}
.clearfix {
  clear: both;
}

.center,
.aligncenter {
  display: block;
  margin: 0 auto;
}

.left,
.alignleft {
  float: left;
}
@media (max-width: 48em) {
  .left,
  .alignleft {
    float: none;
  }
}

.right,
.alignright {
  float: right;
}
@media (max-width: 48em) {
  .right,
  .alignright {
    float: none;
  }
}

img.alignleft {
  margin-right: 1.25em;
}
@media (max-width: 48em) {
  img.alignleft {
    display: block;
    margin: 0.9375em auto;
  }
}

img.alignright {
  margin-left: 1.25em;
}
@media (max-width: 48em) {
  img.alignright {
    display: block;
    margin: 0.9375em auto;
  }
}

.flexPush {
  width: 32%;
}

.menu-list .sub-menu,
.list-basic,
.list-reset {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

.menu-list, .slick-dots,
.list-inline {
  padding-left: 0;
}
.menu-list > li, .slick-dots > li,
.list-inline > li {
  display: inline-block;
  vertical-align: middle;
}
.menu-list > li + li, .slick-dots > li + li,
.list-inline > li + li {
  margin-left: 0.3125rem;
}

.list-basic {
  margin-top: 0;
}
.list-basic li:before {
  content: "-";
  margin-right: 0.25em;
}

.txtXXL {
  font-size: 2em;
}

.txtXL {
  font-size: 1.75em;
}

.txtL {
  font-size: 1.5em;
}

.txtM {
  font-size: 1.25em;
}

.txtS {
  font-size: 1em;
}

.txtXS {
  font-size: 1em;
}

.txtLead {
  font-weight: bold;
  font-size: 1.25em;
  color: #333;
}

.txtSmall {
  font-size: 0.75rem;
  line-height: 1.25em;
}

::-moz-selection {
  background: #800020;
  color: #F8F9F0;
}

::selection {
  background: #800020;
  color: #F8F9F0;
}

.pre-header {
  background-color: #223338;
  padding: 0.4375em 0;
}
.pre-header .socials-list {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-bottom: 0;
}
.pre-header .socials-list .social-item {
  margin: 0 0.5em;
}
.pre-header .socials-list .social-item a {
  display: flex;
  font-size: 1.75em;
  color: #F8F9F0;
}
.pre-header .socials-list .social-item a:hover, .pre-header .socials-list .social-item a:active, .pre-header .socials-list .social-item a:focus {
  color: #aca488;
}
.pre-header .socials-list .btn {
  font-size: 1em;
  margin-left: 0.625rem;
  padding: 0.5rem 1.25rem;
}

.main-header .wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 0.9375em;
  padding-bottom: 0.9375em;
}
.main-header .header-logo {
  display: inline-block;
  width: 15.625em;
  height: auto;
  transition: all 0.3s;
}
.main-header .header-logo img, .main-header .header-logo svg {
  max-width: 100%;
}

.is-sticky {
  z-index: 100;
}
.is-sticky .main-header {
  background-color: #F8F9F0;
}

.footer {
  color: #F8F9F0;
  text-align: center;
  background-color: #212121;
  padding: 2.8125em 0;
}
.footer a {
  color: #F8F9F0;
}
.footer a:hover, .footer a:active, .footer a:focus {
  color: #584910;
}
.footer .footer-logo {
  width: 12.5em;
}
.footer .socials-list li + li {
  margin-left: 1.25em;
}
.footer .socials-list a {
  font-size: 1.5625em;
}
.footer .socials-list a:hover, .footer .socials-list a:focus, .footer .socials-list a:active {
  color: #aca488;
}
.footer .footer-copyright {
  font-size: 0.875em;
}

.contactform-wrapper input[type=submit], .buttonSecondary,
.btn-secondary, .btn-border, .btn-light, .button,
.btn {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  margin: 0;
  padding: 0.375em 0;
  margin: 0;
  position: relative;
  white-space: nowrap;
  text-align: center;
  cursor: pointer;
  border: none;
  text-decoration: none;
  font-family: "Libre Bodoni", serif;
  font-size: 1.1875em;
  line-height: 1.2;
  font-weight: 400;
  border: none;
  transition: all 0.3s;
  -webkit-user-drag: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-appearance: none;
}
@media (min-width: 30.0625em) {
  .contactform-wrapper input[type=submit] + [class*=button], .buttonSecondary + [class*=button],
  .btn-secondary + [class*=button], .btn-border + [class*=button], .btn-light + [class*=button], .button + [class*=button],
  .btn + [class*=button] {
    margin-left: 0.625rem;
  }
}
.contactform-wrapper input[type=submit]:disabled, .buttonSecondary:disabled,
.btn-secondary:disabled, .btn-border:disabled, .btn-light:disabled, .button:disabled,
.btn:disabled, .contactform-wrapper input.is-disabled[type=submit], .is-disabled.buttonSecondary,
.is-disabled.btn-secondary, .is-disabled.btn-border, .is-disabled.btn-light, .is-disabled.button,
.is-disabled.btn {
  cursor: default;
  opacity: 0.35;
}

/**
 * Base style
 */
.button,
.btn {
  color: #800020;
}
.button:after, .button:before,
.btn:after,
.btn:before {
  content: "";
  display: block;
  width: calc(100% - 40px);
  border-top: 0.125rem solid #584910;
  margin: 0.9375rem auto 0;
  transition: all 0.3s;
}
.button:before,
.btn:before {
  margin: 0 auto 0.9375rem;
}
.button:hover, .button:focus,
.btn:hover,
.btn:focus {
  color: #800020;
}
.button:hover:after, .button:hover:before, .button:focus:after, .button:focus:before,
.btn:hover:after,
.btn:hover:before,
.btn:focus:after,
.btn:focus:before {
  border-color: #001F3F;
  width: 100%;
}
.button:disabled:hover, .button.is-disabled:hover, .button.is-disabled:focus,
.btn:disabled:hover,
.btn.is-disabled:hover,
.btn.is-disabled:focus {
  color: #F8F9F0;
  outline: none;
}
.btn-light {
  color: #F8F9F0;
  background-color: transparent;
  border-color: #F8F9F0;
}
.btn-light:hover, .btn-light:focus, .btn-light:active {
  color: #333;
  background-color: #F8F9F0;
  border-color: #F8F9F0;
}

.btn-border {
  color: #F8F9F0;
  background-color: transparent;
  border: 0.0625rem solid #F8F9F0;
  border-radius: 1.5625rem;
}
.btn-border:before, .btn-border:after {
  display: none;
}
.btn-border:hover, .btn-border:focus, .btn-border:active {
  color: #333;
  background-color: #F8F9F0;
  border-color: #F8F9F0;
}

.buttonSecondary,
.btn-secondary {
  color: #F8F9F0;
  background: #001F3F;
  padding: 0.9375rem 1.875rem;
}
.buttonSecondary:hover, .buttonSecondary:focus,
.btn-secondary:hover,
.btn-secondary:focus {
  color: #F8F9F0;
  background: #800020;
}
.buttonSecondary:after, .buttonSecondary:before,
.btn-secondary:after,
.btn-secondary:before {
  display: none;
}
.buttonSecondary:disabled:hover, .buttonSecondary.is-disabled:hover, .buttonSecondary.is-disabled:focus,
.btn-secondary:disabled:hover,
.btn-secondary.is-disabled:hover,
.btn-secondary.is-disabled:focus {
  color: #212121;
  background: #cecece;
  outline: none;
}
.buttonSecondary.is-active,
.btn-secondary.is-active {
  color: #F8F9F0;
  background: #7c7c7c;
}

/**
 * Modifier
 */
.button--small {
  padding: 0.2307692308em 0.7692307692em;
  font-size: 0.8125em;
}

.button--big {
  padding: 0.75em 1.5em;
  font-size: 1.25em;
  line-height: 1.333;
}

.button--block {
  display: block;
  width: 100%;
}

@media (max-width: 30.0625em) {
  .button--mobileFull {
    display: block;
    width: 100%;
  }
}

/*------------------------------------*\
  This file is automatically
  generated using gulp.

  Add .svg files to the assets/iconFont
  folder to add icons

  /!\ Do not modify /!\ !!!
\*------------------------------------*/
@font-face {
  font-family: "doulastarter-icons";
  src: url("fonts/doulastarter-icons.eot");
  src: url("fonts/doulastarter-icons.eot?#iefix") format("eot"), url("fonts/doulastarter-icons.woff") format("woff"), url("fonts/doulastarter-icons.ttf") format("truetype"), url("fonts/doulastarter-icons.svg#doulastarter-icons") format("svg");
}
[class*=icon-] {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-family: "doulastarter-icons";
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-decoration: inherit;
  text-transform: none;
}

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

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

.icon-linkedin:before {
  content: "\e003";
}

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

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0 0 0 0.625em;
  overflow: visible;
  height: 1.4375em;
}
.hamburger:focus {
  outline: none;
}

.hamburger:hover .hamburger-inner,
.hamburger:hover .hamburger-inner::before,
.hamburger:hover .hamburger-inner::after {
  background-color: #333;
}

.hamburger.is-active:hover .hamburger-inner,
.hamburger.is-active:hover .hamburger-inner::before,
.hamburger.is-active:hover .hamburger-inner::after {
  background-color: #F8F9F0;
}

.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #d9dde2;
}

.hamburger-box {
  width: 1.625em;
  height: 1.4375em;
  display: inline-block;
  position: relative;
}

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px;
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
  width: 1.625em;
  height: 0.1875em;
  background-color: #333;
  position: absolute;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
}

.hamburger-inner::before, .hamburger-inner::after {
  content: "";
  display: block;
}

.hamburger-inner::before {
  top: -10px;
}

.hamburger-inner::after {
  bottom: -10px;
}

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  perspective: 80px;
}

.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(180deg);
}

.hamburger--3dx.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dx.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
  perspective: 80px;
}

.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateY(-180deg);
}

.hamburger--3dx-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dx-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
  perspective: 80px;
}

.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(-180deg);
}

.hamburger--3dy.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dy.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
  perspective: 80px;
}

.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg);
}

.hamburger--3dy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DXY
   */
.hamburger--3dxy .hamburger-box {
  perspective: 80px;
}

.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg);
}

.hamburger--3dxy.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dxy.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * 3DXY Reverse
   */
.hamburger--3dxy-r .hamburger-box {
  perspective: 80px;
}

.hamburger--3dxy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
  transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent !important;
  transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg);
}

.hamburger--3dxy-r.is-active .hamburger-inner::before {
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--3dxy-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
}

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22);
}

/*
   * Arrow Turn
   */
.hamburger--arrowturn.is-active .hamburger-inner {
  transform: rotate(-180deg);
}

.hamburger--arrowturn.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

.hamburger--arrowturn.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

/*
   * Arrow Turn Right
   */
.hamburger--arrowturn-r.is-active .hamburger-inner {
  transform: rotate(-180deg);
}

.hamburger--arrowturn-r.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1);
}

.hamburger--arrowturn-r.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1);
}

/*
   * Boring
   */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none;
}

.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg);
}

.hamburger--boring.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--boring.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

.hamburger--collapse .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}

.hamburger--collapse.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear;
}

.hamburger--collapse-r .hamburger-inner::before {
  transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--collapse-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear;
}

.hamburger--collapse-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic .hamburger-inner::before {
  top: 0.5625em;
  transition: opacity 0.125s 0.275s ease;
}

.hamburger--elastic .hamburger-inner::after {
  top: 1.125em;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(135deg);
  transition-delay: 0.075s;
}

.hamburger--elastic.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}

.hamburger--elastic.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(-270deg);
  transition-delay: 0.075s;
}

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r .hamburger-inner::before {
  top: 10px;
  transition: opacity 0.125s 0.275s ease;
}

.hamburger--elastic-r .hamburger-inner::after {
  top: 20px;
  transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-135deg);
  transition-delay: 0.075s;
}

.hamburger--elastic-r.is-active .hamburger-inner::before {
  transition-delay: 0s;
  opacity: 0;
}

.hamburger--elastic-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(270deg);
  transition-delay: 0.075s;
}

/*
   * Emphatic
   */
.hamburger--emphatic {
  overflow: hidden;
}

.hamburger--emphatic .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}

.hamburger--emphatic .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}

.hamburger--emphatic .hamburger-inner::after {
  top: 10px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}

.hamburger--emphatic.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent !important;
}

.hamburger--emphatic.is-active .hamburger-inner::before {
  left: -80px;
  top: -80px;
  transform: translate3d(80px, 80px, 0) rotate(45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.hamburger--emphatic.is-active .hamburger-inner::after {
  right: -80px;
  top: -80px;
  transform: translate3d(-80px, 80px, 0) rotate(-45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
  overflow: hidden;
}

.hamburger--emphatic-r .hamburger-inner {
  transition: background-color 0.125s 0.175s ease-in;
}

.hamburger--emphatic-r .hamburger-inner::before {
  left: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in;
}

.hamburger--emphatic-r .hamburger-inner::after {
  top: 10px;
  right: 0;
  transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in;
}

.hamburger--emphatic-r.is-active .hamburger-inner {
  transition-delay: 0s;
  transition-timing-function: ease-out;
  background-color: transparent !important;
}

.hamburger--emphatic-r.is-active .hamburger-inner::before {
  left: -80px;
  top: 80px;
  transform: translate3d(80px, -80px, 0) rotate(-45deg);
  transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.hamburger--emphatic-r.is-active .hamburger-inner::after {
  right: -80px;
  top: 80px;
  transform: translate3d(-80px, -80px, 0) rotate(45deg);
  transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1);
}

/*
   * Minus
   */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear;
}

.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear;
}

.hamburger--minus.is-active .hamburger-inner::before {
  top: 0;
}

.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0;
}

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 2px;
}

.hamburger--slider .hamburger-inner::before {
  top: 0.5625em;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}

.hamburger--slider .hamburger-inner::after {
  top: 1.125em;
}

.hamburger--slider.is-active .hamburger-inner {
  top: -0.0625em;
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--slider.is-active .hamburger-inner::before {
  transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
  opacity: 0;
}

.hamburger--slider.is-active .hamburger-inner::after {
  top: 1.25em;
  transform: translate3d(0, -20px, 0) rotate(-90deg);
}

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
  top: 2px;
}

.hamburger--slider-r .hamburger-inner::before {
  top: 10px;
  transition-property: transform, opacity;
  transition-timing-function: ease;
  transition-duration: 0.15s;
}

.hamburger--slider-r .hamburger-inner::after {
  top: 20px;
}

.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}

.hamburger--slider-r.is-active .hamburger-inner::before {
  transform: rotate(45deg) translate3d(5.71429px, -6px, 0);
  opacity: 0;
}

.hamburger--slider-r.is-active .hamburger-inner::after {
  transform: translate3d(0, -20px, 0) rotate(90deg);
}

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spin.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}

.hamburger--spin.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r .hamburger-inner::before {
  transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in;
}

.hamburger--spin-r .hamburger-inner::after {
  transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spin-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out;
}

.hamburger--spin-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
  transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 2px;
  transition: background-color 0s 0.13s linear;
}

.hamburger--spring .hamburger-inner::before {
  top: 10px;
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring .hamburger-inner::after {
  top: 20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent !important;
}

.hamburger--spring.is-active .hamburger-inner::before {
  top: 0;
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(45deg);
}

.hamburger--spring.is-active .hamburger-inner::after {
  top: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: translate3d(0, 10px, 0) rotate(-45deg);
}

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r .hamburger-inner::after {
  top: -20px;
  transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear;
}

.hamburger--spring-r .hamburger-inner::before {
  transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--spring-r.is-active .hamburger-inner::after {
  top: 0;
  opacity: 0;
  transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear;
}

.hamburger--spring-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(90deg);
  transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}

.hamburger--stand .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}

.hamburger--stand.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--stand.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear;
}

.hamburger--stand-r .hamburger-inner::before {
  transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand-r .hamburger-inner::after {
  transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent !important;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear;
}

.hamburger--stand-r.is-active .hamburger-inner::before {
  top: 0;
  transform: rotate(-45deg);
  transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--stand-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(45deg);
  transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze .hamburger-inner::before {
  transition: top 0.075s 0.12s ease, opacity 0.075s ease;
}

.hamburger--squeeze .hamburger-inner::after {
  transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.hamburger--squeeze.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
  transition: top 0.075s ease, opacity 0.075s 0.12s ease;
}

.hamburger--squeeze.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}

.hamburger--vortex .hamburger-inner::before {
  transition-property: top, opacity;
}

.hamburger--vortex .hamburger-inner::after {
  transition-property: bottom, transform;
}

.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
  transition-delay: 0s;
}

.hamburger--vortex.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--vortex.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(90deg);
}

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
  transition-duration: 0s;
  transition-delay: 0.1s;
  transition-timing-function: linear;
}

.hamburger--vortex-r .hamburger-inner::before {
  transition-property: top, opacity;
}

.hamburger--vortex-r .hamburger-inner::after {
  transition-property: bottom, transform;
}

.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
  transition-delay: 0s;
}

.hamburger--vortex-r.is-active .hamburger-inner::before {
  top: 0;
  opacity: 0;
}

.hamburger--vortex-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: rotate(-90deg);
}

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

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

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

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

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

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

.slick-prev,
.slick-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 3em;
  color: #800020;
  cursor: pointer;
  transition: all 0.3s;
}
@media (max-width: 83.125em) {
  .slick-prev,
  .slick-next {
    font-size: 1.875em;
  }
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: #001F3F;
}

.slick-prev {
  left: -3.4375rem;
}
@media (max-width: 83.125em) {
  .slick-prev {
    left: 0;
  }
}

.slick-next {
  right: -3.4375rem;
  transform: scaleX(-1);
}
@media (max-width: 83.125em) {
  .slick-next {
    right: 0;
  }
}

.slick-dots {
  text-align: center;
  margin: 1.5625em 0 0;
}
.slick-dots button {
  height: 0.9375rem;
  width: 0.9375rem;
  text-indent: -6250rem;
  background: #800020;
  color: transparent;
  border: none;
  border-radius: 50%;
  padding: 0;
  margin: 0.1875rem;
  transition: all 0.3s;
}
@media (max-width: 80em) {
  .slick-dots button {
    height: 0.75rem;
    width: 0.75rem;
  }
}
.slick-dots li.slick-active button,
.slick-dots li:hover button,
.slick-dots li:focus button {
  outline: none;
  background: #584910;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  margin-left: 0;
}

.menu-list {
  position: relative;
  text-align: right;
  margin-bottom: 0;
}
.menu-list > li {
  position: relative;
  padding: 0 0.875em;
}
@media (max-width: 61.875em) {
  .menu-list > li {
    display: block;
    padding: 0.625em 0;
  }
}
.menu-list > li:last-child {
  padding-right: 0;
}
.menu-list > li > a {
  font-size: 1.1875em;
  font-weight: 400;
}
@media (max-width: 80em) {
  .menu-list > li > a {
    font-size: 1.125em;
  }
}
.menu-list > li > a:after {
  content: "";
  display: block;
  margin: 0.3125rem auto 0;
  width: 5rem;
  border-top: 0.125rem solid #aca488;
  transition: all 0.3s;
}
.menu-list > li > a:hover:after, .menu-list > li > a:focus:after, .menu-list > li > a:active:after {
  border-color: #584910;
}
.menu-list > li a {
  position: relative;
  display: inline-block;
  font-family: "Libre Bodoni", serif;
  text-transform: uppercase;
  color: #800020;
}
@media (max-width: 61.875em) {
  .menu-list > li a {
    color: #d9dde2;
  }
}
.menu-list > li a:hover, .menu-list > li a:focus {
  color: #800020;
}
@media (max-width: 61.875em) {
  .menu-list > li a:hover, .menu-list > li a:focus {
    color: #584910;
  }
}
.menu-list .sub-menu {
  position: absolute;
  opacity: 0;
  overflow: hidden;
  background: #5a0016;
  margin-top: 0.625em;
  padding: 0.625em 0;
  transition: all 0.3s;
  z-index: -10;
  width: -moz-max-content;
  width: max-content;
  text-align: left;
}
@media (max-width: 61.875em) {
  .menu-list .sub-menu {
    opacity: 1;
    position: relative;
    box-shadow: none;
    max-width: 100%;
    text-align: center;
    padding: 0;
    margin: 0 auto;
    background: #212121;
  }
}
.menu-list .sub-menu.is-active {
  opacity: 1;
  z-index: 10;
}
.menu-list .sub-menu > li {
  padding: 0.3125em 2.1875em;
}
@media (max-width: 87.5em) {
  .menu-list .sub-menu > li {
    padding: 0.3125em 1.25em;
  }
}
.menu-list .sub-menu > li a {
  color: #F8F9F0;
}
@media (max-width: 61.875em) {
  .menu-list .sub-menu > li a {
    color: #d9dde2;
  }
}
.menu-list .sub-menu > li a:after {
  border-color: #F8F9F0;
}
.menu-list .sub-menu > li a:hover:before {
  opacity: 1;
}
.menu-list .sub-menu > li a:hover {
  font-weight: 400;
}

.menu-desktop {
  width: 100%;
}
@media (max-width: 61.875em) {
  .menu-desktop {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #212121;
    padding-top: 7.1875em;
    overflow: scroll;
  }
}
.menu-desktop.is-active {
  display: block;
  z-index: 20;
}
@media (max-width: 61.875em) {
  .menu-desktop .menu-list {
    text-align: center;
  }
}

.toggle-menu {
  display: none;
}
@media (max-width: 61.875em) {
  .toggle-menu {
    display: block;
    z-index: 21;
  }
}

.footer-menu {
  margin-top: 1.25em;
}
.footer-menu a {
  font-size: 0.9375em;
}
.footer-menu a:hover, .footer-menu a:focus, .footer-menu a:active {
  color: #aca488;
}
.footer-menu a + a:before {
  content: "|";
  margin-right: 0.3125rem;
}

.section-header {
  text-align: center;
  margin-bottom: 2.5em;
}

.section-title {
  font-size: 2.5em;
}
@media (max-width: 48em) {
  .section-title {
    font-size: 1.875em;
  }
}

.section-intro {
  font-size: 1.125em;
}
.section-intro p:last-child {
  margin-bottom: 0;
}

.values-wrapper {
  background-color: #808f9f;
  text-align: center;
  padding: 3.125em 0 0.625em;
  margin-top: 3.125em;
}

.value-item {
  margin-bottom: 2.5em;
}

.values-title {
  margin-bottom: 3.125rem;
}

.value-img {
  display: block;
  max-width: 6.25em;
  margin: 0 auto 1.875em;
}

.value-title {
  font-size: 1.125em;
  font-weight: 400;
  margin-bottom: 0.625rem;
}

.value-text {
  margin: 0;
}

.contactform-wrapper {
  background-color: #aca488;
  background-size: cover;
  background-position: center center;
  margin: 3.125em auto 0;
}
.contactform-wrapper form {
  max-width: 37.5em;
  padding: 1.25em 2.5em;
  margin: 0 auto;
}
@media (max-width: 48em) {
  .contactform-wrapper form {
    padding: 1.25em 0;
  }
}
.contactform-wrapper label {
  font-weight: 400;
  font-size: 1.25em;
  font-family: "Libre Bodoni", serif;
  color: #F8F9F0;
}
@media (max-width: 61.875em) {
  .contactform-wrapper label {
    font-size: 1.125em;
  }
}
@media (max-width: 48em) {
  .contactform-wrapper label {
    font-size: 1em;
  }
}
.contactform-wrapper label input, .contactform-wrapper label textarea {
  color: #212121;
  font-size: 1.125rem;
}
.contactform-wrapper .wpcf7-form-control-wrap {
  display: block;
  margin-top: 0.625em;
}
.contactform-wrapper input[type=submit] {
  background-color: #800020;
  color: #F8F9F0;
  margin-top: 0;
  padding: 0.5rem 1.5625rem;
}
.contactform-wrapper .contactform-info {
  font-size: 0.8125em;
  color: #584910;
  margin-bottom: 0;
}

.ajax-loader,
.wpcf7-not-valid-tip {
  display: none !important;
}

.wpcf7 form .wpcf7-response-output {
  color: #212121;
  border: none;
  margin: 0;
  padding: 0;
}

.wpcf7-quiz-label {
  font-size: 0.875em;
}

.wpcf7-quiz {
  margin: 0.9375rem 0;
}

.gallery {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.9375rem;
  margin-right: -0.9375rem;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem;
}
.gallery .gallery-item {
  padding: 0.9375rem;
  margin: 0;
}

.gallery-columns-2 .gallery-item {
  width: 50%;
}

.gallery-columns-3 .gallery-item {
  width: 33.333%;
}
@media (max-width: 31.25em) {
  .gallery-columns-3 .gallery-item {
    width: 100%;
  }
}

.gallery-columns-4 .gallery-item {
  width: 25%;
}
@media (max-width: 48em) {
  .gallery-columns-4 .gallery-item {
    width: 50%;
  }
}
@media (max-width: 31.25em) {
  .gallery-columns-4 .gallery-item {
    width: 100%;
  }
}

.gallery-columns-5 .gallery-item {
  width: 20%;
}
@media (max-width: 61.875em) {
  .gallery-columns-5 .gallery-item {
    width: 25%;
  }
}
@media (max-width: 48em) {
  .gallery-columns-5 .gallery-item {
    width: 50%;
  }
}
@media (max-width: 31.25em) {
  .gallery-columns-5 .gallery-item {
    width: 100%;
  }
}

/*------------------------------------*\
    # Sections
\*------------------------------------*/
.section-hero {
  position: relative;
  min-height: 27.5em;
  background-size: cover;
  background-repeat: no-repeat;
  text-align: center;
  padding: 2.5em 0;
}
.section-hero:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(33, 33, 33, 0.3);
}
.section-hero .wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
@media (max-width: 61.875em) {
  .section-hero .wrapper {
    flex-direction: column;
    align-items: center;
  }
}
.section-hero .hero-text-wrapper,
.section-hero .hero-img {
  width: 50%;
}
@media (max-width: 61.875em) {
  .section-hero .hero-text-wrapper,
  .section-hero .hero-img {
    width: 100%;
  }
}
.section-hero .hero-img img {
  border-radius: 12.5rem;
}
@media (max-width: 48em) {
  .section-hero .hero-img img {
    max-height: 18.75em;
  }
}
@media (max-width: 61.875em) {
  .section-hero .hero-text-wrapper {
    margin-top: 2.5em;
  }
}
.section-hero .hero-title {
  font-family: "Libre Bodoni", serif;
  font-weight: 400;
  font-size: 3.4375em;
  line-height: 1;
  color: #F8F9F0;
  margin: 0 0 0.625rem;
}
@media (max-width: 75em) {
  .section-hero .hero-title {
    font-size: 3.75em;
  }
}
@media (max-width: 61.875em) {
  .section-hero .hero-title {
    font-size: 3.125em;
  }
}
@media (max-width: 48em) {
  .section-hero .hero-title {
    font-size: 2.1875em;
  }
}
.section-hero .hero-subtitle {
  display: block;
  font-size: 1.3125rem;
  color: #F8F9F0;
  margin: 0.9375rem 0 0;
}
@media (max-width: 61.875em) {
  .section-hero .hero-subtitle {
    font-size: 1.125rem;
  }
}
.section-hero .hero-text {
  font-size: 1.125em;
  color: #F8F9F0;
  margin-top: 1.25rem;
}
.section-hero .btn {
  color: #F8F9F0;
}
.section-hero .btn:before, .section-hero .btn:after {
  border-color: #F8F9F0;
}

.section-about {
  padding: 4.375em 0 4.6875em;
}
.section-about .grid {
  align-items: center;
}
@media (max-width: 61.875em) {
  .section-about .grid {
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
@media (max-width: 61.875em) {
  .section-about .about-text {
    text-align: center;
    margin-bottom: 2.5em;
  }
}
.section-about .section-text {
  margin-bottom: 3.125em;
}
.section-about .about-img {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.section-about .about-img:before {
  content: "";
  position: absolute;
  top: -2.5em;
  right: -1.875em;
  display: inline-block;
  width: 23.5em;
  height: 35.375em;
  border-radius: 12.5em;
  background-color: #800020;
  z-index: -1;
}
@media (max-width: 61.875em) {
  .section-about .about-img:before {
    top: -1.25em;
    right: -0.9375em;
  }
}
@media (max-width: 48em) {
  .section-about .about-img:before {
    height: 25em;
    width: 16.625em;
  }
}
.section-about .about-img img {
  border-radius: 12.5em;
}
@media (max-width: 48em) {
  .section-about .about-img img {
    max-height: 25em;
  }
}

.section-services {
  padding: 5.625em 0;
}
.section-services .section-title {
  position: relative;
}
.section-services .section-title:before {
  content: url(images/title-blob.svg);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  width: 7.3125rem;
  height: 6.25rem;
}
.section-services .section-title:before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 37%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  background-image: url(images/ico-grenade.png);
  background-size: cover;
  height: 95px;
  width: 120px;
}
.section-services .services-wrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 10px;
  grid-row-gap: 10px;
}
@media (max-width: 48em) {
  .section-services .services-wrapper {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
}
@media (max-width: 34.375em) {
  .section-services .services-wrapper {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(5, 1fr);
  }
}
.section-services .services-wrapper .service-item {
  position: relative;
  text-align: center;
}
.section-services .services-wrapper .service-item:nth-child(1) {
  grid-area: 1/1/3/3;
}
@media (max-width: 48em) {
  .section-services .services-wrapper .service-item:nth-child(1) {
    grid-area: 1/1/2/2;
  }
}
.section-services .services-wrapper .service-item:nth-child(1) .service-img:after {
  height: 12.125rem;
  width: 17.9375rem;
}
@media (max-width: 48em) {
  .section-services .services-wrapper .service-item:nth-child(1) .service-img:after {
    height: 5.5625rem;
    width: 8.1875rem;
  }
}
.section-services .services-wrapper .service-item:nth-child(2) {
  grid-area: 1/3/2/4;
}
@media (max-width: 48em) {
  .section-services .services-wrapper .service-item:nth-child(2) {
    grid-area: 1/2/2/3;
  }
}
@media (max-width: 34.375em) {
  .section-services .services-wrapper .service-item:nth-child(2) {
    grid-area: 2/1/3/2;
  }
}
.section-services .services-wrapper .service-item:nth-child(3) {
  grid-area: 1/4/2/5;
}
@media (max-width: 48em) {
  .section-services .services-wrapper .service-item:nth-child(3) {
    grid-area: 2/1/3/2;
  }
}
@media (max-width: 34.375em) {
  .section-services .services-wrapper .service-item:nth-child(3) {
    grid-area: 3/1/4/2;
  }
}
.section-services .services-wrapper .service-item:nth-child(4) {
  grid-area: 2/3/3/4;
}
@media (max-width: 48em) {
  .section-services .services-wrapper .service-item:nth-child(4) {
    grid-area: 2/2/3/3;
  }
}
@media (max-width: 34.375em) {
  .section-services .services-wrapper .service-item:nth-child(4) {
    grid-area: 4/1/5/2;
  }
}
.section-services .services-wrapper .service-item:nth-child(5) {
  grid-area: 2/4/3/5;
}
@media (max-width: 48em) {
  .section-services .services-wrapper .service-item:nth-child(5) {
    grid-area: 3/1/4/2;
  }
}
@media (max-width: 34.375em) {
  .section-services .services-wrapper .service-item:nth-child(5) {
    grid-area: 5/1/6/2;
  }
}
.section-services .services-wrapper .service-item:hover span.btn, .section-services .services-wrapper .service-item:focus span.btn, .section-services .services-wrapper .service-item:active span.btn {
  background-color: #800020;
}
.section-services .services-wrapper .service-img {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
}
.section-services .services-wrapper .service-img:after { /*
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	display: block;
	background-image: url(images/fondpost.svg);
	background-size: 100%;
	height: rem(89);
	width: rem(131);
*/ }
.section-services .services-wrapper .service-img img {
  width: 100%;
}
.section-services .services-wrapper span.btn {
  max-width: 90%;
  min-width: 11.875rem;
  white-space: break-spaces;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s;
}
.section-services .services-wrapper .service-title {
  position: relative;
  font-family: "Libre Bodoni", serif;
  font-weight: 400;
  font-size: 1.5em;
  line-height: 1;
  margin-bottom: 0.625rem;
}
@media (max-width: 75em) {
  .section-services .services-wrapper .service-title {
    font-size: 1.25em;
  }
}
.section-services .services-wrapper .service-text {
  font-family: "Libre Bodoni", serif;
  font-size: 1em;
  margin: 0 0 1.25rem;
}
@media (max-width: 75em) {
  .section-services .services-wrapper .service-text {
    font-size: 0.875em;
  }
}

.section-cta {
  position: relative;
  text-align: center;
  padding: 2.5rem 0;
}
.section-cta:before, .section-cta:after {
  content: "";
  display: inline-block;
  height: 13.875em;
  width: 24.1875em;
  background-image: url(images/cta.svg);
  background-size: 100%;
  z-index: -1;
}
@media (max-width: 61.875em) {
  .section-cta:before, .section-cta:after {
    height: 7.1875em;
    width: 12.5em;
  }
}
@media (max-width: 48em) {
  .section-cta:before, .section-cta:after {
    height: 4.875em;
    width: 8.4375em;
  }
}
.section-cta:before {
  position: absolute;
  top: 0;
  left: -1.875em;
  transform: rotate(48deg) scaleX(-1);
}
@media (max-width: 48em) {
  .section-cta:before {
    top: -3.125em;
  }
}
.section-cta:after {
  position: absolute;
  bottom: 0;
  right: -1.875em;
}
.section-cta .wrapper {
  max-width: 62.5rem;
}

.cta-title {
  font-family: "Libre Bodoni", serif;
}
@media (max-width: 48em) {
  .cta-title {
    font-size: 1.3125em;
  }
}

.cta-text {
  font-size: 1.125em;
}
@media (max-width: 48em) {
  .cta-text {
    font-size: 1em;
  }
}

.section-testimonies {
  position: relative;
  padding: 5em 0;
}
@media (max-width: 48em) {
  .section-testimonies {
    padding: 3.125em 0;
  }
}
.section-testimonies .testimonies-bg {
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-size: cover;
  background-position: center center;
}
.section-testimonies .wrapper {
  position: relative;
  padding: 2.5em 4.375em;
}
@media (max-width: 48em) {
  .section-testimonies .wrapper {
    max-width: 90%;
    padding: 1.875em 1.25em;
    margin-left: auto;
    margin-right: auto;
  }
}
.section-testimonies .wrapper:after {
  /*content: url(images/testimonies.svg);
  display: inline-block;
  position: absolute;
  top: rem(-20);
  right: rem(-7);
  z-index: 0;*/
}
.section-testimonies .section-title {
  position: relative;
  color: #F8F9F0;
  z-index: 1;
  margin-bottom: 2.5rem;
}
@media (max-width: 48em) {
  .section-testimonies .section-title {
    font-size: 1.3125em;
  }
}
.section-testimonies .testimony-item {
  text-align: center;
}
@media (max-width: 48em) {
  .section-testimonies .testimony-text {
    font-size: 0.9375em;
  }
}
.section-testimonies .testimony-name,
.section-testimonies .testimony-infos {
  display: inline-block;
  font-family: "Libre Bodoni", serif;
  color: #584910;
  margin: 0;
}
.section-testimonies .testimony-infos:before {
  content: "-";
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.3125rem;
}

/*------------------------------------*\
    # Pages
\*------------------------------------*/
.page-header {
  position: relative;
  background-color: #800020;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 5em 0 6.875em;
}
@media (max-width: 48em) {
  .page-header {
    padding: 2.8125em 0 5em;
  }
}
.page-header:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(90, 0, 22, 0.5);
}

.page-header-title {
  position: relative;
  z-index: 2;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.page-header-title:after {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: -3.4375rem;
  left: 50%;
  transform: translateX(-50%);
  background-image: url(images/half-sun.svg);
  background-size: cover;
  height: 50px;
  width: 150px;
}
.page-header-title .page-title {
  margin: 0;
  color: #F8F9F0;
}

.page-title {
  font-family: "Libre Bodoni", serif;
}
@media (max-width: 48em) {
  .page-title {
    font-size: 1.5em;
  }
}

.page-intro {
  display: block;
  max-width: 80%;
  font-size: 1.125em;
  text-align: center;
  margin: 0 auto 1.25rem;
}
@media (max-width: 48em) {
  .page-intro {
    max-width: 100%;
    font-size: 1.0625em;
  }
}

.page-content {
  padding: 3.125em 0;
}
.page-content h1, .page-content h2, .page-content h3, .page-content h4, .page-content h5, .page-content h6 {
  font-family: "Libre Bodoni", serif;
  color: #800020;
}
.page-content a:not(.btn) {
  color: #800020;
  text-decoration: underline;
}
.page-content a:not(.btn):hover, .page-content a:not(.btn):active, .page-content a:not(.btn):focus {
  color: #584910;
}
.page-content a.btn {
  font-size: 1.0625rem;
  margin: 0.9375rem 0;
}
.page-content img.rounded {
  border-radius: 12.5em;
}
.page-content blockquote,
.page-content q {
  font-size: 1.125em;
}
.page-content ul li,
.page-content ol li {
  margin-bottom: 0.3125rem;
}
.page-content ul li::marker,
.page-content ol li::marker {
  color: #aca488;
}
.page-content ul {
  padding-left: 0;
  margin-left: 1.625em;
  list-style-position: inside;
}
.page-content ul ul {
  position: relative;
  left: 1.25rem;
}
.page-content table {
  border: solid 0.0625rem #800020;
}
.page-content tbody th {
  font-family: "Libre Bodoni", serif;
}
.page-content tbody th,
.page-content tbody td {
  border-bottom: solid 0.0625rem #800020;
}
.page-content tbody td + td,
.page-content tbody th + th {
  border-left: solid 0.0625rem #800020;
}
.page-content tbody tr:nth-child(even) {
  background-color: #ecd9de;
}

body.page-template-default:not(.page-daccueil) main {
  padding: 3.75em 0;
}

body.page-template-page-services .page-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-top: 3.125em;
}
body.page-template-page-services .page-list .page-item {
  width: 30%;
  text-align: center;
  padding-bottom: 1.5625em;
}
@media (max-width: 48em) {
  body.page-template-page-services .page-list .page-item {
    width: 48%;
    margin-bottom: 2.5em;
  }
}
@media (max-width: 31.25em) {
  body.page-template-page-services .page-list .page-item {
    width: 100%;
  }
}
body.page-template-page-services .page-list .page-item a {
  text-decoration: none;
}
body.page-template-page-services .page-list .page-item .page-thumbnail {
  display: block;
  margin-bottom: 1.25rem;
}
body.page-template-page-services .page-list .page-item .page-item-title {
  font-family: "Libre Bodoni", serif;
  margin: 0;
}
@media (max-width: 48em) {
  body.page-template-page-services .page-list .page-item .page-item-title {
    font-size: 1.3125em;
  }
}

body.page-template-page-about .text-content {
  padding: 3.125em 0;
}

/*------------------------------------*\
    # Utils
\*------------------------------------*/
.u-cf:before, .u-cf:after {
  content: " ";
  display: table;
}
.u-cf:after {
  clear: both;
}

.u-noBfc {
  overflow: hidden !important;
}

.u-floatLeft {
  float: left !important;
}

.u-floatRight {
  float: right !important;
}

.u-100vh {
  min-height: 100vh;
}

.u-hideMobile {
  display: none !important;
}
@media (min-width: 30.0625em) {
  .u-hideMobile {
    display: block !important;
  }
}

@media (min-width: 30.0625em) {
  .u-showMobile {
    display: none !important;
  }
}

.u-hidden {
  display: none;
}

/* Spacing helpers
 *   p,m = padding, margin
 *   a,t,r,b,l = all, top, bottom, left, right
 *   n,s,m,l = none, small, medium, large
 */
/* Margin */
.u-man {
  margin: 0 !important;
}

.u-mbn {
  margin-bottom: 0 !important;
}

.u-mbs {
  margin-bottom: 1.25rem !important;
}

.u-mbm {
  margin-bottom: 3.25rem !important;
}

.u-mbl {
  margin-bottom: 4.875rem !important;
}

.u-mtn {
  margin-top: 0 !important;
}

.u-mts {
  margin-top: 1.25rem !important;
}

.u-mtm {
  margin-top: 3.25rem !important;
}

.u-mtl {
  margin-top: 4.875rem !important;
}

.u-mln {
  margin-left: 0 !important;
}

.u-mls {
  margin-left: 1.25rem !important;
}

.u-mlm {
  margin-left: 3.25rem !important;
}

.u-mll {
  margin-left: 4.875rem !important;
}

.u-mrn {
  margin-right: 0 !important;
}

.u-mrs {
  margin-right: 1.25rem !important;
}

.u-mrm {
  margin-right: 3.25rem !important;
}

.u-mrl {
  margin-right: 4.875rem !important;
}

/* Padding */
.u-pan {
  padding: 0 !important;
}

.u-pbn {
  padding-bottom: 0 !important;
}

.u-pbs {
  padding-bottom: 1.25rem !important;
}

.u-pbm {
  padding-bottom: 3.25rem !important;
}

.u-pbl {
  padding-bottom: 4.875rem !important;
}

.u-ptn {
  padding-top: 0 !important;
}

.u-pts {
  padding-top: 1.25rem !important;
}

.u-ptm {
  padding-top: 3.25rem !important;
}

.u-ptl {
  padding-top: 4.875rem !important;
}

.u-pln {
  padding-left: 0 !important;
}

.u-pls {
  padding-left: 1.25rem !important;
}

.u-plm {
  padding-left: 3.25rem !important;
}

.u-pll {
  padding-left: 4.875rem !important;
}

.u-prn {
  padding-right: 0 !important;
}

.u-prs {
  padding-right: 1.25rem !important;
}

.u-prm {
  padding-right: 3.25rem !important;
}

.u-prl {
  padding-right: 4.875rem !important;
}

.u-txtUpper {
  text-transform: uppercase !important;
}
.u-txtLower {
  text-transform: lowercase !important;
}
.u-txtCenter {
  text-align: center !important;
}
.u-txtLeft {
  text-align: left !important;
}
.u-txtRight {
  text-align: right !important;
}
.u-txtBreak {
  word-wrap: break-word !important;
}
.u-txtNoWrap {
  white-space: nowrap !important;
}
.u-txtKern {
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1;
  font-kerning: normal;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwiX3RoZW1lLWluZm8uc2NzcyIsIm1haW4uc2NzcyIsImJhc2UvX2Itbm9ybWFsaXplLnNjc3MiLCJiYXNlL19iLWZvbnQtZmFjZS5zY3NzIiwidG9vbHMvX2V4dGVuZC5zY3NzIiwiX3NldHRpbmdzLnNjc3MiLCJiYXNlL19iLWluaXQuc2NzcyIsImJhc2UvX2ItbGluay5zY3NzIiwiYmFzZS9fYi1saXN0LnNjc3MiLCJiYXNlL19iLXR5cG9ncmFwaHkuc2NzcyIsImJhc2UvX2ItZW1iZWQuc2NzcyIsImJhc2UvX2ItZ3JvdXBpbmctY29udGVudC5zY3NzIiwiYmFzZS9fYi1mb3JtLnNjc3MiLCJiYXNlL19iLXRhYmxlLnNjc3MiLCJjb21wb25lbnRzL19ncmlkLnNjc3MiLCJjb21wb25lbnRzL19sYXlvdXQuc2NzcyIsImNvbXBvbmVudHMvX2xpc3Quc2NzcyIsImNvbXBvbmVudHMvX3R5cG9ncmFwaHkuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2ljb25zLnNjc3MiLCJjb21wb25lbnRzL19oYW1idXJnZXIuc2NzcyIsImNvbXBvbmVudHMvX3NsaWNrLnNjc3MiLCJjb21wb25lbnRzL19tZW51LnNjc3MiLCJjb21wb25lbnRzL19zZWN0aW9uLnNjc3MiLCJjb21wb25lbnRzL192YWx1ZXMuc2NzcyIsImNvbXBvbmVudHMvX2NvbnRhY3Rmb3JtLnNjc3MiLCJjb21wb25lbnRzL19nYWxsZXJ5LnNjc3MiLCJzZWN0aW9ucy9faGVyby5zY3NzIiwic2VjdGlvbnMvX2Fib3V0LnNjc3MiLCJzZWN0aW9ucy9fc2VydmljZXMuc2NzcyIsInNlY3Rpb25zL19jdGEuc2NzcyIsInNlY3Rpb25zL190ZXN0aW1vbmllcy5zY3NzIiwicGFnZXMvX3BhZ2Uuc2NzcyIsInV0aWxzL191LWxheW91dC5zY3NzIiwidXRpbHMvX3Utc2hvdy1oaWRlLnNjc3MiLCJ1dGlscy9fdS1zcGFjaW5nLnNjc3MiLCJ1dGlscy9fdS10ZXh0LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDQWhCOzs7Ozs7O0NBQUE7QUNFQTs7dUNBQUE7QUNGQSwyRUFBQTtBQUVBOzs7O0VBQUE7QUNGUSxrS0FBQTtBRFFSO0VBQ0UsdUJBQUEsRUFBQSxNQUFBO0VBQ0EsMEJBQUEsRUFBQSxNQUFBO0VBQ0EsOEJBQUEsRUFBQSxNQUFBO0FIWUY7O0FHVEE7O0VBQUE7QUFJQTtFQUNFLFNBQUE7QUhXRjs7QUdSQTsrRUFBQTtBQUdBOzs7OztFQUFBO0FBT0E7Ozs7Ozs7Ozs7Ozs7RUFhRSxjQUFBO0FIU0Y7O0FHTkE7OztFQUFBO0FBS0E7Ozs7RUFJRSxxQkFBQSxFQUFBLE1BQUE7RUFDQSx3QkFBQSxFQUFBLE1BQUE7QUhRRjs7QUdMQTs7O0VBQUE7QUFLQTtFQUNFLGFBQUE7RUFDQSxTQUFBO0FIT0Y7O0FHSkE7OztFQUFBO0FBS0E7O0VBRUUsYUFBQTtBSE1GOztBR0hBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFLDZCQUFBO0FISUY7O0FHREE7OztFQUFBO0FBS0E7O0VBRUUsVUFBQTtBSEdGOztBR0FBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFLHlCQUFBO0FIQ0Y7O0FHRUE7O0VBQUE7QUFJQTs7RUFFRSxpQkFBQTtBSEFGOztBR0dBOztFQUFBO0FBSUE7RUFDRSxrQkFBQTtBSERGOztBR0lBOzs7RUFBQTtBQUtBO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0FIRkY7O0FHS0E7O0VBQUE7QUFJQTtFQUNFLGdCQUFBO0VBQ0EsV0FBQTtBSEhGOztBR01BOztFQUFBO0FBSUE7RUFDRSxjQUFBO0FISkY7O0FHT0E7O0VBQUE7QUFJQTs7RUFFRSxjQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0Esd0JBQUE7QUhMRjs7QUdRQTtFQUNFLFdBQUE7QUhMRjs7QUdRQTtFQUNFLGVBQUE7QUhMRjs7QUdRQTsrRUFBQTtB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O0FieWxCSjs7QWFybEJBOzs7Ozs7Ozs7RUFTRSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxzQlB5Q2dCO0VPeENoQix5QkFBQTtFQUNBLHlCUDNCZTtFTzRCZixvQ1BZb0I7RU9YcEIsY1Blb0I7RU9kcEIsZ0JQNkN5QjtFTzVDekIsZ0JQNkN5QjtFTzVDekIsb0JQR087QU5xbEJUO0FhdGxCRTs7Ozs7Ozs7O0VBQ0UscUJQc0N1QjtBTjBqQjNCO0FhN2xCRTs7Ozs7Ozs7O0VBQ0UscUJQMUJhO0VPMkJiLCtDUHFDdUI7RU9wQ3ZCLGFBQUE7QWJ1bUJKOztBYW5tQkE7RUFDRSxhQUFBO0Fic21CRjs7QWFubUJBO0VBQ0UsZ0JBQUE7QWJzbUJGOztBYW5tQkE7O0VBRUUsZUFBQTtFQUNBLHNCQUFBO0Fic21CRjs7QWFubUJBO0VBQ0Usc0JQTWdCO0VPTGhCLCtCQUFBO0VBQ0EsV0FBQTtBYnNtQkY7O0Fhbm1CQTtFQUNFLFdBQUE7RUFDQSxlQUFBO0VBQ0Esc0JQRmdCO0FOd21CbEI7O0Fhbm1CQTtFQUNFLHNCQUFBO0VBQ0EsZ0JQNUJvQjtFTzZCcEIseUJBQUE7RUFDQSxtQlBoRWU7RU9pRWYsZ0JQRHlCO0FOdW1CM0I7O0Fhbm1CQTtFQUNFLGNQRnlCO0FOd21CM0I7O0FhbG1CQTtFQUNFLGNQUHlCO0FONG1CM0I7O0Fham1CQTtFQUNFLGNQWnlCO0FOZ25CM0I7O0Fham1CQTtFQUNFLGNQaEJ5QjtBTm9uQjNCOztBY3pzQkE7RUFDRSxpQkFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtFQUNBLHlCQUFBO0FkNHNCRjs7QWN6c0JBOzs7RUFHRSxzQkFBQTtBZDRzQkY7O0FjenNCQTtFQUNFLGdCUjJEZ0I7RVExRGhCLGdDQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBZDRzQkY7QWMzc0JFO0VBQ0UsOEJBQUE7QWQ2c0JKOztBY3ZzQkk7RUFDRSxtQlJSVztBTmt0QmpCO0FjdnNCRTtFQUNFLHlCQUFBO0VBQ0EsZ0NBQUE7QWR5c0JKO0FjeHNCSTtFQUNFLDhCQUFBO0FkMHNCTjs7QUVsdEJBOzt1Q0FB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QTtFQUFTLGtDQUFBO0F0Q3k2R1Q7O0FzQ3g2R0E7RUFBUyxtQ0FBQTtBdEM0NkdUOztBc0MzNkdBO0VBQVMseUJBQUE7QXRDKzZHVDs7QXNDOTZHQTtFQUFTLCtCQUFBO0F0Q2s3R1Q7O0FzQ2o3R0E7RUFBUywrQkFBQTtBdENxN0dUOztBc0NwN0dBO0VBQVMsZ0NBQUE7QXRDdzdHVDs7QXNDdjdHQTtFQUFTLDBCQUFBO0F0QzI3R1Q7O0FzQzE3R0E7RUFBUyxnQ0FBQTtBdEM4N0dUOztBc0M3N0dBO0VBQVMsZ0NBQUE7QXRDaThHVDs7QXNDaDhHQTtFQUFTLGlDQUFBO0F0Q284R1Q7O0FzQ244R0E7RUFBUywyQkFBQTtBdEN1OEdUOztBc0N0OEdBO0VBQVMsaUNBQUE7QXRDMDhHVDs7QXNDejhHQTtFQUFTLGlDQUFBO0F0QzY4R1Q7O0FzQzU4R0E7RUFBUyxrQ0FBQTtBdENnOUdUOztBdUN6L0dFO0VBQVUsb0NBQUE7QXZDNi9HWjtBdUM1L0dFO0VBQVUsb0NBQUE7QXZDKy9HWjtBdUM5L0dFO0VBQVUsNkJBQUE7QXZDaWdIWjtBdUNoZ0hFO0VBQVUsMkJBQUE7QXZDbWdIWjtBdUNsZ0hFO0VBQVUsNEJBQUE7QXZDcWdIWjtBdUNwZ0hFO0VBQVUsZ0NBQUE7QXZDdWdIWjtBdUN0Z0hFO0VBQVUsOEJBQUE7QXZDeWdIWjtBdUN2Z0hFO0VBQ0Usa0NBQUE7RUFDQSwrQkFBQTtFQUNBLG9CQUFBO0F2Q3lnSEoiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLypcblRoZW1lIE5hbWU6IE1hcmllbGluZUdhdXRoaWVyXG5BdXRob3I6IEFuZ8OobGUgVGVub3RcbkF1dGhvciBVUkk6IGh0dHA6Ly93d3cubWFkZW1vaXNlbGxlLWFuZ2VsZS5mci9cbkRlc2NyaXB0aW9uOiBuZXcgd2Vic2l0ZSBUaGVtZSBmb3IgTWFyaWUtTGluZSBHYXV0aGllclxuVmVyc2lvbjogMS4wXG5MaWNlbnNlOiBDdXN0b20gQ2xpZW50IFRoZW1lLiBTaG91bGQgbm90IGJlIGRpc3RyaWJ1dGVkLlxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgIyBTZXR0aW5ncywgRnVuY3Rpb25zLi4uXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4zIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAqL1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUxpYnJlK0JvZG9uaTppdGFsLHdnaHRAMCw0MDAuLjcwMDsxLDQwMC4uNzAwJmZhbWlseT1PcGVuK1NhbnM6aXRhbCx3Z2h0QDAsMzAwLi44MDA7MSwzMDAuLjgwMCZkaXNwbGF5PXN3YXBcIik7XG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICovXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gKi9cbi8qXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4qL1xuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICBtYXJnaW46IDA7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXG4gKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1idXR0b25dLFxuaW5wdXRbdHlwZT1yZXNldF0sXG5pbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cbmlucHV0W3R5cGU9Y2hlY2tib3hdLFxuaW5wdXRbdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuaW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIFRhYmxlc1xuZ3VcblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuXG4udHh0WFMsIC50eHRTLCAudHh0TSwgLnR4dEwsIC50eHRYTCwgLnR4dFhYTCwgaDYsIGg1LCBoNCwgaDMsIGgyLCBoMSB7XG4gIG1hcmdpbjogMCAwIDEuMjVyZW0gMDtcbiAgZm9udC1mYW1pbHk6IFwiTGlicmUgQm9kb25pXCIsIHNlcmlmO1xuICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzIxMjEyMTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cbi50eHRYUzpmaXJzdC1jaGlsZCwgLnR4dFM6Zmlyc3QtY2hpbGQsIC50eHRNOmZpcnN0LWNoaWxkLCAudHh0TDpmaXJzdC1jaGlsZCwgLnR4dFhMOmZpcnN0LWNoaWxkLCAudHh0WFhMOmZpcnN0LWNoaWxkLCBoNjpmaXJzdC1jaGlsZCwgaDU6Zmlyc3QtY2hpbGQsIGg0OmZpcnN0LWNoaWxkLCBoMzpmaXJzdC1jaGlsZCwgaDI6Zmlyc3QtY2hpbGQsIGgxOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnUtdHh0VHJ1bmNhdGUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXMgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICB3b3JkLXdyYXA6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICMgQmFzZVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmh0bWwsXG5ib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzIxMjEyMTtcbiAgYmFja2dyb3VuZDogI0Y4RjlGMDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cblt0YWJpbmRleD1cIi0xXCJdOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5tYWluIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM1ODQ5MTA7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbm9sLCB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDAuODEyNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNjI1ZW07XG59XG5vbDpmaXJzdC1jaGlsZCwgdWw6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAwLjgxMjVlbTtcbn1cbmRsIGR0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi10b3A6IDAuODEyNWVtO1xufVxuZGwgZGQge1xuICBtYXJnaW46IDA7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAxLjc1ZW07XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IDEuMjVlbTtcbn1cblxuaDUge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxucCB7XG4gIG1hcmdpbjogMS4yNXJlbSAwO1xufVxucDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgZm9udC12YXJpYW50OiBzbWFsbC1jYXBzO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuXG5hYmJyLFxuYWNyb255bSB7XG4gIGN1cnNvcjogaGVscDtcbn1cblxuaW1nLFxudmlkZW8ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuaWZyYW1lIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxLjI1cmVtIDA7XG59XG5cbmZpZ2NhcHRpb24ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuaHIge1xuICBtYXJnaW46IDMuMjVyZW0gMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjZWNlY2U7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDMuMjVyZW0gMDtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICNjZWNlY2U7XG4gIGNvbG9yOiAjNDc0NzQ3O1xufVxuYmxvY2txdW90ZSBjaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUwqBcIjtcbn1cblxuY2l0ZSB7XG4gIGNvbG9yOiAjNjE2MTYxO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbnByZSB7XG4gIGZvbnQtc2l6ZTogMC44MTI1ZW07XG59XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IFwiU291cmNlIENvZGUgUHJvXCIsIENvbnNvbGFzLCBtb25vc3BhY2U7XG4gIHdoaXRlLXNwYWNlOiBwcmUtbGluZTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuXG5jb2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwYWRkaW5nOiAwIDAuNWVtO1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FjYTQ4ODtcbiAgY29sb3I6ICM1ODQ5MTA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU0ZGI7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuaW5wdXQsXG5sYWJlbCxcbnNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5sYWJlbC5yZXF1aXJlZDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiICpcIjtcbn1cbmxhYmVsIGFiYnIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuaW5wdXRbdHlwZT1udW1iZXJdLFxuaW5wdXRbdHlwZT1wYXNzd29yZF0sXG5pbnB1dFt0eXBlPXNlYXJjaF0sXG5pbnB1dFt0eXBlPXRlbF0sXG5pbnB1dFt0eXBlPXRleHRdLFxuaW5wdXRbdHlwZT11cmxdLFxuc2VsZWN0W211bHRpcGxlPW11bHRpcGxlXSB7XG4gIHBhZGRpbmc6IDAuNjI1ZW07XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VjZWNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOUYwO1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xufVxudGV4dGFyZWE6aG92ZXIsXG5pbnB1dFt0eXBlPWVtYWlsXTpob3ZlcixcbmlucHV0W3R5cGU9bnVtYmVyXTpob3ZlcixcbmlucHV0W3R5cGU9cGFzc3dvcmRdOmhvdmVyLFxuaW5wdXRbdHlwZT1zZWFyY2hdOmhvdmVyLFxuaW5wdXRbdHlwZT10ZWxdOmhvdmVyLFxuaW5wdXRbdHlwZT10ZXh0XTpob3ZlcixcbmlucHV0W3R5cGU9dXJsXTpob3ZlcixcbnNlbGVjdFttdWx0aXBsZT1tdWx0aXBsZV06aG92ZXIge1xuICBib3JkZXItY29sb3I6ICNhNWE1YTU7XG59XG50ZXh0YXJlYTpmb2N1cyxcbmlucHV0W3R5cGU9ZW1haWxdOmZvY3VzLFxuaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzLFxuaW5wdXRbdHlwZT1wYXNzd29yZF06Zm9jdXMsXG5pbnB1dFt0eXBlPXNlYXJjaF06Zm9jdXMsXG5pbnB1dFt0eXBlPXRlbF06Zm9jdXMsXG5pbnB1dFt0eXBlPXRleHRdOmZvY3VzLFxuaW5wdXRbdHlwZT11cmxdOmZvY3VzLFxuc2VsZWN0W211bHRpcGxlPW11bHRpcGxlXTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzgwMDAyMDtcbiAgYm94LXNoYWRvdzogbm9uZSwgMCAwIDVweCByZ2JhKDEwMywgMCwgMjYsIDAuNyk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9c3VibWl0XTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuaW5wdXRbdHlwZT1jaGVja2JveF0sXG5pbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbn1cblxuaW5wdXRbdHlwZT1maWxlXSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjQxNjY2NjY2NjdyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5zZWxlY3Qge1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMCAwIDAuODEyNWVtIDA7XG4gIHBhZGRpbmc6IDEuNjI1ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWNlY2U7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNhNmE2YTY7XG59XG5cbmlucHV0Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2E2YTZhNjtcbn1cblxuaW5wdXQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2E2YTZhNjtcbn1cblxuaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNhNmE2YTY7XG59XG5cbnRhYmxlIHtcbiAgbWFyZ2luOiAxLjI1cmVtIDA7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2VjZWNlO1xufVxuXG50cixcbnRkLFxudGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG50aCB7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjY2VjZWNlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbnRoICsgdGgge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlN2U3ZTc7XG59XG5cbnRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7XG59XG50Ym9keSB0ZCB7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDEuMjVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2VjZWNlO1xufVxudGJvZHkgdGQgKyB0ZCB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U3ZTdlNztcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjIExheW91dFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogV3JhcHBlclxuICovXG4ud3JhcHBlciB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgLndyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDc1ZW07XG4gIH1cbn1cblxuLyoqXG4gKiBHcmlkXG4gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5ncmlkLTEtNCxcbiAgLmdyaWQtMi00LFxuICAuZ3JpZC0zLTQsXG4gIC5ncmlkLTQtNCxcbiAgLmdyaWQtMS0zLFxuICAuZ3JpZC0yLTMge1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIH1cbiAgLmdyaWQtMS00IHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5ncmlkLTItNCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuZ3JpZC0zLTQge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmdyaWQtNC00IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZ3JpZC0xLTMge1xuICAgIHdpZHRoOiAzMy4zMzMlO1xuICB9XG4gIC5ncmlkLTItMyB7XG4gICAgd2lkdGg6IDY2LjY2NiU7XG4gIH1cbn1cbi5jbGVhcmZpeCB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uY2VudGVyLFxuLmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ubGVmdCxcbi5hbGlnbmxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5sZWZ0LFxuICAuYWxpZ25sZWZ0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4ucmlnaHQsXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5yaWdodCxcbiAgLmFsaWducmlnaHQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbmltZy5hbGlnbmxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IDEuMjVlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIGltZy5hbGlnbmxlZnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMC45Mzc1ZW0gYXV0bztcbiAgfVxufVxuXG5pbWcuYWxpZ25yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICBpbWcuYWxpZ25yaWdodCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwLjkzNzVlbSBhdXRvO1xuICB9XG59XG5cbi5mbGV4UHVzaCB7XG4gIHdpZHRoOiAzMiU7XG59XG5cbi5tZW51LWxpc3QgLnN1Yi1tZW51LFxuLmxpc3QtYmFzaWMsXG4ubGlzdC1yZXNldCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm1lbnUtbGlzdCwgLnNsaWNrLWRvdHMsXG4ubGlzdC1pbmxpbmUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4ubWVudS1saXN0ID4gbGksIC5zbGljay1kb3RzID4gbGksXG4ubGlzdC1pbmxpbmUgPiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5tZW51LWxpc3QgPiBsaSArIGxpLCAuc2xpY2stZG90cyA+IGxpICsgbGksXG4ubGlzdC1pbmxpbmUgPiBsaSArIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTtcbn1cblxuLmxpc3QtYmFzaWMge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmxpc3QtYmFzaWMgbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCItXCI7XG4gIG1hcmdpbi1yaWdodDogMC4yNWVtO1xufVxuXG4udHh0WFhMIHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi50eHRYTCB7XG4gIGZvbnQtc2l6ZTogMS43NWVtO1xufVxuXG4udHh0TCB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG59XG5cbi50eHRNIHtcbiAgZm9udC1zaXplOiAxLjI1ZW07XG59XG5cbi50eHRTIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi50eHRYUyB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udHh0TGVhZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi50eHRTbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAjODAwMDIwO1xuICBjb2xvcjogI0Y4RjlGMDtcbn1cblxuLnByZS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIzMzM4O1xuICBwYWRkaW5nOiAwLjQzNzVlbSAwO1xufVxuLnByZS1oZWFkZXIgLnNvY2lhbHMtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ucHJlLWhlYWRlciAuc29jaWFscy1saXN0IC5zb2NpYWwtaXRlbSB7XG4gIG1hcmdpbjogMCAwLjVlbTtcbn1cbi5wcmUtaGVhZGVyIC5zb2NpYWxzLWxpc3QgLnNvY2lhbC1pdGVtIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEuNzVlbTtcbiAgY29sb3I6ICNGOEY5RjA7XG59XG4ucHJlLWhlYWRlciAuc29jaWFscy1saXN0IC5zb2NpYWwtaXRlbSBhOmhvdmVyLCAucHJlLWhlYWRlciAuc29jaWFscy1saXN0IC5zb2NpYWwtaXRlbSBhOmFjdGl2ZSwgLnByZS1oZWFkZXIgLnNvY2lhbHMtbGlzdCAuc29jaWFsLWl0ZW0gYTpmb2N1cyB7XG4gIGNvbG9yOiAjYWNhNDg4O1xufVxuLnByZS1oZWFkZXIgLnNvY2lhbHMtbGlzdCAuYnRuIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDEuMjVyZW07XG59XG5cbi5tYWluLWhlYWRlciAud3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDAuOTM3NWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1ZW07XG59XG4ubWFpbi1oZWFkZXIgLmhlYWRlci1sb2dvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTUuNjI1ZW07XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG59XG4ubWFpbi1oZWFkZXIgLmhlYWRlci1sb2dvIGltZywgLm1haW4taGVhZGVyIC5oZWFkZXItbG9nbyBzdmcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5pcy1zdGlja3kge1xuICB6LWluZGV4OiAxMDA7XG59XG4uaXMtc3RpY2t5IC5tYWluLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY5RjA7XG59XG5cbi5mb290ZXIge1xuICBjb2xvcjogI0Y4RjlGMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjEyMTIxO1xuICBwYWRkaW5nOiAyLjgxMjVlbSAwO1xufVxuLmZvb3RlciBhIHtcbiAgY29sb3I6ICNGOEY5RjA7XG59XG4uZm9vdGVyIGE6aG92ZXIsIC5mb290ZXIgYTphY3RpdmUsIC5mb290ZXIgYTpmb2N1cyB7XG4gIGNvbG9yOiAjNTg0OTEwO1xufVxuLmZvb3RlciAuZm9vdGVyLWxvZ28ge1xuICB3aWR0aDogMTIuNWVtO1xufVxuLmZvb3RlciAuc29jaWFscy1saXN0IGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogMS4yNWVtO1xufVxuLmZvb3RlciAuc29jaWFscy1saXN0IGEge1xuICBmb250LXNpemU6IDEuNTYyNWVtO1xufVxuLmZvb3RlciAuc29jaWFscy1saXN0IGE6aG92ZXIsIC5mb290ZXIgLnNvY2lhbHMtbGlzdCBhOmZvY3VzLCAuZm9vdGVyIC5zb2NpYWxzLWxpc3QgYTphY3RpdmUge1xuICBjb2xvcjogI2FjYTQ4ODtcbn1cbi5mb290ZXIgLmZvb3Rlci1jb3B5cmlnaHQge1xuICBmb250LXNpemU6IDAuODc1ZW07XG59XG5cbi5jb250YWN0Zm9ybS13cmFwcGVyIGlucHV0W3R5cGU9c3VibWl0XSwgLmJ1dHRvblNlY29uZGFyeSxcbi5idG4tc2Vjb25kYXJ5LCAuYnRuLWJvcmRlciwgLmJ0bi1saWdodCwgLmJ1dHRvbixcbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMzc1ZW0gMDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1mYW1pbHk6IFwiTGlicmUgQm9kb25pXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDEuMTg3NWVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXdlaWdodDogNDAwO1xuICBib3JkZXI6IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICAtd2Via2l0LXVzZXItZHJhZzogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgLmNvbnRhY3Rmb3JtLXdyYXBwZXIgaW5wdXRbdHlwZT1zdWJtaXRdICsgW2NsYXNzKj1idXR0b25dLCAuYnV0dG9uU2Vjb25kYXJ5ICsgW2NsYXNzKj1idXR0b25dLFxuICAuYnRuLXNlY29uZGFyeSArIFtjbGFzcyo9YnV0dG9uXSwgLmJ0bi1ib3JkZXIgKyBbY2xhc3MqPWJ1dHRvbl0sIC5idG4tbGlnaHQgKyBbY2xhc3MqPWJ1dHRvbl0sIC5idXR0b24gKyBbY2xhc3MqPWJ1dHRvbl0sXG4gIC5idG4gKyBbY2xhc3MqPWJ1dHRvbl0ge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgfVxufVxuLmNvbnRhY3Rmb3JtLXdyYXBwZXIgaW5wdXRbdHlwZT1zdWJtaXRdOmRpc2FibGVkLCAuYnV0dG9uU2Vjb25kYXJ5OmRpc2FibGVkLFxuLmJ0bi1zZWNvbmRhcnk6ZGlzYWJsZWQsIC5idG4tYm9yZGVyOmRpc2FibGVkLCAuYnRuLWxpZ2h0OmRpc2FibGVkLCAuYnV0dG9uOmRpc2FibGVkLFxuLmJ0bjpkaXNhYmxlZCwgLmNvbnRhY3Rmb3JtLXdyYXBwZXIgaW5wdXQuaXMtZGlzYWJsZWRbdHlwZT1zdWJtaXRdLCAuaXMtZGlzYWJsZWQuYnV0dG9uU2Vjb25kYXJ5LFxuLmlzLWRpc2FibGVkLmJ0bi1zZWNvbmRhcnksIC5pcy1kaXNhYmxlZC5idG4tYm9yZGVyLCAuaXMtZGlzYWJsZWQuYnRuLWxpZ2h0LCAuaXMtZGlzYWJsZWQuYnV0dG9uLFxuLmlzLWRpc2FibGVkLmJ0biB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgb3BhY2l0eTogMC4zNTtcbn1cblxuLyoqXG4gKiBCYXNlIHN0eWxlXG4gKi9cbi5idXR0b24sXG4uYnRuIHtcbiAgY29sb3I6ICM4MDAwMjA7XG59XG4uYnV0dG9uOmFmdGVyLCAuYnV0dG9uOmJlZm9yZSxcbi5idG46YWZ0ZXIsXG4uYnRuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gIGJvcmRlci10b3A6IDAuMTI1cmVtIHNvbGlkICM1ODQ5MTA7XG4gIG1hcmdpbjogMC45Mzc1cmVtIGF1dG8gMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG59XG4uYnV0dG9uOmJlZm9yZSxcbi5idG46YmVmb3JlIHtcbiAgbWFyZ2luOiAwIGF1dG8gMC45Mzc1cmVtO1xufVxuLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyxcbi5idG46aG92ZXIsXG4uYnRuOmZvY3VzIHtcbiAgY29sb3I6ICM4MDAwMjA7XG59XG4uYnV0dG9uOmhvdmVyOmFmdGVyLCAuYnV0dG9uOmhvdmVyOmJlZm9yZSwgLmJ1dHRvbjpmb2N1czphZnRlciwgLmJ1dHRvbjpmb2N1czpiZWZvcmUsXG4uYnRuOmhvdmVyOmFmdGVyLFxuLmJ0bjpob3ZlcjpiZWZvcmUsXG4uYnRuOmZvY3VzOmFmdGVyLFxuLmJ0bjpmb2N1czpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMwMDFGM0Y7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJ1dHRvbjpkaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5pcy1kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5pcy1kaXNhYmxlZDpmb2N1cyxcbi5idG46ZGlzYWJsZWQ6aG92ZXIsXG4uYnRuLmlzLWRpc2FibGVkOmhvdmVyLFxuLmJ0bi5pcy1kaXNhYmxlZDpmb2N1cyB7XG4gIGNvbG9yOiAjRjhGOUYwO1xuICBvdXRsaW5lOiBub25lO1xufVxuLmJ0bi1saWdodCB7XG4gIGNvbG9yOiAjRjhGOUYwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiAjRjhGOUYwO1xufVxuLmJ0bi1saWdodDpob3ZlciwgLmJ0bi1saWdodDpmb2N1cywgLmJ0bi1saWdodDphY3RpdmUge1xuICBjb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjlGMDtcbiAgYm9yZGVyLWNvbG9yOiAjRjhGOUYwO1xufVxuXG4uYnRuLWJvcmRlciB7XG4gIGNvbG9yOiAjRjhGOUYwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgI0Y4RjlGMDtcbiAgYm9yZGVyLXJhZGl1czogMS41NjI1cmVtO1xufVxuLmJ0bi1ib3JkZXI6YmVmb3JlLCAuYnRuLWJvcmRlcjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYnRuLWJvcmRlcjpob3ZlciwgLmJ0bi1ib3JkZXI6Zm9jdXMsIC5idG4tYm9yZGVyOmFjdGl2ZSB7XG4gIGNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOUYwO1xuICBib3JkZXItY29sb3I6ICNGOEY5RjA7XG59XG5cbi5idXR0b25TZWNvbmRhcnksXG4uYnRuLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjRjhGOUYwO1xuICBiYWNrZ3JvdW5kOiAjMDAxRjNGO1xuICBwYWRkaW5nOiAwLjkzNzVyZW0gMS44NzVyZW07XG59XG4uYnV0dG9uU2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uU2Vjb25kYXJ5OmZvY3VzLFxuLmJ0bi1zZWNvbmRhcnk6aG92ZXIsXG4uYnRuLXNlY29uZGFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjRjhGOUYwO1xuICBiYWNrZ3JvdW5kOiAjODAwMDIwO1xufVxuLmJ1dHRvblNlY29uZGFyeTphZnRlciwgLmJ1dHRvblNlY29uZGFyeTpiZWZvcmUsXG4uYnRuLXNlY29uZGFyeTphZnRlcixcbi5idG4tc2Vjb25kYXJ5OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYnV0dG9uU2Vjb25kYXJ5OmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uU2Vjb25kYXJ5LmlzLWRpc2FibGVkOmhvdmVyLCAuYnV0dG9uU2Vjb25kYXJ5LmlzLWRpc2FibGVkOmZvY3VzLFxuLmJ0bi1zZWNvbmRhcnk6ZGlzYWJsZWQ6aG92ZXIsXG4uYnRuLXNlY29uZGFyeS5pcy1kaXNhYmxlZDpob3Zlcixcbi5idG4tc2Vjb25kYXJ5LmlzLWRpc2FibGVkOmZvY3VzIHtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIGJhY2tncm91bmQ6ICNjZWNlY2U7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uYnV0dG9uU2Vjb25kYXJ5LmlzLWFjdGl2ZSxcbi5idG4tc2Vjb25kYXJ5LmlzLWFjdGl2ZSB7XG4gIGNvbG9yOiAjRjhGOUYwO1xuICBiYWNrZ3JvdW5kOiAjN2M3YzdjO1xufVxuXG4vKipcbiAqIE1vZGlmaWVyXG4gKi9cbi5idXR0b24tLXNtYWxsIHtcbiAgcGFkZGluZzogMC4yMzA3NjkyMzA4ZW0gMC43NjkyMzA3NjkyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1ZW07XG59XG5cbi5idXR0b24tLWJpZyB7XG4gIHBhZGRpbmc6IDAuNzVlbSAxLjVlbTtcbiAgZm9udC1zaXplOiAxLjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMztcbn1cblxuLmJ1dHRvbi0tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgLmJ1dHRvbi0tbW9iaWxlRnVsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVGhpcyBmaWxlIGlzIGF1dG9tYXRpY2FsbHlcbiAgZ2VuZXJhdGVkIHVzaW5nIGd1bHAuXG5cbiAgQWRkIC5zdmcgZmlsZXMgdG8gdGhlIGFzc2V0cy9pY29uRm9udFxuICBmb2xkZXIgdG8gYWRkIGljb25zXG5cbiAgLyFcXCBEbyBub3QgbW9kaWZ5IC8hXFwgISEhXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcImRvdWxhc3RhcnRlci1pY29uc1wiO1xuICBzcmM6IHVybChcImZvbnRzL2RvdWxhc3RhcnRlci1pY29ucy5lb3RcIik7XG4gIHNyYzogdXJsKFwiZm9udHMvZG91bGFzdGFydGVyLWljb25zLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCJmb250cy9kb3VsYXN0YXJ0ZXItaWNvbnMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCJmb250cy9kb3VsYXN0YXJ0ZXItaWNvbnMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCJmb250cy9kb3VsYXN0YXJ0ZXItaWNvbnMuc3ZnI2RvdWxhc3RhcnRlci1pY29uc1wiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5bY2xhc3MqPWljb24tXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LWZhbWlseTogXCJkb3VsYXN0YXJ0ZXItaWNvbnNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgc3BlYWs6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDAxXCI7XG59XG5cbi5pY29uLWluc3RhZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwMlwiO1xufVxuXG4uaWNvbi1saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwM1wiO1xufVxuXG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA0XCI7XG59XG5cbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cbi5oYW1idXJnZXIge1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgZmlsdGVyO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgZm9udDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDAgMCAwIDAuNjI1ZW07XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBoZWlnaHQ6IDEuNDM3NWVtO1xufVxuLmhhbWJ1cmdlcjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5oYW1idXJnZXI6aG92ZXIgLmhhbWJ1cmdlci1pbm5lcixcbi5oYW1idXJnZXI6aG92ZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuLmhhbWJ1cmdlcjpob3ZlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG59XG5cbi5oYW1idXJnZXIuaXMtYWN0aXZlOmhvdmVyIC5oYW1idXJnZXItaW5uZXIsXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZTpob3ZlciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZTpob3ZlciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGOEY5RjA7XG59XG5cbi5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4uaGFtYnVyZ2VyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWRkZTI7XG59XG5cbi5oYW1idXJnZXItYm94IHtcbiAgd2lkdGg6IDEuNjI1ZW07XG4gIGhlaWdodDogMS40Mzc1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMnB4O1xufVxuXG4uaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgd2lkdGg6IDEuNjI1ZW07XG4gIGhlaWdodDogMC4xODc1ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG59XG5cbi5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAtMTBweDtcbn1cblxuLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IC0xMHB4O1xufVxuXG4vKlxuICAgKiAzRFhcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogODBweDtcbn1cblxuLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG5cbi5oYW1idXJnZXItLTNkeC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWSgxODBkZWcpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKlxuICAgKiAzRFggUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDgwcHg7XG59XG5cbi5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWSgtMTgwZGVnKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi8qXG4gICAqIDNEWVxuICAgKi9cbi5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA4MHB4O1xufVxuXG4uaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG5cbi5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKC0xODBkZWcpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKlxuICAgKiAzRFkgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDgwcHg7XG59XG5cbi5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLypcbiAgICogM0RYWVxuICAgKi9cbi5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogODBweDtcbn1cblxuLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG59XG5cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZyk7XG59XG5cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R4eS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLypcbiAgICogM0RYWSBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDgwcHg7XG59XG5cbi5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS0zZHh5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZykgcm90YXRlWigtMTgwZGVnKTtcbn1cblxuLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5oYW1idXJnZXItLTNkeHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLypcbiAgICogQXJyb3dcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvdy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS1hcnJvdy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cblxuLypcbiAgICogQXJyb3cgUmlnaHRcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvdy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS1hcnJvdy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xufVxuXG4vKlxuICAgKiBBcnJvdyBBbHRcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG59XG5cbi5oYW1idXJnZXItLWFycm93YWx0IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgMTBweCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuXG4vKlxuICAgKiBBcnJvdyBBbHQgUmlnaHRcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgLTEwcHgsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbn1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAxMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xufVxuXG4vKlxuICAgKiBBcnJvdyBUdXJuXG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG59XG5cbi5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xufVxuXG4vKlxuICAgKiBBcnJvdyBUdXJuIFJpZ2h0XG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cblxuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG59XG5cbi8qXG4gICAqIEJvcmluZ1xuICAgKi9cbi5oYW1idXJnZXItLWJvcmluZyAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLS1ib3JpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1ib3JpbmcgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBub25lO1xufVxuXG4uaGFtYnVyZ2VyLS1ib3JpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGFtYnVyZ2VyLS1ib3JpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuXG4vKlxuICAgKiBDb2xsYXBzZVxuICAgKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTNzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAtMjBweDtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIG9wYWNpdHkgMC4xcyBsaW5lYXI7XG59XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuXG4uaGFtYnVyZ2VyLS1jb2xsYXBzZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS1jb2xsYXBzZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjtcbn1cblxuLmhhbWJ1cmdlci0tY29sbGFwc2UuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gICAqIENvbGxhcHNlIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1jb2xsYXBzZS1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTNzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IC0yMHB4O1xuICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgb3BhY2l0eSAwLjFzIGxpbmVhcjtcbn1cblxuLmhhbWJ1cmdlci0tY29sbGFwc2UtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cblxuLmhhbWJ1cmdlci0tY29sbGFwc2Utci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIG9wYWNpdHkgMC4xcyAwLjIycyBsaW5lYXI7XG59XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cblxuLypcbiAgICogRWxhc3RpY1xuICAgKi9cbi5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMnB4O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbn1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDAuNTYyNWVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbn1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogMS4xMjVlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjc1cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbn1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKDEzNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcbn1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgcm90YXRlKC0yNzBkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG59XG5cbi8qXG4gICAqIEVsYXN0aWMgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLWVsYXN0aWMtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAycHg7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuXG4uaGFtYnVyZ2VyLS1lbGFzdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTI1cyAwLjI3NXMgZWFzZTtcbn1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAyMHB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpO1xufVxuXG4uaGFtYnVyZ2VyLS1lbGFzdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHJvdGF0ZSgtMTM1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzO1xufVxuXG4uaGFtYnVyZ2VyLS1lbGFzdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGFtYnVyZ2VyLS1lbGFzdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgcm90YXRlKDI3MGRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcbn1cblxuLypcbiAgICogRW1waGF0aWNcbiAgICovXG4uaGFtYnVyZ2VyLS1lbXBoYXRpYyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5oYW1idXJnZXItLWVtcGhhdGljIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbn1cblxuLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbn1cblxuLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbn1cblxuLmhhbWJ1cmdlci0tZW1waGF0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgbGVmdDogLTgwcHg7XG4gIHRvcDogLTgwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoODBweCwgODBweCwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tZW1waGF0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgcmlnaHQ6IC04MHB4O1xuICB0b3A6IC04MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04MHB4LCA4MHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbjogcmlnaHQgMC4xMjVzIGVhc2Utb3V0LCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG59XG5cbi8qXG4gICAqIEVtcGhhdGljIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy1yIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmhhbWJ1cmdlci0tZW1waGF0aWMtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG59XG5cbi5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCBsZWZ0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbn1cblxuLmhhbWJ1cmdlci0tZW1waGF0aWMtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogMTBweDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluO1xufVxuXG4uaGFtYnVyZ2VyLS1lbXBoYXRpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLmhhbWJ1cmdlci0tZW1waGF0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgbGVmdDogLTgwcHg7XG4gIHRvcDogODBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4MHB4LCAtODBweCwgMCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG59XG5cbi5oYW1idXJnZXItLWVtcGhhdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgcmlnaHQ6IC04MHB4O1xuICB0b3A6IDgwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTgwcHgsIC04MHB4LCAwKSByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbn1cblxuLypcbiAgICogTWludXNcbiAgICovXG4uaGFtYnVyZ2VyLS1taW51cyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLW1pbnVzIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDhzIDBzIGVhc2Utb3V0LCB0b3AgMC4wOHMgMHMgZWFzZS1vdXQsIG9wYWNpdHkgMHMgbGluZWFyO1xufVxuXG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgZWFzZS1vdXQsIHRvcCAwLjA4cyBlYXNlLW91dCwgb3BhY2l0eSAwcyAwLjA4cyBsaW5lYXI7XG59XG5cbi5oYW1idXJnZXItLW1pbnVzLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG59XG5cbi5oYW1idXJnZXItLW1pbnVzLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbn1cblxuLypcbiAgICogU2xpZGVyXG4gICAqL1xuLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDJweDtcbn1cblxuLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMC41NjI1ZW07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xufVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0b3A6IDEuMTI1ZW07XG59XG5cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogLTAuMDYyNWVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUzZCgtNS43MTQyOXB4LCAtNnB4LCAwKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhhbWJ1cmdlci0tc2xpZGVyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogMS4yNWVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKSByb3RhdGUoLTkwZGVnKTtcbn1cblxuLypcbiAgICogU2xpZGVyIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zbGlkZXItciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAycHg7XG59XG5cbi5oYW1idXJnZXItLXNsaWRlci1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMTBweDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG59XG5cbi5oYW1idXJnZXItLXNsaWRlci1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAyMHB4O1xufVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXItci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKC00NWRlZyk7XG59XG5cbi5oYW1idXJnZXItLXNsaWRlci1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlM2QoNS43MTQyOXB4LCAtNnB4LCAwKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgcm90YXRlKDkwZGVnKTtcbn1cblxuLypcbiAgICogU3BpblxuICAgKi9cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4yNXMgZWFzZS1pbiwgb3BhY2l0eSAwLjFzIGVhc2UtaW47XG59XG5cbi5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjI1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4yMnMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS1zcGluLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7XG59XG5cbi5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMjJzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICAgKiBTcGluIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zcGluLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjtcbn1cblxuLmhhbWJ1cmdlci0tc3Bpbi1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4yNXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMjJzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuXG4uaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjI1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tc3Bpbi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7XG59XG5cbi5oYW1idXJnZXItLXNwaW4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjIycyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cblxuLypcbiAgICogU3ByaW5nXG4gICAqL1xuLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDJweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7XG59XG5cbi5oYW1idXJnZXItLXNwcmluZyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDEwcHg7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLXNwcmluZyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogMjBweDtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cblxuLmhhbWJ1cmdlci0tc3ByaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG5cbi5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE1cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpO1xufVxuXG4uaGFtYnVyZ2VyLS1zcHJpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLypcbiAgICogU3ByaW5nIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zcHJpbmctciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuXG4uaGFtYnVyZ2VyLS1zcHJpbmctciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRvcDogLTIwcHg7XG4gIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCBvcGFjaXR5IDBzIGxpbmVhcjtcbn1cblxuLmhhbWJ1cmdlci0tc3ByaW5nLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cblxuLmhhbWJ1cmdlci0tc3ByaW5nLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tc3ByaW5nLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIG9wYWNpdHkgMHMgMC4yMnMgbGluZWFyO1xufVxuXG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xufVxuXG4vKlxuICAgKiBTdGFuZFxuICAgKi9cbi5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG59XG5cbi5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cblxuLmhhbWJ1cmdlci0tc3RhbmQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyO1xufVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi5oYW1idXJnZXItLXN0YW5kLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gICAqIFN0YW5kIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG59XG5cbi5oYW1idXJnZXItLXN0YW5kLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cblxuLmhhbWJ1cmdlci0tc3RhbmQtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG59XG5cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcbn1cblxuLmhhbWJ1cmdlci0tc3RhbmQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cblxuLypcbiAgICogU3F1ZWV6ZVxuICAgKi9cbi5oYW1idXJnZXItLXNxdWVlemUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDc1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xufVxuXG4uaGFtYnVyZ2VyLS1zcXVlZXplIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xMnMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgZWFzZTtcbn1cblxuLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xMnMgZWFzZSwgdHJhbnNmb3JtIDAuMDc1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbn1cblxuLmhhbWJ1cmdlci0tc3F1ZWV6ZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tc3F1ZWV6ZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIGVhc2UsIG9wYWNpdHkgMC4wNzVzIDAuMTJzIGVhc2U7XG59XG5cbi5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIGVhc2UsIHRyYW5zZm9ybSAwLjA3NXMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG59XG5cbi8qXG4gICAqIFZvcnRleFxuICAgKi9cbi5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG5cbi5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7XG59XG5cbi5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtO1xufVxuXG4uaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg3NjVkZWcpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuXG4uaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4vKlxuICAgKiBWb3J0ZXggUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xufVxuXG4uaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG59XG5cbi5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTtcbn1cblxuLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTtcbn1cblxuLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzY1ZGVnKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbn1cblxuLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG59XG5cbi5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zbGljay1saXN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cbi5zbGljay10cmFjazphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBoZWlnaHQ6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lO1xufVxuW2Rpcj1ydGxdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5zbGljay1zbGlkZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBmb250LXNpemU6IDNlbTtcbiAgY29sb3I6ICM4MDAwMjA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG59XG5AbWVkaWEgKG1heC13aWR0aDogODMuMTI1ZW0pIHtcbiAgLnNsaWNrLXByZXYsXG4gIC5zbGljay1uZXh0IHtcbiAgICBmb250LXNpemU6IDEuODc1ZW07XG4gIH1cbn1cbi5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbi5zbGljay1uZXh0OmhvdmVyLFxuLnNsaWNrLW5leHQ6Zm9jdXMge1xuICBjb2xvcjogIzAwMUYzRjtcbn1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMy40Mzc1cmVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDgzLjEyNWVtKSB7XG4gIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IC0zLjQzNzVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4My4xMjVlbSkge1xuICAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuLnNsaWNrLWRvdHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMS41NjI1ZW0gMCAwO1xufVxuLnNsaWNrLWRvdHMgYnV0dG9uIHtcbiAgaGVpZ2h0OiAwLjkzNzVyZW07XG4gIHdpZHRoOiAwLjkzNzVyZW07XG4gIHRleHQtaW5kZW50OiAtNjI1MHJlbTtcbiAgYmFja2dyb3VuZDogIzgwMDAyMDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwLjE4NzVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDgwZW0pIHtcbiAgLnNsaWNrLWRvdHMgYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDAuNzVyZW07XG4gICAgd2lkdGg6IDAuNzVyZW07XG4gIH1cbn1cbi5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24sXG4uc2xpY2stZG90cyBsaTpob3ZlciBidXR0b24sXG4uc2xpY2stZG90cyBsaTpmb2N1cyBidXR0b24ge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjNTg0OTEwO1xufVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjaywgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ubWVudS1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5tZW51LWxpc3QgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAwLjg3NWVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gIC5tZW51LWxpc3QgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC42MjVlbSAwO1xuICB9XG59XG4ubWVudS1saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4ubWVudS1saXN0ID4gbGkgPiBhIHtcbiAgZm9udC1zaXplOiAxLjE4NzVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4MGVtKSB7XG4gIC5tZW51LWxpc3QgPiBsaSA+IGEge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgfVxufVxuLm1lbnUtbGlzdCA+IGxpID4gYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAuMzEyNXJlbSBhdXRvIDA7XG4gIHdpZHRoOiA1cmVtO1xuICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAjYWNhNDg4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcbn1cbi5tZW51LWxpc3QgPiBsaSA+IGE6aG92ZXI6YWZ0ZXIsIC5tZW51LWxpc3QgPiBsaSA+IGE6Zm9jdXM6YWZ0ZXIsIC5tZW51LWxpc3QgPiBsaSA+IGE6YWN0aXZlOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNTg0OTEwO1xufVxuLm1lbnUtbGlzdCA+IGxpIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiTGlicmUgQm9kb25pXCIsIHNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzgwMDAyMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MS44NzVlbSkge1xuICAubWVudS1saXN0ID4gbGkgYSB7XG4gICAgY29sb3I6ICNkOWRkZTI7XG4gIH1cbn1cbi5tZW51LWxpc3QgPiBsaSBhOmhvdmVyLCAubWVudS1saXN0ID4gbGkgYTpmb2N1cyB7XG4gIGNvbG9yOiAjODAwMDIwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gIC5tZW51LWxpc3QgPiBsaSBhOmhvdmVyLCAubWVudS1saXN0ID4gbGkgYTpmb2N1cyB7XG4gICAgY29sb3I6ICM1ODQ5MTA7XG4gIH1cbn1cbi5tZW51LWxpc3QgLnN1Yi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjNWEwMDE2O1xuICBtYXJnaW4tdG9wOiAwLjYyNWVtO1xuICBwYWRkaW5nOiAwLjYyNWVtIDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xuICB6LWluZGV4OiAtMTA7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MS44NzVlbSkge1xuICAubWVudS1saXN0IC5zdWItbWVudSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYmFja2dyb3VuZDogIzIxMjEyMTtcbiAgfVxufVxuLm1lbnUtbGlzdCAuc3ViLW1lbnUuaXMtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogMTA7XG59XG4ubWVudS1saXN0IC5zdWItbWVudSA+IGxpIHtcbiAgcGFkZGluZzogMC4zMTI1ZW0gMi4xODc1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogODcuNWVtKSB7XG4gIC5tZW51LWxpc3QgLnN1Yi1tZW51ID4gbGkge1xuICAgIHBhZGRpbmc6IDAuMzEyNWVtIDEuMjVlbTtcbiAgfVxufVxuLm1lbnUtbGlzdCAuc3ViLW1lbnUgPiBsaSBhIHtcbiAgY29sb3I6ICNGOEY5RjA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjEuODc1ZW0pIHtcbiAgLm1lbnUtbGlzdCAuc3ViLW1lbnUgPiBsaSBhIHtcbiAgICBjb2xvcjogI2Q5ZGRlMjtcbiAgfVxufVxuLm1lbnUtbGlzdCAuc3ViLW1lbnUgPiBsaSBhOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjRjhGOUYwO1xufVxuLm1lbnUtbGlzdCAuc3ViLW1lbnUgPiBsaSBhOmhvdmVyOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4ubWVudS1saXN0IC5zdWItbWVudSA+IGxpIGE6aG92ZXIge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ubWVudS1kZXNrdG9wIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjEuODc1ZW0pIHtcbiAgLm1lbnUtZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTIxMjE7XG4gICAgcGFkZGluZy10b3A6IDcuMTg3NWVtO1xuICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gIH1cbn1cbi5tZW51LWRlc2t0b3AuaXMtYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDIwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gIC5tZW51LWRlc2t0b3AgLm1lbnUtbGlzdCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi50b2dnbGUtbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjEuODc1ZW0pIHtcbiAgLnRvZ2dsZS1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiAyMTtcbiAgfVxufVxuXG4uZm9vdGVyLW1lbnUge1xuICBtYXJnaW4tdG9wOiAxLjI1ZW07XG59XG4uZm9vdGVyLW1lbnUgYSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG59XG4uZm9vdGVyLW1lbnUgYTpob3ZlciwgLmZvb3Rlci1tZW51IGE6Zm9jdXMsIC5mb290ZXItbWVudSBhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjYWNhNDg4O1xufVxuLmZvb3Rlci1tZW51IGEgKyBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwifFwiO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbn1cblxuLnNlY3Rpb24taGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcbn1cblxuLnNlY3Rpb24tdGl0bGUge1xuICBmb250LXNpemU6IDIuNWVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgfVxufVxuXG4uc2VjdGlvbi1pbnRybyB7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbn1cbi5zZWN0aW9uLWludHJvIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi52YWx1ZXMtd3JhcHBlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDhmOWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMy4xMjVlbSAwIDAuNjI1ZW07XG4gIG1hcmdpbi10b3A6IDMuMTI1ZW07XG59XG5cbi52YWx1ZS1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41ZW07XG59XG5cbi52YWx1ZXMtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTtcbn1cblxuLnZhbHVlLWltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDYuMjVlbTtcbiAgbWFyZ2luOiAwIGF1dG8gMS44NzVlbTtcbn1cblxuLnZhbHVlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbn1cblxuLnZhbHVlLXRleHQge1xuICBtYXJnaW46IDA7XG59XG5cbi5jb250YWN0Zm9ybS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FjYTQ4ODtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgbWFyZ2luOiAzLjEyNWVtIGF1dG8gMDtcbn1cbi5jb250YWN0Zm9ybS13cmFwcGVyIGZvcm0ge1xuICBtYXgtd2lkdGg6IDM3LjVlbTtcbiAgcGFkZGluZzogMS4yNWVtIDIuNWVtO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5jb250YWN0Zm9ybS13cmFwcGVyIGZvcm0ge1xuICAgIHBhZGRpbmc6IDEuMjVlbSAwO1xuICB9XG59XG4uY29udGFjdGZvcm0td3JhcHBlciBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LWZhbWlseTogXCJMaWJyZSBCb2RvbmlcIiwgc2VyaWY7XG4gIGNvbG9yOiAjRjhGOUYwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gIC5jb250YWN0Zm9ybS13cmFwcGVyIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5jb250YWN0Zm9ybS13cmFwcGVyIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuLmNvbnRhY3Rmb3JtLXdyYXBwZXIgbGFiZWwgaW5wdXQsIC5jb250YWN0Zm9ybS13cmFwcGVyIGxhYmVsIHRleHRhcmVhIHtcbiAgY29sb3I6ICMyMTIxMjE7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG4uY29udGFjdGZvcm0td3JhcHBlciAud3BjZjctZm9ybS1jb250cm9sLXdyYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC42MjVlbTtcbn1cbi5jb250YWN0Zm9ybS13cmFwcGVyIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDAwMjA7XG4gIGNvbG9yOiAjRjhGOUYwO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nOiAwLjVyZW0gMS41NjI1cmVtO1xufVxuLmNvbnRhY3Rmb3JtLXdyYXBwZXIgLmNvbnRhY3Rmb3JtLWluZm8ge1xuICBmb250LXNpemU6IDAuODEyNWVtO1xuICBjb2xvcjogIzU4NDkxMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmFqYXgtbG9hZGVyLFxuLndwY2Y3LW5vdC12YWxpZC10aXAge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi53cGNmNyBmb3JtIC53cGNmNy1yZXNwb25zZS1vdXRwdXQge1xuICBjb2xvcjogIzIxMjEyMTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi53cGNmNy1xdWl6LWxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuXG4ud3BjZjctcXVpeiB7XG4gIG1hcmdpbjogMC45Mzc1cmVtIDA7XG59XG5cbi5nYWxsZXJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuLmdhbGxlcnkgLmdhbGxlcnktaXRlbSB7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMyAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IDMzLjMzMyU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAuZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogMjUlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAzMS4yNWVtKSB7XG4gIC5nYWxsZXJ5LWNvbHVtbnMtNCAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiAyMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjEuODc1ZW0pIHtcbiAgLmdhbGxlcnktY29sdW1ucy01IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5nYWxsZXJ5LWNvbHVtbnMtNSAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzEuMjVlbSkge1xuICAuZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjIFNlY3Rpb25zXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNlY3Rpb24taGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMjcuNWVtO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIuNWVtIDA7XG59XG4uc2VjdGlvbi1oZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzMywgMzMsIDMzLCAwLjMpO1xufVxuLnNlY3Rpb24taGVybyAud3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MS44NzVlbSkge1xuICAuc2VjdGlvbi1oZXJvIC53cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbi5zZWN0aW9uLWhlcm8gLmhlcm8tdGV4dC13cmFwcGVyLFxuLnNlY3Rpb24taGVybyAuaGVyby1pbWcge1xuICB3aWR0aDogNTAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gIC5zZWN0aW9uLWhlcm8gLmhlcm8tdGV4dC13cmFwcGVyLFxuICAuc2VjdGlvbi1oZXJvIC5oZXJvLWltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5zZWN0aW9uLWhlcm8gLmhlcm8taW1nIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDEyLjVyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAuc2VjdGlvbi1oZXJvIC5oZXJvLWltZyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDE4Ljc1ZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MS44NzVlbSkge1xuICAuc2VjdGlvbi1oZXJvIC5oZXJvLXRleHQtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMi41ZW07XG4gIH1cbn1cbi5zZWN0aW9uLWhlcm8gLmhlcm8tdGl0bGUge1xuICBmb250LWZhbWlseTogXCJMaWJyZSBCb2RvbmlcIiwgc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMy40Mzc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI0Y4RjlGMDtcbiAgbWFyZ2luOiAwIDAgMC42MjVyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzVlbSkge1xuICAuc2VjdGlvbi1oZXJvIC5oZXJvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDMuNzVlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gIC5zZWN0aW9uLWhlcm8gLmhlcm8tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy4xMjVlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY3Rpb24taGVybyAuaGVyby10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjE4NzVlbTtcbiAgfVxufVxuLnNlY3Rpb24taGVybyAuaGVyby1zdWJ0aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgY29sb3I6ICNGOEY5RjA7XG4gIG1hcmdpbjogMC45Mzc1cmVtIDAgMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MS44NzVlbSkge1xuICAuc2VjdGlvbi1oZXJvIC5oZXJvLXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG4uc2VjdGlvbi1oZXJvIC5oZXJvLXRleHQge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGNvbG9yOiAjRjhGOUYwO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xufVxuLnNlY3Rpb24taGVybyAuYnRuIHtcbiAgY29sb3I6ICNGOEY5RjA7XG59XG4uc2VjdGlvbi1oZXJvIC5idG46YmVmb3JlLCAuc2VjdGlvbi1oZXJvIC5idG46YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICNGOEY5RjA7XG59XG5cbi5zZWN0aW9uLWFib3V0IHtcbiAgcGFkZGluZzogNC4zNzVlbSAwIDQuNjg3NWVtO1xufVxuLnNlY3Rpb24tYWJvdXQgLmdyaWQge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gIC5zZWN0aW9uLWFib3V0IC5ncmlkIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MS44NzVlbSkge1xuICAuc2VjdGlvbi1hYm91dCAuYWJvdXQtdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNWVtO1xuICB9XG59XG4uc2VjdGlvbi1hYm91dCAuc2VjdGlvbi10ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMy4xMjVlbTtcbn1cbi5zZWN0aW9uLWFib3V0IC5hYm91dC1pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uc2VjdGlvbi1hYm91dCAuYWJvdXQtaW1nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMi41ZW07XG4gIHJpZ2h0OiAtMS44NzVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjMuNWVtO1xuICBoZWlnaHQ6IDM1LjM3NWVtO1xuICBib3JkZXItcmFkaXVzOiAxMi41ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDAwMjA7XG4gIHotaW5kZXg6IC0xO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjg3NWVtKSB7XG4gIC5zZWN0aW9uLWFib3V0IC5hYm91dC1pbWc6YmVmb3JlIHtcbiAgICB0b3A6IC0xLjI1ZW07XG4gICAgcmlnaHQ6IC0wLjkzNzVlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY3Rpb24tYWJvdXQgLmFib3V0LWltZzpiZWZvcmUge1xuICAgIGhlaWdodDogMjVlbTtcbiAgICB3aWR0aDogMTYuNjI1ZW07XG4gIH1cbn1cbi5zZWN0aW9uLWFib3V0IC5hYm91dC1pbWcgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMTIuNWVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY3Rpb24tYWJvdXQgLmFib3V0LWltZyBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDI1ZW07XG4gIH1cbn1cblxuLnNlY3Rpb24tc2VydmljZXMge1xuICBwYWRkaW5nOiA1LjYyNWVtIDA7XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VjdGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zZWN0aW9uLXNlcnZpY2VzIC5zZWN0aW9uLXRpdGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IHVybChpbWFnZXMvdGl0bGUtYmxvYi5zdmcpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDcuMzEyNXJlbTtcbiAgaGVpZ2h0OiA2LjI1cmVtO1xufVxuLnNlY3Rpb24tc2VydmljZXMgLnNlY3Rpb24tdGl0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMzclO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy9pY28tZ3JlbmFkZS5wbmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBoZWlnaHQ6IDk1cHg7XG4gIHdpZHRoOiAxMjBweDtcbn1cbi5zZWN0aW9uLXNlcnZpY2VzIC5zZXJ2aWNlcy13cmFwcGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMiwgMWZyKTtcbiAgZ3JpZC1jb2x1bW4tZ2FwOiAxMHB4O1xuICBncmlkLXJvdy1nYXA6IDEwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAuc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCAxZnIpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzQuMzc1ZW0pIHtcbiAgLnNlY3Rpb24tc2VydmljZXMgLnNlcnZpY2VzLXdyYXBwZXIge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDUsIDFmcik7XG4gIH1cbn1cbi5zZWN0aW9uLXNlcnZpY2VzIC5zZXJ2aWNlcy13cmFwcGVyIC5zZXJ2aWNlLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zZWN0aW9uLXNlcnZpY2VzIC5zZXJ2aWNlcy13cmFwcGVyIC5zZXJ2aWNlLWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgZ3JpZC1hcmVhOiAxLzEvMy8zO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY3Rpb24tc2VydmljZXMgLnNlcnZpY2VzLXdyYXBwZXIgLnNlcnZpY2UtaXRlbTpudGgtY2hpbGQoMSkge1xuICAgIGdyaWQtYXJlYTogMS8xLzIvMjtcbiAgfVxufVxuLnNlY3Rpb24tc2VydmljZXMgLnNlcnZpY2VzLXdyYXBwZXIgLnNlcnZpY2UtaXRlbTpudGgtY2hpbGQoMSkgLnNlcnZpY2UtaW1nOmFmdGVyIHtcbiAgaGVpZ2h0OiAxMi4xMjVyZW07XG4gIHdpZHRoOiAxNy45Mzc1cmVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY3Rpb24tc2VydmljZXMgLnNlcnZpY2VzLXdyYXBwZXIgLnNlcnZpY2UtaXRlbTpudGgtY2hpbGQoMSkgLnNlcnZpY2UtaW1nOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDUuNTYyNXJlbTtcbiAgICB3aWR0aDogOC4xODc1cmVtO1xuICB9XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOm50aC1jaGlsZCgyKSB7XG4gIGdyaWQtYXJlYTogMS8zLzIvNDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5zZWN0aW9uLXNlcnZpY2VzIC5zZXJ2aWNlcy13cmFwcGVyIC5zZXJ2aWNlLWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICBncmlkLWFyZWE6IDEvMi8yLzM7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAuc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgZ3JpZC1hcmVhOiAyLzEvMy8yO1xuICB9XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOm50aC1jaGlsZCgzKSB7XG4gIGdyaWQtYXJlYTogMS80LzIvNTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5zZWN0aW9uLXNlcnZpY2VzIC5zZXJ2aWNlcy13cmFwcGVyIC5zZXJ2aWNlLWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICBncmlkLWFyZWE6IDIvMS8zLzI7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAuc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgZ3JpZC1hcmVhOiAzLzEvNC8yO1xuICB9XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOm50aC1jaGlsZCg0KSB7XG4gIGdyaWQtYXJlYTogMi8zLzMvNDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5zZWN0aW9uLXNlcnZpY2VzIC5zZXJ2aWNlcy13cmFwcGVyIC5zZXJ2aWNlLWl0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICBncmlkLWFyZWE6IDIvMi8zLzM7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAuc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOm50aC1jaGlsZCg0KSB7XG4gICAgZ3JpZC1hcmVhOiA0LzEvNS8yO1xuICB9XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOm50aC1jaGlsZCg1KSB7XG4gIGdyaWQtYXJlYTogMi80LzMvNTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5zZWN0aW9uLXNlcnZpY2VzIC5zZXJ2aWNlcy13cmFwcGVyIC5zZXJ2aWNlLWl0ZW06bnRoLWNoaWxkKDUpIHtcbiAgICBncmlkLWFyZWE6IDMvMS80LzI7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAzNC4zNzVlbSkge1xuICAuc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOm50aC1jaGlsZCg1KSB7XG4gICAgZ3JpZC1hcmVhOiA1LzEvNi8yO1xuICB9XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOmhvdmVyIHNwYW4uYnRuLCAuc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOmZvY3VzIHNwYW4uYnRuLCAuc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pdGVtOmFjdGl2ZSBzcGFuLmJ0biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDAwMjA7XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDA7XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS1pbWc6YWZ0ZXIgeyAvKlxuXHRjb250ZW50OiAnJztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdHJpZ2h0OiAwO1xuXHRkaXNwbGF5OiBibG9jaztcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy9mb25kcG9zdC5zdmcpO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cdGhlaWdodDogcmVtKDg5KTtcblx0d2lkdGg6IHJlbSgxMzEpO1xuKi8gfVxuLnNlY3Rpb24tc2VydmljZXMgLnNlcnZpY2VzLXdyYXBwZXIgLnNlcnZpY2UtaW1nIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNlY3Rpb24tc2VydmljZXMgLnNlcnZpY2VzLXdyYXBwZXIgc3Bhbi5idG4ge1xuICBtYXgtd2lkdGg6IDkwJTtcbiAgbWluLXdpZHRoOiAxMS44NzVyZW07XG4gIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xufVxuLnNlY3Rpb24tc2VydmljZXMgLnNlcnZpY2VzLXdyYXBwZXIgLnNlcnZpY2UtdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtZmFtaWx5OiBcIkxpYnJlIEJvZG9uaVwiLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc1ZW0pIHtcbiAgLnNlY3Rpb24tc2VydmljZXMgLnNlcnZpY2VzLXdyYXBwZXIgLnNlcnZpY2UtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICB9XG59XG4uc2VjdGlvbi1zZXJ2aWNlcyAuc2VydmljZXMtd3JhcHBlciAuc2VydmljZS10ZXh0IHtcbiAgZm9udC1mYW1pbHk6IFwiTGlicmUgQm9kb25pXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgbWFyZ2luOiAwIDAgMS4yNXJlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NWVtKSB7XG4gIC5zZWN0aW9uLXNlcnZpY2VzIC5zZXJ2aWNlcy13cmFwcGVyIC5zZXJ2aWNlLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgfVxufVxuXG4uc2VjdGlvbi1jdGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMi41cmVtIDA7XG59XG4uc2VjdGlvbi1jdGE6YmVmb3JlLCAuc2VjdGlvbi1jdGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTMuODc1ZW07XG4gIHdpZHRoOiAyNC4xODc1ZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvY3RhLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgei1pbmRleDogLTE7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjEuODc1ZW0pIHtcbiAgLnNlY3Rpb24tY3RhOmJlZm9yZSwgLnNlY3Rpb24tY3RhOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDcuMTg3NWVtO1xuICAgIHdpZHRoOiAxMi41ZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5zZWN0aW9uLWN0YTpiZWZvcmUsIC5zZWN0aW9uLWN0YTphZnRlciB7XG4gICAgaGVpZ2h0OiA0Ljg3NWVtO1xuICAgIHdpZHRoOiA4LjQzNzVlbTtcbiAgfVxufVxuLnNlY3Rpb24tY3RhOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtMS44NzVlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDhkZWcpIHNjYWxlWCgtMSk7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAuc2VjdGlvbi1jdGE6YmVmb3JlIHtcbiAgICB0b3A6IC0zLjEyNWVtO1xuICB9XG59XG4uc2VjdGlvbi1jdGE6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IC0xLjg3NWVtO1xufVxuLnNlY3Rpb24tY3RhIC53cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiA2Mi41cmVtO1xufVxuXG4uY3RhLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiTGlicmUgQm9kb25pXCIsIHNlcmlmO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLmN0YS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjMxMjVlbTtcbiAgfVxufVxuXG4uY3RhLXRleHQge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAuY3RhLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICB9XG59XG5cbi5zZWN0aW9uLXRlc3RpbW9uaWVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA1ZW0gMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5zZWN0aW9uLXRlc3RpbW9uaWVzIHtcbiAgICBwYWRkaW5nOiAzLjEyNWVtIDA7XG4gIH1cbn1cbi5zZWN0aW9uLXRlc3RpbW9uaWVzIC50ZXN0aW1vbmllcy1iZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG4uc2VjdGlvbi10ZXN0aW1vbmllcyAud3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMi41ZW0gNC4zNzVlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5zZWN0aW9uLXRlc3RpbW9uaWVzIC53cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICBwYWRkaW5nOiAxLjg3NWVtIDEuMjVlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cbi5zZWN0aW9uLXRlc3RpbW9uaWVzIC53cmFwcGVyOmFmdGVyIHtcbiAgLypjb250ZW50OiB1cmwoaW1hZ2VzL3Rlc3RpbW9uaWVzLnN2Zyk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IHJlbSgtMjApO1xuICByaWdodDogcmVtKC03KTtcbiAgei1pbmRleDogMDsqL1xufVxuLnNlY3Rpb24tdGVzdGltb25pZXMgLnNlY3Rpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjRjhGOUYwO1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAuc2VjdGlvbi10ZXN0aW1vbmllcyAuc2VjdGlvbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjMxMjVlbTtcbiAgfVxufVxuLnNlY3Rpb24tdGVzdGltb25pZXMgLnRlc3RpbW9ueS1pdGVtIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY3Rpb24tdGVzdGltb25pZXMgLnRlc3RpbW9ueS10ZXh0IHtcbiAgICBmb250LXNpemU6IDAuOTM3NWVtO1xuICB9XG59XG4uc2VjdGlvbi10ZXN0aW1vbmllcyAudGVzdGltb255LW5hbWUsXG4uc2VjdGlvbi10ZXN0aW1vbmllcyAudGVzdGltb255LWluZm9zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJMaWJyZSBCb2RvbmlcIiwgc2VyaWY7XG4gIGNvbG9yOiAjNTg0OTEwO1xuICBtYXJnaW46IDA7XG59XG4uc2VjdGlvbi10ZXN0aW1vbmllcyAudGVzdGltb255LWluZm9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiLVwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICMgUGFnZXNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucGFnZS1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MDAwMjA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBhZGRpbmc6IDVlbSAwIDYuODc1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDIuODEyNWVtIDAgNWVtO1xuICB9XG59XG4ucGFnZS1oZWFkZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDkwLCAwLCAyMiwgMC41KTtcbn1cblxuLnBhZ2UtaGVhZGVyLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLnBhZ2UtaGVhZGVyLXRpdGxlOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTMuNDM3NXJlbTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvaGFsZi1zdW4uc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogMTUwcHg7XG59XG4ucGFnZS1oZWFkZXItdGl0bGUgLnBhZ2UtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjRjhGOUYwO1xufVxuXG4ucGFnZS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxpYnJlIEJvZG9uaVwiLCBzZXJpZjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICB9XG59XG5cbi5wYWdlLWludHJvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogODAlO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG8gMS4yNXJlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWludHJvIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgfVxufVxuXG4ucGFnZS1jb250ZW50IHtcbiAgcGFkZGluZzogMy4xMjVlbSAwO1xufVxuLnBhZ2UtY29udGVudCBoMSwgLnBhZ2UtY29udGVudCBoMiwgLnBhZ2UtY29udGVudCBoMywgLnBhZ2UtY29udGVudCBoNCwgLnBhZ2UtY29udGVudCBoNSwgLnBhZ2UtY29udGVudCBoNiB7XG4gIGZvbnQtZmFtaWx5OiBcIkxpYnJlIEJvZG9uaVwiLCBzZXJpZjtcbiAgY29sb3I6ICM4MDAwMjA7XG59XG4ucGFnZS1jb250ZW50IGE6bm90KC5idG4pIHtcbiAgY29sb3I6ICM4MDAwMjA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLnBhZ2UtY29udGVudCBhOm5vdCguYnRuKTpob3ZlciwgLnBhZ2UtY29udGVudCBhOm5vdCguYnRuKTphY3RpdmUsIC5wYWdlLWNvbnRlbnQgYTpub3QoLmJ0bik6Zm9jdXMge1xuICBjb2xvcjogIzU4NDkxMDtcbn1cbi5wYWdlLWNvbnRlbnQgYS5idG4ge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgbWFyZ2luOiAwLjkzNzVyZW0gMDtcbn1cbi5wYWdlLWNvbnRlbnQgaW1nLnJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAxMi41ZW07XG59XG4ucGFnZS1jb250ZW50IGJsb2NrcXVvdGUsXG4ucGFnZS1jb250ZW50IHEge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG59XG4ucGFnZS1jb250ZW50IHVsIGxpLFxuLnBhZ2UtY29udGVudCBvbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbn1cbi5wYWdlLWNvbnRlbnQgdWwgbGk6Om1hcmtlcixcbi5wYWdlLWNvbnRlbnQgb2wgbGk6Om1hcmtlciB7XG4gIGNvbG9yOiAjYWNhNDg4O1xufVxuLnBhZ2UtY29udGVudCB1bCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6IDEuNjI1ZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cbi5wYWdlLWNvbnRlbnQgdWwgdWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDEuMjVyZW07XG59XG4ucGFnZS1jb250ZW50IHRhYmxlIHtcbiAgYm9yZGVyOiBzb2xpZCAwLjA2MjVyZW0gIzgwMDAyMDtcbn1cbi5wYWdlLWNvbnRlbnQgdGJvZHkgdGgge1xuICBmb250LWZhbWlseTogXCJMaWJyZSBCb2RvbmlcIiwgc2VyaWY7XG59XG4ucGFnZS1jb250ZW50IHRib2R5IHRoLFxuLnBhZ2UtY29udGVudCB0Ym9keSB0ZCB7XG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDAuMDYyNXJlbSAjODAwMDIwO1xufVxuLnBhZ2UtY29udGVudCB0Ym9keSB0ZCArIHRkLFxuLnBhZ2UtY29udGVudCB0Ym9keSB0aCArIHRoIHtcbiAgYm9yZGVyLWxlZnQ6IHNvbGlkIDAuMDYyNXJlbSAjODAwMDIwO1xufVxuLnBhZ2UtY29udGVudCB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNkOWRlO1xufVxuXG5ib2R5LnBhZ2UtdGVtcGxhdGUtZGVmYXVsdDpub3QoLnBhZ2UtZGFjY3VlaWwpIG1haW4ge1xuICBwYWRkaW5nOiAzLjc1ZW0gMDtcbn1cblxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utc2VydmljZXMgLnBhZ2UtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tdG9wOiAzLjEyNWVtO1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utc2VydmljZXMgLnBhZ2UtbGlzdCAucGFnZS1pdGVtIHtcbiAgd2lkdGg6IDMwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWJvdHRvbTogMS41NjI1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICBib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1zZXJ2aWNlcyAucGFnZS1saXN0IC5wYWdlLWl0ZW0ge1xuICAgIHdpZHRoOiA0OCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41ZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAzMS4yNWVtKSB7XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXNlcnZpY2VzIC5wYWdlLWxpc3QgLnBhZ2UtaXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXNlcnZpY2VzIC5wYWdlLWxpc3QgLnBhZ2UtaXRlbSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utc2VydmljZXMgLnBhZ2UtbGlzdCAucGFnZS1pdGVtIC5wYWdlLXRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utc2VydmljZXMgLnBhZ2UtbGlzdCAucGFnZS1pdGVtIC5wYWdlLWl0ZW0tdGl0bGUge1xuICBmb250LWZhbWlseTogXCJMaWJyZSBCb2RvbmlcIiwgc2VyaWY7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXNlcnZpY2VzIC5wYWdlLWxpc3QgLnBhZ2UtaXRlbSAucGFnZS1pdGVtLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMzEyNWVtO1xuICB9XG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWFib3V0IC50ZXh0LWNvbnRlbnQge1xuICBwYWRkaW5nOiAzLjEyNWVtIDA7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgIyBVdGlsc1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51LWNmOmJlZm9yZSwgLnUtY2Y6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG4udS1jZjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udS1ub0JmYyB7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLnUtZmxvYXRMZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLnUtZmxvYXRSaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4udS0xMDB2aCB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuXG4udS1oaWRlTW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDMwLjA2MjVlbSkge1xuICAudS1oaWRlTW9iaWxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMC4wNjI1ZW0pIHtcbiAgLnUtc2hvd01vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi51LWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFNwYWNpbmcgaGVscGVyc1xuICogICBwLG0gPSBwYWRkaW5nLCBtYXJnaW5cbiAqICAgYSx0LHIsYixsID0gYWxsLCB0b3AsIGJvdHRvbSwgbGVmdCwgcmlnaHRcbiAqICAgbixzLG0sbCA9IG5vbmUsIHNtYWxsLCBtZWRpdW0sIGxhcmdlXG4gKi9cbi8qIE1hcmdpbiAqL1xuLnUtbWFuIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51LW1ibiB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnUtbWJzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udS1tYm0ge1xuICBtYXJnaW4tYm90dG9tOiAzLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LW1ibCB7XG4gIG1hcmdpbi1ib3R0b206IDQuODc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LW10biB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLnUtbXRzIHtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udS1tdG0ge1xuICBtYXJnaW4tdG9wOiAzLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LW10bCB7XG4gIG1hcmdpbi10b3A6IDQuODc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LW1sbiB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi51LW1scyB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LW1sbSB7XG4gIG1hcmdpbi1sZWZ0OiAzLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LW1sbCB7XG4gIG1hcmdpbi1sZWZ0OiA0Ljg3NXJlbSAhaW1wb3J0YW50O1xufVxuXG4udS1tcm4ge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnUtbXJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LW1ybSB7XG4gIG1hcmdpbi1yaWdodDogMy4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udS1tcmwge1xuICBtYXJnaW4tcmlnaHQ6IDQuODc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIFBhZGRpbmcgKi9cbi51LXBhbiB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLnUtcGJuIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnUtcGJzIHtcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnUtcGJtIHtcbiAgcGFkZGluZy1ib3R0b206IDMuMjVyZW0gIWltcG9ydGFudDtcbn1cblxuLnUtcGJsIHtcbiAgcGFkZGluZy1ib3R0b206IDQuODc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LXB0biB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi51LXB0cyB7XG4gIHBhZGRpbmctdG9wOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LXB0bSB7XG4gIHBhZGRpbmctdG9wOiAzLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LXB0bCB7XG4gIHBhZGRpbmctdG9wOiA0Ljg3NXJlbSAhaW1wb3J0YW50O1xufVxuXG4udS1wbG4ge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnUtcGxzIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LXBsbSB7XG4gIHBhZGRpbmctbGVmdDogMy4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udS1wbGwge1xuICBwYWRkaW5nLWxlZnQ6IDQuODc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LXBybiB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnUtcHJzIHtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbSAhaW1wb3J0YW50O1xufVxuXG4udS1wcm0ge1xuICBwYWRkaW5nLXJpZ2h0OiAzLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LXBybCB7XG4gIHBhZGRpbmctcmlnaHQ6IDQuODc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi51LXR4dFVwcGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuLnUtdHh0TG93ZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG59XG4udS10eHRDZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cbi51LXR4dExlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG4udS10eHRSaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG4udS10eHRCcmVhayB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZCAhaW1wb3J0YW50O1xufVxuLnUtdHh0Tm9XcmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuLnUtdHh0S2VybiB7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJrZXJuXCIgMTtcbiAgZm9udC1rZXJuaW5nOiBub3JtYWw7XG59IiwiLypcblRoZW1lIE5hbWU6IE1hcmllbGluZUdhdXRoaWVyXG5BdXRob3I6IEFuZ8OobGUgVGVub3RcbkF1dGhvciBVUkk6IGh0dHA6Ly93d3cubWFkZW1vaXNlbGxlLWFuZ2VsZS5mci9cbkRlc2NyaXB0aW9uOiBuZXcgd2Vic2l0ZSBUaGVtZSBmb3IgTWFyaWUtTGluZSBHYXV0aGllclxuVmVyc2lvbjogMS4wXG5MaWNlbnNlOiBDdXN0b20gQ2xpZW50IFRoZW1lLiBTaG91bGQgbm90IGJlIGRpc3RyaWJ1dGVkLlxuKi9cbiIsIkBpbXBvcnQgXCJfdGhlbWUtaW5mb1wiO1xuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICMgU2V0dGluZ3MsIEZ1bmN0aW9ucy4uLlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgXCJiYXNlL19iLW5vcm1hbGl6ZS5zY3NzXCI7XG5AaW1wb3J0IFwidG9vbHMvX2Z1bmN0aW9uXCI7XG5AaW1wb3J0IFwidG9vbHMvX21peGluc1wiO1xuQGltcG9ydCBcIl9zZXR0aW5nc1wiO1xuQGltcG9ydCBcInRvb2xzL19leHRlbmRcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjIEJhc2VcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgXCJiYXNlL19iLWZvbnQtZmFjZVwiO1xuQGltcG9ydCBcImJhc2UvX2ItaW5pdFwiO1xuQGltcG9ydCBcImJhc2UvX2ItbGlua1wiO1xuQGltcG9ydCBcImJhc2UvX2ItbGlzdFwiO1xuQGltcG9ydCBcImJhc2UvX2ItdHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImJhc2UvX2ItZW1iZWRcIjtcbkBpbXBvcnQgXCJiYXNlL19iLWdyb3VwaW5nLWNvbnRlbnRcIjtcbkBpbXBvcnQgXCJiYXNlL19iLWZvcm1cIjtcbkBpbXBvcnQgXCJiYXNlL19iLXRhYmxlXCI7XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgIyBMYXlvdXRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbXBvcnQgXCJjb21wb25lbnRzL19ncmlkXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fbGF5b3V0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fbGlzdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3R5cG9ncmFwaHlcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19oZWFkZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19mb290ZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19idXR0b25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19pY29uc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2hhbWJ1cmdlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3NsaWNrXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fbWVudVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3NlY3Rpb25cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL192YWx1ZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jb250YWN0Zm9ybVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2dhbGxlcnlcIjtcblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICMgU2VjdGlvbnNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwic2VjdGlvbnMvX2hlcm9cIjtcbkBpbXBvcnQgXCJzZWN0aW9ucy9fYWJvdXRcIjtcbkBpbXBvcnQgXCJzZWN0aW9ucy9fc2VydmljZXNcIjtcbkBpbXBvcnQgXCJzZWN0aW9ucy9fY3RhXCI7XG5AaW1wb3J0IFwic2VjdGlvbnMvX3Rlc3RpbW9uaWVzXCI7XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjIFBhZ2VzXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGltcG9ydCBcInBhZ2VzL19wYWdlXCI7XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAjIFV0aWxzXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AaW1wb3J0IFwidXRpbHMvX3UtbGF5b3V0XCI7XG5AaW1wb3J0IFwidXRpbHMvX3Utc2hvdy1oaWRlXCI7XG5AaW1wb3J0IFwidXRpbHMvX3Utc3BhY2luZ1wiO1xuQGltcG9ydCBcInV0aWxzL191LXRleHRcIjtcbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gKiBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAqIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuLypcbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiovXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICBtYXJnaW46IDA7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xufVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAqL1xuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBUYWJsZXNcbmd1XG5cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwO1xufVxuIiwiQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9TGlicmUrQm9kb25pOml0YWwsd2dodEAwLDQwMC4uNzAwOzEsNDAwLi43MDAmZmFtaWx5PU9wZW4rU2FuczppdGFsLHdnaHRAMCwzMDAuLjgwMDsxLDMwMC4uODAwJmRpc3BsYXk9c3dhcCcpOyIsIiV0aXRsZSB7XG4gIG1hcmdpbjogMCAwICRzcGFjZXItcyAwO1xuICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQtZmFtaWx5O1xuICBsaW5lLWhlaWdodDogJGhlYWRlci1saW5lLWhlaWdodDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICRoZWFkZXItZm9udC1jb2xvcjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMFxuICB9XG59XG5cbiV0cnVuY2F0ZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcyAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIHdvcmQtd3JhcDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gICBCYXNlXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gQmFzZSBjb2xvclxuJGNsci1saWdodCAgICAgOiAjRjhGOUYwO1xuJGNsci1lcnJvciAgICAgOiAjRjJERURFO1xuJGNsci1zdWNjZXNzICAgOiAjREZGMEQ4O1xuJGNsci1hbGVydCAgICAgOiAjRkNGOEUzO1xuJGNsci1ub3RpY2UgICAgOiAjRDlFREY3O1xuXG4kY2xyLTAtZGFya2VuICA6ICMwMDA7XG4kY2xyLTAtZGFyayAgICA6ICMzMzM7XG4kY2xyLTAgICAgICAgICA6ICMyMTIxMjE7XG4kY2xyLTAtbGlnaHRlciA6ICM5YjliOWI7XG4kY2xyLTAtbGlnaHQgICA6ICNjZWNlY2U7XG4kY2xyLTAtbGlnaHRlbiA6ICNlZWVlZWU7XG5cbiRjbHItMSAgICAgICAgIDogIzgwMDAyMDsgLy8gcm91Z2VcbiRjbHItMS1saWdodCAgIDogdGludCgkY2xyLTEsIDUwJSk7XG4kY2xyLTEtbGlnaHRlbiA6IHRpbnQoJGNsci0xLCA4NSUpO1xuJGNsci0xLWRhcmsgICAgOiBzaGFkZSgkY2xyLTEsIDE1JSk7XG4kY2xyLTEtZGFya2VuICA6IHNoYWRlKCRjbHItMSwgMzAlKTtcblxuJGNsci0yICAgICAgICAgOiAjNTg0OTEwOyAvLyBnb2xkXG4kY2xyLTItbGlnaHQgICA6IHRpbnQoJGNsci0yLCA1MCUpO1xuJGNsci0yLWxpZ2h0ZW4gOiB0aW50KCRjbHItMiwgODUlKTtcbiRjbHItMi1kYXJrICAgIDogc2hhZGUoJGNsci0yLCAxNSUpO1xuJGNsci0yLWRhcmtlbiAgOiBzaGFkZSgkY2xyLTIsIDMwJSk7XG5cbiRjbHItMyAgICAgICAgIDogIzAwMUYzRjsgLy8gYmxldVxuJGNsci0zLWxpZ2h0ICAgOiB0aW50KCRjbHItMywgNTAlKTtcbiRjbHItMy1saWdodGVuIDogdGludCgkY2xyLTMsIDg1JSk7XG4kY2xyLTMtZGFyayAgICA6IHNoYWRlKCRjbHItMywgMTUlKTtcbiRjbHItMy1kYXJrZW4gIDogc2hhZGUoJGNsci0zLCAzMCUpO1xuXG4kY2xyLTRcdFx0ICAgOiAjMjIzMzM4OyAvLyB2ZXJ0XG5cbi8vIENTUzNcbiRyYWQgICA6IC4zcmVtO1xuJHRyYW5zIDogYWxsIC4zcztcbiRlYXNpbmc6IGN1YmljLWJlemllciguMTcsLjY3LC44MywuNjcpO1xuXG4vLyBGb250XG4kZW0tYmFzZTogMTZweCAhZGVmYXVsdDtcbiRiYXNlLWZvbnQtZmFtaWx5ICAgOiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcbiR0aXRsZS1mb250LWZhbWlseSA6ICdMaWJyZSBCb2RvbmknLCBzZXJpZjtcbiRzZWNvbmRhcnktZm9udC1mYW1pbHkgOiAkdGl0bGUtZm9udC1mYW1pbHk7XG4kY29kZS1mb250ICAgICAgICAgIDogJ1NvdXJjZSBDb2RlIFBybycsIENvbnNvbGFzLCBtb25vc3BhY2U7XG4kYmFzZS1mb250LXNpemUgICAgIDogZW0oMTYsICRlbS1iYXNlKTtcbiRiYXNlLWxpbmUtaGVpZ2h0ICAgOiAxLjYyNWVtO1xuJGJhc2UtZm9udC1jb2xvciAgICA6ICRjbHItMDtcblxuJGhlYWRlci1mb250LWZhbWlseSA6ICR0aXRsZS1mb250LWZhbWlseTtcbiRoZWFkZXItbGluZS1oZWlnaHQgOiAxLjI1ZW07XG4kaGVhZGVyLWZvbnQtY29sb3IgIDogJGNsci0wO1xuXG4kZm9udC1zaXplLVhYTCA6IGVtKDMyLCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLVhMICA6IGVtKDI4LCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLUwgICA6IGVtKDI0LCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLU0gICA6IGVtKDIwLCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLVMgICA6IGVtKDE4LCAkZW0tYmFzZSk7XG4kZm9udC1zaXplLVhTICA6IGVtKDE2LCAkZW0tYmFzZSk7XG5cbi8vIExpbmtcbiRiYXNlLWxpbmstY29sb3IgIDogJGNsci0yO1xuJGJhc2UtbGluay1jb2xvci1ob3ZlciA6ICRjbHItMTtcblxuLy8gIEdyaWRcbiR3cmFwLW1heC13aWR0aCA6IGVtKDEyMDAsICRlbS1iYXNlKTtcbiR3cmFwLW1pbi13aWR0aCA6IGVtKDMyMCwgJGVtLWJhc2UpO1xuJGd1dHRlci13aWR0aCAgIDogcmVtKDIwKTtcblxuLy8gQm9yZGVyIGNvbG9yXG4kYmFzZS1ib3JkZXItY29sb3IgOiAkY2xyLTAtbGlnaHQ7XG5cbi8vIEZvcm1zXG4kZm9ybS1ib3JkZXItY29sb3IgICAgICAgOiAkY2xyLTAtbGlnaHQ7XG4kZm9ybS1ib3JkZXItY29sb3ItaG92ZXIgOiBzaGFkZSgkY2xyLTAtbGlnaHQsIDIwJSkgO1xuJGZvcm0tYm9yZGVyLWNvbG9yLWZvY3VzIDogJGNsci0xO1xuJGZvcm0tYm9yZGVyLXJhZGl1cyAgICAgIDogMDtcbiRmb3JtLWJveC1zaGFkb3cgICAgICAgICA6IG5vbmU7XG4kZm9ybS1ib3gtc2hhZG93LWZvY3VzICAgOiAkZm9ybS1ib3gtc2hhZG93LCAwIDAgNXB4IHJnYmEoZGFya2VuKCRmb3JtLWJvcmRlci1jb2xvci1mb2N1cywgNSksIDAuNyk7XG4kY29sb3ItbWl4aW4tcGxhY2Vob2xkZXIgOiB0aW50KCRjbHItMCwgNjAlKTtcbiRmb3JtLWZvbnQtc2l6ZSAgICAgICAgICA6ICRiYXNlLWZvbnQtc2l6ZTtcbiRmb3JtLWZvbnQtZmFtaWx5ICAgICAgICA6ICRiYXNlLWZvbnQtZmFtaWx5O1xuXG4vLyBTcGFjaW5nXG4kc3BhY2VyICAgOiByZW0oMjYpO1xuJHNwYWNlci1uIDogMDtcbiRzcGFjZXItcyA6ICRndXR0ZXItd2lkdGg7XG4kc3BhY2VyLW0gOiAkc3BhY2VyICogMjtcbiRzcGFjZXItbCA6ICRzcGFjZXIgKiAzO1xuXG4vLyBCcmVha3BvaW50cyAoY2hvb3NlIHVuaXQgeW91IHByZWZlcilcbiRtcS1zICAgICAgOiBlbSg0ODAsICRlbS1iYXNlKTtcbiRtcS1zLXVwICAgOiBlbSg0ODEsICRlbS1iYXNlKTtcbiRtcS1tICAgICAgOiBlbSg3NjgsICRlbS1iYXNlKTtcbiRtcS1tLXVwICAgOiBlbSg3NjksICRlbS1iYXNlKTtcbiRtcS1sICAgICAgOiBlbSgxMDI0LCAkZW0tYmFzZSk7XG4kbXEtbC11cCAgIDogZW0oMTAyNSwgJGVtLWJhc2UpO1xuIiwiaHRtbCxcbmJvZHkge1xuICBoZWlnaHQ6MTAwJTtcbiAgbWFyZ2luOjA7XG59XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gIGJhY2tncm91bmQ6ICRjbHItbGlnaHQ7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuXG5tYWluIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsImEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAkYmFzZS1saW5rLWNvbG9yO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xufVxuIiwiJXNwYWNlLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRiYXNlLWxpbmUtaGVpZ2h0IC8gMik7XG4gIHBhZGRpbmctbGVmdDogJGJhc2UtbGluZS1oZWlnaHQ7XG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDBcbiAgfVxufVxuXG51bCB7XG4gIEBleHRlbmQgJXNwYWNlLWxpc3Q7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgQGV4dGVuZCAlc3BhY2UtbGlzdDtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRiYXNlLWxpbmUtaGVpZ2h0IC8gMik7XG4gIGR0IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRiYXNlLWxpbmUtaGVpZ2h0IC8gMik7XG4gIH1cbiAgZGQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwiaDEge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLVhYTDtcbn1cblxuaDIge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLVhMO1xufVxuXG5oMyB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtTDtcbn1cblxuaDQge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLU07XG59XG5cbmg1IHtcbiAgQGV4dGVuZCAldGl0bGU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1YUztcbn1cblxuaDYge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLVhTO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAkc3BhY2VyLXMgMDtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMFxuICB9XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiBlbSgxNik7XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgZm9udC12YXJpYW50OiBzbWFsbC1jYXBzO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuXG5hYmJyLFxuYWNyb255bSB7XG4gIGN1cnNvcjogaGVscDtcbn1cbiIsImltZyxcbnZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDtcbn1cbiIsImZpZ3VyZSB7XG4gIG1hcmdpbjogMCAwICRzcGFjZXItcyAwO1xufVxuXG5maWdjYXB0aW9uIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IGVtKDE0KTtcbn1cblxuaHIge1xuICBtYXJnaW46ICRzcGFjZXItbSAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJhc2UtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAkc3BhY2VyLW0gMDtcbiAgcGFkZGluZy1sZWZ0OiAkc3BhY2VyLXMgO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRiYXNlLWJvcmRlci1jb2xvcjtcbiAgY29sb3I6IGxpZ2h0ZW4oJGJhc2UtZm9udC1jb2xvciwgMTUpO1xuICBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAxNCBcXDAwQTAnO1xuICB9XG59XG5cbmNpdGUge1xuICBjb2xvcjogbGlnaHRlbigkYmFzZS1mb250LWNvbG9yLCAyNSk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxucHJlIHtcbiAgZm9udC1zaXplOiBlbSgxMyk7XG59XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQ7XG4gIHdoaXRlLXNwYWNlOiBwcmUtbGluZTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuXG5jb2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwYWRkaW5nOiAwIC41ZW07XG4gIGZvbnQtc2l6ZTogLjc1ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjbHItMi1saWdodDtcbiAgY29sb3I6ICRjbHItMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNsci0yLWxpZ2h0ZW47XG4gIGJvcmRlci1yYWRpdXM6ICRyYWQ7XG59XG4iLCJpbnB1dCxcbmxhYmVsLFxuc2VsZWN0IHtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRmb3JtLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRmb3JtLWZvbnQtc2l6ZTtcbn1cblxubGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkc3BhY2VyLXMvMik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgJi5yZXF1aXJlZDphZnRlciB7XG4gICAgY29udGVudDogXCIgKlwiO1xuICB9XG4gIGFiYnIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxudGV4dGFyZWEsXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5zZWxlY3RbbXVsdGlwbGU9bXVsdGlwbGVdIHtcbiAgcGFkZGluZzogZW0oMTApO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1ib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjbHItbGlnaHQ7XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkZm9ybS1mb250LXNpemU7XG4gIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJvcmRlci1yYWRpdXM7XG4gIGJveC1zaGFkb3c6ICRmb3JtLWJveC1zaGFkb3c7XG4gIHRyYW5zaXRpb246ICR0cmFucztcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWJvcmRlci1jb2xvci1ob3ZlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tYm9yZGVyLWNvbG9yLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWJveC1zaGFkb3ctZm9jdXM7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKCRzcGFjZXItcy8yKTtcbn1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyLXM7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKCRzcGFjZXItcyAvIDMpO1xuICB3aWR0aDogMTAwJTtcbn1cblxuc2VsZWN0IHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zO1xufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMCAwIGNhbGMoJGJhc2UtbGluZS1oZWlnaHQgLyAyKSAwO1xuICBwYWRkaW5nOiAkYmFzZS1saW5lLWhlaWdodDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJhc2UtYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkY2xyLTAtbGlnaHRlbjtcbiAgYm9yZGVyLXJhZGl1czogJGZvcm0tYm9yZGVyLXJhZGl1cztcbn1cblxuaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogJGNvbG9yLW1peGluLXBsYWNlaG9sZGVyO1xufVxuXG4vLyBGaXJlZm94IDE4XG5pbnB1dDotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRjb2xvci1taXhpbi1wbGFjZWhvbGRlcjtcbn1cblxuLy8gRmlyZWZveCAxOStcbmlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRjb2xvci1taXhpbi1wbGFjZWhvbGRlcjtcbn1cblxuaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICRjb2xvci1taXhpbi1wbGFjZWhvbGRlcjtcbn1cbiIsInRhYmxlIHtcbiAgbWFyZ2luOiAkc3BhY2VyLXMgMDtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRiYXNlLWJvcmRlci1jb2xvcjtcbn1cblxudHIsXG50ZCxcbnRoIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxudGgge1xuICBwYWRkaW5nOiAkc3BhY2VyLXM7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYmFzZS1ib3JkZXItY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICArIHRoIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRpbnQoJGJhc2UtYm9yZGVyLWNvbG9yLCA1MCUpO1xuICB9XG59XG5cbnRib2R5IHtcbiAgdHIge1xuICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjbHItMC1saWdodGVuO1xuICAgIH1cbiAgfVxuICB0ZCB7XG4gICAgcGFkZGluZzogY2FsYygkc3BhY2VyLXMvMikgJHNwYWNlci1zO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmFzZS1ib3JkZXItY29sb3I7XG4gICAgKyB0ZCB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRpbnQoJGJhc2UtYm9yZGVyLWNvbG9yLCA1MCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBXcmFwcGVyXG4gKi9cblxuLndyYXBwZXIge1xuICBwYWRkaW5nLWxlZnQ6ICAkZ3V0dGVyLXdpZHRoO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyLXdpZHRoO1xuICBAbWVkaWEgKG1pbi13aWR0aDogJG1xLXMtdXAgKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAgYXV0bztcbiAgICBtYXgtd2lkdGg6ICR3cmFwLW1heC13aWR0aDtcbiAgfVxufVxuXG4vKipcbiAqIEdyaWRcbiAqL1xuXG5AbWVkaWEgKG1pbi13aWR0aDogJG1xLXMtdXApIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIFxuICB9XG5cbiAgLmdyaWQtMS00LFxuICAuZ3JpZC0yLTQsXG4gIC5ncmlkLTMtNCxcbiAgLmdyaWQtNC00LFxuICAuZ3JpZC0xLTMsXG4gIC5ncmlkLTItMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAgY2FsYygkZ3V0dGVyLXdpZHRoLzIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoJGd1dHRlci13aWR0aC8yKTtcbiAgfVxuXG4gIC5ncmlkLTEtNCB7IHdpZHRoOiAyNSUgfVxuICAuZ3JpZC0yLTQgeyB3aWR0aDogNTAlIH1cbiAgLmdyaWQtMy00IHsgd2lkdGg6IDc1JSB9XG4gIC5ncmlkLTQtNCB7IHdpZHRoOiAxMDAlfVxuXG4gIC5ncmlkLTEtMyB7IHdpZHRoOiAzMy4zMzMlIH1cbiAgLmdyaWQtMi0zIHsgd2lkdGg6IDY2LjY2NiUgfVxuXG59XG4iLCIuY2xlYXJmaXggeyBjbGVhcjogYm90aDsgfVxuXG4uY2VudGVyLFxuLmFsaWduY2VudGVyIHsgXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bzsgXG59XG4ubGVmdCxcbi5hbGlnbmxlZnQgeyBcbiAgZmxvYXQ6IGxlZnQ7IFxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG4ucmlnaHQsXG4uYWxpZ25yaWdodCB7IFxuICBmbG9hdDogcmlnaHQ7IFxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbmltZy5hbGlnbmxlZnQgeyBcbiAgbWFyZ2luLXJpZ2h0OiBlbSgyMCk7IFxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogZW0oMTUpIGF1dG87XG4gIH1cbn1cbmltZy5hbGlnbnJpZ2h0IHsgXG4gIG1hcmdpbi1sZWZ0OiBlbSgyMCk7IFxuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogZW0oMTUpIGF1dG87XG4gIH1cbn1cblxuLmZsZXhQdXNoIHsgLy8gZm9yIGEgbGluZSB3aXRoIDMgZWxlbWVudHMsIHNpbXVsYXRlIGEgdGhpcmQgZWxlbWVudCB3aGVuIG9ubHkgdHdvOiBhdm9pZCBjZW50ZXJpbmcgbGFzdCBsaW5lXG4gIHdpZHRoOiAzMiU7XG59XG4iLCIlbGlzdC1yZXNldCxcbi5saXN0LXJlc2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4lbGlzdC1pbmxpbmUsXG4ubGlzdC1pbmxpbmUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbSg1KTtcbiAgICB9XG4gIH1cbn1cblxuJWxpc3QtYmFzaWMsXG4ubGlzdC1iYXNpYyB7XG4gIEBleHRlbmQgJWxpc3QtcmVzZXQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGxpOmJlZm9yZSB7XG4gICAgY29udGVudDogJy0nO1xuICAgIG1hcmdpbi1yaWdodDogZW0oNCk7XG4gIH1cbn1cbiIsIi50eHRYWEwge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLVhYTDtcbn1cbi50eHRYTCB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtWEw7XG59XG4udHh0TCB7XG4gIEBleHRlbmQgJXRpdGxlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtTDtcbn1cbi50eHRNIHtcbiAgQGV4dGVuZCAldGl0bGU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1NO1xufVxuLnR4dFMge1xuICBAZXh0ZW5kICV0aXRsZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLVhTO1xufVxuLnR4dFhTIHtcbiAgQGV4dGVuZCAldGl0bGU7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1YUztcbn1cblxuLnR4dExlYWQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiBlbSgyMCk7XG4gIGNvbG9yOiAkY2xyLTAtZGFyaztcbn1cblxuLnR4dFNtYWxsIHtcbiAgZm9udC1zaXplOiByZW0oMTIpO1xuICBsaW5lLWhlaWdodDogMS4yNWVtO1xufVxuXG5cbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTE7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG59XG5cbiIsIi5wcmUtaGVhZGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNsci00O1xuXHRwYWRkaW5nOiBlbSg3KSAwO1xuXG5cdC5zb2NpYWxzLWxpc3Qge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0LnNvY2lhbC1pdGVtIHtcblx0XHRcdG1hcmdpbjogMCBlbSg4KTtcblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDI4KTtcblx0XHRcdFx0Y29sb3I6ICRjbHItbGlnaHQ7XG5cdFx0XHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcblx0XHRcdFx0XHRjb2xvcjogJGNsci0yLWxpZ2h0O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5idG4ge1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0XHRtYXJnaW4tbGVmdDogcmVtKDEwKTtcblx0XHRcdHBhZGRpbmc6IHJlbSg4KSByZW0oMjApO1xuXHRcdH1cblx0fVxufVxuXG5cbi5tYWluLWhlYWRlciB7XG5cblx0LndyYXBwZXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0cGFkZGluZy10b3A6IGVtKDE1KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogZW0oMTUpO1xuXHR9XG5cblx0LmhlYWRlci1sb2dvIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0d2lkdGg6IGVtKDI1MCk7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdHRyYW5zaXRpb246IGFsbCAuM3M7XG5cdFx0aW1nLCBzdmcge1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdH1cblx0fVxufVxuXG5cbi5pcy1zdGlja3kge1xuXHR6LWluZGV4OiAxMDA7XG5cdC5tYWluLWhlYWRlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNsci1saWdodDtcblx0fVxufSIsIi5mb290ZXIge1xuXHRjb2xvcjogJGNsci1saWdodDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLTA7XG5cdHBhZGRpbmc6IGVtKDQ1KSAwO1xuXHRhIHtcblx0XHRjb2xvcjogJGNsci1saWdodDtcblx0XHQmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0XHRjb2xvcjogJGNsci0yO1xuXHRcdH1cblx0fVxuXHQuZm9vdGVyLWxvZ28ge1xuXHRcdHdpZHRoOiBlbSgyMDApO1xuXHR9XG5cblx0LnNvY2lhbHMtbGlzdCB7XG5cdFx0bGkgKyBsaSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogZW0oMjApO1xuXHRcdH1cblx0XHRhIHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMjUpO1xuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdGNvbG9yOiAkY2xyLTItbGlnaHQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmZvb3Rlci1jb3B5cmlnaHQge1xuXHRcdGZvbnQtc2l6ZTogZW0oMTQpXG5cdH1cbn0iLCIlYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiBlbSg2KSAwO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IGVtKDE5KTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYm9yZGVyOiBub25lO1xuICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAmVHJ1bmNhdGUgeyBAZXh0ZW5kICV0cnVuY2F0ZSB9XG4gICsgW2NsYXNzKj1idXR0b25dIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1xLXMtdXApIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMTApO1xuICAgIH1cbiAgfVxuICAmOmRpc2FibGVkLFxuICAmLmlzLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgb3BhY2l0eTogMC4zNTtcblxuICB9XG59XG5cbi8qKlxuICogQmFzZSBzdHlsZVxuICovXG5cbi5idXR0b24sXG4uYnRuIHtcbiAgY29sb3I6ICRjbHItMTtcbiAgQGV4dGVuZCAlYnV0dG9uO1xuICAmOmFmdGVyLFxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIGJvcmRlci10b3A6IHJlbSgyKSBzb2xpZCAkY2xyLTI7XG4gICAgbWFyZ2luOiByZW0oMTUpIGF1dG8gMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBtYXJnaW46IDAgYXV0byByZW0oMTUpO1xuICB9XG4gIC8vIFN0YXRlc1xuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsci0xO1xuICAgICY6YWZ0ZXIsXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY2xyLTM7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgJjpkaXNhYmxlZDpob3ZlcixcbiAgJi5pcy1kaXNhYmxlZDpob3ZlcixcbiAgJi5pcy1kaXNhYmxlZDpmb2N1cyB7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICAmLmlzLWFjdGl2ZXtcbiAgfVxufVxuXG4uYnRuLWxpZ2h0IHtcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICRjbHItbGlnaHQ7XG4gIEBleHRlbmQgJWJ1dHRvbjtcbiAgLy8gU3RhdGVzXG4gICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGNsci0wLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci1saWdodDtcbiAgICBib3JkZXItY29sb3I6ICRjbHItbGlnaHQ7XG4gIH1cbn1cblxuLmJ0bi1ib3JkZXIge1xuICBjb2xvcjogJGNsci1saWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogcmVtKDEpIHNvbGlkICRjbHItbGlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6IHJlbSgyNSk7XG4gIEBleHRlbmQgJWJ1dHRvbjtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLy8gU3RhdGVzXG4gICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGNsci0wLWRhcms7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci1saWdodDtcbiAgICBib3JkZXItY29sb3I6ICRjbHItbGlnaHQ7XG4gIH1cbn1cblxuLmJ1dHRvblNlY29uZGFyeSxcbi5idG4tc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICRjbHItbGlnaHQ7XG4gIGJhY2tncm91bmQ6ICRjbHItMztcbiAgcGFkZGluZzogcmVtKDE1KSByZW0oMzApO1xuICBAZXh0ZW5kICVidXR0b247XG4gIC8vIFN0YXRlc1xuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsci1saWdodDtcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTE7XG4gIH1cbiAgJjphZnRlcixcbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgJjpkaXNhYmxlZDpob3ZlcixcbiAgJi5pcy1kaXNhYmxlZDpob3ZlcixcbiAgJi5pcy1kaXNhYmxlZDpmb2N1cyB7XG4gICAgY29sb3I6ICRiYXNlLWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJhc2UtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgJi5pcy1hY3RpdmUge1xuICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgIGJhY2tncm91bmQ6IHNoYWRlKCRiYXNlLWJvcmRlci1jb2xvciwgNDAlKTtcbiAgfVxufVxuXG4vKipcbiAqIE1vZGlmaWVyXG4gKi9cblxuLmJ1dHRvbi0tc21hbGwge1xuICBwYWRkaW5nOiBlbSgzLCAxMykgZW0oMTAsIDEzKTtcbiAgZm9udC1zaXplOiBlbSgxMyk7XG59XG5cbi5idXR0b24tLWJpZyB7XG4gIHBhZGRpbmc6IGVtKDE1LCAyMCkgZW0oMzAsIDIwKTtcbiAgZm9udC1zaXplOiBlbSgyMCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzMztcbn1cblxuLmJ1dHRvbi0tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5idXR0b24tLW1vYmlsZUZ1bGwge1xuICBAbWVkaWEgKG1heC13aWR0aDogJG1xLXMtdXApIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVGhpcyBmaWxlIGlzIGF1dG9tYXRpY2FsbHlcbiAgZ2VuZXJhdGVkIHVzaW5nIGd1bHAuXG5cbiAgQWRkIC5zdmcgZmlsZXMgdG8gdGhlIGFzc2V0cy9pY29uRm9udFxuICBmb2xkZXIgdG8gYWRkIGljb25zXG5cbiAgLyFcXCBEbyBub3QgbW9kaWZ5IC8hXFwgISEhXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiZG91bGFzdGFydGVyLWljb25zXCI7XG4gIHNyYzogdXJsKCdmb250cy9kb3VsYXN0YXJ0ZXItaWNvbnMuZW90Jyk7XG4gIHNyYzogdXJsKCdmb250cy9kb3VsYXN0YXJ0ZXItaWNvbnMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW90JyksXG4gICAgdXJsKCdmb250cy9kb3VsYXN0YXJ0ZXItaWNvbnMud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnZm9udHMvZG91bGFzdGFydGVyLWljb25zLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJ2ZvbnRzL2RvdWxhc3RhcnRlci1pY29ucy5zdmcjZG91bGFzdGFydGVyLWljb25zJykgZm9ybWF0KCdzdmcnKTtcbn1cblxuJWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC1mYW1pbHk6XCJkb3VsYXN0YXJ0ZXItaWNvbnNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgc3BlYWs6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbkBmdW5jdGlvbiBpY29uLWNoYXIoJGZpbGVuYW1lKSB7XG4gICRjaGFyOiBcIlwiO1xuXG4gIEBpZiAkZmlsZW5hbWUgPT0gZmFjZWJvb2sge1xuICAgICRjaGFyOiBcIlxcRTAwMVwiO1xuICB9XG4gIEBpZiAkZmlsZW5hbWUgPT0gaW5zdGFncmFtIHtcbiAgICAkY2hhcjogXCJcXEUwMDJcIjtcbiAgfVxuICBAaWYgJGZpbGVuYW1lID09IGxpbmtlZGluIHtcbiAgICAkY2hhcjogXCJcXEUwMDNcIjtcbiAgfVxuICBAaWYgJGZpbGVuYW1lID09IHlvdXR1YmUge1xuICAgICRjaGFyOiBcIlxcRTAwNFwiO1xuICB9XG5cbiAgQHJldHVybiAkY2hhcjtcbn1cblxuQG1peGluIGljb24oJGZpbGVuYW1lKSB7XG4gIGNvbnRlbnQ6IGljb24tY2hhcigkZmlsZW5hbWUpO1xufVxuXG5bY2xhc3MqPVwiaWNvbi1cIl0ge1xuICBAZXh0ZW5kICVpY29uO1xufVxuXG5cbi5pY29uLWZhY2Vib29re1xuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgaWNvbihmYWNlYm9vayk7XG4gIH1cbn1cbiVpY29uLWZhY2Vib29rIHtcbiAgQGluY2x1ZGUgaWNvbihmYWNlYm9vayk7XG59XG5cbi5pY29uLWluc3RhZ3JhbXtcbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGljb24oaW5zdGFncmFtKTtcbiAgfVxufVxuJWljb24taW5zdGFncmFtIHtcbiAgQGluY2x1ZGUgaWNvbihpbnN0YWdyYW0pO1xufVxuXG4uaWNvbi1saW5rZWRpbntcbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGljb24obGlua2VkaW4pO1xuICB9XG59XG4laWNvbi1saW5rZWRpbiB7XG4gIEBpbmNsdWRlIGljb24obGlua2VkaW4pO1xufVxuXG4uaWNvbi15b3V0dWJle1xuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgaWNvbih5b3V0dWJlKTtcbiAgfVxufVxuJWljb24teW91dHViZSB7XG4gIEBpbmNsdWRlIGljb24oeW91dHViZSk7XG59XG4iLCIvKiFcbiAqIEhhbWJ1cmdlcnNcbiAqIEBkZXNjcmlwdGlvbiBUYXN0eSBDU1MtYW5pbWF0ZWQgaGFtYnVyZ2Vyc1xuICogQGF1dGhvciBKb25hdGhhbiBTdWggQGpvbnN1aFxuICogQHNpdGUgaHR0cHM6Ly9qb25zdWguY29tL2hhbWJ1cmdlcnNcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9qb25zdWgvaGFtYnVyZ2Vyc1xuICovXG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwIDAgMCBlbSgxMCk7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyBcbiAgaGVpZ2h0OiBlbSgyMyk7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cbiAgLmhhbWJ1cmdlcjpob3ZlciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lcixcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci0wLWRhcms7XG4gICAgfSBcbiAgfVxuICAuaGFtYnVyZ2VyLmlzLWFjdGl2ZTpob3ZlciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lcixcbiAgICAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci1saWdodDtcbiAgICB9IFxuICB9XG4gIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIsXG4gIC5oYW1idXJnZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSxcbiAgLmhhbWJ1cmdlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjbHItMy1saWdodGVuOyBcbiAgfVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiBlbSgyNik7XG4gIGhlaWdodDogZW0oMjMpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHdpZHRoOiBlbSgyNik7XG4gICAgaGVpZ2h0OiBlbSgzKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLTAtZGFyaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlOyB9XG4gIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xMHB4OyB9XG4gIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IC0xMHB4OyB9XG5cbi8qXG4gICAqIDNEWFxuICAgKi9cbi5oYW1idXJnZXItLTNkeCAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA4MHB4OyB9XG5cbi5oYW1idXJnZXItLTNkeCAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHggLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIDNEWCBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R4LXIgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogODBweDsgfVxuXG4uaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cblxuLmhhbWJ1cmdlci0tM2R4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogM0RZXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R5IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDgwcHg7IH1cblxuLmhhbWJ1cmdlci0tM2R5IC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgtMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIDNEWSBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R5LXIgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogODBweDsgfVxuXG4uaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cblxuLmhhbWJ1cmdlci0tM2R5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiAzRFhZXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiA4MHB4OyB9XG5cbi5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeHkgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHh5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiAzRFhZIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHh5LXIgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogODBweDsgfVxuXG4uaGFtYnVyZ2VyLS0zZHh5LXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4eS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cblxuLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpIHJvdGF0ZVooLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHh5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiBBcnJvd1xuICAgKi9cbi5oYW1idXJnZXItLWFycm93LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3cuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLypcbiAgICogQXJyb3cgUmlnaHRcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvdy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi5oYW1idXJnZXItLWFycm93LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLypcbiAgICogQXJyb3cgQWx0XG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3dhbHQgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpOyB9XG5cbi5oYW1idXJnZXItLWFycm93YWx0IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpOyB9XG5cbi5oYW1idXJnZXItLWFycm93YWx0LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLThweCwgLTEwcHgsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDEwcHgsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTsgfVxuXG4vKlxuICAgKiBBcnJvdyBBbHQgUmlnaHRcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpOyB9XG5cbi5oYW1idXJnZXItLWFycm93YWx0LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIC0xMHB4LCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAxMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpOyB9XG5cbi8qXG4gICAqIEFycm93IFR1cm5cbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvd3R1cm4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS1hcnJvd3R1cm4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1hcnJvd3R1cm4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKC00NWRlZykgc2NhbGUoMC43LCAxKTsgfVxuXG4vKlxuICAgKiBBcnJvdyBUdXJuIFJpZ2h0XG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTsgfVxuXG4vKlxuICAgKiBCb3JpbmdcbiAgICovXG4uaGFtYnVyZ2VyLS1ib3JpbmcgLmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci0tYm9yaW5nIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tYm9yaW5nIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZTsgfVxuXG4uaGFtYnVyZ2VyLS1ib3JpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tYm9yaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpOyB9XG5cbi8qXG4gICAqIENvbGxhcHNlXG4gICAqL1xuLmhhbWJ1cmdlci0tY29sbGFwc2UgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAtMjBweDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgb3BhY2l0eSAwLjFzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIG9wYWNpdHkgMC4xcyAwLjIycyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogQ29sbGFwc2UgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjEzcztcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IC0yMHB4O1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCBvcGFjaXR5IDAuMXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1jb2xsYXBzZS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBFbGFzdGljXG4gICAqL1xuLmhhbWJ1cmdlci0tZWxhc3RpYyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAycHg7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IGVtKDkpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogZW0oMTgpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7IH1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKDEzNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1czsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApIHJvdGF0ZSgtMjcwZGVnKTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7IH1cblxuLypcbiAgICogRWxhc3RpYyBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tZWxhc3RpYy1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDJweDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yNzVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAxMHB4O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAyMHB4O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7IH1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoLTEzNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1czsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKSByb3RhdGUoMjcwZGVnKTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7IH1cblxuLypcbiAgICogRW1waGF0aWNcbiAgICovXG4uaGFtYnVyZ2VyLS1lbXBoYXRpYyB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgbGVmdCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gIC5oYW1idXJnZXItLWVtcGhhdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogLTgwcHg7XG4gICAgICB0b3A6IC04MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4MHB4LCA4MHB4LCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICByaWdodDogLTgwcHg7XG4gICAgICB0b3A6IC04MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtODBweCwgODBweCwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTsgfVxuXG4vKlxuICAgKiBFbXBoYXRpYyBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tZW1waGF0aWMtciB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgcmlnaHQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gIC5oYW1idXJnZXItLWVtcGhhdGljLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC04MHB4O1xuICAgICAgdG9wOiA4MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4MHB4LCAtODBweCwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiBsZWZ0IDAuMTI1cyBlYXNlLW91dCwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC04MHB4O1xuICAgICAgdG9wOiA4MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtODBweCwgLTgwcHgsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTsgfVxuXG4vKlxuICAgKiBNaW51c1xuICAgKi9cbi5oYW1idXJnZXItLW1pbnVzIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tbWludXMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgMHMgZWFzZS1vdXQsIHRvcCAwLjA4cyAwcyBlYXNlLW91dCwgb3BhY2l0eSAwcyBsaW5lYXI7IH1cblxuLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDhzIGVhc2Utb3V0LCB0b3AgMC4wOHMgZWFzZS1vdXQsIG9wYWNpdHkgMHMgMC4wOHMgbGluZWFyOyB9XG5cbi5oYW1idXJnZXItLW1pbnVzLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0b3A6IDA7IH1cblxuLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwOyB9XG5cbi8qXG4gICAqIFNsaWRlclxuICAgKi9cbi5oYW1idXJnZXItLXNsaWRlciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAycHg7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiBlbSg5KTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IGVtKDE4KTsgfVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IGVtKC0xKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZTNkKC01LjcxNDI5cHgsIC02cHgsIDApO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiBlbSgyMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCkgcm90YXRlKC05MGRlZyk7IH1cblxuLypcbiAgICogU2xpZGVyIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zbGlkZXItciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAycHg7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDEwcHg7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlci1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDIwcHg7IH1cblxuLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlci1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUzZCg1LjcxNDI5cHgsIC02cHgsIDApO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKSByb3RhdGUoOTBkZWcpOyB9XG5cbi8qXG4gICAqIFNwaW5cbiAgICovXG4uaGFtYnVyZ2VyLS1zcGluIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjsgfVxuICAuaGFtYnVyZ2VyLS1zcGluIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjI1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4yMnMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3Bpbi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tc3Bpbi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLW91dCwgb3BhY2l0eSAwLjFzIDAuMTJzIGVhc2Utb3V0OyB9XG4gIC5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMjJzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFNwaW4gUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjI1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogU3ByaW5nXG4gICAqL1xuLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDJweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAxMHB4O1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDIwcHg7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcHJpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAuaGFtYnVyZ2VyLS1zcHJpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS1zcHJpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiBTcHJpbmcgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXNwcmluZy1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogLTIwcHg7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIG9wYWNpdHkgMHMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCBvcGFjaXR5IDBzIDAuMjJzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1zcHJpbmctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMTVzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFN0YW5kXG4gICAqL1xuLmhhbWJ1cmdlci0tc3RhbmQgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3RhbmQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFN0YW5kIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjE1cyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFNxdWVlemVcbiAgICovXG4uaGFtYnVyZ2VyLS1zcXVlZXplIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjA3NXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1zcXVlZXplIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjEycyBlYXNlLCBvcGFjaXR5IDAuMDc1cyBlYXNlOyB9XG4gIC5oYW1idXJnZXItLXNxdWVlemUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xMnMgZWFzZSwgdHJhbnNmb3JtIDAuMDc1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcXVlZXplLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyBlYXNlLCBvcGFjaXR5IDAuMDc1cyAwLjEycyBlYXNlOyB9XG4gIC5oYW1idXJnZXItLXNxdWVlemUuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIGVhc2UsIHRyYW5zZm9ybSAwLjA3NXMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogVm9ydGV4XG4gICAqL1xuLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtOyB9XG5cbi5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDc2NWRlZyk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG5cbi8qXG4gICAqIFZvcnRleCBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCBvcGFjaXR5OyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTsgfVxuXG4uaGFtYnVyZ2VyLS12b3J0ZXgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC03NjVkZWcpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfSIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIFxufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgaGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBmb250LXNpemU6IGVtKDQ4KTtcbiAgICBjb2xvcjogJGNsci0xO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnM7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDEzMzApICkge1xuICAgICAgICBmb250LXNpemU6IGVtKDMwKTtcbiAgICB9XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjbHItMztcbiAgICB9XG59XG5cbi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiByZW0oLTU1KTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTMzMCkgKSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuXG4uc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IHJlbSgtNTUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTMzMCkgKSB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbn1cblxuLnNsaWNrLWRvdHMge1xuICAgIEBleHRlbmQgJWxpc3QtaW5saW5lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IGVtKDI1KSAwIDA7XG4gICAgYnV0dG9uIHtcbiAgICAgICAgaGVpZ2h0OiByZW0oMTUpO1xuICAgICAgICB3aWR0aDogcmVtKDE1KTtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IHJlbSgtMTAwMDAwKTtcbiAgICAgICAgYmFja2dyb3VuZDogJGNsci0xO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IHJlbSgzKTtcbiAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oMTI4MCkpIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDEyKTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMTIpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGxpLnNsaWNrLWFjdGl2ZSxcbiAgICBsaTpob3ZlcixcbiAgICBsaTpmb2N1cyB7IFxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjbHItMjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xufSIsIi8vIEhlYWRlciBNZW51XG4ubWVudS1saXN0IHtcbiAgQGV4dGVuZCAlbGlzdC1pbmxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgPiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAgZW0oMTQpO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IGVtKDEwKSAwO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgID4gYSB7XG4gICAgICBmb250LXNpemU6IGVtKDE5KTsgICBcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IFxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDEyODApKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogZW0oMTgpO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiByZW0oNSkgYXV0byAwOyBcbiAgICAgICAgd2lkdGg6IHJlbSg4MCk7XG4gICAgICAgIGJvcmRlci10b3A6IHJlbSgyKSBzb2xpZCAkY2xyLTItbGlnaHQ7XG4gICAgICAgIHRyYW5zaXRpb246ICR0cmFucztcbiAgICAgIH1cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjphY3RpdmUge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjbHItMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAkdGl0bGUtZm9udC1mYW1pbHk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6ICRjbHItMTtcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApKSB7XG4gICAgICAgIGNvbG9yOiAkY2xyLTMtbGlnaHRlbjtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjbHItMTtcbiAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApKSAge1xuICAgICAgICAgIGNvbG9yOiAkY2xyLTI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3ViLW1lbnUge1xuICAgIEBleHRlbmQgJWxpc3QtcmVzZXQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiAkY2xyLTEtZGFya2VuO1xuICAgIG1hcmdpbi10b3A6IGVtKDEwKTtcbiAgICBwYWRkaW5nOiBlbSgxMCkgMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzO1xuICAgIHotaW5kZXg6IC0xMDtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTkwKSkge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBiYWNrZ3JvdW5kOiAkY2xyLTA7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgcGFkZGluZzogZW0oNSkgZW0oMzUpO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDE0MDApKSB7XG4gICAgICAgIHBhZGRpbmc6IGVtKDUpIGVtKDIwKTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGNsci1saWdodDtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk5MCkpIHtcbiAgICAgICAgICBjb2xvcjogJGNsci0zLWxpZ2h0ZW47XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi5tZW51LWRlc2t0b3Age1xuICB3aWR0aDogMTAwJTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk5MCkpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci0wO1xuICAgIHBhZGRpbmctdG9wOiBlbSgxMTUpO1xuICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gIH1cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHotaW5kZXg6IDIwO1xuICB9XG5cbiAgLm1lbnUtbGlzdCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk5MCkpIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLnRvZ2dsZS1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk5MCkpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiAyMTtcbiAgfVxufVxuXG5cbi8vIEZvb3RlciBNZW51XG4uZm9vdGVyLW1lbnUge1xuICBtYXJnaW4tdG9wOiBlbSgyMCk7XG4gIGEge1xuICAgIGZvbnQtc2l6ZTogZW0oMTUpO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJGNsci0yLWxpZ2h0O1xuICAgIH1cbiAgICArIGEge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnfCc7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5zZWN0aW9uLWhlYWRlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bWFyZ2luLWJvdHRvbTogZW0oNDApO1xufVxuXG4uc2VjdGlvbi10aXRsZSB7XG5cdGZvbnQtc2l6ZTogZW0oNDApO1xuXHRAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgICAgZm9udC1zaXplOiBlbSgzMCk7XG4gICAgfVxufVxuXG4uc2VjdGlvbi1pbnRybyB7XG5cdGZvbnQtc2l6ZTogZW0oMTgpO1xuXHRwOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn0iLCIudmFsdWVzLXdyYXBwZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLTMtbGlnaHQ7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZzogZW0oNTApIDAgZW0oMTApO1xuXHRtYXJnaW4tdG9wOiBlbSg1MCk7XG59XG5cbi52YWx1ZS1pdGVtIHtcblx0bWFyZ2luLWJvdHRvbTogZW0oNDApO1xufVxuXG4udmFsdWVzLXRpdGxlIHtcblx0bWFyZ2luLWJvdHRvbTogcmVtKDUwKTtcbn1cblxuLnZhbHVlLWltZyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXgtd2lkdGg6IGVtKDEwMCk7XG5cdG1hcmdpbjogMCBhdXRvIGVtKDMwKTtcbn1cblxuLnZhbHVlLXRpdGxlIHtcblx0Zm9udC1zaXplOiBlbSgxOCk7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG59XG5cbi52YWx1ZS10ZXh0IHtcblx0bWFyZ2luOiAwO1xufSIsIi5jb250YWN0Zm9ybS13cmFwcGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNsci0yLWxpZ2h0O1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRtYXJnaW46IGVtKDUwKSBhdXRvIDA7XG5cblxuXHRmb3JtIHtcblx0XHRtYXgtd2lkdGg6IGVtKDYwMCk7XG5cdFx0cGFkZGluZzogZW0oMjApIGVtKDQwKTtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuXHRcdFx0cGFkZGluZzogZW0oMjApIDA7XG5cdFx0fVxuXHRcdGJyIHtcblx0XHRcdC8vZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHRsYWJlbCB7XG5cdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRmb250LXNpemU6IGVtKDIwKTtcblx0XHRmb250LWZhbWlseTogJHNlY29uZGFyeS1mb250LWZhbWlseTtcblx0XHRjb2xvcjogJGNsci1saWdodDtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogZW0oOTkwKSkge1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxOCk7XG5cdFx0fVxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NjgpKSB7XG5cdFx0XHRmb250LXNpemU6IGVtKDE2KTtcblx0XHR9XG5cdFx0aW5wdXQsIHRleHRhcmVhIHtcblx0XHRcdGNvbG9yOiAkY2xyLTA7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0fVxuXHR9XG5cblx0LndwY2Y3LWZvcm0tY29udHJvbC13cmFwIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tdG9wOiBlbSgxMCk7XG5cdH1cblxuXHRpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuXHRcdEBleHRlbmQgJWJ1dHRvbjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLTE7XG5cdFx0Y29sb3I6ICRjbHItbGlnaHQ7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0XHRwYWRkaW5nOiByZW0oOCkgcmVtKDI1KTtcblx0fVxuXHQuY29udGFjdGZvcm0taW5mbyB7XG5cdFx0Zm9udC1zaXplOiBlbSgxMyk7XG5cdFx0Y29sb3I6ICRjbHItMjtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG59XG5cblxuLmFqYXgtbG9hZGVyLFxuLndwY2Y3LW5vdC12YWxpZC10aXAge1xuXHRkaXNwbGF5OiBub25lIWltcG9ydGFudDtcbn1cblxuLndwY2Y3IGZvcm0gLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG5cdGNvbG9yOiAkY2xyLTA7XG5cdGJvcmRlcjogbm9uZTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4ud3BjZjctcXVpei1sYWJlbCB7XG5cdGZvbnQtc2l6ZTogZW0oMTQpO1xufVxuLndwY2Y3LXF1aXoge1xuXHRtYXJnaW46IHJlbSgxNSkgMDtcbn0iLCIuZ2FsbGVyeSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luLWxlZnQ6IHJlbSgtMTUpO1xuXHRtYXJnaW4tcmlnaHQ6IHJlbSgtMTUpO1xuXHRtYXJnaW4tdG9wOiByZW0oMjApO1xuXHRtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuXHQuZ2FsbGVyeS1pdGVtIHtcblx0XHRwYWRkaW5nOiByZW0oMTUpO1xuXHRcdG1hcmdpbjogMDtcblx0fVxufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTIge1xuXHQuZ2FsbGVyeS1pdGVtIHtcblx0XHR3aWR0aDogNTAlO1xuXHR9XG59XG5cbi5nYWxsZXJ5LWNvbHVtbnMtMyB7XG5cdC5nYWxsZXJ5LWl0ZW0ge1xuXHRcdHdpZHRoOiAzMy4zMzMlO1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1MDApKSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuLmdhbGxlcnktY29sdW1ucy00IHtcblx0LmdhbGxlcnktaXRlbSB7XG5cdFx0d2lkdGg6IDI1JTtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkpIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0fVxufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTUge1xuXHQuZ2FsbGVyeS1pdGVtIHtcblx0XHR3aWR0aDogMjAlO1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApKSB7XG5cdFx0XHR3aWR0aDogMjUlO1xuXHRcdH1cblx0XHRAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkpIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblx0fVxufSIsIi5zZWN0aW9uLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IGVtKDQ0MCk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogZW0oNDApIDA7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY2xyLTAsIC4zKTtcbiAgfVxuXG4gIC53cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAuaGVyby10ZXh0LXdyYXBwZXIsXG4gIC5oZXJvLWltZyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oOTkwKSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmhlcm8taW1nIHtcbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDIwMCk7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgICAgICBtYXgtaGVpZ2h0OiBlbSgzMDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oZXJvLXRleHQtd3JhcHBlciB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk5MCkpIHtcbiAgICAgIG1hcmdpbi10b3A6IGVtKDQwKTtcbiAgICB9XG4gIH1cblxuICAuaGVyby10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogZW0oNTUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgIG1hcmdpbjogMCAwIHJlbSgxMCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDEyMDApKSB7XG4gICAgICBmb250LXNpemU6IGVtKDYwKTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDk5MCkpIHtcbiAgICAgIGZvbnQtc2l6ZTogZW0oNTApO1xuICAgIH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgICAgZm9udC1zaXplOiBlbSgzNSk7XG4gICAgfVxuICB9XG5cbiAgLmhlcm8tc3VidGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogcmVtKDIxKTtcbiAgICBjb2xvcjogJGNsci1saWdodDtcbiAgICBtYXJnaW46IHJlbSgxNSkgMCAwO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApKSB7XG4gICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgfVxuICB9XG5cbiAgLmhlcm8tdGV4dCB7XG4gICAgZm9udC1zaXplOiBlbSgxOCk7XG4gICAgY29sb3I6ICRjbHItbGlnaHQ7XG4gICAgbWFyZ2luLXRvcDogcmVtKDIwKTtcbiAgfVxuXG4gIC5idG4ge1xuICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgIH1cbiAgfVxuXG59IiwiLnNlY3Rpb24tYWJvdXQge1xuXHRwYWRkaW5nOiBlbSg3MCkgMCBlbSg3NSk7XG5cblx0LmdyaWQge1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDk5MCkpIHtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cblx0LmFib3V0LXRleHQge1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApKSB7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiBlbSg0MCk7XG5cdFx0fVxuXHR9XG5cblx0LnNlY3Rpb24tdGV4dCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogZW0oNTApO1xuXHR9XG5cblx0LmFib3V0LWltZyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiBmaXQtY29udGVudDtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogZW0oLTQwKTtcblx0XHRcdHJpZ2h0OiBlbSgtMzApO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IGVtKDM3Nik7XG5cdFx0XHRoZWlnaHQ6IGVtKDU2Nik7XG5cdFx0XHRib3JkZXItcmFkaXVzOiBlbSgyMDApO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNsci0xO1xuXHRcdFx0ei1pbmRleDogLTE7XG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogZW0oOTkwKSkge1xuXHRcdFx0XHR0b3A6IGVtKC0yMCk7XG5cdFx0XHRcdHJpZ2h0OiBlbSgtMTUpO1xuXHRcdFx0fVxuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcblx0XHRcdFx0aGVpZ2h0OiBlbSg0MDApO1xuXHRcdFx0XHR3aWR0aDogZW0oMjY2KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0aW1nIHtcblx0ICAgICAgYm9yZGVyLXJhZGl1czogZW0oMjAwKTtcblx0ICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcblx0ICAgICAgXHRtYXgtaGVpZ2h0OiBlbSg0MDApO1xuXHQgICAgICB9XG5cdCAgICB9XG5cdH1cblxufSIsIi5zZWN0aW9uLXNlcnZpY2VzIHtcblx0cGFkZGluZzogZW0oOTApIDA7XG5cblx0LnNlY3Rpb24tdGl0bGUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiB1cmwoaW1hZ2VzL3RpdGxlLWJsb2Iuc3ZnKTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHR6LWluZGV4OiAtMTtcblx0XHRcdHdpZHRoOiByZW0oMTE3KTtcblx0XHRcdGhlaWdodDogcmVtKDEwMCk7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDM3JTtcblx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRcdFx0ei1pbmRleDogLTE7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1hZ2VzL2ljby1ncmVuYWRlLnBuZyk7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRcdFx0aGVpZ2h0OiA5NXB4O1xuXHRcdFx0d2lkdGg6IDEyMHB4O1xuXHRcdH1cblx0fVxuXG5cdC5zZXJ2aWNlcy13cmFwcGVyIHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMiwgMWZyKTtcblx0XHRncmlkLWNvbHVtbi1nYXA6IDEwcHg7XG5cdFx0Z3JpZC1yb3ctZ2FwOiAxMHB4O1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NjgpKSB7XG5cdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgMWZyKTtcblx0XHR9XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkpIHtcblx0XHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXHRcdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNSwgMWZyKTtcblx0XHR9XG5cblx0XHQuc2VydmljZS1pdGVtIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdCY6bnRoLWNoaWxkKDEpIHsgXG5cdFx0XHRcdGdyaWQtYXJlYTogMSAvIDEgLyAzIC8gMztcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcblx0XHRcdFx0XHRncmlkLWFyZWE6IDEgLyAxIC8gMiAvIDI7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnNlcnZpY2UtaW1nOmFmdGVyIHtcblx0XHRcdFx0XHRoZWlnaHQ6IHJlbSgxOTQpO1xuXHRcdFx0XHRcdHdpZHRoOiByZW0oMjg3KTtcblx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiByZW0oODkpO1xuXHRcdFx0XHRcdFx0d2lkdGg6IHJlbSgxMzEpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSBcblx0XHRcdH1cblx0XHRcdCY6bnRoLWNoaWxkKDIpIHsgXG5cdFx0XHRcdGdyaWQtYXJlYTogMSAvIDMgLyAyIC8gNDsgXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NjgpKSB7XG5cdFx0XHRcdFx0Z3JpZC1hcmVhOiAxIC8gMiAvIDIgLyAzO1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApKSB7XG5cdFx0XHRcdFx0Z3JpZC1hcmVhOiAyIC8gMSAvIDMgLyAyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmOm50aC1jaGlsZCgzKSB7IFxuXHRcdFx0XHRncmlkLWFyZWE6IDEgLyA0IC8gMiAvIDU7IFxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuXHRcdFx0XHRcdGdyaWQtYXJlYTogMiAvIDEgLyAzIC8gMjtcblx0XHRcdFx0fSBcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDU1MCkpIHtcblx0XHRcdFx0XHRncmlkLWFyZWE6IDMgLyAxIC8gNCAvIDI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdCY6bnRoLWNoaWxkKDQpIHsgXG5cdFx0XHRcdGdyaWQtYXJlYTogMiAvIDMgLyAzIC8gNDsgXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NjgpKSB7XG5cdFx0XHRcdFx0Z3JpZC1hcmVhOiAyIC8gMiAvIDMgLyAzO1xuXHRcdFx0XHR9IFxuXHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogZW0oNTUwKSkge1xuXHRcdFx0XHRcdGdyaWQtYXJlYTogNCAvIDEgLyA1IC8gMjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0JjpudGgtY2hpbGQoNSkgeyBcblx0XHRcdFx0Z3JpZC1hcmVhOiAyIC8gNCAvIDMgLyA1OyBcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcblx0XHRcdFx0XHRncmlkLWFyZWE6IDMgLyAxIC8gNCAvIDI7XG5cdFx0XHRcdH0gXG5cdFx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg1NTApKSB7XG5cdFx0XHRcdFx0Z3JpZC1hcmVhOiA1IC8gMSAvIDYgLyAyO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0JjphY3RpdmUge1xuXHRcdFx0XHRzcGFuLmJ0biB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNsci0xO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNlcnZpY2UtaW1nIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHQmOmFmdGVyIHsgLypcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvZm9uZHBvc3Quc3ZnKTtcblx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IHJlbSg4OSk7XG5cdFx0XHRcdHdpZHRoOiByZW0oMTMxKTtcblx0XHRcdCovfVxuXHRcdFx0aW1nIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0c3Bhbi5idG4ge1xuXHRcdFx0bWF4LXdpZHRoOiA5MCU7XG5cdFx0XHRtaW4td2lkdGg6IHJlbSgxOTApO1xuXHRcdFx0d2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0XHR0cmFuc2l0aW9uOiAkdHJhbnM7XG5cdFx0fVxuXG5cdFx0LnNlcnZpY2UtdGl0bGUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRmb250LXNpemU6IGVtKDI0KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSgxMjAwKSkge1xuXHRcdFx0XHRmb250LXNpemU6IGVtKDIwKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuc2VydmljZS10ZXh0IHtcblx0XHRcdGZvbnQtZmFtaWx5OiAkc2Vjb25kYXJ5LWZvbnQtZmFtaWx5O1xuXHRcdFx0Zm9udC1zaXplOiBlbSgxNik7XG5cdFx0XHRtYXJnaW46IDAgMCByZW0oMjApO1xuXHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDEyMDApKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5zZWN0aW9uLWN0YSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiByZW0oNDApIDA7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiBlbSgyMjIpO1xuICAgIHdpZHRoOiBlbSgzODcpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvY3RhLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiBlbSg5OTApKSB7XG4gICAgICBoZWlnaHQ6IGVtKDExNSk7XG4gICAgICB3aWR0aDogZW0oMjAwKTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcbiAgICAgIGhlaWdodDogZW0oNzgpO1xuICAgICAgd2lkdGg6IGVtKDEzNSk7XG4gICAgfVxuICB9XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IGVtKC0zMCk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDhkZWcpIHNjYWxlWCgtMSk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcbiAgICAgIHRvcDogZW0oLTUwKVxuICAgIH1cbiAgfVxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiBlbSgtMzApO1xuICB9XG5cbiAgLndyYXBwZXIge1xuICAgIG1heC13aWR0aDogcmVtKDEwMDApO1xuICB9XG59XG5cbi5jdGEtdGl0bGUge1xuICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQtZmFtaWx5O1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgIGZvbnQtc2l6ZTogZW0oMjEpO1xuICB9XG59XG5cbi5jdGEtdGV4dCB7XG4gIGZvbnQtc2l6ZTogZW0oMTgpO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgIGZvbnQtc2l6ZTogZW0oMTYpO1xuICB9XG59IiwiLnNlY3Rpb24tdGVzdGltb25pZXMge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IGVtKDgwKSAwO1xuXHRAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuXHRcdHBhZGRpbmc6IGVtKDUwKSAwO1xuXHR9XG5cdC50ZXN0aW1vbmllcy1iZyB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ly9vcGFjaXR5OiAwLjU1O1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0fVxuXG5cdC53cmFwcGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Ly9tYXgtd2lkdGg6IGVtKDY1MCk7XG5cdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLTItbGlnaHQ7XG5cdFx0Ly9ib3JkZXI6IHJlbSgxMCkgc29saWQgJGNsci1saWdodDtcblx0XHRwYWRkaW5nOiBlbSg0MCkgZW0oNzApO1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NjgpKSB7XG5cdFx0XHRtYXgtd2lkdGg6IDkwJTtcblx0XHRcdHBhZGRpbmc6IGVtKDMwKSBlbSgyMCk7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHR9XG5cdFx0JjphZnRlciB7XG5cdFx0XHQvKmNvbnRlbnQ6IHVybChpbWFnZXMvdGVzdGltb25pZXMuc3ZnKTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogcmVtKC0yMCk7XG5cdFx0XHRyaWdodDogcmVtKC03KTtcblx0XHRcdHotaW5kZXg6IDA7Ki9cblx0XHR9XG5cdH1cblxuXHQuc2VjdGlvbi10aXRsZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdC8vZm9udC1zaXplOiBlbSgyOCk7XG5cdFx0Y29sb3I6ICRjbHItbGlnaHQ7XG5cdFx0ei1pbmRleDogMTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiBlbSg3NjgpKSB7XG5cdFx0XHRmb250LXNpemU6IGVtKDIxKTtcblx0XHR9XG5cdH1cblxuXHQudGVzdGltb255LWl0ZW0ge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXG5cdC50ZXN0aW1vbnktdGV4dCB7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTUpO1xuXHRcdH1cblx0fVxuXG5cdC50ZXN0aW1vbnktbmFtZSxcblx0LnRlc3RpbW9ueS1pbmZvcyB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGZvbnQtZmFtaWx5OiAkdGl0bGUtZm9udC1mYW1pbHk7XG5cdFx0Y29sb3I6ICRjbHItMjtcblx0XHRtYXJnaW46IDA7XG5cdH1cblxuXHQudGVzdGltb255LWluZm9zIHtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnLSc7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0oNSk7XG5cdFx0fVxuXHR9XG59IiwiLnBhZ2UtaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNsci0xO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHBhZGRpbmc6IGVtKDgwKSAwIGVtKDExMCk7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcbiAgICAgIHBhZGRpbmc6IGVtKDQ1KSAwIGVtKDgwKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY2xyLTEtZGFya2VuLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLnBhZ2UtaGVhZGVyLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIC8vcGFkZGluZzogZW0oMjApIGVtKDQwKTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiByZW0oLTU1KTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvaGFsZi1zdW4uc3ZnKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICB3aWR0aDogMTUwcHg7XG4gICAgfVxuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAkY2xyLWxpZ2h0O1xuICAgIH1cbn1cblxuLnBhZ2UtdGl0bGUge1xuICBmb250LWZhbWlseTogJHRpdGxlLWZvbnQtZmFtaWx5O1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgIGZvbnQtc2l6ZTogZW0oMjQpO1xuICB9XG59XG5cbi5wYWdlLWludHJvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogODAlO1xuICBmb250LXNpemU6IGVtKDE4KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0byByZW0oMjApO1xuICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IGVtKDE3KTtcbiAgfVxufVxuXG4ucGFnZS1jb250ZW50IHtcbiAgcGFkZGluZzogZW0oNTApIDA7XG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcbiAgICAgIGNvbG9yOiAkY2xyLTE7XG4gIH1cblxuICBhOm5vdCguYnRuKSB7XG4gICAgICBjb2xvcjogJGNsci0xO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkY2xyLTI7XG4gICAgICB9XG4gIH1cblxuICBhLmJ0biB7XG4gICAgICBmb250LXNpemU6IHJlbSgxNyk7XG4gICAgICBtYXJnaW46IHJlbSgxNSkgMDtcbiAgfVxuXG4gIGltZy5yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiBlbSgyMDApO1xuICB9XG5cbiAgYmxvY2txdW90ZSxcbiAgICBxIHtcbiAgICAgIGZvbnQtc2l6ZTogZW0oMTgpO1xuICB9XG5cbiAgdWwsXG4gIG9sIHtcbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0oNSk7XG4gICAgfVxuICAgIGxpOjptYXJrZXIge1xuICAgICAgY29sb3I6ICRjbHItMi1saWdodDtcbiAgICB9XG4gIH1cblxuICB1bCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogZW0oMjYpO1xuICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICB1bCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogcmVtKDIwKTtcbiAgICB9XG4gIH1cblxuICB0YWJsZSB7XG4gICAgICBib3JkZXI6IHNvbGlkIHJlbSgxKSAkY2xyLTE7XG4gIH1cblxuICB0Ym9keSB7XG4gICAgICB0aCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkdGl0bGUtZm9udC1mYW1pbHk7XG4gICAgICB9XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgcmVtKDEpICRjbHItMTtcbiAgICAgIH1cbiAgICAgIHRkICsgdGQsXG4gICAgICB0aCArIHRoIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIHJlbSgxKSAkY2xyLTE7XG4gICAgICB9XG4gICAgICB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2xyLTEtbGlnaHRlbjtcbiAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1kZWZhdWx0Om5vdCgucGFnZS1kYWNjdWVpbCkge1xuICBtYWluIHtcbiAgICBwYWRkaW5nOiBlbSg2MCkgMDtcbiAgfVxufVxuXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1zZXJ2aWNlcyB7XG4gIC5wYWdlLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tdG9wOiBlbSg1MCk7XG5cbiAgICAucGFnZS1pdGVtIHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogZW0oMjUpO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDc2OCkpIHtcbiAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogZW0oNDApO1xuICAgICAgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IGVtKDUwMCkpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgICAgLnBhZ2UtdGh1bWJuYWlsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICB9XG4gICAgICAucGFnZS1pdGVtLXRpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICR0aXRsZS1mb250LWZhbWlseTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogZW0oNzY4KSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXNlcnZpY2UtaXRlbSAge1xufVxuXG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hYm91dCB7XG4gIC50ZXh0LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IGVtKDUwKSAwO1xuICB9XG59IiwiLnUtY2Yge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLnUtbm9CZmMge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi51LWZsb2F0TGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi51LWZsb2F0UmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLnUtMTAwdmgge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbn1cbiIsIi51LWhpZGVNb2JpbGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkbXEtcy11cCApIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi51LXNob3dNb2JpbGUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJG1xLXMtdXAgKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi51LWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH1cbiIsIi8qIFNwYWNpbmcgaGVscGVyc1xuICogICBwLG0gPSBwYWRkaW5nLCBtYXJnaW5cbiAqICAgYSx0LHIsYixsID0gYWxsLCB0b3AsIGJvdHRvbSwgbGVmdCwgcmlnaHRcbiAqICAgbixzLG0sbCA9IG5vbmUsIHNtYWxsLCBtZWRpdW0sIGxhcmdlXG4gKi9cblxuLyogTWFyZ2luICovXG4udS1tYW4geyBtYXJnaW46IDAgIWltcG9ydGFudCB9XG4udS1tYm4geyBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQgfVxuLnUtbWJzIHsgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1zICFpbXBvcnRhbnQgfVxuLnUtbWJtIHsgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1tICFpbXBvcnRhbnQgfVxuLnUtbWJsIHsgbWFyZ2luLWJvdHRvbTogJHNwYWNlci1sICFpbXBvcnRhbnQgfVxuLnUtbXRuIHsgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50IH1cbi51LW10cyB7IG1hcmdpbi10b3A6ICRzcGFjZXItcyAhaW1wb3J0YW50IH1cbi51LW10bSB7IG1hcmdpbi10b3A6ICRzcGFjZXItbSAhaW1wb3J0YW50IH1cbi51LW10bCB7IG1hcmdpbi10b3A6ICRzcGFjZXItbCAhaW1wb3J0YW50IH1cbi51LW1sbiB7IG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQgfVxuLnUtbWxzIHsgbWFyZ2luLWxlZnQ6ICRzcGFjZXItcyAhaW1wb3J0YW50IH1cbi51LW1sbSB7IG1hcmdpbi1sZWZ0OiAkc3BhY2VyLW0gIWltcG9ydGFudCB9XG4udS1tbGwgeyBtYXJnaW4tbGVmdDogJHNwYWNlci1sICFpbXBvcnRhbnQgfVxuLnUtbXJuIHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQgfVxuLnUtbXJzIHsgbWFyZ2luLXJpZ2h0OiAkc3BhY2VyLXMgIWltcG9ydGFudCB9XG4udS1tcm0geyBtYXJnaW4tcmlnaHQ6ICRzcGFjZXItbSAhaW1wb3J0YW50IH1cbi51LW1ybCB7IG1hcmdpbi1yaWdodDogJHNwYWNlci1sICFpbXBvcnRhbnQgfVxuXG4vKiBQYWRkaW5nICovXG4udS1wYW4geyBwYWRkaW5nOiAwICFpbXBvcnRhbnQgfVxuLnUtcGJuIHsgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudCB9XG4udS1wYnMgeyBwYWRkaW5nLWJvdHRvbTogJHNwYWNlci1zICFpbXBvcnRhbnQgfVxuLnUtcGJtIHsgcGFkZGluZy1ib3R0b206ICRzcGFjZXItbSAhaW1wb3J0YW50IH1cbi51LXBibCB7IHBhZGRpbmctYm90dG9tOiAkc3BhY2VyLWwgIWltcG9ydGFudCB9XG4udS1wdG4geyBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50IH1cbi51LXB0cyB7IHBhZGRpbmctdG9wOiAkc3BhY2VyLXMgIWltcG9ydGFudCB9XG4udS1wdG0geyBwYWRkaW5nLXRvcDogJHNwYWNlci1tICFpbXBvcnRhbnQgfVxuLnUtcHRsIHsgcGFkZGluZy10b3A6ICRzcGFjZXItbCAhaW1wb3J0YW50IH1cbi51LXBsbiB7IHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50IH1cbi51LXBscyB7IHBhZGRpbmctbGVmdDogJHNwYWNlci1zICFpbXBvcnRhbnQgfVxuLnUtcGxtIHsgcGFkZGluZy1sZWZ0OiAkc3BhY2VyLW0gIWltcG9ydGFudCB9XG4udS1wbGwgeyBwYWRkaW5nLWxlZnQ6ICRzcGFjZXItbCAhaW1wb3J0YW50IH1cbi51LXBybiB7IHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudCB9XG4udS1wcnMgeyBwYWRkaW5nLXJpZ2h0OiAkc3BhY2VyLXMgIWltcG9ydGFudCB9XG4udS1wcm0geyBwYWRkaW5nLXJpZ2h0OiAkc3BhY2VyLW0gIWltcG9ydGFudCB9XG4udS1wcmwgeyBwYWRkaW5nLXJpZ2h0OiAkc3BhY2VyLWwgIWltcG9ydGFudCB9XG4iLCIudS10eHQge1xuICAmVXBwZXIgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50IH1cbiAgJkxvd2VyICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2UgIWltcG9ydGFudCB9XG4gICZDZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudCB9XG4gICZMZWZ0ICAgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQgfVxuICAmUmlnaHQgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudCB9XG4gICZCcmVhayAgeyB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudCB9XG4gICZOb1dyYXAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQgfVxuICAmVHJ1bmNhdGUgeyBAZXh0ZW5kICV0cnVuY2F0ZSB9XG4gICZLZXJuIHsgLy8gaHR0cDovL2Jsb2cudHlwZWtpdC5jb20vMjAxNC8wMi8wNS9rZXJuaW5nLW9uLXRoZS13ZWIvXG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwia2VyblwiIDE7XG4gICAgZm9udC1rZXJuaW5nOiBub3JtYWw7XG4gIH1cbn1cbiJdfQ== */
