@charset "UTF-8";
/**
  * PAGE-SPECIFIC STYLESHEET: Team
  *
  * Import common styles and house page-specific styles for Team page.
  */
/**
  * COMMON STYLES
  *
  * Defines the styles to import that are required by virtually all pages.
  */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/**
  * SCSS BREAKPOINTS
  *
  * Define breakpoints for media query use and export them for use with JS.
  */
:export {
  breakpointPhoneSmall: 320;
  breakpointPhoneLarge: 480;
  breakpointTablet: 768;
  breakpointLaptop: 992;
  breakpointDesktop: 1200;
  breakpointDesktopLarge: 1400;
  breakpointHd: 1920;
}

/**
  * SCSS VARIABLES
  */
/**
  * Dimensions:
  */
/**
  * Colors:
  */
/**
  * FONT STYLES
  *
  * Define @font-face styles.
  */
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-Thin.ttf);
  font-weight: 100;
  font-style: normal;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-ThinItalic.ttf);
  font-weight: 100;
  font-style: italic;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-Light.ttf);
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-LightItalic.ttf);
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-Italic.ttf);
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-BoldItalic.ttf);
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-Black.ttf);
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: Lato;
  src: url(../fonts/Lato-BlackItalic.ttf);
  font-weight: 900;
  font-style: italic;
}
@font-face {
  font-family: Merriweather;
  src: url(../fonts/Merriweather-Light.ttf);
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: Merriweather;
  src: url(../fonts/Merriweather-LightItalic.ttf);
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: Merriweather;
  src: url(../fonts/Merriweather-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: Merriweather;
  src: url(../fonts/Merriweather-Italic.ttf);
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: Merriweather;
  src: url(../fonts/Merriweather-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: Merriweather;
  src: url(../fonts/Merriweather-BoldItalic.ttf);
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: Merriweather;
  src: url(../fonts/Merriweather-Black.ttf);
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: Merriweather;
  src: url(../fonts/Merriweather-BlackItalic.ttf);
  font-weight: 900;
  font-style: italic;
}
/**
  * SCSS MIXINS
  *
  * Standardized style chunks, provided as both SCSS mixins and HTML classes.
  */
.wrap {
  width: 100%;
  height: auto;
}

.inner-wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

.mar-top {
  margin-top: 30px;
  transition: margin 300ms;
}
@media (min-width: 480px) {
  .mar-top {
    margin-top: 35px;
  }
}
@media (min-width: 768px) {
  .mar-top {
    margin-top: 40px;
  }
}
@media (min-width: 992px) {
  .mar-top {
    margin-top: 60px;
  }
}
@media (min-width: 1200px) {
  .mar-top {
    margin-top: 80px;
  }
}

.mar-bottom {
  margin-bottom: 30px;
  transition: margin 300ms;
}
@media (min-width: 480px) {
  .mar-bottom {
    margin-bottom: 35px;
  }
}
@media (min-width: 768px) {
  .mar-bottom {
    margin-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .mar-bottom {
    margin-bottom: 60px;
  }
}
@media (min-width: 1200px) {
  .mar-bottom {
    margin-bottom: 80px;
  }
}

.mar-vertical {
  margin-top: 30px;
  transition: margin 300ms;
  margin-bottom: 30px;
  transition: margin 300ms;
}
@media (min-width: 480px) {
  .mar-vertical {
    margin-top: 35px;
  }
}
@media (min-width: 768px) {
  .mar-vertical {
    margin-top: 40px;
  }
}
@media (min-width: 992px) {
  .mar-vertical {
    margin-top: 60px;
  }
}
@media (min-width: 1200px) {
  .mar-vertical {
    margin-top: 80px;
  }
}
@media (min-width: 480px) {
  .mar-vertical {
    margin-bottom: 35px;
  }
}
@media (min-width: 768px) {
  .mar-vertical {
    margin-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .mar-vertical {
    margin-bottom: 60px;
  }
}
@media (min-width: 1200px) {
  .mar-vertical {
    margin-bottom: 80px;
  }
}

.mar-right {
  margin-right: 30px;
  transition: margin 300ms;
  max-width: calc(100% - 30px);
}
@media (min-width: 480px) {
  .mar-right {
    margin-right: 35px;
    max-width: calc(100% - 35px);
  }
}
@media (min-width: 768px) {
  .mar-right {
    margin-right: 40px;
    max-width: calc(100% - 40px);
  }
}
@media (min-width: 992px) {
  .mar-right {
    margin-right: 60px;
    max-width: calc(100% - 60px);
  }
}
@media (min-width: 1200px) {
  .mar-right {
    margin-right: 80px;
    max-width: calc(100% - 80px);
  }
}

.mar-left {
  margin-left: 30px;
  transition: margin 300ms;
  max-width: calc(100% - 30px);
}
@media (min-width: 480px) {
  .mar-left {
    margin-left: 35px;
    max-width: calc(100% - 35px);
  }
}
@media (min-width: 768px) {
  .mar-left {
    margin-left: 40px;
    max-width: calc(100% - 40px);
  }
}
@media (min-width: 992px) {
  .mar-left {
    margin-left: 60px;
    max-width: calc(100% - 60px);
  }
}
@media (min-width: 1200px) {
  .mar-left {
    margin-left: 80px;
    max-width: calc(100% - 80px);
  }
}

.mar-horizontal {
  margin-left: 30px;
  margin-right: 30px;
  transition: margin 300ms;
  max-width: calc(100% - 60px);
}
@media (min-width: 480px) {
  .mar-horizontal {
    margin-left: 35px;
    margin-right: 35px;
    max-width: calc(100% - 70px);
  }
}
@media (min-width: 768px) {
  .mar-horizontal {
    margin-left: 40px;
    margin-right: 40px;
    max-width: calc(100% - 80px);
  }
}
@media (min-width: 992px) {
  .mar-horizontal {
    margin-left: 60px;
    margin-right: 60px;
    max-width: calc(100% - 120px);
  }
}
@media (min-width: 1200px) {
  .mar-horizontal {
    margin-left: 80px;
    margin-right: 80px;
    max-width: calc(100% - 160px);
  }
}

.mar-right-negative {
  margin-right: -30px;
  transition: margin 300ms;
}
@media (min-width: 480px) {
  .mar-right-negative {
    margin-right: -35px;
  }
}
@media (min-width: 768px) {
  .mar-right-negative {
    margin-right: -40px;
  }
}
@media (min-width: 992px) {
  .mar-right-negative {
    margin-right: -60px;
  }
}
@media (min-width: 1200px) {
  .mar-right-negative {
    margin-right: -80px;
  }
}

.mar-left-negative {
  margin-left: -30px;
  transition: margin 300ms;
}
@media (min-width: 480px) {
  .mar-left-negative {
    margin-left: -35px;
  }
}
@media (min-width: 768px) {
  .mar-left-negative {
    margin-left: -40px;
  }
}
@media (min-width: 992px) {
  .mar-left-negative {
    margin-left: -60px;
  }
}
@media (min-width: 1200px) {
  .mar-left-negative {
    margin-left: -80px;
  }
}

.mar-horizontal-negative {
  margin-left: -30px;
  margin-right: -30px;
  transition: margin 300ms;
  width: calc(100% + 60px);
}
@media (min-width: 480px) {
  .mar-horizontal-negative {
    margin-left: -35px;
    margin-right: -35px;
    width: calc(100% + 70px);
  }
}
@media (min-width: 768px) {
  .mar-horizontal-negative {
    margin-left: -40px;
    margin-right: -40px;
    width: calc(100% + 80px);
  }
}
@media (min-width: 992px) {
  .mar-horizontal-negative {
    margin-left: -60px;
    margin-right: -60px;
    width: calc(100% + 120px);
  }
}
@media (min-width: 1200px) {
  .mar-horizontal-negative {
    margin-left: -80px;
    margin-right: -80px;
    width: calc(100% + 160px);
  }
}

.pad-top {
  padding-top: 40px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .pad-top {
    padding-top: 45px;
  }
}
@media (min-width: 768px) {
  .pad-top {
    padding-top: 55px;
  }
}
@media (min-width: 992px) {
  .pad-top {
    padding-top: 65px;
  }
}
@media (min-width: 1200px) {
  .pad-top {
    padding-top: 80px;
  }
}

.pad-bottom {
  padding-bottom: 40px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .pad-bottom {
    padding-bottom: 45px;
  }
}
@media (min-width: 768px) {
  .pad-bottom {
    padding-bottom: 55px;
  }
}
@media (min-width: 992px) {
  .pad-bottom {
    padding-bottom: 65px;
  }
}
@media (min-width: 1200px) {
  .pad-bottom {
    padding-bottom: 80px;
  }
}

.pad-left {
  padding-left: 30px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .pad-left {
    padding-left: 35px;
  }
}
@media (min-width: 768px) {
  .pad-left {
    padding-left: 40px;
  }
}
@media (min-width: 992px) {
  .pad-left {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .pad-left {
    padding-left: 80px;
  }
}

.pad-right {
  padding-right: 30px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .pad-right {
    padding-right: 35px;
  }
}
@media (min-width: 768px) {
  .pad-right {
    padding-right: 40px;
  }
}
@media (min-width: 992px) {
  .pad-right {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .pad-right {
    padding-right: 80px;
  }
}

.pad-vertical {
  padding-top: 40px;
  transition: padding 300ms;
  padding-bottom: 40px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .pad-vertical {
    padding-top: 45px;
  }
}
@media (min-width: 768px) {
  .pad-vertical {
    padding-top: 55px;
  }
}
@media (min-width: 992px) {
  .pad-vertical {
    padding-top: 65px;
  }
}
@media (min-width: 1200px) {
  .pad-vertical {
    padding-top: 80px;
  }
}
@media (min-width: 480px) {
  .pad-vertical {
    padding-bottom: 45px;
  }
}
@media (min-width: 768px) {
  .pad-vertical {
    padding-bottom: 55px;
  }
}
@media (min-width: 992px) {
  .pad-vertical {
    padding-bottom: 65px;
  }
}
@media (min-width: 1200px) {
  .pad-vertical {
    padding-bottom: 80px;
  }
}

.pad-horizontal {
  padding-right: 30px;
  transition: padding 300ms;
  padding-left: 30px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .pad-horizontal {
    padding-right: 35px;
  }
}
@media (min-width: 768px) {
  .pad-horizontal {
    padding-right: 40px;
  }
}
@media (min-width: 992px) {
  .pad-horizontal {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .pad-horizontal {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .pad-horizontal {
    padding-left: 35px;
  }
}
@media (min-width: 768px) {
  .pad-horizontal {
    padding-left: 40px;
  }
}
@media (min-width: 992px) {
  .pad-horizontal {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .pad-horizontal {
    padding-left: 80px;
  }
}

.button {
  margin: 1rem 0;
  padding: 10px 15px;
  display: inline-block;
  background-color: #005d50;
  text-decoration: none;
  font-weight: bold;
  color: #ffffff;
  cursor: pointer;
  border-radius: 3px;
}
.button:hover {
  background-color: #00443a !important;
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.no-scroll {
  overflow: hidden;
}

.h1 {
  font-size: 3rem;
  margin-top: 0;
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .h1 {
    font-size: 4rem;
  }
}

.h2 {
  font-size: 2.4rem;
  margin-bottom: 2.1rem;
}
@media (min-width: 768px) {
  .h2 {
    font-size: 3rem;
  }
}

.h3 {
  font-size: 1.8rem;
  margin-bottom: 1.8rem;
}
@media (min-width: 768px) {
  .h3 {
    font-size: 2.1rem;
  }
}

.h4 {
  font-size: 1.6rem;
  margin-bottom: 1.7rem;
}
@media (min-width: 768px) {
  .h4 {
    font-size: 2rem;
  }
}

.h5 {
  font-size: 1.5rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 768px) {
  .h5 {
    font-size: 1.9rem;
  }
}

.h6 {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  .h6 {
    font-size: 1.8rem;
  }
}

/**
  * HTML ELEMENT STYLES
  *
  * Style definitions for global element selectors.
  */
* {
  box-sizing: border-box;
}

html {
  height: 100%;
  line-height: 1.7;
  font-size: 62.5%;
}

body {
  min-height: 100%;
  margin: 0;
  display: grid;
  grid-template-rows: auto 1fr auto;
  background-color: #e4e2dc;
  font-family: "Lato", sans-serif;
  font-size: 1.6rem;
  color: #005d50;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  margin-top: 3rem;
  display: block;
  font-weight: 400;
  line-height: 1;
  font-family: "Merriweather", serif;
  color: #005d50;
}

h1 {
  font-size: 3rem;
  margin-top: 0;
  margin-bottom: 2rem;
  font-family: "Lato", sans-serif;
}
@media (min-width: 768px) {
  h1 {
    font-size: 4rem;
  }
}

h2 {
  font-size: 2.4rem;
  margin-bottom: 2.1rem;
}
@media (min-width: 768px) {
  h2 {
    font-size: 3rem;
  }
}

h3 {
  font-size: 1.8rem;
  margin-bottom: 1.8rem;
}
@media (min-width: 768px) {
  h3 {
    font-size: 2.1rem;
  }
}

h4 {
  font-size: 1.6rem;
  margin-bottom: 1.7rem;
}
@media (min-width: 768px) {
  h4 {
    font-size: 2rem;
  }
}

h5 {
  font-size: 1.5rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 768px) {
  h5 {
    font-size: 1.9rem;
  }
}

h6 {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 768px) {
  h6 {
    font-size: 1.8rem;
  }
}

p {
  margin: 0 0 1.5rem 0;
  font-weight: 400;
}

a {
  text-decoration: underline;
  color: #005d50;
}
ul, ol {
  margin: 1.5rem 0;
  padding: 0;
  list-style-position: inside;
}

img {
  display: block;
  width: 100%;
}

/* Begin button styles */
button {
  display: block;
  border: none;
  padding: 0;
  margin: 0;
  text-decoration: none;
  background: none;
  cursor: pointer;
  text-align: center;
  -webkit-appearance: none;
  -moz-appearance: none;
}

/* End button styles */
blockquote {
  border-left: 5px solid #000000;
  margin: 1.5em 10px;
  padding: 0.5em 30px;
  quotes: "“";
}
blockquote:before {
  color: #ccc;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}
blockquote p {
  display: block;
}
blockquote p:first-of-type, blockquote p:nth-of-type(2) {
  font-size: 1.3rem;
}

/**
  * HEADER STYLES
  */
.header-wrap {
  width: 100%;
  height: auto;
  grid-row-start: 1;
  grid-row-end: 2;
  position: relative;
  top: 0;
  z-index: 9999;
  transition: background-color 200ms, border 200ms, box-shadow 200ms;
  background-color: #005d50;
}
.header-overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: #005d50;
  opacity: 0.7;
}
.header-overlay.bg-visible {
  background-color: #005d50;
  opacity: 1;
}

.top-bar-bg {
  width: 100%;
  height: 45px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 6;
  display: none;
  transition: background-color 200ms;
}
.top-bar-bg.bg-visible {
  background-color: #005d50;
}
@media (min-width: 768px) {
  .top-bar-bg {
    display: block;
  }
}

.header {
  height: 90px;
  padding-top: 0;
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 90px auto;
  transition: background-color 200ms;
}
.header.bg-visible {
  background-color: #005d50;
}
@media (min-width: 768px) {
  .header {
    height: 165px;
    grid-template-columns: 1fr;
    grid-template-rows: 120px 70px;
  }
}

.header-brand {
  padding-right: 30px;
  transition: padding 300ms;
  padding-left: 30px;
  transition: padding 300ms;
  margin-top: 0;
  margin-bottom: 0;
  padding-right: 0;
  height: 90px;
  grid-column: 1/span 1;
  grid-row: 1/span 1;
  position: relative;
  z-index: 5;
}
@media (min-width: 480px) {
  .header-brand {
    padding-right: 35px;
  }
}
@media (min-width: 768px) {
  .header-brand {
    padding-right: 40px;
  }
}
@media (min-width: 992px) {
  .header-brand {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .header-brand {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .header-brand {
    padding-left: 35px;
  }
}
@media (min-width: 768px) {
  .header-brand {
    padding-left: 40px;
  }
}
@media (min-width: 992px) {
  .header-brand {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .header-brand {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .header-brand {
    height: 165px;
    padding-top: 33.75px;
  }
}
.header-brand a {
  height: 90px;
  display: flex;
  align-items: center;
  flex-direction: row;
}
@media (min-width: 768px) {
  .header-brand a {
    height: 75px;
    height: 97.5px;
  }
}
.header-brand a .logo-image {
  width: auto;
  height: 35px;
  margin-right: 15px;
  padding: 0 0 0 10px;
  text-align: center;
  display: block;
}
@media (min-width: 768px) {
  .header-brand a .logo-image {
    height: 97.5px;
    padding: 5px 0;
  }
}
.header-brand a .logo-text {
  display: block;
  color: #e4e2dc;
  text-align: left;
  padding-left: 0;
  font-weight: bold;
}
@media (min-width: 480px) {
  .header-brand a .logo-text {
    padding-left: 10px;
    font-size: 1rem;
  }
}
.header-brand a .logo-text .logo-text-title {
  margin: 0 auto;
  display: block;
  line-height: 0.9;
  font-size: 1rem;
}
.header-brand a .logo-text .logo-text-title span.registered {
  font-size: 0.7rem;
  font-weight: normal;
  vertical-align: super;
}
@media (min-width: 480px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 1.4rem;
  }
  .header-brand a .logo-text .logo-text-title span.registered {
    font-size: 0.9rem;
  }
}
.header-brand a .logo-text .logo-text-tagline {
  margin: 10px auto 0 auto;
  line-height: 0.8;
  font-size: 0.6rem;
  font-weight: lighter;
  font-style: italic;
  display: block;
  color: #e4e2dc;
}
@media (min-width: 480px) {
  .header-brand a .logo-text .logo-text-tagline {
    font-size: 1.1rem;
  }
}

.header-nav {
  width: 100%;
  height: 0;
  opacity: 0;
  min-height: auto;
  position: absolute;
  top: 90px;
  display: none;
  overflow: hidden;
}
.header-nav.bg-visible {
  background-color: #005d50;
}
.header-nav.visible {
  height: 100%;
  display: block;
  position: fixed;
  opacity: 1;
}
@media (min-width: 768px) {
  .header-nav {
    height: auto;
    min-height: 165px;
    display: block;
    top: 0;
    overflow: visible;
    opacity: 1 !important;
  }
  .header-nav.visible {
    height: auto;
    display: block;
    position: absolute;
    opacity: 1;
  }
}

.header-nav-main {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  height: 100%;
  position: static;
  top: auto;
  right: auto;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .header-nav-main {
    padding-right: 30px;
    transition: padding 300ms;
    padding-left: 30px;
    transition: padding 300ms;
    width: 50%;
    height: 45px;
    position: absolute;
    display: block;
    top: 50%;
    right: 0;
    translate: 0 -22.5px;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .header-nav-main {
    padding-right: 35px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .header-nav-main {
    padding-right: 40px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .header-nav-main {
    padding-right: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .header-nav-main {
    padding-right: 80px;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .header-nav-main {
    padding-left: 35px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .header-nav-main {
    padding-left: 40px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .header-nav-main {
    padding-left: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .header-nav-main {
    padding-left: 80px;
  }
}
.header-nav-main ul {
  width: 100%;
  height: auto;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  transform: translate(0, -45px);
}
@media (min-width: 768px) {
  .header-nav-main ul {
    width: auto;
    height: 45px;
    flex-direction: row;
    border-top: unset;
    justify-content: flex-end;
    transform: translate(0, 0);
  }
}
.header-nav-main ul li {
  width: auto;
  height: auto;
  list-style: none;
  border-top: unset;
  position: relative;
  z-index: 1;
  background-color: #005d50;
}
@media (min-width: 768px) {
  .header-nav-main ul li {
    width: auto;
    height: auto;
    padding: 0 15px;
    min-height: 45px;
    background-color: unset;
    border-bottom: unset;
    transition: display 300ms;
  }
  .header-nav-main ul li:hover > ul {
    display: block;
  }
  .header-nav-main ul li:last-child {
    padding-right: 0;
  }
}
.header-nav-main ul li a {
  width: auto;
  height: 45px;
  position: relative;
  display: block;
  flex-grow: 0;
  align-items: center;
  text-decoration: none;
  font-weight: normal;
  font-size: 1.4rem;
  color: #ffffff;
}
.header-nav-main ul li a::after {
  content: "";
  height: 1px;
  width: 100%;
  background-color: #e4e2dc;
  position: absolute;
  bottom: 20px;
  display: none;
}
@media (min-width: 768px) {
  .header-nav-main ul li a::after {
    bottom: 9px;
  }
}
@media (min-width: 768px) {
  .header-nav-main ul li a {
    width: auto;
    height: 45px;
    border-bottom: unset;
    display: flex;
  }
}
.header-nav-main ul li.current_page_item a::after {
  display: block;
}
.header-nav-main ul li .nav-chevron {
  width: 45px;
  height: 45px;
  display: flex;
  position: absolute;
  right: 0;
  align-items: center;
  justify-content: center;
  z-index: 2;
  cursor: pointer;
  color: #e4e2dc;
}
.header-nav-main ul li .nav-chevron:hover {
  color: #b8b2a2;
}
@media (min-width: 768px) {
  .header-nav-main ul li .nav-chevron {
    display: none;
  }
}
.header-nav-main ul li ul {
  width: 100%;
  height: auto;
  position: relative;
  top: 0;
  right: 0;
  left: auto;
  list-style: none;
  display: none;
}
@media (min-width: 768px) {
  .header-nav-main ul li ul {
    min-width: 320px;
    position: absolute;
    top: 45px;
    left: 0;
    right: auto;
    background-color: #005d50;
  }
}
.header-nav-main ul li ul li {
  width: 100%;
  min-height: 45px;
  height: auto;
  list-style: none;
  display: block;
}
@media (min-width: 768px) {
  .header-nav-main ul li ul li {
    height: 45px;
    border-top: 1px solid rgba(102, 102, 102, 0.2);
  }
  .header-nav-main ul li ul li:hover > ul {
    display: none;
  }
}
.header-nav-main ul li ul li a {
  padding-left: 3em;
  text-decoration: none;
}
@media (min-width: 768px) {
  .header-nav-main ul li ul li a {
    height: 45px;
    padding-right: 15px;
    padding-left: 15px;
  }
}
.header-nav-main ul li ul li ul li a {
  padding-left: 4.5em;
}
.header-nav-main ul li ul li ul li ul li a {
  padding-left: 6em;
}

/*
.header-nav-top {
  padding-right: 0;
  padding-left: 0;
  width: 100%;
  height: auto;
  position: relative;
  top: auto;
  left: auto;
  z-index: 6;
  display: block;
  clear: both;

  @include media(">=tablet") {
    @include pad-horizontal;
    width: 100%;
    height: $topBarHeight;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 6;
  }

  ul { // top nav
    width: 100%;
    padding-right: 0;
    height: auto;
    margin: 0;
    display: flex;
    flex-direction: column;
    list-style: none;
    column-gap: 30px;
    flex-flow: column;

    @include media(">=tablet") {
      width: auto;
      height: $topBarHeight;
      padding-right: 60px; // Padding against header buttons (search glass)
      //flex-flow: row;
      flex-direction: row;
      justify-content: flex-end;
    }

    li { // top nav
      @include pad-horizontal;
      width: 100%;
      height: 45px;
      display: flex;
      align-items: center;
      list-style: none;
      border-bottom: 1px solid $gray;
      position: relative;

      @include media(">=tablet") {
        width: auto;
        padding-right: 0;
        padding-left: 0;
        border-bottom: unset;
      }

      a { // top nav
        height: $topBarHeight;
        text-transform: uppercase;
        text-decoration: none;
        font-weight: bold;
        font-size: 12px;
        display: flex;
        align-items: center;
        color: $brandColorContrast;
        font-family: 'Lato', sans-serif;

        &:hover {
          color: darken($brandColorContrast, 20%);
        }

        @include media(">=tablet") {

        }
      }
    }
  }
}
*/
/*
li.slide-line {
  position: absolute;
  z-index: 1002;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 5px;
  padding: 0;
  margin: 0;
  background-color: $white;
  border-radius: 3px 3px 0 0;
  transition: width 300ms, left 300ms, background-color 150ms;

  &:before {
    display: none;
  }

  &.hover-state {
    //box-shadow: 0 0 5px 0px $black;
  }
}
*/
.header-buttons {
  padding-right: 30px;
  transition: padding 300ms;
  width: auto;
  height: 90px;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 6;
}
@media (min-width: 480px) {
  .header-buttons {
    padding-right: 35px;
  }
}
@media (min-width: 768px) {
  .header-buttons {
    padding-right: 40px;
  }
}
@media (min-width: 992px) {
  .header-buttons {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .header-buttons {
    padding-right: 80px;
  }
}
@media (min-width: 768px) {
  .header-buttons {
    height: 45px;
    padding-left: 0;
  }
}

.glass {
  padding: 8px 10px;
  display: flex;
  align-items: center;
  top: auto;
}
@media (min-width: 768px) {
  .glass {
    height: 45px;
    border: unset;
  }
}
.glass i {
  color: #e4e2dc;
}
.glass i:hover {
  color: #b8b2a2;
}
.burger {
  margin-left: 0;
  padding: 8px 10px;
  display: flex;
  align-items: center;
}
@media (min-width: 340px) {
  .burger {
    margin-left: 10px;
  }
}
@media (min-width: 768px) {
  .burger {
    display: none;
  }
}
.burger i {
  color: #e4e2dc;
}
.burger i:hover {
  color: #b8b2a2;
}

.header-search-wrap {
  width: 100%;
  height: auto;
  height: auto;
  display: none;
  position: absolute;
  top: 90px;
  left: 0;
  background-color: #005d50;
  z-index: 6;
}
@media (min-width: 768px) {
  .header-search-wrap {
    top: 45px;
    height: 75px;
  }
}
.header-search-wrap .site-search {
  padding-right: 30px;
  transition: padding 300ms;
  padding-left: 30px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .header-search-wrap .site-search {
    padding-right: 35px;
  }
}
@media (min-width: 768px) {
  .header-search-wrap .site-search {
    padding-right: 40px;
  }
}
@media (min-width: 992px) {
  .header-search-wrap .site-search {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .header-search-wrap .site-search {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .header-search-wrap .site-search {
    padding-left: 35px;
  }
}
@media (min-width: 768px) {
  .header-search-wrap .site-search {
    padding-left: 40px;
  }
}
@media (min-width: 992px) {
  .header-search-wrap .site-search {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .header-search-wrap .site-search {
    padding-left: 80px;
  }
}

/**
  * SITE SEARCH FORM STYLES
  */
.site-search {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  height: auto;
  padding: 40px 0;
  display: grid;
  grid-template-columns: 1fr 50px;
  grid-template-rows: auto;
}

.search-query {
  height: 50px;
  padding: 0;
  grid-column: 1/span 1;
  grid-row: 1;
  align-self: center;
}
.search-query label {
  width: 100%;
  max-width: 100%;
  height: 30px;
  color: #e4e2dc;
  display: block;
  text-transform: uppercase;
  text-align: left;
  display: none;
}
.search-query input {
  width: 100%;
  max-width: 100%;
  height: 50px;
  padding-left: 20px;
  border: 2px solid #e4e2dc;
  display: block;
  background-color: unset;
  color: #e4e2dc;
}

.search-submit {
  width: 50px;
  height: 50px;
  grid-column: 2/span 1;
  grid-row: 1;
  align-self: start;
  color: #005d50;
  font-size: 1.4rem;
  background-color: #e4e2dc;
  transition: background-color 200ms;
}
.search-submit:hover {
  background-color: #b8b2a2;
}

/**
  * MAIN PAGE CONTENT STYLES
  */
.main-wrap {
  width: 100%;
  height: auto;
  grid-row-start: 2;
  grid-row-end: 3;
  background-color: #e4e2dc;
}

.main {
  height: 100%;
  overflow: hidden;
}

.page-header-wrap {
  width: 100%;
  height: auto;
  padding: 0 5px;
  background-size: cover;
  position: relative;
}

.page-header-overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: #005d50;
  opacity: 0.5;
  background-blend-mode: overlay;
}
.page-header-overlay.bg-visible {
  background-color: #005d50;
  opacity: 1;
}

.page-header {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 40px;
  transition: padding 300ms;
  padding-bottom: 40px;
  transition: padding 300ms;
  padding-right: 30px;
  transition: padding 300ms;
  padding-left: 30px;
  transition: padding 300ms;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: center;
  position: relative;
  z-index: 3;
}
@media (min-width: 480px) {
  .page-header {
    padding-top: 45px;
  }
}
@media (min-width: 768px) {
  .page-header {
    padding-top: 55px;
  }
}
@media (min-width: 992px) {
  .page-header {
    padding-top: 65px;
  }
}
@media (min-width: 1200px) {
  .page-header {
    padding-top: 80px;
  }
}
@media (min-width: 480px) {
  .page-header {
    padding-bottom: 45px;
  }
}
@media (min-width: 768px) {
  .page-header {
    padding-bottom: 55px;
  }
}
@media (min-width: 992px) {
  .page-header {
    padding-bottom: 65px;
  }
}
@media (min-width: 1200px) {
  .page-header {
    padding-bottom: 80px;
  }
}
@media (min-width: 480px) {
  .page-header {
    padding-right: 35px;
  }
}
@media (min-width: 768px) {
  .page-header {
    padding-right: 40px;
  }
}
@media (min-width: 992px) {
  .page-header {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .page-header {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .page-header {
    padding-left: 35px;
  }
}
@media (min-width: 768px) {
  .page-header {
    padding-left: 40px;
  }
}
@media (min-width: 992px) {
  .page-header {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .page-header {
    padding-left: 80px;
  }
}

.page-header-title h1 {
  width: 100%;
  margin-bottom: 0;
  color: #ffffff;
  text-shadow: 0 0 15px #005d50;
}

.page-header-text p {
  margin-top: 40px;
  font-size: 2rem;
  color: #ffffff;
  text-shadow: 0 0 10px #005d50;
}

.page-main-wrap {
  width: 100%;
  height: auto;
}

.page-main {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
@media (min-width: 768px) {
  .page-main {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
}

.page-main.side {
  grid-template-columns: 1fr 0px;
  grid-template-rows: auto auto;
}
@media (min-width: 768px) {
  .page-main.side {
    grid-template-columns: 1fr 320px;
    grid-template-rows: auto 0px;
  }
}

.page-content {
  width: 100%;
  padding-right: 0;
  grid-column: 1/span 1;
  grid-row: 2;
}
@media (min-width: 768px) {
  .page-content {
    grid-column: 1/span 1;
    grid-row: 1;
  }
}

.page-section-wrap {
  width: 100%;
  height: auto;
}

.page-section {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-right: 30px;
  transition: padding 300ms;
  padding-left: 30px;
  transition: padding 300ms;
  padding-top: 40px;
  transition: padding 300ms;
  padding-bottom: 40px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .page-section {
    padding-right: 35px;
  }
}
@media (min-width: 768px) {
  .page-section {
    padding-right: 40px;
  }
}
@media (min-width: 992px) {
  .page-section {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .page-section {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .page-section {
    padding-left: 35px;
  }
}
@media (min-width: 768px) {
  .page-section {
    padding-left: 40px;
  }
}
@media (min-width: 992px) {
  .page-section {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .page-section {
    padding-left: 80px;
  }
}
@media (min-width: 480px) {
  .page-section {
    padding-top: 45px;
  }
}
@media (min-width: 768px) {
  .page-section {
    padding-top: 55px;
  }
}
@media (min-width: 992px) {
  .page-section {
    padding-top: 65px;
  }
}
@media (min-width: 1200px) {
  .page-section {
    padding-top: 80px;
  }
}
@media (min-width: 480px) {
  .page-section {
    padding-bottom: 45px;
  }
}
@media (min-width: 768px) {
  .page-section {
    padding-bottom: 55px;
  }
}
@media (min-width: 992px) {
  .page-section {
    padding-bottom: 65px;
  }
}
@media (min-width: 1200px) {
  .page-section {
    padding-bottom: 80px;
  }
}

.side .page-content {
  padding-right: 0;
}
@media (min-width: 768px) {
  .side .page-content {
    padding-right: 100px;
  }
}

.page-sidebar {
  padding-bottom: 40px;
  transition: padding 300ms;
  width: 100%;
  grid-column: 1/span 1;
  grid-row: 1;
}
@media (min-width: 480px) {
  .page-sidebar {
    padding-bottom: 45px;
  }
}
@media (min-width: 768px) {
  .page-sidebar {
    padding-bottom: 55px;
  }
}
@media (min-width: 992px) {
  .page-sidebar {
    padding-bottom: 65px;
  }
}
@media (min-width: 1200px) {
  .page-sidebar {
    padding-bottom: 80px;
  }
}
@media (min-width: 768px) {
  .page-sidebar {
    grid-column: 2/span 1;
    grid-row: 1;
  }
}

/**
  * FOOTER STYLES
  */
.footer-wrap {
  width: 100%;
  height: auto;
  grid-row-start: 3;
  grid-row-end: 4;
  background-color: #252425;
}

.footer {
  padding-top: 40px;
  transition: padding 300ms;
  padding-bottom: 40px;
  transition: padding 300ms;
  padding-right: 30px;
  transition: padding 300ms;
  padding-left: 30px;
  transition: padding 300ms;
  text-align: center;
  overflow: hidden;
  color: #e4e2dc;
  display: grid;
  grid-template-columns: 50% 50%;
  grid-rows: auto auto auto;
}
@media (min-width: 480px) {
  .footer {
    padding-top: 45px;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-top: 55px;
  }
}
@media (min-width: 992px) {
  .footer {
    padding-top: 65px;
  }
}
@media (min-width: 1200px) {
  .footer {
    padding-top: 80px;
  }
}
@media (min-width: 480px) {
  .footer {
    padding-bottom: 45px;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-bottom: 55px;
  }
}
@media (min-width: 992px) {
  .footer {
    padding-bottom: 65px;
  }
}
@media (min-width: 1200px) {
  .footer {
    padding-bottom: 80px;
  }
}
@media (min-width: 480px) {
  .footer {
    padding-right: 35px;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-right: 40px;
  }
}
@media (min-width: 992px) {
  .footer {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .footer {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .footer {
    padding-left: 35px;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-left: 40px;
  }
}
@media (min-width: 992px) {
  .footer {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .footer {
    padding-left: 80px;
  }
}

.footer-nav {
  padding-left: 0;
  grid-column: 1/span 2;
  grid-row: 2;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .footer-nav {
    padding-left: 30px;
    transition: padding 300ms;
    width: auto;
    grid-column: 2/span 1;
    grid-row: 1/span 1;
    justify-content: right;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .footer-nav {
    padding-left: 35px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .footer-nav {
    padding-left: 40px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .footer-nav {
    padding-left: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .footer-nav {
    padding-left: 80px;
  }
}
.footer-nav ul {
  width: 100%;
  height: auto;
  display: inline-block;
  list-style: none;
  text-align: center;
}
@media (min-width: 768px) {
  .footer-nav ul {
    width: auto;
    display: block;
    text-align: right;
  }
}
.footer-nav ul li {
  width: 100%;
  padding: 5px 0;
  list-style: none;
  position: relative;
  display: inline-block;
  position: relative;
  /*&:after {
    content: "|";
    color: $brandColorContrast;
    position: absolute;
    top: 0;
    right: -2px;
  }

  &:last-child {

    &:after {
      content: "";
    }
  }*/
}
@media (min-width: 768px) {
  .footer-nav ul li {
    width: auto;
    padding: 0;
    display: block;
  }
  .footer-nav ul li:after {
    content: "";
  }
}
.footer-nav ul li a {
  width: 100%;
  padding: 0;
  position: relative;
  display: block;
  font-size: 1rem;
  color: #e4e2dc;
  text-align: left;
  text-decoration: underline;
}
@media (min-width: 768px) {
  .footer-nav ul li a {
    width: auto;
    padding: 0;
    text-align: right;
  }
}

.footer-brand {
  padding-left: 0;
  padding-bottom: 20px;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  padding-right: 0;
  grid-column: 1/span 2;
  grid-row: 1/span 1;
  position: relative;
  z-index: 5;
}
@media (min-width: 768px) {
  .footer-brand {
    padding-right: 30px;
    transition: padding 300ms;
    padding-bottom: 0;
    grid-column: 1/span 1;
    grid-row: 1/span 2;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .footer-brand {
    padding-right: 35px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .footer-brand {
    padding-right: 40px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .footer-brand {
    padding-right: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .footer-brand {
    padding-right: 80px;
  }
}
.footer-brand a {
  width: 260px;
  height: auto;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
  text-decoration: none;
}
.footer-brand a .footer-brand-logo-image {
  width: auto;
  margin-left: -12px;
  height: 100px;
  margin-right: 15px;
  text-align: center;
  display: block;
}
.footer-brand a .footer-brand-logo-text {
  display: block;
  color: #ffffff;
  text-align: left;
  padding-left: 0;
  font-weight: bold;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .footer-brand a .footer-brand-logo-text {
    padding-left: 10px;
  }
}
.footer-brand a .footer-brand-logo-text .footer-brand-logo-text-title {
  margin: 0 auto;
  display: block;
  line-height: 1.2;
  font-size: 1.4rem;
}
.footer-brand a .footer-brand-logo-text .footer-brand-logo-text-title span.registered {
  font-size: 0.7rem;
  font-weight: normal;
  vertical-align: super;
}
@media (min-width: 480px) {
  .footer-brand a .footer-brand-logo-text .footer-brand-logo-text-title span.registered {
    font-size: 0.9rem;
  }
}
.footer-brand a .footer-brand-logo-text .footer-brand-logo-text-tagline {
  margin: 10px auto 0 auto;
  line-height: 0.8;
  font-size: 1.1rem;
  font-weight: lighter;
  font-style: italic;
  display: block;
  color: #ffffff;
}
.copyright {
  margin: 0;
  padding: 20px 0 0 0;
  grid-column: 1/span 2;
  grid-row: 3;
  font-size: 10px;
  justify-content: left;
  text-align: left;
}
@media (min-width: 768px) {
  .copyright {
    padding: 0 0 0 0;
    grid-row: 2;
    grid-column: 2/span 1;
    justify-content: right;
    text-align: right;
  }
}

/**
  * MISCELLANEOUS STYLES
  */
.embed-container-wrap {
  width: 100%;
  max-width: 500px;
  margin: 20px auto;
}

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  overflow: hidden;
  max-width: 100%;
  height: auto;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.max-width-280px {
  width: 100%;
  max-width: 280px;
}

.float-right,
.alignright {
  display: block;
  margin: 0 auto;
  padding: 20px;
  float: none;
}
@media (min-width: 480px) {
  .float-right,
  .alignright {
    padding: 20px 0 20px 20px;
    float: right;
  }
}

.team-member {
  margin: 50px 0 0 0;
  padding: 60px 0 0 0;
  border-top: 2px solid rgba(0, 93, 80, 0.1);
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto auto;
}
.team-member:first-child {
  margin: 0;
  padding: 0;
  border-top: unset;
}
@media (min-width: 768px) {
  .team-member {
    grid-template-columns: 300px 1fr;
  }
}

.team-member-name {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
  grid-column: 1/span 2;
  grid-row: 2;
}
@media (min-width: 768px) {
  .team-member-name {
    max-width: 100%;
    grid-column: 2/span 1;
    grid-row: 1;
  }
}
.team-member-name h2 {
  margin-top: 0;
  padding-top: 30px;
  padding-left: 0;
  font-weight: 500;
  margin-bottom: 3rem;
  display: flex;
}
@media (min-width: 768px) {
  .team-member-name h2 {
    padding-top: 0;
    padding-left: 50px;
  }
}

.team-member-content {
  max-width: 500px;
  margin: 0 auto;
  padding: 0;
  grid-column: 1/span 2;
  grid-row: 3;
}
@media (min-width: 768px) {
  .team-member-content {
    max-width: 100%;
    padding: 0 20px 0 50px;
    grid-column: 2/span 1;
    grid-row: 2;
  }
}

.team-member-image {
  width: 300px;
  max-width: 100%;
  margin: 0 auto;
  grid-column: 1/span 2;
  grid-row: 1;
}
@media (min-width: 768px) {
  .team-member-image {
    grid-column: 1/span 1;
    grid-row: 1/span 3;
  }
}
.team-member-image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 10%;
     object-position: center 10%;
  aspect-ratio: 1/1;
  border-radius: 50%;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlYW0uY3NzIiwidGVhbS5zY3NzIiwiX2NvbW1vbi5zY3NzIiwibGlicmFyaWVzL19ub3JtYWxpemUuc2NzcyIsInBhcnRpYWxzL19icmVha3BvaW50cy5tb2R1bGVzLnNjc3MiLCJwYXJ0aWFscy9fdmFyaWFibGVzLnNjc3MiLCJwYXJ0aWFscy9fZm9udHMuc2NzcyIsInBhcnRpYWxzL19taXhpbnMuc2NzcyIsImxpYnJhcmllcy9faW5jbHVkZS1tZWRpYS5zY3NzIiwicGFydGlhbHMvX2VsZW1lbnRzLnNjc3MiLCJwYXJ0aWFscy9faGVhZGVyLnNjc3MiLCJwYXJ0aWFscy9fc2VhcmNoZm9ybS5zY3NzIiwicGFydGlhbHMvX21haW4uc2NzcyIsInBhcnRpYWxzL19mb290ZXIuc2NzcyIsInBhcnRpYWxzL19taXNjLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDQWhCOzs7O0dBQUE7QUNBQTs7OztHQUFBO0FDQUEsMkVBQUE7QUFFQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0UsaUJBQUEsRUFBQSxNQUFBO0VBQ0EsOEJBQUEsRUFBQSxNQUFBO0FIU0Y7O0FHTkE7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsU0FBQTtBSE9GOztBR0pBOztFQUFBO0FBSUE7RUFDRSxjQUFBO0FITUY7O0FHSEE7OztFQUFBO0FBS0E7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7QUhLRjs7QUdGQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0UsdUJBQUEsRUFBQSxNQUFBO0VBQ0EsU0FBQSxFQUFBLE1BQUE7RUFDQSxpQkFBQSxFQUFBLE1BQUE7QUhHRjs7QUdBQTs7O0VBQUE7QUFLQTtFQUNFLGlDQUFBLEVBQUEsTUFBQTtFQUNBLGNBQUEsRUFBQSxNQUFBO0FIRUY7O0FHQ0E7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsNkJBQUE7QUhBRjs7QUdHQTs7O0VBQUE7QUFLQTtFQUNFLG1CQUFBLEVBQUEsTUFBQTtFQUNBLDBCQUFB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amdCRjtJQVhFLGdCRmJxQjtFTGlkdkI7QUFDRjtBUXVFSTtFRGpnQkY7SUFQRSxnQkZoQnFCO0VMcWR2QjtBQUNGO0FRa0VJO0VEamdCRjtJQUhFLGdCRm5Cc0I7RUx5ZHhCO0FBQ0Y7O0FPNWFFO0VBbkJBLG1CRi9CdUI7RUVnQ3ZCLHdCQUFBO0FQbWNGO0FRd0RJO0VEemVGO0lBZkUsbUJGbEN5QjtFTHNlM0I7QUFDRjtBUW1ESTtFRHplRjtJQVhFLG1CRnJDcUI7RUwwZXZCO0FBQ0Y7QVE4Q0k7RUR6ZUY7SUFQRSxtQkZ4Q3FCO0VMOGV2QjtBQUNGO0FReUNJO0VEemVGO0lBSEUsbUJGM0NzQjtFTGtmeEI7QUFDRjs7QU83YkU7RUFuREEsZ0JGUHVCO0VFUXZCLHdCQUFBO0VBdUJBLG1CRi9CdUI7RUVnQ3ZCLHdCQUFBO0FQOGRGO0FRNkJJO0VEamVGO0lBL0NFLGdCRlZ5QjtFTGlnQjNCO0FBQ0Y7QVF3Qkk7RURqZUY7SUEzQ0UsZ0JGYnFCO0VMcWdCdkI7QUFDRjtBUW1CSTtFRGplRjtJQXZDRSxnQkZoQnFCO0VMeWdCdkI7QUFDRjtBUWNJO0VEamVGO0lBbkNFLGdCRm5Cc0I7RUw2Z0J4QjtBQUNGO0FRU0k7RURqZUY7SUF2QkUsbUJGbEN5QjtFTHFoQjNCO0FBQ0Y7QVFJSTtFRGplRjtJQW5CRSxtQkZyQ3FCO0VMeWhCdkI7QUFDRjtBUURJO0VEamVGO0lBZkUsbUJGeENxQjtFTDZoQnZCO0FBQ0Y7QVFOSTtFRGplRjtJQVhFLG1CRjNDc0I7RUxpaUJ4QjtBQUNGOztBTy9jRTtFQXhCQSxrQkYvRHVCO0VFZ0V2Qix3QkFBQTtFQUNBLDRCQUFBO0FQMmVGO0FRakJJO0VEcGNGO0lBbkJFLGtCRm5FeUI7SUVvRXpCLDRCQUFBO0VQNGVGO0FBQ0Y7QVF2Qkk7RURwY0Y7SUFkRSxrQkZ2RXFCO0lFd0VyQiw0QkFBQTtFUDZlRjtBQUNGO0FRN0JJO0VEcGNGO0lBVEUsa0JGM0VxQjtJRTRFckIsNEJBQUE7RVA4ZUY7QUFDRjtBUW5DSTtFRHBjRjtJQUpFLGtCRi9Fc0I7SUVnRnRCLDRCQUFBO0VQK2VGO0FBQ0Y7O0FPaGRFO0VBeEJBLGlCRjVGdUI7RUU2RnZCLHdCQUFBO0VBQ0EsNEJBQUE7QVA0ZUY7QVEvQ0k7RUR2YUY7SUFuQkUsaUJGaEd5QjtJRWlHekIsNEJBQUE7RVA2ZUY7QUFDRjtBUXJESTtFRHZhRjtJQWRFLGlCRnBHcUI7SUVxR3JCLDRCQUFBO0VQOGVGO0FBQ0Y7QVEzREk7RUR2YUY7SUFURSxpQkZ4R3FCO0lFeUdyQiw0QkFBQTtFUCtlRjtBQUNGO0FRakVJO0VEdmFGO0lBSkUsaUJGNUdzQjtJRTZHdEIsNEJBQUE7RVBnZkY7QUFDRjs7QU81Y0U7RUE3QkEsaUJGekh1QjtFRTBIdkIsa0JGMUh1QjtFRTJIdkIsd0JBQUE7RUFDQSw0QkFBQTtBUDZlRjtBUTlFSTtFRHJZRjtJQXZCRSxpQkY5SHlCO0lFK0h6QixrQkYvSHlCO0lFZ0l6Qiw0QkFBQTtFUDhlRjtBQUNGO0FRckZJO0VEcllGO0lBakJFLGlCRm5JcUI7SUVvSXJCLGtCRnBJcUI7SUVxSXJCLDRCQUFBO0VQK2VGO0FBQ0Y7QVE1Rkk7RURyWUY7SUFYRSxpQkZ4SXFCO0lFeUlyQixrQkZ6SXFCO0lFMElyQiw2QkFBQTtFUGdmRjtBQUNGO0FRbkdJO0VEcllGO0lBTEUsaUJGN0lzQjtJRThJdEIsa0JGOUlzQjtJRStJdEIsNkJBQUE7RVBpZkY7QUFDRjs7QU9sZEU7RUF4QkEsbUJBQUE7RUFDQSx3QkFBQTtBUDhlRjtBUS9HSTtFRHhXRjtJQW5CRSxtQkFBQTtFUDhlRjtBQUNGO0FRcEhJO0VEeFdGO0lBZEUsbUJBQUE7RVA4ZUY7QUFDRjtBUXpISTtFRHhXRjtJQVRFLG1CQUFBO0VQOGVGO0FBQ0Y7QVE5SEk7RUR4V0Y7SUFKRSxtQkFBQTtFUDhlRjtBQUNGOztBTzljRTtFQXhCQSxrQkFBQTtFQUNBLHdCQUFBO0FQMGVGO0FReElJO0VEM1VGO0lBbkJFLGtCQUFBO0VQMGVGO0FBQ0Y7QVE3SUk7RUQzVUY7SUFkRSxrQkFBQTtFUDBlRjtBQUNGO0FRbEpJO0VEM1VGO0lBVEUsa0JBQUE7RVAwZUY7QUFDRjtBUXZKSTtFRDNVRjtJQUpFLGtCQUFBO0VQMGVGO0FBQ0Y7O0FPcmNFO0VBN0JBLGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSx3QkFBQTtFQUNBLHdCQUFBO0FQc2VGO0FRbktJO0VEelNGO0lBdkJFLGtCQUFBO0lBQ0EsbUJBQUE7SUFDQSx3QkFBQTtFUHVlRjtBQUNGO0FRMUtJO0VEelNGO0lBakJFLGtCQUFBO0lBQ0EsbUJBQUE7SUFDQSx3QkFBQTtFUHdlRjtBQUNGO0FRakxJO0VEelNGO0lBWEUsa0JBQUE7SUFDQSxtQkFBQTtJQUNBLHlCQUFBO0VQeWVGO0FBQ0Y7QVF4TEk7RUR6U0Y7SUFMRSxrQkFBQTtJQUNBLG1CQUFBO0lBQ0EseUJBQUE7RVAwZUY7QUFDRjs7QU9oZEU7RUFuQkEsaUJGaFBvQjtFRWlQcEIseUJBQUE7QVB1ZUY7QVFwTUk7RURqUkY7SUFmRSxpQkZuUHNCO0VMMnRCeEI7QUFDRjtBUXpNSTtFRGpSRjtJQVhFLGlCRnRQa0I7RUwrdEJwQjtBQUNGO0FROU1JO0VEalJGO0lBUEUsaUJGelBrQjtFTG11QnBCO0FBQ0Y7QVFuTkk7RURqUkY7SUFIRSxpQkY1UG1CO0VMdXVCckI7QUFDRjs7QU9qZEU7RUFuQkEsb0JGeFFvQjtFRXlRcEIseUJBQUE7QVB3ZUY7QVE3Tkk7RUR6UEY7SUFmRSxvQkYzUXNCO0VMb3ZCeEI7QUFDRjtBUWxPSTtFRHpQRjtJQVhFLG9CRjlRa0I7RUx3dkJwQjtBQUNGO0FRdk9JO0VEelBGO0lBUEUsb0JGalJrQjtFTDR2QnBCO0FBQ0Y7QVE1T0k7RUR6UEY7SUFIRSxvQkZwUm1CO0VMZ3dCckI7QUFDRjs7QU9sZEU7RUFuQkEsa0JGdlN1QjtFRXdTdkIseUJBQUE7QVB5ZUY7QVF0UEk7RURqT0Y7SUFmRSxrQkYxU3lCO0VMb3hCM0I7QUFDRjtBUTNQSTtFRGpPRjtJQVhFLGtCRjdTcUI7RUx3eEJ2QjtBQUNGO0FRaFFJO0VEak9GO0lBUEUsa0JGaFRxQjtFTDR4QnZCO0FBQ0Y7QVFyUUk7RURqT0Y7SUFIRSxrQkZuVHNCO0VMZ3lCeEI7QUFDRjs7QU9uZEU7RUFuQkEsbUJGL1R1QjtFRWdVdkIseUJBQUE7QVAwZUY7QVEvUUk7RUR6TUY7SUFmRSxtQkZsVXlCO0VMNnlCM0I7QUFDRjtBUXBSSTtFRHpNRjtJQVhFLG1CRnJVcUI7RUxpekJ2QjtBQUNGO0FRelJJO0VEek1GO0lBUEUsbUJGeFVxQjtFTHF6QnZCO0FBQ0Y7QVE5Ukk7RUR6TUY7SUFIRSxtQkYzVXNCO0VMeXpCeEI7QUFDRjs7QU9wZUU7RUFuR0EsaUJGaFBvQjtFRWlQcEIseUJBQUE7RUF1QkEsb0JGeFFvQjtFRXlRcEIseUJBQUE7QVBxakJGO0FRMVNJO0VEak1GO0lBL0ZFLGlCRm5Qc0I7RUxpMEJ4QjtBQUNGO0FRL1NJO0VEak1GO0lBM0ZFLGlCRnRQa0I7RUxxMEJwQjtBQUNGO0FRcFRJO0VEak1GO0lBdkZFLGlCRnpQa0I7RUx5MEJwQjtBQUNGO0FRelRJO0VEak1GO0lBbkZFLGlCRjVQbUI7RUw2MEJyQjtBQUNGO0FROVRJO0VEak1GO0lBdkVFLG9CRjNRc0I7RUxxMUJ4QjtBQUNGO0FRblVJO0VEak1GO0lBbkVFLG9CRjlRa0I7RUx5MUJwQjtBQUNGO0FReFVJO0VEak1GO0lBL0RFLG9CRmpSa0I7RUw2MUJwQjtBQUNGO0FRN1VJO0VEak1GO0lBM0RFLG9CRnBSbUI7RUxpMkJyQjtBQUNGOztBTzNnQkU7RUFuQ0EsbUJGL1R1QjtFRWdVdkIseUJBQUE7RUF6QkEsa0JGdlN1QjtFRXdTdkIseUJBQUE7QVA0a0JGO0FRelZJO0VEekxGO0lBL0JFLG1CRmxVeUI7RUx1M0IzQjtBQUNGO0FROVZJO0VEekxGO0lBM0JFLG1CRnJVcUI7RUwyM0J2QjtBQUNGO0FRbldJO0VEekxGO0lBdkJFLG1CRnhVcUI7RUwrM0J2QjtBQUNGO0FReFdJO0VEekxGO0lBbkJFLG1CRjNVc0I7RUxtNEJ4QjtBQUNGO0FRN1dJO0VEekxGO0lBdkRFLGtCRjFTeUI7RUwyNEIzQjtBQUNGO0FRbFhJO0VEekxGO0lBbkRFLGtCRjdTcUI7RUwrNEJ2QjtBQUNGO0FRdlhJO0VEekxGO0lBL0NFLGtCRmhUcUI7RUxtNUJ2QjtBQUNG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QUFBO0VBQ0EsVUFBQTtBVitxQ047QVExckNJO0VFRUE7SUgxTkEsbUJGbFV5QjtFTHd0RDNCO0FBQ0Y7QVEvckNJO0VFRUE7SUh0TkEsbUJGclVxQjtFTDR0RHZCO0FBQ0Y7QVFwc0NJO0VFRUE7SUhsTkEsbUJGeFVxQjtFTGd1RHZCO0FBQ0Y7QVF6c0NJO0VFRUE7SUg5TUEsbUJGM1VzQjtFTG91RHhCO0FBQ0Y7QVE5c0NJO0VFRUE7SUFZSSxZTDdpQk87SUs4aUJQLGVBQUE7RVZvc0NOO0FBQ0Y7O0FVbHNDTTtFQUNFLGlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsU0FBQTtBVnFzQ1I7QVEzdENJO0VFa0JFO0lBT0ksWUx4akJLO0lLeWpCTCxhQUFBO0VWc3NDUjtBQUNGO0FVcHNDUTtFQUNFLGNMcmlCRDtBTDJ1RFQ7QVVwc0NVO0VBQ0UsY0FBQTtBVnNzQ1o7QVU3ckNNO0VBQ0UsY0FBQTtFQUNBLGlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0FWK3JDUjtBUTd1Q0k7RUUwQ0U7SUFPSSxpQkFBQTtFVmdzQ1I7QUFDRjtBUWx2Q0k7RUUwQ0U7SUFXSSxhQUFBO0VWaXNDUjtBQUNGO0FVL3JDUTtFQUNFLGNMaGtCRDtBTGl3RFQ7QVUvckNVO0VBQ0UsY0FBQTtBVmlzQ1o7O0FVNXJDSTtFSHRtQkYsV0FBQTtFQUNBLFlBQUE7RUd1bUJJLFlBQUE7RUFDQSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxTTHZtQmU7RUt3bUJmLE9BQUE7RUFDQSx5QkxobEJHO0VLaWxCSCxVQUFBO0FWZ3NDTjtBUXp3Q0k7RUVpRUE7SUFXSSxTTDNtQk87SUs0bUJQLFlBQUE7RVZpc0NOO0FBQ0Y7QVUvckNNO0VINVNKLG1CRi9UdUI7RUVnVXZCLHlCQUFBO0VBekJBLGtCRnZTdUI7RUV3U3ZCLHlCQUFBO0FQd2dERjtBUXJ4Q0k7RUVnRkU7SUh4U0YsbUJGbFV5QjtFTG16RDNCO0FBQ0Y7QVExeENJO0VFZ0ZFO0lIcFNGLG1CRnJVcUI7RUx1ekR2QjtBQUNGO0FRL3hDSTtFRWdGRTtJSGhTRixtQkZ4VXFCO0VMMnpEdkI7QUFDRjtBUXB5Q0k7RUVnRkU7SUg1UkYsbUJGM1VzQjtFTCt6RHhCO0FBQ0Y7QVF6eUNJO0VFZ0ZFO0lIaFVGLGtCRjFTeUI7RUx1MEQzQjtBQUNGO0FROXlDSTtFRWdGRTtJSDVURixrQkY3U3FCO0VMMjBEdkI7QUFDRjtBUW56Q0k7RUVnRkU7SUh4VEYsa0JGaFRxQjtFTCswRHZCO0FBQ0Y7QVF4ekNJO0VFZ0ZFO0lIcFRGLGtCRm5Uc0I7RUxtMUR4QjtBQUNGOztBVzEyREE7O0dBQUE7QUFJQTtFSllFLFdBQUE7RUFDQSxpQkZSVTtFRVNWLGNBQUE7RUlaQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGFBQUE7RUFDQSwrQkFBQTtFQUNBLHdCQUFBO0FYODJERjs7QVczMkRFO0VBQ0UsWUFBQTtFQUNBLFVBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtBWDgyREo7QVc1MkRJO0VBQ0UsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsY05jRztFTWJILGNBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtBWDgyRE47QVczMkRJO0VBQ0UsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLGNOREc7QUw4MkRUOztBV3oyREU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLGlCQUFBO0VBQ0EsY05aSztFTWFMLGlCQUFBO0VBQ0EseUJOYks7RU1jTCxrQ0FBQTtBWDQyREo7QVcxMkRJO0VBQ0UseUJBQUE7QVg0MkROOztBWW42REE7O0dBQUE7QUFLQTtFTEdFLFdBQUE7RUFDQSxZQUFBO0VLRkEsaUJBQUE7RUFDQSxlQUFBO0VBQ0EseUJQNkJPO0FMdzREVDs7QVluNkRFO0VBQ0UsWUFBQTtFQUNBLGdCQUFBO0FaczZESjs7QVlwNkRJO0VMUEYsV0FBQTtFQUNBLFlBQUE7RUtRSSxjQUFBO0VBSUEsc0JBQUE7RUFDQSxrQkFBQTtBWnE2RE47O0FZbDZETTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7RUFDQSx5QlBLQztFT0hELFlBQUE7RUFDQSw4QkFBQTtBWm82RFI7QVlsNkRRO0VBQ0UseUJQREQ7RU9FQyxVQUFBO0FabzZEVjs7QVloNkRNO0VMM0JKLFdBQUE7RUFDQSxpQkZSVTtFRVNWLGNBQUE7RUF1UEEsaUJGaFBvQjtFRWlQcEIseUJBQUE7RUF1QkEsb0JGeFFvQjtFRXlRcEIseUJBQUE7RUErQ0EsbUJGL1R1QjtFRWdVdkIseUJBQUE7RUF6QkEsa0JGdlN1QjtFRXdTdkIseUJBQUE7RUsxUU0sZUFBQTtFQUNBLHNCQUFBO0VBQ0EsbUJBQUE7RUFFQSxrQkFBQTtFQUNBLFVBQUE7QVp5NkRSO0FRajdDSTtFSWxnQkU7SUxrT0YsaUJGblBzQjtFTHc4RHhCO0FBQ0Y7QVF0N0NJO0VJbGdCRTtJTHNPRixpQkZ0UGtCO0VMNDhEcEI7QUFDRjtBUTM3Q0k7RUlsZ0JFO0lMME9GLGlCRnpQa0I7RUxnOURwQjtBQUNGO0FRaDhDSTtFSWxnQkU7SUw4T0YsaUJGNVBtQjtFTG85RHJCO0FBQ0Y7QVFyOENJO0VJbGdCRTtJTDBQRixvQkYzUXNCO0VMNDlEeEI7QUFDRjtBUTE4Q0k7RUlsZ0JFO0lMOFBGLG9CRjlRa0I7RUxnK0RwQjtBQUNGO0FRLzhDSTtFSWxnQkU7SUxrUUYsb0JGalJrQjtFTG8rRHBCO0FBQ0Y7QVFwOUNJO0VJbGdCRTtJTHNRRixvQkZwUm1CO0VMdytEckI7QUFDRjtBUXo5Q0k7RUlsZ0JFO0lMMFNGLG1CRmxVeUI7RUx1L0QzQjtBQUNGO0FROTlDSTtFSWxnQkU7SUw4U0YsbUJGclVxQjtFTDIvRHZCO0FBQ0Y7QVFuK0NJO0VJbGdCRTtJTGtURixtQkZ4VXFCO0VMKy9EdkI7QUFDRjtBUXgrQ0k7RUlsZ0JFO0lMc1RGLG1CRjNVc0I7RUxtZ0V4QjtBQUNGO0FRNytDSTtFSWxnQkU7SUxrUkYsa0JGMVN5QjtFTDJnRTNCO0FBQ0Y7QVFsL0NJO0VJbGdCRTtJTHNSRixrQkY3U3FCO0VMK2dFdkI7QUFDRjtBUXYvQ0k7RUlsZ0JFO0lMMFJGLGtCRmhUcUI7RUxtaEV2QjtBQUNGO0FRNS9DSTtFSWxnQkU7SUw4UkYsa0JGblRzQjtFTHVoRXhCO0FBQ0Y7O0FZci9EVTtFQUNFLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGNQaEJIO0VPa0JHLDZCQUFBO0FadS9EWjs7QVlqL0RVO0VBQ0UsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsY1AzQkg7RU80QkcsNkJBQUE7QVpvL0RaOztBWS8rREk7RUxyRUYsV0FBQTtFQUNBLFlBQUE7QVB3akVGOztBWWovRE07RUFDRSxhQUFBO0VBQ0EsMEJBQUE7RUFDQSx3QkFBQTtBWm8vRFI7QVExaERJO0VJN2RFO0lBTUksMEJBQUE7SUFDQSx3QkFBQTtFWnEvRFI7QUFDRjs7QVlsL0RNO0VBQ0UsOEJBQUE7RUFDQSw2QkFBQTtBWnEvRFI7QVFyaURJO0VJbGRFO0lBS0ksZ0NBQUE7SUFDQSw0QkFBQTtFWnMvRFI7QUFDRjs7QVlwL0RRO0VBQ0UsV0FBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FadS9EVjtBUWxqREk7RUl6Y0k7SUFPSSxxQkFBQTtJQUNBLFdBQUE7RVp3L0RWO0FBQ0Y7O0FZdC9EVTtFTHZHUixXQUFBO0VBQ0EsWUFBQTtBUGltRUY7O0FZeC9EWTtFTGxHVixXQUFBO0VBQ0EsaUJGUlU7RUVTVixjQUFBO0VBK1RBLG1CRi9UdUI7RUVnVXZCLHlCQUFBO0VBekJBLGtCRnZTdUI7RUV3U3ZCLHlCQUFBO0VBakRBLGlCRmhQb0I7RUVpUHBCLHlCQUFBO0VBdUJBLG9CRnhRb0I7RUV5UXBCLHlCQUFBO0FQczFERjtBUTNrREk7RUkzYlE7SUxtT1IsbUJGbFV5QjtFTHltRTNCO0FBQ0Y7QVFobERJO0VJM2JRO0lMdU9SLG1CRnJVcUI7RUw2bUV2QjtBQUNGO0FRcmxESTtFSTNiUTtJTDJPUixtQkZ4VXFCO0VMaW5FdkI7QUFDRjtBUTFsREk7RUkzYlE7SUwrT1IsbUJGM1VzQjtFTHFuRXhCO0FBQ0Y7QVEvbERJO0VJM2JRO0lMMk1SLGtCRjFTeUI7RUw2bkUzQjtBQUNGO0FRcG1ESTtFSTNiUTtJTCtNUixrQkY3U3FCO0VMaW9FdkI7QUFDRjtBUXptREk7RUkzYlE7SUxtTlIsa0JGaFRxQjtFTHFvRXZCO0FBQ0Y7QVE5bURJO0VJM2JRO0lMdU5SLGtCRm5Uc0I7RUx5b0V4QjtBQUNGO0FRbm5ESTtFSTNiUTtJTDJKUixpQkZuUHNCO0VMMG9FeEI7QUFDRjtBUXhuREk7RUkzYlE7SUwrSlIsaUJGdFBrQjtFTDhvRXBCO0FBQ0Y7QVE3bkRJO0VJM2JRO0lMbUtSLGlCRnpQa0I7RUxrcEVwQjtBQUNGO0FRbG9ESTtFSTNiUTtJTHVLUixpQkY1UG1CO0VMc3BFckI7QUFDRjtBUXZvREk7RUkzYlE7SUxtTFIsb0JGM1FzQjtFTDhwRXhCO0FBQ0Y7QVE1b0RJO0VJM2JRO0lMdUxSLG9CRjlRa0I7RUxrcUVwQjtBQUNGO0FRanBESTtFSTNiUTtJTDJMUixvQkZqUmtCO0VMc3FFcEI7QUFDRjtBUXRwREk7RUkzYlE7SUwrTFIsb0JGcFJtQjtFTDBxRXJCO0FBQ0Y7O0FZaGxFUTtFQUNFLGdCQUFBO0FabWxFVjtBUS9wREk7RUlyYkk7SUFJSSxvQkFBQTtFWm9sRVY7QUFDRjs7QVlqbEVRO0VMaUtOLG9CRnhRb0I7RUV5UXBCLHlCQUFBO0VLaEtRLFdBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7QVpxbEVWO0FRNXFESTtFSTdhSTtJTHFLSixvQkYzUXNCO0VMbXNFeEI7QUFDRjtBUWpyREk7RUk3YUk7SUx5S0osb0JGOVFrQjtFTHVzRXBCO0FBQ0Y7QVF0ckRJO0VJN2FJO0lMNktKLG9CRmpSa0I7RUwyc0VwQjtBQUNGO0FRM3JESTtFSTdhSTtJTGlMSixvQkZwUm1CO0VMK3NFckI7QUFDRjtBUWhzREk7RUk3YUk7SUFPSSxxQkFBQTtJQUNBLFdBQUE7RVowbUVWO0FBQ0Y7O0FhbnZFQTs7R0FBQTtBQUtBO0VOR0UsV0FBQTtFQUNBLFlBQUE7RU1GQSxpQkFBQTtFQUNBLGVBQUE7RUFDQSx5QlI2Q1k7QUx3c0VkOztBYW52RUU7RU44UEEsaUJGaFBvQjtFRWlQcEIseUJBQUE7RUF1QkEsb0JGeFFvQjtFRXlRcEIseUJBQUE7RUErQ0EsbUJGL1R1QjtFRWdVdkIseUJBQUE7RUF6QkEsa0JGdlN1QjtFRXdTdkIseUJBQUE7RU0zU0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGNScUJLO0VRcEJMLGFBQUE7RUFDQSw4QkFBQTtFQUNBLHlCQUFBO0FiMnZFSjtBUWx1REk7RUtsaUJGO0lOa1FFLGlCRm5Qc0I7RUx5dkV4QjtBQUNGO0FRdnVESTtFS2xpQkY7SU5zUUUsaUJGdFBrQjtFTDZ2RXBCO0FBQ0Y7QVE1dURJO0VLbGlCRjtJTjBRRSxpQkZ6UGtCO0VMaXdFcEI7QUFDRjtBUWp2REk7RUtsaUJGO0lOOFFFLGlCRjVQbUI7RUxxd0VyQjtBQUNGO0FRdHZESTtFS2xpQkY7SU4wUkUsb0JGM1FzQjtFTDZ3RXhCO0FBQ0Y7QVEzdkRJO0VLbGlCRjtJTjhSRSxvQkY5UWtCO0VMaXhFcEI7QUFDRjtBUWh3REk7RUtsaUJGO0lOa1NFLG9CRmpSa0I7RUxxeEVwQjtBQUNGO0FRcndESTtFS2xpQkY7SU5zU0Usb0JGcFJtQjtFTHl4RXJCO0FBQ0Y7QVExd0RJO0VLbGlCRjtJTjBVRSxtQkZsVXlCO0VMd3lFM0I7QUFDRjtBUS93REk7RUtsaUJGO0lOOFVFLG1CRnJVcUI7RUw0eUV2QjtBQUNGO0FRcHhESTtFS2xpQkY7SU5rVkUsbUJGeFVxQjtFTGd6RXZCO0FBQ0Y7QVF6eERJO0VLbGlCRjtJTnNWRSxtQkYzVXNCO0VMb3pFeEI7QUFDRjtBUTl4REk7RUtsaUJGO0lOa1RFLGtCRjFTeUI7RUw0ekUzQjtBQUNGO0FRbnlESTtFS2xpQkY7SU5zVEUsa0JGN1NxQjtFTGcwRXZCO0FBQ0Y7QVF4eURJO0VLbGlCRjtJTjBURSxrQkZoVHFCO0VMbzBFdkI7QUFDRjtBUTd5REk7RUtsaUJGO0lOOFRFLGtCRm5Uc0I7RUx3MEV4QjtBQUNGOztBYXowRUk7RUFDRSxlQUFBO0VBRUEscUJBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFB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QSxjQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FEMGxGTjtBUW5vRUk7RVA1ZEE7SUFTSSxxQkFBQTtJQUNBLGtCQUFBO0VEMGxGTjtBQUNGO0FDeGxGTTtFQUdFLG9CQUFBO0tBQUEsaUJBQUE7RUFDQSw4QkFBQTtLQUFBLDJCQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtBRHdsRlIiLCJmaWxlIjoidGVhbS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAgKiBQQUdFLVNQRUNJRklDIFNUWUxFU0hFRVQ6IFRlYW1cbiAgKlxuICAqIEltcG9ydCBjb21tb24gc3R5bGVzIGFuZCBob3VzZSBwYWdlLXNwZWNpZmljIHN0eWxlcyBmb3IgVGVhbSBwYWdlLlxuICAqL1xuLyoqXG4gICogQ09NTU9OIFNUWUxFU1xuICAqXG4gICogRGVmaW5lcyB0aGUgc3R5bGVzIHRvIGltcG9ydCB0aGF0IGFyZSByZXF1aXJlZCBieSB2aXJ0dWFsbHkgYWxsIHBhZ2VzLlxuICAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPWJ1dHRvbl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1yZXNldF06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAgKiBTQ1NTIEJSRUFLUE9JTlRTXG4gICpcbiAgKiBEZWZpbmUgYnJlYWtwb2ludHMgZm9yIG1lZGlhIHF1ZXJ5IHVzZSBhbmQgZXhwb3J0IHRoZW0gZm9yIHVzZSB3aXRoIEpTLlxuICAqL1xuOmV4cG9ydCB7XG4gIGJyZWFrcG9pbnRQaG9uZVNtYWxsOiAzMjA7XG4gIGJyZWFrcG9pbnRQaG9uZUxhcmdlOiA0ODA7XG4gIGJyZWFrcG9pbnRUYWJsZXQ6IDc2ODtcbiAgYnJlYWtwb2ludExhcHRvcDogOTkyO1xuICBicmVha3BvaW50RGVza3RvcDogMTIwMDtcbiAgYnJlYWtwb2ludERlc2t0b3BMYXJnZTogMTQwMDtcbiAgYnJlYWtwb2ludEhkOiAxOTIwO1xufVxuXG4vKipcbiAgKiBTQ1NTIFZBUklBQkxFU1xuICAqL1xuLyoqXG4gICogRGltZW5zaW9uczpcbiAgKi9cbi8qKlxuICAqIENvbG9yczpcbiAgKi9cbi8qKlxuICAqIEZPTlQgU1RZTEVTXG4gICpcbiAgKiBEZWZpbmUgQGZvbnQtZmFjZSBzdHlsZXMuXG4gICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IExhdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL0xhdG8tVGhpbi50dGYpO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IExhdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL0xhdG8tVGhpbkl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IExhdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL0xhdG8tTGlnaHQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBMYXRvO1xuICBzcmM6IHVybCguLi9mb250cy9MYXRvLUxpZ2h0SXRhbGljLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTGF0bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTGF0by1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTGF0bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTGF0by1JdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBMYXRvO1xuICBzcmM6IHVybCguLi9mb250cy9MYXRvLUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBMYXRvO1xuICBzcmM6IHVybCguLi9mb250cy9MYXRvLUJvbGRJdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBMYXRvO1xuICBzcmM6IHVybCguLi9mb250cy9MYXRvLUJsYWNrLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTGF0bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTGF0by1CbGFja0l0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1lcnJpd2VhdGhlcjtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWVycml3ZWF0aGVyLUxpZ2h0LnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWVycml3ZWF0aGVyO1xuICBzcmM6IHVybCguLi9mb250cy9NZXJyaXdlYXRoZXItTGlnaHRJdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNZXJyaXdlYXRoZXI7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01lcnJpd2VhdGhlci1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWVycml3ZWF0aGVyO1xuICBzcmM6IHVybCguLi9mb250cy9NZXJyaXdlYXRoZXItSXRhbGljLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWVycml3ZWF0aGVyO1xuICBzcmM6IHVybCguLi9mb250cy9NZXJyaXdlYXRoZXItQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1lcnJpd2VhdGhlcjtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWVycml3ZWF0aGVyLUJvbGRJdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNZXJyaXdlYXRoZXI7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01lcnJpd2VhdGhlci1CbGFjay50dGYpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1lcnJpd2VhdGhlcjtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWVycml3ZWF0aGVyLUJsYWNrSXRhbGljLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi8qKlxuICAqIFNDU1MgTUlYSU5TXG4gICpcbiAgKiBTdGFuZGFyZGl6ZWQgc3R5bGUgY2h1bmtzLCBwcm92aWRlZCBhcyBib3RoIFNDU1MgbWl4aW5zIGFuZCBIVE1MIGNsYXNzZXMuXG4gICovXG4ud3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbm5lci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLm1hci10b3Age1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci10b3Age1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItdG9wIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItdG9wIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG59XG5cbi5tYXItYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4ubWFyLXZlcnRpY2FsIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci12ZXJ0aWNhbCB7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItdmVydGljYWwge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLXZlcnRpY2FsIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItdmVydGljYWwge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLXZlcnRpY2FsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci12ZXJ0aWNhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItdmVydGljYWwge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci12ZXJ0aWNhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4ubWFyLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzVweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogNjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICB9XG59XG5cbi5tYXItbGVmdCB7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDM1cHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxufVxuXG4ubWFyLWhvcml6b250YWwge1xuICBtYXJnaW4tbGVmdDogMzBweDtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDM1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA3MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgIG1hcmdpbi1yaWdodDogNjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEyMHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE2MHB4KTtcbiAgfVxufVxuXG4ubWFyLXJpZ2h0LW5lZ2F0aXZlIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItcmlnaHQtbmVnYXRpdmUge1xuICAgIG1hcmdpbi1yaWdodDogLTM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLXJpZ2h0LW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC00MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1yaWdodC1uZWdhdGl2ZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLXJpZ2h0LW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC04MHB4O1xuICB9XG59XG5cbi5tYXItbGVmdC1uZWdhdGl2ZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItbGVmdC1uZWdhdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1sZWZ0LW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWxlZnQtbmVnYXRpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLWxlZnQtbmVnYXRpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtODBweDtcbiAgfVxufVxuXG4ubWFyLWhvcml6b250YWwtbmVnYXRpdmUge1xuICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gIG1hcmdpbi1yaWdodDogLTMwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHgpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbC1uZWdhdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zNXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTM1cHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDcwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1ob3Jpem9udGFsLW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNDBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgODBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWhvcml6b250YWwtbmVnYXRpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtNjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC02MHB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxMjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1ob3Jpem9udGFsLW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTgwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtODBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMTYwcHgpO1xuICB9XG59XG5cbi5wYWQtdG9wIHtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZC10b3Age1xuICAgIHBhZGRpbmctdG9wOiA0NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC10b3Age1xuICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC10b3Age1xuICAgIHBhZGRpbmctdG9wOiA2NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgfVxufVxuXG4ucGFkLWJvdHRvbSB7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWQtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbn1cblxuLnBhZC1sZWZ0IHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4ucGFkLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuXG4ucGFkLXZlcnRpY2FsIHtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtdmVydGljYWwge1xuICAgIHBhZGRpbmctdG9wOiA0NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy10b3A6IDU1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLXRvcDogNjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtdmVydGljYWwge1xuICAgIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDU1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4ucGFkLWhvcml6b250YWwge1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLWhvcml6b250YWwge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLWhvcml6b250YWwge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4uYnV0dG9uIHtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ZDUwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4uYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNDQzYSAhaW1wb3J0YW50O1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG59XG5cbi5uby1zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaDEge1xuICBmb250LXNpemU6IDNyZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmgxIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cbn1cblxuLmgyIHtcbiAgZm9udC1zaXplOiAyLjRyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaDIge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuXG4uaDMge1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS44cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oMyB7XG4gICAgZm9udC1zaXplOiAyLjFyZW07XG4gIH1cbn1cblxuLmg0IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuN3JlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaDQge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuXG4uaDUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjlyZW07XG4gIH1cbn1cblxuLmg2IHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaDYge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG59XG5cbi8qKlxuICAqIEhUTUwgRUxFTUVOVCBTVFlMRVNcbiAgKlxuICAqIFN0eWxlIGRlZmluaXRpb25zIGZvciBnbG9iYWwgZWxlbWVudCBzZWxlY3RvcnMuXG4gICovXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbiAgZm9udC1zaXplOiA2Mi41JTtcbn1cblxuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmciBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlMmRjO1xuICBmb250LWZhbWlseTogXCJMYXRvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBjb2xvcjogIzAwNWQ1MDtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi10b3A6IDNyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1mYW1pbHk6IFwiTWVycml3ZWF0aGVyXCIsIHNlcmlmO1xuICBjb2xvcjogIzAwNWQ1MDtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDNyZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkxhdG9cIiwgc2Fucy1zZXJpZjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAyLjRyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMiB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG5cbmgzIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuOHJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMyB7XG4gICAgZm9udC1zaXplOiAyLjFyZW07XG4gIH1cbn1cblxuaDQge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS43cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cblxuaDUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS42cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGg1IHtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgfVxufVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG59XG5cbnAge1xuICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogIzAwNWQ1MDtcbn1cbnVsLCBvbCB7XG4gIG1hcmdpbjogMS41cmVtIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cblxuaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBCZWdpbiBidXR0b24gc3R5bGVzICovXG5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKiBFbmQgYnV0dG9uIHN0eWxlcyAqL1xuYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgIzAwMDAwMDtcbiAgbWFyZ2luOiAxLjVlbSAxMHB4O1xuICBwYWRkaW5nOiAwLjVlbSAzMHB4O1xuICBxdW90ZXM6IFwi4oCcXCI7XG59XG5ibG9ja3F1b3RlOmJlZm9yZSB7XG4gIGNvbG9yOiAjY2NjO1xuICBjb250ZW50OiBvcGVuLXF1b3RlO1xuICBmb250LXNpemU6IDRlbTtcbiAgbGluZS1oZWlnaHQ6IDAuMWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjRlbTtcbn1cbmJsb2NrcXVvdGUgcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuYmxvY2txdW90ZSBwOmZpcnN0LW9mLXR5cGUsIGJsb2NrcXVvdGUgcDpudGgtb2YtdHlwZSgyKSB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuXG4vKipcbiAgKiBIRUFERVIgU1RZTEVTXG4gICovXG4uaGVhZGVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBncmlkLXJvdy1zdGFydDogMTtcbiAgZ3JpZC1yb3ctZW5kOiAyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogOTk5OTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcywgYm9yZGVyIDIwMG1zLCBib3gtc2hhZG93IDIwMG1zO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ZDUwO1xufVxuLmhlYWRlci1vdmVybGF5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDVkNTA7XG4gIG9wYWNpdHk6IDAuNztcbn1cbi5oZWFkZXItb3ZlcmxheS5iZy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNWQ1MDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnRvcC1iYXItYmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcbn1cbi50b3AtYmFyLWJnLmJnLXZpc2libGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ZDUwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtYmFyLWJnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uaGVhZGVyIHtcbiAgaGVpZ2h0OiA5MHB4O1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiA5MHB4IGF1dG87XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG59XG4uaGVhZGVyLmJnLXZpc2libGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ZDUwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIGhlaWdodDogMTY1cHg7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxMjBweCA3MHB4O1xuICB9XG59XG5cbi5oZWFkZXItYnJhbmQge1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGhlaWdodDogOTBweDtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMS9zcGFuIDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1icmFuZCB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1icmFuZCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLWJyYW5kIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIHtcbiAgICBoZWlnaHQ6IDE2NXB4O1xuICAgIHBhZGRpbmctdG9wOiAzMy43NXB4O1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEge1xuICBoZWlnaHQ6IDkwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIHtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gICAgaGVpZ2h0OiA5Ny41cHg7XG4gIH1cbn1cbi5oZWFkZXItYnJhbmQgYSAubG9nby1pbWFnZSB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDM1cHg7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28taW1hZ2Uge1xuICAgIGhlaWdodDogOTcuNXB4O1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI2U0ZTJkYztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSBzcGFuLnJlZ2lzdGVyZWQge1xuICBmb250LXNpemU6IDAuN3JlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICB9XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUgc3Bhbi5yZWdpc3RlcmVkIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgbWFyZ2luOiAxMHB4IGF1dG8gMCBhdXRvO1xuICBsaW5lLWhlaWdodDogMC44O1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZTRlMmRjO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbn1cblxuLmhlYWRlci1uYXYge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBtaW4taGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOTBweDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5oZWFkZXItbmF2LmJnLXZpc2libGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ZDUwO1xufVxuLmhlYWRlci1uYXYudmlzaWJsZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3BhY2l0eTogMTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDE2NXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhlYWRlci1uYXYudmlzaWJsZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5oZWFkZXItbmF2LW1haW4ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IDY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgICB3aWR0aDogNTAlO1xuICAgIGhlaWdodDogNDVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNsYXRlOiAwIC0yMi41cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNDVweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci10b3A6IHVuc2V0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDVkNTA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBtaW4taGVpZ2h0OiA0NXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgIHRyYW5zaXRpb246IGRpc3BsYXkgMzAwbXM7XG4gIH1cbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaTpob3ZlciA+IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgYSB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXgtZ3JvdzogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpIGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlMmRjO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjBweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIGE6OmFmdGVyIHtcbiAgICBib3R0b206IDlweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgYSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgLm5hdi1jaGV2cm9uIHtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICNlNGUyZGM7XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpIC5uYXYtY2hldnJvbjpob3ZlciB7XG4gIGNvbG9yOiAjYjhiMmEyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgLm5hdi1jaGV2cm9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgdWwge1xuICAgIG1pbi13aWR0aDogMzIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDVweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDVkNTA7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgdWwgbGkge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNDVweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIGxpIHtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTAyLCAxMDIsIDEwMiwgMC4yKTtcbiAgfVxuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIGxpOmhvdmVyID4gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgdWwgbGkgYSB7XG4gIHBhZGRpbmctbGVmdDogM2VtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCBsaSBhIHtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgdWwgbGkgdWwgbGkgYSB7XG4gIHBhZGRpbmctbGVmdDogNC41ZW07XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIGxpIHVsIGxpIHVsIGxpIGEge1xuICBwYWRkaW5nLWxlZnQ6IDZlbTtcbn1cblxuLypcbi5oZWFkZXItbmF2LXRvcCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHotaW5kZXg6IDY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA2O1xuICB9XG5cbiAgdWwgeyAvLyB0b3AgbmF2XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGNvbHVtbi1nYXA6IDMwcHg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgLy8gUGFkZGluZyBhZ2FpbnN0IGhlYWRlciBidXR0b25zIChzZWFyY2ggZ2xhc3MpXG4gICAgICAvL2ZsZXgtZmxvdzogcm93O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgbGkgeyAvLyB0b3AgbmF2XG4gICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgICB9XG5cbiAgICAgIGEgeyAvLyB0b3AgbmF2XG4gICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogZGFya2VuKCRicmFuZENvbG9yQ29udHJhc3QsIDIwJSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4qL1xuLypcbmxpLnNsaWRlLWxpbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDI7XG4gIGJvdHRvbTogLTFweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogNXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4IDNweCAwIDA7XG4gIHRyYW5zaXRpb246IHdpZHRoIDMwMG1zLCBsZWZ0IDMwMG1zLCBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zO1xuXG4gICY6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJi5ob3Zlci1zdGF0ZSB7XG4gICAgLy9ib3gtc2hhZG93OiAwIDAgNXB4IDBweCAkYmxhY2s7XG4gIH1cbn1cbiovXG4uaGVhZGVyLWJ1dHRvbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiA5MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDY7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1idXR0b25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1idXR0b25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1idXR0b25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uZ2xhc3Mge1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdG9wOiBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5nbGFzcyB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGJvcmRlcjogdW5zZXQ7XG4gIH1cbn1cbi5nbGFzcyBpIHtcbiAgY29sb3I6ICNlNGUyZGM7XG59XG4uZ2xhc3MgaTpob3ZlciB7XG4gIGNvbG9yOiAjYjhiMmEyO1xufVxuLmJ1cmdlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAzNDBweCkge1xuICAuYnVyZ2VyIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5idXJnZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5idXJnZXIgaSB7XG4gIGNvbG9yOiAjZTRlMmRjO1xufVxuLmJ1cmdlciBpOmhvdmVyIHtcbiAgY29sb3I6ICNiOGIyYTI7XG59XG5cbi5oZWFkZXItc2VhcmNoLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA5MHB4O1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1ZDUwO1xuICB6LWluZGV4OiA2O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItc2VhcmNoLXdyYXAge1xuICAgIHRvcDogNDVweDtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gIH1cbn1cbi5oZWFkZXItc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5cbi8qKlxuICAqIFNJVEUgU0VBUkNIIEZPUk0gU1RZTEVTXG4gICovXG4uc2l0ZS1zZWFyY2gge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDQwcHggMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNTBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xufVxuXG4uc2VhcmNoLXF1ZXJ5IHtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nOiAwO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiAxO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG4uc2VhcmNoLXF1ZXJ5IGxhYmVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMHB4O1xuICBjb2xvcjogI2U0ZTJkYztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2VhcmNoLXF1ZXJ5IGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlNGUyZGM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgY29sb3I6ICNlNGUyZGM7XG59XG5cbi5zZWFyY2gtc3VibWl0IHtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgZ3JpZC1jb2x1bW46IDIvc3BhbiAxO1xuICBncmlkLXJvdzogMTtcbiAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gIGNvbG9yOiAjMDA1ZDUwO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTJkYztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcbn1cbi5zZWFyY2gtc3VibWl0OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I4YjJhMjtcbn1cblxuLyoqXG4gICogTUFJTiBQQUdFIENPTlRFTlQgU1RZTEVTXG4gICovXG4ubWFpbi13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZ3JpZC1yb3ctc3RhcnQ6IDI7XG4gIGdyaWQtcm93LWVuZDogMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTJkYztcbn1cblxuLm1haW4ge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYWdlLWhlYWRlci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMCA1cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhZ2UtaGVhZGVyLW92ZXJsYXkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNWQ1MDtcbiAgb3BhY2l0eTogMC41O1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG92ZXJsYXk7XG59XG4ucGFnZS1oZWFkZXItb3ZlcmxheS5iZy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNWQ1MDtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IDQ1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDU1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA2NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5cbi5wYWdlLWhlYWRlci10aXRsZSBoMSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1zaGFkb3c6IDAgMCAxNXB4ICMwMDVkNTA7XG59XG5cbi5wYWdlLWhlYWRlci10ZXh0IHAge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAwIDEwcHggIzAwNWQ1MDtcbn1cblxuLnBhZ2UtbWFpbi13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnBhZ2UtbWFpbiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICB9XG59XG5cbi5wYWdlLW1haW4uc2lkZSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbi5zaWRlIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAzMjBweDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMHB4O1xuICB9XG59XG5cbi5wYWdlLWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gIH1cbn1cblxuLnBhZ2Utc2VjdGlvbi13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnBhZ2Utc2VjdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA0NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDU1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4uc2lkZSAucGFnZS1jb250ZW50IHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2lkZSAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgfVxufVxuXG4ucGFnZS1zaWRlYmFyIHtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHdpZHRoOiAxMDAlO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiAxO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgcGFkZGluZy1ib3R0b206IDU1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIGdyaWQtY29sdW1uOiAyL3NwYW4gMTtcbiAgICBncmlkLXJvdzogMTtcbiAgfVxufVxuXG4vKipcbiAgKiBGT09URVIgU1RZTEVTXG4gICovXG4uZm9vdGVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBncmlkLXJvdy1zdGFydDogMztcbiAgZ3JpZC1yb3ctZW5kOiA0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUyNDI1O1xufVxuXG4uZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICNlNGUyZGM7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTAlIDUwJTtcbiAgZ3JpZC1yb3dzOiBhdXRvIGF1dG8gYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNDVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiA1NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDY1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDY1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cblxuLmZvb3Rlci1uYXYge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMjtcbiAgZ3JpZC1yb3c6IDI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgICB3aWR0aDogYXV0bztcbiAgICBncmlkLWNvbHVtbjogMi9zcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDEvc3BhbiAxO1xuICAgIGp1c3RpZnktY29udGVudDogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG4uZm9vdGVyLW5hdiB1bCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuLmZvb3Rlci1uYXYgdWwgbGkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qJjphZnRlciB7XG4gICAgY29udGVudDogXCJ8XCI7XG4gICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogLTJweDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuICB9Ki9cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuZm9vdGVyLW5hdiB1bCBsaTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLmZvb3Rlci1uYXYgdWwgbGkgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjZTRlMmRjO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSBhIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5mb290ZXItYnJhbmQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAyO1xuICBncmlkLXJvdzogMS9zcGFuIDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLWJyYW5kIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxL3NwYW4gMjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3Rlci1icmFuZCB7XG4gICAgcGFkZGluZy1yaWdodDogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1icmFuZCB7XG4gICAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3Rlci1icmFuZCB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXItYnJhbmQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbi5mb290ZXItYnJhbmQgYSB7XG4gIHdpZHRoOiAyNjBweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZm9vdGVyLWJyYW5kIGEgLmZvb3Rlci1icmFuZC1sb2dvLWltYWdlIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAtMTJweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmZvb3Rlci1icmFuZCBhIC5mb290ZXItYnJhbmQtbG9nby10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDFyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1icmFuZCBhIC5mb290ZXItYnJhbmQtbG9nby10ZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cbn1cbi5mb290ZXItYnJhbmQgYSAuZm9vdGVyLWJyYW5kLWxvZ28tdGV4dCAuZm9vdGVyLWJyYW5kLWxvZ28tdGV4dC10aXRsZSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC1zaXplOiAxLjRyZW07XG59XG4uZm9vdGVyLWJyYW5kIGEgLmZvb3Rlci1icmFuZC1sb2dvLXRleHQgLmZvb3Rlci1icmFuZC1sb2dvLXRleHQtdGl0bGUgc3Bhbi5yZWdpc3RlcmVkIHtcbiAgZm9udC1zaXplOiAwLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyLWJyYW5kIGEgLmZvb3Rlci1icmFuZC1sb2dvLXRleHQgLmZvb3Rlci1icmFuZC1sb2dvLXRleHQtdGl0bGUgc3Bhbi5yZWdpc3RlcmVkIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuLmZvb3Rlci1icmFuZCBhIC5mb290ZXItYnJhbmQtbG9nby10ZXh0IC5mb290ZXItYnJhbmQtbG9nby10ZXh0LXRhZ2xpbmUge1xuICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAwLjg7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4uY29weXJpZ2h0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDI7XG4gIGdyaWQtcm93OiAzO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGp1c3RpZnktY29udGVudDogbGVmdDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgIGdyaWQtcm93OiAyO1xuICAgIGdyaWQtY29sdW1uOiAyL3NwYW4gMTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHJpZ2h0O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi8qKlxuICAqIE1JU0NFTExBTkVPVVMgU1RZTEVTXG4gICovXG4uZW1iZWQtY29udGFpbmVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG59XG5cbi5lbWJlZC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZW1iZWQtY29udGFpbmVyIGlmcmFtZSxcbi5lbWJlZC1jb250YWluZXIgb2JqZWN0LFxuLmVtYmVkLWNvbnRhaW5lciBlbWJlZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ubWF4LXdpZHRoLTI4MHB4IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMjgwcHg7XG59XG5cbi5mbG9hdC1yaWdodCxcbi5hbGlnbnJpZ2h0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAyMHB4O1xuICBmbG9hdDogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZmxvYXQtcmlnaHQsXG4gIC5hbGlnbnJpZ2h0IHtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAyMHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4udGVhbS1tZW1iZXIge1xuICBtYXJnaW46IDUwcHggMCAwIDA7XG4gIHBhZGRpbmc6IDYwcHggMCAwIDA7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCByZ2JhKDAsIDkzLCA4MCwgMC4xKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvO1xufVxuLnRlYW0tbWVtYmVyOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItdG9wOiB1bnNldDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGVhbS1tZW1iZXIge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzAwcHggMWZyO1xuICB9XG59XG5cbi50ZWFtLW1lbWJlci1uYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDI7XG4gIGdyaWQtcm93OiAyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFtLW1lbWJlci1uYW1lIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZ3JpZC1jb2x1bW46IDIvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICB9XG59XG4udGVhbS1tZW1iZXItbmFtZSBoMiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRlYW0tbWVtYmVyLW5hbWUgaDIge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbiAgfVxufVxuXG4udGVhbS1tZW1iZXItY29udGVudCB7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDI7XG4gIGdyaWQtcm93OiAzO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFtLW1lbWJlci1jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAyMHB4IDAgNTBweDtcbiAgICBncmlkLWNvbHVtbjogMi9zcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDI7XG4gIH1cbn1cblxuLnRlYW0tbWVtYmVyLWltYWdlIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDI7XG4gIGdyaWQtcm93OiAxO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50ZWFtLW1lbWJlci1pbWFnZSB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxL3NwYW4gMztcbiAgfVxufVxuLnRlYW0tbWVtYmVyLWltYWdlIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlciAxMCU7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59IiwiLyoqXG4gICogUEFHRS1TUEVDSUZJQyBTVFlMRVNIRUVUOiBUZWFtXG4gICpcbiAgKiBJbXBvcnQgY29tbW9uIHN0eWxlcyBhbmQgaG91c2UgcGFnZS1zcGVjaWZpYyBzdHlsZXMgZm9yIFRlYW0gcGFnZS5cbiAgKi9cblxuQGltcG9ydCAnX2NvbW1vbic7IC8vIENvbW1vbiBzdHlsZXNcblxuLnRlYW0tbWVtYmVycyB7XG5cbn1cbiAgLnRlYW0tbWVtYmVyIHtcbiAgICBtYXJnaW46IDUwcHggMCAwIDA7XG4gICAgcGFkZGluZzogNjBweCAwIDAgMDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgdHJhbnNwYXJlbnRpemUoJGJyYW5kQ29sb3JQcmltYXJ5LCAwLjkpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIGF1dG87XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIC8vbWFyZ2luOiAzMHB4IDAgMCAwO1xuICAgICAgLy9wYWRkaW5nOiAzMHB4IDAgMCAwO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMDBweCAxZnI7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAvL21hcmdpbjogMDtcbiAgICAgICAgLy9wYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAgIC50ZWFtLW1lbWJlci1uYW1lIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICBncmlkLXJvdzogMjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgfVxuXG4gICAgICBoMiB7XG4gICAgICAgIC8vbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAvL2ZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGVhbS1tZW1iZXItY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICBncmlkLXJvdzogMztcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgNTBweDtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50ZWFtLW1lbWJlci1pbWFnZSB7XG4gICAgICB3aWR0aDogMzAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgICAgZ3JpZC1yb3c6IDE7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAvL21heC13aWR0aDogMzAwcHg7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICBncmlkLXJvdzogMSAvIHNwYW4gMztcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgLy93aWR0aDogMTAwJTtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgMTAlO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiIsIi8qKlxuICAqIENPTU1PTiBTVFlMRVNcbiAgKlxuICAqIERlZmluZXMgdGhlIHN0eWxlcyB0byBpbXBvcnQgdGhhdCBhcmUgcmVxdWlyZWQgYnkgdmlydHVhbGx5IGFsbCBwYWdlcy5cbiAgKi9cblxuXG4vLyBpbXBvcnQgbGlicmFyaWVzOlxuQGltcG9ydCAnbGlicmFyaWVzL19pbmNsdWRlLW1lZGlhLnNjc3MnOyAvLyBcIkluY2x1ZGUtTWVkaWFcIiBtZWRpYSBxdWVyeSBsaWJyYXJ5IChwcm92aWRlcyBicmVha3BvaW50IGZ1bmN0aW9uYWxpdHkgZm9yIHJlc3BvbnNpdmUgZGVzaWduKVxuQGltcG9ydCAnbGlicmFyaWVzL19ub3JtYWxpemUuc2Nzcyc7ICAgICAvLyBcIk5vcm1hbGl6ZVwiIGNzcyByZXNldCBsaWJyYXJ5XG5cbi8vIGdsb2JhbCBzdHlsZXMgYW5kIGRlcGVuZGVuY2llczpcbkBpbXBvcnQgJ3BhcnRpYWxzL19icmVha3BvaW50cy5tb2R1bGVzJzsgIC8vIGJyZWFrcG9pbnQgZGVmaW5pdGlvbnMgZm9yIG1lZGlhIHF1ZXJ5IHVzZVxuQGltcG9ydCAncGFydGlhbHMvX3ZhcmlhYmxlcyc7ICAgICAgICAgICAgLy8gZ2VuZXJhbCB2YXJpYWJsZSBkZWZpbml0aW9ucyAoY29sb3JzLCBkaW1lbnNpb25zLCBldGMuKVxuQGltcG9ydCAncGFydGlhbHMvX2ZvbnRzJzsgICAgICAgICAgICAgICAgLy8gQGZvbnQtZmFjZSBkZWZpbml0aW9uc1xuQGltcG9ydCAncGFydGlhbHMvX21peGlucyc7ICAgICAgICAgICAgICAgLy8gbWl4aW4gYW5kIGFzc29jaWF0ZWQgY2xhc3MgZGVmaW5pdGlvbnNcbkBpbXBvcnQgJ3BhcnRpYWxzL19lbGVtZW50cyc7ICAgICAgICAgICAgIC8vIGdsb2JhbCBlbGVtZW50IHNlbGVjdG9yIHN0eWxlc1xuQGltcG9ydCAncGFydGlhbHMvX2hlYWRlcic7ICAgICAgICAgICAgICAgLy8gaGVhZGVyIHN0eWxlc1xuQGltcG9ydCAncGFydGlhbHMvX3NlYXJjaGZvcm0nOyAgICAgICAgICAgLy8gc2VhcmNoIGZvcm0gc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9fbWFpbic7ICAgICAgICAgICAgICAgICAvLyBtYWluIHBhZ2UgY29udGVudCBzdHlsZXNcbkBpbXBvcnQgJ3BhcnRpYWxzL19mb290ZXInOyAgICAgICAgICAgICAgIC8vIGZvb3RlciBzdHlsZXNcbkBpbXBvcnQgJ3BhcnRpYWxzL19taXNjJzsgICAgICAgICAgICAgICAgIC8vIG1pc2MuIHN0eWxlcyAodHlwaWNhbGx5IGNsYXNzZXMgdGhhdCBhcmUgdXNhYmxlIGluIGNvbnRlbnQsIGJ1dCBub3QgaW5oZXJlbnQgdG8gdGhlIHNpdGUgc3RydWN0dXJlKVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qKlxuICAqIFNDU1MgQlJFQUtQT0lOVFNcbiAgKlxuICAqIERlZmluZSBicmVha3BvaW50cyBmb3IgbWVkaWEgcXVlcnkgdXNlIGFuZCBleHBvcnQgdGhlbSBmb3IgdXNlIHdpdGggSlMuXG4gICovXG5cblxuLy8gRGVmaW5lIGJyZWFrcG9pbnRzIGhlcmUgKGluIHBpeGVscyk6XG4kYnJlYWtwb2ludC1waG9uZS1zbWFsbDogICAgMzIwO1xuJGJyZWFrcG9pbnQtcGhvbmUtbGFyZ2U6ICAgIDQ4MDtcbiRicmVha3BvaW50LXRhYmxldDogICAgICAgICA3Njg7XG4kYnJlYWtwb2ludC1sYXB0b3A6ICAgICAgICAgOTkyO1xuJGJyZWFrcG9pbnQtZGVza3RvcDogICAgICAgMTIwMDtcbiRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U6IDE0MDA7XG4kYnJlYWtwb2ludC1oZDogICAgICAgICAgICAxOTIwO1xuXG4vLyBGb3JtYXQgYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgdXNlIHdpdGggaW5jbHVkZS1tZWRpYS5zY3NzIGxpYnJhcnk6XG4kYnJlYWtwb2ludHM6IChcbiAgJ3Bob25lLXNtYWxsJzogICAkYnJlYWtwb2ludC1waG9uZS1zbWFsbCAqIDFweCxcbiAgJ3Bob25lLWxhcmdlJzogICAkYnJlYWtwb2ludC1waG9uZS1sYXJnZSAqIDFweCxcbiAgJ3RhYmxldCc6ICAgICAgICAkYnJlYWtwb2ludC10YWJsZXQgKiAxcHgsXG4gICdsYXB0b3AnOiAgICAgICAgJGJyZWFrcG9pbnQtbGFwdG9wICogMXB4LFxuICAnZGVza3RvcCc6ICAgICAgICRicmVha3BvaW50LWRlc2t0b3AgKiAxcHgsXG4gICdkZXNrdG9wLWxhcmdlJzogJGJyZWFrcG9pbnQtZGVza3RvcC1sYXJnZSAqIDFweCxcbiAgJ2hkJzogICAgICAgICAgICAkYnJlYWtwb2ludC1oZCAqIDFweFxuKTtcblxuLy8gRXhwb3J0IGJyZWFrcG9pbnQgZGVmaW5pdGlvbnMgZm9yIEpTIHVzZTpcbjpleHBvcnQge1xuICBicmVha3BvaW50UGhvbmVTbWFsbDogJGJyZWFrcG9pbnQtcGhvbmUtc21hbGw7XG4gIGJyZWFrcG9pbnRQaG9uZUxhcmdlOiAkYnJlYWtwb2ludC1waG9uZS1sYXJnZTtcbiAgYnJlYWtwb2ludFRhYmxldDogJGJyZWFrcG9pbnQtdGFibGV0O1xuICBicmVha3BvaW50TGFwdG9wOiAkYnJlYWtwb2ludC1sYXB0b3A7XG4gIGJyZWFrcG9pbnREZXNrdG9wOiAkYnJlYWtwb2ludC1kZXNrdG9wO1xuICBicmVha3BvaW50RGVza3RvcExhcmdlOiAkYnJlYWtwb2ludC1kZXNrdG9wLWxhcmdlO1xuICBicmVha3BvaW50SGQ6ICRicmVha3BvaW50LWhkO1xufVxuIiwiLyoqXG4gICogU0NTUyBWQVJJQUJMRVNcbiAgKi9cblxuXG4vKipcbiAgKiBEaW1lbnNpb25zOlxuICAqL1xuXG4kc2l0ZVdpZHRoOiAxMjAwcHg7IC8vIE1heCB3aWR0aCBvZiBzaXRlJ3MgY29udGVudCBjb250YWluZXJzXG5cbi8vIEhlYWRlciBoZWlnaHRzOlxuJGhlYWRlckhlaWdodE1vYmlsZTogOTBweDsgLy8gSGVpZ2h0IG9mIGhlYWRlciBvbiBtb2JpbGUgc2l6ZXNcbiRoZWFkZXJIZWlnaHREZXNrdG9wOiAxMjBweDsgLy8gSGVpZ2h0IG9mIGhlYWRlciBvbiBkZXNrdG9wIHNpemVzXG4kdG9wQmFySGVpZ2h0OiA0NXB4OyAvLzQ1cHg7IC8vIEhlaWdodCBvZiB0b3AgbmF2LCBtYWluIG5hdiBzdWIgbWVudSBpdGVtcyBhbmQgbWFpbiBuYXYgbW9iaWxlIG1lbnUgaXRlbXNcbiRtYWluTmF2SGVpZ2h0OiA0NXB4OyAvLzQ1cHg7IC8vIEhlaWdodCBvZiBmaXJzdC1sZXZlbCBtYWluIG1lbnUgaXRlbXMgKGRlc2t0b3ApXG5cbi8vIFN0YW5kYXJkaXplZCBzaWRlIHBhZGRpbmc6XG4kY29udGFpbmVyUGFkZGluZ01vYmlsZTogMzBweDtcbiRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTogMzVweDtcbiRjb250YWluZXJQYWRkaW5nVGFibGV0OiA0MHB4O1xuJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A6IDYwcHg7XG4kY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A6IDgwcHg7XG5cbi8vIFN0YW5kYXJkaXplZCB0b3AgYW5kIGJvdHRvbSBwYWRkaW5nOlxuJHNwYWNlclBhZGRpbmdNb2JpbGU6IDQwcHg7IC8vMjBweDtcbiRzcGFjZXJQYWRkaW5nUGhvbmVMYXJnZTogNDVweDsgLy8yNXB4O1xuJHNwYWNlclBhZGRpbmdUYWJsZXQ6IDU1cHg7IC8vNDBweDtcbiRzcGFjZXJQYWRkaW5nTGFwdG9wOiA2NXB4OyAvLzUwcHg7XG4kc3BhY2VyUGFkZGluZ0Rlc2t0b3A6IDgwcHg7XG5cblxuLyoqXG4gICogQ29sb3JzOlxuICAqL1xuXG4vLyBIdWUgZGVmaW5pdGlvbnM6XG4kZ3JlZW46ICAjMDA1ZDUwOyAvLyBOZXd0b24gU3QuIGRhcmsgZ3JlZW5cbiRjcmVhbTogICNlNGUyZGM7IC8vIE5ld3RvbiBTdC4gaXZvcnlcbiRvcmFuZ2U6ICNmNDgxMjA7IC8vIE5ld3RvbiBTdC4gb3JhbmdlXG4kbGlnaHRHcmVlbjogIzg4YzY2NTsgLy8gTmV3dG9uIFN0LiBsaWdodCBncmVlblxuJGJsdWU6ICMyN2JlZDA7IC8vIE5ld3RvbiBTdC4gYmx1ZVxuXG4vLyBHcmF5c2NhbGUgZGVmaW5pdGlvbnM6XG4kd2hpdGU6ICAjZmZmZmZmO1xuJGdyYXk6ICAgIzg4ODg4ODtcbiRibGFjazogICMwMDAwMDA7XG4kb2ZmV2hpdGU6ICNmZWZlZmU7XG4kbGlnaHRlc3RHcmF5OiAjZjlmOWY5O1xuJGxpZ2h0ZXJHcmF5OiAjZjJmMmYyO1xuJGxpZ2h0R3JheTogI2UyZTJlMjtcbiRtZWRpdW1HcmF5OiAjZTBlMGUwO1xuJGRhcmtHcmF5OiAjOTk5O1xuJGRhcmtlckdyYXk6ICM2NjY7XG4kZGFya2VzdEdyYXk6ICMyNTI0MjU7IC8vIE5ld3RvbiBTdC4gZGFyayBncmF5XG5cbiRicmFuZENvbG9yUHJpbWFyeTogJGdyZWVuOyAvLyBQcmltYXJ5IGNvbG9yIG9mIGJyYW5kXG4kYnJhbmRDb2xvckNvbnRyYXN0OiAkY3JlYW07IC8vIENvbG9yIHRoYXQgY29udHJhc3RzIHdlbGwgd2l0aCBicmFuZCBjb2xvciAob2Z0ZW4gdXNlZCBmb3IgdGV4dCBvbiB0b3Agb2YgYnJhbmQgY29sb3IpXG5cbi8vIEdsb2JhbCBhc3NpZ25tZW50czpcbiRib2R5Q29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7IC8vIEJvZHkgYmFja2dyb3VuZCBjb2xvclxuJGNvbnRlbnRDb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDsgLy8gUGFnZSBjb250ZW50IGJhY2tncm91bmQgY29sb3JcbiRmb250Q29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTsgLy8gRGVmYXVsdCBmb250IGNvbG9yXG4kbGlua0NvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7IC8vIERlZmF1bHQgbGluayBjb2xvclxuJGJ1dHRvbkNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7IC8vIERlZmF1bHQgYnV0dG9uIGNvbG9yXG4iLCIvKipcbiAgKiBGT05UIFNUWUxFU1xuICAqXG4gICogRGVmaW5lIEBmb250LWZhY2Ugc3R5bGVzLlxuICAqL1xuXG5cbi8vIExhdG8tVGhpbi50dGY6XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IExhdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL0xhdG8tVGhpbi50dGYpO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vLyBMYXRvLVRoaW5JdGFsaWMudHRmOlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBMYXRvO1xuICBzcmM6IHVybCguLi9mb250cy9MYXRvLVRoaW5JdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLy8gTGF0by1MaWdodC50dGY6XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IExhdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL0xhdG8tTGlnaHQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLy8gTGF0by1MaWdodEl0YWxpYy50dGY6XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IExhdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL0xhdG8tTGlnaHRJdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLy8gTGF0by1SZWd1bGFyLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTGF0bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTGF0by1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi8vIExhdG8tSXRhbGljLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTGF0bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTGF0by1JdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLy8gTGF0by1Cb2xkLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTGF0bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTGF0by1Cb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi8vIExhdG8tQm9sZEl0YWxpYy50dGY6XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IExhdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL0xhdG8tQm9sZEl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4vLyBMYXRvLUJsYWNrLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTGF0bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTGF0by1CbGFjay50dGYpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vLyBMYXRvLUJsYWNrSXRhbGljLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTGF0bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTGF0by1CbGFja0l0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIE1lcnJpd2VhdGhlci1MaWdodC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWVycml3ZWF0aGVyO1xuICBzcmM6IHVybCguLi9mb250cy9NZXJyaXdlYXRoZXItTGlnaHQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLy8gTWVycml3ZWF0aGVyLUxpZ2h0SXRhbGljLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNZXJyaXdlYXRoZXI7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01lcnJpd2VhdGhlci1MaWdodEl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4vLyBNZXJyaXdlYXRoZXItUmVndWxhci50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWVycml3ZWF0aGVyO1xuICBzcmM6IHVybCguLi9mb250cy9NZXJyaXdlYXRoZXItUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vLyBNZXJyaXdlYXRoZXItSXRhbGljLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNZXJyaXdlYXRoZXI7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01lcnJpd2VhdGhlci1JdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLy8gTWVycml3ZWF0aGVyLUJvbGQudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1lcnJpd2VhdGhlcjtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWVycml3ZWF0aGVyLUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLy8gTWVycml3ZWF0aGVyLUJvbGRJdGFsaWMudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1lcnJpd2VhdGhlcjtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWVycml3ZWF0aGVyLUJvbGRJdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLy8gTWVycml3ZWF0aGVyLUJsYWNrLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNZXJyaXdlYXRoZXI7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01lcnJpd2VhdGhlci1CbGFjay50dGYpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vLyBNZXJyaXdlYXRoZXItQmxhY2tJdGFsaWMudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1lcnJpd2VhdGhlcjtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWVycml3ZWF0aGVyLUJsYWNrSXRhbGljLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbiIsIi8qKlxyXG4gICogU0NTUyBNSVhJTlNcclxuICAqXHJcbiAgKiBTdGFuZGFyZGl6ZWQgc3R5bGUgY2h1bmtzLCBwcm92aWRlZCBhcyBib3RoIFNDU1MgbWl4aW5zIGFuZCBIVE1MIGNsYXNzZXMuXHJcbiAgKi9cclxuXHJcblxyXG5AbWl4aW4gd3JhcCB7IC8vIE1hcmdpbi1sZXNzIHdyYXBwZXJcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuICAud3JhcCB7XHJcbiAgICBAaW5jbHVkZSB3cmFwO1xyXG4gIH1cclxuXHJcbkBtaXhpbiBpbm5lci13cmFwIHsgLy8gV2lkdGgtbGltaXRlZCwgaG9yaXpvbnRhbGx5IGNlbnRlcmluZyB3cmFwcGVyXHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiAkc2l0ZVdpZHRoO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcbiAgLmlubmVyLXdyYXAge1xyXG4gICAgQGluY2x1ZGUgaW5uZXItd3JhcDtcclxuICB9XHJcblxyXG5AbWl4aW4gbWFyLXRvcCB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgdG9wLW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi10b3A6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIG1hcmdpbi10b3A6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIG1hcmdpbi10b3A6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4gIC5tYXItdG9wIHtcclxuICAgIEBpbmNsdWRlIG1hci10b3A7XHJcbiAgfVxyXG5cclxuQG1peGluIG1hci1ib3R0b20geyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIGJvdHRvbS1tYXJnaW5lZCBjb250YWluZXJcclxuICBtYXJnaW4tYm90dG9tOiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICB9XHJcbn1cclxuICAubWFyLWJvdHRvbSB7XHJcbiAgICBAaW5jbHVkZSBtYXItYm90dG9tO1xyXG4gIH1cclxuXHJcbkBtaXhpbiBtYXItdmVydGljYWwgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIHZlcnRpY2FsbHktbWFyZ2luZWQgKGJvdGggdG9wIGFuZCBib3R0b20pIGNvbnRhaW5lclxyXG4gIEBpbmNsdWRlIG1hci10b3A7XHJcbiAgQGluY2x1ZGUgbWFyLWJvdHRvbTtcclxufVxyXG4gIC5tYXItdmVydGljYWwge1xyXG4gICAgQGluY2x1ZGUgbWFyLXZlcnRpY2FsO1xyXG4gIH1cclxuXHJcbkBtaXhpbiBtYXItcmlnaHQgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIHJpZ2h0LW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nRGVza3RvcCk7XHJcbiAgfVxyXG59XHJcbiAgLm1hci1yaWdodCB7XHJcbiAgICBAaW5jbHVkZSBtYXItcmlnaHQ7XHJcbiAgfVxyXG5cclxuQG1peGluIG1hci1sZWZ0IHsgLy8gU3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCBsZWZ0LW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XHJcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2UpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3ApO1xyXG4gIH1cclxufVxyXG4gIC5tYXItbGVmdCB7XHJcbiAgICBAaW5jbHVkZSBtYXItbGVmdDtcclxuICB9XHJcblxyXG5AbWl4aW4gbWFyLWhvcml6b250YWwgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIGhvcml6b250YWxseSBwYWRkZWQgKGJvdGggbGVmdCBhbmQgcmlnaHQpIGNvbnRhaW5lclxyXG4gIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICgyICogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDIgKiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2UpKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDIgKiAkY29udGFpbmVyUGFkZGluZ1RhYmxldCkpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoMiAqICRjb250YWluZXJQYWRkaW5nTGFwdG9wKSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICgyICogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKSk7XHJcbiAgfVxyXG59XHJcbiAgLm1hci1ob3Jpem9udGFsIHtcclxuICAgIEBpbmNsdWRlIG1hci1ob3Jpem9udGFsO1xyXG4gIH1cclxuXHJcbkBtaXhpbiBtYXItcmlnaHQtbmVnYXRpdmUgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIG5lZ2F0aXZlIHJpZ2h0LW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi1yaWdodDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nTW9iaWxlKTtcclxuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XHJcbiAgLy93aWR0aDogY2FsYygxMDAlICsgJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKTtcclxuICAgIC8vd2lkdGg6IGNhbGMoMTAwJSArICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICAgIC8vd2lkdGg6IGNhbGMoMTAwJSArICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gICAgLy93aWR0aDogY2FsYygxMDAlICsgJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICAgIC8vd2lkdGg6IGNhbGMoMTAwJSArICRjb250YWluZXJQYWRkaW5nRGVza3RvcCk7XHJcbiAgfVxyXG59XHJcbiAgLm1hci1yaWdodC1uZWdhdGl2ZSB7XHJcbiAgICBAaW5jbHVkZSBtYXItcmlnaHQtbmVnYXRpdmU7XHJcbiAgfVxyXG5cclxuQG1peGluIG1hci1sZWZ0LW5lZ2F0aXZlIHsgLy8gU3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCBuZWdhdGl2ZSBsZWZ0LW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuICAvL3dpZHRoOiBjYWxjKDEwMCUgKyAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSk7XHJcbiAgICAvL3dpZHRoOiBjYWxjKDEwMCUgKyAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2UpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICAgIC8vd2lkdGg6IGNhbGMoMTAwJSArICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgICAvL3dpZHRoOiBjYWxjKDEwMCUgKyAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nRGVza3RvcCk7XHJcbiAgICAvL3dpZHRoOiBjYWxjKDEwMCUgKyAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3ApO1xyXG4gIH1cclxufVxyXG4gIC5tYXItbGVmdC1uZWdhdGl2ZSB7XHJcbiAgICBAaW5jbHVkZSBtYXItbGVmdC1uZWdhdGl2ZTtcclxuICB9XHJcblxyXG5AbWl4aW4gbWFyLWhvcml6b250YWwtbmVnYXRpdmUgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIG5lZ2F0aXZlIGhvcml6b250YWxseS1tYXJnaW5lZCAoYm90aCBsZWZ0IGFuZCByaWdodCkgY29udGFpbmVyXHJcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuICB3aWR0aDogY2FsYygxMDAlICsgKDIgKiAkY29udGFpbmVyUGFkZGluZ01vYmlsZSkpO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2UpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKTtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAoMiAqICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSkpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAoMiAqICRjb250YWluZXJQYWRkaW5nVGFibGV0KSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICgyICogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nRGVza3RvcCk7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlICsgKDIgKiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3ApKTtcclxuICB9XHJcbn1cclxuICAubWFyLWhvcml6b250YWwtbmVnYXRpdmUge1xyXG4gICAgQGluY2x1ZGUgbWFyLWhvcml6b250YWwtbmVnYXRpdmU7XHJcbiAgfVxyXG5cclxuQG1peGluIHBhZC10b3AgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUgc3BhY2VyIGZvciBlbGVtZW50IHRvcFxyXG4gIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4gIC5wYWQtdG9wIHtcclxuICAgIEBpbmNsdWRlIHBhZC10b3A7XHJcbiAgfVxyXG5cclxuQG1peGluIHBhZC1ib3R0b20geyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUgc3BhY2VyIGZvciBlbGVtZW50IGJvdHRvbVxyXG4gIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4gIC5wYWQtYm90dG9tIHtcclxuICAgIEBpbmNsdWRlIHBhZC1ib3R0b207XHJcbiAgfVxyXG5cclxuQG1peGluIHBhZC1sZWZ0IHsgLy8gU3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCBsZWZ0LXBhZGRlZCBjb250YWluZXJcclxuICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4gIC5wYWQtbGVmdCB7XHJcbiAgICBAaW5jbHVkZSBwYWQtbGVmdDtcclxuICB9XHJcblxyXG5AbWl4aW4gcGFkLXJpZ2h0IHsgLy8gU3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCByaWdodC1wYWRkZWQgY29udGFpbmVyXHJcbiAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4gIC5wYWQtcmlnaHQge1xyXG4gICAgQGluY2x1ZGUgcGFkLXJpZ2h0O1xyXG4gIH1cclxuXHJcbkBtaXhpbiBwYWQtdmVydGljYWwge1xyXG4gIEBpbmNsdWRlIHBhZC10b3A7XHJcbiAgQGluY2x1ZGUgcGFkLWJvdHRvbTtcclxufVxyXG4gIC5wYWQtdmVydGljYWwgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUgdmVydGljYWwgKGJvdGggdG8gYW5kIGJvdHRvbSkgc3BhY2VyIGZvciBlbGVtZW50XHJcbiAgICBAaW5jbHVkZSBwYWQtdmVydGljYWw7XHJcbiAgfVxyXG5cclxuQG1peGluIHBhZC1ob3Jpem9udGFsIHtcclxuICBAaW5jbHVkZSBwYWQtcmlnaHQ7XHJcbiAgQGluY2x1ZGUgcGFkLWxlZnQ7XHJcbn1cclxuICAucGFkLWhvcml6b250YWwgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIGhvcml6b250YWxseSBwYWRkZWQgKGJvdGggbGVmdCBhbmQgcmlnaHQpIGNvbnRhaW5lclxyXG4gICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XHJcbiAgfVxyXG5cclxuQG1peGluIGJ1dHRvbiB7IC8vIFN0YW5kYXJkaXplZCBidXR0b25cclxuICBtYXJnaW46IDFyZW0gMDtcclxuICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRidXR0b25Db2xvcjtcclxuICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAvL2JvcmRlcjogMnB4IHNvbGlkICRicmFuZENvbG9yQ29udHJhc3Q7XHJcblxyXG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5ICFpbXBvcnRhbnQ7XHJcbiAgLy9ib3JkZXItcmFkaXVzOiB1bnNldCAhaW1wb3J0YW50O1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnJhbmRDb2xvclByaW1hcnksIDUlKSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4gIC5idXR0b24ge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gIH1cclxuXHJcbkBtaXhpbiBzY3JlZW4tcmVhZGVyLXRleHQgeyAvLyBWaXNpYmxlIHRvIHNjcmVlbiByZWFkZXJzIG9ubHlcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDFweDtcclxuICBoZWlnaHQ6IDFweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcbiAgLnNjcmVlbi1yZWFkZXItdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBzY3JlZW4tcmVhZGVyLXRleHQ7XHJcbiAgfVxyXG5cclxuQG1peGluIG5vLXNjcm9sbCB7IC8vIFJlbW92ZSBzY3JvbGxhYmlsaXR5IGZvciBlbGVtZW50XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4gIC5uby1zY3JvbGwge1xyXG4gICAgQGluY2x1ZGUgbm8tc2Nyb2xsO1xyXG4gIH1cclxuXHJcbkBtaXhpbiBoMSB7XHJcbiAgZm9udC1zaXplOiAzcmVtOyAvLzIuNHJlbTtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgLy9wYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAvL2JvcmRlci1ib3R0b206IDRweCBzb2xpZCAkYnJhbmRDb2xvclByaW1hcnk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgZm9udC1zaXplOiA0cmVtO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGgyIHtcclxuICBmb250LXNpemU6IDIuNHJlbTsgLy8yLjJyZW07XHJcbiAgbWFyZ2luLWJvdHRvbTogMi4xcmVtO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIGZvbnQtc2l6ZTogM3JlbTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBoMyB7XHJcbiAgZm9udC1zaXplOiAxLjhyZW07XHJcbiAgbWFyZ2luLWJvdHRvbTogMS44cmVtO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGg0IHtcclxuICBmb250LXNpemU6IDEuNnJlbTtcclxuICBtYXJnaW4tYm90dG9tOiAxLjdyZW07XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgZm9udC1zaXplOiAycmVtO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGg1IHtcclxuICBmb250LXNpemU6IDEuNXJlbTtcclxuICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgZm9udC1zaXplOiAxLjlyZW07XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gaDYge1xyXG4gIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBmb250LXNpemU6IDEuOHJlbTtcclxuICB9XHJcbn1cclxuXHJcbi5oMSB7XHJcbiAgQGluY2x1ZGUgaDE7XHJcbn1cclxuXHJcbi5oMiB7XHJcbiAgQGluY2x1ZGUgaDI7XHJcbn1cclxuXHJcbi5oMyB7XHJcbiAgQGluY2x1ZGUgaDM7XHJcbn1cclxuXHJcbi5oNCB7XHJcbiAgQGluY2x1ZGUgaDQ7XHJcbn1cclxuXHJcbi5oNSB7XHJcbiAgQGluY2x1ZGUgaDU7XHJcbn1cclxuXHJcbi5oNiB7XHJcbiAgQGluY2x1ZGUgaDY7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXHJcbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcclxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXHJcbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XHJcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcclxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcclxuLy9cclxuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3NcclxuLy8gICAgICAgICAgICAgICAgICAgICAgICB2MS40LjlcclxuLy9cclxuLy8gICAgICAgIGh0dHBzOi8vZWR1YXJkb2JvdWNhcy5naXRodWIuaW8vaW5jbHVkZS1tZWRpYVxyXG4vL1xyXG4vLyAgICAgICAgIEF1dGhvcnM6IEVkdWFyZG8gQm91Y2FzIChAZWR1YXJkb2JvdWNhcylcclxuLy8gICAgICAgICAgICAgICAgICBLaXR0eSBHaXJhdWRlbCAoQGtpdHR5Z2lyYXVkZWwpXHJcbi8vXHJcbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcclxuLy8vL1xyXG4vLy8gaW5jbHVkZS1tZWRpYSBsaWJyYXJ5IHB1YmxpYyBjb25maWd1cmF0aW9uXHJcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXHJcbi8vLyBAYWNjZXNzIHB1YmxpY1xyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBnbG9iYWwgYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcclxuLy8vICAkYnJlYWtwb2ludHM6ICgncGhvbmUnOiAzMjBweCk7XHJcbi8vL1xyXG4kYnJlYWtwb2ludHM6IChcclxuICAncGhvbmUnOiAzMjBweCxcclxuICAndGFibGV0JzogNzY4cHgsXHJcbiAgJ2Rlc2t0b3AnOiAxMDI0cHhcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLy9cclxuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIHN0YXRpYyBleHByZXNzaW9ucyBvciBtZWRpYSB0eXBlc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcclxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJzogJ3NjcmVlbicpO1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcclxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6IChcclxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xyXG4vLy8gICk7XHJcbi8vL1xyXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcclxuICAnc2NyZWVuJzogJ3NjcmVlbicsXHJcbiAgJ3ByaW50JzogJ3ByaW50JyxcclxuICAnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxyXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcclxuICAncG9ydHJhaXQnOiAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCknLFxyXG4gICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAobWluLXJlc29sdXRpb246IDJkcHB4KScsXHJcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSksIChtaW4tcmVzb2x1dGlvbjogM2RwcHgpJ1xyXG4pICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cclxuLy8vXHJcbiR1bml0LWludGVydmFsczogKFxyXG4gICdweCc6IDEsXHJcbiAgJ2VtJzogMC4wMSxcclxuICAncmVtJzogMC4xLFxyXG4gICcnOiAwXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIERlZmluZXMgd2hldGhlciBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGF2YWlsYWJsZSwgdXNlZnVsIGZvciBjcmVhdGluZyBzZXBhcmF0ZSBzdHlsZXNoZWV0c1xyXG4vLy8gZm9yIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBtZWRpYSBxdWVyaWVzLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBEaXNhYmxlcyBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIC5mb28ge1xyXG4vLy8gICAgY29sb3I6IHRvbWF0bztcclxuLy8vICB9XHJcbi8vL1xyXG4kaW0tbWVkaWEtc3VwcG9ydDogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gU2VsZWN0cyB3aGljaCBicmVha3BvaW50IHRvIGVtdWxhdGUgd2hlbiBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGRpc2FibGVkLiBNZWRpYSBxdWVyaWVzIHRoYXQgc3RhcnQgYXQgb3JcclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAuZm9vIHtcclxuLy8vICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBkb2VzIG5vdCBpbnRlcmNlcHQgdGhlIGRlc2t0b3AgYnJlYWtwb2ludFxyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogTm8gb3V0cHV0ICovXHJcbi8vL1xyXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXHJcbi8vLyBhcmUgbm90IHN1cHBvcnRlZC5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xyXG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnc2NyZWVuJykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gICAuZm9vIHtcclxuLy8vICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3JldGluYTJ4Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBObyBvdXRwdXQgKi9cclxuLy8vXHJcbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XHJcblxyXG4vLy8vXHJcbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcclxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxyXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcclxuLy8vIHRvIGRldGVjdCBzdXBwb3J0LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXHJcbi8vL1xyXG5AZnVuY3Rpb24gaW0tbG9nKCRtZXNzYWdlKSB7XHJcbiAgQGlmIGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpIHtcclxuICAgIEBlcnJvciAkbWVzc2FnZTtcclxuICB9IEBlbHNlIHtcclxuICAgIEB3YXJuICRtZXNzYWdlO1xyXG4gICAgJF86IG5vb3AoKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJG1lc3NhZ2U7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcclxuLy8vIEFQSSB0aGFuIGBAaWYgaW0tbG9nKCcuLicpIHt9YCBvciBgJF86IGltLWxvZygnLi4nKWAuIEJhc2ljYWxseSwgdXNlIHRoZSBmdW5jdGlvblxyXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxyXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQG1peGluIGxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBpbS1sb2coJG1lc3NhZ2UpIHt9XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEZ1bmN0aW9uIHdpdGggbm8gYEByZXR1cm5gIGNhbGxlZCBuZXh0IHRvIGBAd2FybmAgaW4gU2FzcyAzLjNcclxuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXHJcbi8vL1xyXG5AZnVuY3Rpb24gbm9vcCgpIHt9XHJcblxyXG4vLy9cclxuLy8vIERldGVybWluZXMgd2hldGhlciBhIGxpc3Qgb2YgY29uZGl0aW9ucyBpcyBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XHJcbi8vL1xyXG5AZnVuY3Rpb24gaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikge1xyXG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xyXG5cclxuICBAaWYgbm90ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlIHtcclxuICAgIEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxyXG4gIH1cclxuXHJcbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XHJcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xyXG4gICAgICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRjb25kaXRpb24pO1xyXG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcclxuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xyXG5cclxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXHJcbiAgICAgICAgICAoJHByZWZpeCA9PSAnbWluJyBhbmQgJHZhbHVlID4gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIHtcclxuICAgICAgICBAcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gdHJ1ZTtcclxufVxyXG5cclxuLy8vL1xyXG4vLy8gUGFyc2luZyBlbmdpbmVcclxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEFueSBvZiBgPj1gLCBgPmAsIGA8PWAsIGA8YCwgYOKJpWAsIGDiiaRgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcclxuICBAZWFjaCAkb3BlcmF0b3IgaW4gKCc+PScsICc+JywgJzw9JywgJzwnLCAn4omlJywgJ+KJpCcpIHtcclxuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxyXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxyXG4gICRfOiBpbS1sb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XHJcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XHJcbiAgJGRpbWVuc2lvbjogJ3dpZHRoJztcclxuXHJcbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XHJcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XHJcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IHZhbHVlIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gQSBudW1lcmljIHZhbHVlXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xyXG5cclxuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcclxuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkdmFsdWU6IHRvLW51bWJlcigkdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgJGludGVydmFsOiBtYXAtZ2V0KCR1bml0LWludGVydmFscywgdW5pdCgkdmFsdWUpKTtcclxuXHJcbiAgQGlmIG5vdCAkaW50ZXJ2YWwge1xyXG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xyXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcclxuICAgIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcclxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cclxuICAgICRfOiBpbS1sb2coJ1Vua25vd24gdW5pdCBgI3t1bml0KCR2YWx1ZSl9YC4nKTtcclxuICB9XHJcblxyXG4gIEBpZiAkb3BlcmF0b3IgPT0gJz4nIHtcclxuICAgICR2YWx1ZTogJHZhbHVlICsgJGludGVydmFsO1xyXG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHZhbHVlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFZhbGlkIG1lZGlhIHF1ZXJ5XHJcbi8vL1xyXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xyXG4gIC8vIElmIGl0IGlzIHBhcnQgb2YgJG1lZGlhLWV4cHJlc3Npb25zLCBpdCBoYXMgbm8gb3BlcmF0b3JcclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxyXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbik7XHJcbiAgfVxyXG5cclxuICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKTtcclxuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XHJcbn1cclxuXHJcbi8vL1xyXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxyXG4vLy9cclxuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcclxuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XHJcbiAgICBAcmV0dXJuICgpO1xyXG4gIH1cclxuXHJcbiAgJHJlc3VsdDogKCk7XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcclxuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ2FzdHMgYSBzdHJpbmcgaW50byBhIG51bWJlclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XHJcbi8vL1xyXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xyXG4gICAgQHJldHVybiAkdmFsdWU7XHJcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ3N0cmluZycge1xyXG4gICAgJF86IGltLWxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcclxuICB9XHJcblxyXG4gICRmaXJzdC1jaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsIDEsIDEpO1xyXG4gICRyZXN1bHQ6IDA7XHJcbiAgJGRpZ2l0czogMDtcclxuICAkbWludXM6ICgkZmlyc3QtY2hhcmFjdGVyID09ICctJyk7XHJcbiAgJG51bWJlcnM6ICgnMCc6IDAsICcxJzogMSwgJzInOiAyLCAnMyc6IDMsICc0JzogNCwgJzUnOiA1LCAnNic6IDYsICc3JzogNywgJzgnOiA4LCAnOSc6IDkpO1xyXG5cclxuICAvLyBSZW1vdmUgKy8tIHNpZ24gaWYgcHJlc2VudCBhdCBmaXJzdCBjaGFyYWN0ZXJcclxuICBAaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJysnIG9yICRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKSB7XHJcbiAgICAkdmFsdWU6IHN0ci1zbGljZSgkdmFsdWUsIDIpO1xyXG4gIH1cclxuXHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xyXG4gICAgJGNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgJGksICRpKTtcclxuXHJcbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XHJcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpXHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRjaGFyYWN0ZXIgPT0gJy4nIHtcclxuICAgICAgJGRpZ2l0czogMTtcclxuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcclxuICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3Rlcik7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xyXG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3RlcikgLyAkZGlnaXRzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiBpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KTtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gQWRkIGAkdW5pdGAgdG8gYCR2YWx1ZWBcclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdW5pdCAtIFN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgdW5pdFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge051bWJlcn0gLSBgJHZhbHVlYCBleHByZXNzZWQgaW4gYCR1bml0YFxyXG4vLy9cclxuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XHJcbiAgJHVuaXRzOiAoJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dywgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcclxuXHJcbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xyXG4gICAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC1nZXQoJHVuaXRzLCAkdW5pdCk7XHJcbn1cclxuXHJcbi8vL1xyXG4vLy8gVGhpcyBtaXhpbiBhaW1zIGF0IHJlZGVmaW5pbmcgdGhlIGNvbmZpZ3VyYXRpb24ganVzdCBmb3IgdGhlIHNjb3BlIG9mXHJcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkXHJcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcclxuLy8vIGZvciBpbnN0YW5jZS5cclxuLy8vXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vha3BvaW50cyBbKCldIC0gTWFwIG9mIHR3ZWFrcG9pbnRzIHRvIGJlIG1lcmdlZCB3aXRoIGAkYnJlYWtwb2ludHNgXHJcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIGJyZWFrcG9pbnRzIHdpdGggYSB0d2Vha3BvaW50XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XHJcbi8vLyAgICAgICAvLyAuLi5cclxuLy8vICAgICAgfVxyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgbWVkaWEgZXhwcmVzc2lvbnMgd2l0aCBhIGN1c3RvbSBvbmVcclxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJywgJzw9Y3VzdG9tJykge1xyXG4vLy8gICAgICAgLy8gLi4uXHJcbi8vLyAgICAgIH1cclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG5AbWl4aW4gbWVkaWEtY29udGV4dCgkdHdlYWtwb2ludHM6ICgpLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgpKSB7XHJcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRnbG9iYWwtYnJlYWtwb2ludHM6ICRicmVha3BvaW50cztcclxuICAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zOiAkbWVkaWEtZXhwcmVzc2lvbnM7XHJcblxyXG4gIC8vIFVwZGF0ZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRicmVha3BvaW50czogbWFwLW1lcmdlKCRicmVha3BvaW50cywgJHR3ZWFrcG9pbnRzKSAhZ2xvYmFsO1xyXG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xyXG5cclxuICBAY29udGVudDtcclxuXHJcbiAgLy8gUmVzdG9yZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRicmVha3BvaW50czogJGdsb2JhbC1icmVha3BvaW50cyAhZ2xvYmFsO1xyXG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xyXG59XHJcblxyXG4vLy8vXHJcbi8vLyBpbmNsdWRlLW1lZGlhIHB1YmxpYyBleHBvc2VkIEFQSVxyXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9dGFibGV0JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XHJcbiAgQGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA9PSAwKSBvclxyXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XHJcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XHJcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qKlxuICAqIEhUTUwgRUxFTUVOVCBTVFlMRVNcbiAgKlxuICAqIFN0eWxlIGRlZmluaXRpb25zIGZvciBnbG9iYWwgZWxlbWVudCBzZWxlY3RvcnMuXG4gICovXG5cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIENvbnNpc3RlbnQgYm94LXNpemluZyBmb3IgYWxsIGVsZW1lbnRzXG59XG5cbmh0bWwge1xuICBoZWlnaHQ6IDEwMCU7IC8vIEZvciBzdGlja3kgZm9vdGVyXG4gIGxpbmUtaGVpZ2h0OiAxLjc7IC8vIFNldCBkZWZhdWx0IGxpbmUgaGVpZ2h0XG4gIGZvbnQtc2l6ZTogNjIuNSU7IC8vIDYyLjUlIG9mIDE2cHggYnJvd3NlciBmb250IHNpemUgaXMgMTBweFxufVxuXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTsgLy8gRm9yIHN0aWNreSBmb290ZXJcbiAgbWFyZ2luOiAwOyAvLyBNYWtlIHN1cmUgYm9keSBlbGVtZW50IGlzIGVkZ2UtdG8tZWRnZVxuICBkaXNwbGF5OiBncmlkOyAvLyBGb3Igc3RpY2t5IGZvb3RlclxuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIGF1dG87IC8vIEZvciBzdGlja3kgZm9vdGVyXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5Q29sb3I7XG4gIC8vZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1mYW1pbHk6ICdMYXRvJywgc2Fucy1zZXJpZjsgLy8nTWVycml3ZWF0aGVyJywgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS42cmVtOyAvLyBSZXNldCBvdmVyYWxsIFwicm9vdFwiIGZvbnQtc2l6ZSBmb3IgMTZweCBzdGFuZGFyZCAocmVsYXRpdmUgdG8gNjIuNSUgYWN0dWFsIHJvb3Qgc2l6ZSBkZWNsYXJlZCBhYm92ZSlcbiAgY29sb3I6ICRmb250Q29sb3I7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtZmFtaWx5OiAnTWVycml3ZWF0aGVyJywgc2VyaWY7XG4gIGNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG59XG5cbi8vIChTZWUgbWl4aW5zKTpcbmgxIHtcbiAgQGluY2x1ZGUgaDE7XG4gIGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWY7XG59XG5cbmgyIHtcbiAgQGluY2x1ZGUgaDI7XG59XG5cbmgzIHtcbiAgQGluY2x1ZGUgaDM7XG59XG5cbmg0IHtcbiAgQGluY2x1ZGUgaDQ7XG59XG5cbmg1IHtcbiAgQGluY2x1ZGUgaDU7XG59XG5cbmg2IHtcbiAgQGluY2x1ZGUgaDY7XG59XG5cbnAge1xuICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogJGxpbmtDb2xvcjtcblxuICAmOmxpbmsge1xuXG4gIH1cblxuICAmOmhvdmVyIHtcblxuICB9XG5cbiAgJjphY3RpdmUge1xuXG4gIH1cblxuICAmOnZpc2l0ZWQge1xuXG4gIH1cblxuICAmLmJ1dHRvbiB7XG4gICAgLy90ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuOmZvY3VzIHtcbiAgLy9vdXRsaW5lOiAzcHggc29saWQgJG9yYW5nZTtcbn1cblxudWwsIG9sIHtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEJlZ2luIGJ1dHRvbiBzdHlsZXMgKi9cbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmJ1dHRvbjpob3ZlcixcbmJ1dHRvbjpmb2N1cyB7XG5cbn1cblxuYnV0dG9uOmZvY3VzIHtcbiAgLy9vdXRsaW5lOiAxcHggc29saWQgI2ZmZjtcbiAgLy9vdXRsaW5lLW9mZnNldDogLTRweDtcbn1cblxuYnV0dG9uOmFjdGl2ZSB7XG4gIC8vdHJhbnNmb3JtOiBzY2FsZSgwLjk5KTtcbn1cbi8qIEVuZCBidXR0b24gc3R5bGVzICovXG5cbmJsb2NrcXVvdGUge1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRibGFjaztcbiAgbWFyZ2luOiAxLjVlbSAxMHB4O1xuICBwYWRkaW5nOiAwLjVlbSAzMHB4O1xuICBxdW90ZXM6IFwiXFwyMDFDXCI7IC8vXCJcXDIwMURcIlwiXFwyMDE4XCJcIlxcMjAxOVwiO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb2xvcjogI2NjYztcbiAgICBjb250ZW50OiBvcGVuLXF1b3RlO1xuICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogLTAuNGVtO1xuICB9XG5cbiAgcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBwOmZpcnN0LW9mLXR5cGUsIHA6bnRoLW9mLXR5cGUoMikge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICB9XG59XG4iLCIvKipcbiAgKiBIRUFERVIgU1RZTEVTXG4gICovXG5cbi5oZWFkZXItd3JhcCB7IC8vIEVkZ2UtdG8tZWRnZSB3cmFwIGZvciBldmVyeXRoaW5nIGluIHRoZSBoZWFkZXIuIDFzdCBncmlkIGl0ZW0gaW4gPGJvZHk+IGdyaWQgY29udGFpbmVyLlxuICBAaW5jbHVkZSB3cmFwO1xuICBncmlkLXJvdy1zdGFydDogMTsgLy8gRm9yIHN0aWNreSBmb290ZXJcbiAgZ3JpZC1yb3ctZW5kOiAyOyAvLyBGb3Igc3RpY2t5IGZvb3RlclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgei1pbmRleDogOTk5OTsgLy8gUG9zaXRpb24gaW4gZnJvbnQgb2YgZXZlcnl0aGluZyBlbHNlXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMsIGJvcmRlciAyMDBtcywgYm94LXNoYWRvdyAyMDBtcztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAvL2JhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgJi5iZy12aXNpYmxlIHtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgfVxufVxuICAuaGVhZGVyLW92ZXJsYXkgeyAvLyBUcmFuc2x1Y2VudCwgXCJkaW1tZXJcIiBsYXllciBvdmVyIGhlYWRlciBiYWNrZ3JvdW5kLWltYWdlLlxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgb3BhY2l0eTogMC43O1xuXG4gICAgJi5iZy12aXNpYmxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgLnRvcC1iYXItYmcgeyAvLyBFZGdlLXRvLWVkZ2UgYmFja2dyb3VuZCBsYXllciBmb3IgdGhlIHRvcC1uYXYgYmFyLlxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogNjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cbiAgICAmLmJnLXZpc2libGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLmhlYWRlciB7IC8vIFdpZHRoLWxpbWl0ZWQgY29udGFpbmVyIGZvciB0aGUgaGVhZGVyLiBUaGlzIGlzIHRoZSA8aGVhZGVyPiBlbGVtZW50IGl0c2VsZi5cbiAgICAvL0BpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgaGVpZ2h0OiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyAvLzFmciAxMDBweDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6ICRoZWFkZXJIZWlnaHRNb2JpbGUgYXV0bztcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xuXG4gICAgJi5iZy12aXNpYmxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIGhlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCArICR0b3BCYXJIZWlnaHQpO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IC8vMWZyIDEwMHB4O1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxMjBweCA3MHB4O1xuICAgIH1cbiAgfVxuICAgIC5oZWFkZXItYnJhbmQgeyAvLyBDb250YWluZXIgZm9yIGxvZ28sIHRleHQgbG9nbywgdGFnbGluZS4gQ292ZXJzIGVudGlyZSBoZWFkZXIgYXJlYSAoYmVoaW5kIG5hdnMpXG4gICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgLy8gTmVnYXRlIHJpZ2h0IHBhZGRpbmcgZnJvbSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDE7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA1O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHRvcEJhckhlaWdodCk7XG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKCR0b3BCYXJIZWlnaHQgKiAwLjc1KTtcbiAgICAgICAgLy9tYXJnaW4tdG9wOiBjYWxjKCR0b3BCYXJIZWlnaHQgLyAyKTtcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiBjYWxjKCRtYWluTmF2SGVpZ2h0IC8gMik7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBoZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgaGVpZ2h0OiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wIC0gJG1haW5OYXZIZWlnaHQpO1xuICAgICAgICAgIGhlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCAtICgkdG9wQmFySGVpZ2h0IC8gMikpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28taW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGhlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0TW9iaWxlIC0gNTVweCk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDEwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoJGhlYWRlckhlaWdodERlc2t0b3AgLSAoJHRvcEJhckhlaWdodCAvIDIpKTsgLy9jYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wIC0gJG1haW5OYXZIZWlnaHQgLSAyMHB4KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvLXRleHQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAkYnJhbmRDb2xvckNvbnRyYXN0O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubG9nby10ZXh0LXRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgICAgICAgICBzcGFuLnJlZ2lzdGVyZWQge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAgICAgICBzcGFuLnJlZ2lzdGVyZWQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMCBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuODtcbiAgICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmRDb2xvckNvbnRyYXN0O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyLW5hdiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICYuYmctdmlzaWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgICAgIH1cblxuICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHRvcEJhckhlaWdodCk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgICAuaGVhZGVyLW5hdi1tYWluIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIC8vcGFkZGluZy1sZWZ0OiAwOyAvLyBOZWdhdGUgbGVmdCBwYWRkaW5nIGZyb20gJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICAgICAgaGVpZ2h0OiAkbWFpbk5hdkhlaWdodDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgLy9ib3R0b206IGF1dG87IC8vMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB0cmFuc2xhdGU6IDAgY2FsYygtMSAqICgkbWFpbk5hdkhlaWdodCAvIDIpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTQ1cHgpO1xuICAgICAgICAgIC8vY29sdW1uLWdhcDogYXV0bztcbiAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JheTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6ICRtYWluTmF2SGVpZ2h0O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIC8vY29sdW1uLWdhcDogMTBweDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgcGFkLWxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG5cbiAgICAgICAgICAgICY6aG92ZXIgPiB1bCB7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgICAgbWluLWhlaWdodDogJG1haW5OYXZIZWlnaHQ7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZGlzcGxheSAzMDBtcztcblxuICAgICAgICAgICAgICAmOmhvdmVyID4gdWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAvL0BpbmNsdWRlIHBhZC1sZWZ0O1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bzsgLy8xMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgLy9mb250LWZhbWlseTogJ0xhdG8nLCBzYW5zLXNlcmlmO1xuXG4gICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBib3R0b206IDlweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiBkYXJrZW4oJGJyYW5kQ29sb3JDb250cmFzdCwgMjAlKTtcbiAgICAgICAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDJweCBzb2xpZCAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGhlaWdodDogJG1haW5OYXZIZWlnaHQ7XG4gICAgICAgICAgICAgICAgLy8gcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jdXJyZW50X3BhZ2VfaXRlbSB7XG5cbiAgICAgICAgICAgICAgYSB7XG5cbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hdi1jaGV2cm9uIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkYnJhbmRDb2xvckNvbnRyYXN0LCAyMCUpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7IC8vIHN1Yi1uYXZcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzIwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogJG1haW5OYXZIZWlnaHQ7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBsaSB7IC8vIHN1Yi1uYXZcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnRpemUoJGRhcmtlckdyYXksIDAuOCk7XG5cbiAgICAgICAgICAgICAgICAgICY6aG92ZXIgPiB1bCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7IC8vIHN1Yi1uYXZcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM2VtO1xuICAgICAgICAgICAgICAgICAgLy9AaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICAgICAgICAgIC8vd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAvL2hlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgIC8vbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgLy9wYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAvL3BhZGRpbmc6IDAgMCAwIDMwcHg7XG4gICAgICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAvL2FsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAvL2NvbG9yOiBncmF5O1xuXG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLy90ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgICAgICAgICAgLy9tYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7IC8vIHN1Yi1zdWItbmF2XG5cbiAgICAgICAgICAgICAgICAgIGxpIHsgLy8gc3ViLXN1Yi1uYXZcblxuICAgICAgICAgICAgICAgICAgICBhIHsgLy8gc3ViLXN1Yi1uYXZcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQuNWVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgdWwgeyAvLyBzdWItc3ViLXN1Yi1uYXZcblxuICAgICAgICAgICAgICAgICAgICAgIGxpIHsgLy8gc3ViLXN1Yi1zdWItbmF2XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEgeyAvLyBzdWItc3ViLXN1Yi1uYXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8qXG4gICAgICAuaGVhZGVyLW5hdi10b3Age1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHsgLy8gdG9wIG5hdlxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAzMHB4O1xuICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7IC8vIFBhZGRpbmcgYWdhaW5zdCBoZWFkZXIgYnV0dG9ucyAoc2VhcmNoIGdsYXNzKVxuICAgICAgICAgICAgLy9mbGV4LWZsb3c6IHJvdztcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxpIHsgLy8gdG9wIG5hdlxuICAgICAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHsgLy8gdG9wIG5hdlxuICAgICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnTGF0bycsIHNhbnMtc2VyaWY7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkYnJhbmRDb2xvckNvbnRyYXN0LCAyMCUpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgKi9cblxuICAgICAgLypcbiAgICAgIGxpLnNsaWRlLWxpbmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDEwMDI7XG4gICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4IDNweCAwIDA7XG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDMwMG1zLCBsZWZ0IDMwMG1zLCBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ob3Zlci1zdGF0ZSB7XG4gICAgICAgICAgLy9ib3gtc2hhZG93OiAwIDAgNXB4IDBweCAkYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICovXG5cbiAgICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgICAgQGluY2x1ZGUgcGFkLXJpZ2h0O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogNjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAgIC5nbGFzcyB7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB0b3A6IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgIGJvcmRlcjogdW5zZXQ7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkYnJhbmRDb2xvckNvbnRyYXN0LCAyMCUpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgLy9jb2xvcjogJG1lZGl1bUdyYXk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5idXJnZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTM0MHB4XCIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkYnJhbmRDb2xvckNvbnRyYXN0LCAyMCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgLmhlYWRlci1zZWFyY2gtd3JhcCB7IC8vIEhlYWRlci1zcGVjaWZpYyBzZWFyY2ggd3JhcFxuICAgICAgQGluY2x1ZGUgd3JhcDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgICAgei1pbmRleDogNjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIHRvcDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wIC0gJG1haW5OYXZIZWlnaHQpO1xuICAgICAgfVxuXG4gICAgICAuc2l0ZS1zZWFyY2ggeyAvLyBIZWFkZXIgc3BlY2lmaWMgLS0gc2VlIHNlYXJjaC5zY3NzIGZvciBnbG9iYWwgc2VhcmNoIHN0eWxlc1xuICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgIH1cbiAgICB9XG4iLCIvKipcbiAgKiBTSVRFIFNFQVJDSCBGT1JNIFNUWUxFU1xuICAqL1xuXG4uc2l0ZS1zZWFyY2gge1xuICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDQwcHggMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNTBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xufVxuXG4gIC5zZWFyY2gtcXVlcnkge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAgIGxhYmVsIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgfVxuICB9XG5cbiAgLnNlYXJjaC1zdWJtaXQge1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcbiAgICBncmlkLXJvdzogMTtcbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICBjb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRicmFuZENvbG9yQ29udHJhc3QsIDIwJSk7XG4gICAgfVxuICB9XG4iLCIvKipcbiAgKiBNQUlOIFBBR0UgQ09OVEVOVCBTVFlMRVNcbiAgKi9cblxuXG4ubWFpbi13cmFwIHtcbiAgQGluY2x1ZGUgd3JhcDtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDI7IC8vIEZvciBzdGlja3kgZm9vdGVyXG4gIGdyaWQtcm93LWVuZDogMzsgLy8gRm9yIHN0aWNreSBmb290ZXJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbn1cbiAgLm1haW4geyAvLyBDb250YWluZXIgZm9yIGFsbCBub24taGVhZGVyIGFuZCBub24tZm9vdGVyIHN0dWZmXG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBGb3Igc3RpY2t5IGZvb3RlcjogZmlsbCBhbnkgZW1wdHkgc3BhY2UgZG93biB0byBmb290ZXJcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBFeHRlbmRzIGhlaWdodCB0byBhY2NvbW9kYXRlIGNvbnRlbnQncyBtYXJnaW5cbiAgfVxuICAgIC5wYWdlLWhlYWRlci13cmFwIHtcbiAgICAgIEBpbmNsdWRlIHdyYXA7XG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC8vei1pbmRleDogMTtcbiAgICB9XG4gICAgICAucGFnZS1oZWFkZXItb3ZlcmxheSB7IC8vIFRyYW5zbHVjZW50LCBcImRpbW1lclwiIGxheWVyIG92ZXIgaGVhZGVyIGJhY2tncm91bmQtaW1hZ2UuXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgICAgIC8vYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRicmFuZENvbG9yUHJpbWFyeSwgJGJyYW5kQ29sb3JDb250cmFzdCk7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBvdmVybGF5O1xuXG4gICAgICAgICYuYmctdmlzaWJsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnBhZ2UtaGVhZGVyIHsgLy8gTWFpbiBwYWdlIGhlYWRlciAoY29udGFpbnMgcGFnZSB0aXRsZSBIMSwgaW50cm8gdGV4dCwgZXRjLilcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItd3JhcDtcbiAgICAgICAgQGluY2x1ZGUgcGFkLXZlcnRpY2FsO1xuICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgLy9taW4taGVpZ2h0OiA0MjBweDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAvL2p1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICB9XG4gICAgICAgIC5wYWdlLWhlYWRlci10aXRsZSB7XG5cbiAgICAgICAgICBoMSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlOy8vJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgICAgICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxNXB4ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGFnZS1oZWFkZXItdGV4dCB7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMCAxMHB4ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgICAgICAgICAgIC8vZm9udC1mYW1pbHk6ICdNZXJyaXdlYXRoZXInLCBzZXJpZjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIC5wYWdlLW1haW4td3JhcCB7XG4gICAgICBAaW5jbHVkZSB3cmFwO1xuICAgIH1cbiAgICAgIC5wYWdlLW1haW4geyAvLyBNYWluIHBhZ2UgY29udGVudCBhbmQgc2lkZWJhclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucGFnZS1tYWluLnNpZGUgeyAvLyBTaWRlYmFyLXNwZWNpZmljIHZlcnNpb24gb2YgLnBhZ2UtbWFpbiBeXl5cbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMHB4O1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAzMjBweDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIC5wYWdlLWNvbnRlbnQgeyAvLyBNYWluIHBhZ2UgY29udGVudCAoc2l0cyBhbG9uZ3NpZGUgc2lkZWJhciBpZiB0aGVyZSBpcyBvbmUpXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICBncmlkLXJvdzogMjtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgICAucGFnZS1zZWN0aW9uLXdyYXAge1xuICAgICAgICAgICAgQGluY2x1ZGUgd3JhcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgICAucGFnZS1zZWN0aW9uIHsgLy8gdmVydGljYWxseSBzZXBhcmF0ZXMgcGllY2VzIG9mIG1haW4gY29udGVudCBhbmQgcGFkcyBhZ2FpbnN0IHRoZSBzaWRlYmFyXG4gICAgICAgICAgICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwYWQtdmVydGljYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgLnNpZGUgLnBhZ2UtY29udGVudHsgLy8gLnBhZ2UtY29udGVudCBzdHlsZXMgZm9yIHNpZGViYXIgbGF5b3V0XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBhZ2Utc2lkZWJhciB7XG4gICAgICAgICAgQGluY2x1ZGUgcGFkLWJvdHRvbTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICBncmlkLXJvdzogMTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiIsIi8qKlxuICAqIEZPT1RFUiBTVFlMRVNcbiAgKi9cblxuXG4uZm9vdGVyLXdyYXAge1xuICBAaW5jbHVkZSB3cmFwO1xuICBncmlkLXJvdy1zdGFydDogMzsgLy8gRm9yIHN0aWNreSBmb290ZXJcbiAgZ3JpZC1yb3ctZW5kOiA0OyAvLyBGb3Igc3RpY2t5IGZvb3RlclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya2VzdEdyYXk7XG59XG4gIC5mb290ZXIge1xuICAgIC8vQGluY2x1ZGUgaW5uZXItd3JhcDtcbiAgICBAaW5jbHVkZSBwYWQtdmVydGljYWw7XG4gICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIEV4dGVuZHMgaGVpZ2h0IHRvIGFjY29tb2RhdGUgY29udGVudCdzIG1hcmdpblxuICAgIGNvbG9yOiAkYnJhbmRDb2xvckNvbnRyYXN0O1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MCUgNTAlO1xuICAgIGdyaWQtcm93czogYXV0byBhdXRvIGF1dG87XG4gIH1cbiAgICAuZm9vdGVyLW5hdiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAvL3BhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICBncmlkLXJvdzogMjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBAaW5jbHVkZSBwYWQtbGVmdDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICBncmlkLXJvdzogMSAvIHNwYW4gMTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiByaWdodDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgIC8qJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgICAgIGNvbG9yOiAkYnJhbmRDb2xvckNvbnRyYXN0O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IC0ycHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSovXG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMDsvLyAxMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAvL2FsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwOyAvLzVweDtcbiAgICAgICAgICAgICAgLy9hbGlnbi1pdGVtczogcmlnaHQ7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5mb290ZXItYnJhbmQgeyAvLyBDb250YWluZXIgZm9yIGxvZ28sIHRleHQgbG9nbywgdGFnbGluZS4gQ292ZXJzIGVudGlyZSBmb290ZXIgYXJlYSAoYmVoaW5kIG5hdnMpXG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyAvLyBOZWdhdGUgcmlnaHQgcGFkZGluZyBmcm9tICdjb250YWluZXInIG1peGluIF5eXlxuICAgICAgLy9oZWlnaHQ6IDE2MHB4O1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICBncmlkLXJvdzogMSAvIHNwYW4gMTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBAaW5jbHVkZSBwYWQtcmlnaHQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG4gICAgICAgIC8vaGVpZ2h0OiBjYWxjKCRmb290ZXJIZWlnaHREZXNrdG9wIC0gJG1haW5OYXZIZWlnaHQpO1xuICAgICAgICAvL21hcmdpbi10b3A6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogJG1haW5OYXZIZWlnaHQ7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICB3aWR0aDogMjYwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIC8vbWFyZ2luOiAwO1xuICAgICAgICAgIC8vaGVpZ2h0OiBjYWxjKCRmb290ZXJIZWlnaHREZXNrdG9wIC0gJG1haW5OYXZIZWlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3Rlci1icmFuZC1sb2dvLWltYWdlIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvb3Rlci1icmFuZC1sb2dvLXRleHQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAvL2ZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZm9vdGVyLWJyYW5kLWxvZ28tdGV4dC10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG5cbiAgICAgICAgICAgIHNwYW4ucmVnaXN0ZXJlZCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgIC8vZm9udC1zaXplOiAxLjRyZW07XG5cbiAgICAgICAgICAgICAgc3Bhbi5yZWdpc3RlcmVkIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5mb290ZXItYnJhbmQtbG9nby10ZXh0LXRhZ2xpbmUge1xuICAgICAgICAgICAgLy9tYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMC44O1xuICAgICAgICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgLy9mb250LXNpemU6IDAuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgIC8vZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvcHlyaWdodCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICBncmlkLXJvdzogMztcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAwO1xuICAgICAgICBncmlkLXJvdzogMjtcblxuICAgICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcbiAgICAgICAgLy9ncmlkLXJvdzogMTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiByaWdodDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuIiwiLyoqXG4gICogTUlTQ0VMTEFORU9VUyBTVFlMRVNcbiAgKi9cblxuLmVtYmVkLWNvbnRhaW5lci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xufVxuICAuZW1iZWQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgICAuZW1iZWQtY29udGFpbmVyIGlmcmFtZSxcbiAgICAuZW1iZWQtY29udGFpbmVyIG9iamVjdCxcbiAgICAuZW1iZWQtY29udGFpbmVyIGVtYmVkIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cblxuLm1heC13aWR0aC0yODBweCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDI4MHB4O1xufVxuXG4uZmxvYXQtcmlnaHQsXG4uYWxpZ25yaWdodCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMjBweDtcbiAgZmxvYXQ6IG5vbmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAyMHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuIl19 */
