/**
  * PAGE-SPECIFIC STYLESHEET: books
  *
  * Import common styles and house page-specific styles for page: "books".
  */
/**
  * 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;
}

/**
  * BREAKPOINTS
  *
  * Define breakpoints for media query use and export them for use with JS.
  */
/*
example usage:
@include media(">=phone-small") {...}
*/
:export {
  breakpointPhoneSmall: 320;
  breakpointPhoneLarge: 480;
  breakpointTablet: 768;
  breakpointLaptop: 992;
  breakpointDesktop: 1200;
  breakpointDesktopLarge: 1400;
  breakpointHd: 1920;
}

/**
  * VARIABLES
  */
/**
  * Dimensions:
  */
/**
  * Colors:
  */
/**
  * FONTS
  *
  * Define @font-face styles.
  */
@font-face {
  font-family: Montserrat;
  src: url(../fonts/Montserrat-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: Montserrat;
  src: url(../fonts/Montserrat-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}
/*
@font-face {
  font-family: American Typewriter ITC Pro Bold;
  //src: url(../fonts/Montserrat-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}



font-family: ltc-goudy-ornate, sans-serif;

font-weight: 400;

font-style: normal;


American Typewriter ITC Pro Bold

font-family: itc-american-typewriter, serif;

font-weight: 700;

font-style: normal;

American Typewriter ITC Pro Bold Italic

font-family: itc-american-typewriter, serif;

font-weight: 700;

font-style: italic;

American Typewriter ITC Pro Light

font-family: itc-american-typewriter, serif;

font-weight: 300;

font-style: normal;

American Typewriter ITC Pro Light Italic

font-family: itc-american-typewriter, serif;

font-weight: 300;

font-style: italic;

American Typewriter ITC Pro Bold Condensed

font-family: itc-american-typewriter-cond, serif;

font-weight: 700;

font-style: normal;

American Typewriter ITC Pro Light Condensed

font-family: itc-american-typewriter-cond, serif;

font-weight: 300;

font-style: normal;
*/
/**
  * MIXINS
  *
  * Standardized style chunks, provided as both SCSS mixins and HTML classes.
  */
.wrap {
  width: 100%;
  height: auto;
}

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

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

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

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

.mar-right {
  margin-right: 20px;
  transition: margin 300ms;
  max-width: calc(100% - 20px);
}
@media (min-width: 480px) {
  .mar-right {
    margin-right: 25px;
    max-width: calc(100% - 25px);
  }
}
@media (min-width: 768px) {
  .mar-right {
    margin-right: 30px;
    max-width: calc(100% - 30px);
  }
}
@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: 20px;
  transition: margin 300ms;
  max-width: calc(100% - 20px);
}
@media (min-width: 480px) {
  .mar-left {
    margin-left: 25px;
    max-width: calc(100% - 25px);
  }
}
@media (min-width: 768px) {
  .mar-left {
    margin-left: 30px;
    max-width: calc(100% - 30px);
  }
}
@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: 20px;
  margin-right: 20px;
  transition: margin 300ms;
  max-width: calc(100% - 40px);
}
@media (min-width: 480px) {
  .mar-horizontal {
    margin-left: 25px;
    margin-right: 25px;
    max-width: calc(100% - 50px);
  }
}
@media (min-width: 768px) {
  .mar-horizontal {
    margin-left: 30px;
    margin-right: 30px;
    max-width: calc(100% - 60px);
  }
}
@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);
  }
}

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

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

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

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

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

.pad-horizontal {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .pad-horizontal {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .pad-horizontal {
    padding-right: 30px;
  }
}
@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: 25px;
  }
}
@media (min-width: 768px) {
  .pad-horizontal {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .pad-horizontal {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .pad-horizontal {
    padding-left: 80px;
  }
}

.button {
  padding: 10px 15px;
  display: inline-block;
  background-color: #000000;
  text-transform: uppercase;
  color: #fefefe;
  font-weight: bold;
}

/*
@mixin category {
  display: block;
  // /text-transform: uppercase;
  color: $black;
  font-weight: 600;
  font-size: 0.8rem;
  letter-spacing: -0.0625em;
}

.category {
  @include category;
}

@mixin title {
  display: block;
  font-size: 1.4rem;
  //font-weight: 600;
  line-height: 1.1;
  color: $brandColorPrimary;
  letter-spacing: -0.0625em;

  &:hover {
    //text-decoration: underline;
  }
}

.title {
  @include title;
}

@mixin tag {
  font-size: 0.8rem;
  font-weight: 500;
  color: $mediumDarkGray;
  letter-spacing: -0.0425em;
}

.tag {
  @include tag;
}
*/
.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;
}

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

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

body {
  min-height: 100%;
  display: grid;
  grid-template-rows: auto 1fr auto;
  margin: 0;
  background-color: #ffffff;
  color: #222;
  font-family: itc-american-typewriter, serif;
  font-weight: 400;
  font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
  font-family: questa-grande, serif;
  font-weight: bold;
  text-transform: uppercase;
}

h1 {
  margin-top: 0;
  margin-bottom: 1.4rem;
  font-size: 2.2rem;
}

h2 {
  margin-top: 0;
  margin-bottom: 1.3rem;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.15909em;
}

h3 {
  margin-top: 0;
  margin-bottom: 1rem;
  line-height: 1.15909em;
  font-size: 1.6rem;
}

h4 {
  margin-top: 0;
  font-size: 1.4rem;
  margin-bottom: 1rem;
  line-height: 1.2;
}

h5 {
  margin-top: 0;
  font-size: 1.3rem;
  margin-bottom: 1rem;
}

h6 {
  margin-top: 0;
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

p {
  margin: 0;
  padding-bottom: 0;
  line-height: 1.5;
}

a {
  text-decoration: none;
  color: rgb(1, 38, 170);
}
ul, ol {
  margin: 0;
  padding: 0;
  list-style-position: inside;
}

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

/* end button styles */
/**
  * HEADER STYLES
  */
.header-wrap {
  height: auto;
  grid-row-start: 1;
  grid-row-end: 2;
  z-index: 0;
  background-color: #f0ede8;
}
.header-wrap.bg-visible {
  z-index: 9999;
}
@media (min-width: 768px) {
  .header-wrap {
    background-color: #fffeee;
    background-image: linear-gradient(to right, transparent 0%, rgba(179, 179, 179, 0.6) 0.1% 0.2%, transparent 0.2%, rgba(179, 179, 179, 0.6) 0.4% 0.5%, transparent 0.5%, rgba(179, 179, 179, 0.6) 1.2% 1.3%, transparent 1.3%, rgba(179, 179, 179, 0.6) 3.3% 3.4%, transparent 3.4% 20%, rgba(179, 179, 179, 0.6) 50%, rgba(102, 102, 102, 0.7) 67%, rgba(77, 77, 77, 0.8) 69%, rgba(51, 51, 51, 0.9) 69.95%, rgba(26, 26, 26, 0.9) 70%, rgba(51, 51, 51, 0.6) 70.05%, rgba(77, 77, 77, 0.6) 71%, rgba(102, 102, 102, 0.6) 73%, rgba(179, 179, 179, 0.6) 90%, transparent 100%);
  }
  .header-wrap.bg-visible {
    z-index: 0;
  }
}

.header-overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: rgb(1, 38, 170);
  opacity: 0.7;
  display: none;
}

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

.header {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  height: 90px;
  padding-top: 0;
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 90px auto;
  transition: background-color 200ms;
}
@media (min-width: 768px) {
  .header {
    height: auto;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }
}

.header-brand {
  padding-left: 20px;
  transition: padding 300ms;
  margin-top: 0;
  margin-right: 0;
  margin-left: 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-left: 25px;
  }
}
@media (min-width: 768px) {
  .header-brand {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .header-brand {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .header-brand {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .header-brand {
    margin-left: 20px;
    margin-right: 20px;
    transition: margin 300ms;
    max-width: calc(100% - 40px);
    height: 200px;
    height: auto;
    margin-top: 45px;
    width: 50%;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .header-brand {
    margin-left: 25px;
    margin-right: 25px;
    max-width: calc(100% - 50px);
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .header-brand {
    margin-left: 30px;
    margin-right: 30px;
    max-width: calc(100% - 60px);
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .header-brand {
    margin-left: 60px;
    margin-right: 60px;
    max-width: calc(100% - 120px);
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .header-brand {
    margin-left: 80px;
    margin-right: 80px;
    max-width: calc(100% - 160px);
  }
}
.header-brand a {
  max-width: 420px;
  height: 90px;
  display: flex;
  align-items: center;
  flex-direction: row;
  font-weight: bold;
  text-decoration: none;
  color: #000;
  padding-left: 60px;
  border-bottom: unset;
}
@media (min-width: 768px) {
  .header-brand a {
    height: 200px;
    height: auto;
    padding-left: 0;
    padding-bottom: 40px;
    border-bottom: 4px solid #000000;
  }
}
@media (min-width: 1200px) {
  .header-brand a {
    padding-bottom: 50px;
  }
}
@media (min-width: 1400px) {
  .header-brand a {
    max-width: 520px;
  }
}
.header-brand a .logo-text {
  display: block;
  color: #000000;
  text-align: left;
  padding-left: 0;
  padding-top: 0;
}
@media (min-width: 480px) {
  .header-brand a .logo-text {
    padding-left: 10px;
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  .header-brand a .logo-text {
    padding-top: 30px;
    padding-left: 0;
  }
}
@media (min-width: 1200px) {
  .header-brand a .logo-text {
    padding-top: 50px;
  }
}
.header-brand a .logo-text .logo-text-title {
  margin: 0 auto;
  display: block;
  line-height: 0.9;
  font-size: 1rem;
  font-family: questa-grande, serif;
  text-transform: uppercase;
}
@media (min-width: 480px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 1.6rem;
  }
}
@media (min-width: 768px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 2.6rem;
  }
}
@media (min-width: 992px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 3rem;
  }
}
@media (min-width: 1200px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 3.1rem;
  }
}
@media (min-width: 1400px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 3.8rem;
  }
}
.header-brand a .logo-text .logo-text-tagline {
  margin: 10px auto 0 auto;
  line-height: 1.1;
  display: none;
  font-size: 0.6rem;
  font-weight: lighter;
  font-style: italic;
  color: #000000;
  font-family: questa-grande, serif;
}
@media (min-width: 480px) {
  .header-brand a .logo-text .logo-text-tagline {
    font-size: 1.1rem;
  }
}
@media (min-width: 768px) {
  .header-brand a .logo-text .logo-text-tagline {
    display: block;
    margin-top: 20px;
    font-size: 1.5rem;
  }
}
@media (min-width: 1200px) {
  .header-brand a .logo-text .logo-text-tagline {
    font-size: 2rem;
  }
}

.logo {
  margin-left: 20px;
  transition: margin 300ms;
  max-width: calc(100% - 20px);
  width: auto;
  height: 100%;
  text-align: center;
  display: block;
  position: absolute;
  right: auto;
  bottom: auto;
  top: 0;
  left: 0;
}
@media (min-width: 480px) {
  .logo {
    margin-left: 25px;
    max-width: calc(100% - 25px);
  }
}
@media (min-width: 768px) {
  .logo {
    margin-left: 30px;
    max-width: calc(100% - 30px);
  }
}
@media (min-width: 992px) {
  .logo {
    margin-left: 60px;
    max-width: calc(100% - 60px);
  }
}
@media (min-width: 1200px) {
  .logo {
    margin-left: 80px;
    max-width: calc(100% - 80px);
  }
}
@media (min-width: 768px) {
  .logo {
    width: auto;
    height: 90%;
    right: 30px;
    bottom: 0;
    top: auto;
    left: auto;
  }
}
@media (min-width: 992px) {
  .logo {
    right: 100px;
  }
}

.table-of-contents {
  margin-left: 20px;
  transition: margin 300ms;
  max-width: calc(100% - 20px);
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  padding-top: 35px;
  padding-bottom: 20px;
  display: block;
  font-family: questa-grande, serif;
  font-size: 1.6rem;
  font-weight: bold;
}
@media (min-width: 480px) {
  .table-of-contents {
    margin-left: 25px;
    max-width: calc(100% - 25px);
  }
}
@media (min-width: 768px) {
  .table-of-contents {
    margin-left: 30px;
    max-width: calc(100% - 30px);
  }
}
@media (min-width: 992px) {
  .table-of-contents {
    margin-left: 60px;
    max-width: calc(100% - 60px);
  }
}
@media (min-width: 1200px) {
  .table-of-contents {
    margin-left: 80px;
    max-width: calc(100% - 80px);
  }
}
@media (min-width: 480px) {
  .table-of-contents {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .table-of-contents {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .table-of-contents {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .table-of-contents {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .table-of-contents {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .table-of-contents {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .table-of-contents {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .table-of-contents {
    padding-left: 80px;
  }
}

.header-nav {
  width: 100%;
  height: 0;
  position: absolute;
  top: 90px;
  display: none;
  overflow: hidden;
  z-index: 10;
}
.header-nav.bg-visible {
  background-color: #f0ede8;
  box-shadow: 0px 5px 10px -5px #000000;
}
@media (min-width: 768px) {
  .header-nav {
    position: relative;
    height: auto;
    display: block;
    overflow: visible;
    top: auto;
  }
  .header-nav.bg-visible {
    box-shadow: unset;
  }
}

.main-nav {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  height: auto;
  position: static;
  top: auto;
  right: auto;
  z-index: 5;
  display: block;
}
@media (min-width: 768px) {
  .main-nav {
    margin-left: 20px;
    transition: margin 300ms;
    max-width: calc(100% - 20px);
    padding-right: 20px;
    transition: padding 300ms;
    padding-left: 20px;
    transition: padding 300ms;
    padding-left: 0;
    width: auto;
    left: 0;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .main-nav {
    margin-left: 25px;
    max-width: calc(100% - 25px);
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .main-nav {
    margin-left: 30px;
    max-width: calc(100% - 30px);
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .main-nav {
    margin-left: 60px;
    max-width: calc(100% - 60px);
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .main-nav {
    margin-left: 80px;
    max-width: calc(100% - 80px);
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .main-nav {
    padding-right: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .main-nav {
    padding-right: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .main-nav {
    padding-right: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .main-nav {
    padding-right: 80px;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .main-nav {
    padding-left: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .main-nav {
    padding-left: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .main-nav {
    padding-left: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .main-nav {
    padding-left: 80px;
  }
}
.main-nav ul {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  border-top: 1px solid #888888;
  padding-bottom: 0;
}
@media (min-width: 768px) {
  .main-nav ul {
    width: auto;
    padding-bottom: 30px;
    -moz-column-gap: 10px;
         column-gap: 10px;
    border-top: unset;
    align-items: flex-start;
  }
}
.main-nav ul li {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  width: 100%;
  height: 45px;
  list-style: none;
  border-top: unset;
  border-bottom: 1px solid #888888;
  position: relative;
}
@media (min-width: 480px) {
  .main-nav ul li {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .main-nav ul li {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .main-nav ul li {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .main-nav ul li {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .main-nav ul li {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .main-nav ul li {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .main-nav ul li {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .main-nav ul li {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .main-nav ul li {
    padding-right: 0;
    padding-left: 0;
    width: auto;
    border-bottom: unset;
    transition: display 300ms;
  }
  .main-nav ul li:hover > ul {
    display: block;
  }
}
.main-nav ul li a {
  width: 100%;
  height: 45px;
  padding: 0;
  position: relative;
  display: flex;
  align-items: center;
  font-weight: bold;
  font-size: 1rem;
  text-transform: uppercase;
  color: #000000;
  font-family: questa-grande, serif;
  text-align: center;
}
@media (min-width: 768px) {
  .main-nav ul li a {
    width: auto;
    padding: 0 5px;
    font-size: 1.6rem;
    text-align: left;
  }
}
.main-nav ul li .nav-chevron {
  display: flex;
  position: absolute;
  right: 0;
}
@media (min-width: 768px) {
  .main-nav ul li .nav-chevron {
    display: none;
  }
}
.main-nav ul li ul {
  width: 225px;
  height: auto;
  position: absolute;
  top: 62px;
  right: 0;
  list-style: none;
  display: none;
  background-color: #e0e0e0;
  border-top: 1px solid #fefefe;
}
.main-nav ul li ul::before {
  content: "";
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #e0e0e0;
  transform: rotate(45deg);
  position: absolute;
  top: -12px;
  right: -1px;
  z-index: 1001;
}
.main-nav ul li ul li {
  width: 225px;
  height: 35px;
  list-style: none;
  display: block;
  border-top: 1px solid #fefefe;
}
.main-nav ul li ul li:nth-child(1) {
  border-top: 1px solid #999999;
}
.main-nav ul li ul li:nth-child(2) {
  border-top: 1px solid #fefefe;
}
.main-nav ul li ul li:nth-child(3) {
  border-top: 1px solid #fefefe;
}
.main-nav ul li ul li:nth-child(4) {
  border-top: 1px solid #fefefe;
}
.main-nav ul li ul li a {
  width: 100%;
  height: 35px;
  padding-left: 10px;
  display: flex;
  align-items: center;
  text-decoration: none;
}
.main-nav ul li ul li a:hover {
  text-decoration: underline;
}

.top-nav {
  padding-right: 0;
  padding-left: 0;
  width: 100%;
  height: auto;
  position: relative;
  top: auto;
  left: auto;
  z-index: 6;
  display: block;
  clear: both;
}
@media (min-width: 768px) {
  .top-nav {
    padding-right: 20px;
    transition: padding 300ms;
    padding-left: 20px;
    transition: padding 300ms;
    width: 100%;
    height: 45px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 6;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .top-nav {
    padding-right: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .top-nav {
    padding-right: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .top-nav {
    padding-right: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .top-nav {
    padding-right: 80px;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .top-nav {
    padding-left: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .top-nav {
    padding-left: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .top-nav {
    padding-left: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .top-nav {
    padding-left: 80px;
  }
}
.top-nav ul {
  width: 100%;
  padding-right: 0;
  height: auto;
  display: flex;
  flex-direction: column;
  list-style: none;
  -moz-column-gap: 30px;
       column-gap: 30px;
  flex-flow: column;
}
@media (min-width: 768px) {
  .top-nav ul {
    width: auto;
    height: 45px;
    padding-right: 60px;
    flex-flow: row-reverse;
  }
}
.top-nav ul li {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  width: 100%;
  height: 45px;
  display: flex;
  align-items: center;
  list-style: none;
  border-bottom: 1px solid #888888;
  position: relative;
}
@media (min-width: 480px) {
  .top-nav ul li {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .top-nav ul li {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .top-nav ul li {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .top-nav ul li {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .top-nav ul li {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .top-nav ul li {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .top-nav ul li {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .top-nav ul li {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .top-nav ul li {
    width: auto;
    padding-right: 0;
    padding-left: 0;
    border-bottom: unset;
  }
}
.top-nav ul li a {
  height: 45px;
  text-transform: uppercase;
  text-decoration: none;
  color: #000000;
  font-weight: bold;
  font-size: 12px;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .top-nav ul li a {
    color: rgb(237, 205, 44);
  }
}
.slide-line {
  height: 3px;
  background-color: #fefefe;
}

.header-buttons {
  padding-right: 20px;
  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: 25px;
  }
}
@media (min-width: 768px) {
  .header-buttons {
    padding-right: 30px;
  }
}
@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;
  border: unset;
}
.glass i {
  color: #000000;
}
@media (min-width: 768px) {
  .glass {
    height: 45px;
    border: unset;
    padding: 8px 15px;
  }
  .glass i {
    color: #000000;
  }
  .glass i:hover {
    color: #aaa;
  }
}

.burger {
  margin-left: 0;
  padding: 8px 10px;
  display: flex;
  align-items: center;
}
.burger i {
  color: #000000;
}
@media (min-width: 340px) {
  .burger {
    margin-left: 10px;
  }
}
@media (min-width: 768px) {
  .burger {
    display: none;
  }
}

.site-search-wrap {
  width: 100%;
  height: auto;
  height: auto;
  display: none;
  position: absolute;
  top: 90px;
  left: 0;
  background-color: #ffffff;
  z-index: 6;
  box-shadow: 0px 2px 10px -2px #000000;
}
@media (min-width: 768px) {
  .site-search-wrap {
    top: 45px;
  }
}
.site-search-wrap .site-search {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .site-search-wrap .site-search {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .site-search-wrap .site-search {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .site-search-wrap .site-search {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .site-search-wrap .site-search {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .site-search-wrap .site-search {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .site-search-wrap .site-search {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .site-search-wrap .site-search {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .site-search-wrap .site-search {
    padding-left: 80px;
  }
}

/**
  * SITE SEARCH FORM STYLES
  */
.site-search {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  height: auto;
  padding: 35px 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: #000000;
  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 #000000;
  display: block;
  background-color: unset;
  color: #000000;
}

.search-submit {
  width: 50px;
  height: 50px;
  grid-column: 2/span 1;
  grid-row: 1;
  align-self: start;
  color: #000000;
  font-size: 1.4rem;
  background-color: #fefefe;
  transition: background-color 200ms;
  border-top: 2px solid #000000;
  border-right: 2px solid #000000;
  border-bottom: 2px solid #000000;
  line-height: 50px;
}
.search-submit:hover {
  background-color: #e0e0e0;
}

/**
  * CONTENT STYLES
  */
.main-wrap {
  grid-row-start: 2;
  grid-row-end: 3;
}
@media (min-width: 768px) {
  .main-wrap {
    width: 100%;
    height: auto;
    padding-right: 20px;
    transition: padding 300ms;
    padding-left: 20px;
    transition: padding 300ms;
    background-color: #fffeee;
    background-image: linear-gradient(to right, transparent 0%, rgba(179, 179, 179, 0.6) 0.1% 0.2%, transparent 0.2%, rgba(179, 179, 179, 0.6) 0.4% 0.5%, transparent 0.5%, rgba(179, 179, 179, 0.6) 1.2% 1.3%, transparent 1.3%, rgba(179, 179, 179, 0.6) 3.3% 3.4%, transparent 3.4% 20%, rgba(179, 179, 179, 0.6) 50%, rgba(102, 102, 102, 0.7) 67%, rgba(77, 77, 77, 0.8) 69%, rgba(51, 51, 51, 0.9) 69.95%, rgba(26, 26, 26, 0.9) 70%, rgba(51, 51, 51, 0.6) 70.05%, rgba(77, 77, 77, 0.6) 71%, rgba(102, 102, 102, 0.6) 73%, rgba(179, 179, 179, 0.6) 90%, transparent 100%);
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .main-wrap {
    padding-right: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .main-wrap {
    padding-right: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .main-wrap {
    padding-right: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .main-wrap {
    padding-right: 80px;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .main-wrap {
    padding-left: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .main-wrap {
    padding-left: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .main-wrap {
    padding-left: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .main-wrap {
    padding-left: 80px;
  }
}

.main {
  height: 100%;
  overflow: hidden;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding-right: 0;
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 20px;
  position: relative;
  z-index: 5;
  transform: rotate(0deg);
  box-shadow: 5px 0 15px -7px #000000;
}
@media (min-width: 768px) {
  .main {
    padding-left: 20px;
    transition: padding 300ms;
    padding-right: 20px;
    margin-top: -20px;
    padding-top: 20px;
    padding-bottom: 40px;
    transform: rotate(-0.5deg);
    box-shadow: unset;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .main {
    padding-left: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .main {
    padding-left: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .main {
    padding-left: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .main {
    padding-left: 80px;
  }
}

/*.page-header {
  width: 100%;
  height: auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center 80%;
  position: relative;
  z-index: 1;
  //background-color: $brandColorPrimary;
  background-blend-mode: screen;

  @include media(">=tablet") {
    //min-height: 250px;
  }
}
  .page-header-overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background-image: linear-gradient(darken($transGray, 40%), darken($transGray, 20%));
    opacity: 0.7;
    //background-blend-mode: multiply;
  }*/
/*.page-header-box-wrap {
  //@include inner-wrap;
  min-height: 100%;
  height: auto;
  //padding-top: calc($headerHeightMobile + $spacerPaddingTablet);
  //padding: 0;
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;

  @include media(">=tablet") {
    //@include pad-horizontal;
    //padding-top: calc($headerHeightDesktop + $spacerPaddingDesktop);//
    //height: auto;

    //display: none;
  }
}*/
/*.page-header-box {
  @include pad-top;
  @include pad-horizontal;
  //@include pad-bottom;
  width: 100%;
  height: 100%;
  //padding: 40px 30px;
  //padding-top: calc($headerHeightMobile + $spacerPaddingTablet);
  text-align: left;
  background-color: $white;

  @include media(">=tablet") {
    //width: 67%;
    //width: 100%;
    //padding-top: calc($headerHeightDesktop + $spacerPaddingDesktop);
  }

  h1 {
    margin: 0;
    padding: 0 0 20px 0;
    display: block;
    //color: $offWhite;
    font-size: 1.6rem;
    line-height: 1.3;
    //padding-bottom: 25px;
    font-style: italic;
    text-align: center;
    border-bottom: 3px solid $black;

    @include media(">=tablet") {
      font-size: 3.2rem;
    }
  }

  p {
    margin: 0;
    display: block;
    font-size: 1rem;
    font-weight: 500;
    color: $offWhite;

    @include media(">=tablet") {
      font-size: 1.2rem;
    }
  }
}*/
.page-content {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
}
@media (min-width: 768px) {
  .page-content {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
}

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

.page-main {
  padding-top: 30px;
  transition: padding 300ms;
  padding-bottom: 30px;
  transition: padding 300ms;
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  width: 100%;
  grid-column: 1/span 1;
  grid-row: 2;
  background-color: #ffffff;
  overflow: visible;
}
@media (min-width: 480px) {
  .page-main {
    padding-top: 35px;
  }
}
@media (min-width: 768px) {
  .page-main {
    padding-top: 40px;
  }
}
@media (min-width: 992px) {
  .page-main {
    padding-top: 50px;
  }
}
@media (min-width: 1200px) {
  .page-main {
    padding-top: 60px;
  }
}
@media (min-width: 480px) {
  .page-main {
    padding-bottom: 35px;
  }
}
@media (min-width: 768px) {
  .page-main {
    padding-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .page-main {
    padding-bottom: 50px;
  }
}
@media (min-width: 1200px) {
  .page-main {
    padding-bottom: 60px;
  }
}
@media (min-width: 480px) {
  .page-main {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .page-main {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .page-main {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .page-main {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .page-main {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .page-main {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .page-main {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .page-main {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .page-main {
    box-shadow: 5px 0 20px -7px #000000;
    grid-column: 1/span 1;
    grid-row: 1;
  }
}
.page-main h1 {
  margin: 0 0 30px 0;
  padding: 0 0 30px 0;
  display: block;
  font-size: 1.6rem;
  line-height: 1.3;
  font-style: italic;
  text-align: center;
  border-bottom: 3px solid #000000;
}
@media (min-width: 768px) {
  .page-main h1 {
    font-size: 2.8rem;
  }
}
.page-main h2 {
  margin-top: 50px;
  padding-bottom: 20px;
}
.page-main h2:first-of-type {
  margin-top: 0;
}
.page-main h3 {
  margin-top: 40px;
}
.page-main h4 {
  margin-top: 40px;
}
.page-main h5 {
  margin-top: 40px;
}
.page-main h6 {
  margin-top: 40px;
}
.page-main p {
  margin-bottom: 25px;
}
.page-main p:last-of-type {
  margin-bottom: 0;
}
.page-main ul {
  padding-left: 20px;
  line-height: 1.5;
  list-style-position: outside;
}
.page-main ul li {
  margin-bottom: 15px;
}

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

.page-section {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  padding-top: 30px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .page-section {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .page-section {
    padding-right: 30px;
  }
}
@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: 25px;
  }
}
@media (min-width: 768px) {
  .page-section {
    padding-left: 30px;
  }
}
@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: 35px;
  }
}
@media (min-width: 768px) {
  .page-section {
    padding-top: 40px;
  }
}
@media (min-width: 992px) {
  .page-section {
    padding-top: 50px;
  }
}
@media (min-width: 1200px) {
  .page-section {
    padding-top: 60px;
  }
}

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

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

.alignright {
  width: 100%;
  float: none;
  padding: 20px;
}
@media (min-width: 768px) {
  .alignright {
    width: 50%;
    float: right;
    padding: 20px;
  }
}

.alignleft {
  width: 100%;
  float: none;
  padding: 20px;
}
@media (min-width: 768px) {
  .alignleft {
    width: 50%;
    float: left;
    padding: 20px;
  }
}

.single p:first-of-type::first-letter {
  display: inline;
  font-size: 1rem;
  float: none;
  margin: 0;
  padding: 0;
  border: unset;
  color: inherit;
  background-color: unset;
  font-family: itc-american-typewriter, serif;
}

figure {
  background-color: #eee;
  padding: 20px;
}
figure img {
  width: 100%;
}
figure.alignright {
  margin-right: 0;
  margin-left: 0;
  padding-right: 20px;
  padding-left: 20px;
}
@media (min-width: 768px) {
  figure.alignright {
    margin-left: 20px;
  }
}
figure.alignright img {
  width: 100%;
}
figure.alignleft {
  margin-right: 0;
  margin-left: 0;
  padding-right: 20px;
  padding-left: 20px;
}
@media (min-width: 768px) {
  figure.alignleft {
    margin-right: 20px;
  }
}
figure.alignleft img {
  width: 100%;
}
figure figcaption {
  width: 100%;
  font-size: 0.9rem;
}
/**
  * FOOTER STYLES
  */
.footer-wrap {
  grid-row-start: 3;
  grid-row-end: 4;
}
@media (min-width: 768px) {
  .footer-wrap {
    background-color: #fffeee;
    background-image: linear-gradient(to right, transparent 0%, rgba(179, 179, 179, 0.6) 0.1% 0.2%, transparent 0.2%, rgba(179, 179, 179, 0.6) 0.4% 0.5%, transparent 0.5%, rgba(179, 179, 179, 0.6) 1.2% 1.3%, transparent 1.3%, rgba(179, 179, 179, 0.6) 3.3% 3.4%, transparent 3.4% 20%, rgba(179, 179, 179, 0.6) 50%, rgba(102, 102, 102, 0.7) 67%, rgba(77, 77, 77, 0.8) 69%, rgba(51, 51, 51, 0.9) 69.95%, rgba(26, 26, 26, 0.9) 70%, rgba(51, 51, 51, 0.6) 70.05%, rgba(77, 77, 77, 0.6) 71%, rgba(102, 102, 102, 0.6) 73%, rgba(179, 179, 179, 0.6) 90%, transparent 100%);
  }
}

.footer {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding-bottom: 30px;
  transition: padding 300ms;
  padding-top: 20px;
  text-align: left;
  overflow: hidden;
  color: #000000;
  background-color: #f0ede8;
}
@media (min-width: 480px) {
  .footer {
    padding-bottom: 35px;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .footer {
    padding-bottom: 50px;
  }
}
@media (min-width: 1200px) {
  .footer {
    padding-bottom: 60px;
  }
}
@media (min-width: 768px) {
  .footer {
    background-color: unset;
  }
}

.footer-nav {
  margin-left: 20px;
  margin-right: 20px;
  transition: margin 300ms;
  max-width: calc(100% - 40px);
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  padding-bottom: 20px;
}
@media (min-width: 480px) {
  .footer-nav {
    margin-left: 25px;
    margin-right: 25px;
    max-width: calc(100% - 50px);
  }
}
@media (min-width: 768px) {
  .footer-nav {
    margin-left: 30px;
    margin-right: 30px;
    max-width: calc(100% - 60px);
  }
}
@media (min-width: 992px) {
  .footer-nav {
    margin-left: 60px;
    margin-right: 60px;
    max-width: calc(100% - 120px);
  }
}
@media (min-width: 1200px) {
  .footer-nav {
    margin-left: 80px;
    margin-right: 80px;
    max-width: calc(100% - 160px);
  }
}
@media (min-width: 480px) {
  .footer-nav {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .footer-nav {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .footer-nav {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .footer-nav {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .footer-nav {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .footer-nav {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .footer-nav {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .footer-nav {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .footer-nav {
    width: auto;
    padding-bottom: 30px;
  }
}
.footer-nav ul {
  width: 100%;
  height: auto;
  display: flex;
  display: inline-block;
  list-style: none;
  text-align: flex-start;
}
@media (min-width: 768px) {
  .footer-nav ul {
    width: auto;
  }
}
.footer-nav ul li {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  width: 100%;
  list-style: none;
  position: relative;
  display: inline-block;
  position: relative;
  padding: 5px 10px;
}
@media (min-width: 480px) {
  .footer-nav ul li {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .footer-nav ul li {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .footer-nav ul li {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .footer-nav ul li {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .footer-nav ul li {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .footer-nav ul li {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .footer-nav ul li {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .footer-nav ul li {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .footer-nav ul li {
    width: auto;
    padding: 0 10px;
    padding: 0;
  }
  .footer-nav ul li:after {
    content: "|";
    color: #999999;
    position: absolute;
    top: 0;
    right: -2px;
  }
  .footer-nav ul li:last-child:after {
    content: "";
  }
}
.footer-nav ul li a {
  width: 100%;
  padding: 0;
  position: relative;
  display: block;
  align-items: center;
  font-size: 1rem;
  color: #000000;
  text-align: center;
  font-family: questa-grande, serif;
  text-transform: uppercase;
  font-weight: bold;
}
@media (min-width: 768px) {
  .footer-nav ul li a {
    align-items: left;
    width: auto;
    text-align: left;
  }
}

.copyright {
  margin-left: 20px;
  margin-right: 20px;
  transition: margin 300ms;
  max-width: calc(100% - 40px);
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  font-size: 10px;
  text-align: center;
}
@media (min-width: 480px) {
  .copyright {
    margin-left: 25px;
    margin-right: 25px;
    max-width: calc(100% - 50px);
  }
}
@media (min-width: 768px) {
  .copyright {
    margin-left: 30px;
    margin-right: 30px;
    max-width: calc(100% - 60px);
  }
}
@media (min-width: 992px) {
  .copyright {
    margin-left: 60px;
    margin-right: 60px;
    max-width: calc(100% - 120px);
  }
}
@media (min-width: 1200px) {
  .copyright {
    margin-left: 80px;
    margin-right: 80px;
    max-width: calc(100% - 160px);
  }
}
@media (min-width: 480px) {
  .copyright {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .copyright {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .copyright {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .copyright {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .copyright {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .copyright {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .copyright {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .copyright {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .copyright {
    text-align: left;
    width: auto;
  }
}

.page-main p:first-of-type::first-letter {
  display: inline;
  font-size: 1rem;
  float: none;
  margin: 0;
  padding: 0;
  border: unset;
  color: inherit;
  background-color: unset;
  font-family: itc-american-typewriter, serif;
}

.books {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: auto auto;
}
@media (min-width: 480px) {
  .books {
    grid-template-columns: 48% 48%;
    grid-auto-rows: auto;
    grid-column-gap: 4%;
  }
}
@media (min-width: 992px) {
  .books {
    grid-template-columns: 22% 22% 22% 22%;
    grid-auto-rows: auto;
    grid-column-gap: 4%;
  }
}

.book {
  margin-bottom: 20px;
  padding: 20px;
  background-color: #fefefe;
}
.book img {
  max-width: 80%;
  margin: 0 10%;
  border: 2px solid #000000;
}
.book .book-title {
  margin: 10px 0 25px 0;
  font-size: 1rem;
  text-align: center;
  color: #000000;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJvb2tzLnNjc3MiLCJfY29tbW9uLnNjc3MiLCJsaWJyYXJpZXMvX25vcm1hbGl6ZS5zY3NzIiwiYm9va3MuY3NzIiwicGFydGlhbHMvX2JyZWFrcG9pbnRzLm1vZHVsZXMuc2NzcyIsInBhcnRpYWxzL192YXJpYWJsZXMuc2NzcyIsInBhcnRpYWxzL19mb250cy5zY3NzIiwicGFydGlhbHMvX21peGlucy5zY3NzIiwibGlicmFyaWVzL19pbmNsdWRlLW1lZGlhLnNjc3MiLCJwYXJ0aWFscy9fZWxlbWVudHMuc2NzcyIsInBhcnRpYWxzL19oZWFkZXIuc2NzcyIsInBhcnRpYWxzL19zZWFyY2hmb3JtLnNjc3MiLCJwYXJ0aWFscy9fY29udGVudC5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBQUE7QUNBQTs7OztHQUFBO0FDQUEsMkVBQUE7QUFFQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0UsaUJBQUE7RUFBbUIsTUFBQTtFQUNuQiw4QkFBQTtFQUFnQyxNQUFBO0FDVWxDOztBRFBBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFLFNBQUE7QUNRRjs7QURMQTs7RUFBQTtBQUlBO0VBQ0UsY0FBQTtBQ09GOztBREpBOzs7RUFBQTtBQUtBO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0FDTUY7O0FESEE7K0VBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNFLHVCQUFBO0VBQXlCLE1BQUE7RUFDekIsU0FBQTtFQUFXLE1BQUE7RUFDWCxpQkFBQTtFQUFtQixNQUFBO0FDT3JCOztBREpBOzs7RUFBQTtBQUtBO0VBQ0UsaUNBQUE7RUFBbUMsTUFBQTtFQUNuQyxjQUFBO0VBQWdCLE1BQUE7QUNRbEI7O0FETEE7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsNkJBQUE7QUNNRjs7QURIQTs7O0VBQUE7QUFLQTtFQUNFLG1CQUFBO0VBQXFCLE1BQUE7RUFDckIsMEJBQUE7RUFBNEIsTUFBQTtFQUM1Qix5Q0FBQTtVQUFBLGlDQUFBO0VBQW1DLE1BQUE7QUNRckM7O0FETEE7O0VBQUE7QUFJQTs7RUFFRSxtQkFBQTtBQ09GOztBREpBOzs7RUFBQTtBQUtBOzs7RUFHRSxpQ0FBQTtFQUFtQyxNQUFBO0VBQ25DLGNBQUE7RUFBZ0IsTUFBQTtBQ1FsQjs7QURMQTs7RUFBQTtBQUlBO0VBQ0UsY0FBQTtBQ09GOztBREpBOzs7RUFBQTtBQUtBOztFQUVFLGNBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSx3QkFBQTtBQ01GOztBREhBO0VBQ0UsZUFBQTtBQ01GOztBREhBO0VBQ0UsV0FBQTtBQ01GOztBREhBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFLGtCQUFBO0FDSUY7O0FEREE7K0VBQUE7QUFHQTs7O0VBQUE7QUFLQTs7Ozs7RUFLRSxvQkFBQTtFQUFzQixNQUFBO0VBQ3RCLGVBQUE7RUFBaUIsTUFBQTtFQUNqQixpQkFBQTtFQUFtQixNQUFBO0VBQ25CLFNBQUE7RUFBVyxNQUFBO0FDTWI7O0FESEE7OztFQUFBO0FBS0E7O0VBQ1EsTUFBQTtFQUNOLGlCQUFBO0FDTUY7O0FESEE7OztFQUFBO0FBS0E7O0VBQ1MsTUFBQTtFQUNQLG9CQUFBO0FDTUY7O0FESEE7O0VBQUE7QUFJQTs7OztFQUlFLDBCQUFBO0FDS0Y7O0FERkE7O0VBQUE7QUFJQTs7OztFQUlFLGtCQUFBO0VBQ0EsVUFBQTtBQ0lGOztBRERBOztFQUFBO0FBSUE7Ozs7RUFJRSw4QkFBQTtBQ0dGOztBREFBOztFQUFBO0FBSUE7RUFDRSw4QkFBQTtBQ0VGOztBRENBOzs7OztFQUFBO0FBT0E7RUFDRSxzQkFBQTtFQUF3QixNQUFBO0VBQ3hCLGNBQUE7RUFBZ0IsTUFBQTtFQUNoQixjQUFBO0VBQWdCLE1BQUE7RUFDaEIsZUFBQTtFQUFpQixNQUFBO0VBQ2pCLFVBQUE7RUFBWSxNQUFBO0VBQ1osbUJBQUE7RUFBcUIsTUFBQTtBQ092Qjs7QURKQTs7RUFBQTtBQUlBO0VBQ0Usd0JBQUE7QUNNRjs7QURIQTs7RUFBQTtBQUlBO0VBQ0UsY0FBQTtBQ0tGOztBREZBOzs7RUFBQTtBQUtBOztFQUVFLHNCQUFBO0VBQXdCLE1BQUE7RUFDeEIsVUFBQTtFQUFZLE1BQUE7QUNNZDs7QURIQTs7RUFBQTtBQUlBOztFQUVFLFlBQUE7QUNLRjs7QURGQTs7O0VBQUE7QUFLQTtFQUNFLDZCQUFBO0VBQStCLE1BQUE7RUFDL0Isb0JBQUE7RUFBc0IsTUFBQTtBQ014Qjs7QURIQTs7RUFBQTtBQUlBO0VBQ0Usd0JBQUE7QUNLRjs7QURGQTs7O0VBQUE7QUFLQTtFQUNFLDBCQUFBO0VBQTRCLE1BQUE7RUFDNUIsYUFBQTtFQUFlLE1BQUE7QUNNakI7O0FESEE7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsY0FBQTtBQ0lGOztBRERBOztFQUFBO0FBSUE7RUFDRSxrQkFBQTtBQ0dGOztBREFBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFLGFBQUE7QUNDRjs7QURFQTs7RUFBQTtBQUlBO0VBQ0UsYUFBQTtBQ0FGOztBQzNWQTs7OztHQUFBO0FBaUJBOzs7Q0FBQTtBQWVBO0VBQ0UseUJBekIwQjtFQTBCMUIseUJBekIwQjtFQTBCMUIscUJBekIwQjtFQTBCMUIscUJBekIwQjtFQTBCMUIsdUJBekJ5QjtFQTBCekIsNEJBekJ5QjtFQTBCekIsa0JBekJ5QjtBRGdXM0I7O0FFOVdBOztHQUFBO0FBS0E7O0dBQUE7QUEwQkE7O0dBQUE7QUMvQkE7Ozs7R0FBQTtBQVFBO0VBQ0UsdUJBQUE7RUFDQSx5Q0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7QUh1WEY7QUduWEE7RUFDRSx1QkFBQTtFQUNBLHNDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBSHFYRjtBR25YQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDdEJBOzs7O0dBQUE7QUFZQTtFQUpFLFdBQUE7RUFDQSxZQUFBO0FKMGNGOztBSTViQTtFQUxFLFdBQUE7RUFDQSxpQkZWVTtFRVdWLGNBQUE7QUpxY0Y7O0FJemFBO0VBbkJFLGdCRlp1QjtFRWF2Qix3QkFBQTtBSmdjRjtBSytFSTtFRDdmSjtJQWZJLGdCRmZ5QjtFRmdkM0I7QUFDRjtBSzBFSTtFRDdmSjtJQVhJLGdCRmxCcUI7RUZvZHZCO0FBQ0Y7QUtxRUk7RUQ3Zko7SUFQSSxnQkZyQnFCO0VGd2R2QjtBQUNGO0FLZ0VJO0VEN2ZKO0lBSEksZ0JGeEJzQjtFRjRkeEI7QUFDRjs7QUl6YUE7RUFuQkUsbUJGckN1QjtFRXNDdkIsd0JBQUE7QUpnY0Y7QUtzREk7RURwZUo7SUFmSSxtQkZ4Q3lCO0VGeWUzQjtBQUNGO0FLaURJO0VEcGVKO0lBWEksbUJGM0NxQjtFRjZldkI7QUFDRjtBSzRDSTtFRHBlSjtJQVBJLG1CRjlDcUI7RUZpZnZCO0FBQ0Y7QUt1Q0k7RURwZUo7SUFISSxtQkZqRHNCO0VGcWZ4QjtBQUNGOztBSXpiQTtFQXJERSxnQkZadUI7RUVhdkIsd0JBQUE7RUF3QkEsbUJGckN1QjtFRXNDdkIsd0JBQUE7QUoyZEY7QUsyQkk7RUQzZEo7SUFqREksZ0JGZnlCO0VGb2dCM0I7QUFDRjtBS3NCSTtFRDNkSjtJQTdDSSxnQkZsQnFCO0VGd2dCdkI7QUFDRjtBS2lCSTtFRDNkSjtJQXpDSSxnQkZyQnFCO0VGNGdCdkI7QUFDRjtBS1lJO0VEM2RKO0lBckNJLGdCRnhCc0I7RUZnaEJ4QjtBQUNGO0FLT0k7RUQzZEo7SUF4QkksbUJGeEN5QjtFRndoQjNCO0FBQ0Y7QUtFSTtFRDNkSjtJQXBCSSxtQkYzQ3FCO0VGNGhCdkI7QUFDRjtBS0hJO0VEM2RKO0lBaEJJLG1CRjlDcUI7RUZnaUJ2QjtBQUNGO0FLUkk7RUQzZEo7SUFaSSxtQkZqRHNCO0VGb2lCeEI7QUFDRjs7QUkxY0E7RUF4QkUsa0JGdkV1QjtFRXdFdkIsd0JBQUE7RUFDQSw0QkFBQTtBSnNlRjtBS25CSTtFRDdiSjtJQW5CSSxrQkYzRXlCO0lFNEV6Qiw0QkFBQTtFSnVlRjtBQUNGO0FLekJJO0VEN2JKO0lBZEksa0JGL0VxQjtJRWdGckIsNEJBQUE7RUp3ZUY7QUFDRjtBSy9CSTtFRDdiSjtJQVRJLGtCRm5GcUI7SUVvRnJCLDRCQUFBO0VKeWVGO0FBQ0Y7QUtyQ0k7RUQ3Yko7SUFKSSxrQkZ2RnNCO0lFd0Z0Qiw0QkFBQTtFSjBlRjtBQUNGOztBSTFjQTtFQXhCRSxpQkZyR3VCO0VFc0d2Qix3QkFBQTtFQUNBLDRCQUFBO0FKc2VGO0FLakRJO0VEL1pKO0lBbkJJLGlCRnpHeUI7SUUwR3pCLDRCQUFBO0VKdWVGO0FBQ0Y7QUt2REk7RUQvWko7SUFkSSxpQkY3R3FCO0lFOEdyQiw0QkFBQTtFSndlRjtBQUNGO0FLN0RJO0VEL1pKO0lBVEksaUJGakhxQjtJRWtIckIsNEJBQUE7RUp5ZUY7QUFDRjtBS25FSTtFRC9aSjtJQUpJLGlCRnJIc0I7SUVzSHRCLDRCQUFBO0VKMGVGO0FBQ0Y7O0FJcmNBO0VBN0JFLGlCRm5JdUI7RUVvSXZCLGtCRnBJdUI7RUVxSXZCLHdCQUFBO0VBQ0EsNEJBQUE7QUpzZUY7QUtoRkk7RUQ1WEo7SUF2QkksaUJGeEl5QjtJRXlJekIsa0JGekl5QjtJRTBJekIsNEJBQUE7RUp1ZUY7QUFDRjtBS3ZGSTtFRDVYSjtJQWpCSSxpQkY3SXFCO0lFOElyQixrQkY5SXFCO0lFK0lyQiw0QkFBQTtFSndlRjtBQUNGO0FLOUZJO0VENVhKO0lBWEksaUJGbEpxQjtJRW1KckIsa0JGbkpxQjtJRW9KckIsNkJBQUE7RUp5ZUY7QUFDRjtBS3JHSTtFRDVYSjtJQUxJLGlCRnZKc0I7SUV3SnRCLGtCRnhKc0I7SUV5SnRCLDZCQUFBO0VKMGVGO0FBQ0Y7O0FJL2NBO0VBbkJFLGlCRi9Kb0I7RUVnS3BCLHlCQUFBO0FKc2VGO0FLakhJO0VEbldKO0lBZkksaUJGbEtzQjtFRnlvQnhCO0FBQ0Y7QUt0SEk7RURuV0o7SUFYSSxpQkZyS2tCO0VGNm9CcEI7QUFDRjtBSzNISTtFRG5XSjtJQVBJLGlCRnhLa0I7RUZpcEJwQjtBQUNGO0FLaElJO0VEbldKO0lBSEksaUJGM0ttQjtFRnFwQnJCO0FBQ0Y7O0FJL2NBO0VBbkJFLG9CRnhMb0I7RUV5THBCLHlCQUFBO0FKc2VGO0FLMUlJO0VEMVVKO0lBZkksb0JGM0xzQjtFRmtxQnhCO0FBQ0Y7QUsvSUk7RUQxVUo7SUFYSSxvQkY5TGtCO0VGc3FCcEI7QUFDRjtBS3BKSTtFRDFVSjtJQVBJLG9CRmpNa0I7RUYwcUJwQjtBQUNGO0FLekpJO0VEMVVKO0lBSEksb0JGcE1tQjtFRjhxQnJCO0FBQ0Y7O0FJL2NBO0VBbkJFLGtCRnhOdUI7RUV5TnZCLHlCQUFBO0FKc2VGO0FLbktJO0VEalRKO0lBZkksa0JGM055QjtFRmtzQjNCO0FBQ0Y7QUt4S0k7RURqVEo7SUFYSSxrQkY5TnFCO0VGc3NCdkI7QUFDRjtBSzdLSTtFRGpUSjtJQVBJLGtCRmpPcUI7RUYwc0J2QjtBQUNGO0FLbExJO0VEalRKO0lBSEksa0JGcE9zQjtFRjhzQnhCO0FBQ0Y7O0FJL2NBO0VBbkJFLG1CRmpQdUI7RUVrUHZCLHlCQUFBO0FKc2VGO0FLNUxJO0VEeFJKO0lBZkksbUJGcFB5QjtFRjJ0QjNCO0FBQ0Y7QUtqTUk7RUR4Uko7SUFYSSxtQkZ2UHFCO0VGK3RCdkI7QUFDRjtBS3RNSTtFRHhSSjtJQVBJLG1CRjFQcUI7RUZtdUJ2QjtBQUNGO0FLM01JO0VEeFJKO0lBSEksbUJGN1BzQjtFRnV1QnhCO0FBQ0Y7O0FJL2RBO0VBdkdFLGlCRi9Kb0I7RUVnS3BCLHlCQUFBO0VBd0JBLG9CRnhMb0I7RUV5THBCLHlCQUFBO0FKbWpCRjtBS3ZOSTtFRC9RSjtJQW5HSSxpQkZsS3NCO0VGK3VCeEI7QUFDRjtBSzVOSTtFRC9RSjtJQS9GSSxpQkZyS2tCO0VGbXZCcEI7QUFDRjtBS2pPSTtFRC9RSjtJQTNGSSxpQkZ4S2tCO0VGdXZCcEI7QUFDRjtBS3RPSTtFRC9RSjtJQXZGSSxpQkYzS21CO0VGMnZCckI7QUFDRjtBSzNPSTtFRC9RSjtJQTFFSSxvQkYzTHNCO0VGbXdCeEI7QUFDRjtBS2hQSTtFRC9RSjtJQXRFSSxvQkY5TGtCO0VGdXdCcEI7QUFDRjtBS3JQSTtFRC9RSjtJQWxFSSxvQkZqTWtCO0VGMndCcEI7QUFDRjtBSzFQSTtFRC9RSjtJQTlESSxvQkZwTW1CO0VG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RUtxQ1gsa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0VBR0EsdUJBQUE7RUFFQSxrQ0FBQTtBUHkvQko7QU92L0JJO0VBQ0UseUJMZkc7QUZ3Z0NUO0FLemdCSTtFRS9mRjtJQW1CSSxjQUFBO0VQeS9CSjtBQUNGOztBT3IvQkU7RUhwREEsV0FBQTtFQUNBLGlCRlZVO0VFV1YsY0FBQTtFR29ERSxZTDNEaUI7RUs0RGpCLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFDQSwwQkFBQTtFQUNBLDZCQUFBO0VBQ0Esa0NBQUE7QVAwL0JKO0FLM2hCSTtFRXZlRjtJQWlCSSxZQUFBO0lBRUEsMEJBQUE7SUFDQSw2QkFBQTtFUG8vQko7QUFDRjs7QU9qL0JJO0VIMklGLGtCRnhOdUI7RUV5TnZCLHlCQUFBO0VHMUlJLGFBQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtFQUVBLFlMdkZlO0VLd0ZmLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7QVBvL0JOO0FLL2lCSTtFRS9jQTtJSCtJQSxrQkYzTnlCO0VGOGtDM0I7QUFDRjtBS3BqQkk7RUUvY0E7SUhtSkEsa0JGOU5xQjtFRmtsQ3ZCO0FBQ0Y7QUt6akJJO0VFL2NBO0lIdUpBLGtCRmpPcUI7RUZzbEN2QjtBQUNGO0FLOWpCSTtFRS9jQTtJSDJKQSxrQkZwT3NCO0VGMGxDeEI7QUFDRjtBS25rQkk7RUUvY0E7SUhzREYsaUJGbkl1QjtJRW9JdkIsa0JGcEl1QjtJRXFJdkIsd0JBQUE7SUFDQSw0QkFBQTtJR3pDTSxhTGhHYztJS2lHZCxZQUFBO0lBQ0EsZ0JMcEdPO0lLcUdQLFVBQUE7RVAwZ0NOO0FBQ0Y7QUsva0JJO0VFL2NBO0lINERBLGlCRnhJeUI7SUV5SXpCLGtCRnpJeUI7SUUwSXpCLDRCQUFBO0VKcytCRjtBQUNGO0FLdGxCSTtFRS9jQTtJSGtFQSxpQkY3SXFCO0lFOElyQixrQkY5SXFCO0lFK0lyQiw0QkFBQTtFSnUrQkY7QUFDRjtBSzdsQkk7RUUvY0E7SUh3RUEsaUJGbEpxQjtJ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R3JCLDRCQUFBO0VKMnRDRjtBQUNGO0FLaHpCSTtFRWhSQTtJSHhKQSxpQkZqSHFCO0lFa0hyQiw0QkFBQTtFSjR0Q0Y7QUFDRjtBS3R6Qkk7RUVoUkE7SUhuSkEsaUJGckhzQjtJRXNIdEIsNEJBQUE7RUo2dENGO0FBQ0Y7QUs1ekJJO0VFaFJBO0lIdkJBLG1CRnBQeUI7RUYyMUMzQjtBQUNGO0FLajBCSTtFRWhSQTtJSG5CQSxtQkZ2UHFCO0VGKzFDdkI7QUFDRjtBS3QwQkk7RUVoUkE7SUhmQSxtQkYxUHFCO0VGbTJDdkI7QUFDRjtBSzMwQkk7RUVoUkE7SUhYQSxtQkY3UHNCO0VGdTJDeEI7QUFDRjtBS2gxQkk7RUVoUkE7SUhoREEsa0JGM055QjtFRisyQzNCO0FBQ0Y7QUtyMUJJO0VFaFJBO0lINUNBLGtCRjlOcUI7RUZtM0N2QjtBQUNGO0FLMTFCSTtFRWhSQTtJSHhDQSxrQkZqT3FCO0VGdTNDdkI7QUFDRjtBSy8xQkk7RUVoUkE7SUhwQ0Esa0JGcE9zQjtFRjIzQ3hCO0FBQ0Y7O0FPcm1DSTtFQUNFLFdBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxTTG5TZTtFS29TZixhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0FQd21DTjtBT3RtQ007RUFDRSx5QkwzUUM7RUs0UUQscUNBQUE7QVB3bUNSO0FLbDNCSTtFRWpRQTtJQWVJLGtCQUFBO0lBQ0EsWUFBQTtJQUNBLGNBQUE7SUFFQSxpQkFBQTtJQUVBLFNBQUE7RVBzbUNOO0VPcG1DTTtJQUVFLGlCQUFBO0VQcW1DUjtBQUNGOztBT2xtQ007RUFDRSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxVQUFBO0VBQ0EsY0FBQTtBUHFtQ1I7QUsxNEJJO0VFcE9FO0lIbk5KLGlCRnJHdUI7SUVzR3ZCLHdCQUFBO0lBQ0EsNEJBQUE7SUEwSUEsbUJGalB1QjtJRWtQdkIseUJBQUE7SUExQkEsa0JGeE51QjtJRXlOdkIseUJBQUE7SUdvSFEsZUFBQTtJQUNBLFdBQUE7SUFNQSxPQUFBO0VQK2xDUjtBQUNGO0FLeDVCSTtFRXBPRTtJSDlNRixpQkZ6R3lCO0lFMEd6Qiw0QkFBQTtFSjgwQ0Y7QUFDRjtBSzk1Qkk7RUVwT0U7SUh6TUYsaUJGN0dxQjtJRThHckIsNEJBQUE7RUorMENGO0FBQ0Y7QUtwNkJJO0VFcE9FO0lIcE1GLGlCRmpIcUI7SUVrSHJCLDRCQUFBO0VKZzFDRjtBQUNGO0FLMTZCSTtFRXBPRTtJSC9MRixpQkZySHNCO0lFc0h0Qiw0QkFBQTtFSmkxQ0Y7QUFDRjtBS2g3Qkk7RUVwT0U7SUhuRUYsbUJGcFB5QjtFRis4QzNCO0FBQ0Y7QUtyN0JJO0VFcE9FO0lIL0RGLG1CRnZQcUI7RUZtOUN2QjtBQUNGO0FLMTdCSTtFRXBPRTtJSDNERixtQkYxUHFCO0VGdTlDdkI7QUFDRjtBSy83Qkk7RUVwT0U7SUh2REYsbUJGN1BzQjtFRjI5Q3hCO0FBQ0Y7QUtwOEJJO0VFcE9FO0lINUZGLGtCRjNOeUI7RUZtK0MzQjtBQUNGO0FLejhCSTtFRXBPRTtJSHhGRixrQkY5TnFCO0VGdStDdkI7QUFDRjtBSzk4Qkk7RUVwT0U7SUhwRkYsa0JGak9xQjtFRjIrQ3ZCO0FBQ0Y7QUtuOUJJO0VFcE9FO0lIaEZGLGtCRnBPc0I7RUYrK0N4QjtBQUNGO0FPdnBDUTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFQUVBLDZCQUFBO0VBQ0EsaUJBQUE7QVB3cENWO0FLbCtCSTtFRS9MSTtJQVlJLFdBQUE7SUFDQSxvQkFBQTtJQUdBLHFCQUFBO1NBQUEsZ0JBQUE7SUFDQSxpQkFBQTtJQUNBLHVCQUFBO0VQdXBDVjtBQUNGO0FPcnBDVTtFSGpJUixtQkZqUHVCO0VFa1B2Qix5QkFBQTtFQTFCQSxrQkZ4TnVCO0VFeU52Qix5QkFBQTtFRzJKVSxXQUFBO0VBQ0EsWUwxWEc7RUsyWEgsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdDQUFBO0VBQ0Esa0JBQUE7QVAwcENaO0FLdi9CSTtFRTFLTTtJSDdITixt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O0VFa1B2Qix5QkFBQTtFR3FXSSxXQUFBO0VBQ0EsWUw1bEJlO0VLNmxCZixhQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsVUFBQTtBUGl2Q047QUtuekNJO0VFd0RBO0lIL1ZBLG1CRnBQeUI7RUZrMUQzQjtBQUNGO0FLeHpDSTtFRXdEQTtJSDNWQSxtQkZ2UHFCO0VGczFEdkI7QUFDRjtBSzd6Q0k7RUV3REE7SUh2VkEsbUJGMVBxQjtFRjAxRHZCO0FBQ0Y7QUtsMENJO0VFd0RBO0lIblZBLG1CRjdQc0I7RUY4MUR4QjtBQUNGO0FLdjBDSTtFRXdEQTtJQWFJLFlMdG1CTztJS3VtQlAsZUFBQTtFUHN3Q047QUFDRjs7QU9wd0NNO0VBRUUsaUJBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFFQSxTQUFBO0VBSUEsYUFBQTtBUGt3Q1I7QU9od0NRO0VBQ0UsY0xubEJEO0FGcTFEVDtBS3gxQ0k7RUV5RUU7SUFxQkksWUwvbkJLO0lLa29CTCxhQUFBO0lBUUEsaUJBQUE7RVBxdkNSO0VPbnZDUTtJQUNFLGNMem1CSDtFRjgxRFA7RU9udkNVO0lBQ0UsV0FBQTtFUHF2Q1o7QUFDRjs7QU9odkNNO0VBQ0UsY0FBQTtFQUNBLGlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0FQbXZDUjtBT2p2Q1E7RUFDRSxjTHpuQkQ7QUY0MkRUO0FLLzJDSTtFRXFIRTtJQWVJLGlCQUFBO0VQK3VDUjtBQUNGO0FLcDNDSTtFRXFIRTtJQW1CSSxhQUFBO0VQZ3ZDUjtBQUNGOztBTzd1Q0k7RUhqckJGLFdBQUE7RUFDQSxZQUFBO0VHa3JCSSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsU0xqckJlO0VLa3JCZixPQUFBO0VBQ0EseUJMbHBCRztFS21wQkgsVUFBQTtFQUVBLHFDQUFBO0FQZ3ZDTjtBS3Q0Q0k7RUU0SUE7SUFhSSxTTDFyQk87RUYyNkRiO0FBQ0Y7QU8vdUNNO0VIdmNKLG1CRmpQdUI7RUVrUHZCLHlCQUFBO0VBMUJBLGtCRnhOdUI7RUV5TnZCLHlCQUFBO0FKb3RERjtBS2o1Q0k7RUU0SkU7SUhuY0YsbUJGcFB5QjtFRmc3RDNCO0FBQ0Y7QUt0NUNJO0VFNEpFO0lIL2JGLG1CRnZQcUI7RUZvN0R2QjtBQUNGO0FLMzVDSTtFRTRKRTtJSDNiRixtQkYxUHFCO0VGdzdEdkI7QUFDRjtBS2g2Q0k7RUU0SkU7SUh2YkYsbUJGN1BzQjtFRjQ3RHhCO0FBQ0Y7QUtyNkNJO0VFNEpFO0lINWRGLGtCRjNOeUI7RUZvOEQzQjtBQUNGO0FLMTZDSTtFRTRKRTtJSHhkRixrQkY5TnFCO0VGdzhEdkI7QUFDRjtBSy82Q0k7RUU0SkU7SUhwZEYsa0JGak9xQjtFRjQ4RHZCO0FBQ0Y7QUtwN0NJO0VFNEpFO0lIaGRGLGtCRnBPc0I7RUZnOUR4QjtBQUNGOztBUXQrREE7O0dBQUE7QUFJQTtFSmNFLFdBQUE7RUFDQSxpQkZWVTtFRVdWLGNBQUE7RUlkQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGFBQUE7RUFDQSwrQkFBQTtFQUNBLHdCQUFBO0FSMCtERjs7QVF2K0RFO0VBQ0UsWUFBQTtFQUNBLFVBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtBUjArREo7QVF4K0RJO0VBQ0UsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsY053Qkc7RU12QkgsY0FBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxhQUFBO0FSMCtETjtBUXYrREk7RUFDRSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsY0FBQTtFQUNBLHVCQUFBO0VBQ0EsY05TRztBRmcrRFQ7O0FRcitERTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7RUFDQSxjTkRLO0VNRUwsaUJBQUE7RUFDQSx5Qk5GTztFTUdQLGtDQUFBO0VBQ0EsNkJBQUE7RUFDQSwrQkFBQTtFQUNBLGdDQUFBO0VBQ0EsaUJBQUE7QVJ3K0RKO0FRdCtESTtFQUNFLHlCTlJPO0FGZy9EYjs7QVNuaUVBOztHQUFBO0FBS0E7RUFHRSxpQkFBQTtFQUNBLGVBQUE7QVRraUVGO0FLOS9DSTtFSXhpQko7SUxHRSxXQUFBO0lBQ0EsWUFBQTtJQXlQQSxtQkZqUHVCO0lFa1B2Qix5QkFBQTtJQTFCQSxrQkZ4TnVCO0lFeU52Qix5QkFBQTtJQW1KQSx5QkFBQTtJQUNBLDhpQkFBQTtFSndyREE7QUFDRjtBSzFnREk7RUl4aUJKO0lMaVFJLG1CRnBQeUI7RUZ5aUUzQjtBQUNGO0FLL2dESTtFSXhpQko7SUxxUUksbUJGdlBxQjtFRjZpRXZCO0FBQ0Y7QUtwaERJO0VJeGlCSjtJTHlRSSxtQkYxUHFCO0VGaWpFdkI7QUFDRjtBS3poREk7RUl4aUJKO0lMNlFJLG1CRjdQc0I7RUZxakV4QjtBQUNGO0FLOWhESTtFSXhpQko7SUx3T0ksa0JGM055QjtFRjZqRTNCO0FBQ0Y7QUtuaURJO0VJeGlCSjtJTDRPSSxrQkY5TnFCO0VGaWtFdkI7QUFDRjtBS3hpREk7RUl4aUJKO0lMZ1BJLGtCRmpPcUI7RUZxa0V2QjtBQUNGO0FLN2lESTtFSXhpQko7SUxvUEksa0JGcE9zQjtFRnlrRXhCO0FBQ0Y7O0FTM2tFRTtFQUNFLFlBQUE7RUFDQSxnQkFBQTtFTEpGLFdBQUE7RUFDQSxpQkZWVTtFRVdWLGNBQUE7RUtLRSxnQkFBQTtFQUNBLGFBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7RUFHQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSx1QkFBQTtFQUNBLG1DQUFBO0FUNmtFSjtBS2xrREk7RUl6aEJGO0lMcU5BLGtCRnhOdUI7SUV5TnZCLHlCQUFBO0lLcE1JLG1CQUFBO0lBQ0EsaUJBQUE7SUFDQSxpQkFBQTtJQUNBLG9CQUFBO0lBQ0EsMEJBQUE7SUFDQSxpQkFBQTtFVCtrRUo7QUFDRjtBSzlrREk7RUl6aEJGO0lMeU5FLGtCRjNOeUI7RUY2bUUzQjtBQUNGO0FLbmxESTtFSXpoQkY7SUw2TkUsa0JGOU5xQjtFRmluRXZCO0FBQ0Y7QUt4bERJO0VJemhCRjtJTGlPRSxrQkZqT3FCO0VGcW5FdkI7QUFDRjtBSzdsREk7RUl6aEJGO0lMcU9FLGtCRnBPc0I7RUZ5bkV4QjtBQUNGOztBU2ptRUk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFBQTtBQTJCRTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUFtQkU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQUFBO0FBa0RGO0VBQ0UsYUFBQTtFQUNBLDBCQUFBO0VBQ0Esd0JBQUE7QVQrbEVSO0FLbnNESTtFSS9aRTtJQU1JLDBCQUFBO0lBQ0Esd0JBQUE7RVRnbUVSO0FBQ0Y7O0FTN2xFTTtFQUNFLDhCQUFBO0VBQ0EsNkJBQUE7QVRnbUVSO0FLOXNESTtFSXBaRTtJQUtJLGdDQUFBO0lBQ0EsNEJBQUE7RVRpbUVSO0FBQ0Y7O0FTL2xFUTtFTHFCTixpQkYvSm9CO0VFZ0twQix5QkFBQTtFQXdCQSxvQkZ4TG9CO0VFeUxwQix5QkFBQTtFQWlEQSxtQkZqUHVCO0VFa1B2Qix5QkFBQTtFQTFCQSxrQkZ4TnVCO0VFeU52Qix5QkFBQTtFS3JFUSxXQUFBO0VBRUEscUJBQUE7RUFDQSxXQUFBO0VBRUEseUJQNUhEO0VPNkhDLGlCQUFBO0FUc21FVjtBS3B1REk7RUkzWUk7SUx5QkosaUJGbEtzQjtFRjR2RXhCO0FBQ0Y7QUt6dURJO0VJM1lJO0lMNkJKLGlCRnJLa0I7RUZnd0VwQjtBQUNGO0FLOXVESTtFSTNZSTtJTGlDSixpQkZ4S2tCO0VGb3dFcEI7QUFDRjtBS252REk7RUkzWUk7SUxxQ0osaUJGM0ttQjtFRnd3RXJCO0FBQ0Y7QUt4dkRJO0VJM1lJO0lMa0RKLG9CRjNMc0I7RUZneEV4QjtBQUNGO0FLN3ZESTtFSTNZSTtJTHNESixvQkY5TGtCO0VGb3hFcEI7QUFDRjtBS2x3REk7RUkzWUk7SUwwREosb0JGak1rQjtFRnd4RXBCO0FBQ0Y7QUt2d0RJO0VJM1lJO0lMOERKLG9CRnBNbUI7RUY0eEVyQjtBQUNGO0FLNXdESTtFSTNZSTtJTG9HSixtQkZwUHlCO0VGMnlFM0I7QUFDRjtBS2p4REk7RUkzWUk7SUx3R0osbUJGdlBxQjtFRit5RXZCO0FBQ0Y7QUt0eERJO0VJM1lJO0lMNEdKLG1CRjFQcUI7RUZtekV2QjtBQUNGO0FLM3hESTtFSTNZSTtJTGdISixtQkY3UHNCO0VGdXpFeEI7QUFDRjtBS2h5REk7RUkzWUk7SUwyRUosa0JGM055QjtFRit6RTNCO0FBQ0Y7QUtyeURJO0VJM1lJO0lMK0VKLGtCRjlOcUI7RUZtMEV2QjtBQUNGO0FLMXlESTtFSTNZSTtJTG1GSixrQkZqT3FCO0VGdTBFdkI7QUFDRjtBSy95REk7RUkzWUk7SUx1Rkosa0JGcE9zQjtFRjIwRXhCO0FBQ0Y7QUtwekRJO0VJM1lJO0lBWUksbUNBQUE7SUFDQSxxQkFBQTtJQUNBLFdBQUE7RVR1ckVWO0FBQ0Y7QVNyckVVO0VBQ0Usa0JBQUE7RUFDQSxtQkFBQTtFQUNBLGNBQUE7RUFFQSxpQkFBQTtFQUNBLGdCQUFBO0VBRUEsa0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdDQUFBO0FUcXJFWjtBS3IwREk7RUkxWE07SUFhSSxpQkFBQTtFVHNyRVo7QUFDRjtBU25yRVU7RUFDRSxnQkFBQTtFQUNBLG9CQUFBO0FUcXJFWjtBU25yRVk7RUFDRSxhQUFBO0FUcXJFZDtBU2pyRVU7RUFDRSxnQkFBQTtBVG1yRVo7QVNockVVO0VBQ0UsZ0JBQUE7QVRrckVaO0FTL3FFVTtFQUNFLGdCQUFBO0FUaXJFWjtBUzlxRVU7RUFDRSxnQkFBQTtBVGdyRVo7QVM3cUVVO0VBQ0UsbUJBQUE7QVQrcUVaO0FTN3FFWTtFQUNFLGdCQUFBO0FUK3FFZDtBUzNxRVU7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsNEJBQUE7QVQ2cUVaO0FTM3FFWTtFQUNFLG1CQUFBO0FUNnFFZDs7QVN6cUVVO0VMdk9SLFdBQUE7RUFDQSxZQUFBO0VLd09VLFdBQUE7QVQ2cUVaOztBUzNxRVk7RUxqT1YsV0FBQTtFQUNBLGlCRlZVO0VFV1YsY0FBQTtFQThPQSxtQkZqUHVCO0VFa1B2Qix5QkFBQTtFQTFCQSxrQkZ4TnVCO0VFeU52Qix5QkFBQTtFQW5EQSxpQkYvSm9CO0VFZ0twQix5QkFBQTtBSmt2RUY7QUs3M0RJO0VJMVRRO0lMbUJSLG1CRnBQeUI7RUY0NUUzQjtBQUNGO0FLbDRESTtFSTFUUTtJTHVCUixtQkZ2UHFCO0VGZzZFdkI7QUFDRjtBS3Y0REk7RUkxVFE7SUwyQlIsbUJGMVBxQjtFRm82RXZCO0FBQ0Y7QUs1NERJO0VJMVRRO0lMK0JSLG1CRjdQc0I7RUZ3NkV4QjtBQUNGO0FLajVESTtFSTFUUTtJTE5SLGtCRjNOeUI7RUZnN0UzQjtBQUNGO0FLdDVESTtFSTFUUTtJTEZSLGtCRjlOcUI7RUZvN0V2QjtBQUNGO0FLMzVESTtFSTFUUTtJTEVSLGtCRmpPcUI7RUZ3N0V2QjtBQUNGO0FLaDZESTtFSTFUUTtJTE1SLGtCRnBPc0I7RUY0N0V4QjtBQUNGO0FLcjZESTtFSTFUUTtJTHhEUixpQkZsS3NCO0VGNjdFeEI7QUFDRjtBSzE2REk7RUkxVFE7SUxwRFIsaUJGcktrQjtFRmk4RXBCO0FBQ0Y7QUsvNkRJO0VJMVRRO0lMaERSLGlCRnhLa0I7RUZxOEVwQjtBQUNGO0FLcDdESTtFSTFUUTtJTDVDUixpQkYzS21CO0VGeThFckI7QUFDRjs7QVMxdUVRO0VBQ0UsZ0JBQUE7QVQ2dUVWO0FLNzdESTtFSWpUSTtJQUlJLG9CQUFBO0VUOHVFVjtBQUNGOztBUzN1RVE7RUxwRE4sb0JGeExvQjtFRXlMcEIseUJBQUE7RUtxRFEsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtBVCt1RVY7QUsxOERJO0VJelNJO0lMaERKLG9CRjNMc0I7RUZrK0V4QjtBQUNGO0FLLzhESTtFSXpTSTtJTDVDSixvQkY5TGtCO0VGcytFcEI7QUFDRjtBS3A5REk7RUl6U0k7SUx4Q0osb0JGak1rQjtFRjArRXBCO0FBQ0Y7QUt6OURJO0VJelNJO0lMcENKLG9CRnBNbUI7RUY4K0VyQjtBQUNGO0FLOTlESTtFSXpTSTtJQU9JLHFCQUFBO0lBQ0EsV0FBQTtFVG93RVY7QUFDRjs7QVNqd0VBO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0FUb3dFRjtBSzErREk7RUk3Uko7SUFVSSxVQUFBO0lBQ0EsWUFBQTtJQUNBLGFBQUE7RVRpd0VGO0FBQ0Y7O0FTOXZFQTtFQUNFLFdBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtBVGl3RUY7QUt2L0RJO0VJN1FKO0lBVUksVUFBQTtJQUNBLFdBQUE7SUFDQSxhQUFBO0VUOHZFRjtBQUNGOztBU3h2RUk7RUFDRSxlQUFBO0VBQ0EsZUFBQTtFQUNBLFdBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGFBQUE7RUFDQSxjQUFBO0VBQ0EsdUJBQUE7RUFDQSwyQ0FBQTtBVDJ2RU47O0FTdHZFQTtFQUNFLHNCQUFBO0VBQ0EsYUFBQTtBVHl2RUY7QVN2dkVFO0VBQ0UsV0FBQTtBVHl2RUo7QVN0dkVFO0VBQ0UsZUFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0FUd3ZFSjtBS3hoRUk7RUlwT0Y7SUFPSSxpQkFBQTtFVHl2RUo7QUFDRjtBU3Z2RUk7RUFDRSxXQUFBO0FUeXZFTjtBUzd1RUU7RUFDRSxlQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QVQrdUVKO0FLdGlFSTtFSTdNRjtJQU9JLGtCQUFBO0VUZ3ZFSjtBQUNGO0FTOXVFSTtFQUNFLFdBQUE7QVRndkVOO0FTcHVFRTtFQUNFLFdBQUE7RUFDQSxpQkFBQTtBVHN1RUo7QVUvbEZBOztHQUFBO0FBS0E7RUFDRSxpQkFBQTtFQUNBLGVBQUE7QVYrbEZGO0FLempFSTtFS3hpQko7SU53WEUseUJBQUE7SUFDQSw4aUJBQUE7RUo2dUVBO0FBQ0Y7O0FVN2xGRTtFTkdBLFdBQUE7RUFDQSxpQkZWVTtFRVdWLGNBQUE7RUE0TEEsb0JGeExvQjtFRXlMcEIseUJBQUE7RU05TEUsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY1IwQks7RVF6QkwseUJSb0JLO0FGOGtGVDtBSzVrRUk7RUs5aEJGO0lOcU1FLG9CRjNMc0I7RUZvbUZ4QjtBQUNGO0FLamxFSTtFSzloQkY7SU55TUUsb0JGOUxrQjtFRndtRnBCO0FBQ0Y7QUt0bEVJO0VLOWhCRjtJTjZNRSxvQkZqTWtCO0VGNG1GcEI7QUFDRjtBSzNsRUk7RUs5aEJGO0lOaU5FLG9CRnBNbUI7RUZnbkZyQjtBQUNGO0FLaG1FSTtFSzloQkY7SUFXSSx1QkFBQTtFVnVuRko7QUFDRjs7QVVybkZJO0VOdUhGLGlCRm5JdUI7RUVvSXZCLGtCRnBJdUI7RUVxSXZCLHdCQUFBO0VBQ0EsNEJBQUE7RUEyR0EsbUJGalB1QjtFRWtQdkIseUJBQUE7RUExQkEsa0JGeE51QjtFRXlOdkIseUJBQUE7RU0xTUksb0JBQUE7QVY4bkZOO0FLam5FSTtFS2hoQkE7SU42SEEsaUJGeEl5QjtJRXlJekIsa0JGekl5QjtJRTBJekIsNEJBQUE7RUp3Z0ZGO0FBQ0Y7QUt4bkVJO0VLaGhCQTtJTm1JQSxpQkY3SXFCO0lFOElyQixrQkY5SXFCO0lFK0lyQiw0QkFBQTtFSnlnRkY7QUFDRjtBSy9uRUk7RUtoaEJBO0lOeUlBLGlCRmxKcUI7SUVtSnJCLGtCRm5KcUI7SUVvSnJCLDZCQUFBO0VKMGdGRjtBQUNGO0FLdG9FSTtFS2hoQkE7SU4rSUEsaUJGdkpzQjtJRXdKdEIsa0JGeEpzQjtJRXlKdEIsNkJBQUE7RUoyZ0ZGO0FBQ0Y7QUs3b0VJO0VLaGhCQTtJTnlPQSxtQkZwUHlCO0VGNHFGM0I7QUFDRjtBS2xwRUk7RUtoaEJBO0lONk9BLG1CRnZQcUI7RUZnckZ2QjtBQUNGO0FLdnBFSTtFS2hoQkE7SU5pUEEsbUJGMVBxQjtFRm9yRnZCO0FBQ0Y7QUs1cEVJO0VLaGhCQTtJTnFQQSxtQkY3UHNCO0VGd3JGeEI7QUFDRjtBS2pxRUk7RUtoaEJBO0lOZ05BLGtCRjNOeUI7RUZnc0YzQjtBQUNGO0FLdHFFSTtFS2hoQkE7SU5vTkEsa0JGOU5xQjtFRm9zRnZCO0FBQ0Y7QUszcUVJO0VLaGhCQTtJTndOQSxrQkZqT3FCO0VGd3NGdkI7QUFDRjtBS2hyRUk7RUtoaEJBO0lONE5BLGtCRnBPc0I7RUY0c0Z4QjtBQUNGO0FLcnJFSTtFS2hoQkE7SUFNSSxXQUFBO0lBQ0Esb0JBQUE7RVZtc0ZOO0FBQ0Y7QVVqc0ZNO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0FWbXNGUjtBS25zRUk7RUt0Z0JFO0lBU0ksV0FBQTtFVm9zRlI7QUFDRjtBVWxzRlE7RU4rTU4sbUJGalB1QjtFRWtQdkIseUJBQUE7RUExQkEsa0JGeE51QjtFRXlOdkIseUJBQUE7RU1yTFEsV0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0VBRUEsaUJBQUE7QVZzc0ZWO0FLcHRFSTtFSzFmSTtJTm1OSixtQkZwUHlCO0VGbXZGM0I7QUFDRjtBS3p0RUk7RUsxZkk7SU51TkosbUJGdlBxQjtFRnV2RnZCO0FBQ0Y7QUs5dEVJO0VLMWZJO0lOMk5KLG1CRjFQcUI7RUYydkZ2QjtBQUNGO0FLbnVFSTtFSzFmSTtJTitOSixtQkY3UHNCO0VGK3ZGeEI7QUFDRjtBS3h1RUk7RUsxZkk7SU4wTEosa0JGM055QjtFRnV3RjNCO0FBQ0Y7QUs3dUVJO0VLMWZJO0lOOExKLGtCRjlOcUI7RUYyd0Z2QjtBQUNGO0FLbHZFSTtFSzFmSTtJTmtNSixrQkZqT3FCO0VGK3dGdkI7QUFDRjtBS3Z2RUk7RUsxZkk7SU5zTUosa0JGcE9zQjtFRm14RnhCO0FBQ0Y7QUs1dkVJO0VLMWZJO0lBV0ksV0FBQTtJQUNBLGVBQUE7SUFDQSxVQUFBO0VWK3VGVjtFVTd1RlU7SUFDRSxZQUFBO0lBQ0EsY1JoQkc7SVFpQkgsa0JBQUE7SUFDQSxNQUFBO0lBQ0EsV0FBQTtFVit1Rlo7RVUxdUZZO0lBQ0UsV0FBQTtFVjR1RmQ7QUFDRjtBVXh1RlU7RUFDRSxXQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0EsZUFBQTtFQUNBLGNSekNIO0VRMENHLGtCQUFBO0VBQ0EsaUNBQUE7RUFDQSx5QkFBQTtFQUNBLGlCQUFBO0FWMHVGWjtBSzF4RUk7RUszZE07SUFjSSxpQkFBQTtJQUNBLFdBQUE7SUFFQSxnQkFBQTtFVjB1Rlo7QUFDRjs7QVVwdUZJO0VOMENGLGlCRm5JdUI7RUVvSXZCLGtCRnBJdUI7RUVxSXZCLHdCQUFBO0VBQ0EsNEJBQUE7RUEyR0EsbUJGalB1QjtFRWtQdkIseUJBQUE7RUExQkEsa0JGeE51QjtFRXlOdkIseUJBQUE7RU0zSEksZUFBQTtFQUVBLGtCQUFBO0FWMHVGTjtBSzl5RUk7RUtuY0E7SU5nREEsaUJGeEl5QjtJRXlJekIsa0JGekl5QjtJRTBJekIsNEJBQUE7RUpxc0ZGO0FBQ0Y7QUtyekVJO0VLbmNBO0lOc0RBLGlCRjdJcUI7SUU4SXJCLGtCRjlJcUI7SUUrSXJCLDRCQUFBO0VKc3NGRjtBQUNGO0FLNXpFSTtFS25jQTtJTjREQSxpQkZsSnFCO0lFbUpyQixrQkZuSnFCO0lFb0pyQiw2QkFBQTtFSnVzRkY7QUFDRjtBS24wRUk7RUtuY0E7SU5rRUEsaUJGdkpzQjtJRXdKdEIsa0JGeEpzQjtJRXlKdEIsNkJBQUE7RUp3c0ZGO0FBQ0Y7QUsxMEVJO0VLbmNBO0lONEpBLG1CRnBQeUI7RUZ5MkYzQjtBQUNGO0FLLzBFSTtFS25jQTtJTmdLQSxtQkZ2UHFCO0VGNjJGdkI7QUFDRjtBS3AxRUk7RUtuY0E7SU5vS0EsbUJGMVBxQjtFRmkzRnZCO0FBQ0Y7QUt6MUVJO0VLbmNBO0lOd0tBLG1CRjdQc0I7RUZxM0Z4QjtBQUNGO0FLOTFFSTtFS25jQTtJTm1JQSxrQkYzTnlCO0VGNjNGM0I7QUFDRjtBS24yRUk7RUtuY0E7SU51SUEsa0JGOU5xQjtFRmk0RnZCO0FBQ0Y7QUt4MkVJO0VLbmNBO0lOMklBLGtCRmpPcUI7RUZxNEZ2QjtBQUNGO0FLNzJFSTtFS25jQTtJTitJQSxrQkZwT3NCO0VGeTRGeEI7QUFDRjtBS2wzRUk7RUtuY0E7SUFVSSxnQkFBQTtJQUNBLFdBQUE7RVYreUZOO0FBQ0Y7O0FIejVGSTtFQUNFLGVBQUE7RUFDQSxlQUFBO0VBQ0EsV0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLDJDQUFBO0FHNDVGTjs7QUh0NUZBO0VBQ0UsYUFBQTtFQUNBLDBCQUFBO0VBQ0EseUJBQUE7QUd5NUZGO0FLMTRFSTtFUmxoQko7SUFNSSw4QkFBQTtJQUNBLG9CQUFBO0lBQ0EsbUJBQUE7RUcwNUZGO0FBQ0Y7QUtqNUVJO0VSbGhCSjtJQVlJLHNDQUFBO0lBQ0Esb0JBQUE7SUFDQSxtQkFBQTtFRzI1RkY7QUFDRjs7QUh6NUZFO0VBQ0UsbUJBQUE7RUFDQSxhQUFBO0VBQ0EseUJLRU87QUYwNUZYO0FIejVGSTtFQUNFLGNBQUE7RUFDQSxhQUFBO0VBQ0EseUJBQUE7QUcyNUZOO0FIeDVGSTtFQUNFLHFCQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsY0taRztBRnM2RlQiLCJmaWxlIjoiYm9va3MuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gICogUEFHRS1TUEVDSUZJQyBTVFlMRVNIRUVUOiBib29rc1xuICAqXG4gICogSW1wb3J0IGNvbW1vbiBzdHlsZXMgYW5kIGhvdXNlIHBhZ2Utc3BlY2lmaWMgc3R5bGVzIGZvciBwYWdlOiBcImJvb2tzXCIuXG4gICovXG5cbkBpbXBvcnQgJ19jb21tb24nOyAvLyBjb21tb24gc3R5bGVzXG5cbi5wYWdlLW1haW4ge1xuXG4gIHAge1xuXG4gICAgJjpmaXJzdC1vZi10eXBlOjpmaXJzdC1sZXR0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiB1bnNldDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICBmb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuICAgIH1cbiAgfVxufVxuXG5cbi5ib29rcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWF1dG8tcm93czogYXV0byBhdXRvO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0OCUgNDglO1xuICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIyJSAyMiUgMjIlIDIyJTtcbiAgICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgICBncmlkLWNvbHVtbi1nYXA6IDQlO1xuICB9XG59XG4gIC5ib29rIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuICAgIC8vYm9yZGVyOiAycHggc29saWQgJGJsYWNrO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgbWFyZ2luOiAwIDEwJTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAuYm9vay10aXRsZSB7XG4gICAgICBtYXJnaW46IDEwcHggMCAyNXB4IDA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuIiwiLyoqXG4gICogQ09NTU9OIFNUWUxFU1xuICAqXG4gICogRGVmaW5lcyB0aGUgc3R5bGVzIHRvIGltcG9ydCB0aGF0IGFyZSByZXF1aXJlZCBieSB2aXJ0dWFsbHkgYWxsIHBhZ2VzLlxuICAqL1xuXG5cbi8vIGltcG9ydCBsaWJyYXJpZXM6XG5AaW1wb3J0ICdsaWJyYXJpZXMvX2luY2x1ZGUtbWVkaWEuc2Nzcyc7IC8vIFwiSW5jbHVkZS1NZWRpYVwiIG1lZGlhIHF1ZXJ5IGxpYnJhcnkgKHByb3ZpZGVzIGJyZWFrcG9pbnQgZnVuY3Rpb25hbGl0eSBmb3IgcmVzcG9uc2l2ZSBkZXNpZ24pXG5AaW1wb3J0ICdsaWJyYXJpZXMvX25vcm1hbGl6ZS5zY3NzJzsgICAgIC8vIFwiTm9ybWFsaXplXCIgY3NzIHJlc2V0IGxpYnJhcnlcblxuLy8gZ2xvYmFsIHN0eWxlcyBhbmQgZGVwZW5kZW5jaWVzOlxuQGltcG9ydCAncGFydGlhbHMvX2JyZWFrcG9pbnRzLm1vZHVsZXMnOyAgLy8gYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgbWVkaWEgcXVlcnkgdXNlXG5AaW1wb3J0ICdwYXJ0aWFscy9fdmFyaWFibGVzJzsgICAgICAgICAgICAvLyBnZW5lcmFsIHZhcmlhYmxlIGRlZmluaXRpb25zIChjb2xvcnMsIGRpbWVuc2lvbnMsIGV0Yy4pXG5AaW1wb3J0ICdwYXJ0aWFscy9fZm9udHMnOyAgICAgICAgICAgICAgICAvLyBAZm9udC1mYWNlIGRlZmluaXRpb25zXG5AaW1wb3J0ICdwYXJ0aWFscy9fbWl4aW5zJzsgICAgICAgICAgICAgICAvLyBtaXhpbiBhbmQgYXNzb2NpYXRlZCBjbGFzcyBkZWZpbml0aW9uc1xuQGltcG9ydCAncGFydGlhbHMvX2VsZW1lbnRzJzsgICAgICAgICAgICAgLy8gZ2xvYmFsIGVsZW1lbnQgc2VsZWN0b3Igc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9faGVhZGVyJzsgICAgICAgICAgICAgICAvLyBoZWFkZXIgc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9fc2VhcmNoZm9ybSc7ICAgICAgICAgICAvLyBzZWFyY2ggZm9ybSBzdHlsZXNcbkBpbXBvcnQgJ3BhcnRpYWxzL19jb250ZW50JzsgICAgICAgICAgICAgIC8vIGNvbnRlbnQgc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9fZm9vdGVyJzsgICAgICAgICAgICAgICAvLyBmb290ZXIgc3R5bGVzXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyoqXG4gICogUEFHRS1TUEVDSUZJQyBTVFlMRVNIRUVUOiBib29rc1xuICAqXG4gICogSW1wb3J0IGNvbW1vbiBzdHlsZXMgYW5kIGhvdXNlIHBhZ2Utc3BlY2lmaWMgc3R5bGVzIGZvciBwYWdlOiBcImJvb2tzXCIuXG4gICovXG4vKipcbiAgKiBDT01NT04gU1RZTEVTXG4gICpcbiAgKiBEZWZpbmVzIHRoZSBzdHlsZXMgdG8gaW1wb3J0IHRoYXQgYXJlIHJlcXVpcmVkIGJ5IHZpcnR1YWxseSBhbGwgcGFnZXMuXG4gICovXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICAqIEJSRUFLUE9JTlRTXG4gICpcbiAgKiBEZWZpbmUgYnJlYWtwb2ludHMgZm9yIG1lZGlhIHF1ZXJ5IHVzZSBhbmQgZXhwb3J0IHRoZW0gZm9yIHVzZSB3aXRoIEpTLlxuICAqL1xuLypcbmV4YW1wbGUgdXNhZ2U6XG5AaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtc21hbGxcIikgey4uLn1cbiovXG46ZXhwb3J0IHtcbiAgYnJlYWtwb2ludFBob25lU21hbGw6IDMyMDtcbiAgYnJlYWtwb2ludFBob25lTGFyZ2U6IDQ4MDtcbiAgYnJlYWtwb2ludFRhYmxldDogNzY4O1xuICBicmVha3BvaW50TGFwdG9wOiA5OTI7XG4gIGJyZWFrcG9pbnREZXNrdG9wOiAxMjAwO1xuICBicmVha3BvaW50RGVza3RvcExhcmdlOiAxNDAwO1xuICBicmVha3BvaW50SGQ6IDE5MjA7XG59XG5cbi8qKlxuICAqIFZBUklBQkxFU1xuICAqL1xuLyoqXG4gICogRGltZW5zaW9uczpcbiAgKi9cbi8qKlxuICAqIENvbG9yczpcbiAgKi9cbi8qKlxuICAqIEZPTlRTXG4gICpcbiAgKiBEZWZpbmUgQGZvbnQtZmFjZSBzdHlsZXMuXG4gICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBBbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gQm9sZDtcbiAgLy9zcmM6IHVybCguLi9mb250cy9Nb250c2VycmF0LUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cblxuZm9udC1mYW1pbHk6IGx0Yy1nb3VkeS1vcm5hdGUsIHNhbnMtc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA0MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gQm9sZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNzAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkIEl0YWxpY1xuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNzAwO1xuXG5mb250LXN0eWxlOiBpdGFsaWM7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBMaWdodFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogMzAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBMaWdodCBJdGFsaWNcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDMwMDtcblxuZm9udC1zdHlsZTogaXRhbGljO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gQm9sZCBDb25kZW5zZWRcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLWNvbmQsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNzAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBMaWdodCBDb25kZW5zZWRcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLWNvbmQsIHNlcmlmO1xuXG5mb250LXdlaWdodDogMzAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG4qL1xuLyoqXG4gICogTUlYSU5TXG4gICpcbiAgKiBTdGFuZGFyZGl6ZWQgc3R5bGUgY2h1bmtzLCBwcm92aWRlZCBhcyBib3RoIFNDU1MgbWl4aW5zIGFuZCBIVE1MIGNsYXNzZXMuXG4gICovXG4ud3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbm5lci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLm1hci10b3Age1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci10b3Age1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItdG9wIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItdG9wIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG59XG5cbi5tYXItYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4ubWFyLWhvcml6b250YWwge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4ubWFyLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjVweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogNjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICB9XG59XG5cbi5tYXItbGVmdCB7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDI1cHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxufVxuXG4ubWFyLWhvcml6b250YWwge1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgIG1hcmdpbi1yaWdodDogNjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEyMHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE2MHB4KTtcbiAgfVxufVxuXG4ucGFkLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cblxuLnBhZC1ib3R0b20ge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFkLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5cbi5wYWQtbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cblxuLnBhZC1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cblxuLnBhZC12ZXJ0aWNhbCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtdmVydGljYWwge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtdmVydGljYWwge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIH1cbn1cblxuLnBhZC1ob3Jpem9udGFsIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLWhvcml6b250YWwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLWhvcml6b250YWwge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cblxuLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qXG5AbWl4aW4gY2F0ZWdvcnkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy8gL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDYyNWVtO1xufVxuXG4uY2F0ZWdvcnkge1xuICBAaW5jbHVkZSBjYXRlZ29yeTtcbn1cblxuQG1peGluIHRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICAvL2ZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNjI1ZW07XG5cbiAgJjpob3ZlciB7XG4gICAgLy90ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG4udGl0bGUge1xuICBAaW5jbHVkZSB0aXRsZTtcbn1cblxuQG1peGluIHRhZyB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogJG1lZGl1bURhcmtHcmF5O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDQyNWVtO1xufVxuXG4udGFnIHtcbiAgQGluY2x1ZGUgdGFnO1xufVxuKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLm5vLXNjcm9sbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qKlxuICAqIEVMRU1FTlQgU1RZTEVTXG4gICpcbiAgKiBTdHlsZSBkZWZpbml0aW9ucyBmb3IgZ2xvYmFsIGVsZW1lbnQgc2VsZWN0b3JzLlxuICAqL1xuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbn1cblxuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnIgYXV0bztcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjb2xvcjogIzIyMjtcbiAgZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6IHF1ZXN0YS1ncmFuZGUsIHNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuaDEge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xufVxuXG5oMiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuM3JlbTtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OTA5ZW07XG59XG5cbmgzIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU5MDllbTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG5cbmg0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbmg1IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbnAge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogcmdiKDEsIDM4LCAxNzApO1xufVxudWwsIG9sIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG59XG5cbi8qIGJlZ2luIGJ1dHRvbiBzdHlsZXMgKi9cbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyogZW5kIGJ1dHRvbiBzdHlsZXMgKi9cbi8qKlxuICAqIEhFQURFUiBTVFlMRVNcbiAgKi9cbi5oZWFkZXItd3JhcCB7XG4gIGhlaWdodDogYXV0bztcbiAgZ3JpZC1yb3ctc3RhcnQ6IDE7XG4gIGdyaWQtcm93LWVuZDogMjtcbiAgei1pbmRleDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZWRlODtcbn1cbi5oZWFkZXItd3JhcC5iZy12aXNpYmxlIHtcbiAgei1pbmRleDogOTk5OTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLXdyYXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZlZWU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCAwJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDAuMSUgMC4yJSwgdHJhbnNwYXJlbnQgMC4yJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDAuNCUgMC41JSwgdHJhbnNwYXJlbnQgMC41JSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDEuMiUgMS4zJSwgdHJhbnNwYXJlbnQgMS4zJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDMuMyUgMy40JSwgdHJhbnNwYXJlbnQgMy40JSAyMCUsIHJnYmEoMTc5LCAxNzksIDE3OSwgMC42KSA1MCUsIHJnYmEoMTAyLCAxMDIsIDEwMiwgMC43KSA2NyUsIHJnYmEoNzcsIDc3LCA3NywgMC44KSA2OSUsIHJnYmEoNTEsIDUxLCA1MSwgMC45KSA2OS45NSUsIHJnYmEoMjYsIDI2LCAyNiwgMC45KSA3MCUsIHJnYmEoNTEsIDUxLCA1MSwgMC42KSA3MC4wNSUsIHJnYmEoNzcsIDc3LCA3NywgMC42KSA3MSUsIHJnYmEoMTAyLCAxMDIsIDEwMiwgMC42KSA3MyUsIHJnYmEoMTc5LCAxNzksIDE3OSwgMC42KSA5MCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICB9XG4gIC5oZWFkZXItd3JhcC5iZy12aXNpYmxlIHtcbiAgICB6LWluZGV4OiAwO1xuICB9XG59XG5cbi5oZWFkZXItb3ZlcmxheSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMSwgMzgsIDE3MCk7XG4gIG9wYWNpdHk6IDAuNztcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRvcC1iYXItYmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG59XG4udG9wLWJhci1iZy5iZy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLWJhci1iZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmhlYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGhlaWdodDogOTBweDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogOTBweCBhdXRvO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgfVxufVxuXG4uaGVhZGVyLWJyYW5kIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBoZWlnaHQ6IDkwcHg7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDEvc3BhbiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1icmFuZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1icmFuZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1icmFuZCB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1icmFuZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1icmFuZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTYwcHgpO1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEge1xuICBtYXgtd2lkdGg6IDQyMHB4O1xuICBoZWlnaHQ6IDkwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMDAwO1xuICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIGJvcmRlci1ib3R0b206IHVuc2V0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSB7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjMDAwMDAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIHtcbiAgICBtYXgtd2lkdGg6IDUyMHB4O1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMC45O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBxdWVzdGEtZ3JhbmRlLCBzZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy4xcmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy44cmVtO1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRhZ2xpbmUge1xuICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xuICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC1mYW1pbHk6IHF1ZXN0YS1ncmFuZGUsIHNlcmlmO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRhZ2xpbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cblxuLmxvZ28ge1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiBhdXRvO1xuICBib3R0b206IGF1dG87XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubG9nbyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5sb2dvIHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxvZ28ge1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmxvZ28ge1xuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubG9nbyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA5MCU7XG4gICAgcmlnaHQ6IDMwcHg7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxvZ28ge1xuICAgIHJpZ2h0OiAxMDBweDtcbiAgfVxufVxuXG4udGFibGUtb2YtY29udGVudHMge1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBxdWVzdGEtZ3JhbmRlLCBzZXJpZjtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC50YWJsZS1vZi1jb250ZW50cyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50YWJsZS1vZi1jb250ZW50cyB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50YWJsZS1vZi1jb250ZW50cyB7XG4gICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50YWJsZS1vZi1jb250ZW50cyB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50YWJsZS1vZi1jb250ZW50cyB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5cbi5oZWFkZXItbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDkwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDEwO1xufVxuLmhlYWRlci1uYXYuYmctdmlzaWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGVkZTg7XG4gIGJveC1zaGFkb3c6IDBweCA1cHggMTBweCAtNXB4ICMwMDAwMDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG4gIC5oZWFkZXItbmF2LmJnLXZpc2libGUge1xuICAgIGJveC1zaGFkb3c6IHVuc2V0O1xuICB9XG59XG5cbi5tYWluLW5hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgdG9wOiBhdXRvO1xuICByaWdodDogYXV0bztcbiAgei1pbmRleDogNTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYWluLW5hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFpbi1uYXYge1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFpbi1uYXYge1xuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYWluLW5hdiB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFpbi1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFpbi1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYWluLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1haW4tbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFpbi1uYXYge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuLm1haW4tbmF2IHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM4ODg4ODg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB1bCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgY29sdW1uLWdhcDogMTBweDtcbiAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3JkZXItdG9wOiB1bnNldDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4ODg4ODg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICB0cmFuc2l0aW9uOiBkaXNwbGF5IDMwMG1zO1xuICB9XG4gIC5tYWluLW5hdiB1bCBsaTpob3ZlciA+IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIGEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LWZhbWlseTogcXVlc3RhLWdyYW5kZSwgc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkgYSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIC5uYXYtY2hldnJvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIC5uYXYtY2hldnJvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIHVsIHtcbiAgd2lkdGg6IDIyNXB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2MnB4O1xuICByaWdodDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZWZlZmU7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWw6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICNlMGUwZTA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xMnB4O1xuICByaWdodDogLTFweDtcbiAgei1pbmRleDogMTAwMTtcbn1cbi5tYWluLW5hdiB1bCBsaSB1bCBsaSB7XG4gIHdpZHRoOiAyMjVweDtcbiAgaGVpZ2h0OiAzNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZWZlZmU7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGk6bnRoLWNoaWxkKDEpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5OTk5OTk7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGk6bnRoLWNoaWxkKDIpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZWZlZmU7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGk6bnRoLWNoaWxkKDMpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZWZlZmU7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGk6bnRoLWNoaWxkKDQpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZWZlZmU7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGkgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM1cHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnRvcC1uYXYge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB6LWluZGV4OiA2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRvcC1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA2O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAudG9wLW5hdiB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRvcC1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50b3AtbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRvcC1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC50b3AtbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50b3AtbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudG9wLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG4udG9wLW5hdiB1bCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvbHVtbi1nYXA6IDMwcHg7XG4gIGZsZXgtZmxvdzogY29sdW1uO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtbmF2IHVsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlO1xuICB9XG59XG4udG9wLW5hdiB1bCBsaSB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4ODg4ODg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAudG9wLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRvcC1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRvcC1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAudG9wLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRvcC1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50b3AtbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRvcC1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtbmF2IHVsIGxpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgfVxufVxuLnRvcC1uYXYgdWwgbGkgYSB7XG4gIGhlaWdodDogNDVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLW5hdiB1bCBsaSBhIHtcbiAgICBjb2xvcjogcmdiKDIzNywgMjA1LCA0NCk7XG4gIH1cbn1cbi5zbGlkZS1saW5lIHtcbiAgaGVpZ2h0OiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5cbi5oZWFkZXItYnV0dG9ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDkwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogNjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1idXR0b25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1idXR0b25zIHtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5nbGFzcyB7XG4gIHBhZGRpbmc6IDhweCAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0b3A6IGF1dG87XG4gIGJvcmRlcjogdW5zZXQ7XG59XG4uZ2xhc3MgaSB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5nbGFzcyB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGJvcmRlcjogdW5zZXQ7XG4gICAgcGFkZGluZzogOHB4IDE1cHg7XG4gIH1cbiAgLmdsYXNzIGkge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG4gIC5nbGFzcyBpOmhvdmVyIHtcbiAgICBjb2xvcjogI2FhYTtcbiAgfVxufVxuXG4uYnVyZ2VyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDhweCAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmJ1cmdlciBpIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMzQwcHgpIHtcbiAgLmJ1cmdlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zaXRlLXNlYXJjaC13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOTBweDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgei1pbmRleDogNjtcbiAgYm94LXNoYWRvdzogMHB4IDJweCAxMHB4IC0ycHggIzAwMDAwMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCB7XG4gICAgdG9wOiA0NXB4O1xuICB9XG59XG4uc2l0ZS1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4vKipcbiAgKiBTSVRFIFNFQVJDSCBGT1JNIFNUWUxFU1xuICAqL1xuLnNpdGUtc2VhcmNoIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAzNXB4IDA7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDUwcHg7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbn1cblxuLnNlYXJjaC1xdWVyeSB7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMDtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMTtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLnNlYXJjaC1xdWVyeSBsYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzBweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNlYXJjaC1xdWVyeSBpbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDAwMDAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uc2VhcmNoLXN1Ym1pdCB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGdyaWQtY29sdW1uOiAyL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDE7XG4gIGFsaWduLXNlbGY6IHN0YXJ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzAwMDAwMDtcbiAgbGluZS1oZWlnaHQ6IDUwcHg7XG59XG4uc2VhcmNoLXN1Ym1pdDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGUwZTA7XG59XG5cbi8qKlxuICAqIENPTlRFTlQgU1RZTEVTXG4gICovXG4ubWFpbi13cmFwIHtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDI7XG4gIGdyaWQtcm93LWVuZDogMztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi13cmFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZlZWU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCAwJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDAuMSUgMC4yJSwgdHJhbnNwYXJlbnQgMC4yJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDAuNCUgMC41JSwgdHJhbnNwYXJlbnQgMC41JSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDEuMiUgMS4zJSwgdHJhbnNwYXJlbnQgMS4zJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDMuMyUgMy40JSwgdHJhbnNwYXJlbnQgMy40JSAyMCUsIHJnYmEoMTc5LCAxNzksIDE3OSwgMC42KSA1MCUsIHJnYmEoMTAyLCAxMDIsIDEwMiwgMC43KSA2NyUsIHJnYmEoNzcsIDc3LCA3NywgMC44KSA2OSUsIHJnYmEoNTEsIDUxLCA1MSwgMC45KSA2OS45NSUsIHJnYmEoMjYsIDI2LCAyNiwgMC45KSA3MCUsIHJnYmEoNTEsIDUxLCA1MSwgMC42KSA3MC4wNSUsIHJnYmEoNzcsIDc3LCA3NywgMC42KSA3MSUsIHJnYmEoMTAyLCAxMDIsIDEwMiwgMC42KSA3MyUsIHJnYmEoMTc5LCAxNzksIDE3OSwgMC42KSA5MCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFpbi13cmFwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi13cmFwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFpbi13cmFwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1haW4td3JhcCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1haW4td3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi13cmFwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYWluLXdyYXAge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYWluLXdyYXAge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4ubWFpbiB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICBib3gtc2hhZG93OiA1cHggMCAxNXB4IC03cHggIzAwMDAwMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC41ZGVnKTtcbiAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1haW4ge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4ge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1haW4ge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYWluIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cblxuLyoucGFnZS1oZWFkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgODAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IHNjcmVlbjtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAvL21pbi1oZWlnaHQ6IDI1MHB4O1xuICB9XG59XG4gIC5wYWdlLWhlYWRlci1vdmVybGF5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KGRhcmtlbigkdHJhbnNHcmF5LCA0MCUpLCBkYXJrZW4oJHRyYW5zR3JheSwgMjAlKSk7XG4gICAgb3BhY2l0eTogMC43O1xuICAgIC8vYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgfSovXG4vKi5wYWdlLWhlYWRlci1ib3gtd3JhcCB7XG4gIC8vQGluY2x1ZGUgaW5uZXItd3JhcDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHRNb2JpbGUgKyAkc3BhY2VyUGFkZGluZ1RhYmxldCk7XG4gIC8vcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIC8vQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgLy9wYWRkaW5nLXRvcDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCArICRzcGFjZXJQYWRkaW5nRGVza3RvcCk7Ly9cbiAgICAvL2hlaWdodDogYXV0bztcblxuICAgIC8vZGlzcGxheTogbm9uZTtcbiAgfVxufSovXG4vKi5wYWdlLWhlYWRlci1ib3gge1xuICBAaW5jbHVkZSBwYWQtdG9wO1xuICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgLy9AaW5jbHVkZSBwYWQtYm90dG9tO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvL3BhZGRpbmc6IDQwcHggMzBweDtcbiAgLy9wYWRkaW5nLXRvcDogY2FsYygkaGVhZGVySGVpZ2h0TW9iaWxlICsgJHNwYWNlclBhZGRpbmdUYWJsZXQpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgLy93aWR0aDogNjclO1xuICAgIC8vd2lkdGg6IDEwMCU7XG4gICAgLy9wYWRkaW5nLXRvcDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCArICRzcGFjZXJQYWRkaW5nRGVza3RvcCk7XG4gIH1cblxuICBoMSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy9jb2xvcjogJG9mZldoaXRlO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgLy9wYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYmxhY2s7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogJG9mZldoaXRlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG4gIH1cbn0qL1xuLnBhZ2UtY29udGVudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICB9XG59XG5cbi5wYWdlLWNvbnRlbnQuc2lkZSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtY29udGVudC5zaWRlIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAzMjBweDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMHB4O1xuICB9XG59XG5cbi5wYWdlLW1haW4ge1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIGJveC1zaGFkb3c6IDVweCAwIDIwcHggLTdweCAjMDAwMDAwO1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgICBncmlkLXJvdzogMTtcbiAgfVxufVxuLnBhZ2UtbWFpbiBoMSB7XG4gIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgcGFkZGluZzogMCAwIDMwcHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMwMDAwMDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbiBoMSB7XG4gICAgZm9udC1zaXplOiAyLjhyZW07XG4gIH1cbn1cbi5wYWdlLW1haW4gaDIge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cbi5wYWdlLW1haW4gaDI6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ucGFnZS1tYWluIGgzIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5wYWdlLW1haW4gaDQge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuLnBhZ2UtbWFpbiBoNSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4ucGFnZS1tYWluIGg2IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5wYWdlLW1haW4gcCB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG4ucGFnZS1tYWluIHA6bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5wYWdlLW1haW4gdWwge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG59XG4ucGFnZS1tYWluIHVsIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnBhZ2Utc2VjdGlvbi13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYWdlLXNlY3Rpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuXG4uc2lkZSAucGFnZS1tYWluIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2lkZSAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgfVxufVxuXG4ucGFnZS1zaWRlYmFyIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHdpZHRoOiAxMDAlO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiAxO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIGdyaWQtY29sdW1uOiAyL3NwYW4gMTtcbiAgICBncmlkLXJvdzogMTtcbiAgfVxufVxuXG4uYWxpZ25yaWdodCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbm9uZTtcbiAgcGFkZGluZzogMjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWxpZ25yaWdodCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxufVxuXG4uYWxpZ25sZWZ0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBub25lO1xuICBwYWRkaW5nOiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hbGlnbmxlZnQge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxufVxuXG4uc2luZ2xlIHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogdW5zZXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcbn1cblxuZmlndXJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgcGFkZGluZzogMjBweDtcbn1cbmZpZ3VyZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbmZpZ3VyZS5hbGlnbnJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGZpZ3VyZS5hbGlnbnJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgfVxufVxuZmlndXJlLmFsaWducmlnaHQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5maWd1cmUuYWxpZ25sZWZ0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGZpZ3VyZS5hbGlnbmxlZnQge1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgfVxufVxuZmlndXJlLmFsaWdubGVmdCBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbmZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuLyoqXG4gICogRk9PVEVSIFNUWUxFU1xuICAqL1xuLmZvb3Rlci13cmFwIHtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDM7XG4gIGdyaWQtcm93LWVuZDogNDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLXdyYXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZlZWU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCAwJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDAuMSUgMC4yJSwgdHJhbnNwYXJlbnQgMC4yJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDAuNCUgMC41JSwgdHJhbnNwYXJlbnQgMC41JSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDEuMiUgMS4zJSwgdHJhbnNwYXJlbnQgMS4zJSwgcmdiYSgxNzksIDE3OSwgMTc5LCAwLjYpIDMuMyUgMy40JSwgdHJhbnNwYXJlbnQgMy40JSAyMCUsIHJnYmEoMTc5LCAxNzksIDE3OSwgMC42KSA1MCUsIHJnYmEoMTAyLCAxMDIsIDEwMiwgMC43KSA2NyUsIHJnYmEoNzcsIDc3LCA3NywgMC44KSA2OSUsIHJnYmEoNTEsIDUxLCA1MSwgMC45KSA2OS45NSUsIHJnYmEoMjYsIDI2LCAyNiwgMC45KSA3MCUsIHJnYmEoNTEsIDUxLCA1MSwgMC42KSA3MC4wNSUsIHJnYmEoNzcsIDc3LCA3NywgMC42KSA3MSUsIHJnYmEoMTAyLCAxMDIsIDEwMiwgMC42KSA3MyUsIHJnYmEoMTc5LCAxNzksIDE3OSwgMC42KSA5MCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICB9XG59XG5cbi5mb290ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBlZGU4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICB9XG59XG5cbi5mb290ZXItbmF2IHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDYwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3Rlci1uYXYge1xuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgIG1hcmdpbi1yaWdodDogODBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE2MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3Rlci1uYXYge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG59XG4uZm9vdGVyLW5hdiB1bCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogZmxleC1zdGFydDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbi5mb290ZXItbmF2IHVsIGxpIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogMTAwJTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmZvb3Rlci1uYXYgdWwgbGk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0ycHg7XG4gIH1cbiAgLmZvb3Rlci1uYXYgdWwgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLmZvb3Rlci1uYXYgdWwgbGkgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBxdWVzdGEtZ3JhbmRlLCBzZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkgYSB7XG4gICAgYWxpZ24taXRlbXM6IGxlZnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4uY29weXJpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvcHlyaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDYwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvcHlyaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTYwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmNvcHlyaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvcHlyaWdodCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvcHlyaWdodCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4ucGFnZS1tYWluIHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogdW5zZXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcbn1cblxuLmJvb2tzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtYXV0by1yb3dzOiBhdXRvIGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmJvb2tzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQ4JSA0OCU7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiA0JTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5ib29rcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyMiUgMjIlIDIyJSAyMiU7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiA0JTtcbiAgfVxufVxuXG4uYm9vayB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG4uYm9vayBpbWcge1xuICBtYXgtd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiAwIDEwJTtcbiAgYm9yZGVyOiAycHggc29saWQgIzAwMDAwMDtcbn1cbi5ib29rIC5ib29rLXRpdGxlIHtcbiAgbWFyZ2luOiAxMHB4IDAgMjVweCAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7XG59IiwiLyoqXG4gICogQlJFQUtQT0lOVFNcbiAgKlxuICAqIERlZmluZSBicmVha3BvaW50cyBmb3IgbWVkaWEgcXVlcnkgdXNlIGFuZCBleHBvcnQgdGhlbSBmb3IgdXNlIHdpdGggSlMuXG4gICovXG5cblxuLy8gZGVmaW5lIGJyZWFrcG9pbnRzIGhlcmUgKGluIHBpeGVscyk6XG4kYnJlYWtwb2ludC1waG9uZS1zbWFsbDogICAgMzIwO1xuJGJyZWFrcG9pbnQtcGhvbmUtbGFyZ2U6ICAgIDQ4MDtcbiRicmVha3BvaW50LXRhYmxldDogICAgICAgICA3Njg7XG4kYnJlYWtwb2ludC1sYXB0b3A6ICAgICAgICAgOTkyO1xuJGJyZWFrcG9pbnQtZGVza3RvcDogICAgICAgMTIwMDtcbiRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U6IDE0MDA7XG4kYnJlYWtwb2ludC1oZDogICAgICAgICAgICAxOTIwO1xuXG4vLyBmb3JtYXQgYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgdXNlIHdpdGggaW5jbHVkZS1tZWRpYS5zY3NzIGxpYnJhcnk6XG4vKlxuZXhhbXBsZSB1c2FnZTpcbkBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1zbWFsbFwiKSB7Li4ufVxuKi9cbiRicmVha3BvaW50czogKFxuICAncGhvbmUtc21hbGwnOiAgICRicmVha3BvaW50LXBob25lLXNtYWxsICogMXB4LFxuICAncGhvbmUtbGFyZ2UnOiAgICRicmVha3BvaW50LXBob25lLWxhcmdlICogMXB4LFxuICAndGFibGV0JzogICAgICAgICRicmVha3BvaW50LXRhYmxldCAqIDFweCxcbiAgJ2xhcHRvcCc6ICAgICAgICAkYnJlYWtwb2ludC1sYXB0b3AgKiAxcHgsXG4gICdkZXNrdG9wJzogICAgICAgJGJyZWFrcG9pbnQtZGVza3RvcCAqIDFweCxcbiAgJ2Rlc2t0b3AtbGFyZ2UnOiAkYnJlYWtwb2ludC1kZXNrdG9wLWxhcmdlICogMXB4LFxuICAnaGQnOiAgICAgICAgICAgICRicmVha3BvaW50LWhkICogMXB4XG4pO1xuXG4vLyBleHBvcnQgYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgSlMgdXNlOlxuOmV4cG9ydCB7XG4gIGJyZWFrcG9pbnRQaG9uZVNtYWxsOiAkYnJlYWtwb2ludC1waG9uZS1zbWFsbDtcbiAgYnJlYWtwb2ludFBob25lTGFyZ2U6ICRicmVha3BvaW50LXBob25lLWxhcmdlO1xuICBicmVha3BvaW50VGFibGV0OiAkYnJlYWtwb2ludC10YWJsZXQ7XG4gIGJyZWFrcG9pbnRMYXB0b3A6ICRicmVha3BvaW50LWxhcHRvcDtcbiAgYnJlYWtwb2ludERlc2t0b3A6ICRicmVha3BvaW50LWRlc2t0b3A7XG4gIGJyZWFrcG9pbnREZXNrdG9wTGFyZ2U6ICRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U7XG4gIGJyZWFrcG9pbnRIZDogJGJyZWFrcG9pbnQtaGQ7XG59XG4iLCIvKipcbiAgKiBWQVJJQUJMRVNcbiAgKi9cblxuXG4vKipcbiAgKiBEaW1lbnNpb25zOlxuICAqL1xuXG4kc2l0ZVdpZHRoOiAxNDAwcHg7IC8vIG1heCB3aWR0aCBvZiBzaXRlJ3MgY29udGVudCBjb250YWluZXJzXG5cbi8vIGhlYWRlciBoZWlnaHRzOlxuJHRvcEJhckhlaWdodDogNDVweDtcbiRoZWFkZXJIZWlnaHRNb2JpbGU6IDkwcHg7XG4kaGVhZGVySGVpZ2h0RGVza3RvcDogMjAwcHg7XG5cbi8vIHN0YW5kYXJkaXplZCBzaWRlIHBhZGRpbmc6XG4kY29udGFpbmVyUGFkZGluZ01vYmlsZTogMjBweDtcbiRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTogMjVweDtcbiRjb250YWluZXJQYWRkaW5nVGFibGV0OiAzMHB4O1xuJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A6IDYwcHg7XG4kY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A6IDgwcHg7XG5cbi8vIHN0YW5kYXJkaXplZCB0b3AgYW5kIGJvdHRvbSBwYWRkaW5nOlxuJHNwYWNlclBhZGRpbmdNb2JpbGU6IDMwcHg7XG4kc3BhY2VyUGFkZGluZ1Bob25lTGFyZ2U6IDM1cHg7XG4kc3BhY2VyUGFkZGluZ1RhYmxldDogNDBweDtcbiRzcGFjZXJQYWRkaW5nTGFwdG9wOiA1MHB4O1xuJHNwYWNlclBhZGRpbmdEZXNrdG9wOiA2MHB4O1xuXG5cbi8qKlxuICAqIENvbG9yczpcbiAgKi9cblxuLy8gaHVlIGRlZmluaXRpb25zOlxuJHJlZDogICAgI2ZmMDAwMDtcbiRvcmFuZ2U6ICNmZjg4MDA7XG4keWVsbG93OiByZ2IoMjM3LCAyMDUsIDQ0KTsgLy8jZmZmZjAwO1xuJGdyZWVuOiAgcmdiKDE4MiwgMjMwLCAyNCk7IC8vIzAwZmYwMDtcbiRibHVlOiAgIHJnYigxLCAzOCwgMTcwKTsgLy8jMDAwMGZmO1xuJHB1cnBsZTogI2ZmMDBmZjtcbiRicm93bjogICM4ODg4MDA7XG4kY3JlYW06ICAjZjBlZGU4O1xuXG4vLyBncmF5c2NhbGUgZGVmaW5pdGlvbnM6XG4kd2hpdGU6ICAjZmZmZmZmO1xuJGdyYXk6ICAgIzg4ODg4ODtcbiRibGFjazogICMwMDAwMDA7XG4kb2ZmV2hpdGU6ICNmZWZlZmU7XG4kbGlnaHRHcmF5OiAjZjJmMmYyO1xuJG1lZGl1bUdyYXk6ICNlMGUwZTA7XG4kbWVkaXVtRGFya0dyYXk6ICM5OTk5OTk7XG4kZGFya0dyYXk6ICAjMjIyO1xuXG4vLyB0cmFuc3BhcmVudCBkZWZpbml0aW9uczpcbiR0cmFuc0dyYXk6IHJnYmEoNTEsIDUxLCA1MSwgMC44KTtcblxuLy8gZ2xvYmFsIGFzc2lnbm1lbnRzOlxuJGJvZHlDb2xvcjogJHdoaXRlOyAgICAgLy8gYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kY29udGVudENvbG9yOiAkd2hpdGU7ICAvLyBwYWdlIGNvbnRlbnQgYmFja2dyb3VuZCBjb2xvclxuJGZvbnRDb2xvcjogJGRhcmtHcmF5OyAgLy8gZGVmYXVsdCBmb250IGNvbG9yXG4kbGlua0NvbG9yOiAkYmx1ZTsgICAgICAvLyBkZWZhdWx0IGxpbmsgY29sb3JcblxuJGJyYW5kQ29sb3JQcmltYXJ5OiAkZ3JlZW47IC8vIHByaW1hcnkgY29sb3Igb2YgYnJhbmRcbiRicmFuZENvbG9yQ29udHJhc3Q6ICRibGFjazsgLy8gY29sb3IgdGhhdCBjb250cmFzdHMgd2VsbCB3aXRoIGJyYW5kIGNvbG9yIChvZnRlbiB1c2VkIGZvciB0ZXh0IG9uIHRvcCBvZiBicmFuZCBjb2xvcilcbiIsIi8qKlxuICAqIEZPTlRTXG4gICpcbiAgKiBEZWZpbmUgQGZvbnQtZmFjZSBzdHlsZXMuXG4gICovXG5cblxuLy8gTW9udHNlcnJhdC1SZWd1bGFyLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdDtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTW9udHNlcnJhdC1Cb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuICBzcmM6IHVybCguLi9mb250cy9Nb250c2VycmF0LUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLypcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGQ7XG4gIC8vc3JjOiB1cmwoLi4vZm9udHMvTW9udHNlcnJhdC1Cb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG5cbmZvbnQtZmFtaWx5OiBsdGMtZ291ZHktb3JuYXRlLCBzYW5zLXNlcmlmO1xuXG5mb250LXdlaWdodDogNDAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGRcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDcwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gQm9sZCBJdGFsaWNcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDcwMDtcblxuZm9udC1zdHlsZTogaXRhbGljO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gTGlnaHRcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDMwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gTGlnaHQgSXRhbGljXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IGl0YWxpYztcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGQgQ29uZGVuc2VkXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlci1jb25kLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDcwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gTGlnaHQgQ29uZGVuc2VkXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlci1jb25kLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDMwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuKi9cbiIsIi8qKlxyXG4gICogTUlYSU5TXHJcbiAgKlxyXG4gICogU3RhbmRhcmRpemVkIHN0eWxlIGNodW5rcywgcHJvdmlkZWQgYXMgYm90aCBTQ1NTIG1peGlucyBhbmQgSFRNTCBjbGFzc2VzLlxyXG4gICovXHJcblxyXG5cclxuQG1peGluIHdyYXAgeyAvLyBtYXJnaW4tbGVzcyB3cmFwcGVyXHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4ud3JhcCB7XHJcbiAgQGluY2x1ZGUgd3JhcDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBpbm5lci13cmFwIHsgLy8gd2lkdGgtbGltaXRlZCwgaG9yaXpvbnRhbGx5IGNlbnRlcmluZyB3cmFwcGVyXHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgbWF4LXdpZHRoOiAkc2l0ZVdpZHRoO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uaW5uZXItd3JhcCB7XHJcbiAgQGluY2x1ZGUgaW5uZXItd3JhcDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBtYXItdG9wIHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCB0b3AtbWFyZ2luZWQgY29udGFpbmVyXHJcbiAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbi5tYXItdG9wIHtcclxuICBAaW5jbHVkZSBtYXItdG9wO1xyXG59XHJcblxyXG5cclxuQG1peGluIG1hci1ib3R0b20geyAvLyBzdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIGJvdHRvbS1tYXJnaW5lZCBjb250YWluZXJcclxuICBtYXJnaW4tYm90dG9tOiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICB9XHJcbn1cclxuLm1hci1ib3R0b20ge1xyXG4gIEBpbmNsdWRlIG1hci1ib3R0b207XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gbWFyLWhvcml6b250YWwgeyAvLyBzdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIHZlcnRpY2FsbHktbWFyZ2luZWQgKGJvdGggdG9wIGFuZCBib3R0b20pIGNvbnRhaW5lclxyXG4gIEBpbmNsdWRlIG1hci10b3A7XHJcbiAgQGluY2x1ZGUgbWFyLWJvdHRvbTtcclxufVxyXG4ubWFyLWhvcml6b250YWwge1xyXG4gIEBpbmNsdWRlIG1hci1ob3Jpem9udGFsO1xyXG59XHJcblxyXG5cclxuQG1peGluIG1hci1yaWdodCB7IC8vIHN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgcmlnaHQtbWFyZ2luZWQgY29udGFpbmVyXHJcbiAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XHJcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICB9XHJcbn1cclxuLm1hci1yaWdodCB7XHJcbiAgQGluY2x1ZGUgbWFyLXJpZ2h0O1xyXG59XHJcblxyXG5cclxuQG1peGluIG1hci1sZWZ0IHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCBsZWZ0LW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XHJcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2UpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3ApO1xyXG4gIH1cclxufVxyXG4ubWFyLWxlZnQge1xyXG4gIEBpbmNsdWRlIG1hci1sZWZ0O1xyXG59XHJcblxyXG5cclxuQG1peGluIG1hci1ob3Jpem9udGFsIHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCBob3Jpem9udGFsbHkgcGFkZGVkIChib3RoIGxlZnQgYW5kIHJpZ2h0KSBjb250YWluZXJcclxuICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XHJcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoMiAqICRjb250YWluZXJQYWRkaW5nTW9iaWxlKSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICgyICogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICAgIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICgyICogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDIgKiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCkpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICAgIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoMiAqICRjb250YWluZXJQYWRkaW5nRGVza3RvcCkpO1xyXG4gIH1cclxufVxyXG4ubWFyLWhvcml6b250YWwge1xyXG4gIEBpbmNsdWRlIG1hci1ob3Jpem9udGFsO1xyXG59XHJcblxyXG5cclxuQG1peGluIHBhZC10b3AgeyAvLyBzdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUgc3BhY2VyIGZvciBlbGVtZW50IHRvcFxyXG4gIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4ucGFkLXRvcCB7XHJcbiAgQGluY2x1ZGUgcGFkLXRvcDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBwYWQtYm90dG9tIHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlIHNwYWNlciBmb3IgZWxlbWVudCBib3R0b21cclxuICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nRGVza3RvcDtcclxuICB9XHJcbn1cclxuLnBhZC1ib3R0b20ge1xyXG4gIEBpbmNsdWRlIHBhZC1ib3R0b207XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gcGFkLWxlZnQgeyAvLyBzdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIGxlZnQtcGFkZGVkIGNvbnRhaW5lclxyXG4gIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbi5wYWQtbGVmdCB7XHJcbiAgQGluY2x1ZGUgcGFkLWxlZnQ7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gcGFkLXJpZ2h0IHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCByaWdodC1wYWRkZWQgY29udGFpbmVyXHJcbiAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4ucGFkLXJpZ2h0IHtcclxuICBAaW5jbHVkZSBwYWQtcmlnaHQ7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gcGFkLXZlcnRpY2FsIHtcclxuICBAaW5jbHVkZSBwYWQtdG9wO1xyXG4gIEBpbmNsdWRlIHBhZC1ib3R0b207XHJcbn1cclxuLnBhZC12ZXJ0aWNhbCB7IC8vIHN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSB2ZXJ0aWNhbCAoYm90aCB0byBhbmQgYm90dG9tKSBzcGFjZXIgZm9yIGVsZW1lbnRcclxuICBAaW5jbHVkZSBwYWQtdmVydGljYWw7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gcGFkLWhvcml6b250YWwge1xyXG4gIEBpbmNsdWRlIHBhZC1yaWdodDtcclxuICBAaW5jbHVkZSBwYWQtbGVmdDtcclxufVxyXG4ucGFkLWhvcml6b250YWwgeyAvLyBzdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIGhvcml6b250YWxseSBwYWRkZWQgKGJvdGggbGVmdCBhbmQgcmlnaHQpIGNvbnRhaW5lclxyXG4gIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xyXG59XHJcblxyXG5cclxuQG1peGluIGJ1dHRvbiB7IC8vIHN0YW5kYXJkaXplZCBidXR0b25cclxuICBwYWRkaW5nOiAxMHB4IDE1cHg7O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBjb2xvcjogJG9mZldoaXRlO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4uYnV0dG9uIHtcclxuICBAaW5jbHVkZSBidXR0b247XHJcbn1cclxuXHJcbi8qXHJcbkBtaXhpbiBjYXRlZ29yeSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgLy8gL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgY29sb3I6ICRibGFjaztcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGZvbnQtc2l6ZTogMC44cmVtO1xyXG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNjI1ZW07XHJcbn1cclxuXHJcbi5jYXRlZ29yeSB7XHJcbiAgQGluY2x1ZGUgY2F0ZWdvcnk7XHJcbn1cclxuXHJcbkBtaXhpbiB0aXRsZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgLy9mb250LXdlaWdodDogNjAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcclxuICBsZXR0ZXItc3BhY2luZzogLTAuMDYyNWVtO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIC8vdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG59XHJcblxyXG4udGl0bGUge1xyXG4gIEBpbmNsdWRlIHRpdGxlO1xyXG59XHJcblxyXG5AbWl4aW4gdGFnIHtcclxuICBmb250LXNpemU6IDAuOHJlbTtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGNvbG9yOiAkbWVkaXVtRGFya0dyYXk7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0MjVlbTtcclxufVxyXG5cclxuLnRhZyB7XHJcbiAgQGluY2x1ZGUgdGFnO1xyXG59XHJcbiovXHJcblxyXG5AbWl4aW4gc2NyZWVuLXJlYWRlci10ZXh0IHsgIC8vIHZpc2libGUgdG8gc2NyZWVuIHJlYWRlcnMgb25seVxyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMXB4O1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAtMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi5zY3JlZW4tcmVhZGVyLXRleHQge1xyXG4gIEBpbmNsdWRlIHNjcmVlbi1yZWFkZXItdGV4dDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBuby1zY3JvbGwgeyAvLyByZW1vdmUgc2Nyb2xsYWJpbGl0eSBmb3IgZWxlbWVudFxyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5uby1zY3JvbGwge1xyXG4gIEBpbmNsdWRlIG5vLXNjcm9sbDtcclxufVxyXG5cclxuQG1peGluIGJvb2stZ3JhZGllbnQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZlZWU7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgdG8gcmlnaHQsXHJcbiAgICB0cmFuc3BhcmVudCAwJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA3MCUpIDAuMSUgMC4yJSxcclxuICAgIHRyYW5zcGFyZW50IDAuMiUsXHJcbiAgICBsaWdodGVuKHJnYmEoMCwgMCwgMCwgMC42KSwgNzAlKSAwLjQlIDAuNSUsXHJcbiAgICB0cmFuc3BhcmVudCAwLjUlLFxyXG4gICAgbGlnaHRlbihyZ2JhKDAsIDAsIDAsIDAuNiksIDcwJSkgMS4yJSAxLjMlLFxyXG4gICAgdHJhbnNwYXJlbnQgMS4zJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA3MCUpIDMuMyUgMy40JSxcclxuICAgIHRyYW5zcGFyZW50IDMuNCUgMjAlLFxyXG4gICAgLypsaWdodGVuKHJnYmEoMCwgMCwgMCwgMC42KSwgNzAlKSA1LjUlIDUlLFxyXG4gICAgLy90cmFuc3BhcmVudCA1JSAyMCUsKi9cclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA3MCUpIDUwJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjcpLCA0MCUpIDY3JSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjgpLCAzMCUpIDY5JSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjkpLCAyMCUpIDY5Ljk1JSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjkpLCAxMCUpIDcwJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCAyMCUpIDcwLjA1JSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCAzMCUpIDcxJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA0MCUpIDczJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA3MCUpIDkwJSxcclxuICAgIHRyYW5zcGFyZW50IDEwMCUpO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vICAgICBfICAgICAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gX1xyXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXHJcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xyXG4vLyAgICB8IHwgJ18gXFwgLyBfX3wgfCB8IHwgfC8gX2AgfC8gXyBcXCB8ICdfIGAgXyBcXCAvIF8gXFwvIF9gIHwgfC8gX2AgfFxyXG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XHJcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XHJcbi8vXHJcbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXHJcbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC45XHJcbi8vXHJcbi8vICAgICAgICBodHRwczovL2VkdWFyZG9ib3VjYXMuZ2l0aHViLmlvL2luY2x1ZGUtbWVkaWFcclxuLy9cclxuLy8gICAgICAgICBBdXRob3JzOiBFZHVhcmRvIEJvdWNhcyAoQGVkdWFyZG9ib3VjYXMpXHJcbi8vICAgICAgICAgICAgICAgICAgS2l0dHkgR2lyYXVkZWwgKEBraXR0eWdpcmF1ZGVsKVxyXG4vL1xyXG4vLyAgICAgIFRoaXMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIE1JVCBsaWNlbnNlXHJcbi8vLy9cclxuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxyXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgcGhvbmVgXHJcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xyXG4vLy9cclxuJGJyZWFrcG9pbnRzOiAoXHJcbiAgJ3Bob25lJzogMzIwcHgsXHJcbiAgJ3RhYmxldCc6IDc2OHB4LFxyXG4gICdkZXNrdG9wJzogMTAyNHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8vXHJcbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbi8vLyAgICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSdcclxuLy8vICApO1xyXG4vLy9cclxuJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxyXG4gICdwcmludCc6ICdwcmludCcsXHJcbiAgJ2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcclxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXHJcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcclxuICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCknLFxyXG4gICdyZXRpbmEzeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpLCAobWluLXJlc29sdXRpb246IDNkcHB4KSdcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLy9cclxuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHBpeGVscyBpcyBkZWZpbmVkIGFzIGAxYCBieSBkZWZhdWx0XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBlbXMgaXMgZGVmaW5lZCBhcyBgMC4wMWAgYnkgZGVmYXVsdFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHJlbXMgaXMgZGVmaW5lZCBhcyBgMC4xYCBieSBkZWZhdWx0LCB0byBiZSB1c2VkIHdpdGggYGZvbnQtc2l6ZTogNjIuNSU7YFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XHJcbi8vL1xyXG4kdW5pdC1pbnRlcnZhbHM6IChcclxuICAncHgnOiAxLFxyXG4gICdlbSc6IDAuMDEsXHJcbiAgJ3JlbSc6IDAuMSxcclxuICAnJzogMFxyXG4pICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcclxuLy8vIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgbWVkaWEgcXVlcmllcy5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAuZm9vIHtcclxuLy8vICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgfVxyXG4vLy9cclxuJGltLW1lZGlhLXN1cHBvcnQ6IHRydWUgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIFNlbGVjdHMgd2hpY2ggYnJlYWtwb2ludCB0byBlbXVsYXRlIHdoZW4gc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBkaXNhYmxlZC4gTWVkaWEgcXVlcmllcyB0aGF0IHN0YXJ0IGF0IG9yXHJcbi8vLyBpbnRlcmNlcHQgdGhlIGJyZWFrcG9pbnQgd2lsbCBiZSBkaXNwbGF5ZWQsIGFueSBvdGhlcnMgd2lsbCBiZSBpZ25vcmVkLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50XHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgLmZvbyB7XHJcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICd0YWJsZXQnO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xyXG4vLy9cclxuJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJyAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gU2VsZWN0cyB3aGljaCBtZWRpYSBleHByZXNzaW9ucyBhcmUgYWxsb3dlZCBpbiBhbiBleHByZXNzaW9uIGZvciBpdCB0byBiZSB1c2VkIHdoZW4gbWVkaWEgcXVlcmllc1xyXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYW5kIGNvbnRhaW5zIG9ubHkgYWNjZXB0ZWQgbWVkaWEgZXhwcmVzc2lvbnNcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAgLmZvbyB7XHJcbi8vLyAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBidXQgY29udGFpbnMgYSBtZWRpYSBleHByZXNzaW9uIHRoYXQgaXMgbm90IGFjY2VwdGVkXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogTm8gb3V0cHV0ICovXHJcbi8vL1xyXG4kaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJywgJ3BvcnRyYWl0JywgJ2xhbmRzY2FwZScpICFkZWZhdWx0O1xyXG5cclxuLy8vL1xyXG4vLy8gQ3Jvc3MtZW5naW5lIGxvZ2dpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gTG9nIGEgbWVzc2FnZSBlaXRoZXIgd2l0aCBgQGVycm9yYCBpZiBzdXBwb3J0ZWRcclxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXHJcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XHJcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiAkbWVzc2FnZTtcclxuICAgICRfOiBub29wKCk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRtZXNzYWdlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XHJcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cclxuLy8vIHdpdGhpbiBmdW5jdGlvbnMgYmVjYXVzZSBpdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluIGEgZnVuY3Rpb25cclxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcclxuLy8vXHJcbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcclxuICBAaWYgaW0tbG9nKCRtZXNzYWdlKSB7fVxyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXHJcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxyXG4vLy9cclxuQGZ1bmN0aW9uIG5vb3AoKSB7fVxyXG5cclxuLy8vXHJcbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7Qm9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbmRpdGlvbnMgYXJlIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludFxyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcclxuICAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRpbS1uby1tZWRpYS1icmVha3BvaW50KTtcclxuXHJcbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XHJcbiAgICBAaWYgaW0tbG9nKCdgI3skaW0tbm8tbWVkaWEtYnJlYWtwb2ludH1gIGlzIG5vdCBhIHZhbGlkIGJyZWFrcG9pbnQuJykge31cclxuICB9XHJcblxyXG4gIEBlYWNoICRjb25kaXRpb24gaW4gJGNvbmRpdGlvbnMge1xyXG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcclxuICAgICAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgICAgIEBpZiAoJHByZWZpeCA9PSAnbWF4JyBhbmQgJHZhbHVlIDw9ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSBvclxyXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XHJcbiAgICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XHJcbiAgICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFBhcnNpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3Qgb3BlcmF0b3IgZnJvbVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBBbnkgb2YgYD49YCwgYD5gLCBgPD1gLCBgPGAsIGDiiaVgLCBg4omkYFxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XHJcbiAgQGVhY2ggJG9wZXJhdG9yIGluICgnPj0nLCAnPicsICc8PScsICc8JywgJ+KJpScsICfiiaQnKSB7XHJcbiAgICBAaWYgc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcclxuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXHJcbiAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcclxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cclxuICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxyXG4gIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cclxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgZGltZW5zaW9uIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgZGltZW5zaW9uIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYHdpZHRoYCBvciBgaGVpZ2h0YCAob3IgcG90ZW50aWFsbHkgYW55dGhpbmcgZWxzZSlcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICRwYXJzZWQtZGltZW5zaW9uOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sIDAsICRvcGVyYXRvci1pbmRleCAtIDEpO1xyXG4gICRkaW1lbnNpb246ICd3aWR0aCc7XHJcblxyXG4gIEBpZiBzdHItbGVuZ3RoKCRwYXJzZWQtZGltZW5zaW9uKSA+IDAge1xyXG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRkaW1lbnNpb247XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gcHJlZml4IGJhc2VkIG9uIGFuIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcikge1xyXG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgdmFsdWUgb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3IgZnJvbSBgJGV4cHJlc3Npb25gXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcclxuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuICAkdmFsdWU6IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yLWluZGV4ICsgc3RyLWxlbmd0aCgkb3BlcmF0b3IpKTtcclxuXHJcbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XHJcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkdmFsdWUpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcclxuICB9XHJcblxyXG4gICRpbnRlcnZhbDogbWFwLWdldCgkdW5pdC1pbnRlcnZhbHMsIHVuaXQoJHZhbHVlKSk7XHJcblxyXG4gIEBpZiBub3QgJGludGVydmFsIHtcclxuICAgIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAgIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXHJcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cclxuICAgIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXHJcbiAgICAkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XHJcbiAgfVxyXG5cclxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSArICRpbnRlcnZhbDtcclxuICB9IEBlbHNlIGlmICRvcGVyYXRvciA9PSAnPCcge1xyXG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZTtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBwYXJzZVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxyXG4vLy9cclxuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcclxuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXHJcbiAgLy8gdGhlbiB0aGVyZSBpcyBubyBuZWVkIHRvIGdvIGFueSBmdXJ0aGVyLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcclxuICBAaWYgbWFwLWhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xyXG4gIH1cclxuXHJcbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XHJcbiAgJGRpbWVuc2lvbjogZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcblxyXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xyXG59XHJcblxyXG4vLy9cclxuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcclxuLy8vXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzbGljZVxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3RcclxuLy8vXHJcbkBmdW5jdGlvbiBzbGljZSgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsZW5ndGgoJGxpc3QpKSB7XHJcbiAgQGlmIGxlbmd0aCgkbGlzdCkgPCAxIG9yICRzdGFydCA+ICRlbmQge1xyXG4gICAgQHJldHVybiAoKTtcclxuICB9XHJcblxyXG4gICRyZXN1bHQ6ICgpO1xyXG5cclxuICBAZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XHJcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkcmVzdWx0O1xyXG59XHJcblxyXG4vLy8vXHJcbi8vLyBTdHJpbmcgdG8gbnVtYmVyIGNvbnZlcnRlclxyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxyXG4vLy8gQGFjY2VzcyBwcml2YXRlXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIENhc3RzIGEgc3RyaW5nIGludG8gYSBudW1iZXJcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyfVxyXG4vLy9cclxuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcclxuICAgIEByZXR1cm4gJHZhbHVlO1xyXG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpICE9ICdzdHJpbmcnIHtcclxuICAgICRfOiBpbS1sb2coJ1ZhbHVlIGZvciBgdG8tbnVtYmVyYCBzaG91bGQgYmUgYSBudW1iZXIgb3IgYSBzdHJpbmcuJyk7XHJcbiAgfVxyXG5cclxuICAkZmlyc3QtY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAxLCAxKTtcclxuICAkcmVzdWx0OiAwO1xyXG4gICRkaWdpdHM6IDA7XHJcbiAgJG1pbnVzOiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpO1xyXG4gICRudW1iZXJzOiAoJzAnOiAwLCAnMSc6IDEsICcyJzogMiwgJzMnOiAzLCAnNCc6IDQsICc1JzogNSwgJzYnOiA2LCAnNyc6IDcsICc4JzogOCwgJzknOiA5KTtcclxuXHJcbiAgLy8gUmVtb3ZlICsvLSBzaWduIGlmIHByZXNlbnQgYXQgZmlyc3QgY2hhcmFjdGVyXHJcbiAgQGlmICgkZmlyc3QtY2hhcmFjdGVyID09ICcrJyBvciAkZmlyc3QtY2hhcmFjdGVyID09ICctJykge1xyXG4gICAgJHZhbHVlOiBzdHItc2xpY2UoJHZhbHVlLCAyKTtcclxuICB9XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyLWxlbmd0aCgkdmFsdWUpIHtcclxuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XHJcblxyXG4gICAgQGlmIG5vdCAoaW5kZXgobWFwLWtleXMoJG51bWJlcnMpLCAkY2hhcmFjdGVyKSBvciAkY2hhcmFjdGVyID09ICcuJykge1xyXG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XHJcbiAgICAgICRkaWdpdHM6IDE7XHJcbiAgICB9IEBlbHNlIGlmICRkaWdpdHMgPT0gMCB7XHJcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRkaWdpdHM6ICRkaWdpdHMgKiAxMDtcclxuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcclxuLy8vXHJcbkBmdW5jdGlvbiB0by1sZW5ndGgoJHZhbHVlLCAkdW5pdCkge1xyXG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XHJcblxyXG4gIEBpZiBub3QgaW5kZXgobWFwLWtleXMoJHVuaXRzKSwgJHVuaXQpIHtcclxuICAgICRfOiBpbS1sb2coJ0ludmFsaWQgdW5pdCBgI3skdW5pdH1gLicpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xyXG59XHJcblxyXG4vLy9cclxuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxyXG4vLy8gdGhlIGNhbGwuIEl0IGlzIGhlbHBmdWwgd2hlbiBoYXZpbmcgYSBjb21wb25lbnQgbmVlZGluZyBhbiBleHRlbmRlZFxyXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpXHJcbi8vLyBmb3IgaW5zdGFuY2UuXHJcbi8vL1xyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9Y3VzdG9tJykge1xyXG4vLy8gICAgICAgLy8gLi4uXHJcbi8vLyAgICAgIH1cclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIG1lZGlhIGV4cHJlc3Npb25zIHdpdGggYSBjdXN0b20gb25lXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgnYWxsJzogJ2FsbCcpKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnKSB7XHJcbi8vLyAgICAgICAvLyAuLi5cclxuLy8vICAgICAgfVxyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIGJvdGggY29uZmlndXJhdGlvbiBtYXBzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSwgKCdhbGwnOiAnYWxsJykpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScsICc8PWN1c3RvbScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xyXG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XHJcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xyXG5cclxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcclxuXHJcbiAgQGNvbnRlbnQ7XHJcblxyXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcclxufVxyXG5cclxuLy8vL1xyXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcclxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cclxuLy8vXHJcbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xyXG4gIEBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcclxuICAgICAgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH0gQGVsc2UgaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xyXG4gICAgQG1lZGlhICN7dW5xdW90ZShwYXJzZS1leHByZXNzaW9uKG50aCgkY29uZGl0aW9ucywgMSkpKX0ge1xyXG4gICAgICAvLyBSZWN1cnNpdmUgY2FsbFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKipcbiAgKiBFTEVNRU5UIFNUWUxFU1xuICAqXG4gICogU3R5bGUgZGVmaW5pdGlvbnMgZm9yIGdsb2JhbCBlbGVtZW50IHNlbGVjdG9ycy5cbiAgKi9cblxuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gY29uc2lzdGVudCBib3gtc2l6aW5nIGZvciBhbGwgZWxlbWVudHNcbn1cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgZm9udC1zaXplOiAxMDAlOyAvLyBzZXQgcm9vdCBmb250LXNpemUgZm9yIHJlbSB1bml0cyAoMTAwJSBlcXVhdGVzIHRvIDE2cHgpXG4gIGxpbmUtaGVpZ2h0OiAxLjc7IC8vIHNldCBkZWZhdWx0IGxpbmUgaGVpZ2h0XG59XG5cbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBkaXNwbGF5OiBncmlkOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIGF1dG87IC8vYXV0byBhdXRvIGF1dG87IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIG1hcmdpbjogMDsgLy8gbWFrZSBzdXJlIGJvZHkgZWxlbWVudCBpcyBlZGdlLXRvLWVkZ2VcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHlDb2xvcjtcbiAgY29sb3I6ICRmb250Q29sb3I7XG4gIC8vZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC1mYW1pbHk6IHF1ZXN0YS1ncmFuZGUsIHNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuaDEge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xufVxuXG5oMiB7XG5cbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4zcmVtO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAvL2ZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNTkwOWVtO1xufVxuXG5oMyB7XG5cbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy9tYXJnaW4tYm90dG9tOiAwO1xuICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8vZm9udC1zaXplOiAyLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OTA5ZW07XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xufVxuXG5oNCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5oNSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgLy9mb250LXNpemU6IDEuMXJlbTtcbiAgLy9mb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogJGxpbmtDb2xvcjtcblxuICAmOmxpbmsge1xuXG4gIH1cblxuICAmOmhvdmVyIHtcblxuICB9XG5cbiAgJjphY3RpdmUge1xuXG4gIH1cblxuICAmOnZpc2l0ZWQge1xuXG4gIH1cbn1cblxuOmZvY3VzIHtcbiAgLy9vdXRsaW5lOiAzcHggc29saWQgb3JhbmdlO1xufVxuXG51bCwgb2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cblxuaW1nIHtcblxufVxuXG4vKiBiZWdpbiBidXR0b24gc3R5bGVzICovXG5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlcjogbm9uZTtcbiAgLy9wYWRkaW5nOiAxcmVtIDJyZW07XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICAvL2JhY2tncm91bmQ6ICMwMDY5ZWQ7XG4gIC8vY29sb3I6ICNmZmZmZmY7XG4gIC8vZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8vZm9udC1zaXplOiAxcmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICAvL3RyYW5zaXRpb246IGJhY2tncm91bmQgMjUwbXMgZWFzZS1pbi1vdXQsXG4gIC8vICAgICAgICAgICAgdHJhbnNmb3JtIDE1MG1zIGVhc2U7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5idXR0b246aG92ZXIsXG5idXR0b246Zm9jdXMge1xuICAgIC8vYmFja2dyb3VuZDogIzAwNTNiYTtcbn1cblxuYnV0dG9uOmZvY3VzIHtcbiAgICAvL291dGxpbmU6IDFweCBzb2xpZCAjZmZmO1xuICAgIC8vb3V0bGluZS1vZmZzZXQ6IC00cHg7XG59XG5cbmJ1dHRvbjphY3RpdmUge1xuICAgIC8vdHJhbnNmb3JtOiBzY2FsZSgwLjk5KTtcbn1cbi8qIGVuZCBidXR0b24gc3R5bGVzICovXG4iLCIvKipcbiAgKiBIRUFERVIgU1RZTEVTXG4gICovXG5cbi5oZWFkZXItd3JhcCB7IC8vIEVkZ2UtdG8tZWRnZSB3cmFwIGZvciBldmVyeXRoaW5nIGluIHRoZSBoZWFkZXIuIDFzdCBpdGVtIGluIGJvZHkgZWxlbWVudCBncmlkLlxuLy8gIEBpbmNsdWRlIHdyYXA7XG4gIGhlaWdodDogYXV0bzsgLy8xMDB2aDtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDE7IC8vIChmb3Igc3RpY2t5IGZvb3RlcilcbiAgZ3JpZC1yb3ctZW5kOiAyOyAvLyAyIGZvciBzdGlja3kgZm9vdGVyXG4gIC8vL3Bvc2l0aW9uOiBzdGlja3k7XG4vLyAgdG9wOiAwO1xuICB6LWluZGV4OiAwO1xuLy8gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMsIGJvcmRlciAyMDBtcywgYm94LXNoYWRvdyAyMDBtcztcblxuLy8gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNyZWFtO1xuICAvL0BpbmNsdWRlIGJvb2stZ3JhZGllbnQ7XG5cbiAgJi5iZy12aXNpYmxlIHtcbiAgICB6LWluZGV4OiA5OTk5OyAvLyBwb3NpdGlvbiBpbiBmcm9udCBvZiBldmVyeXRoaW5nIGVsc2Vcbi8vICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIEBpbmNsdWRlIGJvb2stZ3JhZGllbnQ7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcblxuICAgICYuYmctdmlzaWJsZSB7XG4gICAgICB6LWluZGV4OiAwO1xuICAvLyAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgfVxuICB9XG59XG4gIC5oZWFkZXItb3ZlcmxheSB7IC8vIFRyYW5zbHVjZW50LCBcImRpbW1lclwiIGxheWVyIG92ZXIgaGVhZGVyIGJhY2tncm91bmQtaW1hZ2UuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlOyAvL2JhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChkYXJrZW4oJHRyYW5zR3JheSwgNDAlKSwgZGFya2VuKCR0cmFuc0dyYXksIDIwJSkpO1xuICAgIG9wYWNpdHk6IDAuNztcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAudG9wLWJhci1iZyB7IC8vIEVkZ2UtdG8tZWRnZSBiYWNrZ3JvdW5kIGxheWVyIGZvciB0aGUgdG9wLW5hdiBiYXIuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA2O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bUdyYXk7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkdHJhbnNHcmF5OyAvLyRibHVlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cbiAgICAmLmJnLXZpc2libGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAvLyAvYm94LXNoYWRvdzogMHB4IDJweCAycHggJGJsYWNrO1xuICAgIH1cbiAgfVxuXG4gIC5oZWFkZXIgeyAvLyBXaWR0aC1saW1pdGVkIGNvbnRhaW5lciBmb3IgdGhlIGhlYWRlci4gVGhpcyBpcyB0aGUgPGhlYWRlcj4gZWxlbWVudCBpdHNlbGYuXG4gICAgQGluY2x1ZGUgaW5uZXItd3JhcDtcbiAgICBoZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IC8vMWZyIDEwMHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogJGhlYWRlckhlaWdodE1vYmlsZSBhdXRvO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cbiAgICAmLmJnLXZpc2libGUge1xuICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAvL2hlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCArICR0b3BCYXJIZWlnaHQpO1xuICAgICAgLy9oZWlnaHQ6IDEwMHZoO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgLy9wYWRkaW5nLXRvcDogJHRvcEJhckhlaWdodDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyAvLzFmciAxMDBweDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvOy8vMTIwcHggNzBweDtcblxuICAgIH1cbiAgfVxuICAgIC5oZWFkZXItYnJhbmQge1xuICAgICAgQGluY2x1ZGUgcGFkLWxlZnQ7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAvL3BhZGRpbmctcmlnaHQ6IDA7IC8vIG5lZ2F0ZSByaWdodCBwYWRkaW5nIGZyb20gJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICBoZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAxO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogNTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIEBpbmNsdWRlIG1hci1ob3Jpem9udGFsO1xuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIC8vcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6ICRoZWFkZXJIZWlnaHREZXNrdG9wOyAvL2NhbGMoJGhlYWRlckhlaWdodERlc2t0b3AgLSAkdG9wQmFySGVpZ2h0KTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tdG9wOiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAvL2JvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgIC8vbGVmdDogNjBweDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAvL21hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wLWxhcmdlXCIpIHtcbiAgICAgICAgLy9oZWlnaHQ6ICRoZWFkZXJIZWlnaHREZXNrdG9wO1xuICAgICAgICAvL2dyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICAvL2dyaWQtcm93OiAxIC8gc3BhbiAyO1xuICAgICAgICAvL21heC13aWR0aDogMTAwJTtcblxuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MjBweDtcbiAgICAgICAgaGVpZ2h0OiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAvL2hlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCAtICR0b3BCYXJIZWlnaHQpO1xuICAgICAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3AtbGFyZ2VcIikge1xuICAgICAgICAgIC8vaGVpZ2h0OiAkaGVhZGVySGVpZ2h0RGVza3RvcDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDUyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gLmxvZ28gd2FzIGhlcmVcblxuICAgICAgICAubG9nby10ZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxvZ28tdGV4dC10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBxdWVzdGEtZ3JhbmRlLCBzZXJpZjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAzLjFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAzLjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMCBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgICAgICAgICBmb250LWZhbWlseTogcXVlc3RhLWdyYW5kZSwgc2VyaWY7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9nbyB7XG4gICAgICBAaW5jbHVkZSBtYXItbGVmdDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiAxMDAlOy8vY2FsYygkaGVhZGVySGVpZ2h0TW9iaWxlKTtcbiAgICAgIC8vbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIC8vbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC8vaGVpZ2h0OiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogOTAlO1xuICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIC8vd2lkdGg6IDE0NHB4O1xuICAgICAgICAvL3dpZHRoOiBhdXRvO1xuLy8gICAgICAgIGhlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCk7XG4gICAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICByaWdodDogMTAwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICAgIEBpbmNsdWRlIG1hci1sZWZ0O1xuICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICBwYWRkaW5nLXRvcDogMzVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogcXVlc3RhLWdyYW5kZSwgc2VyaWY7XG4gICAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgMTAwcHgpO1xuICAgICAgLy9sZWZ0OiA2MHB4O1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIC8vdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgLmhlYWRlci1uYXYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAmLmJnLXZpc2libGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA1cHggMTBweCAtNXB4ICRibGFjaztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOy8vJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvL3RvcDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCArIDE1MHB4KTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIC8vbGVmdDogNjBweDtcbiAgICAgICAgdG9wOiBhdXRvO1xuXG4gICAgICAgICYuYmctdmlzaWJsZSB7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgYm94LXNoYWRvdzogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgICAubWFpbi1uYXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRvZmZXaGl0ZTtcblxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgLy9jb250ZW50OiBcIkNvbnRlbnRzOlwiO1xuICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIEBpbmNsdWRlIG1hci1sZWZ0O1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgLy8gbmVnYXRlIGxlZnQgcGFkZGluZyBmcm9tICdjb250YWluZXInIG1peGluIF5eXlxuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIC8vaGVpZ2h0OiAkaGVhZGVySGVpZ2h0RGVza3RvcDtcbiAgICAgICAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAvL3RvcDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAvL3RvcDogNTAlO1xuICAgICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAvL3otaW5kZXg6IDk5OTk7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgLy9jb250ZW50OiBcIkNvbnRlbnRzOlwiO1xuICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgLy9jb2x1bW4tZ2FwOiBhdXRvO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIC8vaGVpZ2h0OiAkaGVhZGVySGVpZ2h0RGVza3RvcDtcbiAgICAgICAgICAgIC8vZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIgPiB1bCB7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIG5lZ2F0ZSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyAvLyBuZWdhdGUgJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAvL2hlaWdodDogJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgICAgICAgIC8vYm9yZGVyLXRvcDogM3B4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZGlzcGxheSAzMDBtcztcblxuICAgICAgICAgICAgICAmOmhvdmVyID4gdWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIC8vdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAvL29wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgLy9saXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHF1ZXN0YS1ncmFuZGUsIHNlcmlmO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLy9jb2xvcjogJGRhcmtCbHVlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgLy9oZWlnaHQ6ICRoZWFkZXJIZWlnaHREZXNrdG9wO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgICAgIC8vZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtOyAvLzAuOHJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgLy9mb250LXNpemU6IDEuNnJlbTsgLy8wLjhyZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5hdi1jaGV2cm9uIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICByaWdodDogMDtcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwgeyAvLyBzdWItbmF2XG4gICAgICAgICAgICAgIHdpZHRoOiAyMjVweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogNjJweDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZWRpdW1HcmF5O1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG9mZldoaXRlO1xuICAgICAgICAgICAgICAvL3Zpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgLy9vcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAvL3RyYW5zaXRpb246IHZpc2liaWxpdHkgMHMsIG9wYWNpdHkgMXMgbGluZWFyO1xuXG5cbiAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgJG1lZGl1bUdyYXk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0xMnB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMXB4O1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDE7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIyNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG1lZGl1bURhcmtHcmF5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudG9wLW5hdiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDY7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIGNvbHVtbi1nYXA6IDMwcHg7XG4gICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDsgLy8gcGFkZGluZyBhZ2FpbnN0IGhlYWRlciBidXR0b25zIChzZWFyY2ggZ2xhc3MpXG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkeWVsbG93O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLy90ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2xpZGUtbGluZSB7XG4gICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmV2hpdGU7XG4gICAgICB9XG5cbiAgICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgICAgQGluY2x1ZGUgcGFkLXJpZ2h0O1xuICAgICAgLy9wYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgLy8gbmVnYXRlIGxlZnQgcGFkZGluZyBmcm9tICdjb250YWluZXInIG1peGluIF5eXlxuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogNjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAgIC5nbGFzcyB7XG4gICAgICAgIC8vaGVpZ2h0OiA5MHB4O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgLy9yaWdodDogNDVweDtcbiAgICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgIGJvcmRlcjogdW5zZXQ7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLy9jb2xvcjogJGJsdWU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgIC8vdG9wOiAwO1xuICAgICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyOiB1bnNldDtcbiAgICAgICAgICAvL2JvcmRlci1yaWdodDogM3B4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgLy9ib3JkZXItbGVmdDogM3B4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAvL2JveC1zaGFkb3c6IDVweCAtMnB4IDIwcHggMHB4ICRibGFjaztcbiAgICAgICAgICAvL2JveC1zaGFkb3c6IDdweCAtN3B4IDNweCAzcHggIzQ0NDsvLywgNXB4IC0ycHggMjBweCAwcHggIzU1NTtcbiAgICAgICAgICAvL2JveC1zaGFkb3c6IDVweCAwIDE1cHggLTdweCAkYmxhY2s7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG5cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogI2FhYTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJ1cmdlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAvL2NvbG9yOiAkYmx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MzQwcHhcIikge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgLnNpdGUtc2VhcmNoLXdyYXAgeyAvLyBoZWFkZXItc3BlY2lmaWMgc2VhcmNoIHdyYXBcbiAgICAgIEBpbmNsdWRlIHdyYXA7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHotaW5kZXg6IDY7XG4gICAgICAvL2JveC1zaGFkb3c6IDBweCAycHggMTBweCA1cHggIzQ0NDtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAycHggMTBweCAtMnB4ICRibGFjaztcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIHRvcDogJHRvcEJhckhlaWdodDtcbiAgICAgIH1cblxuICAgICAgLnNpdGUtc2VhcmNoIHsgLy8gaGVhZGVyIHNwZWNpZmljIC0tIHNlZSBzZWFyY2guc2NzcyBmb3IgZ2xvYmFsIHNlYXJjaCBzdHlsZXNcbiAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICB9XG4gICAgfVxuIiwiLyoqXG4gICogU0lURSBTRUFSQ0ggRk9STSBTVFlMRVNcbiAgKi9cblxuLnNpdGUtc2VhcmNoIHtcbiAgQGluY2x1ZGUgaW5uZXItd3JhcDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAzNXB4IDA7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDUwcHg7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbn1cblxuICAuc2VhcmNoLXF1ZXJ5IHtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICBncmlkLXJvdzogMTtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuXG4gIC5zZWFyY2gtc3VibWl0IHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmV2hpdGU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJsYWNrO1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRibGFjaztcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJsYWNrO1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtR3JheTtcbiAgICB9XG4gIH1cbiIsIi8qKlxuICAqIENPTlRFTlQgU1RZTEVTXG4gICovXG5cblxuLm1haW4td3JhcCB7XG4gIC8vQGluY2x1ZGUgd3JhcDtcbiAgLy9AaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDI7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIGdyaWQtcm93LWVuZDogMzsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgLy9tYXJnaW4tdG9wOiBjYWxjKC0xICogKCRoZWFkZXJIZWlnaHRNb2JpbGUgKyAkdG9wQmFySGVpZ2h0KSk7IC8vIHNoaWZ0cyBwYWdlIGhlYWRlciBpbWFnZSB1cCBiZWhpbmQgdGhlIGhlYWRlci9uYXZcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgQGluY2x1ZGUgd3JhcDtcbiAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICBAaW5jbHVkZSBib29rLWdyYWRpZW50O1xuICAgIC8vbWFyZ2luLXRvcDogY2FsYygtMSAqICgkaGVhZGVySGVpZ2h0RGVza3RvcCArICR0b3BCYXJIZWlnaHQpKTsgLy8gc2hpZnRzIHBhZ2UgaGVhZGVyIGltYWdlIHVwIGJlaGluZCB0aGUgaGVhZGVyL25hdlxuICB9XG59XG4gIC5tYWluIHtcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGZvciBzdGlja3kgZm9vdGVyOiBmaWxsIGFueSBlbXB0eSBzcGFjZSBkb3duIHRvIGZvb3RlclxuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIGV4dGVuZHMgaGVpZ2h0IHRvIGFjY29tb2RhdGUgY29udGVudCdzIG1hcmdpblxuICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgLy9AaW5jbHVkZSBwYWQtbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgLy9ib3gtc2hhZG93OiAwcHggNXB4IDEycHggLTdweCAkYmxhY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgYm94LXNoYWRvdzogNXB4IDAgMTVweCAtN3B4ICRibGFjaztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgQGluY2x1ZGUgcGFkLWxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNWRlZyk7XG4gICAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgICB9XG4gIH1cbiAgICAvKi5wYWdlLWhlYWRlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDgwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgICAgIGJhY2tncm91bmQtYmxlbmQtbW9kZTogc2NyZWVuO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgLy9taW4taGVpZ2h0OiAyNTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgICAucGFnZS1oZWFkZXItb3ZlcmxheSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoZGFya2VuKCR0cmFuc0dyYXksIDQwJSksIGRhcmtlbigkdHJhbnNHcmF5LCAyMCUpKTtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAvL2JhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICB9Ki9cblxuICAgICAgLyoucGFnZS1oZWFkZXItYm94LXdyYXAge1xuICAgICAgICAvL0BpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgLy9wYWRkaW5nLXRvcDogY2FsYygkaGVhZGVySGVpZ2h0TW9iaWxlICsgJHNwYWNlclBhZGRpbmdUYWJsZXQpO1xuICAgICAgICAvL3BhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAvL0BpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgIC8vcGFkZGluZy10b3A6IGNhbGMoJGhlYWRlckhlaWdodERlc2t0b3AgKyAkc3BhY2VyUGFkZGluZ0Rlc2t0b3ApOy8vXG4gICAgICAgICAgLy9oZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH0qL1xuICAgICAgICAvKi5wYWdlLWhlYWRlci1ib3gge1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC10b3A7XG4gICAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgICAgLy9AaW5jbHVkZSBwYWQtYm90dG9tO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAvL3BhZGRpbmc6IDQwcHggMzBweDtcbiAgICAgICAgICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHRNb2JpbGUgKyAkc3BhY2VyUGFkZGluZ1RhYmxldCk7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIC8vd2lkdGg6IDY3JTtcbiAgICAgICAgICAgIC8vd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHNwYWNlclBhZGRpbmdEZXNrdG9wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAvL2NvbG9yOiAkb2ZmV2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAvL3BhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRibGFjaztcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSovXG5cbiAgICAucGFnZS1jb250ZW50LXdyYXAge1xuXG4gICAgfVxuICAgICAgLnBhZ2UtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wYWdlLWNvbnRlbnQuc2lkZSB7IC8vIC5wYWdlLWNvbnRlbnQgc3R5bGVzIGZvciBzaWRlYmFyIGxheW91dFxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAwcHg7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDMyMHB4O1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgLnBhZ2UtbWFpbiB7XG4gICAgICAgICAgQGluY2x1ZGUgcGFkLXZlcnRpY2FsO1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgICAvL2JveC1zaGFkb3c6IDVweCAwIDE1cHggLTdweCAkYmxhY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiA1cHggMCAyMHB4IC03cHggJGJsYWNrO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMzBweCAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAvL2NvbG9yOiAkb2ZmV2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAvL3BhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRibGFjaztcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi44cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoNiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IC8vIC5wYWdlLW1haW5cbiAgICAgICAgICAucGFnZS1zZWN0aW9uLXdyYXAge1xuICAgICAgICAgICAgQGluY2x1ZGUgd3JhcDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wYWdlLXNlY3Rpb24ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcGFkLXRvcDtcbiAgICAgICAgICAgICAgLy9AaW5jbHVkZSBwYWQtYm90dG9tO1xuICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRjcmVhbSAwJSwgJHdoaXRlIDUwJSwgJGNyZWFtIDEwMCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIC5zaWRlIC5wYWdlLW1haW4geyAvLyAucGFnZS1tYWluIHN0eWxlcyBmb3Igc2lkZWJhciBsYXlvdXRcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGFnZS1zaWRlYmFyIHtcbiAgICAgICAgICBAaW5jbHVkZSBwYWQtYm90dG9tO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICAgIGdyaWQtcm93OiAxO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4uYWxpZ25yaWdodCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbm9uZTtcbiAgcGFkZGluZzogMjBweDtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuXG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbi5hbGlnbmxlZnQge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IG5vbmU7XG4gIHBhZGRpbmc6IDIwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcblxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbi5zaW5nbGUge1xuICBwIHtcblxuICAgICY6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogdW5zZXQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgICAgZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcbiAgICB9XG4gIH1cbn1cblxuZmlndXJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgcGFkZGluZzogMjBweDtcblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJi5hbGlnbnJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcblxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYWxpZ25sZWZ0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG5cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBmaWdjYXB0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblxuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gICogRk9PVEVSIFNUWUxFU1xuICAqL1xuXG5cbi5mb290ZXItd3JhcCB7XG4gIGdyaWQtcm93LXN0YXJ0OiAzOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBncmlkLXJvdy1lbmQ6IDQ7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAvL0BpbmNsdWRlIGJvb2stZ3JhZGllbnQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgQGluY2x1ZGUgYm9vay1ncmFkaWVudDtcbiAgfVxufVxuICAuZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgIC8vQGluY2x1ZGUgcGFkLXRvcDtcbiAgICBAaW5jbHVkZSBwYWQtYm90dG9tO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7Ly9jZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZXh0ZW5kcyBoZWlnaHQgdG8gYWNjb21vZGF0ZSBjb250ZW50J3MgbWFyZ2luXG4gICAgY29sb3I6ICRibGFjaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgIH1cbiAgfVxuICAgIC5mb290ZXItbmF2IHtcbiAgICAgIEBpbmNsdWRlIG1hci1ob3Jpem9udGFsO1xuICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAvL21hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgICAgICAgY29sb3I6ICRtZWRpdW1EYXJrR3JheTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIHJpZ2h0OiAtMnB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogcXVlc3RhLWdyYW5kZSwgc2VyaWY7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogbGVmdDsvL2NlbnRlcjtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIC8vcGFkZGluZzogMCA1cHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7Ly9jZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvcHlyaWdodCB7XG4gICAgICBAaW5jbHVkZSBtYXItaG9yaXpvbnRhbDtcbiAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgLy9tYXJnaW46IDA7XG4gICAgICAvL3BhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAvL2xlZnQ6IDE1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Oy8vY2VudGVyO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgLy9wYWRkaW5nOiAwIDVweDtcbiAgICAgIH1cbiAgICB9XG4iXX0= */
