@charset "UTF-8";
/**
  * Media Center PAGE STYLESHEET
  *
  * Import common styles and page-specific styles for "Media Center".
  */
/**
  * 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;
}

.media-center {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto auto auto auto;
  grid-column-gap: 0;
  grid-row-gap: 30px;
}
@media (min-width: 1200px) {
  .media-center {
    grid-template-columns: 31% 31% 31%;
    grid-template-rows: auto auto auto;
    grid-column-gap: 3.5%;
  }
}
.media-center-web-launch {
  grid-column: 1/span 1;
  grid-row: 1/span 1;
  border-top: 2px solid #222222;
}
@media (min-width: 1200px) {
  .media-center-web-launch {
    grid-column: 1/span 2;
    grid-row: 1/span 1;
  }
}
.media-center-web-launch img {
  float: right;
  max-width: 500px;
  margin: 10px 0 15px 30px;
}

.media-center-50th {
  grid-column: 1/span 1;
  grid-row: 2/span 1;
  border-top: 2px solid #222222;
}
@media (min-width: 1200px) {
  .media-center-50th {
    grid-column: 1/span 2;
    grid-row: 2/span 1;
  }
}
.media-center-50th img {
  float: right;
  max-width: 500px;
  margin: 10px 0 15px 30px;
}

.media-center-inquiries {
  grid-column: 1/span 1;
  grid-row: 4/span 1;
  border: 2px dotted #222222;
  padding: 20px 30px;
  background-color: #f8f8f8;
  position: relative;
}
@media (min-width: 1200px) {
  .media-center-inquiries {
    grid-column: 3/span 1;
    grid-row: 1/span 2;
  }
}
.media-center-inquiries .inquiries-contact {
  font-weight: bold;
}
.media-center-inquiries .inquiries-email {
  word-break: break-all;
}
.media-center-inquiries .top-separated {
  margin-top: 20px;
  padding-top: 20px;
  position: relative;
}
.media-center-inquiries .top-separated::before {
  content: "";
  width: 14%;
  height: 2px;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 43%;
  background-color: #222222;
}

.media-center-about {
  grid-column: 1/span 1;
  grid-row: 3/span 1;
  border-top: 2px solid #222222;
}
@media (min-width: 1200px) {
  .media-center-about {
    grid-column: 1/span 3;
    grid-row: 3/span 1;
  }
}
.media-center-about h2 {
  text-align: center;
}
.media-center-about h3 {
  text-align: left;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1lZGlhLWNlbnRlci5jc3MiLCJtZWRpYS1jZW50ZXIuc2NzcyIsInBhcnRpYWxzL19jb21tb24tYXJjaGl2ZS5zY3NzIiwibGlicmFyaWVzL19ub3JtYWxpemUuc2NzcyIsInBhcnRpYWxzL2NvbW1vbi9fYnJlYWtwb2ludHMubW9kdWxlcy5zY3NzIiwicGFydGlhbHMvY29tbW9uLWFyY2hpdmUvX3ZhcmlhYmxlcy5zY3NzIiwicGFydGlhbHMvY29tbW9uL19mb250cy5zY3NzIiwicGFydGlhbHMvY29tbW9uL19taXhpbnMuc2NzcyIsImxpYnJhcmllcy9faW5jbHVkZS1tZWRpYS5zY3NzIiwicGFydGlhbHMvY29tbW9uLWFyY2hpdmUvX2VsZW1lbnRzLnNjc3MiLCJwYXJ0aWFscy9jb21tb24tYXJjaGl2ZS9faGVhZGVyLnNjc3MiLCJwYXJ0aWFscy9jb21tb24tYXJjaGl2ZS9fY29udGVudC5zY3NzIiwicGFydGlhbHMvY29tbW9uL19mb290ZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7Ozs7R0FBQTtBQ0FBOzs7O0dBQUE7QUNBQSwyRUFBQTtBQUVBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRSxpQkFBQTtFQUFtQixNQUFBO0VBQ25CLDhCQUFBO0VBQWdDLE1BQUE7QUhXbEM7O0FHUkE7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsU0FBQTtBSFNGOztBR05BOztFQUFBO0FBSUE7RUFDRSxjQUFBO0FIUUY7O0FHTEE7OztFQUFBO0FBS0E7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7QUhPRjs7QUdKQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0UsdUJBQUE7RUFBeUIsTUFBQTtFQUN6QixTQUFBO0VBQVcsTUFBQTtFQUNYLGlCQUFBO0VBQW1CLE1BQUE7QUhRckI7O0FHTEE7OztFQUFBO0FBS0E7RUFDRSxpQ0FBQTtFQUFtQyxNQUFBO0VBQ25DLGNBQUE7RUFBZ0IsTUFBQTtBSFNsQjs7QUdOQTsr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QUVBLFNBQUE7RUFJQSx1QkFBQTtBVm12QlY7QVE1L0JJO0VFNFBJO0lBd0JJLGFBQUE7SUFDQSx5Qkx4eEJIO0VMb2dEUDtBQUNGO0FVMXVCVTtFQUNFLGNMNXhCSDtBTHdnRFQ7QVFyZ0NJO0VFd1JNO0lBUUksY0xoeUJMO0VMeWdEUDtBQUNGOztBVXJ1QlE7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUVBLGNBQUE7RUFFQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx1QkFBQTtBVnN1QlY7QVFuaENJO0VFcVNJO0lBbUJJLGFBQUE7RVYrdEJWO0FBQ0Y7QVU1dEJVO0VBQ0UsY0xoMEJIO0FMOGhEVDtBVTV0Qlk7RUFDRSxXTHp6QkY7QUx1aERaOztBVXp0QlE7RUFDRSxhQUFBO0FWNHRCVjtBUWxpQ0k7RUVxVUk7SUFJSSxXQUFBO0lBQ0EsWUFBQTtJQUNBLGNBQUE7RVY2dEJWO0FBQ0Y7QVUxdEJVO0VBQ0UsY0xuMUJIO0FMK2lEVDtBVTF0Qlk7RUFDRSxXTDUwQkY7QUx3aURaOztBVXZ0Qk07RUgvM0JKLFdBQUE7RUFDQSxZQUFBO0VHZzRCTSxZQUFBO0VBRUEsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSx5QkxoMkJDO0VLaTJCRCxVQUFBO0VBQ0EsZ0NBQUE7RUFDQSxpQkFBQTtBVjB0QlI7QVE3akNJO0VFd1ZFO0lBZUksNkJBQUE7RVYwdEJSO0FBQ0Y7QVV4dEJRO0VIOTNCTixrQkZSdUI7RUVTdkIsbUJGVHVCO0VFVXZCLHlCQUFBO0FQeWxERjtBUXZrQ0k7RUUwV0k7SUh6M0JKLGtCRlp5QjtJRWF6QixtQkZieUI7RUx1bUQzQjtBQUNGO0FRN2tDSTtFRTBXSTtJSHAzQkosa0JGaEJxQjtJRWlCckIsbUJGakJxQjtFTDRtRHZCO0FBQ0Y7QVFubENJO0VFMFdJO0lILzJCSixrQkZwQnFCO0lFcUJyQixtQkZyQnFCO0VMaW5EdkI7QUFDRjtBUXpsQ0k7RUUwV0k7SUgxMkJKLGtCRnhCc0I7SUV5QnRCLG1CRnpCc0I7RUxzbkR4QjtBQUNGOztBVWp2QlE7RUg1NEJOLFdBQUE7RUFDQSxpQkZQVTtFRVFWLGNBQUE7RUc2NEJRLFlBQUE7RUFDQSxlQUFBO0VBQ0EsYUFBQTtFQUNBLCtCQUFBO0VBQ0Esd0JBQUE7QVZxdkJWO0FRMW1DSTtFRThXSTtJQVdJLCtCQUFBO0lBQ0Esd0JBQUE7RVZxdkJWO0FBQ0Y7O0FVbnZCVTtFQUNFLFlBQUE7RUFDQSxVQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7QVZzdkJaO0FReG5DSTtFRTZYTTtJQVVJLFVBQUE7RVZxdkJaO0FBQ0Y7QVVudkJZO0VBQ0UsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsY0wzNEJIO0VLNDRCRyxjQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7QVZxdkJkO0FVbHZCWTtFQUNFLFdBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFFQSxjQUFBO0VBQ0EseUJMMTVCSDtFSzI1QkcsY0xqNkJMO0FMb3BEVDs7QVUvdUJVO0VBQ0UsWUFBQTtFQUNBLG1CQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7QVZrdkJaO0FRenBDSTtFRWthTTtJQVFJLHFCQUFBO0lBQ0EsV0FBQTtJQUNBLG1CQUFBO0VWbXZCWjtBQUNGO0FVanZCWTtFQUNFLFdBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLGNMaDdCSDtFS2k3QkcsY0FBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxhQUFBO0FWbXZCZDtBVWh2Qlk7RUFDRSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFFQSxrQkFBQTtFQUNBLHlCQUFBO0VBRUEsY0FBQTtFQUNBLHlCTGg4Qkg7RUtpOEJHLFdMNzdCRjtBTDZxRFo7QVU5dUJjO0VBQ0Usa0JBQUE7QVZndkJoQjs7QVUzdUJVO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxpQkFBQTtFQUNBLGNMLzhCRDtFS2c5QkMsaUJBQUE7RUFJQSx5QkwxOUJIO0VLMjlCRyxrQ0FBQTtBVjJ1Qlo7QVFuc0NJO0VFNGNNO0lBZUksaUJBQUE7RVY0dUJaO0FBQ0Y7QVUxdUJZO0VBQ0UseUJMaitCTDtBTDZzRFQ7O0FVeHVCRTtFSDFnQ0EsV0FBQTtFQUNBLFlBQUE7RUcyZ0NFLGlCQUFBO0VBQ0EsZUFBQTtFQUtBLGtCQUFBO0FWd3VCSjtBUW50Q0k7RUVtZUY7SUFXSSxpQkFBQTtJQUNBLGVBQUE7RVZ5dUJKO0FBQ0Y7O0FVdHVCSTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsNEJBQUE7RUFDQSxzQkFBQTtFQUNBLCtCQUFBO0VBQ0Esa0JBQUE7QVZ5dUJOOztBVXR1QkEsZ0NBQUE7QUN6aUNBOztHQUFBO0FBS0E7RUpDRSxXQUFBO0VBQ0EsWUFBQTtFSUFBLGlCQUFBO0VBQ0EsZUFBQTtBWGt4REY7QVdwd0RFO0VBQ0UsWUFBQTtFQUNBLGdCQUFBO0FYc3dESjs7QVdsd0RJO0VKdEJGLFdBQUE7RUFDQSxZQUFBO0FQNHhERjs7QVdud0RNO0VKakJKLFdBQUE7RUFDQSxpQkZQVTtFRVFWLGNBQUE7RUFRQSxrQkZSdUI7RUVTdkIsbUJGVHVCO0VFVXZCLHlCQUFBO0VJU00saUJBQUE7RUo0Q04sb0JGeERvQjtFRXlEcEIseUJBQUE7RUkzQ00sYUFBQTtFQUNBLDBCQUFBO0VBQ0Esd0JBQUE7QVgwd0RSO0FRcndDSTtFRzdnQkU7SUpGRixrQkZaeUI7SUVhekIsbUJGYnlCO0VMcXlEM0I7QUFDRjtBUTN3Q0k7RUc3Z0JFO0lKR0Ysa0JGaEJxQjtJRWlCckIsbUJGakJxQjtFTDB5RHZCO0FBQ0Y7QVFqeENJO0VHN2dCRTtJSlFGLGtCRnBCcUI7SUVxQnJCLG1CRnJCcUI7RUwreUR2QjtBQUNGO0FRdnhDSTtFRzdnQkU7SUphRixrQkZ4QnNCO0lFeUJ0QixtQkZ6QnNCO0VMb3pEeEI7QUFDRjtBUTd4Q0k7RUc3Z0JFO0lKb0RGLG9CRjNEc0I7RUxxekR4QjtBQUNGO0FRbHlDSTtFRzdnQkU7SUp3REYsb0JGOURrQjtFTHl6RHBCO0FBQ0Y7QVF2eUNJO0VHN2dCRTtJSjRERixvQkZqRWtCO0VMNnpEcEI7QUFDRjtBUTV5Q0k7RUc3Z0JFO0lKZ0VGLG9CRnBFbUI7RUxpMERyQjtBQUNGO0FRanpDSTtFRzdnQkU7SUFXSSwwQkFBQTtJQUNBLHdCQUFBO0VYdXpEUjtBQUNGOztBV3J6RE07RUFFRSw4QkFBQTtFQUNBLDZCQUFBO0FYdXpEUjtBUTV6Q0k7RUc5ZkU7SUFNSSxnQ0FBQTtJQUNBLDRCQUFBO0VYd3pEUjtBQUNGOztBV3R6RFE7RUFDRSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7QVh5ekRWO0FRejBDSTtFR3BmSTtJQU9JLHFCQUFBO0lBQ0EsV0FBQTtFWDB6RFY7QUFDRjtBV3h6RFU7RUFDRSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxzQkFBQTtFQUNBLGNBQUE7RUFDQSw4QkFBQTtFQUdBLHlCQUFBO0VBQ0Esa0JBQUE7RUFFQSxjTnJDSDtFTXNDRyxrQkFBQTtFQUNBLGtCQUFBO0FYdXpEWjtBV3J6RFk7RUFDRSxXQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLHlCTmpETDtBTHcyRFQ7QVduekRVO0VBQ0UsZ0JBQUE7QVhxekRaO0FXbnpEWTtFQUNFLGFBQUE7QVhxekRkO0FXanpEVTtFQUNFLGdCQUFBO0FYbXpEWjtBV2h6RFU7RUFDRSxnQkFBQTtBWGt6RFo7QVcveURVO0VBQ0UsZ0JBQUE7QVhpekRaO0FXOXlEVTtFQUNFLGdCQUFBO0FYZ3pEWjtBVzd5RFU7RUFDRSxtQkFBQTtBWCt5RFo7QVczeURVO0VBQ0Usa0JBQUE7RUFJQSxnQkFBQTtFQUNBLDRCQUFBO0FYMHlEWjtBV3h5RFk7RUFDRSxtQkFBQTtBWDB5RGQ7O0FXcnlEUTtFQUNFLGdCQUFBO0FYd3lEVjtBUXQ0Q0k7RUduYUk7SUFJSSxvQkFBQTtFWHl5RFY7QUFDRjs7QVd0eURRO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFLQSw0QkFBQTtFQUNBLHNCQUFBO0VBQ0EsK0JBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7RUFFQSw2QkFBQTtBWG95RFY7QVc5eERVO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsVUFBQTtFQUNBLHlFQUFBO0VBQ0EsWUFBQTtBWGd5RFo7O0FXNXhEVTtFSmxLUixXQUFBO0VBQ0EsaUJGUFU7RUVRVixjQUFBO0VJa0tVLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBRUEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0FYZ3lEWjtBUTc2Q0k7RUc1WE07SUp4SlIsa0JGUnVCO0lFU3ZCLG1CRlR1QjtJRVV2Qix5QkFBQTtJSW1LWSxrQkFBQTtFWG15RFo7QUFDRjtBUXI3Q0k7RUc1WE07SUpuSk4sa0JGWnlCO0lFYXpCLG1CRmJ5QjtFTHE5RDNCO0FBQ0Y7QVEzN0NJO0VHNVhNO0lKOUlOLGtCRmhCcUI7SUVpQnJCLG1CRmpCcUI7RUwwOUR2QjtBQUNGO0FRajhDSTtFRzVYTTtJSnpJTixrQkZwQnFCO0lFcUJyQixtQkZyQnFCO0VMKzlEdkI7QUFDRjtBUXY4Q0k7RUc1WE07SUpwSU4sa0JGeEJzQjtJRXlCdEIsbUJGekJzQjtFTG8rRHhCO0FBQ0Y7O0FXeHpEWTtFSnpLVixrQkZSdUI7RUVTdkIsbUJGVHVCO0VFVXZCLHlCQUFBO0VBNEJBLGlCRi9Cb0I7RUVnQ3BCLHlCQUFBO0VBd0JBLG9CRnhEb0I7RUV5RHBCLHlCQUFBO0VJcUhZLFdBQUE7RUFDQSxZQUFBO0VBR0EsZ0JBQUE7RUFTQTs7Ozs7O0lBQUE7RUFRQTs7Ozs7Ozs7O0lBQUE7QVg2ekRkO0FRMytDSTtFRzNXUTtJSnBLUixrQkZaeUI7SUVhekIsbUJGYnlCO0VMMmdFM0I7QUFDRjtBUWovQ0k7RUczV1E7SUovSlIsa0JGaEJxQjtJRWlCckIsbUJGakJxQjtFTGdoRXZCO0FBQ0Y7QVF2L0NJO0VHM1dRO0lKMUpSLGtCRnBCcUI7SUVxQnJCLG1CRnJCcUI7RUxxaEV2QjtBQUNGO0FRNy9DSTtFRzNXUTtJSnJKUixrQkZ4QnNCO0lFeUJ0QixtQkZ6QnNCO0VMMGhFeEI7QUFDRjtBUW5nREk7RUczV1E7SUp2SVIsaUJGbENzQjtFTDJoRXhCO0FBQ0Y7QVF4Z0RJO0VHM1dRO0lKbklSLGlCRnJDa0I7RUwraEVwQjtBQUNGO0FRN2dESTtFRzNXUTtJSi9IUixpQkZ4Q2tCO0VMbWlFcEI7QUFDRjtBUWxoREk7RUczV1E7SUozSFIsaUJGM0NtQjtFTHVpRXJCO0FBQ0Y7QVF2aERJO0VHM1dRO0lKOUdSLG9CRjNEc0I7RUwraUV4QjtBQUNGO0FRNWhESTtFRzNXUTtJSjFHUixvQkY5RGtCO0VMbWpFcEI7QUFDRjtBUWppREk7RUczV1E7SUp0R1Isb0JGakVrQjtFTHVqRXBCO0FBQ0Y7QVF0aURJO0VHM1dRO0lKbEdSLG9CRnBFbUI7RUwyakVyQjtBQUNGO0FXbDNEYztFQUNFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsY0FBQTtFQUNBLGNOMUxMO0VNMkxLLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0FYbzNEaEI7QVFyakRJO0VHdlVVO0lBV0ksaUJBQUE7RVhxM0RoQjtBQUNGO0FXbDNEYztFQUNFLFNBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsY04xTUw7QUw4akVYO0FRamtESTtFR3hUVTtJQVFJLGlCQUFBO0VYcTNEaEI7QUFDRjs7QVdqM0RRO0VKbExOLG9CRnhEb0I7RUV5RHBCLHlCQUFBO0VJbUxRLFdBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7QVhxM0RWO0FROWtESTtFRzNTSTtJSjlLSixvQkYzRHNCO0VMc21FeEI7QUFDRjtBUW5sREk7RUczU0k7SUoxS0osb0JGOURrQjtFTDBtRXBCO0FBQ0Y7QVF4bERJO0VHM1NJO0lKdEtKLG9CRmpFa0I7RUw4bUVwQjtBQUNGO0FRN2xESTtFRzNTSTtJSmxLSixvQkZwRW1CO0VMa25FckI7QUFDRjtBUWxtREk7RUczU0k7SUFPSSxxQkFBQTtJQUNBLFdBQUE7RVgwNERWO0FBQ0Y7O0FXeDREVTtFQUNFLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsY0FBQTtFQUNBLDZCQUFBO0VBQ0EseUJOek9IO0VNME9HLGdCQUFBO0VBQ0EsY050T0Q7QUxpbkVYO0FXejREWTtFQUNFLGVBQUE7QVgyNERkOztBV3Y0RFU7RUFDRSxXQUFBO0VBQ0EsWUFBQTtBWDA0RFo7QVd4NERZO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFJQSxjQUFBO0VBQ0EsZ0JBQUE7RUFFQSx5Qk4vUEw7RU1rUUsseUJOM1BEO0FMK25FYjtBV2w0RGM7RUFDRSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsZ0JBQUE7RUFJQSxpQkFBQTtFQUVBLGdDQUFBO0VBdUJBOzs7Ozs7O0lBQUE7QVhpM0RoQjtBV3Q0RGdCO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxtQkFBQTtFQUtBLGlCQUFBO0VBQ0EsaUJBQUE7RUFFQSxjTnRSUDtFTXVSTyxpQkFBQTtFQUVBLGNOL1JUO0FMaXFFVDtBV2g0RGtCO0VBQ0UsV054UlI7QUwwcEVaO0FXLzJEZ0I7RUFFRSx5Qk4vU0w7QUwrcEViO0FXOTJEa0I7RUFDRSxnQ0FBQTtBWGczRHBCO0FXOTJEb0I7RUFDRSxrQkFBQTtFQUNBLGNOOVRiO0FMOHFFVDtBVzcyRG9CO0VBRUUseUJON1RYO0FMMnFFWDtBVzEyRHdCO0VBQ0Usa0JBQUE7RUFDQSxtQkFBQTtBWDQyRDFCOztBV2wyREE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQW9DYztFQUNFLG1CQUFBO0VBQ0Esb0JBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7QVhvMkRoQjtBV2wyRGdCO0VBQ0UsV0FBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFFQSw4QkFBQTtBWG0yRGxCOztBVy8xRGM7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FBaUJBO0VBQ0UsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7QVhpMkRoQjs7QVcvMURnQjtFQUNFLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0FYazJEbEI7O0FXaDJEa0I7OztFQUdFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBWG0yRHBCOztBV2gyREE7RUFDRSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLHlCQUFBO0VBQ0Esa0JBQUE7RUFDQSx5Qk56Yk87RU0wYlAsY052Yk87RU13YlAsaUJBQUE7QVhtMkRGOztBWXgwRUE7O0dBQUE7QUFLQTtFQUNFLGlCQUFBO0VBQ0EsZUFBQTtFQUNBLHNCUDRDVTtBTDZ4RVo7O0FZdjBFRTtFTDZDQSxpQkYvQm9CO0VFZ0NwQix5QkFBQTtFQXdCQSxvQkZ4RG9CO0VFeURwQix5QkFBQTtFS3BFRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY1BpQ087QUwyeUVYO0FROXlESTtFSW5pQkY7SUxpREUsaUJGbENzQjtFTHMwRXhCO0FBQ0Y7QVFuekRJO0VJbmlCRjtJTHFERSxpQkZyQ2tCO0VMMDBFcEI7QUFDRjtBUXh6REk7RUluaUJGO0lMeURFLGlCRnhDa0I7RUw4MEVwQjtBQUNGO0FRN3pESTtFSW5pQkY7SUw2REUsaUJGM0NtQjtFTGsxRXJCO0FBQ0Y7QVFsMERJO0VJbmlCRjtJTDBFRSxvQkYzRHNCO0VMMDFFeEI7QUFDRjtBUXYwREk7RUluaUJGO0lMOEVFLG9CRjlEa0I7RUw4MUVwQjtBQUNGO0FRNTBESTtFSW5pQkY7SUxrRkUsb0JGakVrQjtFTGsyRXBCO0FBQ0Y7QVFqMURJO0VJbmlCRjtJTHNGRSxvQkZwRW1CO0VMczJFckI7QUFDRjs7QVlsM0VJO0VBQ0Usb0JBQUE7QVpxM0VOO0FRMTFESTtFSTVoQkE7SUFJSSxXQUFBO0VaczNFTjtBQUNGO0FZcDNFTTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBWnMzRVI7QVF2MkRJO0VJcmhCRTtJQVNJLFdBQUE7RVp1M0VSO0FBQ0Y7QVlyM0VRO0VMWE4sa0JGUnVCO0VFU3ZCLG1CRlR1QjtFRVV2Qix5QkFBQTtFS1dRLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7QVp5M0VWO0FReDNESTtFSXpnQkk7SUxOSixrQkZaeUI7SUVhekIsbUJGYnlCO0VMdzVFM0I7QUFDRjtBUTkzREk7RUl6Z0JJO0lMREosa0JGaEJxQjtJRWlCckIsbUJGakJxQjtFTDY1RXZCO0FBQ0Y7QVFwNERJO0VJemdCSTtJTElKLGtCRnBCcUI7SUVxQnJCLG1CRnJCcUI7RUxrNkV2QjtBQUNGO0FRMTRESTtFSXpnQkk7SUxTSixrQkZ4QnNCO0lFeUJ0QixtQkZ6QnNCO0VMdTZFeEI7QUFDRjtBUWg1REk7RUl6Z0JJO0lBV0ksV0FBQTtJQUNBLGVBQUE7RVprNUVWO0VZaDVFVTtJQUNFLFlBQUE7SUFDQSxjUERHO0lPRUgsa0JBQUE7SUFDQSxNQUFBO0lBQ0EsV0FBQTtFWms1RVo7RVk3NEVZO0lBQ0UsV0FBQTtFWis0RWQ7QUFDRjtBWTM0RVU7RUFDRSxXQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0EsZUFBQTtFQUNBLGNQekJEO0VPMEJDLGtCQUFBO0FaNjRFWjtBUTE2REk7RUkzZU07SUFXSSxXQUFBO0lBQ0EsY0FBQTtFWjg0RVo7QUFDRjs7QVl4NEVJO0VBQ0UsU0FBQTtFQUNBLFVBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7QVoyNEVOOztBQzU5RUE7RUFDRSxhQUFBO0VBQ0EsMkJBQUE7RUFDQSx1Q0FBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7QUQrOUVGO0FRLzdESTtFUHJpQko7SUFRSSxrQ0FBQTtJQUNBLGtDQUFBO0lBQ0EscUJBQUE7RURnK0VGO0FBQ0Y7QUNyOUVFO0VBQ0UscUJBQUE7RUFDQSxrQkFBQTtFQUNBLDZCQUFBO0FEdTlFSjtBUTM4REk7RVAvZ0JGO0lBTUkscUJBQUE7SUFDQSxrQkFBQTtFRHc5RUo7QUFDRjtBQ3Q5RUk7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSx3QkFBQTtBRHc5RU47O0FDcDlFRTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSw2QkFBQTtBRHU5RUo7QVE1OURJO0VQOWZGO0lBTUkscUJBQUE7SUFDQSxrQkFBQTtFRHc5RUo7QUFDRjtBQ3Q5RUk7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSx3QkFBQTtBRHc5RU47O0FDcDlFRTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSwwQkFBQTtFQUdBLGtCQUFBO0VBQ0EseUJJekJTO0VKMEJULGtCQUFBO0FEcTlFSjtBUWgvREk7RVA3ZUY7SUFXSSxxQkFBQTtJQUNBLGtCQUFBO0VEczlFSjtBQUNGO0FDcDlFSTtFQUNFLGlCQUFBO0FEczlFTjtBQ245RUk7RUFDRSxxQkFBQTtBRHE5RU47QUNsOUVJO0VBQ0UsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0FEbzlFTjtBQ2w5RU07RUFDRSxXQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLHlCSTFEQztBTDhnRlQ7O0FDLzhFRTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSw2QkFBQTtBRGs5RUo7QVFqaEVJO0VQcGNGO0lBTUkscUJBQUE7SUFDQSxrQkFBQTtFRG05RUo7QUFDRjtBQ2o5RUk7RUFDRSxrQkFBQTtBRG05RU47QUM1OEVJO0VBQ0UsZ0JBQUE7QUQ4OEVOIiwiZmlsZSI6Im1lZGlhLWNlbnRlci5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAgKiBNZWRpYSBDZW50ZXIgUEFHRSBTVFlMRVNIRUVUXG4gICpcbiAgKiBJbXBvcnQgY29tbW9uIHN0eWxlcyBhbmQgcGFnZS1zcGVjaWZpYyBzdHlsZXMgZm9yIFwiTWVkaWEgQ2VudGVyXCIuXG4gICovXG4vKipcbiAgKiBDT01NT04gQVJDSElWRSBTVFlMRVNcbiAgKlxuICAqIERlZmluZXMgdGhlIHN0eWxlcyB0byBpbXBvcnQgdGhhdCBhcmUgcmVxdWlyZWQgYnkgdmlydHVhbGx5IGFsbCBwYWdlcy5cbiAgKi9cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1idXR0b25dOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9cmVzZXRdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9c3VibWl0XTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9c2VhcmNoXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gICogQlJFQUtQT0lOVFNcbiAgKlxuICAqIERlZmluZSBicmVha3BvaW50cyBmb3IgbWVkaWEgcXVlcnkgdXNlIGFuZCBleHBvcnQgdGhlbSBmb3IgdXNlIHdpdGggSlMuXG4gICovXG4vKlxuZXhhbXBsZSB1c2FnZTpcbkBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1zbWFsbFwiKSB7Li4ufVxuKi9cbjpleHBvcnQge1xuICBicmVha3BvaW50UGhvbmVTbWFsbDogMzIwO1xuICBicmVha3BvaW50UGhvbmVMYXJnZTogNDgwO1xuICBicmVha3BvaW50VGFibGV0OiA3Njg7XG4gIGJyZWFrcG9pbnRMYXB0b3A6IDk5MjtcbiAgYnJlYWtwb2ludERlc2t0b3A6IDEyMDA7XG4gIGJyZWFrcG9pbnREZXNrdG9wTGFyZ2U6IDE0MDA7XG4gIGJyZWFrcG9pbnRIZDogMTkyMDtcbn1cblxuLyoqXG4gICogVkFSSUFCTEVTXG4gICovXG4vKipcbiAgKiBEaW1lbnNpb25zOlxuICAqL1xuLyoqXG4gICogQ29sb3JzOlxuICAqL1xuLyoqXG4gICogRk9OVFNcbiAgKlxuICAqIERlZmluZSBAZm9udC1mYWNlIHN0eWxlcy5cbiAgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogQW1lcmljYW4gVHlwZXdyaXRlcjtcbiAgc3JjOiB1cmwoLi4vZm9udHMvQW1lcmljYW5UeXBld3JpdGVyLVJlZ3VsYXIudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLypcbi8vIFJvYm90by1SZWd1bGFyLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUm9ib3RvO1xuICBzcmM6IHVybCguLi9mb250cy9Sb2JvdG8tUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIFJvYm90by1Cb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JvYm90by1Cb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhamRoYW5pO1xuICBzcmM6IHVybCguLi9mb250cy9SYWpkaGFuaS1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmFqZGhhbmk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JhamRoYW5pLU1lZGl1bS50dGYpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhamRoYW5pO1xuICBzcmM6IHVybCguLi9mb250cy9SYWpkaGFuaS1TZW1pQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhamRoYW5pO1xuICBzcmM6IHVybCguLi9mb250cy9SYWpkaGFuaS1Cb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmFqZGhhbmk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JhamRoYW5pLUV4dHJhQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhamRoYW5pO1xuICBzcmM6IHVybCguLi9mb250cy9SYWpkaGFuaS1CbGFjay50dGYpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKlxuLy8gTW9udHNlcnJhdC1SZWd1bGFyLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdDtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTW9udHNlcnJhdC1Cb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuICBzcmM6IHVybCguLi9mb250cy9Nb250c2VycmF0LUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuKi9cbi8qXG4vLyBNYXZlblByby1SZWd1bGFyLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLVJlZ3VsYXIudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBNYXZlblByby1NZWRpdW0udHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1hdmVuIFBybztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWF2ZW5Qcm8tTWVkaXVtLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTWF2ZW5Qcm8tU2VtaUJvbGQudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1hdmVuIFBybztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWF2ZW5Qcm8tU2VtaUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBNYXZlblByby1Cb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNYXZlbiBQcm87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01hdmVuUHJvLUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBNYXZlblByby1FeHRyYUJvbGQudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1hdmVuIFBybztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWF2ZW5Qcm8tRXh0cmFCb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTWF2ZW5Qcm8tQmxhY2sudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1hdmVuIFBybztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWF2ZW5Qcm8tQmxhY2sudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuKi9cbi8qXG5DZW50dXJ5IE9sZCBTdHlsZSBTdGQgQm9sZFxuXG5mb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDcwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5DZW50dXJ5IE9sZCBTdHlsZSBTdGQgSXRhbGljXG5cbmZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNDAwO1xuXG5mb250LXN0eWxlOiBpdGFsaWM7XG5cbkNlbnR1cnkgT2xkIFN0eWxlIFN0ZCBSZWd1bGFyXG5cbmZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNDAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbiovXG4vKlxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGRcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDcwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gQm9sZCBJdGFsaWNcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDcwMDtcblxuZm9udC1zdHlsZTogaXRhbGljO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gTGlnaHRcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDMwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gTGlnaHQgSXRhbGljXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlciwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiAzMDA7XG5cbmZvbnQtc3R5bGU6IGl0YWxpYztcblxuQW1lcmljYW4gVHlwZXdyaXRlciBJVEMgUHJvIEJvbGQgQ29uZGVuc2VkXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlci1jb25kLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDcwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gTGlnaHQgQ29uZGVuc2VkXG5cbmZvbnQtZmFtaWx5OiBpdGMtYW1lcmljYW4tdHlwZXdyaXRlci1jb25kLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDMwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG4qL1xuLyoqXG4gICogTUlYSU5TXG4gICovXG4ud3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbm5lci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmNvbnRhaW5lciB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cblxuLnNwYWNlci10b3Age1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuc3BhY2VyLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3BhY2VyLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuc3BhY2VyLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnNwYWNlci10b3Age1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICB9XG59XG5cbi5zcGFjZXItYm90dG9tIHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnNwYWNlci1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNwYWNlci1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnNwYWNlci1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zcGFjZXItYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4uYnV0dG9uLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qXG5AbWl4aW4gY2F0ZWdvcnkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy8gL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDYyNWVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY2F0ZWdvcnkge1xuICBAaW5jbHVkZSBjYXRlZ29yeTtcbn1cbiovXG4udGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGNvbG9yOiAjMjIyO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDYyNWVtO1xufVxuLnRhZyB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzk5OTk5OTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0MjVlbTtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4ubm8tc2Nyb2xsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyoqXG4gICogRUxFTUVOVCBBUkNISVZFIFNUWUxFU1xuICAqXG4gICogU3R5bGUgZGVmaW5pdGlvbnMgZm9yIGdsb2JhbCBlbGVtZW50IHNlbGVjdG9ycy5cbiAgKi9cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG59XG5cbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byAxZnIgYXV0bztcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzIyMjtcbiAgZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5oMSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNHJlbTtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5oMiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuM3JlbTtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OTA5ZW07XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDIwcHggMDtcbiAgcGFkZGluZzogMjBweCAwIDI1cHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuaDI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDM0JTtcbiAgaGVpZ2h0OiAycHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMzMlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xufVxuXG5oMyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OTA5ZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG5oNCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oNSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM4ODU1MDA7XG59XG51bCwgb2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cblxuaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLyogYmVnaW4gYnV0dG9uIHN0eWxlcyAqL1xuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKiBlbmQgYnV0dG9uIHN0eWxlcyAqL1xuYmxvY2txdW90ZSB7XG4gIGJvcmRlci1yaWdodDogM3B4IHNvbGlkICMyMjIyMjI7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgIzIyMjIyMjtcbiAgbWFyZ2luOiAyMHB4IDEwcHggNDBweCAyMHB4O1xuICBwYWRkaW5nOiAwIDQwcHggMCAzMHB4O1xuICBxdW90ZXM6IFwi4oCcXCIgXCLigJ1cIiBcIuKAmFwiIFwi4oCZXCI7XG59XG5ibG9ja3F1b3RlOmJlZm9yZSB7XG4gIGNvbG9yOiAjY2NjO1xuICBjb250ZW50OiBvcGVuLXF1b3RlO1xuICBmb250LXNpemU6IDRlbTtcbiAgbGluZS1oZWlnaHQ6IDAuMWVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjRlbTtcbiAgZm9udC1zaXplOiA0ZW07XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTAuNGVtO1xufVxuYmxvY2txdW90ZTphZnRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgY29udGVudDogY2xvc2UtcXVvdGU7XG59XG5ibG9ja3F1b3RlIHAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbmJsb2NrcXVvdGUgcDpmaXJzdC1vZi10eXBlLCBibG9ja3F1b3RlIHA6bnRoLW9mLXR5cGUoMikge1xuICBmb250LXNpemU6IDEuMXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBibG9ja3F1b3RlIHA6Zmlyc3Qtb2YtdHlwZSwgYmxvY2txdW90ZSBwOm50aC1vZi10eXBlKDIpIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgfVxufVxuYmxvY2txdW90ZSBwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIEJFR0lOIEFyY2hpdmUgbWFzdGhlYWQgc3R5bGVzICovXG4uaGVhZGVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBncmlkLXJvdy1zdGFydDogMTtcbiAgZ3JpZC1yb3ctZW5kOiAyO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMsIGJvcmRlciAyMDBtcywgYm94LXNoYWRvdyAyMDBtcztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZWRlODtcbiAgYm94LXNoYWRvdzogMCA0cHggMTBweCAtNXB4ICMwMDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItdG9wOiA1cHggc29saWQgIzIyMjIyMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLXdyYXAge1xuICAgIGdyaWQtcm93LXN0YXJ0OiAyO1xuICAgIGdyaWQtcm93LWVuZDogMztcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxufVxuXG4vKlxuLnRvcC1iYXItYmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcblxuICAmLmJnLXZpc2libGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiovXG4uaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDEwNXB4O1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcztcbiAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgOTBweDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzIyMjIyMjtcbiAgfVxufVxuLmhlYWRlci1icmFuZCB7XG4gIG1pbi1oZWlnaHQ6IDgwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMS9zcGFuIDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNTtcbiAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCAjMjIyMjIyO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzIyMjIyMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIHtcbiAgICBncmlkLWNvbHVtbjogMS9zcGFuIDI7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMyMjIyMjI7XG4gICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5oZWFkZXItYnJhbmQgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzAwMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIGEge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG4gIGJvcmRlci10b3A6IHVuc2V0O1xuICBib3JkZXItYm90dG9tOiB1bnNldDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMC45O1xuICBmb250LXNpemU6IDEuMXJlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSAubG9nby10ZXh0LXRpdGxlLWRvbWFpbiB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSAubG9nby10ZXh0LXRpdGxlLXRyYWRlbWFyayB7XG4gIGNvbG9yOiAjOWY4YzZkO1xuICBjb2xvcjogIzIyMjIyMjtcbiAgZm9udC1zaXplOiAwLjVlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGFnbGluZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjMjIyMjIyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDMyMHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRhZ2xpbmUge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCAubG9nby10ZXh0LXRhZ2xpbmUge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICB9XG59XG5cbi5oZWFkZXItbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgbWluLWhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDU7XG59XG4uaGVhZGVyLW5hdi5iZy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZWRlODtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdiB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZ3JpZC1yb3c6IDI7XG4gIH1cbn1cblxuLm1haW4tbmF2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB6LWluZGV4OiA2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICB9XG59XG4ubWFpbi1uYXYgdWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjODg4ODg4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogNDVweDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjODg4ODg4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDM7XG4gIGZsZXgtYmFzaXM6IGF1dG87XG4gIGZsZXgtZ3JvdzogMTtcbn1cbi5tYWluLW5hdiB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgIzIyMjIyMjtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjMjIyMjIyO1xufVxuLm1haW4tbmF2IHVsIGxpOmZpcnN0LWNoaWxkIGEge1xuICBjb2xvcjogIzIyMjIyMjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYzBlZGZmLCAjZmJkNGQ2IDEwMCUpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgdHJhbnNpdGlvbjogZGlzcGxheSAzMDBtcztcbiAgfVxuICAubWFpbi1uYXYgdWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5tYWluLW5hdiB1bCBsaSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDVweDtcbiAgcGFkZGluZzogMCAwIDAgMS41ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMjIyMjIyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG59XG4ubWFpbi1uYXYgdWwgbGkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSBhIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIGEge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG4ubWFpbi1uYXYgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xufVxuLm1haW4tbmF2IHVsIGxpLmN1cnJlbnRfcGFnZV9pdGVtIGEge1xuICBjb2xvcjogI2YwZWRlODtcbn1cbi5tYWluLW5hdiB1bCBsaS5jdXJyZW50LXBhZ2UtYW5jZXN0b3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xufVxuLm1haW4tbmF2IHVsIGxpLmN1cnJlbnQtcGFnZS1hbmNlc3RvciBhIHtcbiAgY29sb3I6ICNmMGVkZTg7XG59XG4ubWFpbi1uYXYgdWwgbGkgLm5hdi1jaGV2cm9uIHtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFpbi1uYXYgdWwgbGkgLm5hdi1jaGV2cm9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZWRlODtcbiAgYm94LXNoYWRvdzogMCA0cHggMTBweCAtNXB4ICMwMDA7XG4gIC8qXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRtZWRpdW1HcmF5O1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTJweDtcbiAgICByaWdodDogLTFweDtcbiAgICB6LWluZGV4OiAxMDAxO1xuICB9XG4gICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIHVsIHtcbiAgICBtaW4td2lkdGg6IDMyMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDQ1cHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bztcbiAgfVxufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gIGhlaWdodDogYXV0bztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjIyMjIyO1xufVxuLm1haW4tbmF2IHVsIGxpIHVsIGxpOm50aC1jaGlsZCgxKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICBjb2xvcjogIzIyMjIyMjtcbn1cbi5tYWluLW5hdiB1bCBsaSB1bCBsaTpudGgtY2hpbGQoMSkgYSB7XG4gIGNvbG9yOiAjMjIyMjIyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYWluLW5hdiB1bCBsaSB1bCBsaSB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICB9XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGkgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHBhZGRpbmctbGVmdDogM2VtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5tYWluLW5hdiB1bCBsaSB1bCBsaSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1haW4tbmF2IHVsIGxpIHVsIGxpIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGkgdWwgbGkgYSB7XG4gIHBhZGRpbmctbGVmdDogNC41ZW07XG59XG4ubWFpbi1uYXYgdWwgbGkgdWwgbGkgdWwgbGkgdWwgbGkgYSB7XG4gIHBhZGRpbmctbGVmdDogNmVtO1xufVxuLm1haW4tbmF2IHVsIGxpLnNsaWRlLWxpbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDI7XG4gIGJvdHRvbTogLTJweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogNDlweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItdG9wOiAycHggZG90dGVkICNmMGVkZTg7XG4gIGJvcmRlci1ib3R0b206IDJweCBkb3R0ZWQgI2YwZWRlODtcbiAgdHJhbnNpdGlvbjogd2lkdGggMzAwbXMsIGxlZnQgMzAwbXM7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhlYWRlci1uYXYtdG9wIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgei1pbmRleDogNjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuLmhlYWRlci1uYXYtdG9wLnZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdi10b3Age1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDVweDtcbiAgICByaWdodDogLTQ1cHg7XG4gICAgei1pbmRleDogNjtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGVhZGVyLW5hdi10b3AgdWwge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjb2x1bW4tZ2FwOiAzMHB4O1xuICBmbGV4LWZsb3c6IGNvbHVtbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdi10b3AgdWwge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDEwcHggLTVweCAjMDAwO1xuICB9XG59XG4uaGVhZGVyLW5hdi10b3AgdWwgbGkge1xuICBwYWRkaW5nOiAwIDAgMCAxLjJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDVweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4ODg4ODg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdi10b3AgdWwgbGkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGVkZTg7XG4gICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyMjIyMjI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuLmhlYWRlci1uYXYtdG9wIHVsIGxpIC51c2VyLWxvZ2luLWxvZ291dC1pY29uIHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cbi5oZWFkZXItbmF2LXRvcCB1bCBsaSBhIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzIyMjIyMjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtdG9wIHVsIGxpIGEge1xuICAgIGhlaWdodDogNDVweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4uaGVhZGVyLW5hdi10b3AgdWwgbGkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4vKlxuLmhlYWRlci1uYXYtdG9wIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgei1pbmRleDogNjtcbiAgLy9kaXNwbGF5OiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkb2ZmV2hpdGU7XG4gIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZWRpdW1HcmF5O1xuICBjbGVhcjogYm90aDtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgd2lkdGg6IDUwJTsgLy8gYXJiaXRyYXJ5IC0ganVzdCBuZWVkcyB0byBiZSB3aWRlIGVub3VnaCB0byBhY2NvbW9kYXRlIG5hdiBpdGVtc1xuICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAvL3BhZGRpbmctcmlnaHQ6IDA7XG4gICAgLy9oZWlnaHQ6IDM1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMzZweDtcbiAgICB6LWluZGV4OiA2O1xuICAgIC8vcmlnaHQ6IDA7XG4gICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAvL2JhY2tncm91bmQtY29sb3I6ICRsaWdodEdyYXk7XG4gICAgLy9jbGVhcjogYm90aDtcbiAgfVxuXG4gIHVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvL2hlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBjb2x1bW4tZ2FwOiAzMHB4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gICAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlO1xuICAgICAgLy9oZWlnaHQ6IDM1cHg7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgLy9saXN0LXN0eWxlOiBub25lO1xuICAgICAgLy9mbG9hdDogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogNDVweDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIC8vcGFkZGluZzogLjUyNWVtIDNlbSAwIDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcblxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgLy90ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuKi9cbi5oZWFkZXItYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDVweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuICBib3JkZXItdG9wOiAzcHggc29saWQgIzIyMjIyMjtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMyMjIyMjI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHotaW5kZXg6IDY7XG4gIGdyaWQtY29sdW1uOiAyL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDEvc3BhbiAyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMDtcbiAgICBncmlkLWNvbHVtbjogMjtcbiAgICBncmlkLXJvdzogMjtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICB9XG59XG5cbi5nbGFzcyB7XG4gIHdpZHRoOiA0NXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0b3A6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5nbGFzcyB7XG4gICAgYm9yZGVyOiB1bnNldDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xuICB9XG59XG4uZ2xhc3MgaSB7XG4gIGNvbG9yOiAjMjIyMjIyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5nbGFzcyBpIHtcbiAgICBjb2xvcjogI2YwZWRlODtcbiAgfVxufVxuXG4uYnVyZ2VyIHtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5idXJnZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5idXJnZXIgaSB7XG4gIGNvbG9yOiAjMjIyMjIyO1xufVxuLmJ1cmdlciBpOmhvdmVyIHtcbiAgY29sb3I6ICMyMjI7XG59XG5cbi5hY2NvdW50IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWNjb3VudCB7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uYWNjb3VudCBpIHtcbiAgY29sb3I6ICMyMjIyMjI7XG59XG4uYWNjb3VudCBpOmhvdmVyIHtcbiAgY29sb3I6ICMyMjI7XG59XG5cbi5zaXRlLXNlYXJjaC13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZWRlODtcbiAgei1pbmRleDogNjtcbiAgYm94LXNoYWRvdzogMCA0cHggMTBweCAtNXB4ICMwMDA7XG4gIGJvcmRlci10b3A6IHVuc2V0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgIzIyMjIyMjtcbiAgfVxufVxuLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5zaXRlLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnNpdGUtc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc2l0ZS1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5cbi5zaXRlLXNlYXJjaCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMzVweCAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MHB4O1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtc2VhcmNoIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgfVxufVxuXG4uc2VhcmNoLXF1ZXJ5IHtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nOiAwO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiAxO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNlYXJjaC1xdWVyeSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLnNlYXJjaC1xdWVyeSBsYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzBweDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogYmxhY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2VhcmNoLXF1ZXJ5IGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMyMjIyMjI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzIyMjIyMjtcbn1cblxuLnNlYXJjaC1jb250ZXh0IHtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiAyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNlYXJjaC1jb250ZXh0IHtcbiAgICBncmlkLWNvbHVtbjogMi9zcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gICAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgfVxufVxuLnNlYXJjaC1jb250ZXh0IGxhYmVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMHB4O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2VhcmNoLWNvbnRleHQgc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZWZlZmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzIyMjtcbn1cbi5zZWFyY2gtY29udGV4dCBzZWxlY3Qgb3B0aW9uIHtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xufVxuXG4uc2VhcmNoLXN1Ym1pdCB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGdyaWQtY29sdW1uOiAyL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDE7XG4gIGFsaWduLXNlbGY6IHN0YXJ0O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNlYXJjaC1zdWJtaXQge1xuICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICB9XG59XG4uc2VhcmNoLXN1Ym1pdDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ODg4ODg7XG59XG5cbi5oZWFkZXItYmFubmVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBncmlkLXJvdy1zdGFydDogMjtcbiAgZ3JpZC1yb3ctZW5kOiAzO1xuICBhc3BlY3QtcmF0aW86IDEwLzM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1iYW5uZXItd3JhcCB7XG4gICAgZ3JpZC1yb3ctc3RhcnQ6IDE7XG4gICAgZ3JpZC1yb3ctZW5kOiAyO1xuICB9XG59XG5cbi5oZWFkZXItYmFubmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDgwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKiBFTkQgQXJjaGl2ZSBtYXN0aGVhZCBzdHlsZXMgKi9cbi8qKlxuICAqIENPTlRFTlQgU1RZTEVTXG4gICovXG4ubWFpbi13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZ3JpZC1yb3ctc3RhcnQ6IDM7XG4gIGdyaWQtcm93LWVuZDogNDtcbn1cbi5tYWluIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucGFnZS1jb250ZW50LXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucGFnZS1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICB9XG59XG5cbi5wYWdlLWNvbnRlbnQuc2lkZSB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtY29udGVudC5zaWRlIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyODZweDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMHB4O1xuICB9XG59XG5cbi5wYWdlLW1haW4ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1tYWluIHtcbiAgICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gIH1cbn1cbi5wYWdlLW1haW4gaDEge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgcGFkZGluZzogMjVweCAwIDI1cHggMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci10b3A6IDRweCBkb3R0ZWQgIzIyMjIyMjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzIyMjIyMjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucGFnZS1tYWluIGgxOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiA0NCU7XG4gIGhlaWdodDogM3B4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDI4JTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcbn1cbi5wYWdlLW1haW4gaDIge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuLnBhZ2UtbWFpbiBoMjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ucGFnZS1tYWluIGgzIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5wYWdlLW1haW4gaDQge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuLnBhZ2UtbWFpbiBoNSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4ucGFnZS1tYWluIGg2IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5wYWdlLW1haW4gcCB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG4ucGFnZS1tYWluIHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xufVxuLnBhZ2UtbWFpbiB1bCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5zaWRlIC5wYWdlLW1haW4ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaWRlIC5wYWdlLW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICB9XG59XG5cbi5wYWdlLWhlYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA4MCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBzY3JlZW47XG59XG4ucGFnZS1oZWFkZXItb3ZlcmxheSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAwLjgpLCByZ2JhKDAsIDAsIDAsIDAuOCkpO1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5wYWdlLWhlYWRlci1ib3gtd3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZy10b3A6IDE3NXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveC13cmFwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICAgIHBhZGRpbmctdG9wOiAxOTVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveC13cmFwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveC13cmFwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveC13cmFwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gtd3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cblxuLnBhZ2UtaGVhZGVyLWJveCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAvKi5sb2dvIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDQwcHg7XG4gICAgcmlnaHQ6IDQwcHg7XG4gIH0qL1xuICAvKmEge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfSovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveCB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtaGVhZGVyLWJveCB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXItYm94IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3gge1xuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xuICB9XG59XG4ucGFnZS1oZWFkZXItYm94IGgxIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3ggaDEge1xuICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICB9XG59XG4ucGFnZS1oZWFkZXItYm94IHAge1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWhlYWRlci1ib3ggcCB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbn1cblxuLnBhZ2Utc2lkZWJhciB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogMTAwJTtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBncmlkLWNvbHVtbjogMi9zcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gIH1cbn1cblxuLnBhZ2Utc2lkZWJhci1oZWFkaW5nIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgbWFyZ2luOiAxMHB4IDAgMCAwO1xuICBwYWRkaW5nOiAxNXB4IDAgMTVweCAxNXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICNlMGUwZTA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ODg4ODg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnBhZ2Utc2lkZWJhci1oZWFkaW5nOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwIDAgMCAwO1xufVxuXG4uc2lkZS1uYXYge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLnNpZGUtbmF2IHVsLm1lbnUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg4ODg4ODtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbn1cbi5zaWRlLW5hdiB1bC5tZW51IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaW5lLWhlaWdodDogNDVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZWZlZmU7XG4gIC8qLmN1cnJlbnRfcGFnZV9pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICBjb2xvcjogJG9mZldoaXRlO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJG9mZldoaXRlO1xuICAgIH1cbiAgfSovXG59XG4uc2lkZS1uYXYgdWwubWVudSBsaSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDVweDtcbiAgcGFkZGluZzogMCAwIDAgMTVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gIGNvbG9yOiAjMjIyMjIyO1xufVxuLnNpZGUtbmF2IHVsLm1lbnUgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiAjMjIyO1xufVxuLnNpZGUtbmF2IHVsLm1lbnUgbGkgdWwuc3ViLW1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBlMGUwO1xufVxuLnNpZGUtbmF2IHVsLm1lbnUgbGkgdWwuc3ViLW1lbnUgbGkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZlZmVmZTtcbn1cbi5zaWRlLW5hdiB1bC5tZW51IGxpIHVsLnN1Yi1tZW51IGxpIGEge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIGNvbG9yOiAjMjIyMjIyO1xufVxuLnNpZGUtbmF2IHVsLm1lbnUgbGkgdWwuc3ViLW1lbnUgbGkgdWwuc3ViLW1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuLnNpZGUtbmF2IHVsLm1lbnUgbGkgdWwuc3ViLW1lbnUgbGkgdWwuc3ViLW1lbnUgbGkgYSB7XG4gIHBhZGRpbmctbGVmdDogNDVweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLypcbiAgICAgICAgICAubGlzdGluZ3Mge1xuXG4gICAgICAgICAgfVxuICAgICAgICAgICAgLmxpc3Rpbmcge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyODBweCAxZnI7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGlnaHRHcmF5O1xuXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5saXN0aW5nLWxlZnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtHcmF5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAubGlzdGluZy1yaWdodCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICAgICAgICB9XG4qL1xuLnN1YnRpdGxlLCBwLnN1YnRpdGxlLCBoMy5zdWJ0aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc3VidGl0bGU6OmFmdGVyLCBwLnN1YnRpdGxlOjphZnRlciwgaDMuc3VidGl0bGU6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDglO1xuICBoZWlnaHQ6IDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA0NiU7XG4gIGJvcmRlci10b3A6IDJweCBkb3R0ZWQgIzIyMjIyMjtcbn1cblxuLypcbi5pZnJhbWUtY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaWZyYW1lLWNvbnRhaW5lciBpZnJhbWUge1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuKi9cbi5lbWJlZC1jb250YWluZXItd3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBtYXJnaW46IDIwcHggYXV0bztcbn1cblxuLmVtYmVkLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4uZW1iZWQtY29udGFpbmVyIGVtYmVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wb3N0LWNhdCB7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7XG4gIGNvbG9yOiAjZjBlZGU4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gICogRk9PVEVSIFNUWUxFU1xuICAqL1xuLmZvb3Rlci13cmFwIHtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDQ7XG4gIGdyaWQtcm93LWVuZDogNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbn1cblxuLmZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbn1cblxuLmZvb3Rlci1uYXYge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbi5mb290ZXItbmF2IHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4uZm9vdGVyLW5hdiB1bCBsaSB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBwYWRkaW5nOiA1cHggMTBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuICAuZm9vdGVyLW5hdiB1bCBsaTphZnRlciB7XG4gICAgY29udGVudDogXCJ8XCI7XG4gICAgY29sb3I6ICM5OTk5OTk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogLTJweDtcbiAgfVxuICAuZm9vdGVyLW5hdiB1bCBsaTpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4uZm9vdGVyLW5hdiB1bCBsaSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSBhIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDVweDtcbiAgfVxufVxuXG4uY29weXJpZ2h0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm1lZGlhLWNlbnRlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gYXV0byBhdXRvO1xuICBncmlkLWNvbHVtbi1nYXA6IDA7XG4gIGdyaWQtcm93LWdhcDogMzBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1lZGlhLWNlbnRlciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMSUgMzElIDMxJTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvO1xuICAgIGdyaWQtY29sdW1uLWdhcDogMy41JTtcbiAgfVxufVxuLm1lZGlhLWNlbnRlci13ZWItbGF1bmNoIHtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMS9zcGFuIDE7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMjIyMjIyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWVkaWEtY2VudGVyLXdlYi1sYXVuY2gge1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMjtcbiAgICBncmlkLXJvdzogMS9zcGFuIDE7XG4gIH1cbn1cbi5tZWRpYS1jZW50ZXItd2ViLWxhdW5jaCBpbWcge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogMTBweCAwIDE1cHggMzBweDtcbn1cblxuLm1lZGlhLWNlbnRlci01MHRoIHtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMi9zcGFuIDE7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMjIyMjIyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWVkaWEtY2VudGVyLTUwdGgge1xuICAgIGdyaWQtY29sdW1uOiAxL3NwYW4gMjtcbiAgICBncmlkLXJvdzogMi9zcGFuIDE7XG4gIH1cbn1cbi5tZWRpYS1jZW50ZXItNTB0aCBpbWcge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogMTBweCAwIDE1cHggMzBweDtcbn1cblxuLm1lZGlhLWNlbnRlci1pbnF1aXJpZXMge1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiA0L3NwYW4gMTtcbiAgYm9yZGVyOiAycHggZG90dGVkICMyMjIyMjI7XG4gIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWVkaWEtY2VudGVyLWlucXVpcmllcyB7XG4gICAgZ3JpZC1jb2x1bW46IDMvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxL3NwYW4gMjtcbiAgfVxufVxuLm1lZGlhLWNlbnRlci1pbnF1aXJpZXMgLmlucXVpcmllcy1jb250YWN0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ubWVkaWEtY2VudGVyLWlucXVpcmllcyAuaW5xdWlyaWVzLWVtYWlsIHtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xufVxuLm1lZGlhLWNlbnRlci1pbnF1aXJpZXMgLnRvcC1zZXBhcmF0ZWQge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm1lZGlhLWNlbnRlci1pbnF1aXJpZXMgLnRvcC1zZXBhcmF0ZWQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxNCU7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDQzJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjtcbn1cblxuLm1lZGlhLWNlbnRlci1hYm91dCB7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDMvc3BhbiAxO1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzIyMjIyMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1lZGlhLWNlbnRlci1hYm91dCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAzO1xuICAgIGdyaWQtcm93OiAzL3NwYW4gMTtcbiAgfVxufVxuLm1lZGlhLWNlbnRlci1hYm91dCBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZWRpYS1jZW50ZXItYWJvdXQgaDMge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufSIsIi8qKlxuICAqIE1lZGlhIENlbnRlciBQQUdFIFNUWUxFU0hFRVRcbiAgKlxuICAqIEltcG9ydCBjb21tb24gc3R5bGVzIGFuZCBwYWdlLXNwZWNpZmljIHN0eWxlcyBmb3IgXCJNZWRpYSBDZW50ZXJcIi5cbiAgKi9cblxuQGltcG9ydCAncGFydGlhbHMvX2NvbW1vbi1hcmNoaXZlJzsgICAgIC8vIGNvbW1vbiBzdHlsZXNcblxuLm1lZGlhLWNlbnRlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTAwJTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gYXV0byBhdXRvO1xuICBncmlkLWNvbHVtbi1nYXA6IDA7XG4gIGdyaWQtcm93LWdhcDogMzBweDtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMSUgMzElIDMxJTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvO1xuICAgIGdyaWQtY29sdW1uLWdhcDogMy41JTtcbiAgICAvL2dyaWQtcm93LWdhcDogMzBweDtcbiAgfVxuXG4gIGgyIHtcbiAgICAvL3RleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAmOmFmdGVyIHtcblxuICAgIH1cbiAgfVxufVxuICAubWVkaWEtY2VudGVyLXdlYi1sYXVuY2gge1xuICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxIC8gc3BhbiAxO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYmxhY2s7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMjtcbiAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAxO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgbWFyZ2luOiAxMHB4IDAgMTVweCAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5tZWRpYS1jZW50ZXItNTB0aCB7XG4gICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDIgLyBzcGFuIDE7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRibGFjaztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgICAgZ3JpZC1yb3c6IDIgLyBzcGFuIDE7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgICBtYXJnaW46IDEwcHggMCAxNXB4IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgLm1lZGlhLWNlbnRlci1pbnF1aXJpZXMge1xuICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgIGdyaWQtcm93OiA0IC8gc3BhbiAxO1xuICAgIGJvcmRlcjogMnB4IGRvdHRlZCAkYmxhY2s7XG4gICAgLy9ib3JkZXItdG9wOiAycHggc29saWQgJGJsYWNrO1xuICAgIC8vYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkYmxhY2s7XG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodENyZWFtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgIGdyaWQtY29sdW1uOiAzIC8gc3BhbiAxO1xuICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG4gICAgfVxuXG4gICAgLmlucXVpcmllcy1jb250YWN0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC5pbnF1aXJpZXMtZW1haWwge1xuICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIH1cblxuICAgIC50b3Atc2VwYXJhdGVkIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6IDE0JTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogNDMlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lZGlhLWNlbnRlci1hYm91dCB7XG4gICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDMgLyBzcGFuIDE7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRibGFjaztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAzO1xuICAgICAgZ3JpZC1yb3c6IDMgLyBzcGFuIDE7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAmOmFmdGVyIHtcblxuICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG4iLCIvKipcbiAgKiBDT01NT04gQVJDSElWRSBTVFlMRVNcbiAgKlxuICAqIERlZmluZXMgdGhlIHN0eWxlcyB0byBpbXBvcnQgdGhhdCBhcmUgcmVxdWlyZWQgYnkgdmlydHVhbGx5IGFsbCBwYWdlcy5cbiAgKi9cblxuXG4vLyBpbXBvcnQgbGlicmFyaWVzOlxuQGltcG9ydCAnLi4vbGlicmFyaWVzL19pbmNsdWRlLW1lZGlhLnNjc3MnOyAvLyBcIkluY2x1ZGUtTWVkaWFcIiBtZWRpYSBxdWVyeSBsaWJyYXJ5IChwcm92aWRlcyBicmVha3BvaW50IGZ1bmN0aW9uYWxpdHkgZm9yIHJlc3BvbnNpdmUgZGVzaWduKVxuQGltcG9ydCAnLi4vbGlicmFyaWVzL19ub3JtYWxpemUuc2Nzcyc7ICAgICAvLyBcIk5vcm1hbGl6ZVwiIGNzcyByZXNldCBsaWJyYXJ5XG5cbi8vIGdsb2JhbCBzdHlsZXMgYW5kIGRlcGVuZGVuY2llczpcbkBpbXBvcnQgJ2NvbW1vbi9fYnJlYWtwb2ludHMubW9kdWxlcyc7ICAgICAgLy8gYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgbWVkaWEgcXVlcnkgdXNlXG5AaW1wb3J0ICdjb21tb24tYXJjaGl2ZS9fdmFyaWFibGVzJzsgICAgICAgICAgICAgICAgLy8gZ2VuZXJhbCB2YXJpYWJsZSBkZWZpbml0aW9ucyAoY29sb3JzLCBkaW1lbnNpb25zLCBldGMuKVxuQGltcG9ydCAnY29tbW9uL19mb250cyc7ICAgICAgICAgICAgICAgICAgICAvLyBAZm9udC1mYWNlIGRlZmluaXRpb25zXG5AaW1wb3J0ICdjb21tb24vX21peGlucyc7ICAgICAgICAgICAgICAgICAgIC8vIG1peGluIGFuZCBhc3NvY2lhdGVkIGNsYXNzIGRlZmluaXRpb25zXG5AaW1wb3J0ICdjb21tb24tYXJjaGl2ZS9fZWxlbWVudHMnOyAgICAgICAgIC8vIGdsb2JhbCBlbGVtZW50IHNlbGVjdG9yIHN0eWxlc1xuQGltcG9ydCAnY29tbW9uLWFyY2hpdmUvX2hlYWRlcic7ICAgICAgICAgIC8vIGhlYWRlciBzdHlsZXNcbkBpbXBvcnQgJ2NvbW1vbi1hcmNoaXZlL19jb250ZW50JzsgICAgICAgICAgICAgICAgICAvLyBjb250ZW50IHN0eWxlc1xuQGltcG9ydCAnY29tbW9uL19mb290ZXInOyAgICAgICAgICAgICAgICAgICAvLyBmb290ZXIgc3R5bGVzXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyoqXG4gICogQlJFQUtQT0lOVFNcbiAgKlxuICAqIERlZmluZSBicmVha3BvaW50cyBmb3IgbWVkaWEgcXVlcnkgdXNlIGFuZCBleHBvcnQgdGhlbSBmb3IgdXNlIHdpdGggSlMuXG4gICovXG5cblxuLy8gZGVmaW5lIGJyZWFrcG9pbnRzIGhlcmUgKGluIHBpeGVscyk6XG4kYnJlYWtwb2ludC1waG9uZS1zbWFsbDogICAgMzIwO1xuJGJyZWFrcG9pbnQtcGhvbmUtbGFyZ2U6ICAgIDQ4MDtcbiRicmVha3BvaW50LXRhYmxldDogICAgICAgICA3Njg7XG4kYnJlYWtwb2ludC1sYXB0b3A6ICAgICAgICAgOTkyO1xuJGJyZWFrcG9pbnQtZGVza3RvcDogICAgICAgMTIwMDtcbiRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U6IDE0MDA7XG4kYnJlYWtwb2ludC1oZDogICAgICAgICAgICAxOTIwO1xuXG4vLyBmb3JtYXQgYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgdXNlIHdpdGggaW5jbHVkZS1tZWRpYS5zY3NzIGxpYnJhcnk6XG4vKlxuZXhhbXBsZSB1c2FnZTpcbkBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1zbWFsbFwiKSB7Li4ufVxuKi9cbiRicmVha3BvaW50czogKFxuICAncGhvbmUtc21hbGwnOiAgICRicmVha3BvaW50LXBob25lLXNtYWxsICogMXB4LFxuICAncGhvbmUtbGFyZ2UnOiAgICRicmVha3BvaW50LXBob25lLWxhcmdlICogMXB4LFxuICAndGFibGV0JzogICAgICAgICRicmVha3BvaW50LXRhYmxldCAqIDFweCxcbiAgJ2xhcHRvcCc6ICAgICAgICAkYnJlYWtwb2ludC1sYXB0b3AgKiAxcHgsXG4gICdkZXNrdG9wJzogICAgICAgJGJyZWFrcG9pbnQtZGVza3RvcCAqIDFweCxcbiAgJ2Rlc2t0b3AtbGFyZ2UnOiAkYnJlYWtwb2ludC1kZXNrdG9wLWxhcmdlICogMXB4LFxuICAnaGQnOiAgICAgICAgICAgICRicmVha3BvaW50LWhkICogMXB4XG4pO1xuXG4vLyBleHBvcnQgYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgSlMgdXNlOlxuOmV4cG9ydCB7XG4gIGJyZWFrcG9pbnRQaG9uZVNtYWxsOiAkYnJlYWtwb2ludC1waG9uZS1zbWFsbDtcbiAgYnJlYWtwb2ludFBob25lTGFyZ2U6ICRicmVha3BvaW50LXBob25lLWxhcmdlO1xuICBicmVha3BvaW50VGFibGV0OiAkYnJlYWtwb2ludC10YWJsZXQ7XG4gIGJyZWFrcG9pbnRMYXB0b3A6ICRicmVha3BvaW50LWxhcHRvcDtcbiAgYnJlYWtwb2ludERlc2t0b3A6ICRicmVha3BvaW50LWRlc2t0b3A7XG4gIGJyZWFrcG9pbnREZXNrdG9wTGFyZ2U6ICRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U7XG4gIGJyZWFrcG9pbnRIZDogJGJyZWFrcG9pbnQtaGQ7XG59XG4iLCIvKipcbiAgKiBWQVJJQUJMRVNcbiAgKi9cblxuXG4vKipcbiAgKiBEaW1lbnNpb25zOlxuICAqL1xuXG4kc2l0ZVdpZHRoOiAxNDAwcHg7IC8vIG1heCB3aWR0aCBvZiBzaXRlJ3MgY29udGVudCBjb250YWluZXJzXG5cbi8vIGhlYWRlciBoZWlnaHRzOlxuJHRvcEJhckhlaWdodDogNDVweDtcbiRoZWFkZXJIZWlnaHRNb2JpbGU6IDEzNXB4O1xuJGhlYWRlckhlaWdodERlc2t0b3A6IDExNXB4O1xuXG4vLyBzdGFuZGFyZGl6ZWQgc2lkZSBwYWRkaW5nOlxuJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU6IDIwcHg7XG4kY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U6IDI1cHg7XG4kY29udGFpbmVyUGFkZGluZ1RhYmxldDogMzBweDtcbiRjb250YWluZXJQYWRkaW5nTGFwdG9wOiA2MHB4O1xuJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wOiA4MHB4O1xuXG4vLyBzdGFuZGFyZGl6ZWQgdG9wIGFuZCBib3R0b20gcGFkZGluZzpcbiRzcGFjZXJQYWRkaW5nTW9iaWxlOiAyMHB4O1xuJHNwYWNlclBhZGRpbmdQaG9uZUxhcmdlOiAyNXB4O1xuJHNwYWNlclBhZGRpbmdUYWJsZXQ6IDQwcHg7XG4kc3BhY2VyUGFkZGluZ0xhcHRvcDogNjBweDtcbiRzcGFjZXJQYWRkaW5nRGVza3RvcDogODBweDtcblxuXG4vKipcbiAgKiBDb2xvcnM6XG4gICovXG5cbiRyZWQ6ICAgICNmZjAwMDA7XG4kb3JhbmdlOiAjZmY4ODAwO1xuJHllbGxvdzogI2ZmZmYwMDtcbiRncmVlbjogICMwMGZmMDA7XG4kYmx1ZTogICAjMDAwMGZmO1xuJHB1cnBsZTogI2ZmMDBmZjtcbiRicm93bjogICM4ODU1MDA7XG4kYmxhY2s6ICAjMjIyMjIyO1xuJGdyYXk6ICAgIzg4ODg4ODtcbiR3aGl0ZTogICNmZmZmZmY7XG4kY3JlYW06ICAjZjBlZGU4O1xuJGxpZ2h0Q3JlYW06ICNmOGY4Zjg7XG5cbiRvZmZXaGl0ZTogI2ZlZmVmZTsgLy8jZmFmYWZhO1xuJGxpZ2h0R3JheTogI2YyZjJmMjtcbiRtZWRpdW1HcmF5OiAjZTBlMGUwO1xuJG1lZGl1bURhcmtHcmF5OiAjOTk5OTk5O1xuJGRhcmtHcmF5OiAgIzIyMjtcblxuJGRlbUJsdWU6IHJnYigwLCAxNzQsIDI0Myk7XG4kcmVwUmVkOiByZ2IoMjMyLCAyNywgMzUpO1xuXG4vLyRkYXJrQmx1ZTogcmdiKDU5LCA5OCwgMTI3KTtcbiR0cmFuc0dyYXk6IHJnYmEoNTEsIDUxLCA1MSwgMC44KTtcblxuJGJvZHlDb2xvcjogJG9mZldoaXRlOyAgICAgLy8gYm9keSBiYWNrZ3JvdW5kIGNvbG9yXG4vLyRtYWluQ29sb3I6ICNmZmY7ICAgICAvLyBwYWdlIGNvbnRlbnQgYmFja2dyb3VuZCBjb2xvclxuJGZvbnRDb2xvcjogJGRhcmtHcmF5OyAgICAgLy8gZGVmYXVsdCBmb250IGNvbG9yXG4kbGlua0NvbG9yOiAkYnJvd247ICAvLyBkZWZhdWx0IGxpbmsgY29sb3JcblxuJGJyYW5kQ29sb3I6ICRkYXJrR3JheTtcblxuJGFyY2hpdmVCZ0NvbG9yOiAkYmxhY2s7XG4iLCIvKipcbiAgKiBGT05UU1xuICAqXG4gICogRGVmaW5lIEBmb250LWZhY2Ugc3R5bGVzLlxuICAqL1xuXG5cbi8vIEFtZXJpY2FuVHlwZXdyaXRlci1SZWd1bGFyLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogQW1lcmljYW4gVHlwZXdyaXRlcjtcbiAgc3JjOiB1cmwoLi4vZm9udHMvQW1lcmljYW5UeXBld3JpdGVyLVJlZ3VsYXIudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKlxuLy8gUm9ib3RvLVJlZ3VsYXIudHRmOlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBSb2JvdG87XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JvYm90by1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gUm9ib3RvLUJvbGQudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJvYm90bztcbiAgc3JjOiB1cmwoLi4vZm9udHMvUm9ib3RvLUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuKi9cblxuLy8gUmFqZGhhbmktUmVndWxhci50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmFqZGhhbmk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JhamRoYW5pLVJlZ3VsYXIudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBSYWpkaGFuaS1NZWRpdW0udHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhamRoYW5pO1xuICBzcmM6IHVybCguLi9mb250cy9SYWpkaGFuaS1NZWRpdW0udHRmKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBSYWpkaGFuaS1TZW1pQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmFqZGhhbmk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JhamRoYW5pLVNlbWlCb2xkLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gUmFqZGhhbmktQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmFqZGhhbmk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JhamRoYW5pLUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBSYWpkaGFuaS1FeHRyYUJvbGQudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFJhamRoYW5pO1xuICBzcmM6IHVybCguLi9mb250cy9SYWpkaGFuaS1FeHRyYUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBSYWpkaGFuaS1CbGFjay50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogUmFqZGhhbmk7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL1JhamRoYW5pLUJsYWNrLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG4vKlxuLy8gTW9udHNlcnJhdC1SZWd1bGFyLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdDtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTW9udHNlcnJhdC1Cb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuICBzcmM6IHVybCguLi9mb250cy9Nb250c2VycmF0LUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuKi9cblxuLypcbi8vIE1hdmVuUHJvLVJlZ3VsYXIudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1hdmVuIFBybztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWF2ZW5Qcm8tUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIE1hdmVuUHJvLU1lZGl1bS50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWF2ZW4gUHJvO1xuICBzcmM6IHVybCguLi9mb250cy9NYXZlblByby1NZWRpdW0udHRmKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBNYXZlblByby1TZW1pQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWF2ZW4gUHJvO1xuICBzcmM6IHVybCguLi9mb250cy9NYXZlblByby1TZW1pQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIE1hdmVuUHJvLUJvbGQudHRmXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1hdmVuIFBybztcbiAgc3JjOiB1cmwoLi4vZm9udHMvTWF2ZW5Qcm8tQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8vIE1hdmVuUHJvLUV4dHJhQm9sZC50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWF2ZW4gUHJvO1xuICBzcmM6IHVybCguLi9mb250cy9NYXZlblByby1FeHRyYUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBNYXZlblByby1CbGFjay50dGZcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTWF2ZW4gUHJvO1xuICBzcmM6IHVybCguLi9mb250cy9NYXZlblByby1CbGFjay50dGYpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4qL1xuXG4vKlxuQ2VudHVyeSBPbGQgU3R5bGUgU3RkIEJvbGRcblxuZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG5cbmZvbnQtd2VpZ2h0OiA3MDA7XG5cbmZvbnQtc3R5bGU6IG5vcm1hbDtcblxuQ2VudHVyeSBPbGQgU3R5bGUgU3RkIEl0YWxpY1xuXG5mb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDQwMDtcblxuZm9udC1zdHlsZTogaXRhbGljO1xuXG5DZW50dXJ5IE9sZCBTdHlsZSBTdGQgUmVndWxhclxuXG5mb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDQwMDtcblxuZm9udC1zdHlsZTogbm9ybWFsO1xuXG4qL1xuXG5cbi8qXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gQm9sZFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNzAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBCb2xkIEl0YWxpY1xuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNzAwO1xuXG5mb250LXN0eWxlOiBpdGFsaWM7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBMaWdodFxuXG5mb250LWZhbWlseTogaXRjLWFtZXJpY2FuLXR5cGV3cml0ZXIsIHNlcmlmO1xuXG5mb250LXdlaWdodDogMzAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBMaWdodCBJdGFsaWNcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcblxuZm9udC13ZWlnaHQ6IDMwMDtcblxuZm9udC1zdHlsZTogaXRhbGljO1xuXG5BbWVyaWNhbiBUeXBld3JpdGVyIElUQyBQcm8gQm9sZCBDb25kZW5zZWRcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLWNvbmQsIHNlcmlmO1xuXG5mb250LXdlaWdodDogNzAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbkFtZXJpY2FuIFR5cGV3cml0ZXIgSVRDIFBybyBMaWdodCBDb25kZW5zZWRcblxuZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLWNvbmQsIHNlcmlmO1xuXG5mb250LXdlaWdodDogMzAwO1xuXG5mb250LXN0eWxlOiBub3JtYWw7XG5cbiovXG4iLCIvKipcclxuICAqIE1JWElOU1xyXG4gICovXHJcblxyXG5cclxuQG1peGluIHdyYXAge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLndyYXAge1xyXG4gIEBpbmNsdWRlIHdyYXA7XHJcbn1cclxuXHJcbkBtaXhpbiBpbm5lci13cmFwIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6ICRzaXRlV2lkdGg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5pbm5lci13cmFwIHtcclxuICBAaW5jbHVkZSBpbm5lci13cmFwO1xyXG59XHJcblxyXG5AbWl4aW4gY29udGFpbmVyIHtcclxuICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICB9XHJcbn1cclxuXHJcbi5jb250YWluZXIge1xyXG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcclxufVxyXG5cclxuQG1peGluIHNwYWNlci10b3Age1xyXG4gIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG5cclxuLnNwYWNlci10b3Age1xyXG4gIEBpbmNsdWRlIHNwYWNlci10b3A7XHJcbn1cclxuXHJcbkBtaXhpbiBzcGFjZXItYm90dG9tIHtcclxuICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nRGVza3RvcDtcclxuICB9XHJcbn1cclxuXHJcbi5zcGFjZXItYm90dG9tIHtcclxuICBAaW5jbHVkZSBzcGFjZXItYm90dG9tO1xyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uLWNvbnRhaW5lciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uYnV0dG9uLWNvbnRhaW5lciB7XHJcbiAgQGluY2x1ZGUgYnV0dG9uLWNvbnRhaW5lcjtcclxufVxyXG5cclxuQG1peGluIGJ1dHRvbiB7XHJcbiAgcGFkZGluZzogMTBweCAxNXB4OztcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBjb2xvcjogJG9mZldoaXRlO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4uYnV0dG9uIHtcclxuICBAaW5jbHVkZSBidXR0b247XHJcbn1cclxuXHJcbi8qXHJcbkBtaXhpbiBjYXRlZ29yeSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgLy8gL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgY29sb3I6ICRibGFjaztcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGZvbnQtc2l6ZTogMC44cmVtO1xyXG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNjI1ZW07XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uY2F0ZWdvcnkge1xyXG4gIEBpbmNsdWRlIGNhdGVnb3J5O1xyXG59XHJcbiovXHJcblxyXG5AbWl4aW4gdGl0bGUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gIC8vZm9udC13ZWlnaHQ6IDYwMDtcclxuICBsaW5lLWhlaWdodDogMS4xO1xyXG4gIGNvbG9yOiAkYnJhbmRDb2xvcjtcclxuICBsZXR0ZXItc3BhY2luZzogLTAuMDYyNWVtO1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIC8vdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG59XHJcblxyXG4udGl0bGUge1xyXG4gIEBpbmNsdWRlIHRpdGxlO1xyXG59XHJcblxyXG5AbWl4aW4gdGFnIHtcclxuICBmb250LXNpemU6IDAuOHJlbTtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGNvbG9yOiAkbWVkaXVtRGFya0dyYXk7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0MjVlbTtcclxufVxyXG5cclxuLnRhZyB7XHJcbiAgQGluY2x1ZGUgdGFnO1xyXG59XHJcblxyXG5AbWl4aW4gc2NyZWVuLXJlYWRlci10ZXh0IHsgIC8vIHZpc2libGUgdG8gc2NyZWVuIHJlYWRlcnMgb25seVxyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMXB4O1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAtMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi5zY3JlZW4tcmVhZGVyLXRleHQge1xyXG4gIEBpbmNsdWRlIHNjcmVlbi1yZWFkZXItdGV4dDtcclxufVxyXG5cclxuQG1peGluIG5vLXNjcm9sbCB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm5vLXNjcm9sbCB7XHJcbiAgQGluY2x1ZGUgbm8tc2Nyb2xsO1xyXG59XHJcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcbi8vICAgICBfICAgICAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gX1xyXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXHJcbi8vICAgICBfIF8gX18gICBfX198IHxfICAgXyAgX198IHwgX19fICAgXyBfXyBfX18gICBfX18gIF9ffCB8XyAgX18gX1xyXG4vLyAgICB8IHwgJ18gXFwgLyBfX3wgfCB8IHwgfC8gX2AgfC8gXyBcXCB8ICdfIGAgXyBcXCAvIF8gXFwvIF9gIHwgfC8gX2AgfFxyXG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XHJcbi8vICAgIHxffF98IHxffFxcX19ffF98XFxfXyxffFxcX18sX3xcXF9fX3wgfF98IHxffCB8X3xcXF9fX3xcXF9fLF98X3xcXF9fLF98XHJcbi8vXHJcbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXHJcbi8vICAgICAgICAgICAgICAgICAgICAgICAgdjEuNC45XHJcbi8vXHJcbi8vICAgICAgICBodHRwczovL2VkdWFyZG9ib3VjYXMuZ2l0aHViLmlvL2luY2x1ZGUtbWVkaWFcclxuLy9cclxuLy8gICAgICAgICBBdXRob3JzOiBFZHVhcmRvIEJvdWNhcyAoQGVkdWFyZG9ib3VjYXMpXHJcbi8vICAgICAgICAgICAgICAgICAgS2l0dHkgR2lyYXVkZWwgKEBraXR0eWdpcmF1ZGVsKVxyXG4vL1xyXG4vLyAgICAgIFRoaXMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIE1JVCBsaWNlbnNlXHJcbi8vLy9cclxuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxyXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCB3aXRoIHRoZSBsYWJlbCBgcGhvbmVgXHJcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xyXG4vLy9cclxuJGJyZWFrcG9pbnRzOiAoXHJcbiAgJ3Bob25lJzogMzIwcHgsXHJcbiAgJ3RhYmxldCc6IDc2OHB4LFxyXG4gICdkZXNrdG9wJzogMTAyNHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8vXHJcbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXHJcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbi8vLyAgICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSdcclxuLy8vICApO1xyXG4vLy9cclxuJG1lZGlhLWV4cHJlc3Npb25zOiAoXHJcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxyXG4gICdwcmludCc6ICdwcmludCcsXHJcbiAgJ2hhbmRoZWxkJzogJ2hhbmRoZWxkJyxcclxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXHJcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcclxuICAncmV0aW5hMngnOiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCknLFxyXG4gICdyZXRpbmEzeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpLCAobWluLXJlc29sdXRpb246IDNkcHB4KSdcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLy9cclxuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHBpeGVscyBpcyBkZWZpbmVkIGFzIGAxYCBieSBkZWZhdWx0XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBlbXMgaXMgZGVmaW5lZCBhcyBgMC4wMWAgYnkgZGVmYXVsdFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHJlbXMgaXMgZGVmaW5lZCBhcyBgMC4xYCBieSBkZWZhdWx0LCB0byBiZSB1c2VkIHdpdGggYGZvbnQtc2l6ZTogNjIuNSU7YFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XHJcbi8vL1xyXG4kdW5pdC1pbnRlcnZhbHM6IChcclxuICAncHgnOiAxLFxyXG4gICdlbSc6IDAuMDEsXHJcbiAgJ3JlbSc6IDAuMSxcclxuICAnJzogMFxyXG4pICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcclxuLy8vIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgbWVkaWEgcXVlcmllcy5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAuZm9vIHtcclxuLy8vICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgfVxyXG4vLy9cclxuJGltLW1lZGlhLXN1cHBvcnQ6IHRydWUgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIFNlbGVjdHMgd2hpY2ggYnJlYWtwb2ludCB0byBlbXVsYXRlIHdoZW4gc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBkaXNhYmxlZC4gTWVkaWEgcXVlcmllcyB0aGF0IHN0YXJ0IGF0IG9yXHJcbi8vLyBpbnRlcmNlcHQgdGhlIGJyZWFrcG9pbnQgd2lsbCBiZSBkaXNwbGF5ZWQsIGFueSBvdGhlcnMgd2lsbCBiZSBpZ25vcmVkLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50XHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgLmZvbyB7XHJcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICd0YWJsZXQnO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xyXG4vLy9cclxuJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJyAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gU2VsZWN0cyB3aGljaCBtZWRpYSBleHByZXNzaW9ucyBhcmUgYWxsb3dlZCBpbiBhbiBleHByZXNzaW9uIGZvciBpdCB0byBiZSB1c2VkIHdoZW4gbWVkaWEgcXVlcmllc1xyXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYW5kIGNvbnRhaW5zIG9ubHkgYWNjZXB0ZWQgbWVkaWEgZXhwcmVzc2lvbnNcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAgLmZvbyB7XHJcbi8vLyAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBidXQgY29udGFpbnMgYSBtZWRpYSBleHByZXNzaW9uIHRoYXQgaXMgbm90IGFjY2VwdGVkXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogTm8gb3V0cHV0ICovXHJcbi8vL1xyXG4kaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJywgJ3BvcnRyYWl0JywgJ2xhbmRzY2FwZScpICFkZWZhdWx0O1xyXG5cclxuLy8vL1xyXG4vLy8gQ3Jvc3MtZW5naW5lIGxvZ2dpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gTG9nIGEgbWVzc2FnZSBlaXRoZXIgd2l0aCBgQGVycm9yYCBpZiBzdXBwb3J0ZWRcclxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXHJcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XHJcbiAgICBAZXJyb3IgJG1lc3NhZ2U7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAd2FybiAkbWVzc2FnZTtcclxuICAgICRfOiBub29wKCk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRtZXNzYWdlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XHJcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cclxuLy8vIHdpdGhpbiBmdW5jdGlvbnMgYmVjYXVzZSBpdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluIGEgZnVuY3Rpb25cclxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZXNzYWdlIC0gTWVzc2FnZSB0byBsb2dcclxuLy8vXHJcbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcclxuICBAaWYgaW0tbG9nKCRtZXNzYWdlKSB7fVxyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBGdW5jdGlvbiB3aXRoIG5vIGBAcmV0dXJuYCBjYWxsZWQgbmV4dCB0byBgQHdhcm5gIGluIFNhc3MgMy4zXHJcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxyXG4vLy9cclxuQGZ1bmN0aW9uIG5vb3AoKSB7fVxyXG5cclxuLy8vXHJcbi8vLyBEZXRlcm1pbmVzIHdoZXRoZXIgYSBsaXN0IG9mIGNvbmRpdGlvbnMgaXMgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7Qm9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIGNvbmRpdGlvbnMgYXJlIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludFxyXG4vLy9cclxuQGZ1bmN0aW9uIGltLWludGVyY2VwdHMtc3RhdGljLWJyZWFrcG9pbnQoJGNvbmRpdGlvbnMuLi4pIHtcclxuICAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRpbS1uby1tZWRpYS1icmVha3BvaW50KTtcclxuXHJcbiAgQGlmIG5vdCAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSB7XHJcbiAgICBAaWYgaW0tbG9nKCdgI3skaW0tbm8tbWVkaWEtYnJlYWtwb2ludH1gIGlzIG5vdCBhIHZhbGlkIGJyZWFrcG9pbnQuJykge31cclxuICB9XHJcblxyXG4gIEBlYWNoICRjb25kaXRpb24gaW4gJGNvbmRpdGlvbnMge1xyXG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcclxuICAgICAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgICAgIEBpZiAoJHByZWZpeCA9PSAnbWF4JyBhbmQgJHZhbHVlIDw9ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSBvclxyXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XHJcbiAgICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XHJcbiAgICAgIEByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFBhcnNpbmcgZW5naW5lXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3Qgb3BlcmF0b3IgZnJvbVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBBbnkgb2YgYD49YCwgYD5gLCBgPD1gLCBgPGAsIGDiiaVgLCBg4omkYFxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XHJcbiAgQGVhY2ggJG9wZXJhdG9yIGluICgnPj0nLCAnPicsICc8PScsICc8JywgJ+KJpScsICfiiaQnKSB7XHJcbiAgICBAaWYgc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcclxuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXHJcbiAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcclxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cclxuICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxyXG4gIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cclxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgZGltZW5zaW9uIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgZGltZW5zaW9uIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYHdpZHRoYCBvciBgaGVpZ2h0YCAob3IgcG90ZW50aWFsbHkgYW55dGhpbmcgZWxzZSlcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICRwYXJzZWQtZGltZW5zaW9uOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sIDAsICRvcGVyYXRvci1pbmRleCAtIDEpO1xyXG4gICRkaW1lbnNpb246ICd3aWR0aCc7XHJcblxyXG4gIEBpZiBzdHItbGVuZ3RoKCRwYXJzZWQtZGltZW5zaW9uKSA+IDAge1xyXG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRkaW1lbnNpb247XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gcHJlZml4IGJhc2VkIG9uIGFuIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcikge1xyXG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgdmFsdWUgb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3IgZnJvbSBgJGV4cHJlc3Npb25gXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcclxuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuICAkdmFsdWU6IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yLWluZGV4ICsgc3RyLWxlbmd0aCgkb3BlcmF0b3IpKTtcclxuXHJcbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XHJcbiAgICAkdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkdmFsdWUpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcclxuICB9XHJcblxyXG4gICRpbnRlcnZhbDogbWFwLWdldCgkdW5pdC1pbnRlcnZhbHMsIHVuaXQoJHZhbHVlKSk7XHJcblxyXG4gIEBpZiBub3QgJGludGVydmFsIHtcclxuICAgIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAgIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXHJcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cclxuICAgIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXHJcbiAgICAkXzogaW0tbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XHJcbiAgfVxyXG5cclxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSArICRpbnRlcnZhbDtcclxuICB9IEBlbHNlIGlmICRvcGVyYXRvciA9PSAnPCcge1xyXG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZTtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBwYXJzZVxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxyXG4vLy9cclxuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcclxuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXHJcbiAgLy8gdGhlbiB0aGVyZSBpcyBubyBuZWVkIHRvIGdvIGFueSBmdXJ0aGVyLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcclxuICBAaWYgbWFwLWhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xyXG4gIH1cclxuXHJcbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XHJcbiAgJGRpbWVuc2lvbjogZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcblxyXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xyXG59XHJcblxyXG4vLy9cclxuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcclxuLy8vXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzbGljZVxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3RcclxuLy8vXHJcbkBmdW5jdGlvbiBzbGljZSgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsZW5ndGgoJGxpc3QpKSB7XHJcbiAgQGlmIGxlbmd0aCgkbGlzdCkgPCAxIG9yICRzdGFydCA+ICRlbmQge1xyXG4gICAgQHJldHVybiAoKTtcclxuICB9XHJcblxyXG4gICRyZXN1bHQ6ICgpO1xyXG5cclxuICBAZm9yICRpIGZyb20gJHN0YXJ0IHRocm91Z2ggJGVuZCB7XHJcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkcmVzdWx0O1xyXG59XHJcblxyXG4vLy8vXHJcbi8vLyBTdHJpbmcgdG8gbnVtYmVyIGNvbnZlcnRlclxyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxyXG4vLy8gQGFjY2VzcyBwcml2YXRlXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIENhc3RzIGEgc3RyaW5nIGludG8gYSBudW1iZXJcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7TnVtYmVyfVxyXG4vLy9cclxuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcclxuICAgIEByZXR1cm4gJHZhbHVlO1xyXG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpICE9ICdzdHJpbmcnIHtcclxuICAgICRfOiBpbS1sb2coJ1ZhbHVlIGZvciBgdG8tbnVtYmVyYCBzaG91bGQgYmUgYSBudW1iZXIgb3IgYSBzdHJpbmcuJyk7XHJcbiAgfVxyXG5cclxuICAkZmlyc3QtY2hhcmFjdGVyOiBzdHItc2xpY2UoJHZhbHVlLCAxLCAxKTtcclxuICAkcmVzdWx0OiAwO1xyXG4gICRkaWdpdHM6IDA7XHJcbiAgJG1pbnVzOiAoJGZpcnN0LWNoYXJhY3RlciA9PSAnLScpO1xyXG4gICRudW1iZXJzOiAoJzAnOiAwLCAnMSc6IDEsICcyJzogMiwgJzMnOiAzLCAnNCc6IDQsICc1JzogNSwgJzYnOiA2LCAnNyc6IDcsICc4JzogOCwgJzknOiA5KTtcclxuXHJcbiAgLy8gUmVtb3ZlICsvLSBzaWduIGlmIHByZXNlbnQgYXQgZmlyc3QgY2hhcmFjdGVyXHJcbiAgQGlmICgkZmlyc3QtY2hhcmFjdGVyID09ICcrJyBvciAkZmlyc3QtY2hhcmFjdGVyID09ICctJykge1xyXG4gICAgJHZhbHVlOiBzdHItc2xpY2UoJHZhbHVlLCAyKTtcclxuICB9XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyLWxlbmd0aCgkdmFsdWUpIHtcclxuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XHJcblxyXG4gICAgQGlmIG5vdCAoaW5kZXgobWFwLWtleXMoJG51bWJlcnMpLCAkY2hhcmFjdGVyKSBvciAkY2hhcmFjdGVyID09ICcuJykge1xyXG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XHJcbiAgICAgICRkaWdpdHM6IDE7XHJcbiAgICB9IEBlbHNlIGlmICRkaWdpdHMgPT0gMCB7XHJcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRkaWdpdHM6ICRkaWdpdHMgKiAxMDtcclxuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gaWYoJG1pbnVzLCAtJHJlc3VsdCwgJHJlc3VsdCk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcclxuLy8vXHJcbkBmdW5jdGlvbiB0by1sZW5ndGgoJHZhbHVlLCAkdW5pdCkge1xyXG4gICR1bml0czogKCdweCc6IDFweCwgJ2NtJzogMWNtLCAnbW0nOiAxbW0sICclJzogMSUsICdjaCc6IDFjaCwgJ3BjJzogMXBjLCAnaW4nOiAxaW4sICdlbSc6IDFlbSwgJ3JlbSc6IDFyZW0sICdwdCc6IDFwdCwgJ2V4JzogMWV4LCAndncnOiAxdncsICd2aCc6IDF2aCwgJ3ZtaW4nOiAxdm1pbiwgJ3ZtYXgnOiAxdm1heCk7XHJcblxyXG4gIEBpZiBub3QgaW5kZXgobWFwLWtleXMoJHVuaXRzKSwgJHVuaXQpIHtcclxuICAgICRfOiBpbS1sb2coJ0ludmFsaWQgdW5pdCBgI3skdW5pdH1gLicpO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkdmFsdWUgKiBtYXAtZ2V0KCR1bml0cywgJHVuaXQpO1xyXG59XHJcblxyXG4vLy9cclxuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxyXG4vLy8gdGhlIGNhbGwuIEl0IGlzIGhlbHBmdWwgd2hlbiBoYXZpbmcgYSBjb21wb25lbnQgbmVlZGluZyBhbiBleHRlbmRlZFxyXG4vLy8gY29uZmlndXJhdGlvbiBzdWNoIGFzIGN1c3RvbSBicmVha3BvaW50cyAocmVmZXJyZWQgdG8gYXMgdHdlYWtwb2ludHMpXHJcbi8vLyBmb3IgaW5zdGFuY2UuXHJcbi8vL1xyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9Y3VzdG9tJykge1xyXG4vLy8gICAgICAgLy8gLi4uXHJcbi8vLyAgICAgIH1cclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIG1lZGlhIGV4cHJlc3Npb25zIHdpdGggYSBjdXN0b20gb25lXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgnYWxsJzogJ2FsbCcpKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnKSB7XHJcbi8vLyAgICAgICAvLyAuLi5cclxuLy8vICAgICAgfVxyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIGJvdGggY29uZmlndXJhdGlvbiBtYXBzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSwgKCdhbGwnOiAnYWxsJykpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScsICc8PWN1c3RvbScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xyXG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XHJcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xyXG5cclxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZSgkbWVkaWEtZXhwcmVzc2lvbnMsICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucykgIWdsb2JhbDtcclxuXHJcbiAgQGNvbnRlbnQ7XHJcblxyXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cclxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcclxuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcclxufVxyXG5cclxuLy8vL1xyXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcclxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcclxuLy8vIEBhY2Nlc3MgcHVibGljXHJcbi8vLy9cclxuXHJcblxyXG4vLy9cclxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PXRhYmxldCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNThweCcsICc8ODUwcHgnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5kZXNrdG9wJywgJzw9MTM1MHB4JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCdyZXRpbmEyeCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1MHB4JywgJzx0YWJsZXQnLCAncmV0aW5hM3gnKSB7IH1cclxuLy8vXHJcbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xyXG4gIEBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcclxuICAgICAgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH0gQGVsc2UgaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xyXG4gICAgQG1lZGlhICN7dW5xdW90ZShwYXJzZS1leHByZXNzaW9uKG50aCgkY29uZGl0aW9ucywgMSkpKX0ge1xyXG4gICAgICAvLyBSZWN1cnNpdmUgY2FsbFxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvKipcbiAgKiBFTEVNRU5UIEFSQ0hJVkUgU1RZTEVTXG4gICpcbiAgKiBTdHlsZSBkZWZpbml0aW9ucyBmb3IgZ2xvYmFsIGVsZW1lbnQgc2VsZWN0b3JzLlxuICAqL1xuXG5cbioge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyBjb25zaXN0ZW50IGJveC1zaXppbmcgZm9yIGFsbCBlbGVtZW50c1xufVxuXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDAlOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBmb250LXNpemU6IDEwMCU7IC8vIHNldCByb290IGZvbnQtc2l6ZSBmb3IgcmVtIHVuaXRzICgxMDAlIGVxdWF0ZXMgdG8gMTZweClcbiAgbGluZS1oZWlnaHQ6IDEuNzsgLy8gc2V0IGRlZmF1bHQgbGluZSBoZWlnaHRcbn1cblxuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIGRpc3BsYXk6IGdyaWQ7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIDFmciBhdXRvOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBtYXJnaW46IDA7IC8vIG1ha2Ugc3VyZSBib2R5IGVsZW1lbnQgaXMgZWRnZS10by1lZGdlXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5Q29sb3I7XG4gIGNvbG9yOiAkZm9udENvbG9yO1xuICAvL2ZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAvL2ZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4gIC8vZm9udC1mYW1pbHk6ICdNYXZlbiBQcm8nLCBzYW5zLXNlcmlmO1xuICAvL2ZvbnQtZmFtaWx5OiBjZW50dXJ5LWdvdGhpYywgc2Fucy1zZXJpZjtcbiAgZm9udC1mYW1pbHk6IGNlbnR1cnktb2xkLXN0eWxlLXN0ZCwgc2VyaWY7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LXdlaWdodDogNzAwO1xuICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8vZm9udC1mYW1pbHk6IGl0Yy1hbWVyaWNhbi10eXBld3JpdGVyLCBzZXJpZjtcbiAgLy9mb250LWZhbWlseTogY2VudHVyeS1nb3RoaWMsIHNhbnMtc2VyaWY7XG4gIGZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbmgxIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS40cmVtO1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmgyIHtcblxuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjNyZW07XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICAvL2ZvbnQtd2VpZ2h0OiA3MDA7XG4gIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLy9mb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU5MDllbTtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMjBweCAwO1xuICAgIHBhZGRpbmc6IDIwcHggMCAyNXB4IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLy9ib3JkZXItdG9wOiAzcHggc29saWQgJGJsYWNrO1xuICAgIC8vZm9udC1zaXplOiAxLjRyZW07XG4gICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDM0JTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAzMyU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxufVxuXG5oMyB7XG5cbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy9tYXJnaW4tYm90dG9tOiAwO1xuICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8vZm9udC1zaXplOiAyLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OTA5ZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG5oNCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oNSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5oNiB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgLy9mb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICRsaW5rQ29sb3I7XG5cbiAgJjpsaW5rIHtcblxuICB9XG5cbiAgJjpob3ZlciB7XG5cbiAgfVxuXG4gICY6YWN0aXZlIHtcblxuICB9XG5cbiAgJjp2aXNpdGVkIHtcblxuICB9XG59XG5cbjpmb2N1cyB7XG4vLyAgb3V0bGluZTogM3B4IHNvbGlkIG9yYW5nZTtcbn1cblxudWwsIG9sIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG59XG5cbmltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDUwMHB4OyAvLyBrZWVwIGltYWdlcyBmcm9tIGV4cGFuZGluZyBiZXlvbmQgdGhlaXIgY29udGFpbmVyc1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8qIGJlZ2luIGJ1dHRvbiBzdHlsZXMgKi9cbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyOiBub25lO1xuICAvL3BhZGRpbmc6IDFyZW0gMnJlbTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC8vYmFja2dyb3VuZDogIzAwNjllZDtcbiAgLy9jb2xvcjogI2ZmZmZmZjtcbiAgLy9mb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLy9mb250LXNpemU6IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLy90ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC8vdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyNTBtcyBlYXNlLWluLW91dCxcbiAgLy8gICAgICAgICAgICB0cmFuc2Zvcm0gMTUwbXMgZWFzZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmJ1dHRvbjpob3ZlcixcbmJ1dHRvbjpmb2N1cyB7XG4gICAgLy9iYWNrZ3JvdW5kOiAjMDA1M2JhO1xufVxuXG5idXR0b246Zm9jdXMge1xuICAgIC8vb3V0bGluZTogMXB4IHNvbGlkICNmZmY7XG4gICAgLy9vdXRsaW5lLW9mZnNldDogLTRweDtcbn1cblxuYnV0dG9uOmFjdGl2ZSB7XG4gICAgLy90cmFuc2Zvcm06IHNjYWxlKDAuOTkpO1xufVxuLyogZW5kIGJ1dHRvbiBzdHlsZXMgKi9cblxuYmxvY2txdW90ZSB7XG4gIC8vYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgJGJsYWNrO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRibGFjaztcbiAgbWFyZ2luOiAyMHB4IDEwcHggNDBweCAyMHB4O1xuICBwYWRkaW5nOiAwIDQwcHggMCAzMHB4O1xuICBxdW90ZXM6IFwiXFwyMDFDXCJcIlxcMjAxRFwiXCJcXDIwMThcIlwiXFwyMDE5XCI7XG4gIC8vIC9mb250LXNpemU6IDEuMnJlbTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29sb3I6ICNjY2M7XG4gICAgY29udGVudDogb3Blbi1xdW90ZTtcbiAgICBmb250LXNpemU6IDRlbTtcbiAgICBsaW5lLWhlaWdodDogMC4xZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gICAgdmVydGljYWwtYWxpZ246IC0wLjRlbTtcblxuICAgIGZvbnQtc2l6ZTogNGVtO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IC0wLjRlbTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgY29udGVudDogY2xvc2UtcXVvdGU7XG4gIH1cblxuICBwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHA6Zmlyc3Qtb2YtdHlwZSwgcDpudGgtb2YtdHlwZSgyKSB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIH1cbiAgfVxuXG4gIHA6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCIvKiBCRUdJTiBBcmNoaXZlIG1hc3RoZWFkIHN0eWxlcyAqL1xuLy8ud2ctYXJjaGl2ZSAqLCAud2ctYXJjaGl2ZSA+IHtcblxuICAuaGVhZGVyLXdyYXAge1xuICAgIEBpbmNsdWRlIHdyYXA7XG4gICAgZ3JpZC1yb3ctc3RhcnQ6IDE7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gICAgZ3JpZC1yb3ctZW5kOiAyOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcywgYm9yZGVyIDIwMG1zLCBib3gtc2hhZG93IDIwMG1zO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjcmVhbTtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IC01cHggIzAwMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgJGJsYWNrO1xuICAgIC8vYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbmV3c3ByaW50X3RleHR1cmUuanBnJyk7XG4gICAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9uZXdzcHJpbnRfdGV4dHVyZS5qcGcnKTtcbiAgICAvL2JhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgLy9iYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgLy9iYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIC8vYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcblxuICAgICYuYmctdmlzaWJsZSB7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yO1xuICAgICAgLy9ib3JkZXItYm90dG9tOiA1cHggc29saWQgJG9mZldoaXRlO1xuICAgICAgLy9ib3gtc2hhZG93OiAwcHggMXB4IDE1cHggIzAwMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIGdyaWQtcm93LXN0YXJ0OiAyOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICAgICAgZ3JpZC1yb3ctZW5kOiAzOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgfVxuICB9XG4gICAgLypcbiAgICAudG9wLWJhci1iZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB6LWluZGV4OiA2O1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cbiAgICAgICYuYmctdmlzaWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgICovXG5cbiAgICAuaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAvL2hlaWdodDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgIC8vcGFkZGluZy10b3A6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMTA1cHg7Ly8xZnIgMTM1cHg7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG4gICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcblxuICAgICAgJi5iZy12aXNpYmxlIHtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvcjtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIC8vaGVpZ2h0OiBhdXRvO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA5MHB4O1xuICAgICAgICAvL2dyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvOyAvLzEyMHB4IDcwcHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYmxhY2s7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAvL2dyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDY1cHg7XG4gICAgICB9XG4gICAgfVxuICAgICAgLmhlYWRlci1icmFuZCB7XG4gICAgICAgIC8vQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgLy8gbmVnYXRlIHJpZ2h0IHBhZGRpbmcgZnJvbSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgLy9oZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHVuc2V0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJGJsYWNrO1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJsYWNrO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIC8vaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgLy9ib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIC8vaGVpZ2h0OiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBjb2xvcjogIzAwMDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOyAvLzcwcHg7XG4gICAgICAgICAgICAvL2hlaWdodDogMTAwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubG9nby10ZXh0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLy9oZWlnaHQ6IGNhbGMoJGhlYWRlckhlaWdodE1vYmlsZSAtIDMwcHgpO1xuICAgICAgICAgICAgLy9tYXJnaW46IDE1cHggMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7IC8vYmxvY2s7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBjZW50dXJ5LW9sZC1zdHlsZS1zdGQsIHNlcmlmO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxvZ28tdGV4dC10aXRsZSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLmxvZ28tdGV4dC10aXRsZS1kb21haW4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAubG9nby10ZXh0LXRpdGxlLXRyYWRlbWFyayB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkY3JlYW0sIDQwJSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNWVtO1xuICAgICAgICAgICAgICAgIC8vZm9udC1mYW1pbHk6ICdSYWpkaGFuaScsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuNnJlbTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLXNtYWxsXCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4IGF1dG87XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmhlYWRlci1uYXYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTsvLyRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHotaW5kZXg6IDU7XG5cbiAgICAgICAgJi5iZy12aXNpYmxlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAgIC5tYWluLW5hdiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LWZhbWlseTogY2VudHVyeS1vbGQtc3R5bGUtc3RkLCBzZXJpZjtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyAvLyBuZWdhdGUgbGVmdCBwYWRkaW5nIGZyb20gJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIC8vQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvOyAvLzQ1cHg7XG4gICAgICAgICAgICAgIC8vcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxMDAzO1xuICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciA+IHVsIHtcblxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICRibGFjaztcblxuXG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIC8vY29sb3I6ICRjcmVhbTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAgICAgICAgICAgICAgIC8vdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgbGlnaHRlbigkZGVtQmx1ZSwgNDAlKSwgbGlnaHRlbigkcmVwUmVkLCA0MCUpIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgICAgICAgICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogMDsgLy8gbmVnYXRlICdjb250YWluZXInIG1peGluIF5eXlxuICAgICAgICAgICAgICAgIC8vcGFkZGluZy1sZWZ0OiAwOyAvLyBuZWdhdGUgJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ1cHg7IC8vJG1haW5OYXZIZWlnaHQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZGlzcGxheSAzMDBtcztcblxuICAgICAgICAgICAgICAgICY6aG92ZXIgPiB1bCB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMS41ZW07XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogbGVmdDtcbiAgICAgICAgICAgICAgICAvL3RyYW5zaXRpb246IGZvbnQtd2VpZ2h0IDMwMG1zO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAvL2NvbG9yOiAkZGFya0JsdWU7XG4gICAgICAgICAgICAgICAgICAvL2ZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmLmN1cnJlbnRfcGFnZV9pdGVtIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIC8vZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGNyZWFtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuY3VycmVudC1wYWdlLWFuY2VzdG9yIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIC8vZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGNyZWFtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5uYXYtY2hldnJvbiB7XG4gICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgLy9jb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHVsIHsgLy8gc3ViLW5hdlxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIC8vd2lkdGg6IDIyNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiAwOy8vNDVweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IC01cHggIzAwMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAzMjBweDtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIHRvcDogNDVweDsgLy8kbWFpbk5hdkhlaWdodDtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgJG1lZGl1bUdyYXk7XG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICB0b3A6IC0xMnB4O1xuICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAqL1xuXG4gICAgICAgICAgICAgICAgbGkgeyAvLyBzdWItbmF2XG4gICAgICAgICAgICAgICAgICAvL3dpZHRoOiAyMjVweDtcbiAgICAgICAgICAgICAgICAgIC8vaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA0NXB4OyAvLyR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtRGFya0dyYXk7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7IC8vJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAvL21hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBhIHsgLy8gc3ViLW5hdlxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDNlbTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOy8vMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7Ly8xNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHVsIHsgLy8gc3ViLXN1Yi1uYXZcblxuICAgICAgICAgICAgICAgICAgICBsaSB7IC8vIHN1Yi1zdWItbmF2XG5cbiAgICAgICAgICAgICAgICAgICAgICBhIHsgLy8gc3ViLXN1Yi1uYXZcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNC41ZW07XG4gICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgdWwgeyAvLyBzdWItc3ViLXN1Yi1uYXZcblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkgeyAvLyBzdWItc3ViLXN1Yi1uYXZcblxuICAgICAgICAgICAgICAgICAgICAgICAgICBhIHsgLy8gc3ViLXN1Yi1zdWItbmF2XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkuc2xpZGUtbGluZSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgei1pbmRleDogMTAwMjsgLy8gcG9zaXRpb24gYmVsb3cgbGlzdCBpdGVtIHNvIHRoYXQgbW91c2VvdmVyIGRvZXNuJ3QgZ2V0IGNvbmZ1c2VkXG4gICAgICAgICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgIGhlaWdodDogNDlweDsgLy82cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBkb3R0ZWQgJGNyZWFtO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggZG90dGVkICRjcmVhbTtcbiAgICAgICAgICAgICAgLy9vdXRsaW5lOiAycHggZGFzaGVkICRibGFjaztcbiAgICAgICAgICAgICAgLy9ib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDMwMG1zLCBsZWZ0IDMwMG1zO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci1uYXYtdG9wIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHotaW5kZXg6IDY7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtR3JheTtcbiAgICAgICAgICBjbGVhcjogYm90aDtcblxuICAgICAgICAgICYudmlzaWJsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgICAgLy93aWR0aDogNTAlOyAvLyBhcmJpdHJhcnkgLSBqdXN0IG5lZWRzIHRvIGJlIHdpZGUgZW5vdWdoIHRvIGFjY29tb2RhdGUgbmF2IGl0ZW1zXG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgICAvL2hlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIC8vaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgLy90b3A6IDA7XG4gICAgICAgICAgICB0b3A6IDQ1cHg7XG4gICAgICAgICAgICAvL3JpZ2h0OiAzNnB4O1xuICAgICAgICAgICAgcmlnaHQ6IC00NXB4O1xuICAgICAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRHcmF5O1xuICAgICAgICAgICAgLy9jbGVhcjogYm90aDtcblxuICAgICAgICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8vaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDMwcHg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAvL2hlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOy8vNjBweDtcbiAgICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgICAgICAgIC8vaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IC01cHggIzAwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAvL0BpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMS4yZW07XG4gICAgICAgICAgICAgIC8vbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgLy9mbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLnVzZXItbG9naW4tbG9nb3V0LWljb24ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAvL3BhZGRpbmc6IC41MjVlbSAzZW0gMCAwO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG5cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qXG4gICAgICAgIC5oZWFkZXItbmF2LXRvcCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICB6LWluZGV4OiA2O1xuICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtR3JheTtcbiAgICAgICAgICBjbGVhcjogYm90aDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTsgLy8gYXJiaXRyYXJ5IC0ganVzdCBuZWVkcyB0byBiZSB3aWRlIGVub3VnaCB0byBhY2NvbW9kYXRlIG5hdiBpdGVtc1xuICAgICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgLy9oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMzZweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDY7XG4gICAgICAgICAgICAvL3JpZ2h0OiAwO1xuICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JheTtcbiAgICAgICAgICAgIC8vY2xlYXI6IGJvdGg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvL2hlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAzMHB4O1xuICAgICAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgaGVpZ2h0OiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICBmbGV4LWZsb3c6IHJvdy1yZXZlcnNlO1xuICAgICAgICAgICAgICAvL2hlaWdodDogMzVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgICAgICAgIC8vbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgLy9mbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZzogLjUyNWVtIDNlbSAwIDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgLy90ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgKi9cblxuICAgICAgLmhlYWRlci1idXR0b25zIHtcbiAgICAgICAgLy93aWR0aDogMTM1cHg7XG4gICAgICAgIHdpZHRoOiAxMDVweDtcbiAgICAgICAgLy9oZWlnaHQ6IGNhbGMoJGhlYWRlckhlaWdodE1vYmlsZSAtIDMwcHgpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIC8vbWFyZ2luOiAxNXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7IC8vMTVweCAwO1xuICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJGJsYWNrO1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJsYWNrO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy90b3A6IDA7XG4gICAgICAgIC8vcmlnaHQ6IDIwcHg7XG4gICAgICAgIHotaW5kZXg6IDY7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICBncmlkLXJvdzogMSAvIHNwYW4gMjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xuICAgICAgICAgIC8vcmlnaHQ6IDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDQ1cHg7Ly9hdXRvOyAvLyR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAvL3BhZGRpbmc6IDA7XG4gICAgICAgICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgLmdsYXNzIHtcbiAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgLy9oZWlnaHQ6IDkwcHg7XG4gICAgICAgICAgLy9wYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIC8vcmlnaHQ6IDQ1cHg7XG4gICAgICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAvL3dpZHRoOiA0NXB4O1xuICAgICAgICAgICAgLy9oZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgICAvL3RvcDogMDtcbiAgICAgICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3JkZXI6IHVuc2V0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIC8vY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1cmdlciB7XG4gICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgIC8vaGVpZ2h0OiA5MHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIC8vcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIC8vdG9wOiBhdXRvO1xuICAgICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgICAgLy9ib3JkZXI6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MzQwcHhcIikge1xuICAgICAgICAgICAgLy9tYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAvL3RvcDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGRhcmtHcmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hY2NvdW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgLy90b3A6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRkYXJrR3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgLnNpdGUtc2VhcmNoLXdyYXAge1xuICAgICAgICBAaW5jbHVkZSB3cmFwO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIC8vcGFkZGluZzogNDBweCAwO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTsvLyRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjcmVhbTtcbiAgICAgICAgei1pbmRleDogNjtcbiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTBweCAtNXB4ICMwMDA7XG4gICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIC8vdG9wOiAxOThweDtcbiAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpdGUtc2VhcmNoIHtcbiAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgLnNpdGUtc2VhcmNoIHtcbiAgICAgICAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgICAgICAgIC8vQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAzNXB4IDA7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MHB4O1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICAgICAgICAvL2dyaWQtcm93LWdhcDogMTVweDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgNTBweDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgICAuc2VhcmNoLXF1ZXJ5IHtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgLy9wYWRkaW5nOiAwIDEwcHggMCAwO1xuICAgICAgICAgICAgICAvL2hlaWdodDogODBweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogYmxhY2s7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAgICAgLy9ib3JkZXItcmFkaXVzOiAyMHB4IDAgMCAwO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zZWFyY2gtY29udGV4dCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICAgIC8vcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgIC8vYm9yZGVyLXJhZGl1czogMCAwIDIwcHggMDtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yO1xuXG4gICAgICAgICAgICAgIG9wdGlvbiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnNlYXJjaC1zdWJtaXQge1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgICAgICAgICBjb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAvL2JvcmRlcjogMXB4IHNvbGlkICRtZWRpdW1EYXJrR3JheTtcbiAgICAgICAgICAgIC8vYm9yZGVyLXJhZGl1czogMjBweCAwO1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAuaGVhZGVyLWJhbm5lci13cmFwIHtcbiAgICBAaW5jbHVkZSB3cmFwO1xuICAgIGdyaWQtcm93LXN0YXJ0OiAyOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICAgIGdyaWQtcm93LWVuZDogMzsgLy8gZm9yIHN0aWNreSBmb290ZXJcblxuICAgIC8vaGVpZ2h0OiAzMDBweDtcbiAgICAvL2hlaWdodDogY2FsYyg1MHZoIC0gMTIwcHgpO1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGNyZWFtO1xuICAgIGFzcGVjdC1yYXRpbzogMTAvMztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZ3JpZC1yb3ctc3RhcnQ6IDE7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gICAgICBncmlkLXJvdy1lbmQ6IDI7IC8vIGZvciBzdGlja3kgZm9vdGVyXG5cbiAgICB9XG4gIH1cbiAgICAuaGVhZGVyLWJhbm5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDgwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4vL30gLy8gKiB3Zy1hcmNoaXZlXG4vKiBFTkQgQXJjaGl2ZSBtYXN0aGVhZCBzdHlsZXMgKi9cbiIsIi8qKlxuICAqIENPTlRFTlQgU1RZTEVTXG4gICovXG5cblxuLm1haW4td3JhcCB7XG4gIEBpbmNsdWRlIHdyYXA7XG4gIGdyaWQtcm93LXN0YXJ0OiAzOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICBncmlkLXJvdy1lbmQ6IDQ7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIC8vbWFyZ2luLXRvcDogY2FsYygtMSAqICgkaGVhZGVySGVpZ2h0TW9iaWxlICsgJHRvcEJhckhlaWdodCkpO1xuICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL25ld3NwcmludF90ZXh0dXJlLmpwZycpO1xuICAvL2JhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC8vYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAvL2JhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vdG9wOiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIC8vbWFyZ2luLXRvcDogY2FsYygtMSAqICgkaGVhZGVySGVpZ2h0RGVza3RvcCArICR0b3BCYXJIZWlnaHQpKTtcbiAgfVxufVxuICAubWFpbiB7XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBmb3Igc3RpY2t5IGZvb3RlcjogZmlsbCBhbnkgZW1wdHkgc3BhY2UgZG93biB0byBmb290ZXJcbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBleHRlbmRzIGhlaWdodCB0byBhY2NvbW9kYXRlIGNvbnRlbnQncyBtYXJnaW5cbiAgICAvL3BhZGRpbmctdG9wOiAycmVtO1xuICB9XG5cbiAgICAucGFnZS1jb250ZW50LXdyYXAge1xuICAgICAgQGluY2x1ZGUgd3JhcDtcblxuICAgIH1cbiAgICAgIC5wYWdlLWNvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgIC8vQGluY2x1ZGUgc3BhY2VyLXRvcDtcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIEBpbmNsdWRlIHNwYWNlci1ib3R0b207XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGFnZS1jb250ZW50LnNpZGUge1xuICAgICAgICAvL2Rpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDBweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMjg2cHg7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgICAucGFnZS1tYWluIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICAgIGdyaWQtcm93OiAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMCAyNXB4IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDRweCBkb3R0ZWQgJGJsYWNrO1xuICAgICAgICAgICAgLy9ib3JkZXItYm90dG9tOiAzcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgLy9mb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgd2lkdGg6IDQ0JTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgbGVmdDogMjglO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAvL3BhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIC8vcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAvL2ZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgLy9mb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2lkZSAucGFnZS1tYWluIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGFnZS1oZWFkZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAvL21heC1oZWlnaHQ6IGhlaWdodDogY2FsYyg1MHZoIC0gMTIwcHgpO1xuICAgICAgICAgIC8vcGFkZGluZy1ib3R0b206IDYwcHg7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaG9tZV9mZWF0dXJlXzIuanBnXCIpO1xuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgODAlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3I7XG4gICAgICAgICAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBzY3JlZW47XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIC8vbWluLWhlaWdodDogMjUwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICAgLnBhZ2UtaGVhZGVyLW92ZXJsYXkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChkYXJrZW4oJHRyYW5zR3JheSwgNDAlKSwgZGFya2VuKCR0cmFuc0dyYXksIDIwJSkpO1xuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wYWdlLWhlYWRlci1ib3gtd3JhcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHRNb2JpbGUgKyAkc3BhY2VyUGFkZGluZ1RhYmxldCk7XG4gICAgICAgICAgICAvL3BhZGRpbmc6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wICsgJHNwYWNlclBhZGRpbmdEZXNrdG9wKTsvL1xuICAgICAgICAgICAgICAvL2hlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgICAucGFnZS1oZWFkZXItYm94IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFjZXItdG9wO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBzcGFjZXItYm90dG9tO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAvL3BhZGRpbmc6IDQwcHggMzBweDtcbiAgICAgICAgICAgICAgLy9wYWRkaW5nLXRvcDogY2FsYygkaGVhZGVySGVpZ2h0TW9iaWxlICsgJHNwYWNlclBhZGRpbmdUYWJsZXQpO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgLy93aWR0aDogNjclO1xuICAgICAgICAgICAgICAgIC8vd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgLy9wYWRkaW5nLXRvcDogY2FsYygkaGVhZGVySGVpZ2h0RGVza3RvcCArICRzcGFjZXJQYWRkaW5nRGVza3RvcCk7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAvKi5sb2dvIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDQwcHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgIH0qL1xuXG4gICAgICAgICAgICAgIC8qYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9Ki9cblxuICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIC5wYWdlLXNpZGViYXIge1xuICAgICAgICAgIEBpbmNsdWRlIHNwYWNlci1ib3R0b207XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgICAgZ3JpZC1yb3c6IDE7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICAgLnBhZ2Utc2lkZWJhci1oZWFkaW5nIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMCAwO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweCAwIDE1cHggMTVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogM3B4IHNvbGlkICRtZWRpdW1HcmF5O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuc2lkZS1uYXYge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICAgIHVsLm1lbnUge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIC8vZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgLy9hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgLy9jb2x1bW4tZ2FwOiBhdXRvO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXk7XG5cbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bUdyYXk7XG5cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICAgIC8vcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRvZmZXaGl0ZTtcblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxNXB4O1xuICAgICAgICAgICAgICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAvL2FsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAvL2xpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuXG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrR3JheTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvKi5jdXJyZW50X3BhZ2VfaXRlbSB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0qL1xuXG4gICAgICAgICAgICAgICAgLm5hdi1jaGV2cm9uIHtcbiAgICAgICAgICAgICAgICAgIC8vZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgLy9yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAvL3RvcDogMzVweDtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZWRpdW1HcmF5O1xuXG4gICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICB1bC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgLy90b3A6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgbGkge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuLypcbiAgICAgICAgICAubGlzdGluZ3Mge1xuXG4gICAgICAgICAgfVxuICAgICAgICAgICAgLmxpc3Rpbmcge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyODBweCAxZnI7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGlnaHRHcmF5O1xuXG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5saXN0aW5nLWxlZnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtHcmF5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAubGlzdGluZy1yaWdodCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgICAgICAgICB9XG4qL1xuXG4gICAgICAgICAgICAgIC5zdWJ0aXRsZSwgcC5zdWJ0aXRsZSwgaDMuc3VidGl0bGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogOCU7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDBweDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgbGVmdDogNDYlO1xuICAgICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkY3JlYW07XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggZG90dGVkICRibGFjaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAvKlxuICAgICAgICAgICAgICAuaWZyYW1lLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNTYuMjUlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIC5pZnJhbWUtY29udGFpbmVyIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgKi9cblxuICAgICAgICAgICAgICAuZW1iZWQtY29udGFpbmVyLXdyYXAge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZW1iZWQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuICAgICAgICAgICAgICAgICAgLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4gICAgICAgICAgICAgICAgICAuZW1iZWQtY29udGFpbmVyIGVtYmVkIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICB9XG5cbi5wb3N0LWNhdCB7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgY29sb3I6ICRjcmVhbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4iLCIvKipcbiAgKiBGT09URVIgU1RZTEVTXG4gICovXG5cblxuLmZvb3Rlci13cmFwIHtcbiAgZ3JpZC1yb3ctc3RhcnQ6IDQ7IC8vIGZvciBzdGlja3kgZm9vdGVyXG4gIGdyaWQtcm93LWVuZDogNTsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtHcmF5O1xufVxuICAuZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBzcGFjZXItdG9wO1xuICAgIEBpbmNsdWRlIHNwYWNlci1ib3R0b207XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIGV4dGVuZHMgaGVpZ2h0IHRvIGFjY29tb2RhdGUgY29udGVudCdzIG1hcmdpblxuICAgIGNvbG9yOiAkb2ZmV2hpdGU7XG4gIH1cbiAgICAuZm9vdGVyLW5hdiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICAgICAgICBjb2xvcjogJG1lZGl1bURhcmtHcmF5O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgcmlnaHQ6IC0ycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICRvZmZXaGl0ZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29weXJpZ2h0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuIl19 */
