@charset "UTF-8";
/**
  * 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: Teachers;
  src: url(../fonts/Teachers-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-RegularItalic.ttf);
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-Medium.ttf);
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-MediumItalic.ttf);
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-SemiBold.ttf);
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-SemiBoldItalic.ttf);
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-BoldItalic.ttf);
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-ExtraBold.ttf);
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: Teachers;
  src: url(../fonts/Teachers-ExtraBoldItalic.ttf);
  font-weight: 800;
  font-style: italic;
}
@font-face {
  font-family: Playfair Display;
  src: url(../fonts/PlayfairDisplay-Regular.ttf);
  font-weight: 500;
  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;
  }
}

.edge-to-edge {
  margin-left: -20px;
  margin-right: -20px;
  transition: margin 300ms;
  max-width: calc(100% + 40px);
}
@media (min-width: 480px) {
  .edge-to-edge {
    margin-left: -25px;
    margin-right: -25px;
    max-width: calc(100% + 50px);
  }
}
@media (min-width: 768px) {
  .edge-to-edge {
    margin-left: -30px;
    margin-right: -30px;
    max-width: calc(100% + 60px);
  }
}
@media (min-width: 992px) {
  .edge-to-edge {
    margin-left: -60px;
    margin-right: -60px;
    max-width: calc(100% + 120px);
  }
}
@media (min-width: 1200px) {
  .edge-to-edge {
    margin-left: 0;
    margin-right: 0;
    max-width: none;
  }
}

.button {
  padding: 10px 15px;
  display: inline-block;
  background-color: #322d29;
  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;
}

.embed-container-wrap {
  width: 100%;
  margin: 0 auto;
}

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

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

/**
  * 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: #f1e5cd;
  color: #222;
  font-family: Teachers, serif;
  font-weight: 400;
  font-style: normal;
}

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

h1 {
  margin-top: 0;
  color: #c74f3f;
  padding: 0 0 30px 0;
  display: block;
  font-size: 2rem;
  line-height: 1;
  border-bottom: 3px solid #c74f3f;
}
@media (min-width: 768px) {
  h1 {
    font-size: 2.8rem;
  }
}

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: #c74f3f;
}
ul, ol {
  margin: 0;
  padding: 0;
  list-style-position: inside;
}

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

/* end button styles */
blockquote {
  border-left: 5px solid #c74f3f;
  margin: 50px 10px;
  padding: 0.5em 30px;
  quotes: "“";
}
blockquote:before {
  color: #322d29;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
}
blockquote p {
  display: block;
  font-weight: bold;
}
blockquote p:first-of-type, blockquote p:nth-of-type(2) {
  font-size: 1.3rem;
}
blockquote footer {
  padding-top: 20px;
  font-size: 1.4rem;
}

/**
  * HEADER STYLES
  */
.header-wrap {
  height: auto;
  grid-row-start: 1;
  grid-row-end: 2;
  z-index: 0;
  background-color: #c74f3f;
  position: relative;
}
.header-wrap.bg-visible {
  z-index: 9999;
}
@media (min-width: 768px) {
  .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;
}
@media (min-width: 768px) {
  .top-bar-bg {
    display: block;
  }
}

.bottom-bar-bg {
  width: 100%;
  height: 60px;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 6;
  display: none;
  transition: background-color 200ms;
  background-color: #7d322d;
}
@media (min-width: 768px) {
  .bottom-bar-bg {
    display: block;
  }
}

.header {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  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: 480px) {
  .header {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .header {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .header {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .header {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .header {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .header {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .header {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .header {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .header {
    height: auto;
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
  }
}

.header-brand {
  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: 768px) {
  .header-brand {
    height: 200px;
    height: auto;
    margin-top: 45px;
  }
}
.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: 0;
}
@media (min-width: 768px) {
  .header-brand a {
    max-width: none;
    height: 200px;
    height: auto;
    padding-bottom: 30px;
  }
}
@media (min-width: 1400px) {
  .header-brand a {
    max-width: 100%;
  }
}
.header-brand a .logo-text {
  display: block;
  color: #f1e5cd;
  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;
    padding-bottom: 20px;
  }
}
.header-brand a .logo-text .logo-text-title {
  margin: 0 auto;
  display: block;
  line-height: 0.9;
  font-size: 1.1rem;
  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 .author {
  font-size: 1rem;
  text-transform: lowercase;
}
@media (min-width: 480px) {
  .header-brand a .logo-text .author {
    font-size: 1.6rem;
  }
}
@media (min-width: 768px) {
  .header-brand a .logo-text .author {
    font-size: 2.6rem;
  }
}
@media (min-width: 992px) {
  .header-brand a .logo-text .author {
    font-size: 3rem;
  }
}
@media (min-width: 1200px) {
  .header-brand a .logo-text .author {
    font-size: 3.1rem;
  }
}
@media (min-width: 1400px) {
  .header-brand a .logo-text .author {
    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: #322d29;
}
@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: #7d322d;
  box-shadow: 0px 5px 10px -5px #322d29;
}
@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 {
    padding-left: 0;
    width: auto;
    left: 0;
  }
}
.main-nav ul {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  border-top: 1px solid #c74f3f;
  padding-bottom: 0;
}
@media (min-width: 768px) {
  .main-nav ul {
    width: auto;
    padding-top: 8px;
    padding-bottom: 7px;
    height: auto;
    flex-direction: row;
    -moz-column-gap: 10px;
         column-gap: 10px;
    border-top: unset;
    align-items: flex-start;
    justify-content: space-between;
  }
}
.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 #c74f3f;
  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: #f1e5cd;
  text-align: center;
}
@media (min-width: 768px) {
  .main-nav ul li a {
    width: auto;
    padding: 0 5px;
    font-size: 1.3rem;
    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: #7d322d;
  border-top: 1px solid #c74f3f;
}
.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 #c74f3f;
  border-bottom: none;
}
.main-nav ul li ul li:nth-child(1) {
  border-top: 1px solid #c74f3f;
}
.main-nav ul li ul li:nth-child(2) {
  border-top: 1px solid #c74f3f;
}
.main-nav ul li ul li:nth-child(3) {
  border-top: 1px solid #c74f3f;
}
.main-nav ul li ul li:nth-child(4) {
  border-top: 1px solid #c74f3f;
}
.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: #322d29;
  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: #f1e5cd;
}
@media (min-width: 768px) {
  .glass {
    height: 45px;
    border: unset;
    padding: 8px 15px;
  }
  .glass i {
    color: #f1e5cd;
  }
  .glass i:hover {
    color: #aaa;
  }
}

.burger {
  margin-left: 0;
  padding: 8px 10px;
  display: flex;
  align-items: center;
}
.burger i {
  color: #f1e5cd;
}
@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: #c74f3f;
  z-index: 6;
}
@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;
  background-color: #f1e5cd;
}
.search-query label {
  width: 100%;
  max-width: 100%;
  height: 30px;
  color: #322d29;
  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 #322d29;
  display: block;
  background-color: unset;
  color: #322d29;
}

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

/**
  * CONTENT STYLES
  */
.main-wrap {
  width: 100%;
  height: auto;
  grid-row-start: 2;
  grid-row-end: 3;
}
.main {
  height: 100%;
  overflow: hidden;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 20px;
  position: relative;
  z-index: 5;
}
@media (min-width: 480px) {
  .main {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .main {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .main {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .main {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .main {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .main {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .main {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .main {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .main {
    margin-top: -20px;
    padding-top: 20px;
    padding-bottom: 40px;
  }
}

/*.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;
  width: 100%;
  grid-column: 1/span 1;
  grid-row: 2;
  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: 768px) {
  .page-main {
    grid-column: 1/span 1;
    grid-row: 1;
  }
}
.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;
  background-color: #c74f3f;
}
.footer {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding-top: 30px;
  transition: padding 300ms;
  padding-bottom: 30px;
  transition: padding 300ms;
  text-align: left;
  overflow: hidden;
  color: #f1e5cd;
}
@media (min-width: 480px) {
  .footer {
    padding-top: 35px;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-top: 40px;
  }
}
@media (min-width: 992px) {
  .footer {
    padding-top: 50px;
  }
}
@media (min-width: 1200px) {
  .footer {
    padding-top: 60px;
  }
}
@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;
  }
}
.footer-nav {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  padding-bottom: 20px;
}
@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: #f1e5cd;
  text-align: center;
  text-transform: uppercase;
  font-weight: bold;
}
@media (min-width: 768px) {
  .footer-nav ul li a {
    align-items: left;
    width: auto;
    text-align: left;
  }
}

.copyright {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  font-size: 10px;
  text-align: center;
}
@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;
}
.book img {
  max-width: 80%;
  margin: 0 10%;
  border: 2px solid #322d29;
}
.book .book-title {
  margin: 10px 0 25px 0;
  font-size: 1rem;
  text-align: center;
  color: #322d29;
  font-style: italic;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJvb2tzLmNzcyIsImJvb2tzLnNjc3MiLCJfY29tbW9uLnNjc3MiLCJsaWJyYXJpZXMvX25vcm1hbGl6ZS5zY3NzIiwicGFydGlhbHMvX2JyZWFrcG9pbnRzLm1vZHVsZXMuc2NzcyIsInBhcnRpYWxzL192YXJpYWJsZXMuc2NzcyIsInBhcnRpYWxzL19mb250cy5zY3NzIiwicGFydGlhbHMvX21peGlucy5zY3NzIiwibGlicmFyaWVzL19pbmNsdWRlLW1lZGlhLnNjc3MiLCJwYXJ0aWFscy9fbWlzYy5zY3NzIiwicGFydGlhbHMvX2VsZW1lbnRzLnNjc3MiLCJwYXJ0aWFscy9faGVhZGVyLnNjc3MiLCJwYXJ0aWFscy9fc2VhcmNoZm9ybS5zY3NzIiwicGFydGlhbHMvX2NvbnRlbnQuc2NzcyIsInBhcnRpYWxzL19mb290ZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7Ozs7R0FBQTtBQ0FBOzs7O0dBQUE7QUNBQSwyRUFBQTtBQUVBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRSxpQkFBQSxFQUFBLE1BQUE7RUFDQSw4QkFBQSxFQUFBLE1BQUE7QUhTRjs7QUdOQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRSxTQUFBO0FIT0Y7O0FHSkE7O0VBQUE7QUFJQTtFQUNFLGNBQUE7QUhNRjs7QUdIQTs7O0VBQUE7QUFLQTtFQUNFLGNBQUE7RUFDQSxnQkFBQTtBSEtGOztBR0ZBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRSx1QkFBQSxFQUFBLE1BQUE7RUFDQSxTQUFBLEVBQUEsTUFBQTtFQUNBLGlCQUFBLEVBQUEsTUFBQTtBSEdGOztBR0FBOzs7RUFBQTtBQUtBO0VBQ0UsaUNBQUEsRUFBQSxNQUFBO0VBQ0EsY0FBQSxFQUFBLE1BQUE7QUhFRjs7QUdDQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRSw2QkFBQTtBSEFGOztBR0dBOzs7RUFBQTtBQUtBO0VBQ0UsbUJBQUEsRUFBQSxNQUFBO0VBQ0Es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ZUo7SUFYSSxtQkYxQ3FCO0VMaWhCdkI7QUFDRjtBUU9JO0VEcGVKO0lBUEksbUJGN0NxQjtFTHFoQnZCO0FBQ0Y7QVFFSTtFRHBlSjtJQUhJLG1CRmhEc0I7RUx5aEJ4QjtBQUNGOztBTzlkQTtFQXJERSxnQkZYdUI7RUVZdkIsd0JBQUE7RUF3QkEsbUJGcEN1QjtFRXFDdkIsd0JBQUE7QVBnZ0JGO0FRVkk7RUQzZEo7SUFqREksZ0JGZHlCO0VMd2lCM0I7QUFDRjtBUWZJO0VEM2RKO0lBN0NJLGdCRmpCcUI7RUw0aUJ2QjtBQUNGO0FRcEJJO0VEM2RKO0lBekNJLGdCRnBCcUI7RUxnakJ2QjtBQUNGO0FRekJJO0VEM2RKO0lBckNJLGdCRnZCc0I7RUxvakJ4QjtBQUNGO0FROUJJO0VEM2RKO0lBeEJJLG1CRnZDeUI7RUw0akIzQjtBQUNGO0FRbkNJO0VEM2RKO0lBcEJJLG1CRjFDcUI7RUxna0J2QjtBQUNGO0FReENJO0VEM2RKO0lBaEJJLG1CRjdDcUI7RUxva0J2QjtBQUNGO0FRN0NJO0VEM2RKO0lBWkksbUJGaERzQjtFTHdrQnhCO0FBQ0Y7O0FPL2VBO0VBeEJFLGtCRnRFdUI7RUV1RXZCLHdCQUFBO0VBQ0EsNEJBQUE7QVAyZ0JGO0FReERJO0VEN2JKO0lBbkJJLGtCRjFFeUI7SUUyRXpCLDRCQUFBO0VQNGdCRjtBQUNGO0FROURJO0VEN2JKO0lBZEksa0JGOUVxQjtJRStFckIsNEJBQUE7RVA2Z0JGO0FBQ0Y7QVFwRUk7RUQ3Yko7SUFUSSxrQkZsRnFCO0lFbUZyQiw0QkFBQTtFUDhnQkY7QUFDRjtBUTFFSTtFRDdiSjtJQUpJLGtCRnRGc0I7SUV1RnRCLDRCQUFBO0VQK2dCRjtBQUNGOztBTy9lQTtFQXhCRSxpQkZwR3VCO0VFcUd2Qix3QkFBQTtFQUNBLDRCQUFBO0FQMmdCRjtBUXRGSTtFRC9aSjtJQW5CSSxpQkZ4R3lCO0lFeUd6Qiw0QkFBQTtFUDRnQkY7QUFDRjtBUTVGSTtFRC9aSjtJQWRJLGlCRjVHcUI7SUU2R3JCLDRCQUFBO0VQNmdCRjtBQUNGO0FRbEdJO0VEL1pKO0lBVEksaUJGaEhxQjtJRWlIckIsNEJBQUE7RVA4Z0JGO0FBQ0Y7QVF4R0k7RUQvWko7SUFKSSxpQkZwSHNCO0lFcUh0Qiw0QkFBQTtFUCtnQkY7QUFDRjs7QU8xZUE7RUE3QkUsaUJGbEl1QjtFRW1JdkIsa0JGbkl1QjtFRW9JdkIsd0JBQUE7RUFDQSw0QkFBQTtBUDJnQkY7QVFySEk7RUQ1WEo7SUF2QkksaUJGdkl5QjtJRXdJekIsa0JGeEl5QjtJRXlJekIsNEJBQUE7RVA0Z0JGO0FBQ0Y7QVE1SEk7RUQ1WEo7SUFqQkksaUJGNUlxQjtJRTZJckIsa0JGN0lxQjtJRThJckIsNEJBQUE7RVA2Z0JGO0FBQ0Y7QVFuSUk7RUQ1WEo7SUFYSSxpQkZqSnFCO0lFa0pyQixrQkZsSnFCO0lFbUpyQiw2QkFBQTtFUDhnQkY7QUFDRjtBUTFJSTtFRDVYSjtJQUxJLGlCRnRKc0I7SUV1SnRCLGtCRnZKc0I7SUV3SnRCLDZCQUFBO0VQK2dCRjtBQUNGOztBT3BmQTtFQW5CRSxpQkY5Sm9CO0VFK0pwQix5QkFBQTtBUDJnQkY7QVF0Skk7RURuV0o7SUFmSSxpQkZqS3NCO0VMNnFCeEI7QUFDRjtBUTNKSTtFRG5XSjtJQVhJLGlCRnBLa0I7RUxpckJwQjtBQUNGO0FRaEtJO0VEbldKO0lBUEksaUJGdktrQjtFTHFyQnBCO0FBQ0Y7QVFyS0k7RURuV0o7SUFISSxpQkYxS21CO0VMeXJCckI7QUFDRjs7QU9wZkE7RUFuQkUsb0JGdkxvQjtFRXdMcEIseUJBQUE7QVAyZ0JGO0FRL0tJO0VEMVVKO0lBZkksb0JGMUxzQjtFTHNzQnhCO0FBQ0Y7QVFwTEk7RUQxVUo7SUFYSSxvQkY3TGtCO0VMMHNCcEI7QUFDRjtBUXpMSTtFRDFVSjtJQVBJLG9CRmhNa0I7RUw4c0JwQjtBQUNGO0FROUxJO0VEMVVKO0lBSEksb0JGbk1tQjtFTGt0QnJCO0FBQ0Y7O0FPcGZBO0VBbkJFLGtCRnZOdUI7RUV3TnZCLHlCQUFBO0FQMmdCRjtBUXhNSTtFRGpUSjtJQWZJLGtCRjFOeUI7RUxzdUIzQjtBQUNGO0FRN01JO0VEalRKO0lBWEksa0JGN05xQjtFTDB1QnZCO0FBQ0Y7QVFsTkk7RURqVEo7SUFQSSxrQkZoT3FCO0VMOHVCdkI7QUFDRjtBUXZOSTtFRGpUSjtJQUhJLGtCRm5Pc0I7RUxrdkJ4QjtBQUNGOztBT3BmQTtFQW5CRSxtQkZoUHVCO0VFaVB2Qix5QkFBQTtBUDJnQkY7QVFqT0k7RUR4Uko7SUFmSSxtQkZuUHlCO0VMK3ZCM0I7QUFDRjtBUXRPSTtFRHhSSjtJQVhJLG1CRnRQcUI7RUxtd0J2QjtBQUNGO0FRM09JO0VEeFJKO0lBUEksbUJGelBxQjtFTHV3QnZCO0FBQ0Y7QVFoUEk7RUR4Uko7SUFISSxtQkY1UHNCO0VMMndCeEI7QUFDRjs7QU9wZ0JBO0VBdkdFLGlCRjlKb0I7RUUrSnBCLHlCQUFBO0VBd0JBLG9CRnZMb0I7RUV3THBCLHlCQUFBO0FQd2xCRjtBUTVQSTtFRC9RSjtJQW5HSSxpQkZqS3NCO0VMbXhCeEI7QUFDRjtBUWpRSTtFRC9RSjtJQS9GSSxpQkZwS2tCO0VMdXhCcEI7QUFDRjtBUXRRSTtFRC9RSjtJQTNGSSxpQkZ2S2tCO0VMMnhCcEI7QUFDRjtBUTNRSTtFRC9RSjtJQXZGSSxpQkYxS21CO0VMK3hCckI7QUFDRjtBUWhSSTtFRC9RSjtJQTFFSSxvQkYxTHNCO0VMdXlCeEI7QUFDRjtBUXJSSTtFRC9RSjtJQXRFSSxvQkY3TGtCO0VMMnlCcEI7QUFDRjtBUTFSSTtFRC9RSjtJQWxFSSxvQkZoTWtCO0VMK3lCcEI7QUFDRjtBUS9SSTtFRC9RSjtJQTlESSxvQkZuTW1CO0VMbXpCckI7QUFDRjs7QU8xaUJBO0VBckNFLG1CRmhQdUI7RUVpUHZCLHlCQUFBO0VBMUJBLGtCRnZOdUI7RUV3TnZCLHlCQUFBO0FQOG1CRjtBUTNTSTtFRHRRSjtJQWpDSSxtQkZuUHlCO0VMeTBCM0I7QUFDRjtBUWhUSTtFRHRRSjtJQTdCSSxtQkZ0UHFCO0VMNjBCdkI7QUFDRjtBUXJUSTtFRHRRSjtJQXpCSSxtQkZ6UHFCO0VMaTFCdkI7QUFDRjtBUTFUSTtFRHRRSjtJQXJCSSxtQkY1UHNCO0VMcTFCeEI7QUFDRjtBUS9USTtFRHRR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QUNBLDZCQUFBO0VBQ0Esa0NBQUE7QVh3bkNKO0FRM3FCSTtFR3RkRjtJSitLRSxtQkZuUHlCO0VMeXNDM0I7QUFDRjtBUWhyQkk7RUd0ZEY7SUptTEUsbUJGdFBxQjtFTDZzQ3ZCO0FBQ0Y7QVFyckJJO0VHdGRGO0lKdUxFLG1CRnpQcUI7RUxpdEN2QjtBQUNGO0FRMXJCSTtFR3RkRjtJSjJMRSxtQkY1UHNCO0VMcXRDeEI7QUFDRjtBUS9yQkk7RUd0ZEY7SUpzSkUsa0JGMU55QjtFTDZ0QzNCO0FBQ0Y7QVFwc0JJO0VHdGRGO0lKMEpFLGtCRjdOcUI7RUxpdUN2QjtBQUNGO0FRenNCSTtFR3RkRjtJSjhKRSxrQkZoT3FCO0VMcXVDdkI7QUFDRjtBUTlzQkk7RUd0ZEY7SUprS0Usa0JGbk9zQjtFTHl1Q3hCO0FBQ0Y7QVFudEJJO0VHdGRGO0lBa0JJLFlBQUE7SUFFQSwwQkFBQTtJQUNBLDZCQUFBO0VYMHBDSjtBQUNGOztBV3ZwQ0k7RUFFRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7RUFFQSxZTnhHZTtFTXlHZixxQkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxVQUFBO0FYd3BDTjtBUXJ1Qkk7RUc3YkE7SUFnQkksYU5qSGM7SU1rSGQsWUFBQTtJQUNBLGdCTnRITztFTDR3Q2I7QUFDRjtBV3JvQ007RUFDRSxnQkFBQTtFQUNBLFlOeElhO0VNeUliLGFBQUE7RUFDQSxtQkFBQTtFQUNBLG1CQUFBO0VBQ0EsaUJBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0FYdW9DUjtBUXZ2Qkk7RUd6WkU7SUFhSSxlQUFBO0lBRUEsYU5wSlk7SU1xSlosWUFBQTtJQUVBLG9CQUFBO0VYcW9DUjtBQUNGO0FRL3ZCSTtFR3paRTtJQTRCSSxlQUFBO0VYZ29DUjtBQUNGO0FXNW5DUTtFQUNFLGNBQUE7RUFDQSxjTjNJRDtFTTRJQyxnQkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0FYOG5DVjtBUTN3Qkk7RUd4WEk7SUFTSSxrQkFBQTtJQUNBLGVBQUE7RVg4bkNWO0FBQ0Y7QVFqeEJJO0VHeFhJO0lBY0ksaUJBQUE7SUFDQSxlQUFBO0VYK25DVjtBQUNGO0FRdnhCSTtFR3hYSTtJQW1CSSxpQkFBQTtJQUNBLG9CQUFBO0VYZ29DVjtBQUNGO0FXOW5DVTtFQUNFLGNBQUE7RUFDQSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUVBLHlCQUFBO0FYK25DWjtBUXB5Qkk7RUdqV007SUFTSSxpQkFBQTtFWGdvQ1o7QUFDRjtBUXp5Qkk7RUdqV007SUFhSSxpQkFBQTtFWGlvQ1o7QUFDRjtBUTl5Qkk7RUdqV007SUFpQkksZUFBQTtFWGtvQ1o7QUFDRjtBUW56Qkk7RUdqV007SUFxQkksaUJBQUE7RVhtb0NaO0FBQ0Y7QVF4ekJJO0VHaldNO0lBeUJJLGlCQUFBO0VYb29DWjtBQUNGO0FXbG9DWTtFQUNFLGVBQUE7RUFDQSx5QkFBQTtBWG9vQ2Q7QVFqMEJJO0VHclVRO0lBS0ksaUJBQUE7RVhxb0NkO0FBQ0Y7QVF0MEJJO0VHclVRO0lBU0ksaUJBQUE7RVhzb0NkO0FBQ0Y7QVEzMEJJO0VHclVRO0lBYUksZUFBQTtFWHVvQ2Q7QUFDRjtBUWgxQkk7RUdyVVE7SUFpQkksaUJBQUE7RVh3b0NkO0FBQ0Y7QVFyMUJJO0VHclVRO0lBcUJJLGlCQUFBO0VYeW9DZDtBQUNGO0FXdG9DVTtFQUVFLHdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxhQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0EsY054Tkg7QUwrMUNUO0FRbjJCSTtFRzVTTTtJQWFJLGlCQUFBO0VYc29DWjtBQUNGO0FReDJCSTtFRzVTTTtJQWlCSSxjQUFBO0lBQ0EsZ0JBQUE7SUFDQSxpQkFBQTtFWHVvQ1o7QUFDRjtBUS8yQkk7RUc1U007SUF1QkksZUFBQTtFWHdvQ1o7QUFDRjs7QVdsb0NJO0VKektGLGlCRnBHdUI7RUVxR3ZCLHdCQUFBO0VBQ0EsNEJBQUE7RUl5S0ksV0FBQTtFQUNBLFlBQUE7RUFHQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7QVhxb0NOO0FRbjRCSTtFRzlRQTtJSnBLQSxpQkZ4R3lCO0lFeUd6Qiw0QkFBQTtFUHl6Q0Y7QUFDRjtBUXo0Qkk7RUc5UUE7SUovSkEsaUJGNUdxQjtJRTZHckIsNEJBQUE7RVAwekNGO0FBQ0Y7QVEvNEJJO0VHOVFBO0lKMUpBLGlCRmhIcUI7SUVpSHJCLDRCQUFBO0VQMnpDRjtBQUNGO0FRcjVCSTtFRzlRQTtJSnJKQSxpQkZwSHNCO0lFcUh0Qiw0QkFBQTtFUDR6Q0Y7QUFDRjtBUTM1Qkk7RUc5UUE7SUFvQkksV0FBQTtJQUNBLFdBQUE7SUFDQSxXQUFBO0lBQ0EsU0FBQTtJQUNBLFNBQUE7SUFDQSxVQUFBO0VYeXBDTjtBQUNGO0FRcjZCSTtFRzlRQTtJQWlDSSxZQUFBO0VYc3BDTjtBQUNGOztBV25wQ0k7RUo5TUYsaUJGcEd1QjtFRXFHdkIsd0JBQUE7RUFDQSw0QkFBQTtFQTBJQSxtQkZoUHVCO0VFaVB2Qix5QkFBQTtFQTFCQSxrQkZ2TnVCO0VFd052Qix5QkFBQTtFSTZGSSxpQkFBQTtFQUNBLG9CQUFBO0VBQ0EsY0FBQTtFQUNBLGlDQUFBO0VBSUEsaUJBQUE7RUFDQSxpQkFBQTtBWHdwQ047QVExN0JJO0VHek9BO0lKek1BLGlCRnhHeUI7SUV5R3pCLDRCQUFBO0VQZzNDRjtBQUNGO0FRaDhCSTtFR3pPQTtJSnBNQSxpQkY1R3FCO0lFNkdyQiw0QkFBQTtFUGkzQ0Y7QUFDRjtBUXQ4Qkk7RUd6T0E7SUovTEEsaUJGaEhxQjtJRWlIckIsNEJBQUE7RVBrM0NGO0FBQ0Y7QVE1OEJJO0VHek9BO0lKMUxBLGlCRnBIc0I7SUVxSHRCLDRCQUFBO0VQbTNDRjtBQUNGO0FRbDlCSTtFR3pPQTtJSjlEQSxtQkZuUHlCO0VMZy9DM0I7QUFDRjtBUXY5Qkk7RUd6T0E7SUoxREEsbUJGdFBxQjtFTG8vQ3ZCO0FBQ0Y7QVE1OUJJO0VHek9BO0lKdERBLG1CRnpQcUI7RUx3L0N2QjtBQUNGO0FRaitCSTtFR3pPQTtJSmxEQSxtQkY1UHNCO0VMNC9DeEI7QUFDRjtBUXQrQkk7RUd6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RztBTG8zRFg7O0FXdnhDSTtFSjdZRixtQkZoUHVCO0VFaVB2Qix5QkFBQTtFSStZSSxXQUFBO0VBQ0EsWU5yb0JlO0VNc29CZixhQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsVUFBQTtBWDB4Q047QVF0NENJO0VHa0dBO0lKellBLG1CRm5QeUI7RUxvNkQzQjtBQUNGO0FRMzRDSTtFR2tHQTtJSnJZQSxtQkZ0UHFCO0VMdzZEdkI7QUFDRjtBUWg1Q0k7RUdrR0E7SUpqWUEsbUJGelBxQjtFTDQ2RHZCO0FBQ0Y7QVFyNUNJO0VHa0dBO0lKN1hBLG1CRjVQc0I7RUxnN0R4QjtBQUNGO0FRMTVDSTtFR2tHQTtJQWFJLFlOaHBCTztJTWlwQlAsZUFBQTtFWCt5Q047QUFDRjs7QVc3eUNNO0VBRUUsaUJBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFFQSxTQUFBO0VBSUEsYUFBQTtBWDJ5Q1I7QVd6eUNRO0VBQ0UsY05qb0JEO0FMNDZEVDtBUTM2Q0k7RUdtSEU7SUFxQkksWU56cUJLO0lNNHFCTCxhQUFBO0lBUUEsaUJBQUE7RVg4eENSO0VXNXhDUTtJQUNFLGNOdnBCSDtFTHE3RFA7RVc1eENVO0lBQ0UsV0FBQTtFWDh4Q1o7QUFDRjs7QVd6eENNO0VBQ0UsY0FBQTtFQUNBLGlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0FYNHhDUjtBVzF4Q1E7RUFDRSxjTnZxQkQ7QUxtOERUO0FRbDhDSTtFRytKRTtJQWVJLGlCQUFBO0VYd3hDUjtBQUNGO0FRdjhDSTtFRytKRTtJQW1CSSxhQUFBO0VYeXhDUjtBQUNGOztBV3R4Q0k7RUozdEJGLFdBQUE7RUFDQSxZQUFBO0VJNHRCSSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsU04xdEJlO0VNMnRCZixPQUFBO0VBQ0EseUJOcHNCRztFTXFzQkgsVUFBQTtBWDB4Q047QVF4OUNJO0VHc0xBO0lBYUksU05wdUJPO0VMNi9EYjtBQUNGO0FXdnhDTTtFSmpmSixtQkZoUHVCO0VFaVB2Qix5QkFBQTtFQTFCQSxrQkZ2TnVCO0VFd052Qix5QkFBQTtBUHN5REY7QVFuK0NJO0VHc01FO0lKN2VGLG1CRm5QeUI7RUxpZ0UzQjtBQUNGO0FReCtDSTtFR3NNRTtJSnplRixtQkZ0UHFCO0VMcWdFdkI7QUFDRjtBUTcrQ0k7RUdzTUU7SUpyZUYsbUJGelBxQjtFTHlnRXZCO0FBQ0Y7QVFsL0NJO0VHc01FO0lKamVGLG1CRjVQc0I7RUw2Z0V4QjtBQUNGO0FRdi9DSTtFR3NNRTtJSnRnQkYsa0JGMU55QjtFTHFoRTNCO0FBQ0Y7QVE1L0NJO0VHc01FO0lKbGdCRixrQkY3TnFCO0VMeWhFdkI7QUFDRjtBUWpnREk7RUdzTUU7SUo5ZkYsa0JGaE9xQjtFTDZoRXZCO0FBQ0Y7QVF0Z0RJO0VHc01FO0lKMWZGLGtCRm5Pc0I7RUxpaUV4QjtBQUNGOztBWXhqRUE7O0dBQUE7QUFJQTtFTGNFLFdBQUE7RUFDQSxpQkZWVTtFRVdWLGNBQUE7RUtkQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGFBQUE7RUFDQSwrQkFBQTtFQUNBLHdCQUFBO0FaNGpFRjs7QVl6akVFO0VBQ0UsWUFBQTtFQUNBLFVBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLHlCUHlCSztBTG1pRVQ7QVkxakVJO0VBQ0UsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsY1B3Qkc7RU92QkgsY0FBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxhQUFBO0FaNGpFTjtBWXpqRUk7RUFDRSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsY0FBQTtFQUNBLHVCQUFBO0VBQ0EsY1BTRztBTGtqRVQ7O0FZdmpFRTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7RUFDQSxjUERLO0VPRUwsaUJBQUE7RUFDQSx5QlBSSztFT1NMLGtDQUFBO0VBQ0EsNkJBQUE7RUFDQSwrQkFBQTtFQUNBLGdDQUFBO0VBQ0EsaUJBQUE7QVowakVKO0FZeGpFSTtFQUNFLHlCUFJPO0FMa2tFYjs7QWF0bkVBOztHQUFBO0FBS0E7RU5HRSxXQUFBO0VBQ0EsWUFBQTtFTURBLGlCQUFBO0VBQ0EsZUFBQTtBYnVuRUY7QWE1bUVFO0VBQ0UsWUFBQTtFQUNBLGdCQUFBO0VOSkYsV0FBQTtFQUNBLGlCRlZVO0VFV1YsY0FBQTtFQThPQSxtQkZoUHVCO0VFaVB2Qix5QkFBQTtFQTFCQSxrQkZ2TnVCO0VFd052Qix5QkFBQTtFTWhORSxhQUFBO0VBQ0EsY0FBQTtFQUNBLG9CQUFBO0VBR0Esa0JBQUE7RUFDQSxVQUFBO0FiZ25FSjtBUW5tREk7RUt6aEJGO0lOa1BFLG1CRm5QeUI7RUxpb0UzQjtBQUNGO0FReG1ESTtFS3poQkY7SU5zUEUsbUJGdFBxQjtFTHFvRXZCO0FBQ0Y7QVE3bURJO0VLemhCRjtJTjBQRSxtQkZ6UHFCO0VMeW9FdkI7QUFDRjtBUWxuREk7RUt6aEJGO0lOOFBFLG1CRjVQc0I7RUw2b0V4QjtBQUNGO0FRdm5ESTtFS3poQkY7SU55TkUsa0JGMU55QjtFTHFwRTNCO0FBQ0Y7QVE1bkRJO0VLemhCRjtJTjZORSxrQkY3TnFCO0VMeXBFdkI7QUFDRjtBUWpvREk7RUt6aEJGO0lOaU9FLGtCRmhPcUI7RUw2cEV2QjtBQUNGO0FRdG9ESTtFS3poQkY7SU5xT0Usa0JGbk9zQjtFTGlxRXhCO0FBQ0Y7QVEzb0RJO0VLemhCRjtJQW1CSSxpQkFBQTtJQUNBLGlCQUFBO0lBQ0Esb0JBQUE7RWJxcEVKO0FBQ0Y7O0FhanBFSTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUFBO0FBMkJFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFBQTtBQW1CRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUFrREY7RUFDRSxhQUFBO0VBQ0EsMEJBQUE7RUFDQSx3QkFBQTtBYitvRVI7QVFudkRJO0VLL1pFO0lBTUksMEJBQUE7SUFDQSx3QkFBQTtFYmdwRVI7QUFDRjs7QWE3b0VNO0VBQ0UsOEJBQUE7RUFDQSw2QkFBQTtBYmdwRVI7QVE5dkRJO0VLcFpFO0lBS0ksZ0NBQUE7SUFDQSw0QkFBQTtFYmlwRVI7QUFDRjs7QWEvb0VRO0VOcUJOLGlCRjlKb0I7RUUrSnBCLHlCQUFBO0VBd0JBLG9CRnZMb0I7RUV3THBCLHlCQUFBO0VNNUNRLFdBQUE7RUFFQSxxQkFBQTtFQUNBLFdBQUE7RUFHQSxpQkFBQTtBYmlwRVY7QVEvd0RJO0VLM1lJO0lOeUJKLGlCRmpLc0I7RUxzeUV4QjtBQUNGO0FRcHhESTtFSzNZSTtJTjZCSixpQkZwS2tCO0VMMHlFcEI7QUFDRjtBUXp4REk7RUszWUk7SU5pQ0osaUJGdktrQjtFTDh5RXBCO0FBQ0Y7QVE5eERJO0VLM1lJO0lOcUNKLGlCRjFLbUI7RUxrekVyQjtBQUNGO0FRbnlESTtFSzNZSTtJTmtESixvQkYxTHNCO0VMMHpFeEI7QUFDRjtBUXh5REk7RUszWUk7SU5zREosb0JGN0xrQjtFTDh6RXBCO0FBQ0Y7QVE3eURJO0VLM1lJO0lOMERKLG9CRmhNa0I7RUxrMEVwQjtBQUNGO0FRbHpESTtFSzNZSTtJTjhESixvQkZuTW1CO0VMczBFckI7QUFDRjtBUXZ6REk7RUszWUk7SUFhSSxxQkFBQTtJQUNBLFdBQUE7RWJ5ckVWO0FBQ0Y7QWFuckVVO0VBQ0UsZ0JBQUE7RUFDQSxvQkFBQTtBYnFyRVo7QWFuckVZO0VBQ0UsYUFBQTtBYnFyRWQ7QWFqckVVO0VBQ0UsZ0JBQUE7QWJtckVaO0FhaHJFVTtFQUNFLGdCQUFBO0Fia3JFWjtBYS9xRVU7RUFDRSxnQkFBQTtBYmlyRVo7QWE5cUVVO0VBQ0UsZ0JBQUE7QWJnckVaO0FhN3FFVTtFQUNFLG1CQUFBO0FiK3FFWjtBYTdxRVk7RUFDRSxnQkFBQTtBYitxRWQ7QWEzcUVVO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLDRCQUFBO0FiNnFFWjtBYTNxRVk7RUFDRSxtQkFBQTtBYjZxRWQ7O0FhenFFVTtFTjFOUixXQUFBO0VBQ0EsWUFBQTtFTTJOVSxXQUFBO0FiNnFFWjs7QWEzcUVZO0VOcE5WLFdBQUE7RUFDQSxpQkZWVTtFRVdWLGNBQUE7RUE4T0EsbUJGaFB1QjtFRWlQdkIseUJBQUE7RUExQkEsa0JGdk51QjtFRXdOdkIseUJBQUE7RUFuREEsaUJGOUpvQjtFRStKcEIseUJBQUE7QVBxdUVGO0FRaDNESTtFS3ZVUTtJTmdDUixtQkZuUHlCO0VMODRFM0I7QUFDRjtBUXIzREk7RUt2VVE7SU5vQ1IsbUJGdFBxQjtFTGs1RXZCO0FBQ0Y7QVExM0RJO0VLdlVRO0lOd0NSLG1CRnpQcUI7RUxzNUV2QjtBQUNGO0FRLzNESTtFS3ZVUTtJTjRDUixtQkY1UHNCO0VMMDVFeEI7QUFDRjtBUXA0REk7RUt2VVE7SU5PUixrQkYxTnlCO0VMazZFM0I7QUFDRjtBUXo0REk7RUt2VVE7SU5XUixrQkY3TnFCO0VMczZFdkI7QUFDRjtBUTk0REk7RUt2VVE7SU5lUixrQkZoT3FCO0VMMDZFdkI7QUFDRjtBUW41REk7RUt2VVE7SU5tQlIsa0JGbk9zQjtFTDg2RXhCO0FBQ0Y7QVF4NURJO0VLdlVRO0lOM0NSLGlCRmpLc0I7RUwrNkV4QjtBQUNGO0FRNzVESTtFS3ZVUTtJTnZDUixpQkZwS2tCO0VMbTdFcEI7QUFDRjtBUWw2REk7RUt2VVE7SU5uQ1IsaUJGdktrQjtFTHU3RXBCO0FBQ0Y7QVF2NkRJO0VLdlVRO0lOL0JSLGlCRjFLbUI7RUwyN0VyQjtBQUNGOztBYTF1RVE7RUFDRSxnQkFBQTtBYjZ1RVY7QVFoN0RJO0VLOVRJO0lBSUksb0JBQUE7RWI4dUVWO0FBQ0Y7O0FhM3VFUTtFTnZDTixvQkZ2TG9CO0VFd0xwQix5QkFBQTtFTXdDUSxXQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FiK3VFVjtBUTc3REk7RUt0VEk7SU5uQ0osb0JGMUxzQjtFTG85RXhCO0FBQ0Y7QVFsOERJO0VLdFRJO0lOL0JKLG9CRjdMa0I7RUx3OUVwQjtBQUNGO0FRdjhESTtFS3RUSTtJTjNCSixvQkZoTWtCO0VMNDlFcEI7QUFDRjtBUTU4REk7RUt0VEk7SU52Qkosb0JGbk1tQjtFTGcrRXJCO0FBQ0Y7QVFqOURJO0VLdFRJO0lBT0kscUJBQUE7SUFDQSxXQUFBO0Vib3dFVjtBQUNGOztBYWp3RUE7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7QWJvd0VGO0FRNzlESTtFSzFTSjtJQVVJLFVBQUE7SUFDQSxZQUFBO0lBQ0EsYUFBQTtFYml3RUY7QUFDRjs7QWE5dkVBO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0FiaXdFRjtBUTErREk7RUsxUko7SUFVSSxVQUFBO0lBQ0EsV0FBQTtJQUNBLGFBQUE7RWI4dkVGO0FBQ0Y7O0FheHZFSTtFQUNFLGVBQUE7RUFDQSxlQUFBO0VBQ0EsV0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLDJDQUFBO0FiMnZFTjs7QWF0dkVBO0VBQ0Usc0JBQUE7RUFDQSxhQUFBO0FieXZFRjtBYXZ2RUU7RUFDRSxXQUFBO0FieXZFSjtBYXR2RUU7RUFDRSxlQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7QWJ3dkVKO0FRM2dFSTtFS2pQRjtJQU9JLGlCQUFBO0VieXZFSjtBQUNGO0FhdnZFSTtFQUNFLFdBQUE7QWJ5dkVOO0FhN3VFRTtFQUNFLGVBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBYit1RUo7QVF6aEVJO0VLMU5GO0lBT0ksa0JBQUE7RWJndkVKO0FBQ0Y7QWE5dUVJO0VBQ0UsV0FBQTtBYmd2RU47QWFwdUVFO0VBQ0UsV0FBQTtFQUNBLGlCQUFBO0Fic3VFSjtBY2xsRkE7O0dBQUE7QUFLQTtFQUNFLGlCQUFBO0VBQ0EsZUFBQTtFQUNBLHlCVDhCTztBTG9qRlQ7QWMza0ZFO0VQR0EsV0FBQTtFQUNBLGlCRlZVO0VFV1YsY0FBQTtFQW1LQSxpQkY5Sm9CO0VFK0pwQix5QkFBQTtFQXdCQSxvQkZ2TG9CO0VFd0xwQix5QkFBQTtFTzlMRSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY1R1Qks7QUwwakZUO0FRempFSTtFTTloQkY7SVA0S0UsaUJGaktzQjtFTGdsRnhCO0FBQ0Y7QVE5akVJO0VNOWhCRjtJUGdMRSxpQkZwS2tCO0VMb2xGcEI7QUFDRjtBUW5rRUk7RU05aEJGO0lQb0xFLGlCRnZLa0I7RUx3bEZwQjtBQUNGO0FReGtFSTtFTTloQkY7SVB3TEUsaUJGMUttQjtFTDRsRnJCO0FBQ0Y7QVE3a0VJO0VNOWhCRjtJUHFNRSxvQkYxTHNCO0VMb21GeEI7QUFDRjtBUWxsRUk7RU05aEJGO0lQeU1FLG9CRjdMa0I7RUx3bUZwQjtBQUNGO0FRdmxFSTtFTTloQkY7SVA2TUUsb0JGaE1rQjtFTDRtRnBCO0FBQ0Y7QVE1bEVJO0VNOWhCRjtJUGlORSxvQkZuTW1CO0VMZ25GckI7QUFDRjtBY25uRkk7RVB1T0YsbUJGaFB1QjtFRWlQdkIseUJBQUE7RUExQkEsa0JGdk51QjtFRXdOdkIseUJBQUE7RU81TUksb0JBQUE7QWR1bkZOO0FReG1FSTtFTWxoQkE7SVAyT0EsbUJGblB5QjtFTHNvRjNCO0FBQ0Y7QVE3bUVJO0VNbGhCQTtJUCtPQSxtQkZ0UHFCO0VMMG9GdkI7QUFDRjtBUWxuRUk7RU1saEJBO0lQbVBBLG1CRnpQcUI7RUw4b0Z2QjtBQUNGO0FRdm5FSTtFTWxoQkE7SVB1UEEsbUJGNVBzQjtFTGtwRnhCO0FBQ0Y7QVE1bkVJO0VNbGhCQTtJUGtOQSxrQkYxTnlCO0VMMHBGM0I7QUFDRjtBUWpvRUk7RU1saEJBO0lQc05BLGtCRjdOcUI7RUw4cEZ2QjtBQUNGO0FRdG9FSTtFTWxoQkE7SVAwTkEsa0JGaE9xQjtFTGtxRnZCO0FBQ0Y7QVEzb0VJO0VNbGhCQTtJUDhOQSxrQkZuT3NCO0VMc3FGeEI7QUFDRjtBUWhwRUk7RU1saEJBO0lBTUksV0FBQTtJQUNBLG9CQUFBO0VkZ3FGTjtBQUNGO0FjOXBGTTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtBZGdxRlI7QVE5cEVJO0VNeGdCRTtJQVNJLFdBQUE7RWRpcUZSO0FBQ0Y7QWMvcEZRO0VQaU5OLG1CRmhQdUI7RUVpUHZCLHlCQUFBO0VBMUJBLGtCRnZOdUI7RUV3TnZCLHlCQUFBO0VPdkxRLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtFQUVBLGlCQUFBO0FkbXFGVjtBUS9xRUk7RU01Zkk7SVBxTkosbUJGblB5QjtFTDZzRjNCO0FBQ0Y7QVFwckVJO0VNNWZJO0lQeU5KLG1CRnRQcUI7RUxpdEZ2QjtBQUNGO0FRenJFSTtFTTVmSTtJUDZOSixtQkZ6UHFCO0VMcXRGdkI7QUFDRjtBUTlyRUk7RU01Zkk7SVBpT0osbUJGNVBzQjtFTHl0RnhCO0FBQ0Y7QVFuc0VJO0VNNWZJO0lQNExKLGtCRjFOeUI7RUxpdUYzQjtBQUNGO0FReHNFSTtFTTVmSTtJUGdNSixrQkY3TnFCO0VMcXVGdkI7QUFDRjtBUTdzRUk7RU01Zkk7SVBvTUosa0JGaE9xQjtFTHl1RnZCO0FBQ0Y7QVFsdEVJO0VNNWZJO0lQd01KLGtCRm5Pc0I7RUw2dUZ4QjtBQUNGO0FRdnRFSTtFTTVmSTtJQVdJLFdBQUE7SUFDQSxlQUFBO0lBQ0EsVUFBQTtFZDRzRlY7RWMxc0ZVO0lBQ0UsWUFBQTtJQUNBLGNUYkc7SVNjSCxrQkFBQTtJQUNBLE1BQUE7SUFDQSxXQUFBO0VkNHNGWjtFY3ZzRlk7SUFDRSxXQUFBO0VkeXNGZDtBQUNGO0FjcnNGVTtFQUNFLFdBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsY1QzQ0g7RVM0Q0csa0JBQUE7RUFFQSx5QkFBQTtFQUNBLGlCQUFBO0Fkc3NGWjtBUXB2RUk7RU03ZE07SUFjSSxpQkFBQTtJQUNBLFdBQUE7SUFFQSxnQkFBQTtFZHNzRlo7QUFDRjs7QWNoc0ZJO0VQMEpGLG1CRmhQdUI7RUVpUHZCLHlCQUFBO0VBMUJBLGtCRnZOdUI7RUV3TnZCLHlCQUFBO0VPN0hJLGVBQUE7RUFFQSxrQkFBQTtBZGtzRk47QVFwd0VJO0VNcmNBO0lQOEpBLG1CRm5QeUI7RUxreUYzQjtBQUNGO0FRendFSTtFTXJjQTtJUGtLQSxtQkZ0UHFCO0VMc3lGdkI7QUFDRjtBUTl3RUk7RU1yY0E7SVBzS0EsbUJGelBxQjtFTDB5RnZCO0FBQ0Y7QVFueEVJO0VNcmNBO0lQMEtBLG1CRjVQc0I7RUw4eUZ4QjtBQUNGO0FReHhFSTtFTXJjQTtJUHFJQSxrQkYxTnlCO0VMc3pGM0I7QUFDRjtBUTd4RUk7RU1yY0E7SVB5SUEsa0JGN05xQjtFTDB6RnZCO0FBQ0Y7QVFseUVJO0VNcmNBO0lQNklBLGtCRmhPcUI7RUw4ekZ2QjtBQUNGO0FRdnlFSTtFTXJjQTtJUGlKQSxrQkZuT3NCO0VMazBGeEI7QUFDRjtBUTV5RUk7RU1yY0E7SUFVSSxnQkFBQTtJQUNBLFdBQUE7RWQydUZOO0FBQ0Y7O0FDbjFGSTtFQUNFLGVBQUE7RUFDQSxlQUFBO0VBQ0EsV0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLDJDQUFBO0FEczFGTjs7QUNoMUZBO0VBQ0UsYUFBQTtFQUNBLDBCQUFBO0VBQ0EseUJBQUE7QURtMUZGO0FRcDBFSTtFUGxoQko7SUFNSSw4QkFBQTtJQUNBLG9CQUFBO0lBQ0EsbUJBQUE7RURvMUZGO0FBQ0Y7QVEzMEVJO0VQbGhCSjtJQVlJLHNDQUFBO0lBQ0Esb0JBQUE7SUFDQSxtQkFBQTtFRHExRkY7QUFDRjs7QUNuMUZFO0VBQ0UsbUJBQUE7RUFDQSxhQUFBO0FEczFGSjtBQ2wxRkk7RUFDRSxjQUFBO0VBQ0EsYUFBQTtFQUNBLHlCQUFBO0FEbzFGTjtBQ2oxRkk7RUFDRSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtFQUNBLGNJWEc7RUpZSCxrQkFBQTtBRG0xRk4iLCJmaWxlIjoiYm9va3MuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gICogUEFHRS1TUEVDSUZJQyBTVFlMRVNIRUVUOiBib29rc1xuICAqXG4gICogSW1wb3J0IGNvbW1vbiBzdHlsZXMgYW5kIGhvdXNlIHBhZ2Utc3BlY2lmaWMgc3R5bGVzIGZvciBwYWdlOiBcImJvb2tzXCIuXG4gICovXG4vKipcbiAgKiBDT01NT04gU1RZTEVTXG4gICpcbiAgKiBEZWZpbmVzIHRoZSBzdHlsZXMgdG8gaW1wb3J0IHRoYXQgYXJlIHJlcXVpcmVkIGJ5IHZpcnR1YWxseSBhbGwgcGFnZXMuXG4gICovXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICAqIEJSRUFLUE9JTlRTXG4gICpcbiAgKiBEZWZpbmUgYnJlYWtwb2ludHMgZm9yIG1lZGlhIHF1ZXJ5IHVzZSBhbmQgZXhwb3J0IHRoZW0gZm9yIHVzZSB3aXRoIEpTLlxuICAqL1xuLypcbmV4YW1wbGUgdXNhZ2U6XG5AaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtc21hbGxcIikgey4uLn1cbiovXG46ZXhwb3J0IHtcbiAgYnJlYWtwb2ludFBob25lU21hbGw6IDMyMDtcbiAgYnJlYWtwb2ludFBob25lTGFyZ2U6IDQ4MDtcbiAgYnJlYWtwb2ludFRhYmxldDogNzY4O1xuICBicmVha3BvaW50TGFwdG9wOiA5OTI7XG4gIGJyZWFrcG9pbnREZXNrdG9wOiAxMjAwO1xuICBicmVha3BvaW50RGVza3RvcExhcmdlOiAxNDAwO1xuICBicmVha3BvaW50SGQ6IDE5MjA7XG59XG5cbi8qKlxuICAqIFZBUklBQkxFU1xuICAqL1xuLyoqXG4gICogRGltZW5zaW9uczpcbiAgKi9cbi8qKlxuICAqIENvbG9yczpcbiAgKi9cbi8qKlxuICAqIEZPTlRTXG4gICpcbiAgKiBEZWZpbmUgQGZvbnQtZmFjZSBzdHlsZXMuXG4gICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFRlYWNoZXJzO1xuICBzcmM6IHVybCguLi9mb250cy9UZWFjaGVycy1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLVJlZ3VsYXJJdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBUZWFjaGVycztcbiAgc3JjOiB1cmwoLi4vZm9udHMvVGVhY2hlcnMtTWVkaXVtLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLU1lZGl1bUl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFRlYWNoZXJzO1xuICBzcmM6IHVybCguLi9mb250cy9UZWFjaGVycy1TZW1pQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFRlYWNoZXJzO1xuICBzcmM6IHVybCguLi9mb250cy9UZWFjaGVycy1TZW1pQm9sZEl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFRlYWNoZXJzO1xuICBzcmM6IHVybCguLi9mb250cy9UZWFjaGVycy1Cb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLUJvbGRJdGFsaWMudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBUZWFjaGVycztcbiAgc3JjOiB1cmwoLi4vZm9udHMvVGVhY2hlcnMtRXh0cmFCb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLUV4dHJhQm9sZEl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFBsYXlmYWlyIERpc3BsYXk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1BsYXlmYWlyRGlzcGxheS1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi8qXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IEFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkO1xuICAvL3NyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cblxuXG5mb250LWZhbWlseTogbHRjLWdvdWR5LW9ybmF0ZSwgc2Fucy1zZXJpZjtcblxuZm9udC13ZWlnaHQ6IDQwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGQgSXRhbGljXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IGl0YWxpYztcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0XG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0IEl0YWxpY1xuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogMzAwO1xuXG5mb250LXN0eWxlOiBpdGFsaWM7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkIENvbmRlbnNlZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXItY29uZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0IENvbmRlbnNlZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXItY29uZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcbiovXG4vKipcbiAgKiBNSVhJTlNcbiAgKlxuICAqIFN0YW5kYXJkaXplZCBzdHlsZSBjaHVua3MsIHByb3ZpZGVkIGFzIGJvdGggU0NTUyBtaXhpbnMgYW5kIEhUTUwgY2xhc3Nlcy5cbiAgKi9cbi53cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmlubmVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ubWFyLXRvcCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci10b3Age1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci10b3Age1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cbn1cblxuLm1hci1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICB9XG59XG5cbi5tYXItaG9yaXpvbnRhbCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICB9XG59XG5cbi5tYXItcmlnaHQge1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIH1cbn1cblxuLm1hci1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjVweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogODBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICB9XG59XG5cbi5tYXItaG9yaXpvbnRhbCB7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA4MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTYwcHgpO1xuICB9XG59XG5cbi5wYWQtdG9wIHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZC10b3Age1xuICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC10b3Age1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC10b3Age1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuXG4ucGFkLWJvdHRvbSB7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWQtYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIH1cbn1cblxuLnBhZC1sZWZ0IHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4ucGFkLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuXG4ucGFkLXZlcnRpY2FsIHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtdmVydGljYWwge1xuICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtdmVydGljYWwge1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuXG4ucGFkLWhvcml6b250YWwge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLWhvcml6b250YWwge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLWhvcml6b250YWwge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4uZWRnZS10by1lZGdlIHtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIG1heC13aWR0aDogY2FsYygxMDAlICsgNDBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmVkZ2UtdG8tZWRnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yNXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTI1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgKyA1MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lZGdlLXRvLWVkZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlICsgNjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZWRnZS10by1lZGdlIHtcbiAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArIDEyMHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZWRnZS10by1lZGdlIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5idXR0b24ge1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMyMmQyOTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKlxuQG1peGluIGNhdGVnb3J5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIC90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2MjVlbTtcbn1cblxuLmNhdGVnb3J5IHtcbiAgQGluY2x1ZGUgY2F0ZWdvcnk7XG59XG5cbkBtaXhpbiB0aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgLy9mb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBjb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDYyNWVtO1xuXG4gICY6aG92ZXIge1xuICAgIC8vdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cblxuLnRpdGxlIHtcbiAgQGluY2x1ZGUgdGl0bGU7XG59XG5cbkBtaXhpbiB0YWcge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICRtZWRpdW1EYXJrR3JheTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0MjVlbTtcbn1cblxuLnRhZyB7XG4gIEBpbmNsdWRlIHRhZztcbn1cbiovXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG59XG5cbi5uby1zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZW1iZWQtY29udGFpbmVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5lbWJlZC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZW1iZWQtY29udGFpbmVyIGlmcmFtZSxcbi5lbWJlZC1jb250YWluZXIgb2JqZWN0LFxuLmVtYmVkLWNvbnRhaW5lciBlbWJlZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4vKipcbiAgKiBFTEVNRU5UIFNUWUxFU1xuICAqXG4gICogU3R5bGUgZGVmaW5pdGlvbnMgZm9yIGdsb2JhbCBlbGVtZW50IHNlbGVjdG9ycy5cbiAgKi9cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG59XG5cbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIGF1dG87XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZTVjZDtcbiAgY29sb3I6ICMyMjI7XG4gIGZvbnQtZmFtaWx5OiBUZWFjaGVycywgc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5oMSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGNvbG9yOiAjYzc0ZjNmO1xuICBwYWRkaW5nOiAwIDAgMzBweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNjNzRmM2Y7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMi44cmVtO1xuICB9XG59XG5cbmgyIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4zcmVtO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTU5MDllbTtcbn1cblxuaDMge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4xNTkwOWVtO1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cblxuaDQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaDUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjYzc0ZjNmO1xufVxudWwsIG9sIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG59XG5cbi8qIGJlZ2luIGJ1dHRvbiBzdHlsZXMgKi9cbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKiBlbmQgYnV0dG9uIHN0eWxlcyAqL1xuYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgI2M3NGYzZjtcbiAgbWFyZ2luOiA1MHB4IDEwcHg7XG4gIHBhZGRpbmc6IDAuNWVtIDMwcHg7XG4gIHF1b3RlczogXCLigJxcIjtcbn1cbmJsb2NrcXVvdGU6YmVmb3JlIHtcbiAgY29sb3I6ICMzMjJkMjk7XG4gIGNvbnRlbnQ6IG9wZW4tcXVvdGU7XG4gIGZvbnQtc2l6ZTogNGVtO1xuICBsaW5lLWhlaWdodDogMC4xZW07XG4gIG1hcmdpbi1yaWdodDogMC4yNWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuNGVtO1xufVxuYmxvY2txdW90ZSBwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuYmxvY2txdW90ZSBwOmZpcnN0LW9mLXR5cGUsIGJsb2NrcXVvdGUgcDpudGgtb2YtdHlwZSgyKSB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xufVxuYmxvY2txdW90ZSBmb290ZXIge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG59XG5cbi8qKlxuICAqIEhFQURFUiBTVFlMRVNcbiAgKi9cbi5oZWFkZXItd3JhcCB7XG4gIGhlaWdodDogYXV0bztcbiAgZ3JpZC1yb3ctc3RhcnQ6IDE7XG4gIGdyaWQtcm93LWVuZDogMjtcbiAgei1pbmRleDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M3NGYzZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhlYWRlci13cmFwLmJnLXZpc2libGUge1xuICB6LWluZGV4OiA5OTk5O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItd3JhcC5iZy12aXNpYmxlIHtcbiAgICB6LWluZGV4OiAwO1xuICB9XG59XG5cbi5oZWFkZXItb3ZlcmxheSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMSwgMzgsIDE3MCk7XG4gIG9wYWNpdHk6IDAuNztcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRvcC1iYXItYmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRvcC1iYXItYmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5ib3R0b20tYmFyLWJnIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZDMyMmQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJvdHRvbS1iYXItYmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5oZWFkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIGhlaWdodDogOTBweDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogOTBweCBhdXRvO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlciB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgfVxufVxuXG4uaGVhZGVyLWJyYW5kIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgaGVpZ2h0OiA5MHB4O1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiAxL3NwYW4gMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gIH1cbn1cbi5oZWFkZXItYnJhbmQgYSB7XG4gIG1heC13aWR0aDogNDIwcHg7XG4gIGhlaWdodDogOTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIGEge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICNmMWU1Y2Q7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDMuMXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDMuOHJlbTtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmF1dGhvciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAuYXV0aG9yIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmF1dGhvciB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTogMy4xcmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTogMy44cmVtO1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRhZ2xpbmUge1xuICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xuICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzMyMmQyOTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRhZ2xpbmUge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG5cbi5sb2dvIHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmxvZ28ge1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjVweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubG9nbyB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sb2dvIHtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5sb2dvIHtcbiAgICBtYXJnaW4tbGVmdDogODBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxvZ28ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogOTAlO1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIGJvdHRvbTogMDtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sb2dvIHtcbiAgICByaWdodDogMTAwcHg7XG4gIH1cbn1cblxuLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLXRvcDogMzVweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogcXVlc3RhLWdyYW5kZSwgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjVweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICBtYXJnaW4tbGVmdDogODBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50YWJsZS1vZi1jb250ZW50cyB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC50YWJsZS1vZi1jb250ZW50cyB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudGFibGUtb2YtY29udGVudHMge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4uaGVhZGVyLW5hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA5MHB4O1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAxMDtcbn1cbi5oZWFkZXItbmF2LmJnLXZpc2libGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2QzMjJkO1xuICBib3gtc2hhZG93OiAwcHggNXB4IDEwcHggLTVweCAjMzIyZDI5O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRvcDogYXV0bztcbiAgfVxuICAuaGVhZGVyLW5hdi5iZy12aXNpYmxlIHtcbiAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgfVxufVxuXG4ubWFpbi1uYXYge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbi5tYWluLW5hdiB1bCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzc0ZjNmO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDdweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBjb2x1bW4tZ2FwOiAxMHB4O1xuICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3JkZXItdG9wOiB1bnNldDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjNzRmM2Y7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICB0cmFuc2l0aW9uOiBkaXNwbGF5IDMwMG1zO1xuICB9XG4gIC5tYWluLW5hdiB1bCBsaTpob3ZlciA+IHVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIGEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjZjFlNWNkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIGEge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cbi5tYWluLW5hdiB1bCBsaSAubmF2LWNoZXZyb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSAubmF2LWNoZXZyb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5tYWluLW5hdiB1bCBsaSB1bCB7XG4gIHdpZHRoOiAyMjVweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNjJweDtcbiAgcmlnaHQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZDMyMmQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzc0ZjNmO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjZTBlMGUwO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTJweDtcbiAgcmlnaHQ6IC0xcHg7XG4gIHotaW5kZXg6IDEwMDE7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGkge1xuICB3aWR0aDogMjI1cHg7XG4gIGhlaWdodDogMzVweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzc0ZjNmO1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpOm50aC1jaGlsZCgxKSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzc0ZjNmO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzc0ZjNmO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpOm50aC1jaGlsZCgzKSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzc0ZjNmO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpOm50aC1jaGlsZCg0KSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzc0ZjNmO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpIGEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5tYWluLW5hdiB1bCBsaSB1bCBsaSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi50b3AtbmF2IHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogNjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnRvcC1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudG9wLW5hdiB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50b3AtbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAudG9wLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAudG9wLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnRvcC1uYXYge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuLnRvcC1uYXYgdWwge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjb2x1bW4tZ2FwOiAzMHB4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLW5hdiB1bCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZTtcbiAgfVxufVxuLnRvcC1uYXYgdWwgbGkge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODg4ODg4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnRvcC1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC50b3AtbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50b3AtbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnRvcC1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAudG9wLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC50b3AtbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLW5hdiB1bCBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gIH1cbn1cbi50b3AtbmF2IHVsIGxpIGEge1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMzMjJkMjk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRvcC1uYXYgdWwgbGkgYSB7XG4gICAgY29sb3I6IHJnYigyMzcsIDIwNSwgNDQpO1xuICB9XG59XG4uc2xpZGUtbGluZSB7XG4gIGhlaWdodDogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuXG4uaGVhZGVyLWJ1dHRvbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiA5MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDY7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1idXR0b25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1idXR0b25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1idXR0b25zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uZ2xhc3Mge1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdG9wOiBhdXRvO1xuICBib3JkZXI6IHVuc2V0O1xufVxuLmdsYXNzIGkge1xuICBjb2xvcjogI2YxZTVjZDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZ2xhc3Mge1xuICAgIGhlaWdodDogNDVweDtcbiAgICBib3JkZXI6IHVuc2V0O1xuICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICB9XG4gIC5nbGFzcyBpIHtcbiAgICBjb2xvcjogI2YxZTVjZDtcbiAgfVxuICAuZ2xhc3MgaTpob3ZlciB7XG4gICAgY29sb3I6ICNhYWE7XG4gIH1cbn1cblxuLmJ1cmdlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5idXJnZXIgaSB7XG4gIGNvbG9yOiAjZjFlNWNkO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDM0MHB4KSB7XG4gIC5idXJnZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJ1cmdlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2l0ZS1zZWFyY2gtd3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDkwcHg7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNzRmM2Y7XG4gIHotaW5kZXg6IDY7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAge1xuICAgIHRvcDogNDVweDtcbiAgfVxufVxuLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cblxuLyoqXG4gICogU0lURSBTRUFSQ0ggRk9STSBTVFlMRVNcbiAgKi9cbi5zaXRlLXNlYXJjaCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMzVweCAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MHB4O1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5cbi5zZWFyY2gtcXVlcnkge1xuICBoZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDE7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZTVjZDtcbn1cbi5zZWFyY2gtcXVlcnkgbGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGNvbG9yOiAjMzIyZDI5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zZWFyY2gtcXVlcnkgaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgYm9yZGVyOiAycHggc29saWQgIzMyMmQyOTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBjb2xvcjogIzMyMmQyOTtcbn1cblxuLnNlYXJjaC1zdWJtaXQge1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBncmlkLWNvbHVtbjogMi9zcGFuIDE7XG4gIGdyaWQtcm93OiAxO1xuICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgY29sb3I6ICMzMjJkMjk7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFlNWNkO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzMyMmQyOTtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgIzMyMmQyOTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMzMjJkMjk7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xufVxuLnNlYXJjaC1zdWJtaXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBlMGUwO1xufVxuXG4vKipcbiAgKiBDT05URU5UIFNUWUxFU1xuICAqL1xuLm1haW4td3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGdyaWQtcm93LXN0YXJ0OiAyO1xuICBncmlkLXJvdy1lbmQ6IDM7XG59XG4ubWFpbiB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFpbiB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4ge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYWluIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1haW4ge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluIHtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuXG4vKi5wYWdlLWhlYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA4MCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogc2NyZWVuO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIC8vbWluLWhlaWdodDogMjUwcHg7XG4gIH1cbn1cbiAgLnBhZ2UtaGVhZGVyLW92ZXJsYXkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoZGFya2VuKCR0cmFuc0dyYXksIDQwJSksIGRhcmtlbigkdHJhbnNHcmF5LCAyMCUpKTtcbiAgICBvcGFjaXR5OiAwLjc7XG4gICAgLy9iYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICB9Ki9cbi8qLnBhZ2UtaGVhZGVyLWJveC13cmFwIHtcbiAgLy9AaW5jbHVkZSBpbm5lci13cmFwO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC8vcGFkZGluZy10b3A6IGNhbGMoJGhlYWRlckhlaWdodE1vYmlsZSArICRzcGFjZXJQYWRkaW5nVGFibGV0KTtcbiAgLy9wYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgLy9AaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHNwYWNlclBhZGRpbmdEZXNrdG9wKTsvL1xuICAgIC8vaGVpZ2h0OiBhdXRvO1xuXG4gICAgLy9kaXNwbGF5OiBub25lO1xuICB9XG59Ki9cbi8qLnBhZ2UtaGVhZGVyLWJveCB7XG4gIEBpbmNsdWRlIHBhZC10b3A7XG4gIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAvL0BpbmNsdWRlIHBhZC1ib3R0b207XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8vcGFkZGluZzogNDBweCAzMHB4O1xuICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHRNb2JpbGUgKyAkc3BhY2VyUGFkZGluZ1RhYmxldCk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAvL3dpZHRoOiA2NyU7XG4gICAgLy93aWR0aDogMTAwJTtcbiAgICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHNwYWNlclBhZGRpbmdEZXNrdG9wKTtcbiAgfVxuXG4gIGgxIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvL2NvbG9yOiAkb2ZmV2hpdGU7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAvL3BhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRibGFjaztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cbiAgfVxufSovXG4ucGFnZS1jb250ZW50IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIH1cbn1cblxuLnBhZ2UtY29udGVudC5zaWRlIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMHB4O1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1jb250ZW50LnNpZGUge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDMyMHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAwcHg7XG4gIH1cbn1cblxuLnBhZ2UtbWFpbiB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgICBncmlkLXJvdzogMTtcbiAgfVxufVxuLnBhZ2UtbWFpbiBoMiB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuLnBhZ2UtbWFpbiBoMjpmaXJzdC1vZi10eXBlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5wYWdlLW1haW4gaDMge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuLnBhZ2UtbWFpbiBoNCB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4ucGFnZS1tYWluIGg1IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5wYWdlLW1haW4gaDYge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuLnBhZ2UtbWFpbiBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cbi5wYWdlLW1haW4gcDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnBhZ2UtbWFpbiB1bCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbn1cbi5wYWdlLW1haW4gdWwgbGkge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ucGFnZS1zZWN0aW9uLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBhZ2Utc2VjdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5cbi5zaWRlIC5wYWdlLW1haW4ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaWRlIC5wYWdlLW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICB9XG59XG5cbi5wYWdlLXNpZGViYXIge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDE7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgZ3JpZC1jb2x1bW46IDIvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICB9XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBub25lO1xuICBwYWRkaW5nOiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hbGlnbnJpZ2h0IHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbi5hbGlnbmxlZnQge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IG5vbmU7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFsaWdubGVmdCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbi5zaW5nbGUgcDpmaXJzdC1vZi10eXBlOjpmaXJzdC1sZXR0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiB1bnNldDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBmb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xufVxuXG5maWd1cmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBwYWRkaW5nOiAyMHB4O1xufVxuZmlndXJlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuZmlndXJlLmFsaWducmlnaHQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgZmlndXJlLmFsaWducmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB9XG59XG5maWd1cmUuYWxpZ25yaWdodCBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbmZpZ3VyZS5hbGlnbmxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgZmlndXJlLmFsaWdubGVmdCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB9XG59XG5maWd1cmUuYWxpZ25sZWZ0IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuZmlndXJlIGZpZ2NhcHRpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG4vKipcbiAgKiBGT09URVIgU1RZTEVTXG4gICovXG4uZm9vdGVyLXdyYXAge1xuICBncmlkLXJvdy1zdGFydDogMztcbiAgZ3JpZC1yb3ctZW5kOiA0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzc0ZjNmO1xufVxuLmZvb3RlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICNmMWU1Y2Q7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG4uZm9vdGVyLW5hdiB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3Rlci1uYXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3Rlci1uYXYge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cbn1cbi5mb290ZXItbmF2IHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBmbGV4LXN0YXJ0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmZvb3Rlci1uYXYgdWwgbGkge1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHdpZHRoOiAxMDAlO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAuZm9vdGVyLW5hdiB1bCBsaTphZnRlciB7XG4gICAgY29udGVudDogXCJ8XCI7XG4gICAgY29sb3I6ICM5OTk5OTk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogLTJweDtcbiAgfVxuICAuZm9vdGVyLW5hdiB1bCBsaTpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4uZm9vdGVyLW5hdiB1bCBsaSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICNmMWU1Y2Q7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkgYSB7XG4gICAgYWxpZ24taXRlbXM6IGxlZnQ7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4uY29weXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvcHlyaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvcHlyaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29weXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5wYWdlLW1haW4gcDpmaXJzdC1vZi10eXBlOjpmaXJzdC1sZXR0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiB1bnNldDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBmb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xufVxuXG4uYm9va3Mge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC1hdXRvLXJvd3M6IGF1dG8gYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuYm9va3Mge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDglIDQ4JTtcbiAgICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgICBncmlkLWNvbHVtbi1nYXA6IDQlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmJvb2tzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIyJSAyMiUgMjIlIDIyJTtcbiAgICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgICBncmlkLWNvbHVtbi1nYXA6IDQlO1xuICB9XG59XG5cbi5ib29rIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZzogMjBweDtcbn1cbi5ib29rIGltZyB7XG4gIG1heC13aWR0aDogODAlO1xuICBtYXJnaW46IDAgMTAlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMzIyZDI5O1xufVxuLmJvb2sgLmJvb2stdGl0bGUge1xuICBtYXJnaW46IDEwcHggMCAyNXB4IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzMyMmQyOTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufSIsIi8qKlxuICAqIFBBR0UtU1BFQ0lGSUMgU1RZTEVTSEVFVDogYm9va3NcbiAgKlxuICAqIEltcG9ydCBjb21tb24gc3R5bGVzIGFuZCBob3VzZSBwYWdlLXNwZWNpZmljIHN0eWxlcyBmb3IgcGFnZTogXCJib29rc1wiLlxuICAqL1xuXG5AaW1wb3J0ICdfY29tbW9uJzsgLy8gY29tbW9uIHN0eWxlc1xuXG4ucGFnZS1tYWluIHtcblxuICBwIHtcblxuICAgICY6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlcjogdW5zZXQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgICAgZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcbiAgICB9XG4gIH1cbn1cblxuXG4uYm9va3Mge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC1hdXRvLXJvd3M6IGF1dG8gYXV0bztcblxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDglIDQ4JTtcbiAgICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgICBncmlkLWNvbHVtbi1nYXA6IDQlO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyMiUgMjIlIDIyJSAyMiU7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiA0JTtcbiAgfVxufVxuICAuYm9vayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuICAgIC8vYm9yZGVyOiAycHggc29saWQgJGJsYWNrO1xuXG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgbWFyZ2luOiAwIDEwJTtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAuYm9vay10aXRsZSB7XG4gICAgICBtYXJnaW46IDEwcHggMCAyNXB4IDA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljOyBcbiAgICB9XG4gIH1cbiIsIi8qKlxuICAqIENPTU1PTiBTVFlMRVNcbiAgKlxuICAqIERlZmluZXMgdGhlIHN0eWxlcyB0byBpbXBvcnQgdGhhdCBhcmUgcmVxdWlyZWQgYnkgdmlydHVhbGx5IGFsbCBwYWdlcy5cbiAgKi9cblxuXG4vLyBpbXBvcnQgbGlicmFyaWVzOlxuQGltcG9ydCAnbGlicmFyaWVzL19pbmNsdWRlLW1lZGlhLnNjc3MnOyAvLyBcIkluY2x1ZGUtTWVkaWFcIiBtZWRpYSBxdWVyeSBsaWJyYXJ5IChwcm92aWRlcyBicmVha3BvaW50IGZ1bmN0aW9uYWxpdHkgZm9yIHJlc3BvbnNpdmUgZGVzaWduKVxuQGltcG9ydCAnbGlicmFyaWVzL19ub3JtYWxpemUuc2Nzcyc7ICAgICAvLyBcIk5vcm1hbGl6ZVwiIGNzcyByZXNldCBsaWJyYXJ5XG5cbi8vIGdsb2JhbCBzdHlsZXMgYW5kIGRlcGVuZGVuY2llczpcbkBpbXBvcnQgJ3BhcnRpYWxzL19icmVha3BvaW50cy5tb2R1bGVzJzsgIC8vIGJyZWFrcG9pbnQgZGVmaW5pdGlvbnMgZm9yIG1lZGlhIHF1ZXJ5IHVzZVxuQGltcG9ydCAncGFydGlhbHMvX3ZhcmlhYmxlcyc7ICAgICAgICAgICAgLy8gZ2VuZXJhbCB2YXJpYWJsZSBkZWZpbml0aW9ucyAoY29sb3JzLCBkaW1lbnNpb25zLCBldGMuKVxuQGltcG9ydCAncGFydGlhbHMvX2ZvbnRzJzsgICAgICAgICAgICAgICAgLy8gQGZvbnQtZmFjZSBkZWZpbml0aW9uc1xuQGltcG9ydCAncGFydGlhbHMvX21peGlucyc7ICAgICAgICAgICAgICAgLy8gbWl4aW4gYW5kIGFzc29jaWF0ZWQgY2xhc3MgZGVmaW5pdGlvbnNcbkBpbXBvcnQgJ3BhcnRpYWxzL19taXNjJzsgICAgICAgICAgICAgICAgIC8vIG1pc2MuIHN0eWxlc1xuQGltcG9ydCAncGFydGlhbHMvX2VsZW1lbnRzJzsgICAgICAgICAgICAgLy8gZ2xvYmFsIGVsZW1lbnQgc2VsZWN0b3Igc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9faGVhZGVyJzsgICAgICAgICAgICAgICAvLyBoZWFkZXIgc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9fc2VhcmNoZm9ybSc7ICAgICAgICAgICAvLyBzZWFyY2ggZm9ybSBzdHlsZXNcbkBpbXBvcnQgJ3BhcnRpYWxzL19jb250ZW50JzsgICAgICAgICAgICAgIC8vIGNvbnRlbnQgc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9fZm9vdGVyJzsgICAgICAgICAgICAgICAvLyBmb290ZXIgc3R5bGVzXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyoqXG4gICogQlJFQUtQT0lOVFNcbiAgKlxuICAqIERlZmluZSBicmVha3BvaW50cyBmb3IgbWVkaWEgcXVlcnkgdXNlIGFuZCBleHBvcnQgdGhlbSBmb3IgdXNlIHdpdGggSlMuXG4gICovXG5cblxuLy8gZGVmaW5lIGJyZWFrcG9pbnRzIGhlcmUgKGluIHBpeGVscyk6XG4kYnJlYWtwb2ludC1waG9uZS1zbWFsbDogICAgMzIwO1xuJGJyZWFrcG9pbnQtcGhvbmUtbGFyZ2U6ICAgIDQ4MDtcbiRicmVha3BvaW50LXRhYmxldDogICAgICAgICA3Njg7XG4kYnJlYWtwb2ludC1sYXB0b3A6ICAgICAgICAgOTkyO1xuJGJyZWFrcG9pbnQtZGVza3RvcDogICAgICAgMTIwMDtcbiRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U6IDE0MDA7XG4kYnJlYWtwb2ludC1oZDogICAgICAgICAgICAxOTIwO1xuXG4vLyBmb3JtYXQgYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgdXNlIHdpdGggaW5jbHVkZS1tZWRpYS5zY3NzIGxpYnJhcnk6XG4vKlxuZXhhbXBsZSB1c2FnZTpcbkBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1zbWFsbFwiKSB7Li4ufVxuKi9cbiRicmVha3BvaW50czogKFxuICAncGhvbmUtc21hbGwnOiAgICRicmVha3BvaW50LXBob25lLXNtYWxsICogMXB4LFxuICAncGhvbmUtbGFyZ2UnOiAgICRicmVha3BvaW50LXBob25lLWxhcmdlICogMXB4LFxuICAndGFibGV0JzogICAgICAgICRicmVha3BvaW50LXRhYmxldCAqIDFweCxcbiAgJ2xhcHRvcCc6ICAgICAgICAkYnJlYWtwb2ludC1sYXB0b3AgKiAxcHgsXG4gICdkZXNrdG9wJzogICAgICAgJGJyZWFrcG9pbnQtZGVza3RvcCAqIDFweCxcbiAgJ2Rlc2t0b3AtbGFyZ2UnOiAkYnJlYWtwb2ludC1kZXNrdG9wLWxhcmdlICogMXB4LFxuICAnaGQnOiAgICAgICAgICAgICRicmVha3BvaW50LWhkICogMXB4XG4pO1xuXG4vLyBleHBvcnQgYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgSlMgdXNlOlxuOmV4cG9ydCB7XG4gIGJyZWFrcG9pbnRQaG9uZVNtYWxsOiAkYnJlYWtwb2ludC1waG9uZS1zbWFsbDtcbiAgYnJlYWtwb2ludFBob25lTGFyZ2U6ICRicmVha3BvaW50LXBob25lLWxhcmdlO1xuICBicmVha3BvaW50VGFibGV0OiAkYnJlYWtwb2ludC10YWJsZXQ7XG4gIGJyZWFrcG9pbnRMYXB0b3A6ICRicmVha3BvaW50LWxhcHRvcDtcbiAgYnJlYWtwb2ludERlc2t0b3A6ICRicmVha3BvaW50LWRlc2t0b3A7XG4gIGJyZWFrcG9pbnREZXNrdG9wTGFyZ2U6ICRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U7XG4gIGJyZWFrcG9pbnRIZDogJGJyZWFrcG9pbnQtaGQ7XG59XG4iLCIvKipcbiAgKiBWQVJJQUJMRVNcbiAgKi9cblxuXG4vKipcbiAgKiBEaW1lbnNpb25zOlxuICAqL1xuXG4kc2l0ZVdpZHRoOiAxNDAwcHg7IC8vIG1heCB3aWR0aCBvZiBzaXRlJ3MgY29udGVudCBjb250YWluZXJzXG5cbi8vIGhlYWRlciBoZWlnaHRzOlxuJHRvcEJhckhlaWdodDogNDVweDtcbiRib3R0b21CYXJIZWlnaHQ6IDYwcHg7XG4kaGVhZGVySGVpZ2h0TW9iaWxlOiA5MHB4O1xuJGhlYWRlckhlaWdodERlc2t0b3A6IDIwMHB4O1xuXG4vLyBzdGFuZGFyZGl6ZWQgc2lkZSBwYWRkaW5nOlxuJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU6IDIwcHg7XG4kY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U6IDI1cHg7XG4kY29udGFpbmVyUGFkZGluZ1RhYmxldDogMzBweDtcbiRjb250YWluZXJQYWRkaW5nTGFwdG9wOiA2MHB4O1xuJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wOiA4MHB4O1xuXG4vLyBzdGFuZGFyZGl6ZWQgdG9wIGFuZCBib3R0b20gcGFkZGluZzpcbiRzcGFjZXJQYWRkaW5nTW9iaWxlOiAzMHB4O1xuJHNwYWNlclBhZGRpbmdQaG9uZUxhcmdlOiAzNXB4O1xuJHNwYWNlclBhZGRpbmdUYWJsZXQ6IDQwcHg7XG4kc3BhY2VyUGFkZGluZ0xhcHRvcDogNTBweDtcbiRzcGFjZXJQYWRkaW5nRGVza3RvcDogNjBweDtcblxuXG4vKipcbiAgKiBDb2xvcnM6XG4gICovXG5cbi8vIGh1ZSBkZWZpbml0aW9uczpcbiRyZWQ6ICAgICNmZjAwMDA7XG4kb3JhbmdlOiAjYzc0ZjNmOyAvLyNmZjg4MDA7XG4keWVsbG93OiByZ2IoMjM3LCAyMDUsIDQ0KTsgLy8jZmZmZjAwO1xuJGdyZWVuOiAgcmdiKDE4MiwgMjMwLCAyNCk7IC8vIzAwZmYwMDtcbiRibHVlOiAgIHJnYigxLCAzOCwgMTcwKTsgLy8jMDAwMGZmO1xuJHB1cnBsZTogI2ZmMDBmZjtcbiRicm93bjogICM3ZDMyMmQ7IC8vIzg4ODgwMDtcbiRjcmVhbTogICNmMWU1Y2Q7IC8vI2YwZWRlODtcblxuLy8gZ3JheXNjYWxlIGRlZmluaXRpb25zOlxuJHdoaXRlOiAgI2ZmZmZmZjtcbiRncmF5OiAgICM4ODg4ODg7XG4kYmxhY2s6ICAjMzIyZDI5OyAvLyMwMDAwMDA7XG4kb2ZmV2hpdGU6ICNmZWZlZmU7XG4kbGlnaHRHcmF5OiAjZjJmMmYyO1xuJG1lZGl1bUdyYXk6ICNlMGUwZTA7XG4kbWVkaXVtRGFya0dyYXk6ICM5OTk5OTk7XG4kZGFya0dyYXk6ICAjMjIyO1xuXG4vLyB0cmFuc3BhcmVudCBkZWZpbml0aW9uczpcbiR0cmFuc0dyYXk6IHJnYmEoNTEsIDUxLCA1MSwgMC44KTtcblxuLy8gZ2xvYmFsIGFzc2lnbm1lbnRzOlxuJGJvZHlDb2xvcjogJGNyZWFtOyAgICAgLy8gYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4kY29udGVudENvbG9yOiAkd2hpdGU7ICAvLyBwYWdlIGNvbnRlbnQgYmFja2dyb3VuZCBjb2xvclxuJGZvbnRDb2xvcjogJGRhcmtHcmF5OyAgLy8gZGVmYXVsdCBmb250IGNvbG9yXG4kbGlua0NvbG9yOiAkb3JhbmdlOyAgICAgIC8vIGRlZmF1bHQgbGluayBjb2xvclxuXG4kYnJhbmRDb2xvclByaW1hcnk6ICRncmVlbjsgLy8gcHJpbWFyeSBjb2xvciBvZiBicmFuZFxuJGJyYW5kQ29sb3JDb250cmFzdDogJGJsYWNrOyAvLyBjb2xvciB0aGF0IGNvbnRyYXN0cyB3ZWxsIHdpdGggYnJhbmQgY29sb3IgKG9mdGVuIHVzZWQgZm9yIHRleHQgb24gdG9wIG9mIGJyYW5kIGNvbG9yKVxuIiwiLyoqXG4gICogRk9OVFNcbiAgKlxuICAqIERlZmluZSBAZm9udC1mYWNlIHN0eWxlcy5cbiAgKi9cblxuXG4vLyBNb250c2VycmF0LVJlZ3VsYXIudHRmOlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuICBzcmM6IHVybCguLi9mb250cy9Nb250c2VycmF0LVJlZ3VsYXIudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBNb250c2VycmF0LUJvbGQudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFRlYWNoZXJzLVJlZ3VsYXIudHRmOlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBUZWFjaGVycztcbiAgc3JjOiB1cmwoLi4vZm9udHMvVGVhY2hlcnMtUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFRlYWNoZXJzLVJlZ3VsYXJJdGFsaWMudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFRlYWNoZXJzO1xuICBzcmM6IHVybCguLi9mb250cy9UZWFjaGVycy1SZWd1bGFySXRhbGljLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLy8gVGVhY2hlcnMtTWVkaXVtLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLU1lZGl1bS50dGYpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFRlYWNoZXJzLU1lZGl1bUl0YWxpYy50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLU1lZGl1bUl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIFRlYWNoZXJzLVNlbWlCb2xkLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLVNlbWlCb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gVGVhY2hlcnMtU2VtaUJvbGRJdGFsaWMudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFRlYWNoZXJzO1xuICBzcmM6IHVybCguLi9mb250cy9UZWFjaGVycy1TZW1pQm9sZEl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8vIFRlYWNoZXJzLUJvbGQudHRmOlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBUZWFjaGVycztcbiAgc3JjOiB1cmwoLi4vZm9udHMvVGVhY2hlcnMtQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFRlYWNoZXJzLUJvbGRJdGFsaWMudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFRlYWNoZXJzO1xuICBzcmM6IHVybCguLi9mb250cy9UZWFjaGVycy1Cb2xkSXRhbGljLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLy8gVGVhY2hlcnMtRXh0cmFCb2xkLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLUV4dHJhQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFRlYWNoZXJzLUV4dHJhQm9sZEl0YWxpYy50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogVGVhY2hlcnM7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1RlYWNoZXJzLUV4dHJhQm9sZEl0YWxpYy50dGYpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cblxuXG4vLyBUZWFjaGVycy1FeHRyYUJvbGRJdGFsaWMudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFBsYXlmYWlyIERpc3BsYXk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1BsYXlmYWlyRGlzcGxheS1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG5cbi8qXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IEFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkO1xuICAvL3NyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cblxuXG5mb250LWZhbWlseTogbHRjLWdvdWR5LW9ybmF0ZSwgc2Fucy1zZXJpZjtcblxuZm9udC13ZWlnaHQ6IDQwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGQgSXRhbGljXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IGl0YWxpYztcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0XG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0IEl0YWxpY1xuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogMzAwO1xuXG5mb250LXN0eWxlOiBpdGFsaWM7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkIENvbmRlbnNlZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXItY29uZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0IENvbmRlbnNlZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXItY29uZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcbiovXG4iLCIvKipcclxuICAqIE1JWElOU1xyXG4gICpcclxuICAqIFN0YW5kYXJkaXplZCBzdHlsZSBjaHVua3MsIHByb3ZpZGVkIGFzIGJvdGggU0NTUyBtaXhpbnMgYW5kIEhUTUwgY2xhc3Nlcy5cclxuICAqL1xyXG5cclxuXHJcbkBtaXhpbiB3cmFwIHsgLy8gbWFyZ2luLWxlc3Mgd3JhcHBlclxyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLndyYXAge1xyXG4gIEBpbmNsdWRlIHdyYXA7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gaW5uZXItd3JhcCB7IC8vIHdpZHRoLWxpbWl0ZWQsIGhvcml6b250YWxseSBjZW50ZXJpbmcgd3JhcHBlclxyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogJHNpdGVXaWR0aDtcclxuICBtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLmlubmVyLXdyYXAge1xyXG4gIEBpbmNsdWRlIGlubmVyLXdyYXA7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gbWFyLXRvcCB7IC8vIHN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgdG9wLW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi10b3A6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIG1hcmdpbi10b3A6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIG1hcmdpbi10b3A6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4ubWFyLXRvcCB7XHJcbiAgQGluY2x1ZGUgbWFyLXRvcDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBtYXItYm90dG9tIHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCBib3R0b20tbWFyZ2luZWQgY29udGFpbmVyXHJcbiAgbWFyZ2luLWJvdHRvbTogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbi5tYXItYm90dG9tIHtcclxuICBAaW5jbHVkZSBtYXItYm90dG9tO1xyXG59XHJcblxyXG5cclxuQG1peGluIG1hci1ob3Jpem9udGFsIHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCB2ZXJ0aWNhbGx5LW1hcmdpbmVkIChib3RoIHRvcCBhbmQgYm90dG9tKSBjb250YWluZXJcclxuICBAaW5jbHVkZSBtYXItdG9wO1xyXG4gIEBpbmNsdWRlIG1hci1ib3R0b207XHJcbn1cclxuLm1hci1ob3Jpem9udGFsIHtcclxuICBAaW5jbHVkZSBtYXItaG9yaXpvbnRhbDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBtYXItcmlnaHQgeyAvLyBzdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIHJpZ2h0LW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nVGFibGV0KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nRGVza3RvcCk7XHJcbiAgfVxyXG59XHJcbi5tYXItcmlnaHQge1xyXG4gIEBpbmNsdWRlIG1hci1yaWdodDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBtYXItbGVmdCB7IC8vIHN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgbGVmdC1tYXJnaW5lZCBjb250YWluZXJcclxuICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ1RhYmxldCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICB9XHJcbn1cclxuLm1hci1sZWZ0IHtcclxuICBAaW5jbHVkZSBtYXItbGVmdDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBtYXItaG9yaXpvbnRhbCB7IC8vIHN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgaG9yaXpvbnRhbGx5IHBhZGRlZCAoYm90aCBsZWZ0IGFuZCByaWdodCkgY29udGFpbmVyXHJcbiAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDIgKiAkY29udGFpbmVyUGFkZGluZ01vYmlsZSkpO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICAgIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoMiAqICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSkpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoMiAqICRjb250YWluZXJQYWRkaW5nVGFibGV0KSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICAgIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICgyICogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDIgKiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3ApKTtcclxuICB9XHJcbn1cclxuLm1hci1ob3Jpem9udGFsIHtcclxuICBAaW5jbHVkZSBtYXItaG9yaXpvbnRhbDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBwYWQtdG9wIHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlIHNwYWNlciBmb3IgZWxlbWVudCB0b3BcclxuICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nRGVza3RvcDtcclxuICB9XHJcbn1cclxuLnBhZC10b3Age1xyXG4gIEBpbmNsdWRlIHBhZC10b3A7XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gcGFkLWJvdHRvbSB7IC8vIHN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSBzcGFjZXIgZm9yIGVsZW1lbnQgYm90dG9tXHJcbiAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbi5wYWQtYm90dG9tIHtcclxuICBAaW5jbHVkZSBwYWQtYm90dG9tO1xyXG59XHJcblxyXG5cclxuQG1peGluIHBhZC1sZWZ0IHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCBsZWZ0LXBhZGRlZCBjb250YWluZXJcclxuICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4ucGFkLWxlZnQge1xyXG4gIEBpbmNsdWRlIHBhZC1sZWZ0O1xyXG59XHJcblxyXG5cclxuQG1peGluIHBhZC1yaWdodCB7IC8vIHN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgcmlnaHQtcGFkZGVkIGNvbnRhaW5lclxyXG4gIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICB9XHJcbn1cclxuLnBhZC1yaWdodCB7XHJcbiAgQGluY2x1ZGUgcGFkLXJpZ2h0O1xyXG59XHJcblxyXG5cclxuQG1peGluIHBhZC12ZXJ0aWNhbCB7XHJcbiAgQGluY2x1ZGUgcGFkLXRvcDtcclxuICBAaW5jbHVkZSBwYWQtYm90dG9tO1xyXG59XHJcbi5wYWQtdmVydGljYWwgeyAvLyBzdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUgdmVydGljYWwgKGJvdGggdG8gYW5kIGJvdHRvbSkgc3BhY2VyIGZvciBlbGVtZW50XHJcbiAgQGluY2x1ZGUgcGFkLXZlcnRpY2FsO1xyXG59XHJcblxyXG5cclxuQG1peGluIHBhZC1ob3Jpem9udGFsIHtcclxuICBAaW5jbHVkZSBwYWQtcmlnaHQ7XHJcbiAgQGluY2x1ZGUgcGFkLWxlZnQ7XHJcbn1cclxuLnBhZC1ob3Jpem9udGFsIHsgLy8gc3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCBob3Jpem9udGFsbHkgcGFkZGVkIChib3RoIGxlZnQgYW5kIHJpZ2h0KSBjb250YWluZXJcclxuICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBlZGdlLXRvLWVkZ2Uge1xyXG4gIC8vQGluY2x1ZGUgcGFkLXJpZ2h0O1xyXG4gIC8vQGluY2x1ZGUgcGFkLWxlZnQ7XHJcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArICgyICogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKTtcclxuICAgIG1hcmdpbi1yaWdodDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSk7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArICgyICogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgKyAoMiAqICRjb250YWluZXJQYWRkaW5nVGFibGV0KSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgKyAoMiAqICRjb250YWluZXJQYWRkaW5nTGFwdG9wKSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDsgLy9jYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICAgIG1hcmdpbi1yaWdodDogMDsgLy9jYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICAgIG1heC13aWR0aDogbm9uZTsgLy9jYWxjKDEwMCUgKyAoMiAqICRjb250YWluZXJQYWRkaW5nRGVza3RvcCkpO1xyXG4gIH1cclxufVxyXG5cclxuLmVkZ2UtdG8tZWRnZSB7XHJcbiAgQGluY2x1ZGUgZWRnZS10by1lZGdlO1xyXG59XHJcblxyXG5cclxuQG1peGluIGJ1dHRvbiB7IC8vIHN0YW5kYXJkaXplZCBidXR0b25cclxuICBwYWRkaW5nOiAxMHB4IDE1cHg7O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBjb2xvcjogJG9mZldoaXRlO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4uYnV0dG9uIHtcclxuICBAaW5jbHVkZSBidXR0b247XHJcbn1cclxuXHJcbi8qXHJcbkBtaXhpbiBjYXRlZ29yeSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgLy8gL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgY29sb3I6ICRibGFjaztcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGZvbnQtc2l6ZTogMC44cmVtO1xyXG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNjI1ZW07XHJcbn1cclxuXHJcbi5jYXRlZ29yeSB7XHJcbiAgQGluY2x1ZGUgY2F0ZWdvcnk7XHJcbn1cclxuXHJcbkBtaXhpbiB0aXRsZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgLy9mb250LXdlaWdodDogNjAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcclxuICBsZXR0ZXItc3BhY2luZzogLTAuMDYyNWVtO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIC8vdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG59XHJcblxyXG4udGl0bGUge1xyXG4gIEBpbmNsdWRlIHRpdGxlO1xyXG59XHJcblxyXG5AbWl4aW4gdGFnIHtcclxuICBmb250LXNpemU6IDAuOHJlbTtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGNvbG9yOiAkbWVkaXVtRGFya0dyYXk7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0MjVlbTtcclxufVxyXG5cclxuLnRhZyB7XHJcbiAgQGluY2x1ZGUgdGFnO1xyXG59XHJcbiovXHJcblxyXG5AbWl4aW4gc2NyZWVuLXJlYWRlci10ZXh0IHsgIC8vIHZpc2libGUgdG8gc2NyZWVuIHJlYWRlcnMgb25seVxyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMXB4O1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAtMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi5zY3JlZW4tcmVhZGVyLXRleHQge1xyXG4gIEBpbmNsdWRlIHNjcmVlbi1yZWFkZXItdGV4dDtcclxufVxyXG5cclxuXHJcbkBtaXhpbiBuby1zY3JvbGwgeyAvLyByZW1vdmUgc2Nyb2xsYWJpbGl0eSBmb3IgZWxlbWVudFxyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5uby1zY3JvbGwge1xyXG4gIEBpbmNsdWRlIG5vLXNjcm9sbDtcclxufVxyXG5cclxuQG1peGluIGJvb2stZ3JhZGllbnQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZlZWU7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgdG8gcmlnaHQsXHJcbiAgICB0cmFuc3BhcmVudCAwJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA3MCUpIDAuMSUgMC4yJSxcclxuICAgIHRyYW5zcGFyZW50IDAuMiUsXHJcbiAgICBsaWdodGVuKHJnYmEoMCwgMCwgMCwgMC42KSwgNzAlKSAwLjQlIDAuNSUsXHJcbiAgICB0cmFuc3BhcmVudCAwLjUlLFxyXG4gICAgbGlnaHRlbihyZ2JhKDAsIDAsIDAsIDAuNiksIDcwJSkgMS4yJSAxLjMlLFxyXG4gICAgdHJhbnNwYXJlbnQgMS4zJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA3MCUpIDMuMyUgMy40JSxcclxuICAgIHRyYW5zcGFyZW50IDMuNCUgMjAlLFxyXG4gICAgLypsaWdodGVuKHJnYmEoMCwgMCwgMCwgMC42KSwgNzAlKSA1LjUlIDUlLFxyXG4gICAgLy90cmFuc3BhcmVudCA1JSAyMCUsKi9cclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA3MCUpIDUwJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjcpLCA0MCUpIDY3JSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjgpLCAzMCUpIDY5JSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjkpLCAyMCUpIDY5Ljk1JSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjkpLCAxMCUpIDcwJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCAyMCUpIDcwLjA1JSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCAzMCUpIDcxJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA0MCUpIDczJSxcclxuICAgIGxpZ2h0ZW4ocmdiYSgwLCAwLCAwLCAwLjYpLCA3MCUpIDkwJSxcclxuICAgIHRyYW5zcGFyZW50IDEwMCUpO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vICAgICBfICAgICAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gX1xyXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXHJcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xyXG4vLyAgICB8IHwgJ18gXFwgLyBfX3wgfCB8IHwgfC8gX2AgfC8gXyBcXCB8ICdfIGAgXyBcXCAvIF8gXFwvIF9gIHwgfC8gX2AgfFxyXG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XHJcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XHJcbi8vXHJcbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXHJcbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC45XHJcbi8vXHJcbi8vICAgICAgICBodHRwczovL2VkdWFyZG9ib3VjYXMuZ2l0aHViLmlvL2luY2x1ZGUtbWVkaWFcclxuLy9cclxuLy8gICAgICAgICBBdXRob3JzOiBFZHVhcmRvIEJvdWNhcyAoQGVkdWFyZG9ib3VjYXMpXHJcbi8vICAgICAgICAgICAgICAgICAgS2l0dHkgR2lyYXVkZWwgKEBraXR0eWdpcmF1ZGVsKVxyXG4vL1xyXG4vLyAgICAgIFRoaXMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIE1JVCBsaWNlbnNlXHJcbi8vLy9cclxuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxyXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgcGhvbmVgXHJcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xyXG4vLy9cclxuJGJyZWFrcG9pbnRzOiAoXHJcbiAgJ3Bob25lJzogMzIwcHgsXHJcbiAgJ3RhYmxldCc6IDc2OHB4LFxyXG4gICdkZXNrdG9wJzogMTAyNHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8vXHJcbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbi8vLyAgICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSdcclxuLy8vICApO1xyXG4vLy9cclxuJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxyXG4gICdwcmludCc6ICdwcmludCcsXHJcbiAgJ2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcclxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXHJcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcclxuICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCknLFxyXG4gICdyZXRpbmEzeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpLCAobWluLXJlc29sdXRpb246IDNkcHB4KSdcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLy9cclxuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHBpeGVscyBpcyBkZWZpbmVkIGFzIGAxYCBieSBkZWZhdWx0XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBlbXMgaXMgZGVmaW5lZCBhcyBgMC4wMWAgYnkgZGVmYXVsdFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHJlbXMgaXMgZGVmaW5lZCBhcyBgMC4xYCBieSBkZWZhdWx0LCB0byBiZSB1c2VkIHdpdGggYGZvbnQtc2l6ZTogNjIuNSU7YFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XHJcbi8vL1xyXG4kdW5pdC1pbnRlcnZhbHM6IChcclxuICAncHgnOiAxLFxyXG4gICdlbSc6IDAuMDEsXHJcbiAgJ3JlbSc6IDAuMSxcclxuICAnJzogMFxyXG4pICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcclxuLy8vIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgbWVkaWEgcXVlcmllcy5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAuZm9vIHtcclxuLy8vICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgfVxyXG4vLy9cclxuJGltLW1lZGlhLXN1cHBvcnQ6IHRydWUgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIFNlbGVjdHMgd2hpY2ggYnJlYWtwb2ludCB0byBlbXVsYXRlIHdoZW4gc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBkaXNhYmxlZC4gTWVkaWEgcXVlcmllcyB0aGF0IHN0YXJ0IGF0IG9yXHJcbi8vLyBpbnRlcmNlcHQgdGhlIGJyZWFrcG9pbnQgd2lsbCBiZSBkaXNwbGF5ZWQsIGFueSBvdGhlcnMgd2lsbCBiZSBpZ25vcmVkLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50XHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgLmZvbyB7XHJcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICd0YWJsZXQnO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xyXG4vLy9cclxuJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJyAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gU2VsZWN0cyB3aGljaCBtZWRpYSBleHByZXNzaW9ucyBhcmUgYWxsb3dlZCBpbiBhbiBleHByZXNzaW9uIGZvciBpdCB0byBiZSB1c2VkIHdoZW4gbWVkaWEgcXVlcmllc1xyXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYW5kIGNvbnRhaW5zIG9ubHkgYWNjZXB0ZWQgbWVkaWEgZXhwcmVzc2lvbnNcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAgLmZvbyB7XHJcbi8vLyAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBidXQgY29udGFpbnMgYSBtZWRpYSBleHByZXNzaW9uIHRoYXQgaXMgbm90IGFjY2VwdGVkXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogTm8gb3V0cHV0ICovXHJcbi8vL1xyXG4kaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJywgJ3BvcnRyYWl0JywgJ2xhbmRzY2FwZScpICFkZWZhdWx0O1xyXG5cclxuLy8vL1xyXG4vLy8gQ3Jvc3MtZW5naW5lIGxvZ2dpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gTG9nIGEgbWVzc2FnZSBlaXRoZXIgd2l0aCBgQGVycm9yYCBpZiBzdXBwb3J0ZWRcclxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXHJcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XHJcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiAkbWVzc2FnZTtcclxuICAgICRfOiBub29wKCk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRtZXNzYWdlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XHJcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cclxuLy8vIHdpdGhpbiBmdW5jdGlvbnMgYmVjYXVzZSBpdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluIGEgZnVuY3Rpb25cclxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcclxuLy8vXHJcbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcclxuICBAaWYgaW0tbG9nKCRtZXNzYWdlKSB7fVxyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXHJcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxyXG4vLy9cclxuQGZ1bmN0aW9uIG5vb3AoKSB7fVxyXG5cclxuLy8vXHJcbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7Qm9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbmRpdGlvbnMgYXJlIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludFxyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcclxuICAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRpbS1uby1tZWRpYS1icmVha3BvaW50KTtcclxuXHJcbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XHJcbiAgICBAaWYgaW0tbG9nKCdgI3skaW0tbm8tbWVkaWEtYnJlYWtwb2ludH1gIGlzIG5vdCBhIHZhbGlkIGJyZWFrcG9pbnQuJykge31cclxuICB9XHJcblxyXG4gIEBlYWNoICRjb25kaXRpb24gaW4gJGNvbmRpdGlvbnMge1xyXG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcclxuICAgICAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgICAgIEBpZiAoJHByZWZpeCA9PSAnbWF4JyBhbmQgJHZhbHVlIDw9ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSBvclxyXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XHJcbiAgICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XHJcbiAgICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFBhcnNpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3Qgb3BlcmF0b3IgZnJvbVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBBbnkgb2YgYD49YCwgYD5gLCBgPD1gLCBgPGAsIGDiiaVgLCBg4omkYFxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XHJcbiAgQGVhY2ggJG9wZXJhdG9yIGluICgnPj0nLCAnPicsICc8PScsICc8JywgJ+KJpScsICfiiaQnKSB7XHJcbiAgICBAaWYgc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcclxuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXHJcbiAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcclxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cclxuICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxyXG4gIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cclxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgZGltZW5zaW9uIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgZGltZW5zaW9uIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYHdpZHRoYCBvciBgaGVpZ2h0YCAob3IgcG90ZW50aWFsbHkgYW55dGhpbmcgZWxzZSlcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICRwYXJzZWQtZGltZW5zaW9uOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sIDAsICRvcGVyYXRvci1pbmRleCAtIDEpO1xyXG4gICRkaW1lbnNpb246ICd3aWR0aCc7XHJcblxyXG4gIEBpZiBzdHItbGVuZ3RoKCRwYXJzZWQtZGltZW5zaW9uKSA+IDAge1xyXG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRkaW1lbnNpb247XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gcHJlZml4IGJhc2VkIG9uIGFuIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcikge1xyXG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgdmFsdWUgb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3IgZnJvbSBgJGV4cHJlc3Npb25gXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcclxuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuICAkdmFsdWU6IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yLWluZGV4ICsgc3RyLWxlbmd0aCgkb3BlcmF0b3IpKTtcclxuXHJcbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XHJcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkdmFsdWUpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcclxuICB9XHJcblxyXG4gICRpbnRlcnZhbDogbWFwLWdldCgkdW5pdC1pbnRlcnZhbHMsIHVuaXQoJHZhbHVlKSk7XHJcblxyXG4gIEBpZiBub3QgJGludGVydmFsIHtcclxuICAgIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAgIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXHJcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cclxuICAgIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXHJcbiAgICAkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XHJcbiAgfVxyXG5cclxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSArICRpbnRlcnZhbDtcclxuICB9IEBlbHNlIGlmICRvcGVyYXRvciA9PSAnPCcge1xyXG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZTtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBwYXJzZVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxyXG4vLy9cclxuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcclxuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXHJcbiAgLy8gdGhlbiB0aGVyZSBpcyBubyBuZWVkIHRvIGdvIGFueSBmdXJ0aGVyLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcclxuICBAaWYgbWFwLWhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xyXG4gIH1cclxuXHJcbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XHJcbiAgJGRpbWVuc2lvbjogZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcblxyXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xyXG59XHJcblxyXG4vLy9cclxuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcclxuLy8vXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzbGljZVxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3RcclxuLy8vXHJcbkBmdW5jdGlvbiBzbGljZSgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsZW5ndGgoJGxpc3QpKSB7XHJcbiAgQGlmIGxlbmd0aCgkbGlzdCkgPCAxIG9yICRzdGFydCA+ICRlbmQge1xyXG4gICAgQHJldHVybiAoKTtcclxuICB9XHJcblxyXG4gICRyZXN1bHQ6ICgpO1xyXG5cclxuICBAZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XHJcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkcmVzdWx0O1xyXG59XHJcblxyXG4vLy8vXHJcbi8vLyBTdHJpbmcgdG8gbnVtYmVyIGNvbnZlcnRlclxyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxyXG4vLy8gQGFjY2VzcyBwcml2YXRlXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIENhc3RzIGEgc3RyaW5nIGludG8gYSBudW1iZXJcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyfVxyXG4vLy9cclxuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcclxuICAgIEByZXR1cm4gJHZhbHVlO1xyXG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpICE9ICdzdHJpbmcnIHtcclxuICAgICRfOiBpbS1sb2coJ1ZhbHVlIGZvciBgdG8tbnVtYmVyYCBzaG91bGQgYmUgYSBudW1iZXIgb3IgYSBzdHJpbmcuJyk7XHJcbiAgfVxyXG5cclxuICAkZmlyc3QtY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAxLCAxKTtcclxuICAkcmVzdWx0OiAwO1xyXG4gICRkaWdpdHM6IDA7XHJcbiAgJG1pbnVzOiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpO1xyXG4gICRudW1iZXJzOiAoJzAnOiAwLCAnMSc6IDEsICcyJzogMiwgJzMnOiAzLCAnNCc6IDQsICc1JzogNSwgJzYnOiA2LCAnNyc6IDcsICc4JzogOCwgJzknOiA5KTtcclxuXHJcbiAgLy8gUmVtb3ZlICsvLSBzaWduIGlmIHByZXNlbnQgYXQgZmlyc3QgY2hhcmFjdGVyXHJcbiAgQGlmICgkZmlyc3QtY2hhcmFjdGVyID09ICcrJyBvciAkZmlyc3QtY2hhcmFjdGVyID09ICctJykge1xyXG4gICAgJHZhbHVlOiBzdHItc2xpY2UoJHZhbHVlLCAyKTtcclxuICB9XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyLWxlbmd0aCgkdmFsdWUpIHtcclxuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XHJcblxyXG4gICAgQGlmIG5vdCAoaW5kZXgobWFwLWtleXMoJG51bWJlcnMpLCAkY2hhcmFjdGVyKSBvciAkY2hhcmFjdGVyID09ICcuJykge1xyXG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XHJcbiAgICAgICRkaWdpdHM6IDE7XHJcbiAgICB9IEBlbHNlIGlmICRkaWdpdHMgPT0gMCB7XHJcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRkaWdpdHM6ICRkaWdpdHMgKiAxMDtcclxuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcclxuLy8vXHJcbkBmdW5jdGlvbiB0by1sZW5ndGgoJHZhbHVlLCAkdW5pdCkge1xyXG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XHJcblxyXG4gIEBpZiBub3QgaW5kZXgobWFwLWtleXMoJHVuaXRzKSwgJHVuaXQpIHtcclxuICAgICRfOiBpbS1sb2coJ0ludmFsaWQgdW5pdCBgI3skdW5pdH1gLicpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xyXG59XHJcblxyXG4vLy9cclxuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxyXG4vLy8gdGhlIGNhbGwuIEl0IGlzIGhlbHBmdWwgd2hlbiBoYXZpbmcgYSBjb21wb25lbnQgbmVlZGluZyBhbiBleHRlbmRlZFxyXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpXHJcbi8vLyBmb3IgaW5zdGFuY2UuXHJcbi8vL1xyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9Y3VzdG9tJykge1xyXG4vLy8gICAgICAgLy8gLi4uXHJcbi8vLyAgICAgIH1cclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIG1lZGlhIGV4cHJlc3Npb25zIHdpdGggYSBjdXN0b20gb25lXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgnYWxsJzogJ2FsbCcpKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnKSB7XHJcbi8vLyAgICAgICAvLyAuLi5cclxuLy8vICAgICAgfVxyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIGJvdGggY29uZmlndXJhdGlvbiBtYXBzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSwgKCdhbGwnOiAnYWxsJykpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScsICc8PWN1c3RvbScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xyXG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XHJcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xyXG5cclxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcclxuXHJcbiAgQGNvbnRlbnQ7XHJcblxyXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcclxufVxyXG5cclxuLy8vL1xyXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcclxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cclxuLy8vXHJcbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xyXG4gIEBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcclxuICAgICAgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH0gQGVsc2UgaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xyXG4gICAgQG1lZGlhICN7dW5xdW90ZShwYXJzZS1leHByZXNzaW9uKG50aCgkY29uZGl0aW9ucywgMSkpKX0ge1xyXG4gICAgICAvLyBSZWN1cnNpdmUgY2FsbFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIuZW1iZWQtY29udGFpbmVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgLy9tYXgtd2lkdGg6IDUwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbiAgLmVtYmVkLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gICAgLmVtYmVkLWNvbnRhaW5lciBpZnJhbWUsXG4gICAgLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4gICAgLmVtYmVkLWNvbnRhaW5lciBlbWJlZCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuIiwiLyoqXG4gICogRUxFTUVOVCBTVFlMRVNcbiAgKlxuICAqIFN0eWxlIGRlZmluaXRpb25zIGZvciBnbG9iYWwgZWxlbWVudCBzZWxlY3RvcnMuXG4gICovXG5cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIGNvbnNpc3RlbnQgYm94LXNpemluZyBmb3IgYWxsIGVsZW1lbnRzXG59XG5cbmh0bWwge1xuICBoZWlnaHQ6IDEwMCU7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIGZvbnQtc2l6ZTogMTAwJTsgLy8gc2V0IHJvb3QgZm9udC1zaXplIGZvciByZW0gdW5pdHMgKDEwMCUgZXF1YXRlcyB0byAxNnB4KVxuICBsaW5lLWhlaWdodDogMS43OyAvLyBzZXQgZGVmYXVsdCBsaW5lIGhlaWdodFxufVxuXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgZGlzcGxheTogZ3JpZDsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmciBhdXRvOyAvL2F1dG8gYXV0byBhdXRvOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBtYXJnaW46IDA7IC8vIG1ha2Ugc3VyZSBib2R5IGVsZW1lbnQgaXMgZWRnZS10by1lZGdlXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5Q29sb3I7XG4gIGNvbG9yOiAkZm9udENvbG9yO1xuICAvL2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4gIC8vZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcbiAgZm9udC1mYW1pbHk6IFRlYWNoZXJzLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgLy9mb250LWZhbWlseTogcXVlc3RhLWdyYW5kZSwgc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5oMSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIC8vbWFyZ2luLWJvdHRvbTogMS40cmVtO1xuICAvL2ZvbnQtc2l6ZTogMi4ycmVtO1xuICBjb2xvcjogJG9yYW5nZTtcblxuICAvL21hcmdpbjogMCAwIDMwcHggMDtcbiAgcGFkZGluZzogMCAwIDMwcHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vY29sb3I6ICRvZmZXaGl0ZTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLy9wYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgLy9mb250LXN0eWxlOiBpdGFsaWM7XG4gIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJG9yYW5nZTtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgfVxufVxuXG5oMiB7XG5cbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4zcmVtO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAvL2ZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNTkwOWVtO1xufVxuXG5oMyB7XG5cbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy9tYXJnaW4tYm90dG9tOiAwO1xuICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8vZm9udC1zaXplOiAyLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OTA5ZW07XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xufVxuXG5oNCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG5oNSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgLy9mb250LXNpemU6IDEuMXJlbTtcbiAgLy9mb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogJGxpbmtDb2xvcjtcblxuICAmOmxpbmsge1xuXG4gIH1cblxuICAmOmhvdmVyIHtcblxuICB9XG5cbiAgJjphY3RpdmUge1xuXG4gIH1cblxuICAmOnZpc2l0ZWQge1xuXG4gIH1cbn1cblxuOmZvY3VzIHtcbiAgLy9vdXRsaW5lOiAzcHggc29saWQgb3JhbmdlO1xufVxuXG51bCwgb2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cblxuaW1nIHtcblxufVxuXG4vKiBiZWdpbiBidXR0b24gc3R5bGVzICovXG5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiBub25lO1xuICAvL3BhZGRpbmc6IDFyZW0gMnJlbTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC8vYmFja2dyb3VuZDogIzAwNjllZDtcbiAgLy9jb2xvcjogI2ZmZmZmZjtcbiAgLy9mb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLy9mb250LXNpemU6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLy90ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyNTBtcyBlYXNlLWluLW91dCxcbiAgLy8gICAgICAgICAgICB0cmFuc2Zvcm0gMTUwbXMgZWFzZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmJ1dHRvbjpob3ZlcixcbmJ1dHRvbjpmb2N1cyB7XG4gICAgLy9iYWNrZ3JvdW5kOiAjMDA1M2JhO1xufVxuXG5idXR0b246Zm9jdXMge1xuICAgIC8vb3V0bGluZTogMXB4IHNvbGlkICNmZmY7XG4gICAgLy9vdXRsaW5lLW9mZnNldDogLTRweDtcbn1cblxuYnV0dG9uOmFjdGl2ZSB7XG4gICAgLy90cmFuc2Zvcm06IHNjYWxlKDAuOTkpO1xufVxuLyogZW5kIGJ1dHRvbiBzdHlsZXMgKi9cblxuYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgJG9yYW5nZTtcbiAgbWFyZ2luOiA1MHB4IDEwcHg7XG4gIHBhZGRpbmc6IDAuNWVtIDMwcHg7XG4gIHF1b3RlczogXCJcXDIwMUNcIjsgLy9cIlxcMjAxRFwiXCJcXDIwMThcIlwiXFwyMDE5XCI7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgY29udGVudDogb3Blbi1xdW90ZTtcbiAgICBmb250LXNpemU6IDRlbTtcbiAgICBsaW5lLWhlaWdodDogMC4xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gICAgdmVydGljYWwtYWxpZ246IC0wLjRlbTtcbiAgfVxuXG4gIHAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgcDpmaXJzdC1vZi10eXBlLCBwOm50aC1vZi10eXBlKDIpIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgfVxuXG4gIGZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gIH1cbn1cbiIsIi8qKlxuICAqIEhFQURFUiBTVFlMRVNcbiAgKi9cblxuLmhlYWRlci13cmFwIHsgLy8gRWRnZS10by1lZGdlIHdyYXAgZm9yIGV2ZXJ5dGhpbmcgaW4gdGhlIGhlYWRlci4gMXN0IGl0ZW0gaW4gYm9keSBlbGVtZW50IGdyaWQuXG4vLyAgQGluY2x1ZGUgd3JhcDtcbiAgaGVpZ2h0OiBhdXRvOyAvLzEwMHZoO1xuICBncmlkLXJvdy1zdGFydDogMTsgLy8gKGZvciBzdGlja3kgZm9vdGVyKVxuICBncmlkLXJvdy1lbmQ6IDI7IC8vIDIgZm9yIHN0aWNreSBmb290ZXJcbiAgLy8vcG9zaXRpb246IHN0aWNreTtcbi8vICB0b3A6IDA7XG4gIHotaW5kZXg6IDA7XG4vLyAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcywgYm9yZGVyIDIwMG1zLCBib3gtc2hhZG93IDIwMG1zO1xuXG4gIC8vICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7IC8vJHdoaXRlO1xuICAvL0BpbmNsdWRlIGJvb2stZ3JhZGllbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmLmJnLXZpc2libGUge1xuICAgIHotaW5kZXg6IDk5OTk7IC8vIHBvc2l0aW9uIGluIGZyb250IG9mIGV2ZXJ5dGhpbmcgZWxzZVxuLy8gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgLy9AaW5jbHVkZSBib29rLWdyYWRpZW50O1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG5cbiAgICAmLmJnLXZpc2libGUge1xuICAgICAgei1pbmRleDogMDtcbiAgLy8gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgIH1cbiAgfVxufVxuICAuaGVhZGVyLW92ZXJsYXkgeyAvLyBUcmFuc2x1Y2VudCwgXCJkaW1tZXJcIiBsYXllciBvdmVyIGhlYWRlciBiYWNrZ3JvdW5kLWltYWdlLlxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTsgLy9iYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoZGFya2VuKCR0cmFuc0dyYXksIDQwJSksIGRhcmtlbigkdHJhbnNHcmF5LCAyMCUpKTtcbiAgICBvcGFjaXR5OiAwLjc7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnRvcC1iYXItYmcgeyAvLyBFZGdlLXRvLWVkZ2UgYmFja2dyb3VuZCBsYXllciBmb3IgdGhlIHRvcC1uYXYgYmFyLlxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogNjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cbiAgICAmLmJnLXZpc2libGUge1xuICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuYm90dG9tLWJhci1iZyB7IC8vIEVkZ2UtdG8tZWRnZSBiYWNrZ3JvdW5kIGxheWVyIGZvciB0aGUgbWFpbi1uYXYgYmFyIChkZXNrdG9wKS5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRib3R0b21CYXJIZWlnaHQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDY7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicm93bjtcblxuICAgICYuYmctdmlzaWJsZSB7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHsgLy8gdGFibGV0XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuaGVhZGVyIHsgLy8gV2lkdGgtbGltaXRlZCBjb250YWluZXIgZm9yIHRoZSBoZWFkZXIuIFRoaXMgaXMgdGhlIDxoZWFkZXI+IGVsZW1lbnQgaXRzZWxmLlxuICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgaGVpZ2h0OiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyAvLzFmciAxMDBweDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6ICRoZWFkZXJIZWlnaHRNb2JpbGUgYXV0bztcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xuXG4gICAgJi5iZy12aXNpYmxlIHtcbiAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgLy9oZWlnaHQ6IGNhbGMoJGhlYWRlckhlaWdodERlc2t0b3AgKyAkdG9wQmFySGVpZ2h0KTtcbiAgICAgIC8vaGVpZ2h0OiAxMDB2aDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIC8vcGFkZGluZy10b3A6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgLy8xZnIgMTAwcHg7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bzsvLzEyMHB4IDcwcHg7XG5cbiAgICB9XG4gIH1cbiAgICAuaGVhZGVyLWJyYW5kIHtcbiAgICAgIC8vQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAvL3BhZGRpbmctcmlnaHQ6IDA7IC8vIG5lZ2F0ZSByaWdodCBwYWRkaW5nIGZyb20gJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICBoZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAxO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogNTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIC8vQGluY2x1ZGUgbWFyLWhvcml6b250YWw7XG4gICAgICAgIC8vcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgLy9wYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodERlc2t0b3A7IC8vY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCAtICR0b3BCYXJIZWlnaHQpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgIC8vd2lkdGg6IDUwJTtcbiAgICAgICAgLy9ib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJsYWNrO1xuICAgICAgICAvL2xlZnQ6IDYwcHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgLy9tYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcC1sYXJnZVwiKSB7XG4gICAgICAgIC8vaGVpZ2h0OiAkaGVhZGVySGVpZ2h0RGVza3RvcDtcbiAgICAgICAgLy9ncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgLy9ncmlkLXJvdzogMSAvIHNwYW4gMjtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIG1heC13aWR0aDogNDIwcHg7XG4gICAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgLy82MHB4O1xuICAgICAgICAvL2JvcmRlci1ib3R0b206IHVuc2V0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAvL2hlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCAtICR0b3BCYXJIZWlnaHQpO1xuICAgICAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIC8vcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICAgIC8vYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRvcmFuZ2U7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wLWxhcmdlXCIpIHtcbiAgICAgICAgICAvL2hlaWdodDogJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gLmxvZ28gd2FzIGhlcmVcblxuICAgICAgICAubG9nby10ZXh0IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb2xvcjogJGNyZWFtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICAgICAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5sb2dvLXRleHQtdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIC8vZm9udC1mYW1pbHk6IHF1ZXN0YS1ncmFuZGUsIHNlcmlmO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDMuMXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3AtbGFyZ2VcIikge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDMuOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgICAuYXV0aG9yIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMuMXJlbTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMuOHJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IGF1dG8gMCBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgICAgICAgICAvL2ZvbnQtZmFtaWx5OiBxdWVzdGEtZ3JhbmRlLCBzZXJpZjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgIEBpbmNsdWRlIG1hci1sZWZ0O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IDEwMCU7Ly9jYWxjKCRoZWFkZXJIZWlnaHRNb2JpbGUpO1xuICAgICAgLy9tYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgLy9tYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgLy9oZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiA5MCU7XG4gICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgLy93aWR0aDogMTQ0cHg7XG4gICAgICAgIC8vd2lkdGg6IGF1dG87XG4vLyAgICAgICAgaGVpZ2h0OiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wKTtcbiAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFibGUtb2YtY29udGVudHMge1xuICAgICAgQGluY2x1ZGUgbWFyLWxlZnQ7XG4gICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiBxdWVzdGEtZ3JhbmRlLCBzZXJpZjtcbiAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy90b3A6IGNhbGMoJGhlYWRlckhlaWdodERlc2t0b3AgKyAxMDBweCk7XG4gICAgICAvL2xlZnQ6IDYwcHg7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgLy90ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAuaGVhZGVyLW5hdiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICYuYmctdmlzaWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicm93bjsgLy8kY3JlYW07XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA1cHggMTBweCAtNXB4ICRibGFjaztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOy8vJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvL3RvcDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCArIDE1MHB4KTtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIC8vbGVmdDogNjBweDtcbiAgICAgICAgdG9wOiBhdXRvO1xuXG4gICAgICAgICYuYmctdmlzaWJsZSB7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgYm94LXNoYWRvdzogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgICAubWFpbi1uYXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRvZmZXaGl0ZTtcblxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgLy9jb250ZW50OiBcIkNvbnRlbnRzOlwiO1xuICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIC8vQGluY2x1ZGUgbWFyLWxlZnQ7XG4gICAgICAgICAgLy9AaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG5lZ2F0ZSBsZWZ0IHBhZGRpbmcgZnJvbSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAvL2hlaWdodDogJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgLy90b3A6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgLy90b3A6IDUwJTtcbiAgICAgICAgICAvL3JpZ2h0OiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgLy96LWluZGV4OiA5OTk5O1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIC8vY29udGVudDogXCJDb250ZW50czpcIjtcbiAgICAgICAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIC8vY29sdW1uLWdhcDogYXV0bztcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG9yYW5nZTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDdweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bzsgLy8kaGVhZGVySGVpZ2h0RGVza3RvcDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRvcmFuZ2U7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6aG92ZXIgPiB1bCB7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIG5lZ2F0ZSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyAvLyBuZWdhdGUgJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAvL2hlaWdodDogJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgICAgICAgIC8vYm9yZGVyLXRvcDogM3B4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZGlzcGxheSAzMDBtcztcblxuICAgICAgICAgICAgICAmOmhvdmVyID4gdWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIC8vdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAvL29wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgLy9saXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBjb2xvcjogJGNyZWFtOy8vJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgICAgICAgICAgLy9mb250LWZhbWlseTogcXVlc3RhLWdyYW5kZSwgc2VyaWY7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAkZGFya0JsdWU7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAvL2hlaWdodDogJGhlYWRlckhlaWdodERlc2t0b3A7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgICAgICAgICAgLy9mb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07IC8vMC44cmVtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgICAgICAvL2ZvbnQtc2l6ZTogMS42cmVtOyAvLzAuOHJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmF2LWNoZXZyb24ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7IC8vIHN1Yi1uYXZcbiAgICAgICAgICAgICAgd2lkdGg6IDIyNXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiA2MnB4O1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyb3duO1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG9yYW5nZTtcbiAgICAgICAgICAgICAgLy92aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICAgIC8vb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgLy90cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzLCBvcGFjaXR5IDFzIGxpbmVhcjtcblxuXG4gICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRtZWRpdW1HcmF5O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMTJweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTFweDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDAxO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMjVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJG9yYW5nZTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvcmFuZ2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvcmFuZ2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvcmFuZ2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvcmFuZ2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50b3AtbmF2IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHotaW5kZXg6IDY7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgY29sdW1uLWdhcDogMzBweDtcbiAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4OyAvLyBwYWRkaW5nIGFnYWluc3QgaGVhZGVyIGJ1dHRvbnMgKHNlYXJjaCBnbGFzcylcbiAgICAgICAgICAgIGZsZXgtZmxvdzogcm93LXJldmVyc2U7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAvL3RleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zbGlkZS1saW5lIHtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgIH1cblxuICAgIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgICBAaW5jbHVkZSBwYWQtcmlnaHQ7XG4gICAgICAvL3BhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyAvLyBuZWdhdGUgbGVmdCBwYWRkaW5nIGZyb20gJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB6LWluZGV4OiA2O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICAgICAgLmdsYXNzIHtcbiAgICAgICAgLy9oZWlnaHQ6IDkwcHg7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAvL3JpZ2h0OiA0NXB4O1xuICAgICAgICAvL2JvcmRlcjogMXB4IHNvbGlkICRvZmZXaGl0ZTtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgYm9yZGVyOiB1bnNldDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJGNyZWFtO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAvL2NvbG9yOiAkYmx1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgLy90b3A6IDA7XG4gICAgICAgICAgLy9yaWdodDogMDtcbiAgICAgICAgICBib3JkZXI6IHVuc2V0O1xuICAgICAgICAgIC8vYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgIC8vYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAvL2JvcmRlci1sZWZ0OiAzcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIC8vYm94LXNoYWRvdzogNXB4IC0ycHggMjBweCAwcHggJGJsYWNrO1xuICAgICAgICAgIC8vYm94LXNoYWRvdzogN3B4IC03cHggM3B4IDNweCAjNDQ0Oy8vLCA1cHggLTJweCAyMHB4IDBweCAjNTU1O1xuICAgICAgICAgIC8vYm94LXNoYWRvdzogNXB4IDAgMTVweCAtN3B4ICRibGFjaztcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTVweDtcblxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRjcmVhbTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjYWFhO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYnVyZ2VyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiAkY3JlYW07XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC8vY29sb3I6ICRibHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0zNDBweFwiKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAuc2l0ZS1zZWFyY2gtd3JhcCB7IC8vIGhlYWRlci1zcGVjaWZpYyBzZWFyY2ggd3JhcFxuICAgICAgQGluY2x1ZGUgd3JhcDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcbiAgICAgIHotaW5kZXg6IDY7XG4gICAgICAvL2JveC1zaGFkb3c6IDBweCAycHggMTBweCA1cHggIzQ0NDtcbiAgICAgIC8vYm94LXNoYWRvdzogMHB4IDJweCAxMHB4IC0ycHggJGJsYWNrO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgdG9wOiAkdG9wQmFySGVpZ2h0O1xuICAgICAgfVxuXG4gICAgICAuc2l0ZS1zZWFyY2ggeyAvLyBoZWFkZXIgc3BlY2lmaWMgLS0gc2VlIHNlYXJjaC5zY3NzIGZvciBnbG9iYWwgc2VhcmNoIHN0eWxlc1xuICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgIH1cbiAgICB9XG4iLCIvKipcbiAgKiBTSVRFIFNFQVJDSCBGT1JNIFNUWUxFU1xuICAqL1xuXG4uc2l0ZS1zZWFyY2gge1xuICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDM1cHggMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNTBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xufVxuXG4gIC5zZWFyY2gtcXVlcnkge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG5cbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuXG4gIC5zZWFyY2gtc3VibWl0IHtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJsYWNrO1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRibGFjaztcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJsYWNrO1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtR3JheTtcbiAgICB9XG4gIH1cbiIsIi8qKlxuICAqIENPTlRFTlQgU1RZTEVTXG4gICovXG5cblxuLm1haW4td3JhcCB7XG4gIEBpbmNsdWRlIHdyYXA7XG4gIC8vQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gIGdyaWQtcm93LXN0YXJ0OiAyOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBncmlkLXJvdy1lbmQ6IDM7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIC8vbWFyZ2luLXRvcDogY2FsYygtMSAqICgkaGVhZGVySGVpZ2h0TW9iaWxlICsgJHRvcEJhckhlaWdodCkpOyAvLyBzaGlmdHMgcGFnZSBoZWFkZXIgaW1hZ2UgdXAgYmVoaW5kIHRoZSBoZWFkZXIvbmF2XG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIC8vQGluY2x1ZGUgd3JhcDtcbiAgICAvL0BpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgIC8vQGluY2x1ZGUgYm9vay1ncmFkaWVudDtcbiAgICAvL21hcmdpbi10b3A6IGNhbGMoLTEgKiAoJGhlYWRlckhlaWdodERlc2t0b3AgKyAkdG9wQmFySGVpZ2h0KSk7IC8vIHNoaWZ0cyBwYWdlIGhlYWRlciBpbWFnZSB1cCBiZWhpbmQgdGhlIGhlYWRlci9uYXZcbiAgfVxufVxuICAubWFpbiB7XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBmb3Igc3RpY2t5IGZvb3RlcjogZmlsbCBhbnkgZW1wdHkgc3BhY2UgZG93biB0byBmb290ZXJcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBleHRlbmRzIGhlaWdodCB0byBhY2NvbW9kYXRlIGNvbnRlbnQncyBtYXJnaW5cbiAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgIC8vcGFkZGluZy1yaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIC8vYm94LXNoYWRvdzogMHB4IDVweCAxMnB4IC03cHggJGJsYWNrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA1O1xuICAgIC8vdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLy9ib3gtc2hhZG93OiA1cHggMCAxNXB4IC03cHggJGJsYWNrO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAvL0BpbmNsdWRlIHBhZC1sZWZ0O1xuICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgLy90cmFuc2Zvcm06IHJvdGF0ZSgtMC41ZGVnKTtcbiAgICAgIC8vYm94LXNoYWRvdzogdW5zZXQ7XG4gICAgfVxuICB9XG4gICAgLyoucGFnZS1oZWFkZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA4MCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IHNjcmVlbjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIC8vbWluLWhlaWdodDogMjUwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICAgLnBhZ2UtaGVhZGVyLW92ZXJsYXkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KGRhcmtlbigkdHJhbnNHcmF5LCA0MCUpLCBkYXJrZW4oJHRyYW5zR3JheSwgMjAlKSk7XG4gICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgfSovXG5cbiAgICAgIC8qLnBhZ2UtaGVhZGVyLWJveC13cmFwIHtcbiAgICAgICAgLy9AaW5jbHVkZSBpbm5lci13cmFwO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIC8vcGFkZGluZy10b3A6IGNhbGMoJGhlYWRlckhlaWdodE1vYmlsZSArICRzcGFjZXJQYWRkaW5nVGFibGV0KTtcbiAgICAgICAgLy9wYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgLy9AaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHNwYWNlclBhZGRpbmdEZXNrdG9wKTsvL1xuICAgICAgICAgIC8vaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9Ki9cbiAgICAgICAgLyoucGFnZS1oZWFkZXItYm94IHtcbiAgICAgICAgICBAaW5jbHVkZSBwYWQtdG9wO1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgIC8vQGluY2x1ZGUgcGFkLWJvdHRvbTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgLy9wYWRkaW5nOiA0MHB4IDMwcHg7XG4gICAgICAgICAgLy9wYWRkaW5nLXRvcDogY2FsYygkaGVhZGVySGVpZ2h0TW9iaWxlICsgJHNwYWNlclBhZGRpbmdUYWJsZXQpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAvL3dpZHRoOiA2NyU7XG4gICAgICAgICAgICAvL3dpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLy9wYWRkaW5nLXRvcDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCArICRzcGFjZXJQYWRkaW5nRGVza3RvcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDEge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgLy9jb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYmxhY2s7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDMuMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0qL1xuXG4gICAgLnBhZ2UtY29udGVudC13cmFwIHtcblxuICAgIH1cbiAgICAgIC5wYWdlLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucGFnZS1jb250ZW50LnNpZGUgeyAvLyAucGFnZS1jb250ZW50IHN0eWxlcyBmb3Igc2lkZWJhciBsYXlvdXRcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMHB4O1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAzMjBweDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIC5wYWdlLW1haW4ge1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC12ZXJ0aWNhbDtcbiAgICAgICAgICAvL0BpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgICAvL2JveC1zaGFkb3c6IDVweCAwIDE1cHggLTdweCAkYmxhY2s7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIC8vYm94LXNoYWRvdzogNXB4IDAgMjBweCAtN3B4ICRibGFjaztcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDEge1xuXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoNSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0gLy8gLnBhZ2UtbWFpblxuICAgICAgICAgIC5wYWdlLXNlY3Rpb24td3JhcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB3cmFwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgICAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwYWQtdG9wO1xuICAgICAgICAgICAgICAvL0BpbmNsdWRlIHBhZC1ib3R0b207XG4gICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAvL2JhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJGNyZWFtIDAlLCAkd2hpdGUgNTAlLCAkY3JlYW0gMTAwJSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgLnNpZGUgLnBhZ2UtbWFpbiB7IC8vIC5wYWdlLW1haW4gc3R5bGVzIGZvciBzaWRlYmFyIGxheW91dFxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wYWdlLXNpZGViYXIge1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC1ib3R0b207XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgICAgZ3JpZC1yb3c6IDE7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbi5hbGlnbnJpZ2h0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBub25lO1xuICBwYWRkaW5nOiAyMHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG5cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbn1cblxuLmFsaWdubGVmdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbm9uZTtcbiAgcGFkZGluZzogMjBweDtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuXG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbn1cblxuLnNpbmdsZSB7XG4gIHAge1xuXG4gICAgJjpmaXJzdC1vZi10eXBlOjpmaXJzdC1sZXR0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiB1bnNldDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICBmb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuICAgIH1cbiAgfVxufVxuXG5maWd1cmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBwYWRkaW5nOiAyMHB4O1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmLmFsaWducmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuXG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbmxlZnQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcblxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGZpZ2NhcHRpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcblxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAgKiBGT09URVIgU1RZTEVTXG4gICovXG5cblxuLmZvb3Rlci13cmFwIHtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDM7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIGdyaWQtcm93LWVuZDogNDsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcbiAgLy9AaW5jbHVkZSBib29rLWdyYWRpZW50O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIC8vQGluY2x1ZGUgYm9vay1ncmFkaWVudDtcbiAgfVxufVxuICAuZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgIC8vQGluY2x1ZGUgcGFkLXRvcDtcbiAgICBAaW5jbHVkZSBwYWQtdmVydGljYWw7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsvL2NlbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBleHRlbmRzIGhlaWdodCB0byBhY2NvbW9kYXRlIGNvbnRlbnQncyBtYXJnaW5cbiAgICBjb2xvcjogJGNyZWFtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgIH1cbiAgfVxuICAgIC5mb290ZXItbmF2IHtcbiAgICAgIC8vQGluY2x1ZGUgbWFyLWhvcml6b250YWw7XG4gICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogZmxleC1zdGFydDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIC8vbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICAgICAgICBjb2xvcjogJG1lZGl1bURhcmtHcmF5O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgcmlnaHQ6IC0ycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICRjcmVhbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIC8vZm9udC1mYW1pbHk6IHF1ZXN0YS1ncmFuZGUsIHNlcmlmO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGxlZnQ7Ly9jZW50ZXI7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAvL3BhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Oy8vY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb3B5cmlnaHQge1xuICAgICAgLy9AaW5jbHVkZSBtYXItaG9yaXpvbnRhbDtcbiAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgLy9tYXJnaW46IDA7XG4gICAgICAvL3BhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAvL2xlZnQ6IDE1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0Oy8vY2VudGVyO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgLy9wYWRkaW5nOiAwIDVweDtcbiAgICAgIH1cbiAgICB9XG4iXX0= */
