@charset "UTF-8";
/**
  * BOOKS PAGE STYLESHEET
  *
  * Import common styles and page-specific styles for "Books".
  */
/**
  * COMMON ARCHIVE 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: American Typewriter;
  src: url(../fonts/AmericanTypewriter-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}
/*
// Roboto-Regular.ttf:
@font-face {
  font-family: Roboto;
  src: url(../fonts/Roboto-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}

// Roboto-Bold.ttf
@font-face {
  font-family: Roboto;
  src: url(../fonts/Roboto-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}
*/
@font-face {
  font-family: Rajdhani;
  src: url(../fonts/Rajdhani-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: Rajdhani;
  src: url(../fonts/Rajdhani-Medium.ttf);
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: Rajdhani;
  src: url(../fonts/Rajdhani-SemiBold.ttf);
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: Rajdhani;
  src: url(../fonts/Rajdhani-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: Rajdhani;
  src: url(../fonts/Rajdhani-ExtraBold.ttf);
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: Rajdhani;
  src: url(../fonts/Rajdhani-Black.ttf);
  font-weight: 900;
  font-style: normal;
}
/*
// Montserrat-Regular.ttf:
@font-face {
  font-family: Montserrat;
  src: url(../fonts/Montserrat-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}

// Montserrat-Bold.ttf
@font-face {
  font-family: Montserrat;
  src: url(../fonts/Montserrat-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}
*/
/*
// MavenPro-Regular.ttf
@font-face {
  font-family: Maven Pro;
  src: url(../fonts/MavenPro-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}

// MavenPro-Medium.ttf
@font-face {
  font-family: Maven Pro;
  src: url(../fonts/MavenPro-Medium.ttf);
  font-weight: 500;
  font-style: normal;
}

// MavenPro-SemiBold.ttf
@font-face {
  font-family: Maven Pro;
  src: url(../fonts/MavenPro-SemiBold.ttf);
  font-weight: 600;
  font-style: normal;
}

// MavenPro-Bold.ttf
@font-face {
  font-family: Maven Pro;
  src: url(../fonts/MavenPro-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}

// MavenPro-ExtraBold.ttf
@font-face {
  font-family: Maven Pro;
  src: url(../fonts/MavenPro-ExtraBold.ttf);
  font-weight: 800;
  font-style: normal;
}

// MavenPro-Black.ttf
@font-face {
  font-family: Maven Pro;
  src: url(../fonts/MavenPro-Black.ttf);
  font-weight: 900;
  font-style: normal;
}
*/
/*
Century Old Style Std Bold

font-family: century-old-style-std, serif;

font-weight: 700;

font-style: normal;

Century Old Style Std Italic

font-family: century-old-style-std, serif;

font-weight: 400;

font-style: italic;

Century Old Style Std Regular

font-family: century-old-style-std, 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
  */
.wrap {
  width: 100%;
  height: auto;
}

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

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

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

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

.button-container {
  text-align: center;
}

.button {
  padding: 10px 15px;
  display: inline-block;
  background-color: #222;
  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;
  margin: 0 auto;
  text-align: center;
}

.category {
  @include category;
}
*/
.title {
  display: block;
  font-size: 1.4rem;
  line-height: 1.1;
  color: #222;
  letter-spacing: -0.0625em;
}
.tag {
  font-size: 0.8rem;
  font-weight: 500;
  color: #999999;
  letter-spacing: -0.0425em;
}

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

.no-scroll {
  overflow: hidden;
}

/**
  * ELEMENT ARCHIVE 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 auto 1fr auto;
  margin: 0;
  background-color: #fefefe;
  color: #222;
  font-family: century-old-style-std, serif;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  font-family: century-old-style-std, serif;
  text-align: center;
}

h1 {
  margin-top: 0;
  margin-bottom: 1.4rem;
  font-size: 2.2rem;
  text-transform: uppercase;
  line-height: 1;
}

h2 {
  margin-top: 0;
  margin-bottom: 1.3rem;
  font-size: 1.8rem;
  line-height: 1.15909em;
  width: 100%;
  margin: 20px 0;
  padding: 20px 0 25px 0;
  display: block;
  text-align: center;
  color: #222222;
  font-style: italic;
  position: relative;
}
h2::after {
  content: "";
  width: 34%;
  height: 2px;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 33%;
  background-color: #222222;
}

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

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

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;
  font-weight: 400;
  line-height: 1.5;
  text-align: justify;
}

a {
  text-decoration: none;
  color: #885500;
}
ul, ol {
  margin: 0;
  padding: 0;
  list-style-position: inside;
}

img {
  width: 100%;
  max-width: 500px;
  display: block;
  margin: 0 auto;
}

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

/* end button styles */
blockquote {
  border-right: 3px solid #222222;
  border-left: 3px solid #222222;
  margin: 20px 10px 40px 20px;
  padding: 0 40px 0 30px;
  quotes: "“" "”" "‘" "’";
}
blockquote:before {
  color: #ccc;
  content: open-quote;
  font-size: 4em;
  line-height: 0.1em;
  margin-right: 0.25em;
  vertical-align: -0.4em;
  font-size: 4em;
  line-height: 0;
  vertical-align: -0.4em;
}
blockquote:after {
  visibility: hidden;
  content: close-quote;
}
blockquote p {
  display: block;
}
blockquote p:first-of-type, blockquote p:nth-of-type(2) {
  font-size: 1.1rem;
}
@media (min-width: 768px) {
  blockquote p:first-of-type, blockquote p:nth-of-type(2) {
    font-size: 1.3rem;
  }
}
blockquote p:last-of-type {
  margin-bottom: 0;
}

/* BEGIN Archive masthead styles */
.header-wrap {
  width: 100%;
  height: auto;
  grid-row-start: 1;
  grid-row-end: 2;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 9999;
  transition: background-color 200ms, border 200ms, box-shadow 200ms;
  background-color: #f0ede8;
  box-shadow: 0 4px 10px -5px #000;
  padding-bottom: 0;
  border-top: 5px solid #222222;
}
@media (min-width: 768px) {
  .header-wrap {
    grid-row-start: 2;
    grid-row-end: 3;
    padding-bottom: 10px;
  }
}

/*
.top-bar-bg {
  width: 100%;
  height: $topBarHeight;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 6;
  display: none;
  transition: background-color 200ms;

  &.bg-visible {
    background-color: $brandColor;
  }

  @include media(">=tablet") {
    display: block;
  }
}
*/
.header {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  height: auto;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 105px;
  grid-template-rows: auto auto;
  transition: background-color 200ms;
  border-bottom: unset;
}
@media (min-width: 768px) {
  .header {
    grid-template-columns: 1fr 90px;
    border-bottom: 2px solid #222222;
  }
}
.header-brand {
  min-height: 80px;
  height: auto;
  grid-column: 1/span 1;
  grid-row: 1/span 1;
  position: relative;
  z-index: 5;
  border-bottom: unset;
  display: flex;
  align-items: center;
  border-top: 3px solid #222222;
  border-bottom: 3px solid #222222;
}
@media (min-width: 768px) {
  .header-brand {
    grid-column: 1/span 2;
    border-bottom: 2px solid #222222;
    border-top: unset;
  }
}
.header-brand a {
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  font-weight: bold;
  text-decoration: none;
  color: #000;
}
@media (min-width: 768px) {
  .header-brand a {
    height: auto;
  }
}
.header-brand a .logo-text {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #222222;
  text-align: center;
  padding: 15px;
  text-transform: uppercase;
  font-family: century-old-style-std, serif;
  border-top: unset;
  border-bottom: unset;
}
@media (min-width: 480px) {
  .header-brand a .logo-text {
    padding: 15px;
  }
}
@media (min-width: 768px) {
  .header-brand a .logo-text {
    margin: 0;
    padding: 0 15px;
    height: auto;
    border-top: unset;
    border-bottom: unset;
  }
}
.header-brand a .logo-text .logo-text-title {
  width: 100%;
  font-weight: bold;
  margin: 0 auto;
  display: block;
  line-height: 0.9;
  font-size: 1.1rem;
}
@media (min-width: 480px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 1.3rem;
  }
}
@media (min-width: 768px) {
  .header-brand a .logo-text .logo-text-title {
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
  }
}
@media (min-width: 992px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 3.5rem;
  }
}
@media (min-width: 1200px) {
  .header-brand a .logo-text .logo-text-title {
    font-size: 4rem;
  }
}
.header-brand a .logo-text .logo-text-title .logo-text-title-domain {
  font-size: 1em;
  text-transform: lowercase;
}
.header-brand a .logo-text .logo-text-title .logo-text-title-trademark {
  color: #9f8c6d;
  color: #222222;
  font-size: 0.5em;
  font-weight: normal;
  vertical-align: top;
}
.header-brand a .logo-text .logo-text-tagline {
  width: 100%;
  margin: 10px auto 0 auto;
  line-height: 1;
  font-size: 0.6rem;
  font-weight: lighter;
  font-style: italic;
  display: block;
  color: #222222;
}
@media (min-width: 320px) {
  .header-brand a .logo-text .logo-text-tagline {
    font-size: 0.8rem;
  }
}
@media (min-width: 480px) {
  .header-brand a .logo-text .logo-text-tagline {
    font-size: 0.8rem;
  }
}
@media (min-width: 768px) {
  .header-brand a .logo-text .logo-text-tagline {
    margin: 0 auto 30px auto;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
  }
}
@media (min-width: 992px) {
  .header-brand a .logo-text .logo-text-tagline {
    font-size: 1.3rem;
  }
}
@media (min-width: 1200px) {
  .header-brand a .logo-text .logo-text-tagline {
    font-size: 1.4rem;
  }
}

.header-nav {
  width: 100%;
  height: 0;
  min-height: auto;
  position: absolute;
  top: 100%;
  display: none;
  overflow: hidden;
  z-index: 5;
}
.header-nav.bg-visible {
  background-color: #f0ede8;
}
@media (min-width: 768px) {
  .header-nav {
    height: 45px;
    display: block;
    top: 0;
    overflow: visible;
    position: relative;
    grid-row: 2;
  }
}

.main-nav {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  height: auto;
  position: static;
  z-index: 6;
  display: block;
  font-family: century-old-style-std, serif;
}
@media (min-width: 768px) {
  .main-nav {
    padding-left: 0;
    height: 45px;
  }
}
.main-nav ul {
  width: 100%;
  height: auto;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  border-top: 1px solid #888888;
  justify-content: center;
}
@media (min-width: 768px) {
  .main-nav ul {
    width: auto;
    height: 45px;
    flex-direction: row;
    border-top: unset;
    justify-content: flex-start;
  }
}
.main-nav ul li {
  width: 100%;
  height: auto;
  list-style: none;
  border-top: unset;
  border-bottom: 1px solid #888888;
  position: relative;
  z-index: 1003;
  flex-basis: auto;
  flex-grow: 1;
}
.main-nav ul li:first-child {
  background-color: #222222;
  text-align: center;
  border-right: 2px solid #222222;
  border-left: 2px solid #222222;
}
.main-nav ul li:first-child a {
  color: #222222;
  background: linear-gradient(to right, #c0edff, #fbd4d6 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: rgba(0, 0, 0, 0.2);
}
@media (min-width: 768px) {
  .main-nav ul li {
    width: auto;
    height: auto;
    min-height: 45px;
    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 0 0 1.5em;
  position: relative;
  display: flex;
  align-items: center;
  font-weight: bold;
  font-size: 0.8rem;
  text-transform: uppercase;
  font-style: italic;
  color: #222222;
  justify-content: left;
}
.main-nav ul li a:hover {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .main-nav ul li a {
    width: auto;
    height: 45px;
    padding: 0 5px;
    font-size: 0.75rem;
    justify-content: center;
  }
}
@media (min-width: 992px) {
  .main-nav ul li a {
    font-size: 0.9rem;
  }
}
.main-nav ul li.current_page_item {
  background-color: #222222;
}
.main-nav ul li.current_page_item a {
  color: #f0ede8;
}
.main-nav ul li.current-page-ancestor {
  background-color: #222222;
}
.main-nav ul li.current-page-ancestor a {
  color: #f0ede8;
}
.main-nav ul li .nav-chevron {
  width: 45px;
  height: 45px;
  display: flex;
  position: absolute;
  right: 0;
  align-items: center;
  justify-content: center;
  z-index: 2;
  cursor: pointer;
}
@media (min-width: 768px) {
  .main-nav ul li .nav-chevron {
    display: none;
  }
}
.main-nav ul li ul {
  width: 100%;
  height: auto;
  position: relative;
  top: 0;
  left: 0;
  list-style: none;
  display: none;
  background-color: #f0ede8;
  box-shadow: 0 4px 10px -5px #000;
  /*
  &::before {
    content: "";
    width: 0;
    height: 0;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid $mediumGray;
    transform: rotate(45deg);
    position: absolute;
    top: -12px;
    right: -1px;
    z-index: 1001;
  }
  */
}
@media (min-width: 768px) {
  .main-nav ul li ul {
    min-width: 320px;
    position: absolute;
    top: 45px;
    left: 0;
    right: auto;
  }
}
.main-nav ul li ul li {
  width: 100%;
  min-height: 45px;
  height: auto;
  list-style: none;
  display: block;
  border-top: 1px solid #222222;
}
.main-nav ul li ul li:nth-child(1) {
  background-color: unset;
  color: #222222;
}
.main-nav ul li ul li:nth-child(1) a {
  color: #222222;
}
@media (min-width: 768px) {
  .main-nav ul li ul li {
    height: 45px;
    padding-right: 15px;
    padding-left: 15px;
  }
}
.main-nav ul li ul li a {
  width: 100%;
  height: 45px;
  padding-left: 3em;
  display: flex;
  align-items: center;
  justify-content: left;
  text-decoration: none;
}
.main-nav ul li ul li a:hover {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .main-nav ul li ul li a {
    padding-right: 0;
    padding-left: 0;
  }
}
.main-nav ul li ul li ul li a {
  padding-left: 4.5em;
}
.main-nav ul li ul li ul li ul li a {
  padding-left: 6em;
}
.main-nav ul li.slide-line {
  position: absolute;
  z-index: 1002;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 49px;
  padding: 0;
  margin: 0;
  border-top: 2px dotted #f0ede8;
  border-bottom: 2px dotted #f0ede8;
  transition: width 300ms, left 300ms;
  display: block;
}
.header-nav-top {
  padding-right: 0;
  padding-left: 0;
  width: 100%;
  height: auto;
  position: relative;
  top: auto;
  left: auto;
  z-index: 6;
  display: block;
  clear: both;
}
.header-nav-top.visible {
  display: block;
}
@media (min-width: 768px) {
  .header-nav-top {
    width: 120px;
    height: auto;
    position: absolute;
    top: 45px;
    right: -45px;
    z-index: 6;
    display: none;
  }
}
.header-nav-top 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) {
  .header-nav-top ul {
    width: auto;
    height: auto;
    padding-right: 0;
    flex-flow: column;
    box-shadow: 0 4px 10px -5px #000;
  }
}
.header-nav-top ul li {
  padding: 0 0 0 1.2em;
  display: flex;
  align-items: center;
  width: 100%;
  height: 45px;
  list-style: none;
  border-bottom: 1px solid #888888;
  position: relative;
}
@media (min-width: 768px) {
  .header-nav-top ul li {
    width: auto;
    padding-right: 15px;
    padding-left: 15px;
    background-color: #f0ede8;
    border-bottom: unset;
    border-top: 2px solid #222222;
    justify-content: flex-end;
  }
}
.header-nav-top ul li .user-login-logout-icon {
  padding-right: 10px;
}
.header-nav-top ul li a {
  text-transform: uppercase;
  text-decoration: none;
  color: #222222;
  font-weight: bold;
  font-size: 12px;
  display: flex;
  font-size: 0.75rem;
  font-style: italic;
}
@media (min-width: 768px) {
  .header-nav-top ul li a {
    height: 45px;
    align-items: center;
  }
}
.header-nav-top ul li a:hover {
  text-decoration: underline;
}

/*
.header-nav-top {
  padding-right: 0;
  padding-left: 0;
  width: 100%;
  height: auto;
  position: relative;
  top: auto;
  left: auto;
  z-index: 6;
  //display: none;
  display: block;
  //background-color: $offWhite;
  //border-bottom: 1px solid $mediumGray;
  clear: both;

  @include media(">=tablet") {
    @include container;
    width: 50%; // arbitrary - just needs to be wide enough to accomodate nav items
    height: $topBarHeight;
    //padding-right: 0;
    //height: 35px;
    position: absolute;
    top: 0;
    right: 36px;
    z-index: 6;
    //right: 0;
    //display: block;
    //background-color: $lightGray;
    //clear: both;
  }

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

    @include media(">=tablet") {
      width: auto;
      height: $topBarHeight;
      padding-right: 60px;
      flex-flow: row-reverse;
      //height: 35px;
    }

    li {
      @include container;
      //list-style: none;
      //float: left;
      display: flex;
      align-items: center;

      width: 100%;
      height: 45px;
      list-style: none;
      border-bottom: 1px solid $gray;
      position: relative;

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

      a {
        //padding: .525em 3em 0 0;
        text-transform: uppercase;
        text-decoration: none;
        color: $black;
        font-weight: bold;
        font-size: 12px;
        display: flex;


        @include media(">=tablet") {
          height: $topBarHeight;
          align-items: center;
        }

        &:hover {
          //text-decoration: underline;
        }
      }
    }
  }
}
*/
.header-buttons {
  width: 105px;
  height: auto;
  padding: 0 15px 0 0;
  border-top: 3px solid #222222;
  border-bottom: 3px solid #222222;
  display: flex;
  flex-direction: row;
  align-items: center;
  z-index: 6;
  grid-column: 2/span 1;
  grid-row: 1/span 2;
}
@media (min-width: 768px) {
  .header-buttons {
    width: 90px;
    height: 45px;
    padding-left: 0;
    padding-right: 0;
    position: relative;
    right: 0;
    grid-column: 2;
    grid-row: 2;
    flex-direction: row-reverse;
    margin: 0;
    border-top: unset;
    border-bottom: unset;
  }
}

.glass {
  width: 45px;
  height: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  top: auto;
  background-color: unset;
}
@media (min-width: 768px) {
  .glass {
    border: unset;
    background-color: #222222;
  }
}
.glass i {
  color: #222222;
}
@media (min-width: 768px) {
  .glass i {
    color: #f0ede8;
  }
}

.burger {
  width: 45px;
  height: 45px;
  margin-left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .burger {
    display: none;
  }
}
.burger i {
  color: #222222;
}
.burger i:hover {
  color: #222;
}

.account {
  display: none;
}
@media (min-width: 768px) {
  .account {
    width: 45px;
    height: 45px;
    display: block;
  }
}
.account i {
  color: #222222;
}
.account i:hover {
  color: #222;
}

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

.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;
}
@media (min-width: 768px) {
  .site-search {
    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;
}
@media (min-width: 768px) {
  .search-query {
    padding: 0;
  }
}
.search-query label {
  width: 100%;
  max-width: 100%;
  height: 30px;
  color: #fefefe;
  display: block;
  text-transform: black;
  text-align: left;
  display: none;
}
.search-query input {
  width: 100%;
  max-width: 100%;
  height: 50px;
  padding-left: 20px;
  border: 2px solid #222222;
  display: block;
  background-color: #fefefe;
  color: #222222;
}

.search-context {
  height: 50px;
  padding: 0 20px 0 0;
  grid-column: 1/span 1;
  grid-row: 2;
  align-self: center;
}
@media (min-width: 768px) {
  .search-context {
    grid-column: 2/span 1;
    grid-row: 1;
    padding: 0 20px 0 0;
  }
}
.search-context label {
  width: 100%;
  max-width: 100%;
  height: 30px;
  color: #fefefe;
  display: block;
  text-transform: uppercase;
  text-align: left;
  display: none;
}
.search-context select {
  width: 100%;
  max-width: 100%;
  height: 50px;
  padding-left: 15px;
  border: 2px solid #fefefe;
  display: block;
  background-color: #fefefe;
  color: #222;
}
.search-context select option {
  padding-left: 15px;
}

.search-submit {
  width: 50px;
  height: 50px;
  grid-column: 2/span 1;
  grid-row: 1;
  align-self: start;
  color: #fefefe;
  font-size: 1.4rem;
  background-color: #222222;
  transition: background-color 200ms;
}
@media (min-width: 768px) {
  .search-submit {
    align-self: start;
  }
}
.search-submit:hover {
  background-color: #888888;
}

.header-banner-wrap {
  width: 100%;
  height: auto;
  grid-row-start: 2;
  grid-row-end: 3;
  aspect-ratio: 10/3;
}
@media (min-width: 768px) {
  .header-banner-wrap {
    grid-row-start: 1;
    grid-row-end: 2;
  }
}

.header-banner {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center 80%;
  position: relative;
}

/* END Archive masthead styles */
/**
  * CONTENT STYLES
  */
.main-wrap {
  width: 100%;
  height: auto;
  grid-row-start: 3;
  grid-row-end: 4;
}
.main {
  height: 100%;
  overflow: hidden;
}

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

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

.page-main {
  width: 100%;
  padding-right: 0;
  grid-column: 1/span 1;
  grid-row: 2;
}
@media (min-width: 768px) {
  .page-main {
    grid-column: 1/span 1;
    grid-row: 1;
  }
}
.page-main h1 {
  width: 100%;
  margin-bottom: 30px;
  padding: 25px 0 25px 0;
  display: block;
  border-top: 4px dotted #222222;
  text-transform: uppercase;
  text-align: center;
  color: #222222;
  font-style: italic;
  position: relative;
}
.page-main h1::after {
  content: "";
  width: 44%;
  height: 3px;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 28%;
  background-color: #222222;
}
.page-main h2 {
  margin-top: 50px;
}
.page-main h2:first-child {
  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 ul {
  padding-left: 20px;
  line-height: 1.5;
  list-style-position: outside;
}
.page-main ul li {
  margin-bottom: 15px;
}

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

.page-header {
  width: 100%;
  height: auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center 80%;
  position: relative;
  z-index: 1;
  background-blend-mode: screen;
}
.page-header-overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-image: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.8));
  opacity: 0.7;
}

.page-header-box-wrap {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  min-height: 100%;
  height: auto;
  padding-top: 175px;
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .page-header-box-wrap {
    padding-left: 20px;
    padding-right: 20px;
    transition: padding 300ms;
    padding-top: 195px;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .page-header-box-wrap {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .page-header-box-wrap {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .page-header-box-wrap {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .page-header-box-wrap {
    padding-left: 80px;
    padding-right: 80px;
  }
}

.page-header-box {
  padding-left: 20px;
  padding-right: 20px;
  transition: padding 300ms;
  padding-top: 20px;
  transition: padding 300ms;
  padding-bottom: 20px;
  transition: padding 300ms;
  width: 100%;
  height: 100%;
  text-align: left;
  /*.logo {
    width: 100px;
    height: auto;
    position: absolute;
    top: 40px;
    right: 40px;
  }*/
  /*a {
    padding-bottom: 25px;
    display: block;
    font-weight: bold;
    color: $offWhite;

    &:hover {
      text-decoration: underline;
    }
  }*/
}
@media (min-width: 480px) {
  .page-header-box {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .page-header-box {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .page-header-box {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .page-header-box {
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .page-header-box {
    padding-top: 25px;
  }
}
@media (min-width: 768px) {
  .page-header-box {
    padding-top: 40px;
  }
}
@media (min-width: 992px) {
  .page-header-box {
    padding-top: 60px;
  }
}
@media (min-width: 1200px) {
  .page-header-box {
    padding-top: 80px;
  }
}
@media (min-width: 480px) {
  .page-header-box {
    padding-bottom: 25px;
  }
}
@media (min-width: 768px) {
  .page-header-box {
    padding-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .page-header-box {
    padding-bottom: 60px;
  }
}
@media (min-width: 1200px) {
  .page-header-box {
    padding-bottom: 80px;
  }
}
.page-header-box h1 {
  margin: 0;
  padding: 0;
  display: block;
  color: #fefefe;
  font-size: 1.6rem;
  line-height: 1.3;
  padding-bottom: 25px;
  font-style: italic;
}
@media (min-width: 768px) {
  .page-header-box h1 {
    font-size: 2.2rem;
  }
}
.page-header-box p {
  margin: 0;
  display: block;
  font-size: 1rem;
  font-weight: 500;
  color: #fefefe;
}
@media (min-width: 768px) {
  .page-header-box p {
    font-size: 1.2rem;
  }
}

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

.page-sidebar-heading {
  text-transform: uppercase;
  font-size: 0.8em;
  margin: 10px 0 0 0;
  padding: 15px 0 15px 15px;
  display: block;
  border-top: 3px solid #e0e0e0;
  background-color: #888888;
  font-weight: 900;
  color: #fefefe;
}
.page-sidebar-heading:first-child {
  margin: 0 0 0 0;
}

.side-nav {
  width: 100%;
  height: auto;
}
.side-nav ul.menu {
  width: 100%;
  height: auto;
  display: block;
  list-style: none;
  background-color: #888888;
  background-color: #e0e0e0;
}
.side-nav ul.menu li {
  width: 100%;
  min-height: 45px;
  display: block;
  list-style: none;
  line-height: 45px;
  border-bottom: 1px solid #fefefe;
  /*.current_page_item {
    background-color: $gray;
    color: $offWhite;

    a {
      color: $offWhite;
    }
  }*/
}
.side-nav ul.menu li a {
  width: 100%;
  height: 45px;
  padding: 0 0 0 15px;
  font-weight: bold;
  font-size: 0.8rem;
  color: #fefefe;
  line-height: 45px;
  color: #222222;
}
.side-nav ul.menu li a:hover {
  color: #222;
}
.side-nav ul.menu li ul.sub-menu {
  background-color: #e0e0e0;
}
.side-nav ul.menu li ul.sub-menu li {
  border-bottom: 1px solid #fefefe;
}
.side-nav ul.menu li ul.sub-menu li a {
  padding-left: 30px;
  color: #222222;
}
.side-nav ul.menu li ul.sub-menu li ul.sub-menu {
  background-color: #fefefe;
}
.side-nav ul.menu li ul.sub-menu li ul.sub-menu li a {
  padding-left: 45px;
  font-weight: normal;
}

/*
          .listings {

          }
            .listing {
              margin-bottom: 20px;
              padding-bottom: 20px;
              display: grid;
              grid-template-columns: 280px 1fr;
              border-bottom: 2px solid $lightGray;

              &:last-child {
                margin-bottom: 0;
                padding-bottom: 15px;
                border-bottom: none;
              }
            }
              .listing-left {
                padding: 20px;
                grid-column: 1 / span 1;
                background-color: $darkGray;
                font-size: 0.9rem;
                font-weight: bold;

                img {
                  width: 100%;
                  margin-bottom: 10px;
                }
              }

              .listing-right {
                padding-left: 20px;
                grid-column: 2 / span 1;
              }
*/
.subtitle, p.subtitle, h3.subtitle {
  margin-bottom: 15px;
  padding-bottom: 15px;
  text-align: center;
  font-weight: bold;
  position: relative;
}
.subtitle::after, p.subtitle::after, h3.subtitle::after {
  content: "";
  width: 8%;
  height: 0px;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 46%;
  border-top: 2px dotted #222222;
}

/*
.iframe-container {
  overflow: hidden;
  padding-top: 56.25%;
  position: relative;
}

.iframe-container iframe {
  border: 0;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
*/
.embed-container-wrap {
  width: 100%;
  max-width: 500px;
  margin: 20px auto;
}

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

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

.post-cat {
  max-width: 320px;
  display: block;
  margin: 0 auto;
  padding: 5px;
  text-transform: uppercase;
  text-align: center;
  background-color: #222222;
  color: #f0ede8;
  font-weight: bold;
}

/**
  * FOOTER STYLES
  */
.footer-wrap {
  grid-row-start: 4;
  grid-row-end: 5;
  background-color: #222;
}

.footer {
  padding-top: 20px;
  transition: padding 300ms;
  padding-bottom: 20px;
  transition: padding 300ms;
  text-align: center;
  overflow: hidden;
  color: #fefefe;
}
@media (min-width: 480px) {
  .footer {
    padding-top: 25px;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-top: 40px;
  }
}
@media (min-width: 992px) {
  .footer {
    padding-top: 60px;
  }
}
@media (min-width: 1200px) {
  .footer {
    padding-top: 80px;
  }
}
@media (min-width: 480px) {
  .footer {
    padding-bottom: 25px;
  }
}
@media (min-width: 768px) {
  .footer {
    padding-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .footer {
    padding-bottom: 60px;
  }
}
@media (min-width: 1200px) {
  .footer {
    padding-bottom: 80px;
  }
}

.footer-nav {
  padding-bottom: 30px;
}
@media (min-width: 768px) {
  .footer-nav {
    width: auto;
  }
}
.footer-nav ul {
  width: 100%;
  height: auto;
  display: flex;
  display: inline-block;
  list-style: none;
  text-align: center;
}
@media (min-width: 768px) {
  .footer-nav ul {
    width: auto;
  }
}
.footer-nav ul li {
  padding-left: 20px;
  padding-right: 20px;
  transition: padding 300ms;
  width: 100%;
  list-style: none;
  position: relative;
  display: inline-block;
  position: relative;
  margin-left: -5px;
  padding: 5px 10px;
}
@media (min-width: 480px) {
  .footer-nav ul li {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .footer-nav ul li {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .footer-nav ul li {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .footer-nav ul li {
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media (min-width: 768px) {
  .footer-nav ul li {
    width: auto;
    padding: 0 10px;
  }
  .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: #fefefe;
  text-align: center;
}
@media (min-width: 768px) {
  .footer-nav ul li a {
    width: auto;
    padding: 0 5px;
  }
}

.copyright {
  margin: 0;
  padding: 0;
  font-size: 10px;
  text-align: center;
}

.page-main h2 {
  margin-top: 0;
}

.library-nav {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  height: auto;
  position: static;
  z-index: 6;
  display: block;
}
@media (min-width: 768px) {
  .library-nav {
    padding-left: 0;
    height: 45px;
  }
}
.library-nav ul {
  width: 100%;
  height: auto;
  padding-left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  border-top: 1px solid #888888;
  justify-content: center;
}
@media (min-width: 768px) {
  .library-nav ul {
    width: auto;
    height: 45px;
    flex-direction: row;
    border-top: unset;
    justify-content: flex-start;
  }
}
.library-nav ul li {
  padding-left: 20px;
  padding-right: 20px;
  transition: padding 300ms;
  width: 100%;
  height: 45px;
  list-style: none;
  border-top: unset;
  border-bottom: 1px solid #888888;
  position: relative;
  z-index: 1003;
  flex-basis: auto;
  flex-grow: 1;
  background-color: #ffffff;
  border-top: 2px solid #222222;
  border-bottom: 2px solid #222222;
}
@media (min-width: 480px) {
  .library-nav ul li {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .library-nav ul li {
    padding-left: 30px;
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .library-nav ul li {
    padding-left: 60px;
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .library-nav ul li {
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media (min-width: 768px) {
  .library-nav ul li {
    padding-right: 0;
    padding-left: 0;
    width: auto;
    height: 45px;
    transition: display 300ms;
  }
  .library-nav ul li:hover > ul {
    display: block;
  }
}
.library-nav ul li a {
  width: 100%;
  height: 45px;
  padding: 0;
  position: relative;
  display: flex;
  align-items: center;
  font-weight: bold;
  font-size: 0.8rem;
  text-transform: uppercase;
  font-style: italic;
  color: #222222;
  justify-content: center;
}
@media (min-width: 768px) {
  .library-nav ul li a {
    width: auto;
    height: 41px;
    padding: 0 5px;
    font-size: 0.75rem;
    justify-content: center;
  }
}
@media (min-width: 992px) {
  .library-nav ul li a {
    font-size: 0.9rem;
  }
}
.library-nav ul li.current_page_item {
  background-color: #222222;
  border-top: 2px dotted #ffffff;
  border-bottom: 2px dotted #ffffff;
}
.library-nav ul li.current_page_item a {
  font-weight: black;
  color: #ffffff;
}
.library-nav ul li li.slide-line-child {
  position: absolute;
  z-index: 1002;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 49px;
  padding: 0;
  margin: 0;
  border-top: 2px dotted #ffffff;
  border-bottom: 2px dotted #ffffff;
  transition: width 300ms, left 300ms;
  display: block;
}
.content {
  position: relative;
  /*&::before {
    content: "";
    width: 34%;
    height: 2px;
    margin: 0 auto;
    position: absolute;
    top: 0;
    left: 33%;
    background-color: $black;
  }*/
}

.books {
  width: 100%;
}
.book-type {
  margin-top: 30px;
  margin-bottom: -20px;
  grid-column: 1/-1;
  border-top: 2px solid #222222;
}
.book-type h2 {
  width: 100%;
  margin: 20px 0;
  padding: 20px 0 25px 0;
  display: block;
  text-align: center;
  color: #222222;
  font-style: italic;
  position: relative;
}
.book-type h2::after {
  content: "";
  width: 34%;
  height: 2px;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 33%;
  background-color: #222222;
}

.book-type-box {
  padding: 0 30px 0 30px;
  border-right: 2px solid #222222;
  border-left: 2px solid #222222;
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: auto auto;
}
@media (min-width: 480px) {
  .book-type-box {
    grid-template-columns: 48% 48%;
    grid-auto-rows: auto;
    grid-column-gap: 4%;
  }
}
@media (min-width: 992px) {
  .book-type-box {
    grid-template-columns: 22% 22% 22% 22%;
    grid-auto-rows: auto;
    grid-column-gap: 4%;
  }
}
.book-type-box h3 {
  margin-top: 20px;
  font-size: 1.2rem;
}

.book {
  padding-top: 40px;
}
.book img {
  max-width: 200px;
  margin: 0 auto;
  display: block;
  border: 2px solid #222222;
  border-radius: 2px;
}
.book .book-title {
  margin-bottom: 15px;
  line-height: 1.2;
  font-size: 1.4rem;
}
.book .book-title .book-subtitle {
  font-size: 0.8em;
}
.book .book-publish-date {
  margin-bottom: 15px;
  text-align: center;
}
.book .book-author {
  margin-bottom: 15px;
  line-height: 1.2;
}
.book p {
  position: relative;
}
.book p:last-child {
  margin-bottom: 0;
  padding-bottom: 20px;
}
.book p:last-child::after {
  content: "";
  width: 34%;
  height: 2px;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 33%;
  background-color: #222222;
}

.book-author {
  font-weight: bold;
  text-align: center;
}

.articles {
  width: 100%;
  padding: 0 30px 0 30px;
  border-right: 2px solid #222222;
  border-left: 2px solid #222222;
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: auto auto;
}
@media (min-width: 480px) {
  .articles {
    grid-template-columns: 48% 48%;
    grid-auto-rows: auto;
    grid-column-gap: 4%;
  }
}
@media (min-width: 992px) {
  .articles {
    grid-template-columns: 22% 22% 22% 22%;
    grid-auto-rows: auto;
    grid-column-gap: 4%;
  }
}
.articles .book-title {
  margin-top: 20px;
  font-size: 1.2rem;
}
.article {
  padding-top: 40px;
}
.article img {
  max-width: 200px;
  margin: 0 auto;
  display: block;
  border: 2px solid #222222;
  border-radius: 5px;
}
.article .article-author {
  line-height: 1.2;
}
.article p {
  position: relative;
}
.article p:last-child {
  margin-bottom: 0;
  padding-bottom: 20px;
}
.article p:last-child::after {
  content: "";
  width: 34%;
  height: 2px;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 33%;
  background-color: #222222;
}

.article-author {
  font-weight: bold;
  text-align: center;
}

.article-file span {
  font-weight: bold;
}

.documentaries {
  width: 100%;
  padding: 0 30px 0 30px;
  border-right: 2px solid #222222;
  border-left: 2px solid #222222;
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: auto auto;
}
@media (min-width: 480px) {
  .documentaries {
    grid-template-columns: 48% 48%;
    grid-auto-rows: auto;
    grid-column-gap: 4%;
  }
}
@media (min-width: 992px) {
  .documentaries {
    grid-template-columns: 22% 22% 22% 22%;
    grid-auto-rows: auto;
    grid-column-gap: 4%;
  }
}
.documentary {
  padding-top: 40px;
}
.documentary img {
  max-width: 200px;
  margin: 0 auto;
  display: block;
  border: 2px solid #222222;
  border-radius: 5px;
}
.documentary p {
  position: relative;
}
.documentary p:last-child {
  margin-bottom: 0;
  padding-bottom: 20px;
}
.documentary p:last-child::after {
  content: "";
  width: 34%;
  height: 2px;
  margin: 0 auto;
  position: absolute;
  bottom: 0;
  left: 33%;
  background-color: #222222;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYnJhcnkuY3NzIiwibGlicmFyeS5zY3NzIiwicGFydGlhbHMvX2NvbW1vbi1hcmNoaXZlLnNjc3MiLCJsaWJyYXJpZXMvX25vcm1hbGl6ZS5zY3NzIiwicGFydGlhbHMvY29tbW9uL19icmVha3BvaW50cy5tb2R1bGVzLnNjc3MiLCJwYXJ0aWFscy9jb21tb24tYXJjaGl2ZS9fdmFyaWFibGVzLnNjc3MiLCJwYXJ0aWFscy9jb21tb24vX2ZvbnRzLnNjc3MiLCJwYXJ0aWFscy9jb21tb24vX21peGlucy5zY3NzIiwibGlicmFyaWVzL19pbmNsdWRlLW1lZGlhLnNjc3MiLCJwYXJ0aWFscy9jb21tb24tYXJjaGl2ZS9fZWxlbWVudHMuc2NzcyIsInBhcnRpYWxzL2NvbW1vbi1hcmNoaXZlL19oZWFkZXIuc2NzcyIsInBhcnRpYWxzL2NvbW1vbi1hcmNoaXZlL19jb250ZW50LnNjc3MiLCJwYXJ0aWFscy9jb21tb24vX2Zvb3Rlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7OztHQUFBO0FDQUE7Ozs7R0FBQTtBQ0FBLDJFQUFBO0FBRUE7K0VBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNFLGlCQUFBO0VBQW1CLE1BQUE7RUFDbkIsOEJBQUE7RUFBZ0MsTUFBQTtBSFdsQzs7QUdSQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRSxTQUFBO0FIU0Y7O0FHTkE7O0VBQUE7QUFJQTtFQUNFLGNBQUE7QUhRRjs7QUdMQTs7O0VBQUE7QUFLQTtFQUNFLGNBQUE7RUFDQSxnQkFBQTtBSE9GOztBR0pBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRSx1QkFBQTtFQUF5QixNQUFBO0VBQ3pCLFNBQUE7RUFBVyxNQUFBO0VBQ1gsaUJBQUE7RUFBbUIsTUFBQTtBSFFyQjs7QUdMQTs7O0VBQUE7QUFLQTtFQUNFLGlDQUFBO0VBQW1DLE1BQUE7RUFDbkMsY0FBQTtFQUFnQixNQUFBO0FIU2xCOztBR05BOytFQUFBO0FBR0E7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QUlBLHVCQUFBO0FWbXZCVjtBUTUvQkk7RUU0UEk7SUF3QkksYUFBQTtJQUNBLHlCTHh4Qkg7RUxvZ0RQO0FBQ0Y7QVUxdUJVO0VBQ0UsY0w1eEJIO0FMd2dEVDtBUXJnQ0k7RUV3Uk07SUFRSSxjTGh5Qkw7RUx5Z0RQO0FBQ0Y7O0FVcnVCUTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBRUEsY0FBQTtFQUVBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0FWc3VCVjtBUW5oQ0k7RUVxU0k7SUFtQkksYUFBQTtFVit0QlY7QUFDRjtBVTV0QlU7RUFDRSxjTGgwQkg7QUw4aERUO0FVNXRCWTtFQUNFLFdMenpCRjtBTHVoRFo7O0FVenRCUTtFQUNFLGFBQUE7QVY0dEJWO0FRbGlDSTtFRXFVSTtJQUlJLFdBQUE7SUFDQSxZQUFBO0lBQ0EsY0FBQTtFVjZ0QlY7QUFDRjtBVTF0QlU7RUFDRSxjTG4xQkg7QUwraURUO0FVMXRCWTtFQUNFLFdMNTBCRjtBTHdpRFo7O0FVdnRCTTtFSC8zQkosV0FBQTtFQUNBLFlBQUE7RUdnNEJNLFlBQUE7RUFFQSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLHlCTGgyQkM7RUtpMkJELFVBQUE7RUFDQSxnQ0FBQTtFQUNBLGlCQUFBO0FWMHRCUjtBUTdqQ0k7RUV3VkU7SUFlSSw2QkFBQTtFVjB0QlI7QUFDRjtBVXh0QlE7RUg5M0JOLGtCRlJ1QjtFRVN2QixtQkZUdUI7RUVVdkIseUJBQUE7QVB5bERGO0FRdmtDSTtFRTBXSTtJSHozQkosa0JGWnlCO0lFYXpCLG1CRmJ5QjtFTHVtRDNCO0FBQ0Y7QVE3a0NJO0VFMFdJO0lIcDNCSixrQkZoQnFCO0lFaUJyQixtQkZqQnFCO0VMNG1EdkI7QUFDRjtBUW5sQ0k7RUUwV0k7SUgvMkJKLGtCRnBCcUI7SUVxQnJCLG1CRnJCcUI7RUxpbkR2QjtBQUNGO0FRemxDSTtFRTBXSTtJSDEyQkosa0JGeEJzQjtJRXlCdEIsbUJGekJzQjtFTHNuRHhCO0FBQ0Y7O0FVanZCUTtFSDU0Qk4sV0FBQTtFQUNBLGlCRlBVO0VFUVYsY0FBQTtFRzY0QlEsWUFBQTtFQUNBLGVBQUE7RUFDQSxhQUFBO0VBQ0EsK0JBQUE7RUFDQSx3QkFBQTtBVnF2QlY7QVExbUNJO0VFOFdJO0lBV0ksK0JBQUE7SUFDQSx3QkFBQTtFVnF2QlY7QUFDRjs7QVVudkJVO0VBQ0UsWUFBQTtFQUNBLFVBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtBVnN2Qlo7QVF4bkNJO0VFNlhNO0lBVUksVUFBQTtFVnF2Qlo7QUFDRjtBVW52Qlk7RUFDRSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxjTDM0Qkg7RUs0NEJHLGNBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtBVnF2QmQ7QVVsdkJZO0VBQ0UsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtFQUVBLGNBQUE7RUFDQSx5QkwxNUJIO0VLMjVCRyxjTGo2Qkw7QUxvcERUOztBVS91QlU7RUFDRSxZQUFBO0VBQ0EsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtBVmt2Qlo7QVF6cENJO0VFa2FNO0lBUUkscUJBQUE7SUFDQSxXQUFBO0lBQ0EsbUJBQUE7RVZtdkJaO0FBQ0Y7QVVqdkJZO0VBQ0UsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsY0xoN0JIO0VLaTdCRyxjQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7QVZtdkJkO0FVaHZCWTtFQUNFLFdBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUVBLGtCQUFBO0VBQ0EseUJBQUE7RUFFQSxjQUFBO0VBQ0EseUJMaDhCSDtFS2k4QkcsV0w3N0JGO0FMNnFEWjtBVTl1QmM7RUFDRSxrQkFBQTtBVmd2QmhCOztBVTN1QlU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtFQUNBLGlCQUFBO0VBQ0EsY0wvOEJEO0VLZzlCQyxpQkFBQTtFQUlBLHlCTDE5Qkg7RUsyOUJHLGtDQUFBO0FWMnVCWjtBUW5zQ0k7RUU0Y007SUFlSSxpQkFBQTtFVjR1Qlo7QUFDRjtBVTF1Qlk7RUFDRSx5QkxqK0JMO0FMNnNEVDs7QVV4dUJFO0VIMWdDQSxXQUFBO0VBQ0EsWUFBQTtFRzJnQ0UsaUJBQUE7RUFDQSxlQUFBO0VBS0Esa0JBQUE7QVZ3dUJKO0FRbnRDSTtFRW1lRjtJQVdJLGlCQUFBO0lBQ0EsZUFBQTtFVnl1Qko7QUFDRjs7QVV0dUJJO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSw0QkFBQTtFQUNBLHNCQUFBO0VBQ0EsK0JBQUE7RUFDQSxrQkFBQTtBVnl1Qk47O0FVdHVCQSxnQ0FBQTtBQ3ppQ0E7O0dBQUE7QUFLQTtFSkNFLFdBQUE7RUFDQSxZQUFBO0VJQUEsaUJBQUE7RUFDQSxlQUFBO0FYa3hERjtBV3B3REU7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7QVhzd0RKOztBV2x3REk7RUp0QkYsV0FBQTtFQUNBLFlBQUE7QVA0eERGOztBV253RE07RUpqQkosV0FBQTtFQUNBLGlCRlBVO0VFUVYsY0FBQTtFQVFBLGtCRlJ1QjtFRVN2QixtQkZUdUI7RUVVdkIseUJBQUE7RUlTTSxpQkFBQTtFSjRDTixvQkZ4RG9CO0VFeURwQix5QkFBQTtFSTNDTSxhQUFBO0VBQ0EsMEJBQUE7RUFDQSx3QkFBQTtBWDB3RFI7QVFyd0NJO0VHN2dCRTtJSkZGLGtCRlp5QjtJRWF6QixtQkZieUI7RUxxeUQzQjtBQUNGO0FRM3dDSTtFRzdnQkU7SUpHRixrQkZoQnFCO0lFaUJyQixtQkZqQnFCO0VMMHlEdkI7QUFDRjtBUWp4Q0k7RUc3Z0JFO0lKUUYsa0JGcEJxQjtJRXFCckIsbUJGckJxQjtFTCt5RHZCO0FBQ0Y7QVF2eENJO0VHN2dCRTtJSmFGLGtCRnhCc0I7SUV5QnRCLG1CRnpCc0I7RUxvekR4QjtBQUNGO0FRN3hDSTtFRzdnQkU7SUpvREYsb0JGM0RzQjtFTHF6RHhCO0FBQ0Y7QVFseUNJO0VHN2dCRTtJSndERixvQkY5RGtCO0VMeXpEcEI7QUFDRjtBUXZ5Q0k7RUc3Z0JFO0lKNERGLG9CRmpFa0I7RUw2ekRwQjtBQUNGO0FRNXlDSTtFRzdnQkU7SUpnRUYsb0JGcEVtQjtFTGkwRHJCO0FBQ0Y7QVFqekNJO0VHN2dCRTtJQVdJLDBCQUFBO0lBQ0Esd0JBQUE7RVh1ekRSO0FBQ0Y7O0FXcnpETTtFQUVFLDhCQUFBO0VBQ0EsNkJBQUE7QVh1ekRSO0FRNXpDSTtFRzlmRTtJQU1JLGdDQUFBO0lBQ0EsNEJBQUE7RVh3ekRSO0FBQ0Y7O0FXdHpEUTtFQUNFLFdBQUE7RUFDQSxnQkFBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtBWHl6RFY7QVF6MENJO0VHcGZJO0lBT0kscUJBQUE7SUFDQSxXQUFBO0VYMHpEVjtBQUNGO0FXeHpEVTtFQUNFLFdBQUE7RUFDQSxtQkFBQTtFQUNBLHNCQUFBO0VBQ0EsY0FBQTtFQUNBLDhCQUFBO0VBR0EseUJBQUE7RUFDQSxrQkFBQTtFQUVBLGNOckNIO0VNc0NHLGtCQUFBO0VBQ0Esa0JBQUE7QVh1ekRaO0FXcnpEWTtFQUNFLFdBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0EseUJOakRMO0FMdzJEVDtBV256RFU7RUFDRSxnQkFBQTtBWHF6RFo7QVduekRZO0VBQ0UsYUFBQTtBWHF6RGQ7QVdqekRVO0VBQ0UsZ0JBQUE7QVhtekRaO0FXaHpEVTtFQUNFLGdCQUFBO0FYa3pEWjtBVy95RFU7RUFDRSxnQkFBQTtBWGl6RFo7QVc5eURVO0VBQ0UsZ0JBQUE7QVhnekRaO0FXN3lEVTtFQUNFLG1CQUFBO0FYK3lEWjtBVzN5RFU7RUFDRSxrQkFBQTtFQUlBLGdCQUFBO0VBQ0EsNEJBQUE7QVgweURaO0FXeHlEWTtFQUNFLG1CQUFBO0FYMHlEZDs7QVdyeURRO0VBQ0UsZ0JBQUE7QVh3eURWO0FRdDRDSTtFR25hSTtJQUlJLG9CQUFBO0VYeXlEVjtBQUNGOztBV3R5RFE7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUtBLDRCQUFBO0VBQ0Esc0JBQUE7RUFDQSwrQkFBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUVBLDZCQUFBO0FYb3lEVjtBVzl4RFU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxVQUFBO0VBQ0EseUVBQUE7RUFDQSxZQUFBO0FYZ3lEWjs7QVc1eERVO0VKbEtSLFdBQUE7RUFDQSxpQkZQVTtFRVFWLGNBQUE7RUlrS1UsZ0JBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFFQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7QVhneURaO0FRNzZDSTtFRzVYTTtJSnhKUixrQkZSdUI7SUVTdkIsbUJGVHVCO0lFVXZCLHlCQUFBO0lJbUtZLGtCQUFBO0VYbXlEWjtBQUNGO0FRcjdDSTtFRzVYTTtJSm5KTixrQkZaeUI7SUVhekIsbUJGYnlCO0VMcTlEM0I7QUFDRjtBUTM3Q0k7RUc1WE07SUo5SU4sa0JGaEJxQjtJRWlCckIsbUJGakJxQjtFTDA5RHZCO0FBQ0Y7QVFqOENJO0VHNVhNO0lKeklOLGtCRnBCcUI7SUVxQnJCLG1CRnJCcUI7RUwrOUR2QjtBQUNGO0FRdjhDSTtFRzVYTTtJSnBJTixrQkZ4QnNCO0lFeUJ0QixtQkZ6QnNCO0VMbytEeEI7QUFDRjs7QVd4ekRZO0VKektWLGtCRlJ1QjtFRVN2QixtQkZUdUI7RUVVdkIseUJBQUE7RUE0QkEsaUJGL0JvQjtFRWdDcEIseUJBQUE7RUF3QkEsb0JGeERvQjtFRXlEcEIseUJBQUE7RUlxSFksV0FBQTtFQUNBLFlBQUE7RUFHQSxnQkFBQTtFQVNBOzs7Ozs7SUFBQTtFQVFBOzs7Ozs7Ozs7SUFBQTtBWDZ6RGQ7QVEzK0NJO0VHM1dRO0lKcEtSLGtCRlp5QjtJRWF6QixtQkZieUI7RUwyZ0UzQjtBQUNGO0FRai9DSTtFRzNXUTtJSi9KUixrQkZoQnFCO0lFaUJyQixtQkZqQnFCO0VMZ2hFdkI7QUFDRjtBUXYvQ0k7RUczV1E7SUoxSlIsa0JGcEJxQjtJRXFCckIsbUJGckJxQjtFTHFoRXZCO0FBQ0Y7QVE3L0NJO0VHM1dRO0lKckpSLGtCRnhCc0I7SUV5QnRCLG1CRnpCc0I7RUwwaEV4QjtBQUNGO0FRbmdESTtFRzNXUTtJSnZJUixpQkZsQ3NCO0VMMmhFeEI7QUFDRjtBUXhnREk7RUczV1E7SUpuSVIsaUJGckNrQjtFTCtoRXBCO0FBQ0Y7QVE3Z0RJO0VHM1dRO0lKL0hSLGlCRnhDa0I7RUxtaUVwQjtBQUNGO0FRbGhESTtFRzNXUTtJSjNIUixpQkYzQ21CO0VMdWlFckI7QUFDRjtBUXZoREk7RUczV1E7SUo5R1Isb0JGM0RzQjtFTCtpRXhCO0FBQ0Y7QVE1aERJO0VHM1dRO0lKMUdSLG9CRjlEa0I7RUxtakVwQjtBQUNGO0FRamlESTtFRzNXUTtJSnRHUixvQkZqRWtCO0VMdWpFcEI7QUFDRjtBUXRpREk7RUczV1E7SUpsR1Isb0JGcEVtQjtFTDJqRXJCO0FBQ0Y7QVdsM0RjO0VBQ0UsU0FBQTtFQUNBLFVBQUE7RUFDQSxjQUFBO0VBQ0EsY04xTEw7RU0yTEssaUJBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0VBQ0Esa0JBQUE7QVhvM0RoQjtBUXJqREk7RUd2VVU7SUFXSSxpQkFBQTtFWHEzRGhCO0FBQ0Y7QVdsM0RjO0VBQ0UsU0FBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjTjFNTDtBTDhqRVg7QVFqa0RJO0VHeFRVO0lBUUksaUJBQUE7RVhxM0RoQjtBQUNGOztBV2ozRFE7RUpsTE4sb0JGeERvQjtFRXlEcEIseUJBQUE7RUltTFEsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtBWHEzRFY7QVE5a0RJO0VHM1NJO0lKOUtKLG9CRjNEc0I7RUxzbUV4QjtBQUNGO0FRbmxESTtFRzNTSTtJSjFLSixvQkY5RGtCO0VMMG1FcEI7QUFDRjtBUXhsREk7RUczU0k7SUp0S0osb0JGakVrQjtFTDhtRXBCO0FBQ0Y7QVE3bERJO0VHM1NJO0lKbEtKLG9CRnBFbUI7RUxrbkVyQjtBQUNGO0FRbG1ESTtFRzNTSTtJQU9JLHFCQUFBO0lBQ0EsV0FBQTtFWDA0RFY7QUFDRjs7QVd4NERVO0VBQ0UseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxjQUFBO0VBQ0EsNkJBQUE7RUFDQSx5Qk56T0g7RU0wT0csZ0JBQUE7RUFDQSxjTnRPRDtBTGluRVg7QVd6NERZO0VBQ0UsZUFBQTtBWDI0RGQ7O0FXdjREVTtFQUNFLFdBQUE7RUFDQSxZQUFBO0FYMDREWjtBV3g0RFk7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUlBLGNBQUE7RUFDQSxnQkFBQTtFQUVBLHlCTi9QTDtFTWtRSyx5Qk4zUEQ7QUwrbkViO0FXbDREYztFQUNFLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUlBLGlCQUFBO0VBRUEsZ0NBQUE7RUF1QkE7Ozs7Ozs7SUFBQTtBWGkzRGhCO0FXdDREZ0I7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG1CQUFBO0VBS0EsaUJBQUE7RUFDQSxpQkFBQTtFQUVBLGNOdFJQO0VNdVJPLGlCQUFBO0VBRUEsY04vUlQ7QUxpcUVUO0FXaDREa0I7RUFDRSxXTnhSUjtBTDBwRVo7QVcvMkRnQjtFQUVFLHlCTi9TTDtBTCtwRWI7QVc5MkRrQjtFQUNFLGdDQUFBO0FYZzNEcEI7QVc5MkRvQjtFQUNFLGtCQUFBO0VBQ0EsY045VGI7QUw4cUVUO0FXNzJEb0I7RUFFRSx5Qk43VFg7QUwycUVYO0FXMTJEd0I7RUFDRSxrQkFBQTtFQUNBLG1CQUFBO0FYNDJEMUI7O0FXbDJEQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FBb0NjO0VBQ0UsbUJBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtBWG8yRGhCO0FXbDJEZ0I7RUFDRSxXQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUVBLDhCQUFBO0FYbTJEbEI7O0FXLzFEYzs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUFpQkE7RUFDRSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtBWGkyRGhCOztBVy8xRGdCO0VBQ0Usa0JBQUE7RUFDQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7QVhrMkRsQjs7QVdoMkRrQjs7O0VBR0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0FYbTJEcEI7O0FXaDJEQTtFQUNFLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxZQUFBO0VBQ0EseUJBQUE7RUFDQSxrQkFBQTtFQUNBLHlCTnpiTztFTTBiUCxjTnZiTztFTXdiUCxpQkFBQTtBWG0yREY7O0FZeDBFQTs7R0FBQTtBQUtBO0VBQ0UsaUJBQUE7RUFDQSxlQUFBO0VBQ0Esc0JQNENVO0FMNnhFWjs7QVl2MEVFO0VMNkNBLGlCRi9Cb0I7RUVnQ3BCLHlCQUFBO0VBd0JBLG9CRnhEb0I7RUV5RHBCLHlCQUFBO0VLcEVFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjUGlDTztBTDJ5RVg7QVE5eURJO0VJbmlCRjtJTGlERSxpQkZsQ3NCO0VMczBFeEI7QUFDRjtBUW56REk7RUluaUJGO0lMcURFLGlCRnJDa0I7RUwwMEVwQjtBQUNGO0FReHpESTtFSW5pQkY7SUx5REUsaUJGeENrQjtFTDgwRXBCO0FBQ0Y7QVE3ekRJO0VJbmlCRjtJTDZERSxpQkYzQ21CO0VMazFFckI7QUFDRjtBUWwwREk7RUluaUJGO0lMMEVFLG9CRjNEc0I7RUwwMUV4QjtBQUNGO0FRdjBESTtFSW5pQkY7SUw4RUUsb0JGOURrQjtFTDgxRXBCO0FBQ0Y7QVE1MERJO0VJbmlCRjtJTGtGRSxvQkZqRWtCO0VMazJFcEI7QUFDRjtBUWoxREk7RUluaUJGO0lMc0ZFLG9CRnBFbUI7RUxzMkVyQjtBQUNGOztBWWwzRUk7RUFDRSxvQkFBQTtBWnEzRU47QVExMURJO0VJNWhCQTtJQUlJLFdBQUE7RVpzM0VOO0FBQ0Y7QVlwM0VNO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0FaczNFUjtBUXYyREk7RUlyaEJFO0lBU0ksV0FBQTtFWnUzRVI7QUFDRjtBWXIzRVE7RUxYTixrQkZSdUI7RUVTdkIsbUJGVHVCO0VFVXZCLHlCQUFBO0VLV1EsV0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtBWnkzRVY7QVF4M0RJO0VJemdCSTtJTE5KLGtCRlp5QjtJRWF6QixtQkZieUI7RUx3NUUzQjtBQUNGO0FROTNESTtFSXpnQkk7SUxESixrQkZoQnFCO0lFaUJyQixtQkZqQnFCO0VMNjVFdkI7QUFDRjtBUXA0REk7RUl6Z0JJO0lMSUosa0JGcEJxQjtJRXFCckIsbUJGckJxQjtFTGs2RXZCO0FBQ0Y7QVExNERJO0VJemdCSTtJTFNKLGtCRnhCc0I7SUV5QnRCLG1CRnpCc0I7RUx1NkV4QjtBQUNGO0FRaDVESTtFSXpnQkk7SUFXSSxXQUFBO0lBQ0EsZUFBQTtFWms1RVY7RVloNUVVO0lBQ0UsWUFBQTtJQUNBLGNQREc7SU9FSCxrQkFBQTtJQUNBLE1BQUE7SUFDQSxXQUFBO0VaazVFWjtFWTc0RVk7SUFDRSxXQUFBO0VaKzRFZDtBQUNGO0FZMzRFVTtFQUNFLFdBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsY1B6QkQ7RU8wQkMsa0JBQUE7QVo2NEVaO0FRMTZESTtFSTNlTTtJQVdJLFdBQUE7SUFDQSxjQUFBO0VaODRFWjtBQUNGOztBWXg0RUk7RUFDRSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtBWjI0RU47O0FDeDlFRTtFQUNFLGFBQUE7QUQyOUVKOztBQ3Y5RUE7RUFDRSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLGNBQUE7QUQwOUVGO0FRcjhESTtFUDVoQko7SUFVSSxlQUFBO0lBQ0EsWUFBQTtFRDI5RUY7QUFDRjtBQ3o5RUU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsNkJBQUE7RUFDQSx1QkFBQTtBRDI5RUo7QVF0OURJO0VQOWdCRjtJQVlJLFdBQUE7SUFDQSxZQUFBO0lBQ0EsbUJBQUE7SUFDQSxpQkFBQTtJQUNBLDJCQUFBO0VENDlFSjtBQUNGO0FDMTlFSTtFTXpCRixrQkZSdUI7RUVTdkIsbUJGVHVCO0VFVXZCLHlCQUFBO0VOeUJJLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdDQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBQ0EseUJJakJHO0VKa0JILDZCQUFBO0VBQ0EsZ0NBQUE7QUQ4OUVOO0FRaC9ESTtFUDNmQTtJTXBCQSxrQkZaeUI7SUVhekIsbUJGYnlCO0VMZ2hGM0I7QUFDRjtBUXQvREk7RVAzZkE7SU1mQSxrQkZoQnFCO0lFaUJyQixtQkZqQnFCO0VMcWhGdkI7QUFDRjtBUTUvREk7RVAzZkE7SU1WQSxrQkZwQnFCO0lFcUJyQixtQkZyQnFCO0VMMGhGdkI7QUFDRjtBUWxnRUk7RVAzZkE7SU1MQSxrQkZ4QnNCO0lFeUJ0QixtQkZ6QnNCO0VMK2hGeEI7QUFDRjtBUXhnRUk7RVAzZkE7SUFvQkksZ0JBQUE7SUFDQSxlQUFBO0lBQ0EsV0FBQTtJQUNBLFlBQUE7SUFHQSx5QkFBQTtFRGkvRU47RUMvK0VNO0lBQ0UsY0FBQTtFRGkvRVI7QUFDRjtBQzUrRU07RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7RUFDQSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsY0l0REM7RUp1REQsdUJBQUE7QUQ4K0VSO0FRbGlFSTtFUHhkRTtJQXFCSSxXQUFBO0lBQ0EsWUFBQTtJQUNBLGNBQUE7SUFDQSxrQkFBQTtJQUNBLHVCQUFBO0VEeStFUjtBQUNGO0FRM2lFSTtFUHhkRTtJQTZCSSxpQkFBQTtFRDArRVI7QUFDRjtBQ3YrRU07RUFDRSx5Qkk3RUM7RUo4RUQsOEJBQUE7RUFDQSxpQ0FBQTtBRHkrRVI7QUN2K0VRO0VBQ0Usa0JBQUE7RUFDQSxjSWpGRDtBTDBqRlQ7QUNyK0VNO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsWUFBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBRUEsOEJBQUE7RUFDQSxpQ0FBQTtFQUdBLG1DQUFBO0VBQ0EsY0FBQTtBRG8rRVI7QUMxOUVBO0VBRUUsa0JBQUE7RUFFQTs7Ozs7Ozs7O0lBQUE7QURtK0VGOztBQ3Y5RUE7RUFDRSxXQUFBO0FEMDlFRjtBQzM4RUU7RUFDRSxnQkFBQTtFQUNBLG9CQUFBO0VBR0EsaUJBQUE7RUFDQSw2QkFBQTtBRDI4RUo7QUNoOEVJO0VBQ0UsV0FBQTtFQUNBLGNBQUE7RUFDQSxzQkFBQTtFQUNBLGNBQUE7RUFJQSxrQkFBQTtFQUVBLGNJM0tHO0VKNEtILGtCQUFBO0VBQ0Esa0JBQUE7QUQ4N0VOO0FDNTdFTTtFQUNFLFdBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0EseUJJdkxDO0FMcW5GVDs7QUMxN0VJO0VBQ0Usc0JBQUE7RUFDQSwrQkFBQTtFQUNBLDhCQUFBO0VBR0EsYUFBQTtFQUNBLDBCQUFBO0VBQ0EseUJBQUE7QUQyN0VOO0FRM25FSTtFUHhVQTtJQVdJLDhCQUFBO0lBQ0Esb0JBQUE7SUFDQSxtQkFBQTtFRDQ3RU47QUFDRjtBUWxvRUk7RVB4VUE7SUFpQkksc0NBQUE7SUFDQSxvQkFBQTtJQUNBLG1CQUFBO0VENjdFTjtBQUNGO0FDMzdFTTtFQUNFLGdCQUFBO0VBQ0EsaUJBQUE7QUQ2N0VSOztBQ3o3RUk7RUFDRSxpQkFBQTtBRDQ3RU47QUMxN0VNO0VBQ0UsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLHlCQUFBO0VBQ0Esa0JBQUE7QUQ0N0VSO0FDejdFTTtFQUNFLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtBRDI3RVI7QUN6N0VRO0VBQ0UsZ0JBQUE7QUQyN0VWO0FDdjdFTTtFQUVFLG1CQUFBO0VBQ0Esa0JBQUE7QUR3N0VSO0FDcjdFTTtFQUNFLG1CQUFBO0VBQ0EsZ0JBQUE7QUR1N0VSO0FDcDdFTTtFQUNFLGtCQUFBO0FEczdFUjtBQ3A3RVE7RUFDRSxnQkFBQTtFQUNBLG9CQUFBO0FEczdFVjtBQ3A3RVU7RUFDRSxXQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLHlCSXRRSDtBTDRyRlQ7O0FDajdFTTtFQUNFLGlCQUFBO0VBQ0Esa0JBQUE7QURvN0VSOztBQ2g3RUE7RUFDRSxXQUFBO0VBT0Esc0JBQUE7RUFDQSwrQkFBQTtFQUNBLDhCQUFBO0VBR0EsYUFBQTtFQUNBLDBCQUFBO0VBQ0EseUJBQUE7QUQyNkVGO0FReHNFSTtFUGxQSjtJQWtCSSw4QkFBQTtJQUNBLG9CQUFBO0lBQ0EsbUJBQUE7RUQ0NkVGO0FBQ0Y7QVEvc0VJO0VQbFBKO0lBd0JJLHNDQUFBO0lBQ0Esb0JBQUE7SUFDQSxtQkFBQTtFRDY2RUY7QUFDRjtBQzM2RUU7RUFDRSxnQkFBQTtFQUNBLGlCQUFBO0FENjZFSjtBQ242RUU7RUFDRSxpQkFBQTtBRHE2RUo7QUNuNkVJO0VBQ0UsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLHlCQUFBO0VBQ0Esa0JBQUE7QURxNkVOO0FDbDZFSTtFQUNFLGdCQUFBO0FEbzZFTjtBQ2o2RUk7RUFDRSxrQkFBQTtBRG02RU47QUNqNkVNO0VBQ0UsZ0JBQUE7RUFDQSxvQkFBQTtBRG02RVI7QUNqNkVRO0VBQ0UsV0FBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSx5Qkl4VkQ7QUwydkZUOztBQzk1RUk7RUFDRSxpQkFBQTtFQUNBLGtCQUFBO0FEaTZFTjs7QUM1NUVNO0VBQ0UsaUJBQUE7QUQrNUVSOztBQ3g1RUk7RUFDRSxXQUFBO0VBT0Esc0JBQUE7RUFDQSwrQkFBQTtFQUNBLDhCQUFBO0VBR0EsYUFBQTtFQUNBLDBCQUFBO0VBQ0EseUJBQUE7QURtNUVOO0FRM3dFSTtFUHZKQTtJQWtCSSw4QkFBQTtJQUNBLG9CQUFBO0lBQ0EsbUJBQUE7RURvNUVOO0FBQ0Y7QVFseEVJO0VQdkpBO0lBd0JJLHNDQUFBO0lBQ0Esb0JBQUE7SUFDQSxtQkFBQTtFRHE1RU47QUFDRjtBQzU0RU07RUFDRSxpQkFBQTtBRDg0RVI7QUM1NEVRO0VBQ0UsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLHlCQUFBO0VBQ0Esa0JBQUE7QUQ4NEVWO0FDMzRFUTtFQUNFLGtCQUFBO0FENjRFVjtBQzM0RVU7RUFDRSxnQkFBQTtFQUNBLG9CQUFBO0FENjRFWjtBQzM0RVk7RUFDRSxXQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLHlCSTFhTDtBTHV6RlQiLCJmaWxlIjoibGlicmFyeS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAgKiBCT09LUyBQQUdFIFNUWUxFU0hFRVRcbiAgKlxuICAqIEltcG9ydCBjb21tb24gc3R5bGVzIGFuZCBwYWdlLXNwZWNpZmljIHN0eWxlcyBmb3IgXCJCb29rc1wiLlxuICAqL1xuLyoqXG4gICogQ09NTU9OIEFSQ0hJVkUgU1RZTEVTXG4gICpcbiAgKiBEZWZpbmVzIHRoZSBzdHlsZXMgdG8gaW1wb3J0IHRoYXQgYXJlIHJlcXVpcmVkIGJ5IHZpcnR1YWxseSBhbGwgcGFnZXMuXG4gICovXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICAqIEJSRUFLUE9JTlRTXG4gICpcbiAgKiBEZWZpbmUgYnJlYWtwb2ludHMgZm9yIG1lZGlhIHF1ZXJ5IHVzZSBhbmQgZXhwb3J0IHRoZW0gZm9yIHVzZSB3aXRoIEpTLlxuICAqL1xuLypcbmV4YW1wbGUgdXNhZ2U6XG5AaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtc21hbGxcIikgey4uLn1cbiovXG46ZXhwb3J0IHtcbiAgYnJlYWtwb2ludFBob25lU21hbGw6IDMyMDtcbiAgYnJlYWtwb2ludFBob25lTGFyZ2U6IDQ4MDtcbiAgYnJlYWtwb2ludFRhYmxldDogNzY4O1xuICBicmVha3BvaW50TGFwdG9wOiA5OTI7XG4gIGJyZWFrcG9pbnREZXNrdG9wOiAxMjAwO1xuICBicmVha3BvaW50RGVza3RvcExhcmdlOiAxNDAwO1xuICBicmVha3BvaW50SGQ6IDE5MjA7XG59XG5cbi8qKlxuICAqIFZBUklBQkxFU1xuICAqL1xuLyoqXG4gICogRGltZW5zaW9uczpcbiAgKi9cbi8qKlxuICAqIENvbG9yczpcbiAgKi9cbi8qKlxuICAqIEZPTlRTXG4gICpcbiAgKiBEZWZpbmUgQGZvbnQtZmFjZSBzdHlsZXMuXG4gICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IEFtZXJpY2FuIFR5cGV3cml0ZXI7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL0FtZXJpY2FuVHlwZXdyaXRlci1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbi8qXG4vLyBSb2JvdG8tUmVndWxhci50dGY6XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJvYm90bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvUm9ib3RvLVJlZ3VsYXIudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBSb2JvdG8tQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUm9ib3RvO1xuICBzcmM6IHVybCguLi9mb250cy9Sb2JvdG8tQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4qL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSYWpkaGFuaTtcbiAgc3JjOiB1cmwoLi4vZm9udHMvUmFqZGhhbmktUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhamRoYW5pO1xuICBzcmM6IHVybCguLi9mb250cy9SYWpkaGFuaS1NZWRpdW0udHRmKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSYWpkaGFuaTtcbiAgc3JjOiB1cmwoLi4vZm9udHMvUmFqZGhhbmktU2VtaUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSYWpkaGFuaTtcbiAgc3JjOiB1cmwoLi4vZm9udHMvUmFqZGhhbmktQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhamRoYW5pO1xuICBzcmM6IHVybCguLi9mb250cy9SYWpkaGFuaS1FeHRyYUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSYWpkaGFuaTtcbiAgc3JjOiB1cmwoLi4vZm9udHMvUmFqZGhhbmktQmxhY2sudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLypcbi8vIE1vbnRzZXJyYXQtUmVndWxhci50dGY6XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIE1vbnRzZXJyYXQtQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdDtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTW9udHNlcnJhdC1Cb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiovXG4vKlxuLy8gTWF2ZW5Qcm8tUmVndWxhci50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWF2ZW4gUHJvO1xuICBzcmM6IHVybCguLi9mb250cy9NYXZlblByby1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTWF2ZW5Qcm8tTWVkaXVtLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLU1lZGl1bS50dGYpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIE1hdmVuUHJvLVNlbWlCb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLVNlbWlCb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTWF2ZW5Qcm8tQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWF2ZW4gUHJvO1xuICBzcmM6IHVybCguLi9mb250cy9NYXZlblByby1Cb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTWF2ZW5Qcm8tRXh0cmFCb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLUV4dHJhQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIE1hdmVuUHJvLUJsYWNrLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLUJsYWNrLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiovXG4vKlxuQ2VudHVyeSBPbGQgU3R5bGUgU3RkIEJvbGRcblxuZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQ2VudHVyeSBPbGQgU3R5bGUgU3RkIEl0YWxpY1xuXG5mb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDQwMDtcblxuZm9udC1zdHlsZTogaXRhbGljO1xuXG5DZW50dXJ5IE9sZCBTdHlsZSBTdGQgUmVndWxhclxuXG5mb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDQwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG4qL1xuLypcbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGQgSXRhbGljXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IGl0YWxpYztcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0XG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0IEl0YWxpY1xuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogMzAwO1xuXG5mb250LXN0eWxlOiBpdGFsaWM7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkIENvbmRlbnNlZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXItY29uZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0IENvbmRlbnNlZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXItY29uZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuKi9cbi8qKlxuICAqIE1JWElOU1xuICAqL1xuLndyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaW5uZXItd3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5cbi5zcGFjZXItdG9wIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnNwYWNlci10b3Age1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNwYWNlci10b3Age1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnNwYWNlci10b3Age1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zcGFjZXItdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgfVxufVxuXG4uc3BhY2VyLWJvdHRvbSB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5zcGFjZXItYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zcGFjZXItYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5zcGFjZXItYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc3BhY2VyLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbn1cblxuLmJ1dHRvbi1jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5idXR0b24ge1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKlxuQG1peGluIGNhdGVnb3J5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vIC90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2MjVlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNhdGVnb3J5IHtcbiAgQGluY2x1ZGUgY2F0ZWdvcnk7XG59XG4qL1xuLnRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBjb2xvcjogIzIyMjtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2MjVlbTtcbn1cbi50YWcge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNDI1ZW07XG59XG5cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIGJvcmRlcjogMDtcbn1cblxuLm5vLXNjcm9sbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qKlxuICAqIEVMRU1FTlQgQVJDSElWRSBTVFlMRVNcbiAgKlxuICAqIFN0eWxlIGRlZmluaXRpb25zIGZvciBnbG9iYWwgZWxlbWVudCBzZWxlY3RvcnMuXG4gICovXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS43O1xufVxuXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyIGF1dG87XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMyMjI7XG4gIGZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuaDEge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuaDIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjNyZW07XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNTkwOWVtO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHBhZGRpbmc6IDIwcHggMCAyNXB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMjIyMjIyO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmgyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAzNCU7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDMzJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcbn1cblxuaDMge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4xNTkwOWVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuaDQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuaDUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuaDYge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjODg1NTAwO1xufVxudWwsIG9sIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG59XG5cbmltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8qIGJlZ2luIGJ1dHRvbiBzdHlsZXMgKi9cbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyogZW5kIGJ1dHRvbiBzdHlsZXMgKi9cbmJsb2NrcXVvdGUge1xuICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAjMjIyMjIyO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICMyMjIyMjI7XG4gIG1hcmdpbjogMjBweCAxMHB4IDQwcHggMjBweDtcbiAgcGFkZGluZzogMCA0MHB4IDAgMzBweDtcbiAgcXVvdGVzOiBcIuKAnFwiIFwi4oCdXCIgXCLigJhcIiBcIuKAmVwiO1xufVxuYmxvY2txdW90ZTpiZWZvcmUge1xuICBjb2xvcjogI2NjYztcbiAgY29udGVudDogb3Blbi1xdW90ZTtcbiAgZm9udC1zaXplOiA0ZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAtMC40ZW07XG4gIGZvbnQtc2l6ZTogNGVtO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IC0wLjRlbTtcbn1cbmJsb2NrcXVvdGU6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGNvbnRlbnQ6IGNsb3NlLXF1b3RlO1xufVxuYmxvY2txdW90ZSBwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5ibG9ja3F1b3RlIHA6Zmlyc3Qtb2YtdHlwZSwgYmxvY2txdW90ZSBwOm50aC1vZi10eXBlKDIpIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYmxvY2txdW90ZSBwOmZpcnN0LW9mLXR5cGUsIGJsb2NrcXVvdGUgcDpudGgtb2YtdHlwZSgyKSB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gIH1cbn1cbmJsb2NrcXVvdGUgcDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBCRUdJTiBBcmNoaXZlIG1hc3RoZWFkIHN0eWxlcyAqL1xuLmhlYWRlci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZ3JpZC1yb3ctc3RhcnQ6IDE7XG4gIGdyaWQtcm93LWVuZDogMjtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zLCBib3JkZXIgMjAwbXMsIGJveC1zaGFkb3cgMjAwbXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGVkZTg7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTVweCAjMDAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICMyMjIyMjI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci13cmFwIHtcbiAgICBncmlkLXJvdy1zdGFydDogMjtcbiAgICBncmlkLXJvdy1lbmQ6IDM7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLypcbi50b3AtYmFyLWJnIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cbiAgJi5iZy12aXNpYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvcjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4qL1xuLmhlYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxMDVweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG4gIGJvcmRlci1ib3R0b206IHVuc2V0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDkwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMyMjIyMjI7XG4gIH1cbn1cbi5oZWFkZXItYnJhbmQge1xuICBtaW4taGVpZ2h0OiA4MHB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDEvc3BhbiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG4gIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItdG9wOiAzcHggc29saWQgIzIyMjIyMjtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMyMjIyMjI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1icmFuZCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAyO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMjIyMjIyO1xuICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbi5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjMjIyMjIyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xuICBib3JkZXItdG9wOiB1bnNldDtcbiAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gIH1cbn1cbi5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgZm9udC1zaXplOiAxLjFyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cbn1cbi5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUgLmxvZ28tdGV4dC10aXRsZS1kb21haW4ge1xuICBmb250LXNpemU6IDFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cbi5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUgLmxvZ28tdGV4dC10aXRsZS10cmFkZW1hcmsge1xuICBjb2xvcjogIzlmOGM2ZDtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIGZvbnQtc2l6ZTogMC41ZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4uaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRhZ2xpbmUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4IGF1dG8gMCBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAwLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzIyMjIyMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRhZ2xpbmUge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMzBweCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgfVxufVxuXG4uaGVhZGVyLW5hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiA1O1xufVxuLmhlYWRlci1uYXYuYmctdmlzaWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGVkZTg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYge1xuICAgIGhlaWdodDogNDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGdyaWQtcm93OiAyO1xuICB9XG59XG5cbi5tYWluLW5hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGhlaWdodDogNDVweDtcbiAgfVxufVxuLm1haW4tbmF2IHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzg4ODg4ODtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHVsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cbi5tYWluLW5hdiB1bCBsaSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci10b3A6IHVuc2V0O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzg4ODg4ODtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDAzO1xuICBmbGV4LWJhc2lzOiBhdXRvO1xuICBmbGV4LWdyb3c6IDE7XG59XG4ubWFpbi1uYXYgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICMyMjIyMjI7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzIyMjIyMjtcbn1cbi5tYWluLW5hdiB1bCBsaTpmaXJzdC1jaGlsZCBhIHtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2MwZWRmZiwgI2ZiZDRkNiAxMDAlKTtcbiAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA0NXB4O1xuICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgIHRyYW5zaXRpb246IGRpc3BsYXkgMzAwbXM7XG4gIH1cbiAgLm1haW4tbmF2IHVsIGxpOmhvdmVyID4gdWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4ubWFpbi1uYXYgdWwgbGkgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHBhZGRpbmc6IDAgMCAwIDEuNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzIyMjIyMjtcbiAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xufVxuLm1haW4tbmF2IHVsIGxpIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkgYSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSBhIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpLmN1cnJlbnRfcGFnZV9pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcbn1cbi5tYWluLW5hdiB1bCBsaS5jdXJyZW50X3BhZ2VfaXRlbSBhIHtcbiAgY29sb3I6ICNmMGVkZTg7XG59XG4ubWFpbi1uYXYgdWwgbGkuY3VycmVudC1wYWdlLWFuY2VzdG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcbn1cbi5tYWluLW5hdiB1bCBsaS5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgYSB7XG4gIGNvbG9yOiAjZjBlZGU4O1xufVxuLm1haW4tbmF2IHVsIGxpIC5uYXYtY2hldnJvbiB7XG4gIHdpZHRoOiA0NXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB6LWluZGV4OiAyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIC5uYXYtY2hldnJvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGVkZTg7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTVweCAjMDAwO1xuICAvKlxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAkbWVkaXVtR3JheTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTEycHg7XG4gICAgcmlnaHQ6IC0xcHg7XG4gICAgei1pbmRleDogMTAwMTtcbiAgfVxuICAqL1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSB1bCB7XG4gICAgbWluLXdpZHRoOiAzMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0NXB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbn1cbi5tYWluLW5hdiB1bCBsaSB1bCBsaSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA0NXB4O1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzIyMjIyMjtcbn1cbi5tYWluLW5hdiB1bCBsaSB1bCBsaTpudGgtY2hpbGQoMSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgY29sb3I6ICMyMjIyMjI7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGk6bnRoLWNoaWxkKDEpIGEge1xuICBjb2xvcjogIzIyMjIyMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkgdWwgbGkge1xuICAgIGhlaWdodDogNDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpIGEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBwYWRkaW5nLWxlZnQ6IDNlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpIHVsIGxpIGEge1xuICBwYWRkaW5nLWxlZnQ6IDQuNWVtO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpIHVsIGxpIHVsIGxpIGEge1xuICBwYWRkaW5nLWxlZnQ6IDZlbTtcbn1cbi5tYWluLW5hdiB1bCBsaS5zbGlkZS1saW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAyO1xuICBib3R0b206IC0ycHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDQ5cHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLXRvcDogMnB4IGRvdHRlZCAjZjBlZGU4O1xuICBib3JkZXItYm90dG9tOiAycHggZG90dGVkICNmMGVkZTg7XG4gIHRyYW5zaXRpb246IHdpZHRoIDMwMG1zLCBsZWZ0IDMwMG1zO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5oZWFkZXItbmF2LXRvcCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHotaW5kZXg6IDY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cbi5oZWFkZXItbmF2LXRvcC52aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtdG9wIHtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDQ1cHg7XG4gICAgcmlnaHQ6IC00NXB4O1xuICAgIHotaW5kZXg6IDY7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmhlYWRlci1uYXYtdG9wIHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY29sdW1uLWdhcDogMzBweDtcbiAgZmxleC1mbG93OiBjb2x1bW47XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtdG9wIHVsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IC01cHggIzAwMDtcbiAgfVxufVxuLmhlYWRlci1uYXYtdG9wIHVsIGxpIHtcbiAgcGFkZGluZzogMCAwIDAgMS4yZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODg4ODg4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtdG9wIHVsIGxpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBlZGU4O1xuICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMjIyMjIyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cbi5oZWFkZXItbmF2LXRvcCB1bCBsaSAudXNlci1sb2dpbi1sb2dvdXQtaWNvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG4uaGVhZGVyLW5hdi10b3AgdWwgbGkgYSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LXRvcCB1bCBsaSBhIHtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuLmhlYWRlci1uYXYtdG9wIHVsIGxpIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLypcbi5oZWFkZXItbmF2LXRvcCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHotaW5kZXg6IDY7XG4gIC8vZGlzcGxheTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtR3JheTtcbiAgY2xlYXI6IGJvdGg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIHdpZHRoOiA1MCU7IC8vIGFyYml0cmFyeSAtIGp1c3QgbmVlZHMgdG8gYmUgd2lkZSBlbm91Z2ggdG8gYWNjb21vZGF0ZSBuYXYgaXRlbXNcbiAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgLy9wYWRkaW5nLXJpZ2h0OiAwO1xuICAgIC8vaGVpZ2h0OiAzNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDM2cHg7XG4gICAgei1pbmRleDogNjtcbiAgICAvL3JpZ2h0OiAwO1xuICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRHcmF5O1xuICAgIC8vY2xlYXI6IGJvdGg7XG4gIH1cblxuICB1bCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLy9oZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgY29sdW1uLWdhcDogMzBweDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZTtcbiAgICAgIC8vaGVpZ2h0OiAzNXB4O1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgIC8vbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIC8vZmxvYXQ6IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICAvL3BhZGRpbmc6IC41MjVlbSAzZW0gMCAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC8vdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiovXG4uaGVhZGVyLWJ1dHRvbnMge1xuICB3aWR0aDogMTA1cHg7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICMyMjIyMjI7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMjIyMjIyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB6LWluZGV4OiA2O1xuICBncmlkLWNvbHVtbjogMi9zcGFuIDE7XG4gIGdyaWQtcm93OiAxL3NwYW4gMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgIHdpZHRoOiA5MHB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDA7XG4gICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgZ3JpZC1yb3c6IDI7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgfVxufVxuXG4uZ2xhc3Mge1xuICB3aWR0aDogNDVweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdG9wOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZ2xhc3Mge1xuICAgIGJvcmRlcjogdW5zZXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcbiAgfVxufVxuLmdsYXNzIGkge1xuICBjb2xvcjogIzIyMjIyMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZ2xhc3MgaSB7XG4gICAgY29sb3I6ICNmMGVkZTg7XG4gIH1cbn1cblxuLmJ1cmdlciB7XG4gIHdpZHRoOiA0NXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uYnVyZ2VyIGkge1xuICBjb2xvcjogIzIyMjIyMjtcbn1cbi5idXJnZXIgaTpob3ZlciB7XG4gIGNvbG9yOiAjMjIyO1xufVxuXG4uYWNjb3VudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFjY291bnQge1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmFjY291bnQgaSB7XG4gIGNvbG9yOiAjMjIyMjIyO1xufVxuLmFjY291bnQgaTpob3ZlciB7XG4gIGNvbG9yOiAjMjIyO1xufVxuXG4uc2l0ZS1zZWFyY2gtd3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGVkZTg7XG4gIHotaW5kZXg6IDY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTVweCAjMDAwO1xuICBib3JkZXItdG9wOiB1bnNldDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyMjIyMjI7XG4gIH1cbn1cbi5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuXG4uc2l0ZS1zZWFyY2gge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDM1cHggMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNTBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLXNlYXJjaCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNTBweDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gIH1cbn1cblxuLnNlYXJjaC1xdWVyeSB7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMDtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMTtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zZWFyY2gtcXVlcnkge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5zZWFyY2gtcXVlcnkgbGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IGJsYWNrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNlYXJjaC1xdWVyeSBpbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMjIyMjIyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMyMjIyMjI7XG59XG5cbi5zZWFyY2gtY29udGV4dCB7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMjtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zZWFyY2gtY29udGV4dCB7XG4gICAgZ3JpZC1jb2x1bW46IDIvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gIH1cbn1cbi5zZWFyY2gtY29udGV4dCBsYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzBweDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNlYXJjaC1jb250ZXh0IHNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmVmZWZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMyMjI7XG59XG4uc2VhcmNoLWNvbnRleHQgc2VsZWN0IG9wdGlvbiB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLnNlYXJjaC1zdWJtaXQge1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBncmlkLWNvbHVtbjogMi9zcGFuIDE7XG4gIGdyaWQtcm93OiAxO1xuICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zZWFyY2gtc3VibWl0IHtcbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgfVxufVxuLnNlYXJjaC1zdWJtaXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4ODg4O1xufVxuXG4uaGVhZGVyLWJhbm5lci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZ3JpZC1yb3ctc3RhcnQ6IDI7XG4gIGdyaWQtcm93LWVuZDogMztcbiAgYXNwZWN0LXJhdGlvOiAxMC8zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYmFubmVyLXdyYXAge1xuICAgIGdyaWQtcm93LXN0YXJ0OiAxO1xuICAgIGdyaWQtcm93LWVuZDogMjtcbiAgfVxufVxuXG4uaGVhZGVyLWJhbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA4MCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogRU5EIEFyY2hpdmUgbWFzdGhlYWQgc3R5bGVzICovXG4vKipcbiAgKiBDT05URU5UIFNUWUxFU1xuICAqL1xuLm1haW4td3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGdyaWQtcm93LXN0YXJ0OiAzO1xuICBncmlkLXJvdy1lbmQ6IDQ7XG59XG4ubWFpbiB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhZ2UtY29udGVudC13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnBhZ2UtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgfVxufVxuXG4ucGFnZS1jb250ZW50LnNpZGUge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAwcHg7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWNvbnRlbnQuc2lkZSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMjg2cHg7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDBweDtcbiAgfVxufVxuXG4ucGFnZS1tYWluIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtbWFpbiB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICB9XG59XG4ucGFnZS1tYWluIGgxIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHBhZGRpbmc6IDI1cHggMCAyNXB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItdG9wOiA0cHggZG90dGVkICMyMjIyMjI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnBhZ2UtbWFpbiBoMTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogNDQlO1xuICBoZWlnaHQ6IDNweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAyOCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG59XG4ucGFnZS1tYWluIGgyIHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbn1cbi5wYWdlLW1haW4gaDI6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnBhZ2UtbWFpbiBoMyB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4ucGFnZS1tYWluIGg0IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5wYWdlLW1haW4gaDUge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuLnBhZ2UtbWFpbiBoNiB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4ucGFnZS1tYWluIHAge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuLnBhZ2UtbWFpbiB1bCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbn1cbi5wYWdlLW1haW4gdWwgbGkge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4uc2lkZSAucGFnZS1tYWluIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2lkZSAucGFnZS1tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgfVxufVxuXG4ucGFnZS1oZWFkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgODAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogc2NyZWVuO1xufVxuLnBhZ2UtaGVhZGVyLW92ZXJsYXkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHJnYmEoMCwgMCwgMCwgMC44KSwgcmdiYSgwLCAwLCAwLCAwLjgpKTtcbiAgb3BhY2l0eTogMC43O1xufVxuXG4ucGFnZS1oZWFkZXItYm94LXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmctdG9wOiAxNzVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gtd3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgICBwYWRkaW5nLXRvcDogMTk1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gtd3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gtd3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gtd3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1oZWFkZXItYm94LXdyYXAge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5cbi5wYWdlLWhlYWRlci1ib3gge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgLyoubG9nbyB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0MHB4O1xuICAgIHJpZ2h0OiA0MHB4O1xuICB9Ki9cbiAgLyphIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJG9mZldoaXRlO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH0qL1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveCB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveCB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuLnBhZ2UtaGVhZGVyLWJveCBoMSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXItYm94IGgxIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgfVxufVxuLnBhZ2UtaGVhZGVyLWJveCBwIHtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXItYm94IHAge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG59XG5cbi5wYWdlLXNpZGViYXIge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDE7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgZ3JpZC1jb2x1bW46IDIvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICB9XG59XG5cbi5wYWdlLXNpZGViYXItaGVhZGluZyB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIG1hcmdpbjogMTBweCAwIDAgMDtcbiAgcGFkZGluZzogMTVweCAwIDE1cHggMTVweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCAjZTBlMGUwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4ODg4O1xuICBmb250LXdlaWdodDogOTAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5wYWdlLXNpZGViYXItaGVhZGluZzpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbjogMCAwIDAgMDtcbn1cblxuLnNpZGUtbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zaWRlLW5hdiB1bC5tZW51IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ODg4ODg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMGUwZTA7XG59XG4uc2lkZS1uYXYgdWwubWVudSBsaSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA0NXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmVmZWZlO1xuICAvKi5jdXJyZW50X3BhZ2VfaXRlbSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgY29sb3I6ICRvZmZXaGl0ZTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcbiAgICB9XG4gIH0qL1xufVxuLnNpZGUtbmF2IHVsLm1lbnUgbGkgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICBjb2xvcjogIzIyMjIyMjtcbn1cbi5zaWRlLW5hdiB1bC5tZW51IGxpIGE6aG92ZXIge1xuICBjb2xvcjogIzIyMjtcbn1cbi5zaWRlLW5hdiB1bC5tZW51IGxpIHVsLnN1Yi1tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbn1cbi5zaWRlLW5hdiB1bC5tZW51IGxpIHVsLnN1Yi1tZW51IGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZWZlZmU7XG59XG4uc2lkZS1uYXYgdWwubWVudSBsaSB1bC5zdWItbWVudSBsaSBhIHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBjb2xvcjogIzIyMjIyMjtcbn1cbi5zaWRlLW5hdiB1bC5tZW51IGxpIHVsLnN1Yi1tZW51IGxpIHVsLnN1Yi1tZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbi5zaWRlLW5hdiB1bC5tZW51IGxpIHVsLnN1Yi1tZW51IGxpIHVsLnN1Yi1tZW51IGxpIGEge1xuICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi8qXG4gICAgICAgICAgLmxpc3RpbmdzIHtcblxuICAgICAgICAgIH1cbiAgICAgICAgICAgIC5saXN0aW5nIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjgwcHggMWZyO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGxpZ2h0R3JheTtcblxuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAubGlzdGluZy1sZWZ0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrR3JheTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmxpc3RpbmctcmlnaHQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcbiAgICAgICAgICAgICAgfVxuKi9cbi5zdWJ0aXRsZSwgcC5zdWJ0aXRsZSwgaDMuc3VidGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnN1YnRpdGxlOjphZnRlciwgcC5zdWJ0aXRsZTo6YWZ0ZXIsIGgzLnN1YnRpdGxlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiA4JTtcbiAgaGVpZ2h0OiAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogNDYlO1xuICBib3JkZXItdG9wOiAycHggZG90dGVkICMyMjIyMjI7XG59XG5cbi8qXG4uaWZyYW1lLWNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmlmcmFtZS1jb250YWluZXIgaWZyYW1lIHtcbiAgYm9yZGVyOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbiovXG4uZW1iZWQtY29udGFpbmVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG59XG5cbi5lbWJlZC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZW1iZWQtY29udGFpbmVyIGlmcmFtZSxcbi5lbWJlZC1jb250YWluZXIgb2JqZWN0LFxuLmVtYmVkLWNvbnRhaW5lciBlbWJlZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucG9zdC1jYXQge1xuICBtYXgtd2lkdGg6IDMyMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xuICBjb2xvcjogI2YwZWRlODtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICAqIEZPT1RFUiBTVFlMRVNcbiAgKi9cbi5mb290ZXItd3JhcCB7XG4gIGdyaWQtcm93LXN0YXJ0OiA0O1xuICBncmlkLXJvdy1lbmQ6IDU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG59XG5cbi5mb290ZXIge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICB9XG59XG5cbi5mb290ZXItbmF2IHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4uZm9vdGVyLW5hdiB1bCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmZvb3Rlci1uYXYgdWwgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHdpZHRoOiAxMDAlO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gIH1cbiAgLmZvb3Rlci1uYXYgdWwgbGk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0ycHg7XG4gIH1cbiAgLmZvb3Rlci1uYXYgdWwgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLmZvb3Rlci1uYXYgdWwgbGkgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkgYSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMCA1cHg7XG4gIH1cbn1cblxuLmNvcHlyaWdodCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlLW1haW4gaDIge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ubGlicmFyeS1uYXYge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHotaW5kZXg6IDY7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5saWJyYXJ5LW5hdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGhlaWdodDogNDVweDtcbiAgfVxufVxuLmxpYnJhcnktbmF2IHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzg4ODg4ODtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxpYnJhcnktbmF2IHVsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cbi5saWJyYXJ5LW5hdiB1bCBsaSB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDVweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODg4ODg4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDM7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG4gIGZsZXgtZ3JvdzogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyMjIyMjI7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMjIyMjIyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5saWJyYXJ5LW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlicmFyeS1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxpYnJhcnktbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubGlicmFyeS1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmxpYnJhcnktbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgdHJhbnNpdGlvbjogZGlzcGxheSAzMDBtcztcbiAgfVxuICAubGlicmFyeS1uYXYgdWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5saWJyYXJ5LW5hdiB1bCBsaSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDVweDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMyMjIyMjI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5saWJyYXJ5LW5hdiB1bCBsaSBhIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDQxcHg7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxpYnJhcnktbmF2IHVsIGxpIGEge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG4ubGlicmFyeS1uYXYgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xuICBib3JkZXItdG9wOiAycHggZG90dGVkICNmZmZmZmY7XG4gIGJvcmRlci1ib3R0b206IDJweCBkb3R0ZWQgI2ZmZmZmZjtcbn1cbi5saWJyYXJ5LW5hdiB1bCBsaS5jdXJyZW50X3BhZ2VfaXRlbSBhIHtcbiAgZm9udC13ZWlnaHQ6IGJsYWNrO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5saWJyYXJ5LW5hdiB1bCBsaSBsaS5zbGlkZS1saW5lLWNoaWxkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDAyO1xuICBib3R0b206IC0ycHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDQ5cHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLXRvcDogMnB4IGRvdHRlZCAjZmZmZmZmO1xuICBib3JkZXItYm90dG9tOiAycHggZG90dGVkICNmZmZmZmY7XG4gIHRyYW5zaXRpb246IHdpZHRoIDMwMG1zLCBsZWZ0IDMwMG1zO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMzQlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMzMlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgfSovXG59XG5cbi5ib29rcyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJvb2stdHlwZSB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IC0yMHB4O1xuICBncmlkLWNvbHVtbjogMS8tMTtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyMjIyMjI7XG59XG4uYm9vay10eXBlIGgyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nOiAyMHB4IDAgMjVweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzIyMjIyMjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYm9vay10eXBlIGgyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAzNCU7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDMzJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcbn1cblxuLmJvb2stdHlwZS1ib3gge1xuICBwYWRkaW5nOiAwIDMwcHggMCAzMHB4O1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjMjIyMjIyO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICMyMjIyMjI7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWF1dG8tcm93czogYXV0byBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5ib29rLXR5cGUtYm94IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQ4JSA0OCU7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiA0JTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5ib29rLXR5cGUtYm94IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIyJSAyMiUgMjIlIDIyJTtcbiAgICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgICBncmlkLWNvbHVtbi1nYXA6IDQlO1xuICB9XG59XG4uYm9vay10eXBlLWJveCBoMyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG4uYm9vayB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xufVxuLmJvb2sgaW1nIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMjIyMjIyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG4uYm9vayAuYm9vay10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuLmJvb2sgLmJvb2stdGl0bGUgLmJvb2stc3VidGl0bGUge1xuICBmb250LXNpemU6IDAuOGVtO1xufVxuLmJvb2sgLmJvb2stcHVibGlzaC1kYXRlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmJvb2sgLmJvb2stYXV0aG9yIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cbi5ib29rIHAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYm9vayBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cbi5ib29rIHA6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMzQlO1xuICBoZWlnaHQ6IDJweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAzMyU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG59XG5cbi5ib29rLWF1dGhvciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hcnRpY2xlcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDMwcHggMCAzMHB4O1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjMjIyMjIyO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICMyMjIyMjI7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWF1dG8tcm93czogYXV0byBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5hcnRpY2xlcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0OCUgNDglO1xuICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYXJ0aWNsZXMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjIlIDIyJSAyMiUgMjIlO1xuICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gIH1cbn1cbi5hcnRpY2xlcyAuYm9vay10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuLmFydGljbGUge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbn1cbi5hcnRpY2xlIGltZyB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAycHggc29saWQgIzIyMjIyMjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuLmFydGljbGUgLmFydGljbGUtYXV0aG9yIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cbi5hcnRpY2xlIHAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYXJ0aWNsZSBwOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cbi5hcnRpY2xlIHA6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMzQlO1xuICBoZWlnaHQ6IDJweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAzMyU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG59XG5cbi5hcnRpY2xlLWF1dGhvciB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hcnRpY2xlLWZpbGUgc3BhbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZG9jdW1lbnRhcmllcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDMwcHggMCAzMHB4O1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjMjIyMjIyO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICMyMjIyMjI7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLWF1dG8tcm93czogYXV0byBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5kb2N1bWVudGFyaWVzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQ4JSA0OCU7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiA0JTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5kb2N1bWVudGFyaWVzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIyJSAyMiUgMjIlIDIyJTtcbiAgICBncmlkLWF1dG8tcm93czogYXV0bztcbiAgICBncmlkLWNvbHVtbi1nYXA6IDQlO1xuICB9XG59XG4uZG9jdW1lbnRhcnkge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbn1cbi5kb2N1bWVudGFyeSBpbWcge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMyMjIyMjI7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cbi5kb2N1bWVudGFyeSBwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRvY3VtZW50YXJ5IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuLmRvY3VtZW50YXJ5IHA6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMzQlO1xuICBoZWlnaHQ6IDJweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAzMyU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG59IiwiLyoqXG4gICogQk9PS1MgUEFHRSBTVFlMRVNIRUVUXG4gICpcbiAgKiBJbXBvcnQgY29tbW9uIHN0eWxlcyBhbmQgcGFnZS1zcGVjaWZpYyBzdHlsZXMgZm9yIFwiQm9va3NcIi5cbiAgKi9cblxuQGltcG9ydCAncGFydGlhbHMvX2NvbW1vbi1hcmNoaXZlJzsgICAgIC8vIGNvbW1vbiBzdHlsZXNcblxuLy9AaW1wb3J0ICdwYXJ0aWFscy9wYWdlcy9fbGlicmFyeSc7IC8vIGJvb2tzIHBhZ2Ugc3R5bGVzXG5cbi5wYWdlLW1haW4ge1xuXG4gIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5saWJyYXJ5LW5hdiB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyAvLyBuZWdhdGUgbGVmdCBwYWRkaW5nIGZyb20gJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgaGVpZ2h0OiA0NXB4O1xuICB9XG5cbiAgdWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXk7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTAwMztcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJsYWNrO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRibGFjaztcblxuICAgICAgJjpob3ZlciA+IHVsIHtcblxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgLy8gbmVnYXRlICdjb250YWluZXInIG1peGluIF5eXlxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG5lZ2F0ZSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgLy9ib3JkZXItdG9wOiAzcHggc29saWQgJGdyYXk7XG4gICAgICAgIC8vYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgIHRyYW5zaXRpb246IGRpc3BsYXkgMzAwbXM7XG5cbiAgICAgICAgJjpob3ZlciA+IHVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAvL3Zpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgLy9vcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgLy90cmFuc2l0aW9uOiBmb250LXdlaWdodCAzMDBtcztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAvL2NvbG9yOiAkZGFya0JsdWU7XG4gICAgICAgICAgLy9mb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGhlaWdodDogNDFweDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmN1cnJlbnRfcGFnZV9pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICBib3JkZXItdG9wOiAycHggZG90dGVkICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IGRvdHRlZCAkd2hpdGU7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJsYWNrO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbGkuc2xpZGUtbGluZS1jaGlsZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTAwMjsgLy8gcG9zaXRpb24gYmVsb3cgbGlzdCBpdGVtIHNvIHRoYXQgbW91c2VvdmVyIGRvZXNuJ3QgZ2V0IGNvbmZ1c2VkXG4gICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogNDlweDsgLy82cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgIGJvcmRlci10b3A6IDJweCBkb3R0ZWQgJHdoaXRlO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggZG90dGVkICR3aGl0ZTtcbiAgICAgICAgLy9vdXRsaW5lOiAycHggZGFzaGVkICRibGFjaztcbiAgICAgICAgLy9ib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDMwMG1zLCBsZWZ0IDMwMG1zO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50IHtcbiAgLy9wYWRkaW5nLXRvcDogMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8qJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAzNCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAzMyU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICB9Ki9cbn1cblxuLmJvb2tzIHtcbiAgd2lkdGg6IDEwMCU7XG4vLyAgZGlzcGxheTogZ3JpZDtcbi8vICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbi8vICBncmlkLWF1dG8tcm93czogYXV0byBhdXRvO1xuICAvL2dyaWQtY29sdW1uLWdhcDogMDtcbiAgLy9ncmlkLXJvdy1nYXA6IDYwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4vLyAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIyJSAyMiUgMjIlIDIyJTtcbi8vICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuLy8gICAgZ3JpZC1jb2x1bW4tZ2FwOiA0JTtcbiAgICAvL2dyaWQtcm93LWdhcDogMDtcbiAgfVxufVxuXG4gIC5ib29rLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTIwcHg7XG4gICAgLy9wYWRkaW5nLXRvcDogMTVweDtcbiAgICAvL3BhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRibGFjaztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgLy9ncmlkLWNvbHVtbjogMSAvIHNwYW4gNDtcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC8vbWFyZ2luLXRvcDogMDtcbiAgICAgIC8vYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMCAyNXB4IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC8vYm9yZGVyLXRvcDogM3B4IHNvbGlkICRibGFjaztcbiAgICAgIC8vZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6IDM0JTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMzMlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgLmJvb2stdHlwZS1ib3gge1xuICAgICAgcGFkZGluZzogMCAzMHB4IDAgMzBweDtcbiAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRibGFjaztcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGJsYWNrO1xuICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvIGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDglIDQ4JTtcbiAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIyJSAyMiUgMjIlIDIyJTtcbiAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJvb2sge1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsYWNrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICB9XG5cbiAgICAgIC5ib29rLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG5cbiAgICAgICAgLmJvb2stc3VidGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvb2stcHVibGlzaC1kYXRlIHtcbiAgICAgICAgLy9tYXJnaW4tdG9wOiAtNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5ib29rLWF1dGhvciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHdpZHRoOiAzNCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMzMlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAgIC5ib29rLWF1dGhvciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cblxuLmFydGljbGVzIHtcbiAgd2lkdGg6IDEwMCU7XG4vLyAgZGlzcGxheTogZ3JpZDtcbi8vICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbi8vICBncmlkLWF1dG8tcm93czogYXV0byBhdXRvO1xuICAvL2dyaWQtY29sdW1uLWdhcDogMDtcbiAgLy9ncmlkLXJvdy1nYXA6IDYwcHg7XG5cbiAgcGFkZGluZzogMCAzMHB4IDAgMzBweDtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGJsYWNrO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRibGFjaztcbiAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtYXV0by1yb3dzOiBhdXRvIGF1dG87XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQ4JSA0OCU7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiA0JTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjIlIDIyJSAyMiUgMjIlO1xuICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gIH1cblxuICAuYm9vay10aXRsZSB7IC8vaDNcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4vLyAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIyJSAyMiUgMjIlIDIyJTtcbi8vICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuLy8gICAgZ3JpZC1jb2x1bW4tZ2FwOiA0JTtcbiAgICAvL2dyaWQtcm93LWdhcDogMDtcbiAgfVxufVxuICAuYXJ0aWNsZSB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkYmxhY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgfVxuXG4gICAgLmFydGljbGUtYXV0aG9yIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHdpZHRoOiAzNCU7XG4gICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAzMyU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgLmFydGljbGUtYXV0aG9yIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLWZpbGUge1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgfVxuXG5cblxuXG4gICAgLmRvY3VtZW50YXJpZXMge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gIGRpc3BsYXk6IGdyaWQ7XG4gICAgLy8gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIC8vICBncmlkLWF1dG8tcm93czogYXV0byBhdXRvO1xuICAgICAgLy9ncmlkLWNvbHVtbi1nYXA6IDA7XG4gICAgICAvL2dyaWQtcm93LWdhcDogNjBweDtcblxuICAgICAgcGFkZGluZzogMCAzMHB4IDAgMzBweDtcbiAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRibGFjaztcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGJsYWNrO1xuICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvIGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDglIDQ4JTtcbiAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIyJSAyMiUgMjIlIDIyJTtcbiAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIC8vICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjIlIDIyJSAyMiUgMjIlO1xuICAgIC8vICAgIGdyaWQtYXV0by1yb3dzOiBhdXRvO1xuICAgIC8vICAgIGdyaWQtY29sdW1uLWdhcDogNCU7XG4gICAgICAgIC8vZ3JpZC1yb3ctZ2FwOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAgIC5kb2N1bWVudGFyeSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICB3aWR0aDogMzQlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICBsZWZ0OiAzMyU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiIsIi8qKlxuICAqIENPTU1PTiBBUkNISVZFIFNUWUxFU1xuICAqXG4gICogRGVmaW5lcyB0aGUgc3R5bGVzIHRvIGltcG9ydCB0aGF0IGFyZSByZXF1aXJlZCBieSB2aXJ0dWFsbHkgYWxsIHBhZ2VzLlxuICAqL1xuXG5cbi8vIGltcG9ydCBsaWJyYXJpZXM6XG5AaW1wb3J0ICcuLi9saWJyYXJpZXMvX2luY2x1ZGUtbWVkaWEuc2Nzcyc7IC8vIFwiSW5jbHVkZS1NZWRpYVwiIG1lZGlhIHF1ZXJ5IGxpYnJhcnkgKHByb3ZpZGVzIGJyZWFrcG9pbnQgZnVuY3Rpb25hbGl0eSBmb3IgcmVzcG9uc2l2ZSBkZXNpZ24pXG5AaW1wb3J0ICcuLi9saWJyYXJpZXMvX25vcm1hbGl6ZS5zY3NzJzsgICAgIC8vIFwiTm9ybWFsaXplXCIgY3NzIHJlc2V0IGxpYnJhcnlcblxuLy8gZ2xvYmFsIHN0eWxlcyBhbmQgZGVwZW5kZW5jaWVzOlxuQGltcG9ydCAnY29tbW9uL19icmVha3BvaW50cy5tb2R1bGVzJzsgICAgICAvLyBicmVha3BvaW50IGRlZmluaXRpb25zIGZvciBtZWRpYSBxdWVyeSB1c2VcbkBpbXBvcnQgJ2NvbW1vbi1hcmNoaXZlL192YXJpYWJsZXMnOyAgICAgICAgICAgICAgICAvLyBnZW5lcmFsIHZhcmlhYmxlIGRlZmluaXRpb25zIChjb2xvcnMsIGRpbWVuc2lvbnMsIGV0Yy4pXG5AaW1wb3J0ICdjb21tb24vX2ZvbnRzJzsgICAgICAgICAgICAgICAgICAgIC8vIEBmb250LWZhY2UgZGVmaW5pdGlvbnNcbkBpbXBvcnQgJ2NvbW1vbi9fbWl4aW5zJzsgICAgICAgICAgICAgICAgICAgLy8gbWl4aW4gYW5kIGFzc29jaWF0ZWQgY2xhc3MgZGVmaW5pdGlvbnNcbkBpbXBvcnQgJ2NvbW1vbi1hcmNoaXZlL19lbGVtZW50cyc7ICAgICAgICAgLy8gZ2xvYmFsIGVsZW1lbnQgc2VsZWN0b3Igc3R5bGVzXG5AaW1wb3J0ICdjb21tb24tYXJjaGl2ZS9faGVhZGVyJzsgICAgICAgICAgLy8gaGVhZGVyIHN0eWxlc1xuQGltcG9ydCAnY29tbW9uLWFyY2hpdmUvX2NvbnRlbnQnOyAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQgc3R5bGVzXG5AaW1wb3J0ICdjb21tb24vX2Zvb3Rlcic7ICAgICAgICAgICAgICAgICAgIC8vIGZvb3RlciBzdHlsZXNcbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKipcbiAgKiBCUkVBS1BPSU5UU1xuICAqXG4gICogRGVmaW5lIGJyZWFrcG9pbnRzIGZvciBtZWRpYSBxdWVyeSB1c2UgYW5kIGV4cG9ydCB0aGVtIGZvciB1c2Ugd2l0aCBKUy5cbiAgKi9cblxuXG4vLyBkZWZpbmUgYnJlYWtwb2ludHMgaGVyZSAoaW4gcGl4ZWxzKTpcbiRicmVha3BvaW50LXBob25lLXNtYWxsOiAgICAzMjA7XG4kYnJlYWtwb2ludC1waG9uZS1sYXJnZTogICAgNDgwO1xuJGJyZWFrcG9pbnQtdGFibGV0OiAgICAgICAgIDc2ODtcbiRicmVha3BvaW50LWxhcHRvcDogICAgICAgICA5OTI7XG4kYnJlYWtwb2ludC1kZXNrdG9wOiAgICAgICAxMjAwO1xuJGJyZWFrcG9pbnQtZGVza3RvcC1sYXJnZTogMTQwMDtcbiRicmVha3BvaW50LWhkOiAgICAgICAgICAgIDE5MjA7XG5cbi8vIGZvcm1hdCBicmVha3BvaW50IGRlZmluaXRpb25zIGZvciB1c2Ugd2l0aCBpbmNsdWRlLW1lZGlhLnNjc3MgbGlicmFyeTpcbi8qXG5leGFtcGxlIHVzYWdlOlxuQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLXNtYWxsXCIpIHsuLi59XG4qL1xuJGJyZWFrcG9pbnRzOiAoXG4gICdwaG9uZS1zbWFsbCc6ICAgJGJyZWFrcG9pbnQtcGhvbmUtc21hbGwgKiAxcHgsXG4gICdwaG9uZS1sYXJnZSc6ICAgJGJyZWFrcG9pbnQtcGhvbmUtbGFyZ2UgKiAxcHgsXG4gICd0YWJsZXQnOiAgICAgICAgJGJyZWFrcG9pbnQtdGFibGV0ICogMXB4LFxuICAnbGFwdG9wJzogICAgICAgICRicmVha3BvaW50LWxhcHRvcCAqIDFweCxcbiAgJ2Rlc2t0b3AnOiAgICAgICAkYnJlYWtwb2ludC1kZXNrdG9wICogMXB4LFxuICAnZGVza3RvcC1sYXJnZSc6ICRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2UgKiAxcHgsXG4gICdoZCc6ICAgICAgICAgICAgJGJyZWFrcG9pbnQtaGQgKiAxcHhcbik7XG5cbi8vIGV4cG9ydCBicmVha3BvaW50IGRlZmluaXRpb25zIGZvciBKUyB1c2U6XG46ZXhwb3J0IHtcbiAgYnJlYWtwb2ludFBob25lU21hbGw6ICRicmVha3BvaW50LXBob25lLXNtYWxsO1xuICBicmVha3BvaW50UGhvbmVMYXJnZTogJGJyZWFrcG9pbnQtcGhvbmUtbGFyZ2U7XG4gIGJyZWFrcG9pbnRUYWJsZXQ6ICRicmVha3BvaW50LXRhYmxldDtcbiAgYnJlYWtwb2ludExhcHRvcDogJGJyZWFrcG9pbnQtbGFwdG9wO1xuICBicmVha3BvaW50RGVza3RvcDogJGJyZWFrcG9pbnQtZGVza3RvcDtcbiAgYnJlYWtwb2ludERlc2t0b3BMYXJnZTogJGJyZWFrcG9pbnQtZGVza3RvcC1sYXJnZTtcbiAgYnJlYWtwb2ludEhkOiAkYnJlYWtwb2ludC1oZDtcbn1cbiIsIi8qKlxuICAqIFZBUklBQkxFU1xuICAqL1xuXG5cbi8qKlxuICAqIERpbWVuc2lvbnM6XG4gICovXG5cbiRzaXRlV2lkdGg6IDE0MDBweDsgLy8gbWF4IHdpZHRoIG9mIHNpdGUncyBjb250ZW50IGNvbnRhaW5lcnNcblxuLy8gaGVhZGVyIGhlaWdodHM6XG4kdG9wQmFySGVpZ2h0OiA0NXB4O1xuJGhlYWRlckhlaWdodE1vYmlsZTogMTM1cHg7XG4kaGVhZGVySGVpZ2h0RGVza3RvcDogMTE1cHg7XG5cbi8vIHN0YW5kYXJkaXplZCBzaWRlIHBhZGRpbmc6XG4kY29udGFpbmVyUGFkZGluZ01vYmlsZTogMjBweDtcbiRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTogMjVweDtcbiRjb250YWluZXJQYWRkaW5nVGFibGV0OiAzMHB4O1xuJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A6IDYwcHg7XG4kY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A6IDgwcHg7XG5cbi8vIHN0YW5kYXJkaXplZCB0b3AgYW5kIGJvdHRvbSBwYWRkaW5nOlxuJHNwYWNlclBhZGRpbmdNb2JpbGU6IDIwcHg7XG4kc3BhY2VyUGFkZGluZ1Bob25lTGFyZ2U6IDI1cHg7XG4kc3BhY2VyUGFkZGluZ1RhYmxldDogNDBweDtcbiRzcGFjZXJQYWRkaW5nTGFwdG9wOiA2MHB4O1xuJHNwYWNlclBhZGRpbmdEZXNrdG9wOiA4MHB4O1xuXG5cbi8qKlxuICAqIENvbG9yczpcbiAgKi9cblxuJHJlZDogICAgI2ZmMDAwMDtcbiRvcmFuZ2U6ICNmZjg4MDA7XG4keWVsbG93OiAjZmZmZjAwO1xuJGdyZWVuOiAgIzAwZmYwMDtcbiRibHVlOiAgICMwMDAwZmY7XG4kcHVycGxlOiAjZmYwMGZmO1xuJGJyb3duOiAgIzg4NTUwMDtcbiRibGFjazogICMyMjIyMjI7XG4kZ3JheTogICAjODg4ODg4O1xuJHdoaXRlOiAgI2ZmZmZmZjtcbiRjcmVhbTogICNmMGVkZTg7XG4kbGlnaHRDcmVhbTogI2Y4ZjhmODtcblxuJG9mZldoaXRlOiAjZmVmZWZlOyAvLyNmYWZhZmE7XG4kbGlnaHRHcmF5OiAjZjJmMmYyO1xuJG1lZGl1bUdyYXk6ICNlMGUwZTA7XG4kbWVkaXVtRGFya0dyYXk6ICM5OTk5OTk7XG4kZGFya0dyYXk6ICAjMjIyO1xuXG4kZGVtQmx1ZTogcmdiKDAsIDE3NCwgMjQzKTtcbiRyZXBSZWQ6IHJnYigyMzIsIDI3LCAzNSk7XG5cbi8vJGRhcmtCbHVlOiByZ2IoNTksIDk4LCAxMjcpO1xuJHRyYW5zR3JheTogcmdiYSg1MSwgNTEsIDUxLCAwLjgpO1xuXG4kYm9keUNvbG9yOiAkb2ZmV2hpdGU7ICAgICAvLyBib2R5IGJhY2tncm91bmQgY29sb3Jcbi8vJG1haW5Db2xvcjogI2ZmZjsgICAgIC8vIHBhZ2UgY29udGVudCBiYWNrZ3JvdW5kIGNvbG9yXG4kZm9udENvbG9yOiAkZGFya0dyYXk7ICAgICAvLyBkZWZhdWx0IGZvbnQgY29sb3JcbiRsaW5rQ29sb3I6ICRicm93bjsgIC8vIGRlZmF1bHQgbGluayBjb2xvclxuXG4kYnJhbmRDb2xvcjogJGRhcmtHcmF5O1xuXG4kYXJjaGl2ZUJnQ29sb3I6ICRibGFjaztcbiIsIi8qKlxuICAqIEZPTlRTXG4gICpcbiAgKiBEZWZpbmUgQGZvbnQtZmFjZSBzdHlsZXMuXG4gICovXG5cblxuLy8gQW1lcmljYW5UeXBld3JpdGVyLVJlZ3VsYXIudHRmOlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBBbWVyaWNhbiBUeXBld3JpdGVyO1xuICBzcmM6IHVybCguLi9mb250cy9BbWVyaWNhblR5cGV3cml0ZXItUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qXG4vLyBSb2JvdG8tUmVndWxhci50dGY6XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJvYm90bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvUm9ib3RvLVJlZ3VsYXIudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBSb2JvdG8tQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUm9ib3RvO1xuICBzcmM6IHVybCguLi9mb250cy9Sb2JvdG8tQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4qL1xuXG4vLyBSYWpkaGFuaS1SZWd1bGFyLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSYWpkaGFuaTtcbiAgc3JjOiB1cmwoLi4vZm9udHMvUmFqZGhhbmktUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFJhamRoYW5pLU1lZGl1bS50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmFqZGhhbmk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JhamRoYW5pLU1lZGl1bS50dGYpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFJhamRoYW5pLVNlbWlCb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSYWpkaGFuaTtcbiAgc3JjOiB1cmwoLi4vZm9udHMvUmFqZGhhbmktU2VtaUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBSYWpkaGFuaS1Cb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSYWpkaGFuaTtcbiAgc3JjOiB1cmwoLi4vZm9udHMvUmFqZGhhbmktQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFJhamRoYW5pLUV4dHJhQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmFqZGhhbmk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JhamRoYW5pLUV4dHJhQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFJhamRoYW5pLUJsYWNrLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSYWpkaGFuaTtcbiAgc3JjOiB1cmwoLi4vZm9udHMvUmFqZGhhbmktQmxhY2sudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbi8qXG4vLyBNb250c2VycmF0LVJlZ3VsYXIudHRmOlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuICBzcmM6IHVybCguLi9mb250cy9Nb250c2VycmF0LVJlZ3VsYXIudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBNb250c2VycmF0LUJvbGQudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4qL1xuXG4vKlxuLy8gTWF2ZW5Qcm8tUmVndWxhci50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWF2ZW4gUHJvO1xuICBzcmM6IHVybCguLi9mb250cy9NYXZlblByby1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTWF2ZW5Qcm8tTWVkaXVtLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLU1lZGl1bS50dGYpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIE1hdmVuUHJvLVNlbWlCb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLVNlbWlCb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTWF2ZW5Qcm8tQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWF2ZW4gUHJvO1xuICBzcmM6IHVybCguLi9mb250cy9NYXZlblByby1Cb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTWF2ZW5Qcm8tRXh0cmFCb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLUV4dHJhQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIE1hdmVuUHJvLUJsYWNrLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLUJsYWNrLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiovXG5cbi8qXG5DZW50dXJ5IE9sZCBTdHlsZSBTdGQgQm9sZFxuXG5mb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDcwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5DZW50dXJ5IE9sZCBTdHlsZSBTdGQgSXRhbGljXG5cbmZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNDAwO1xuXG5mb250LXN0eWxlOiBpdGFsaWM7XG5cbkNlbnR1cnkgT2xkIFN0eWxlIFN0ZCBSZWd1bGFyXG5cbmZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNDAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbiovXG5cblxuLypcbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGQgSXRhbGljXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IGl0YWxpYztcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0XG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0IEl0YWxpY1xuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogMzAwO1xuXG5mb250LXN0eWxlOiBpdGFsaWM7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkIENvbmRlbnNlZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXItY29uZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIExpZ2h0IENvbmRlbnNlZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXItY29uZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuKi9cbiIsIi8qKlxyXG4gICogTUlYSU5TXHJcbiAgKi9cclxuXHJcblxyXG5AbWl4aW4gd3JhcCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4ud3JhcCB7XHJcbiAgQGluY2x1ZGUgd3JhcDtcclxufVxyXG5cclxuQG1peGluIGlubmVyLXdyYXAge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogJHNpdGVXaWR0aDtcclxuICBtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLmlubmVyLXdyYXAge1xyXG4gIEBpbmNsdWRlIGlubmVyLXdyYXA7XHJcbn1cclxuXHJcbkBtaXhpbiBjb250YWluZXIge1xyXG4gIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG5cclxuLmNvbnRhaW5lciB7XHJcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xyXG59XHJcblxyXG5AbWl4aW4gc3BhY2VyLXRvcCB7XHJcbiAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcblxyXG4uc3BhY2VyLXRvcCB7XHJcbiAgQGluY2x1ZGUgc3BhY2VyLXRvcDtcclxufVxyXG5cclxuQG1peGluIHNwYWNlci1ib3R0b20ge1xyXG4gIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG5cclxuLnNwYWNlci1ib3R0b20ge1xyXG4gIEBpbmNsdWRlIHNwYWNlci1ib3R0b207XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24tY29udGFpbmVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5idXR0b24tY29udGFpbmVyIHtcclxuICBAaW5jbHVkZSBidXR0b24tY29udGFpbmVyO1xyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uIHtcclxuICBwYWRkaW5nOiAxMHB4IDE1cHg7O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvcjtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGNvbG9yOiAkb2ZmV2hpdGU7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi5idXR0b24ge1xyXG4gIEBpbmNsdWRlIGJ1dHRvbjtcclxufVxyXG5cclxuLypcclxuQG1peGluIGNhdGVnb3J5IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICAvLyAvdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBjb2xvcjogJGJsYWNrO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgZm9udC1zaXplOiAwLjhyZW07XHJcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2MjVlbTtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jYXRlZ29yeSB7XHJcbiAgQGluY2x1ZGUgY2F0ZWdvcnk7XHJcbn1cclxuKi9cclxuXHJcbkBtaXhpbiB0aXRsZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiAxLjRyZW07XHJcbiAgLy9mb250LXdlaWdodDogNjAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgY29sb3I6ICRicmFuZENvbG9yO1xyXG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNjI1ZW07XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgLy90ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICB9XHJcbn1cclxuXHJcbi50aXRsZSB7XHJcbiAgQGluY2x1ZGUgdGl0bGU7XHJcbn1cclxuXHJcbkBtaXhpbiB0YWcge1xyXG4gIGZvbnQtc2l6ZTogMC44cmVtO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgY29sb3I6ICRtZWRpdW1EYXJrR3JheTtcclxuICBsZXR0ZXItc3BhY2luZzogLTAuMDQyNWVtO1xyXG59XHJcblxyXG4udGFnIHtcclxuICBAaW5jbHVkZSB0YWc7XHJcbn1cclxuXHJcbkBtaXhpbiBzY3JlZW4tcmVhZGVyLXRleHQgeyAgLy8gdmlzaWJsZSB0byBzY3JlZW4gcmVhZGVycyBvbmx5XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxcHg7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IC0xcHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xyXG4gIGJvcmRlcjogMDtcclxufVxyXG5cclxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XHJcbiAgQGluY2x1ZGUgc2NyZWVuLXJlYWRlci10ZXh0O1xyXG59XHJcblxyXG5AbWl4aW4gbm8tc2Nyb2xsIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ubm8tc2Nyb2xsIHtcclxuICBAaW5jbHVkZSBuby1zY3JvbGw7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXHJcbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcclxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXHJcbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XHJcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcclxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcclxuLy9cclxuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3NcclxuLy8gICAgICAgICAgICAgICAgICAgICAgICB2MS40LjlcclxuLy9cclxuLy8gICAgICAgIGh0dHBzOi8vZWR1YXJkb2JvdWNhcy5naXRodWIuaW8vaW5jbHVkZS1tZWRpYVxyXG4vL1xyXG4vLyAgICAgICAgIEF1dGhvcnM6IEVkdWFyZG8gQm91Y2FzIChAZWR1YXJkb2JvdWNhcylcclxuLy8gICAgICAgICAgICAgICAgICBLaXR0eSBHaXJhdWRlbCAoQGtpdHR5Z2lyYXVkZWwpXHJcbi8vXHJcbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcclxuLy8vL1xyXG4vLy8gaW5jbHVkZS1tZWRpYSBsaWJyYXJ5IHB1YmxpYyBjb25maWd1cmF0aW9uXHJcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXHJcbi8vLyBAYWNjZXNzIHB1YmxpY1xyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBnbG9iYWwgYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcclxuLy8vICAkYnJlYWtwb2ludHM6ICgncGhvbmUnOiAzMjBweCk7XHJcbi8vL1xyXG4kYnJlYWtwb2ludHM6IChcclxuICAncGhvbmUnOiAzMjBweCxcclxuICAndGFibGV0JzogNzY4cHgsXHJcbiAgJ2Rlc2t0b3AnOiAxMDI0cHhcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLy9cclxuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIHN0YXRpYyBleHByZXNzaW9ucyBvciBtZWRpYSB0eXBlc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcclxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJzogJ3NjcmVlbicpO1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcclxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6IChcclxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xyXG4vLy8gICk7XHJcbi8vL1xyXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcclxuICAnc2NyZWVuJzogJ3NjcmVlbicsXHJcbiAgJ3ByaW50JzogJ3ByaW50JyxcclxuICAnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxyXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcclxuICAncG9ydHJhaXQnOiAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCknLFxyXG4gICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAobWluLXJlc29sdXRpb246IDJkcHB4KScsXHJcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSksIChtaW4tcmVzb2x1dGlvbjogM2RwcHgpJ1xyXG4pICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cclxuLy8vXHJcbiR1bml0LWludGVydmFsczogKFxyXG4gICdweCc6IDEsXHJcbiAgJ2VtJzogMC4wMSxcclxuICAncmVtJzogMC4xLFxyXG4gICcnOiAwXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIERlZmluZXMgd2hldGhlciBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGF2YWlsYWJsZSwgdXNlZnVsIGZvciBjcmVhdGluZyBzZXBhcmF0ZSBzdHlsZXNoZWV0c1xyXG4vLy8gZm9yIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBtZWRpYSBxdWVyaWVzLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBEaXNhYmxlcyBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIC5mb28ge1xyXG4vLy8gICAgY29sb3I6IHRvbWF0bztcclxuLy8vICB9XHJcbi8vL1xyXG4kaW0tbWVkaWEtc3VwcG9ydDogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gU2VsZWN0cyB3aGljaCBicmVha3BvaW50IHRvIGVtdWxhdGUgd2hlbiBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGRpc2FibGVkLiBNZWRpYSBxdWVyaWVzIHRoYXQgc3RhcnQgYXQgb3JcclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAuZm9vIHtcclxuLy8vICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBkb2VzIG5vdCBpbnRlcmNlcHQgdGhlIGRlc2t0b3AgYnJlYWtwb2ludFxyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogTm8gb3V0cHV0ICovXHJcbi8vL1xyXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXHJcbi8vLyBhcmUgbm90IHN1cHBvcnRlZC5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xyXG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnc2NyZWVuJykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gICAuZm9vIHtcclxuLy8vICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3JldGluYTJ4Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBObyBvdXRwdXQgKi9cclxuLy8vXHJcbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XHJcblxyXG4vLy8vXHJcbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcclxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxyXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcclxuLy8vIHRvIGRldGVjdCBzdXBwb3J0LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXHJcbi8vL1xyXG5AZnVuY3Rpb24gaW0tbG9nKCRtZXNzYWdlKSB7XHJcbiAgQGlmIGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpIHtcclxuICAgIEBlcnJvciAkbWVzc2FnZTtcclxuICB9IEBlbHNlIHtcclxuICAgIEB3YXJuICRtZXNzYWdlO1xyXG4gICAgJF86IG5vb3AoKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJG1lc3NhZ2U7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcclxuLy8vIEFQSSB0aGFuIGBAaWYgaW0tbG9nKCcuLicpIHt9YCBvciBgJF86IGltLWxvZygnLi4nKWAuIEJhc2ljYWxseSwgdXNlIHRoZSBmdW5jdGlvblxyXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxyXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQG1peGluIGxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBpbS1sb2coJG1lc3NhZ2UpIHt9XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEZ1bmN0aW9uIHdpdGggbm8gYEByZXR1cm5gIGNhbGxlZCBuZXh0IHRvIGBAd2FybmAgaW4gU2FzcyAzLjNcclxuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXHJcbi8vL1xyXG5AZnVuY3Rpb24gbm9vcCgpIHt9XHJcblxyXG4vLy9cclxuLy8vIERldGVybWluZXMgd2hldGhlciBhIGxpc3Qgb2YgY29uZGl0aW9ucyBpcyBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XHJcbi8vL1xyXG5AZnVuY3Rpb24gaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikge1xyXG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xyXG5cclxuICBAaWYgbm90ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlIHtcclxuICAgIEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxyXG4gIH1cclxuXHJcbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XHJcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xyXG4gICAgICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRjb25kaXRpb24pO1xyXG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcclxuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xyXG5cclxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXHJcbiAgICAgICAgICAoJHByZWZpeCA9PSAnbWluJyBhbmQgJHZhbHVlID4gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIHtcclxuICAgICAgICBAcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gdHJ1ZTtcclxufVxyXG5cclxuLy8vL1xyXG4vLy8gUGFyc2luZyBlbmdpbmVcclxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEFueSBvZiBgPj1gLCBgPmAsIGA8PWAsIGA8YCwgYOKJpWAsIGDiiaRgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcclxuICBAZWFjaCAkb3BlcmF0b3IgaW4gKCc+PScsICc+JywgJzw9JywgJzwnLCAn4omlJywgJ+KJpCcpIHtcclxuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxyXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxyXG4gICRfOiBpbS1sb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XHJcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XHJcbiAgJGRpbWVuc2lvbjogJ3dpZHRoJztcclxuXHJcbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XHJcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XHJcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IHZhbHVlIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gQSBudW1lcmljIHZhbHVlXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xyXG5cclxuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcclxuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkdmFsdWU6IHRvLW51bWJlcigkdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgJGludGVydmFsOiBtYXAtZ2V0KCR1bml0LWludGVydmFscywgdW5pdCgkdmFsdWUpKTtcclxuXHJcbiAgQGlmIG5vdCAkaW50ZXJ2YWwge1xyXG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xyXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcclxuICAgIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcclxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cclxuICAgICRfOiBpbS1sb2coJ1Vua25vd24gdW5pdCBgI3t1bml0KCR2YWx1ZSl9YC4nKTtcclxuICB9XHJcblxyXG4gIEBpZiAkb3BlcmF0b3IgPT0gJz4nIHtcclxuICAgICR2YWx1ZTogJHZhbHVlICsgJGludGVydmFsO1xyXG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHZhbHVlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFZhbGlkIG1lZGlhIHF1ZXJ5XHJcbi8vL1xyXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xyXG4gIC8vIElmIGl0IGlzIHBhcnQgb2YgJG1lZGlhLWV4cHJlc3Npb25zLCBpdCBoYXMgbm8gb3BlcmF0b3JcclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxyXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbik7XHJcbiAgfVxyXG5cclxuICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKTtcclxuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XHJcbn1cclxuXHJcbi8vL1xyXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxyXG4vLy9cclxuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcclxuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XHJcbiAgICBAcmV0dXJuICgpO1xyXG4gIH1cclxuXHJcbiAgJHJlc3VsdDogKCk7XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcclxuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ2FzdHMgYSBzdHJpbmcgaW50byBhIG51bWJlclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XHJcbi8vL1xyXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xyXG4gICAgQHJldHVybiAkdmFsdWU7XHJcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ3N0cmluZycge1xyXG4gICAgJF86IGltLWxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcclxuICB9XHJcblxyXG4gICRmaXJzdC1jaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsIDEsIDEpO1xyXG4gICRyZXN1bHQ6IDA7XHJcbiAgJGRpZ2l0czogMDtcclxuICAkbWludXM6ICgkZmlyc3QtY2hhcmFjdGVyID09ICctJyk7XHJcbiAgJG51bWJlcnM6ICgnMCc6IDAsICcxJzogMSwgJzInOiAyLCAnMyc6IDMsICc0JzogNCwgJzUnOiA1LCAnNic6IDYsICc3JzogNywgJzgnOiA4LCAnOSc6IDkpO1xyXG5cclxuICAvLyBSZW1vdmUgKy8tIHNpZ24gaWYgcHJlc2VudCBhdCBmaXJzdCBjaGFyYWN0ZXJcclxuICBAaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJysnIG9yICRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKSB7XHJcbiAgICAkdmFsdWU6IHN0ci1zbGljZSgkdmFsdWUsIDIpO1xyXG4gIH1cclxuXHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xyXG4gICAgJGNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgJGksICRpKTtcclxuXHJcbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XHJcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpXHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRjaGFyYWN0ZXIgPT0gJy4nIHtcclxuICAgICAgJGRpZ2l0czogMTtcclxuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcclxuICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3Rlcik7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xyXG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3RlcikgLyAkZGlnaXRzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiBpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KTtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gQWRkIGAkdW5pdGAgdG8gYCR2YWx1ZWBcclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdW5pdCAtIFN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgdW5pdFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge051bWJlcn0gLSBgJHZhbHVlYCBleHByZXNzZWQgaW4gYCR1bml0YFxyXG4vLy9cclxuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XHJcbiAgJHVuaXRzOiAoJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dywgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcclxuXHJcbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xyXG4gICAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC1nZXQoJHVuaXRzLCAkdW5pdCk7XHJcbn1cclxuXHJcbi8vL1xyXG4vLy8gVGhpcyBtaXhpbiBhaW1zIGF0IHJlZGVmaW5pbmcgdGhlIGNvbmZpZ3VyYXRpb24ganVzdCBmb3IgdGhlIHNjb3BlIG9mXHJcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkXHJcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcclxuLy8vIGZvciBpbnN0YW5jZS5cclxuLy8vXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vha3BvaW50cyBbKCldIC0gTWFwIG9mIHR3ZWFrcG9pbnRzIHRvIGJlIG1lcmdlZCB3aXRoIGAkYnJlYWtwb2ludHNgXHJcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIGJyZWFrcG9pbnRzIHdpdGggYSB0d2Vha3BvaW50XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XHJcbi8vLyAgICAgICAvLyAuLi5cclxuLy8vICAgICAgfVxyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgbWVkaWEgZXhwcmVzc2lvbnMgd2l0aCBhIGN1c3RvbSBvbmVcclxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJywgJzw9Y3VzdG9tJykge1xyXG4vLy8gICAgICAgLy8gLi4uXHJcbi8vLyAgICAgIH1cclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG5AbWl4aW4gbWVkaWEtY29udGV4dCgkdHdlYWtwb2ludHM6ICgpLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgpKSB7XHJcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRnbG9iYWwtYnJlYWtwb2ludHM6ICRicmVha3BvaW50cztcclxuICAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zOiAkbWVkaWEtZXhwcmVzc2lvbnM7XHJcblxyXG4gIC8vIFVwZGF0ZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRicmVha3BvaW50czogbWFwLW1lcmdlKCRicmVha3BvaW50cywgJHR3ZWFrcG9pbnRzKSAhZ2xvYmFsO1xyXG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xyXG5cclxuICBAY29udGVudDtcclxuXHJcbiAgLy8gUmVzdG9yZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRicmVha3BvaW50czogJGdsb2JhbC1icmVha3BvaW50cyAhZ2xvYmFsO1xyXG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xyXG59XHJcblxyXG4vLy8vXHJcbi8vLyBpbmNsdWRlLW1lZGlhIHB1YmxpYyBleHBvc2VkIEFQSVxyXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9dGFibGV0JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XHJcbiAgQGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA9PSAwKSBvclxyXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XHJcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XHJcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qKlxuICAqIEVMRU1FTlQgQVJDSElWRSBTVFlMRVNcbiAgKlxuICAqIFN0eWxlIGRlZmluaXRpb25zIGZvciBnbG9iYWwgZWxlbWVudCBzZWxlY3RvcnMuXG4gICovXG5cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIGNvbnNpc3RlbnQgYm94LXNpemluZyBmb3IgYWxsIGVsZW1lbnRzXG59XG5cbmh0bWwge1xuICBoZWlnaHQ6IDEwMCU7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIGZvbnQtc2l6ZTogMTAwJTsgLy8gc2V0IHJvb3QgZm9udC1zaXplIGZvciByZW0gdW5pdHMgKDEwMCUgZXF1YXRlcyB0byAxNnB4KVxuICBsaW5lLWhlaWdodDogMS43OyAvLyBzZXQgZGVmYXVsdCBsaW5lIGhlaWdodFxufVxuXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgZGlzcGxheTogZ3JpZDsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyIGF1dG87IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIG1hcmdpbjogMDsgLy8gbWFrZSBzdXJlIGJvZHkgZWxlbWVudCBpcyBlZGdlLXRvLWVkZ2VcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHlDb2xvcjtcbiAgY29sb3I6ICRmb250Q29sb3I7XG4gIC8vZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIC8vZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgLy9mb250LWZhbWlseTogJ01hdmVuIFBybycsIHNhbnMtc2VyaWY7XG4gIC8vZm9udC1mYW1pbHk6IGNlbnR1cnktZ290aGljLCBzYW5zLXNlcmlmO1xuICBmb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLy9mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuICAvL2ZvbnQtZmFtaWx5OiBjZW50dXJ5LWdvdGhpYywgc2Fucy1zZXJpZjtcbiAgZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuaDEge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjRyZW07XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuaDIge1xuXG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuM3JlbTtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIC8vZm9udC13ZWlnaHQ6IDcwMDtcbiAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAvL2ZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNTkwOWVtO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMjBweCAwIDI1cHggMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvL2JvcmRlci10b3A6IDNweCBzb2xpZCAkYmxhY2s7XG4gICAgLy9mb250LXNpemU6IDEuNHJlbTtcbiAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMzQlO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDMzJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICB9XG59XG5cbmgzIHtcblxuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvL21hcmdpbi1ib3R0b206IDA7XG4gIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLy9mb250LXNpemU6IDIuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU5MDllbTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbmg0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmg1IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbnAge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICAvL2ZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogJGxpbmtDb2xvcjtcblxuICAmOmxpbmsge1xuXG4gIH1cblxuICAmOmhvdmVyIHtcblxuICB9XG5cbiAgJjphY3RpdmUge1xuXG4gIH1cblxuICAmOnZpc2l0ZWQge1xuXG4gIH1cbn1cblxuOmZvY3VzIHtcbi8vICBvdXRsaW5lOiAzcHggc29saWQgb3JhbmdlO1xufVxuXG51bCwgb2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cblxuaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNTAwcHg7IC8vIGtlZXAgaW1hZ2VzIGZyb20gZXhwYW5kaW5nIGJleW9uZCB0aGVpciBjb250YWluZXJzXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLyogYmVnaW4gYnV0dG9uIHN0eWxlcyAqL1xuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIC8vcGFkZGluZzogMXJlbSAycmVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgLy9iYWNrZ3JvdW5kOiAjMDA2OWVkO1xuICAvL2NvbG9yOiAjZmZmZmZmO1xuICAvL2ZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvL2ZvbnQtc2l6ZTogMXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvL3RleHQtYWxpZ246IGNlbnRlcjtcbiAgLy90cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDI1MG1zIGVhc2UtaW4tb3V0LFxuICAvLyAgICAgICAgICAgIHRyYW5zZm9ybSAxNTBtcyBlYXNlO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuYnV0dG9uOmhvdmVyLFxuYnV0dG9uOmZvY3VzIHtcbiAgICAvL2JhY2tncm91bmQ6ICMwMDUzYmE7XG59XG5cbmJ1dHRvbjpmb2N1cyB7XG4gICAgLy9vdXRsaW5lOiAxcHggc29saWQgI2ZmZjtcbiAgICAvL291dGxpbmUtb2Zmc2V0OiAtNHB4O1xufVxuXG5idXR0b246YWN0aXZlIHtcbiAgICAvL3RyYW5zZm9ybTogc2NhbGUoMC45OSk7XG59XG4vKiBlbmQgYnV0dG9uIHN0eWxlcyAqL1xuXG5ibG9ja3F1b3RlIHtcbiAgLy9iYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAkYmxhY2s7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgJGJsYWNrO1xuICBtYXJnaW46IDIwcHggMTBweCA0MHB4IDIwcHg7XG4gIHBhZGRpbmc6IDAgNDBweCAwIDMwcHg7XG4gIHF1b3RlczogXCJcXDIwMUNcIlwiXFwyMDFEXCJcIlxcMjAxOFwiXCJcXDIwMTlcIjtcbiAgLy8gL2ZvbnQtc2l6ZTogMS4ycmVtO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb2xvcjogI2NjYztcbiAgICBjb250ZW50OiBvcGVuLXF1b3RlO1xuICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogLTAuNGVtO1xuXG4gICAgZm9udC1zaXplOiA0ZW07XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuNGVtO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBjb250ZW50OiBjbG9zZS1xdW90ZTtcbiAgfVxuXG4gIHAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgcDpmaXJzdC1vZi10eXBlLCBwOm50aC1vZi10eXBlKDIpIHtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgfVxuICB9XG5cbiAgcDpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIi8qIEJFR0lOIEFyY2hpdmUgbWFzdGhlYWQgc3R5bGVzICovXG4vLy53Zy1hcmNoaXZlICosIC53Zy1hcmNoaXZlID4ge1xuXG4gIC5oZWFkZXItd3JhcCB7XG4gICAgQGluY2x1ZGUgd3JhcDtcbiAgICBncmlkLXJvdy1zdGFydDogMTsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgICBncmlkLXJvdy1lbmQ6IDI7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zLCBib3JkZXIgMjAwbXMsIGJveC1zaGFkb3cgMjAwbXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNyZWFtO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTVweCAjMDAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJvcmRlci10b3A6IDVweCBzb2xpZCAkYmxhY2s7XG4gICAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9uZXdzcHJpbnRfdGV4dHVyZS5qcGcnKTtcbiAgICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL25ld3NwcmludF90ZXh0dXJlLmpwZycpO1xuICAgIC8vYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAvL2JhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAvL2JhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgLy9iYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuXG4gICAgJi5iZy12aXNpYmxlIHtcbiAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XG4gICAgICAvL2JvcmRlci1ib3R0b206IDVweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAvL2JveC1zaGFkb3c6IDBweCAxcHggMTVweCAjMDAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDI7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gICAgICBncmlkLXJvdy1lbmQ6IDM7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICB9XG4gIH1cbiAgICAvKlxuICAgIC50b3AtYmFyLWJnIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDY7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcblxuICAgICAgJi5iZy12aXNpYmxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgKi9cblxuICAgIC5oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgaW5uZXItd3JhcDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIC8vaGVpZ2h0OiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgICAgLy9wYWRkaW5nLXRvcDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxMDVweDsvLzFmciAxMzVweDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcbiAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuXG4gICAgICAmLmJnLXZpc2libGUge1xuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgLy9oZWlnaHQ6IGF1dG87XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDkwcHg7XG4gICAgICAgIC8vZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87IC8vMTIwcHggNzBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRibGFjaztcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNjVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgICAuaGVhZGVyLWJyYW5kIHtcbiAgICAgICAgLy9AaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgIC8vcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyAvLyBuZWdhdGUgcmlnaHQgcGFkZGluZyBmcm9tICdjb250YWluZXInIG1peGluIF5eXlxuICAgICAgICAvL2hlaWdodDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgICAgbWluLWhlaWdodDogODBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYmxhY2s7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgLy9oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRibGFjaztcbiAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAvL2JvcmRlci1ib3R0b206IHVuc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgLy9oZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87IC8vNzBweDtcbiAgICAgICAgICAgIC8vaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5sb2dvLXRleHQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvL2hlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0TW9iaWxlIC0gMzBweCk7XG4gICAgICAgICAgICAvL21hcmdpbjogMTVweCAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDsgLy9ibG9jaztcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG4gICAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubG9nby10ZXh0LXRpdGxlIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAubG9nby10ZXh0LXRpdGxlLWRvbWFpbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5sb2dvLXRleHQtdGl0bGUtdHJhZGVtYXJrIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRjcmVhbSwgNDAlKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC41ZW07XG4gICAgICAgICAgICAgICAgLy9mb250LWZhbWlseTogJ1JhamRoYW5pJywgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1hcmdpbjogMTBweCBhdXRvIDAgYXV0bztcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42cmVtO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtc21hbGxcIikge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHggYXV0bztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaGVhZGVyLW5hdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlOy8vJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgei1pbmRleDogNTtcblxuICAgICAgICAmLmJnLXZpc2libGUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjcmVhbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgLm1haW4tbmF2IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG5lZ2F0ZSBsZWZ0IHBhZGRpbmcgZnJvbSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgLy9AaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87IC8vNDVweDtcbiAgICAgICAgICAgICAgLy9wYWRkaW5nOiAwO1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDEwMDM7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAgICAgICAmOmhvdmVyID4gdWwge1xuXG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgJGJsYWNrO1xuXG5cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgLy9jb2xvcjogJGNyZWFtO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgICAgICAgICAgICAgICAgLy90ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCBsaWdodGVuKCRkZW1CbHVlLCA0MCUpLCBsaWdodGVuKCRyZXBSZWQsIDQwJSkgMTAwJSk7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgICAgICAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAwOyAvLyBuZWdhdGUgJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICAgICAgICAgICAgLy9wYWRkaW5nLWxlZnQ6IDA7IC8vIG5lZ2F0ZSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNDVweDsgLy8kbWFpbk5hdkhlaWdodDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBkaXNwbGF5IDMwMG1zO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciA+IHVsIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxLjVlbTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xuICAgICAgICAgICAgICAgIC8vdHJhbnNpdGlvbjogZm9udC13ZWlnaHQgMzAwbXM7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIC8vY29sb3I6ICRkYXJrQmx1ZTtcbiAgICAgICAgICAgICAgICAgIC8vZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgLy9mb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5jdXJyZW50LXBhZ2UtYW5jZXN0b3Ige1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgLy9mb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLm5hdi1jaGV2cm9uIHtcbiAgICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgLy9yaWdodDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAvL2NvbG9yOiAkYnJhbmRDb2xvckNvbnRyYXN0O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgdWwgeyAvLyBzdWItbmF2XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgLy93aWR0aDogMjI1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7Ly80NXB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjcmVhbTtcbiAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgICAgLy9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTVweCAjMDAwO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDMyMHB4O1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgdG9wOiA0NXB4OyAvLyRtYWluTmF2SGVpZ2h0O1xuICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLypcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAkbWVkaXVtR3JheTtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIHRvcDogLTEycHg7XG4gICAgICAgICAgICAgICAgICByaWdodDogLTFweDtcbiAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICovXG5cbiAgICAgICAgICAgICAgICBsaSB7IC8vIHN1Yi1uYXZcbiAgICAgICAgICAgICAgICAgIC8vd2lkdGg6IDIyNXB4O1xuICAgICAgICAgICAgICAgICAgLy9oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ1cHg7IC8vJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIC8vYm9yZGVyLXRvcDogMXB4IHNvbGlkICRtZWRpdW1EYXJrR3JheTtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDsgLy8kdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgIC8vbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIGEgeyAvLyBzdWItbmF2XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM2VtO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7Ly8xNXB4O1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsvLzE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgdWwgeyAvLyBzdWItc3ViLW5hdlxuXG4gICAgICAgICAgICAgICAgICAgIGxpIHsgLy8gc3ViLXN1Yi1uYXZcblxuICAgICAgICAgICAgICAgICAgICAgIGEgeyAvLyBzdWItc3ViLW5hdlxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0LjVlbTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICB1bCB7IC8vIHN1Yi1zdWItc3ViLW5hdlxuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaSB7IC8vIHN1Yi1zdWItc3ViLW5hdlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGEgeyAvLyBzdWItc3ViLXN1Yi1uYXZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDZlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaS5zbGlkZS1saW5lIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxMDAyOyAvLyBwb3NpdGlvbiBiZWxvdyBsaXN0IGl0ZW0gc28gdGhhdCBtb3VzZW92ZXIgZG9lc24ndCBnZXQgY29uZnVzZWRcbiAgICAgICAgICAgICAgYm90dG9tOiAtMnB4O1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0OXB4OyAvLzZweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRjcmVhbTtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IGRvdHRlZCAkY3JlYW07XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBkb3R0ZWQgJGNyZWFtO1xuICAgICAgICAgICAgICAvL291dGxpbmU6IDJweCBkYXNoZWQgJGJsYWNrO1xuICAgICAgICAgICAgICAvL2JvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggMzAwbXMsIGxlZnQgMzAwbXM7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLW5hdi10b3Age1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW1HcmF5O1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuXG4gICAgICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgLy9AaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgICAgICAvL3dpZHRoOiA1MCU7IC8vIGFyYml0cmFyeSAtIGp1c3QgbmVlZHMgdG8gYmUgd2lkZSBlbm91Z2ggdG8gYWNjb21vZGF0ZSBuYXYgaXRlbXNcbiAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICAgIC8vaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgLy9oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAvL3RvcDogMDtcbiAgICAgICAgICAgIHRvcDogNDVweDtcbiAgICAgICAgICAgIC8vcmlnaHQ6IDM2cHg7XG4gICAgICAgICAgICByaWdodDogLTQ1cHg7XG4gICAgICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICAgICAgLy9yaWdodDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRsaWdodEdyYXk7XG4gICAgICAgICAgICAvL2NsZWFyOiBib3RoO1xuXG4gICAgICAgICAgICAmLnZpc2libGUge1xuICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLy9oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgY29sdW1uLWdhcDogMzBweDtcbiAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIC8vaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7Ly82MHB4O1xuICAgICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgICAgICAgLy9oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTVweCAjMDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIC8vQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxLjJlbTtcbiAgICAgICAgICAgICAgLy9saXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAvL2Zsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjcmVhbTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAudXNlci1sb2dpbi1sb2dvdXQtaWNvbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZzogLjUyNWVtIDNlbSAwIDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcblxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLypcbiAgICAgICAgLmhlYWRlci1uYXYtdG9wIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHotaW5kZXg6IDY7XG4gICAgICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW1HcmF5O1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgICAgICB3aWR0aDogNTAlOyAvLyBhcmJpdHJhcnkgLSBqdXN0IG5lZWRzIHRvIGJlIHdpZGUgZW5vdWdoIHRvIGFjY29tb2RhdGUgbmF2IGl0ZW1zXG4gICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAvL2hlaWdodDogMzVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRHcmF5O1xuICAgICAgICAgICAgLy9jbGVhcjogYm90aDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8vaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDMwcHg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgIGZsZXgtZmxvdzogcm93LXJldmVyc2U7XG4gICAgICAgICAgICAgIC8vaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgICAgICAgLy9saXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAvL2Zsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgLy9wYWRkaW5nOiAuNTI1ZW0gM2VtIDAgMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAvL3RleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAqL1xuXG4gICAgICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgICAgICAvL3dpZHRoOiAxMzVweDtcbiAgICAgICAgd2lkdGg6IDEwNXB4O1xuICAgICAgICAvL2hlaWdodDogY2FsYygkaGVhZGVySGVpZ2h0TW9iaWxlIC0gMzBweCk7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgLy9tYXJnaW46IDE1cHggMDtcbiAgICAgICAgcGFkZGluZzogMCAxNXB4IDAgMDsgLy8xNXB4IDA7XG4gICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvL3RvcDogMDtcbiAgICAgICAgLy9yaWdodDogMjBweDtcbiAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgLy9yaWdodDogMjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgICAgIGhlaWdodDogNDVweDsvL2F1dG87IC8vJHRvcEJhckhlaWdodDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIC8vcGFkZGluZzogMDtcbiAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgICAuZ2xhc3Mge1xuICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAvL2hlaWdodDogOTBweDtcbiAgICAgICAgICAvL3BhZGRpbmc6IDhweCAxMHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgLy9yaWdodDogNDVweDtcbiAgICAgICAgICAvL2JvcmRlcjogMXB4IHNvbGlkICRvZmZXaGl0ZTtcbiAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRjcmVhbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIC8vd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAvL2hlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgIC8vdG9wOiAwO1xuICAgICAgICAgICAgLy9yaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlcjogdW5zZXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgLy9jb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjcmVhbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnVyZ2VyIHtcbiAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgLy9oZWlnaHQ6IDkwcHg7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgLy9wYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgLy90b3A6IGF1dG87XG4gICAgICAgICAgLy9yaWdodDogMDtcbiAgICAgICAgICAvL2JvcmRlcjogMXB4IHNvbGlkICRvZmZXaGl0ZTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0zNDBweFwiKSB7XG4gICAgICAgICAgICAvL21hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIC8vdG9wOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkZGFya0dyYXk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFjY291bnQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAvL3RvcDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGRhcmtHcmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAuc2l0ZS1zZWFyY2gtd3JhcCB7XG4gICAgICAgIEBpbmNsdWRlIHdyYXA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgLy9wYWRkaW5nOiA0MHB4IDA7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlOy8vJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNyZWFtO1xuICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IC01cHggIzAwMDtcbiAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgLy90b3A6IDE5OHB4O1xuICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuc2l0ZS1zZWFyY2gge1xuICAgICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgICAuc2l0ZS1zZWFyY2gge1xuICAgICAgICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgICAgICAgLy9AaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHBhZGRpbmc6IDM1cHggMDtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDUwcHg7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICAgICAgICAgIC8vZ3JpZC1yb3ctZ2FwOiAxNXB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MHB4O1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAgIC5zZWFyY2gtcXVlcnkge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAvL3BhZGRpbmc6IDAgMTBweCAwIDA7XG4gICAgICAgICAgICAgIC8vaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBibGFjaztcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgICAvL2JvcmRlci1yYWRpdXM6IDIwcHggMCAwIDA7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnNlYXJjaC1jb250ZXh0IHtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgLy9ib3JkZXItcmFkaXVzOiAwIDAgMjBweCAwO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3I7XG5cbiAgICAgICAgICAgICAgb3B0aW9uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuc2VhcmNoLXN1Ym1pdCB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICAgICAgICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIC8vYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bURhcmtHcmF5O1xuICAgICAgICAgICAgLy9ib3JkZXItcmFkaXVzOiAyMHB4IDA7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gIC5oZWFkZXItYmFubmVyLXdyYXAge1xuICAgIEBpbmNsdWRlIHdyYXA7XG4gICAgZ3JpZC1yb3ctc3RhcnQ6IDI7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gICAgZ3JpZC1yb3ctZW5kOiAzOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuXG4gICAgLy9oZWlnaHQ6IDMwMHB4O1xuICAgIC8vaGVpZ2h0OiBjYWxjKDUwdmggLSAxMjBweCk7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgYXNwZWN0LXJhdGlvOiAxMC8zO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICBncmlkLXJvdy1zdGFydDogMTsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgICAgIGdyaWQtcm93LWVuZDogMjsgLy8gZm9yIHN0aWNreSBmb290ZXJcblxuICAgIH1cbiAgfVxuICAgIC5oZWFkZXItYmFubmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgODAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbi8vfSAvLyAqIHdnLWFyY2hpdmVcbi8qIEVORCBBcmNoaXZlIG1hc3RoZWFkIHN0eWxlcyAqL1xuIiwiLyoqXG4gICogQ09OVEVOVCBTVFlMRVNcbiAgKi9cblxuXG4ubWFpbi13cmFwIHtcbiAgQGluY2x1ZGUgd3JhcDtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDM7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIGdyaWQtcm93LWVuZDogNDsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgLy9tYXJnaW4tdG9wOiBjYWxjKC0xICogKCRoZWFkZXJIZWlnaHRNb2JpbGUgKyAkdG9wQmFySGVpZ2h0KSk7XG4gIC8vYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbmV3c3ByaW50X3RleHR1cmUuanBnJyk7XG4gIC8vYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLy9iYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIC8vYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLy90b3A6IDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgLy9tYXJnaW4tdG9wOiBjYWxjKC0xICogKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHRvcEJhckhlaWdodCkpO1xuICB9XG59XG4gIC5tYWluIHtcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIGZvciBzdGlja3kgZm9vdGVyOiBmaWxsIGFueSBlbXB0eSBzcGFjZSBkb3duIHRvIGZvb3RlclxuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIGV4dGVuZHMgaGVpZ2h0IHRvIGFjY29tb2RhdGUgY29udGVudCdzIG1hcmdpblxuICAgIC8vcGFkZGluZy10b3A6IDJyZW07XG4gIH1cblxuICAgIC5wYWdlLWNvbnRlbnQtd3JhcCB7XG4gICAgICBAaW5jbHVkZSB3cmFwO1xuXG4gICAgfVxuICAgICAgLnBhZ2UtY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgLy9AaW5jbHVkZSBzcGFjZXItdG9wO1xuICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgICAgQGluY2x1ZGUgc3BhY2VyLWJvdHRvbTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wYWdlLWNvbnRlbnQuc2lkZSB7XG4gICAgICAgIC8vZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMHB4O1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyODZweDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIC5wYWdlLW1haW4ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgICAgZ3JpZC1yb3c6IDI7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMjVweCAwIDI1cHggMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNHB4IGRvdHRlZCAkYmxhY2s7XG4gICAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgICAvL2ZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICB3aWR0aDogNDQlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICBsZWZ0OiAyOCU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoNiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgIC8vcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICAvL2ZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zaWRlIC5wYWdlLW1haW4ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wYWdlLWhlYWRlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIC8vbWF4LWhlaWdodDogaGVpZ2h0OiBjYWxjKDUwdmggLSAxMjBweCk7XG4gICAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICAgICAgICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9ob21lX2ZlYXR1cmVfMi5qcGdcIik7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW47XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA4MCU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IHNjcmVlbjtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgLy9taW4taGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgICAucGFnZS1oZWFkZXItb3ZlcmxheSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KGRhcmtlbigkdHJhbnNHcmF5LCA0MCUpLCBkYXJrZW4oJHRyYW5zR3JheSwgMjAlKSk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnBhZ2UtaGVhZGVyLWJveC13cmFwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoJGhlYWRlckhlaWdodE1vYmlsZSArICRzcGFjZXJQYWRkaW5nVGFibGV0KTtcbiAgICAgICAgICAgIC8vcGFkZGluZzogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoJGhlYWRlckhlaWdodERlc2t0b3AgKyAkc3BhY2VyUGFkZGluZ0Rlc2t0b3ApOy8vXG4gICAgICAgICAgICAgIC8vaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wYWdlLWhlYWRlci1ib3gge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHNwYWNlci10b3A7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHNwYWNlci1ib3R0b207XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIC8vcGFkZGluZzogNDBweCAzMHB4O1xuICAgICAgICAgICAgICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHRNb2JpbGUgKyAkc3BhY2VyUGFkZGluZ1RhYmxldCk7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAvL3dpZHRoOiA2NyU7XG4gICAgICAgICAgICAgICAgLy93aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAvL3BhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHNwYWNlclBhZGRpbmdEZXNrdG9wKTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC8qLmxvZ28ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgICAgICAgICByaWdodDogNDBweDtcbiAgICAgICAgICAgICAgfSovXG5cbiAgICAgICAgICAgICAgLyphIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG9mZldoaXRlO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0qL1xuXG4gICAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgLnBhZ2Utc2lkZWJhciB7XG4gICAgICAgICAgQGluY2x1ZGUgc3BhY2VyLWJvdHRvbTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICBncmlkLXJvdzogMTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgICAucGFnZS1zaWRlYmFyLWhlYWRpbmcge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweCAxNXB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJG1lZGl1bUdyYXk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBjb2xvcjogJG9mZldoaXRlO1xuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zaWRlLW5hdiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAgICAgdWwubWVudSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIC8vZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgLy9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAvL2FsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAvL2NvbHVtbi1nYXA6IGF1dG87XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JheTtcblxuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtR3JheTtcblxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIC8vYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG5cbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG9mZldoaXRlO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDE1cHg7XG4gICAgICAgICAgICAgICAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgIC8vZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgIC8vbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG5cbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmtHcmF5O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8qLmN1cnJlbnRfcGFnZV9pdGVtIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcblxuICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSovXG5cbiAgICAgICAgICAgICAgICAubmF2LWNoZXZyb24ge1xuICAgICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAvL3JpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHVsLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICAgIC8vdG9wOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bUdyYXk7XG5cbiAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRvZmZXaGl0ZTtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHVsLnN1Yi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAvL3RvcDogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmV2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4vKlxuICAgICAgICAgIC5saXN0aW5ncyB7XG5cbiAgICAgICAgICB9XG4gICAgICAgICAgICAubGlzdGluZyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI4MHB4IDFmcjtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRsaWdodEdyYXk7XG5cbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmxpc3RpbmctbGVmdCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya0dyYXk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5saXN0aW5nLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgICAgICAgICAgIH1cbiovXG5cbiAgICAgICAgICAgICAgLnN1YnRpdGxlLCBwLnN1YnRpdGxlLCBoMy5zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiA4JTtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMHB4O1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICBsZWZ0OiA0NiU7XG4gICAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRjcmVhbTtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBkb3R0ZWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAgIC5pZnJhbWUtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmlmcmFtZS1jb250YWluZXIgaWZyYW1lIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgIC5lbWJlZC1jb250YWluZXItd3JhcCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5lbWJlZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLmVtYmVkLWNvbnRhaW5lciBpZnJhbWUsXG4gICAgICAgICAgICAgICAgICAuZW1iZWQtY29udGFpbmVyIG9iamVjdCxcbiAgICAgICAgICAgICAgICAgIC5lbWJlZC1jb250YWluZXIgZW1iZWQge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIH1cblxuLnBvc3QtY2F0IHtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiA1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICBjb2xvcjogJGNyZWFtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbiIsIi8qKlxuICAqIEZPT1RFUiBTVFlMRVNcbiAgKi9cblxuXG4uZm9vdGVyLXdyYXAge1xuICBncmlkLXJvdy1zdGFydDogNDsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgZ3JpZC1yb3ctZW5kOiA1OyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya0dyYXk7XG59XG4gIC5mb290ZXIge1xuICAgIEBpbmNsdWRlIHNwYWNlci10b3A7XG4gICAgQGluY2x1ZGUgc3BhY2VyLWJvdHRvbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZXh0ZW5kcyBoZWlnaHQgdG8gYWNjb21vZGF0ZSBjb250ZW50J3MgbWFyZ2luXG4gICAgY29sb3I6ICRvZmZXaGl0ZTtcbiAgfVxuICAgIC5mb290ZXItbmF2IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIHVsIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJ8XCI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbWVkaXVtRGFya0dyYXk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICByaWdodDogLTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBjb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jb3B5cmlnaHQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4iXX0= */
