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

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

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

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

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

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

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

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

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/**
  * SCSS VARIABLES
  */
/**
  * Dimensions:
  */
/**
  * Colors:
  */
/**
  * FONT STYLES
  *
  * Define @font-face styles.
  */
@font-face {
  font-family: Montserrat;
  src: url(../fonts/Montserrat-Regular.ttf);
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: Montserrat;
  src: url(../fonts/Montserrat-Bold.ttf);
  font-weight: 700;
  font-style: normal;
}
/**
  * SCSS MIXINS
  *
  * Standardized style chunks, provided as both SCSS mixins and HTML classes.
  */
.wrap {
  width: 100%;
  height: auto;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.button {
  margin: 3rem 0;
  padding: 10px 15px;
  display: inline-block;
  background-color: rgb(34, 34, 34);
  text-transform: uppercase;
  font-weight: bold;
  color: #f9f9f9;
  cursor: pointer;
  border-radius: 2px;
  border: 2px solid #f9f9f9;
}

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

.no-scroll {
  overflow: hidden;
}

.h1 {
  font-size: 2.4rem;
  margin-top: 0;
  margin-bottom: 2rem;
}

.h2 {
  font-size: 2.2rem;
  margin-bottom: 1.9rem;
}

.h3 {
  font-size: 2.1rem;
  margin-bottom: 1.8rem;
}

.h4 {
  font-size: 2rem;
  margin-bottom: 1.7rem;
}

.h5 {
  font-size: 1.9rem;
  margin-bottom: 1.6rem;
}

.h6 {
  font-size: 1.8rem;
  margin-bottom: 1.5rem;
}

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

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

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

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  color: #000000;
  margin-top: 3rem;
  display: block;
  font-weight: 600;
  line-height: 1.3;
}

h1 {
  font-size: 2.4rem;
  margin-top: 0;
  margin-bottom: 2rem;
}

h2 {
  font-size: 2.2rem;
  margin-bottom: 1.9rem;
}

h3 {
  font-size: 2.1rem;
  margin-bottom: 1.8rem;
}

h4 {
  font-size: 2rem;
  margin-bottom: 1.7rem;
}

h5 {
  font-size: 1.9rem;
  margin-bottom: 1.6rem;
}

h6 {
  font-size: 1.8rem;
  margin-bottom: 1.5rem;
}

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

a {
  text-decoration: none;
  color: rgb(34, 34, 34);
}
ul, ol {
  margin: 1.5rem 0;
  padding: 0;
  list-style-position: inside;
}

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

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

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

/**
  * HEADER STYLES
  */
.header-wrap {
  width: 100%;
  height: auto;
  grid-row-start: 1;
  grid-row-end: 2;
  position: sticky;
  top: 0;
  z-index: 9999;
  border-top: 3px solid #3e2356;
  border-bottom: 1px solid rgb(224, 224, 224);
  background-color: rgb(250, 250, 250);
}

.header-overlay {
  /*width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: $brandColorPrimary;
  opacity: 0.7;

  &.bg-visible {
    background-color: $brandColorPrimary;
    opacity: 1;
  }*/
}

.top-bar-bg {
  width: 100%;
  height: 35px;
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  border-bottom: 1px solid rgb(224, 224, 224);
  background-color: rgb(242, 242, 242);
}
@media (min-width: 768px) {
  .top-bar-bg {
    display: block;
  }
}

.header {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  height: 90px;
  padding-top: 0;
  position: relative;
}
@media (min-width: 768px) {
  .header {
    height: 100px;
    padding-top: 35px;
  }
}

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

.header-nav {
  width: 100%;
  height: 0;
  position: absolute;
  top: 90px;
  display: none;
  overflow: hidden;
}
@media (min-width: 768px) {
  .header-nav {
    height: 65px;
    display: block;
    top: 0;
    overflow: visible;
  }
}

.header-nav-main {
  width: 100%;
  padding-right: 0;
  padding-left: 0;
  height: auto;
  position: static;
  top: auto;
  right: auto;
  display: block;
  background-color: rgb(250, 250, 250);
}
@media (min-width: 768px) {
  .header-nav-main {
    padding-right: 20px;
    transition: padding 300ms;
    padding-left: 20px;
    transition: padding 300ms;
    padding-left: 0;
    width: auto;
    height: 65px;
    position: absolute;
    top: 35px;
    right: 0;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .header-nav-main {
    padding-right: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .header-nav-main {
    padding-right: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .header-nav-main {
    padding-right: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .header-nav-main {
    padding-right: 80px;
  }
}
@media (min-width: 768px) and (min-width: 480px) {
  .header-nav-main {
    padding-left: 25px;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .header-nav-main {
    padding-left: 30px;
  }
}
@media (min-width: 768px) and (min-width: 992px) {
  .header-nav-main {
    padding-left: 60px;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .header-nav-main {
    padding-left: 80px;
  }
}
.header-nav-main ul {
  width: 100%;
  height: auto;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  list-style: none;
  -moz-column-gap: auto;
       column-gap: auto;
  border-top: 1px solid rgb(224, 224, 224);
}
@media (min-width: 768px) {
  .header-nav-main ul {
    width: auto;
    height: 65px;
    flex-direction: row;
    -moz-column-gap: 10px;
         column-gap: 10px;
    border-top: unset;
  }
}
.header-nav-main ul li {
  width: 100%;
  height: auto;
  min-height: 45px;
  list-style: none;
  border-top: unset;
  border-bottom: 1px solid rgb(224, 224, 224);
  position: relative;
}
@media (min-width: 768px) {
  .header-nav-main ul li {
    width: auto;
    height: 65px;
    border-top: 3px solid #3e2356;
    border-bottom: unset;
    transition: display 300ms, background-color 300ms;
  }
  .header-nav-main ul li.active {
    height: 66px;
    background-color: rgb(224, 224, 224);
  }
  .header-nav-main ul li:nth-child(1) {
    border-top: 3px solid #385723;
  }
  .header-nav-main ul li:nth-child(1).active ul li {
    border-top: 1px solid #c7c7c7;
  }
  .header-nav-main ul li:nth-child(2) {
    border-top: 3px solid #c00000;
  }
  .header-nav-main ul li:nth-child(2).active ul li {
    border-top: 1px solid #c7c7c7;
  }
  .header-nav-main ul li:nth-child(3) {
    border-top: 3px solid #4472c4;
  }
  .header-nav-main ul li:nth-child(3).active ul li {
    border-top: 1px solid #c7c7c7;
  }
  .header-nav-main ul li:nth-child(4) {
    border-top: 3px solid #3e2356;
  }
  .header-nav-main ul li:nth-child(4).active ul li {
    border-top: 1px solid #c7c7c7;
  }
  .header-nav-main ul li:hover > ul {
    display: block;
  }
}
.header-nav-main ul li.current_page_item {
  border-top-width: 10px;
}
.header-nav-main ul li.current_page_item a {
  margin-top: 0px;
}
.header-nav-main ul li.current_page_item ul {
  margin-top: 0px;
}
.header-nav-main ul li.current_page_item ul li a {
  margin-top: 0;
}
@media (min-width: 768px) {
  .header-nav-main ul li.current_page_item a {
    margin-top: -7px;
  }
  .header-nav-main ul li.current_page_item ul {
    margin-top: -7px;
  }
  .header-nav-main ul li.current_page_item ul li a {
    margin-top: 0;
  }
}
.header-nav-main ul li.current_page_ancestor {
  border-top-width: 10px;
}
.header-nav-main ul li.current_page_ancestor a {
  margin-top: 0px;
}
.header-nav-main ul li.current_page_ancestor ul {
  margin-top: 0px;
}
.header-nav-main ul li.current_page_ancestor ul li a {
  margin-top: 0;
}
@media (min-width: 768px) {
  .header-nav-main ul li.current_page_ancestor a {
    margin-top: -7px;
  }
  .header-nav-main ul li.current_page_ancestor ul {
    margin-top: -7px;
  }
  .header-nav-main ul li.current_page_ancestor ul li a {
    margin-top: 0;
  }
}
.header-nav-main ul li a {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  width: 100%;
  height: 45px;
  position: relative;
  display: flex;
  align-items: center;
  font-weight: bold;
  font-size: 1.2rem;
  text-transform: uppercase;
  color: #000000;
}
@media (min-width: 480px) {
  .header-nav-main ul li a {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .header-nav-main ul li a {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .header-nav-main ul li a {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .header-nav-main ul li a {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .header-nav-main ul li a {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .header-nav-main ul li a {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .header-nav-main ul li a {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .header-nav-main ul li a {
    padding-left: 80px;
  }
}
.header-nav-main ul li a:hover {
  color: rgb(34, 34, 34);
}
@media (min-width: 768px) {
  .header-nav-main ul li a {
    width: auto;
    height: 65px;
    padding: 0 10px;
    font-size: 1.2rem;
  }
}
.header-nav-main ul li .nav-chevron {
  width: 45px;
  height: 45px;
  display: flex;
  position: absolute;
  right: 0;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}
@media (min-width: 768px) {
  .header-nav-main ul li .nav-chevron {
    display: none;
  }
}
.header-nav-main ul li ul {
  width: 100%;
  height: auto;
  position: relative;
  top: 0;
  list-style: none;
  display: none;
  background-color: rgb(224, 224, 224);
  border-top: 1px solid rgb(224, 224, 224);
  border-right: 1px solid #c7c7c7;
  border-bottom: 1px solid #c7c7c7;
  border-left: 1px solid #c7c7c7;
  /*&::before {
    //content: "";
    //width: 0;
    //height: 0;
    border-top: none;
    border-bottom: none;
    border-left: none;
    //transform: rotate(45deg);
    //position: absolute;
    //top: -12px;
    //right: -1px;
    //z-index: 1001;

    @include media(">=tablet") {
      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) {
  .header-nav-main ul li ul {
    width: auto;
    position: absolute;
    top: 62px;
  }
}
.header-nav-main ul li ul li {
  width: 100%;
  height: 35px;
  list-style: none;
  display: block;
  border-top: 1px solid #c7c7c7;
}
.header-nav-main ul li ul li:nth-child(1) {
  border-top: unset;
}
.header-nav-main ul li ul li:nth-child(2) {
  border-top: 1px solid #c7c7c7;
}
.header-nav-main ul li ul li:nth-child(3) {
  border-top: 1px solid #c7c7c7;
}
.header-nav-main ul li ul li:nth-child(4) {
  border-top: 1px solid #c7c7c7;
}
@media (min-width: 768px) {
  .header-nav-main ul li ul li {
    min-width: 225px;
    border-top: 1px solid #c7c7c7;
  }
}
.header-nav-main ul li ul li a {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  width: 100%;
  height: 45px;
  margin: 0 15px;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #3e2356;
}
@media (min-width: 480px) {
  .header-nav-main ul li ul li a {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .header-nav-main ul li ul li a {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .header-nav-main ul li ul li a {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .header-nav-main ul li ul li a {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .header-nav-main ul li ul li a {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .header-nav-main ul li ul li a {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .header-nav-main ul li ul li a {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .header-nav-main ul li ul li a {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .header-nav-main ul li ul li a {
    margin: 0;
    padding-right: 15px;
    padding-left: 15px;
  }
}

.header-buttons {
  padding-right: 20px;
  transition: padding 300ms;
  width: auto;
  height: 90px;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 6;
}
@media (min-width: 480px) {
  .header-buttons {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .header-buttons {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .header-buttons {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .header-buttons {
    padding-right: 80px;
  }
}
@media (min-width: 768px) {
  .header-buttons {
    height: 35px;
    padding-left: 0;
  }
}

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

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

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

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

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

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

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

.header-image {
  position: relative;
  z-index: 5;
}

.home-banner {
  width: 100%;
  min-height: 300px;
  background-image: url("../images/home_banner.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}
.home-banner-overlay {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
}
.home-banner-overlay .home-banner-box-wrap {
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  margin: 0 auto;
  text-align: center;
}
@media (min-width: 480px) {
  .home-banner-overlay .home-banner-box-wrap {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .home-banner-overlay .home-banner-box-wrap {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .home-banner-overlay .home-banner-box-wrap {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .home-banner-overlay .home-banner-box-wrap {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .home-banner-overlay .home-banner-box-wrap {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .home-banner-overlay .home-banner-box-wrap {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .home-banner-overlay .home-banner-box-wrap {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .home-banner-overlay .home-banner-box-wrap {
    padding-left: 80px;
  }
}
.home-banner-overlay .home-banner-box {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  width: auto;
  background-color: rgba(68, 114, 196, 0.8);
  text-align: center;
  margin: 0 auto;
}
.home-banner-overlay .home-banner-box span {
  width: auto;
  padding: 30px 40px;
  font-size: 1.6em;
  line-height: 1;
  color: rgb(250, 250, 250);
  display: block;
}
@media (min-width: 768px) {
  .home-banner-overlay .home-banner-box span {
    padding: 40px 50px;
    font-size: 2.8em;
  }
}

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

.page-header {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding-top: 20px;
  transition: padding 300ms;
  padding-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
}
@media (min-width: 480px) {
  .page-header {
    padding-top: 25px;
  }
}
@media (min-width: 768px) {
  .page-header {
    padding-top: 40px;
  }
}
@media (min-width: 992px) {
  .page-header {
    padding-top: 50px;
  }
}
@media (min-width: 1200px) {
  .page-header {
    padding-top: 60px;
  }
}
@media (min-width: 480px) {
  .page-header {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .page-header {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .page-header {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .page-header {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .page-header {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .page-header {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .page-header {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .page-header {
    padding-left: 80px;
  }
}

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

.page-intro-title {
  text-align: center;
}

.page-intro-description {
  text-align: center;
}

.page-title {
  margin-bottom: 30px;
  text-align: center;
}
.page-title h2 {
  margin: 0 auto;
  padding: 20px;
  display: inline-block;
  background-color: #000000;
  color: #ffffff;
}

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

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

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

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

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

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

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

.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: 50px;
  }
}
@media (min-width: 1200px) {
  .page-sidebar {
    padding-bottom: 60px;
  }
}
@media (min-width: 768px) {
  .page-sidebar {
    grid-column: 2/span 1;
    grid-row: 1;
  }
}

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

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

.footer-nav {
  padding-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-right: 20px;
  transition: padding 300ms;
  padding-left: 20px;
  transition: padding 300ms;
  width: 100%;
  padding: 5px 10px;
  list-style: none;
  position: relative;
  display: inline-block;
  position: relative;
}
@media (min-width: 480px) {
  .footer-nav ul li {
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .footer-nav ul li {
    padding-right: 30px;
  }
}
@media (min-width: 992px) {
  .footer-nav ul li {
    padding-right: 60px;
  }
}
@media (min-width: 1200px) {
  .footer-nav ul li {
    padding-right: 80px;
  }
}
@media (min-width: 480px) {
  .footer-nav ul li {
    padding-left: 25px;
  }
}
@media (min-width: 768px) {
  .footer-nav ul li {
    padding-left: 30px;
  }
}
@media (min-width: 992px) {
  .footer-nav ul li {
    padding-left: 60px;
  }
}
@media (min-width: 1200px) {
  .footer-nav ul li {
    padding-left: 80px;
  }
}
@media (min-width: 768px) {
  .footer-nav ul li {
    width: auto;
    padding: 0 10px;
  }
  .footer-nav ul li:after {
    content: "|";
    color: #f9f9f9;
    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: #f9f9f9;
  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;
}

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

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

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

.working-group {
  margin-bottom: 20px;
  display: grid;
  grid-template-columns: 150px 1fr;
  grid-template-rows: auto;
  gap: 20px;
  padding: 20px;
  background-color: rgb(242, 242, 242);
}
.working-group-image {
  grid-column: 1/span 2;
}
@media (min-width: 480px) {
  .working-group-image {
    grid-column: 1/span 1;
  }
}

.working-group-text {
  grid-column: 1/span 2;
}
@media (min-width: 480px) {
  .working-group-text {
    grid-column: 2/span 1;
  }
}

.working-group-text-title h3 {
  margin-top: 0;
  margin-bottom: 15px;
}

.working-group-text-description {
  margin-bottom: 0;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndvcmtpbmctZ3JvdXBzLmNzcyIsIndvcmtpbmctZ3JvdXBzLnNjc3MiLCJfY29tbW9uLnNjc3MiLCJsaWJyYXJpZXMvX25vcm1hbGl6ZS5zY3NzIiwicGFydGlhbHMvX2JyZWFrcG9pbnRzLm1vZHVsZXMuc2NzcyIsInBhcnRpYWxzL192YXJpYWJsZXMuc2NzcyIsInBhcnRpYWxzL19mb250cy5zY3NzIiwicGFydGlhbHMvX21peGlucy5zY3NzIiwibGlicmFyaWVzL19pbmNsdWRlLW1lZGlhLnNjc3MiLCJwYXJ0aWFscy9fZWxlbWVudHMuc2NzcyIsInBhcnRpYWxzL19oZWFkZXIuc2NzcyIsInBhcnRpYWxzL19zZWFyY2hmb3JtLnNjc3MiLCJwYXJ0aWFscy9fbWFpbi5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX21pc2Muc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7Ozs7R0FBQTtBQ0FBOzs7O0dBQUE7QUNBQSwyRUFBQTtBQUVBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRSxpQkFBQSxFQUFBLE1BQUE7RUFDQSw4QkFBQSxFQUFBLE1BQUE7QUhTRjs7QUdOQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRSxTQUFBO0FIT0Y7O0FHSkE7O0VBQUE7QUFJQTtFQUNFLGNBQUE7QUhNRjs7QUdIQTs7O0VBQUE7QUFLQTtFQUNFLGNBQUE7RUFDQSxnQkFBQTtBSEtGOztBR0ZBOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7RUFDRSx1QkFBQSxFQUFBLE1BQUE7RUFDQSxTQUFBLEVBQUEsTUFBQTtFQUNBLGlCQUFBLEVBQUEsTUFBQTtBSEdGOztBR0FBOzs7RUFBQTtBQUtBO0VBQ0UsaUNBQUEsRUFBQSxNQUFBO0VBQ0EsY0FBQSxFQUFBLE1BQUE7QUhFRjs7QUdDQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRSw2QkFBQTtBSEFGOztBR0dBOzs7RUFBQTtBQUtBO0VBQ0UsbUJBQUEs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VnlCO0VMNlczQjtBQUNGO0FRNEtJO0VEamdCRjtJQVhFLGdCRmJxQjtFTGlYdkI7QUFDRjtBUXVLSTtFRGpnQkY7SUFQRSxnQkZoQnFCO0VMcVh2QjtBQUNGO0FRa0tJO0VEamdCRjtJQUhFLGdCRm5Cc0I7RUx5WHhCO0FBQ0Y7O0FPNVVFO0VBbkJBLG1CRi9CdUI7RUVnQ3ZCLHdCQUFBO0FQbVdGO0FRd0pJO0VEemVGO0lBZkUsbUJGbEN5QjtFTHNZM0I7QUFDRjtBUW1KSTtFRHplRjtJQVhFLG1CRnJDcUI7RUwwWXZCO0FBQ0Y7QVE4SUk7RUR6ZUY7SUFQRSxtQkZ4Q3FCO0VMOFl2QjtBQUNGO0FReUlJO0VEemVGO0lBSEUsbUJGM0NzQjtFTGtaeEI7QUFDRjs7QU83VkU7RUFuREEsZ0JGUHVCO0VFUXZCLHdCQUFBO0VBdUJBLG1CRi9CdUI7RUVnQ3ZCLHdCQUFBO0FQOFhGO0FRNkhJO0VEamVGO0lBL0NFLGdCRlZ5QjtFTGlhM0I7QUFDRjtBUXdISTtFRGplRjtJQTNDRSxnQkZicUI7RUxxYXZCO0FBQ0Y7QVFtSEk7RURqZUY7SUF2Q0UsZ0JGaEJxQjtFTHlhdkI7QUFDRjtBUThHSTtFRGplRjtJQW5DRSxnQkZuQnNCO0VMNmF4QjtBQUNGO0FReUdJO0VEamVGO0lBdkJFLG1CRmxDeUI7RUxxYjNCO0FBQ0Y7QVFvR0k7RURqZUY7SUFuQkUsbUJGckNxQjtFTHlidkI7QUFDRjtBUStGSTtFRGplRjtJQWZFLG1CRnhDcUI7RUw2YnZCO0FBQ0Y7QVEwRkk7RURqZUY7SUFYRSxtQkYzQ3NCO0VMaWN4QjtBQUNGOztBTy9XRTtFQXhCQSxrQkYvRHVCO0VFZ0V2Qix3QkFBQTtFQUNBLDRCQUFBO0FQMllGO0FRK0VJO0VEcGNGO0lBbkJFLGtCRm5FeUI7SUVvRXpCLDRCQUFBO0VQNFlGO0FBQ0Y7QVF5RUk7RURwY0Y7SUFkRSxrQkZ2RXFCO0lFd0VyQiw0QkFBQTtFUDZZRjtBQUNGO0FRbUVJO0VEcGNGO0lBVEUsa0JGM0VxQjtJRTRFckIsNEJBQUE7RVA4WUY7QUFDRjtBUTZESTtFRHBjRjtJQUpFLGtCRi9Fc0I7SUVnRnRCLDRCQUFBO0VQK1lGO0FBQ0Y7O0FPaFhFO0VBeEJBLGlCRjVGdUI7RUU2RnZCLHdCQUFBO0VBQ0EsNEJBQUE7QVA0WUY7QVFpREk7RUR2YUY7SUFuQkUsaUJGaEd5QjtJRWlHekIsNEJBQUE7RVA2WUY7QUFDRjtBUTJDSTtFRHZhRjtJQWRFLGlCRnBHcUI7SUVxR3JCLDRCQUFBO0VQOFlGO0FBQ0Y7QVFxQ0k7RUR2YUY7SUFURSxpQkZ4R3FCO0lFeUdyQiw0QkFBQTtFUCtZRjtBQUNGO0FRK0JJO0VEdmFGO0lBSkUsaUJGNUdzQjtJRTZHdEIsNEJBQUE7RVBnWkY7QUFDRjs7QU81V0U7RUE3QkEsaUJGekh1QjtFRTBIdkIsa0JGMUh1QjtFRTJIdkIsd0JBQUE7RUFDQSw0QkFBQTtBUDZZRjtBUWtCSTtFRHJZRjtJQXZCRSxpQkY5SHlCO0lFK0h6QixrQkYvSHlCO0lFZ0l6Qiw0QkFBQTtFUDhZRjtBQUNGO0FRV0k7RURyWUY7SUFqQkUsaUJGbklxQjtJRW9JckIsa0JGcElxQjtJRXFJckIsNEJBQUE7RVArWUY7QUFDRjtBUUlJO0VEcllGO0lBWEUsaUJGeElxQjtJRXlJckIsa0JGeklxQjtJRTBJckIsNkJBQUE7RVBnWkY7QUFDRjtBUUhJO0VEcllGO0lBTEUsaUJGN0lzQjtJRThJdEIsa0JGOUlzQjtJRStJdEIsNkJBQUE7RVBpWkY7QUFDRjs7QU9sWEU7RUF4QkEsbUJBQUE7RUFDQSx3QkFBQTtBUDhZRjtBUWZJO0VEeFdGO0lBbkJFLG1CQUFBO0VQOFlGO0FBQ0Y7QVFwQkk7RUR4V0Y7SUFkRSxtQkFBQTtFUDhZRjtBQUNGO0FRekJJO0VEeFdGO0lBVEUsbUJBQUE7RVA4WUY7QUFDRjtBUTlCSTtFRHhXRjtJQUpFLG1CQUFBO0VQOFlGO0FBQ0Y7O0FPOVdFO0VBeEJBLGtCQUFBO0VBQ0Esd0JBQUE7QVAwWUY7QVF4Q0k7RUQzVUY7SUFuQkUsa0JBQUE7RVAwWUY7QUFDRjtBUTdDSTtFRDNVRjtJQWRFLGtCQUFBO0VQMFlGO0FBQ0Y7QVFsREk7RUQzVUY7SUFURSxrQkFBQTtFUDBZRjtBQUNGO0FRdkRJO0VEM1VGO0lBSkUsa0JBQUE7RVAwWUY7QUFDRjs7QU9yV0U7RUE3QkEsa0JBQUE7RUFDQSxtQkFBQTtFQUNBLHdCQUFBO0VBQ0Esd0JBQUE7QVBzWUY7QVFuRUk7RUR6U0Y7SUF2QkUsa0JBQUE7SUFDQSxtQkFBQTtJQUNBLHdCQUFBO0VQdVlGO0FBQ0Y7QVExRUk7RUR6U0Y7SUFqQkUsa0JBQUE7SUFDQSxtQkFBQTtJQUNBLHdCQUFBO0VQd1lGO0FBQ0Y7QVFqRkk7RUR6U0Y7SUFYRSxrQkFBQTtJQUNBLG1CQUFBO0lBQ0EseUJBQUE7RVB5WUY7QUFDRjtBUXhGSTtFRHpTRjtJQUxFLGtCQUFBO0lBQ0EsbUJBQUE7SUFDQSx5QkFBQTtFUDBZRjtBQUNGOztBT2hYRTtFQW5CQSxpQkZoUG9CO0VFaVBwQix5QkFBQTtBUHVZRjtBUXBHSTtFRGpSRjtJQWZFLGlCRm5Qc0I7RUwybkJ4QjtBQUNGO0FRekdJO0VEalJGO0lBWEUsaUJGdFBrQjtFTCtuQnBCO0FBQ0Y7QVE5R0k7RURqUkY7SUFQRSxpQkZ6UGtCO0VMbW9CcEI7QUFDRjtBUW5ISTtFRGpSRjtJQUhFLGlCRjVQbUI7RUx1b0JyQjtBQUNGOztBT2pYRTtFQW5CQSxvQkZ4UW9CO0VFeVFwQix5QkFBQTtBUHdZRjtBUTdISTtFRHpQRjtJQWZFLG9CRjNRc0I7RUxvcEJ4QjtBQUNGO0FRbElJO0VEelBGO0lBWEUsb0JGOVFrQjtFTHdwQnBCO0FBQ0Y7QVF2SUk7RUR6UEY7SUFQRSxvQkZqUmtCO0VMNHBCcEI7QUFDRjtBUTVJSTtFRHpQRjtJQUhFLG9CRnBSbUI7RUxncUJyQjtBQUNGOztBT2xYRTtFQW5CQSxrQkZ2U3VCO0VFd1N2Qix5QkFBQTtBUHlZRjtBUXRKSTtFRGpPRjtJQWZFLGtCRjFTeUI7RUxvckIzQjtBQUNGO0FRM0pJO0VEak9GO0lBWEUsa0JGN1NxQjtFTHdyQnZCO0FBQ0Y7QVFoS0k7RURqT0Y7SUFQRSxrQkZoVHFCO0VMNHJCdkI7QUFDRjtBUXJLSTtFRGpPRjtJQUhFLGtCRm5Uc0I7RUxnc0J4QjtBQUNGOztBT25YRTtFQW5CQSxtQkYvVHVCO0VFZ1V2Qix5QkFBQTtBUDBZRjtBUS9LSTtFRHpNRjtJQWZFLG1CRmxVeUI7RUw2c0IzQjtBQUNGO0FRcExJO0VEek1GO0lBWEUsbUJGclVxQjtFTGl0QnZCO0FBQ0Y7QVF6TEk7RUR6TUY7SUFQRSxtQkZ4VXFCO0VMcXRCdkI7QUFDRjtBUTlMSTtFRHpNRjtJQUhFLG1CRjNVc0I7RUx5dEJ4QjtBQUNGOztBT3BZRTtFQW5HQSxpQkZoUG9CO0VFaVBwQix5QkFBQTtFQXVCQSxvQkZ4UW9CO0VFeVFwQix5QkFBQTtBUHFkRjtBUTFNSTtFRGpNRjtJQS9GRSxpQkZuUHNCO0VMaXVCeEI7QUFDRjtBUS9NSTtFRGpNRjtJQTNGRSxpQkZ0UGtCO0VMcXVCcEI7QUFDRjtBUXBOSTtFRGpNRjtJQXZGRSxpQkZ6UGtCO0VMeXVCcEI7QUFDRjtBUXpOSTtFRGpNRjtJQW5GRSxpQkY1UG1CO0VMNnVCckI7QUFDRjtBUTlOSTtFRGpNRjtJQXZFRSxvQkYzUXNCO0VMcXZCeEI7QUFDRjtBUW5PSTtFRGpNRjtJQW5FRSxvQkY5UWtCO0VMeXZCcEI7QUFDRjtBUXhPSTtFRGpNRjtJQS9ERSxvQkZqUmtCO0VMNnZCcEI7QUFDRjtBUTdPSTtFRGpNRjtJQTNERSxvQkZwUm1CO0VMaXdCckI7QUFDRjs7QU8zYUU7RUFuQ0EsbUJGL1R1QjtFRWdVdkIseUJBQUE7RUF6QkEsa0JGdlN1QjtFRXdTdkIseUJBQUE7QVA0ZUY7QVF6UEk7RUR6TEY7SUEvQkUsbUJGbFV5QjtFTHV4QjNCO0FBQ0Y7QVE5UEk7RUR6TEY7SUEzQkUsbUJGclVxQjtFTDJ4QnZCO0FBQ0Y7QVFuUUk7RUR6TEY7SUF2QkUsbUJGeFVxQjtFTCt4QnZCO0FBQ0Y7QVF4UUk7RUR6TEY7SUFuQkUsbUJGM1VzQjtFTG15QnhCO0FBQ0Y7QVE3UUk7RUR6TEY7SUF2REUsa0JGMVN5QjtFTDJ5QjNCO0FBQ0Y7QVFsUkk7RUR6TEY7SUFuREUsa0JGN1NxQjtFTCt5QnZCO0FBQ0Y7QVF2Ukk7RUR6TEY7SUEvQ0Usa0JGaFRx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QUFBO0VBQ0EsZ0NBQUE7RUFDQSw4QkFBQTtFQWVBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUFBO0FWc2pDaEI7QVEzN0JJO0VFdEpVO0lBbUJJLFdBQUE7SUFDQSxrQkFBQTtJQUNBLFNBQUE7RVZra0NoQjtBQUNGO0FVamlDZ0I7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUVBLDZCQUFBO0FWa2lDbEI7QVVoaUNrQjtFQUVFLGlCQUFBO0FWaWlDcEI7QVU3aENrQjtFQUdFLDZCQUFBO0FWNmhDcEI7QVUxaENrQjtFQUdFLDZCQUFBO0FWMGhDcEI7QVV2aENrQjtFQUdFLDZCQUFBO0FWdWhDcEI7QVFyOUJJO0VFL0ZZO0lBaUNJLGdCQUFBO0lBRUEsNkJBQUE7RVZzaENsQjtBQUNGO0FVcGhDa0I7RUhuS2hCLG1CRi9UdUI7RUVnVXZCLHlCQUFBO0VBekJBLGtCRnZTdUI7RUV3U3ZCLHlCQUFBO0VHNExrQixXQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7RUFFQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLGNMNWNOO0FMbytDZDtBUXgrQkk7RUV6RGM7SUgvSmQsbUJGbFV5QjtFTHNnRDNCO0FBQ0Y7QVE3K0JJO0VFekRjO0lIM0pkLG1CRnJVcUI7RUwwZ0R2QjtBQUNGO0FRbC9CSTtFRXpEYztJSHZKZCxtQkZ4VXFCO0VMOGdEdkI7QUFDRjtBUXYvQkk7RUV6RGM7SUhuSmQsbUJGM1VzQjtFTGtoRHhCO0FBQ0Y7QVE1L0JJO0VFekRjO0lIdkxkLGtCRjFTeUI7RUwwaEQzQjtBQUNGO0FRamdDSTtFRXpEYztJSG5MZCxrQkY3U3FCO0VMOGhEdkI7QUFDRjtBUXRnQ0k7RUV6RGM7SUgvS2Qsa0JGaFRxQjtFTGtpRHZCO0FBQ0Y7QVEzZ0NJO0VFekRjO0lIM0tkLGtCRm5Uc0I7RUxzaUR4QjtBQUNGO0FRaGhDSTtFRXpEYztJQWdCSSxTQUFBO0lBQ0EsbUJBQUE7SUFDQSxrQkFBQTtFVjZqQ3BCO0FBQ0Y7O0FVaGpDSTtFSG5NRixtQkYvVHVCO0VFZ1V2Qix5QkFBQTtFR29NSSxXQUFBO0VBQ0EsWUwzZ0JlO0VLNGdCZixhQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsVUFBQTtBVm9qQ047QVFwaUNJO0VFekJBO0lIL0xBLG1CRmxVeUI7RUxra0QzQjtBQUNGO0FRemlDSTtFRXpCQTtJSDNMQSxtQkZyVXFCO0VMc2tEdkI7QUFDRjtBUTlpQ0k7RUV6QkE7SUh2TEEsbUJGeFVxQjtFTDBrRHZCO0FBQ0Y7QVFuakNJO0VFekJBO0lIbkxBLG1CRjNVc0I7RUw4a0R4QjtBQUNGO0FReGpDSTtFRXpCQTtJQVlJLFlMbGhCTztJS21oQlAsZUFBQTtFVnlrQ047QUFDRjs7QVV2a0NNO0VBQ0UsaUJBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxTQUFBO0FWMGtDUjtBUXJrQ0k7RUVURTtJQU9JLFlMN2hCSztJSzhoQkwsYUFBQTtFVjJrQ1I7QUFDRjtBVXprQ1E7RUFDRSxjTDFmRDtBTHFrRFQ7QVV6a0NVO0VBQ0UsY0FBQTtBVjJrQ1o7QVVsa0NNO0VBQ0UsY0FBQTtFQUNBLGlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0FWb2tDUjtBUXZsQ0k7RUVlRTtJQU9JLGlCQUFBO0VWcWtDUjtBQUNGO0FRNWxDSTtFRWVFO0lBV0ksYUFBQTtFVnNrQ1I7QUFDRjtBVXBrQ1E7RUFDRSxjTHJoQkQ7QUwybERUO0FVcGtDVTtFQUNFLGNBQUE7QVZza0NaOztBVWprQ0k7RUgza0JGLFdBQUE7RUFDQSxZQUFBO0VHNGtCSSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsU0w1a0JlO0VLNmtCZixPQUFBO0VBQ0Esc0JMNWhCUTtFSzZoQlIsVUFBQTtBVnFrQ047QVFubkNJO0VFc0NBO0lBV0ksU0xobEJPO0lLaWxCUCxZQUFBO0VWc2tDTjtBQUNGO0FVcGtDTTtFSGpSSixtQkYvVHVCO0VFZ1V2Qix5QkFBQTtFQXpCQSxrQkZ2U3VCO0VFd1N2Qix5QkFBQTtBUGszQ0Y7QVEvbkNJO0VFcURFO0lIN1FGLG1C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RUFDQSxpQkZSVTtFRVNWLGNBQUE7RUF1UEEsaUJGaFBvQjtFRWlQcEIseUJBQUE7RUF1RUEsbUJGL1R1QjtFRWdVdkIseUJBQUE7RUF6QkEsa0JGdlN1QjtFRXdTdkIseUJBQUE7QVBrbERGO0FRLzFDSTtFSXJkRTtJTHFMRixpQkZuUHNCO0VMczNEeEI7QUFDRjtBUXAyQ0k7RUlyZEU7SUx5TEYsaUJGdFBrQjtFTDAzRHBCO0FBQ0Y7QVF6MkNJO0VJcmRFO0lMNkxGLGlCRnpQa0I7RUw4M0RwQjtBQUNGO0FROTJDSTtFSXJkRTtJTGlNRixpQkY1UG1CO0VMazREckI7QUFDRjtBUW4zQ0k7RUlyZEU7SUw2UEYsbUJGbFV5QjtFTGk1RDNCO0FBQ0Y7QVF4M0NJO0VJcmRFO0lMaVFGLG1CRnJVcUI7RUxxNUR2QjtBQUNGO0FRNzNDSTtFSXJkRTtJTHFRRixtQkZ4VXFCO0VMeTVEdkI7QUFDRjtBUWw0Q0k7RUlyZEU7SUx5UUYsbUJGM1VzQjtFTDY1RHhCO0FBQ0Y7QVF2NENJO0VJcmRFO0lMcU9GLGtCRjFTeUI7RUxxNkQzQjtBQUNGO0FRNTRDSTtFSXJkRTtJTHlPRixrQkY3U3FCO0VMeTZEdkI7QUFDRjtBUWo1Q0k7RUlyZEU7SUw2T0Ysa0JGaFRxQjtFTDY2RHZCO0FBQ0Y7QVF0NUNJO0VJcmRFO0lMaVBGLGtCRm5Uc0I7RUxpN0R4QjtBQUNGOztBWTMyRFE7RUxvTU4sb0JGeFFvQjtFRXlRcEIseUJBQUE7QVAycURGO0FRaDZDSTtFSWhkSTtJTHdNSixvQkYzUXNCO0VMdTdEeEI7QUFDRjtBUXI2Q0k7RUloZEk7SUw0TUosb0JGOVFrQjtFTDI3RHBCO0FBQ0Y7QVExNkNJO0VJaGRJO0lMZ05KLG9CRmpSa0I7RUwrN0RwQjtBQUNGO0FRLzZDSTtFSWhkSTtJTG9OSixvQkZwUm1CO0VMbThEckI7QUFDRjs7QVlqNERVO0VBQ0Usa0JBQUE7QVpvNERaOztBWWo0RFU7RUFDRSxrQkFBQTtBWm80RFo7O0FZajREUTtFQUNFLG1CQUFBO0VBQ0Esa0JBQUE7QVpvNERWO0FZbDREVTtFQUNFLGNBQUE7RUFDQSxhQUFBO0VBQ0EscUJBQUE7RUFDQSx5QlAxREg7RU8yREcsY1A3REg7QUxpOERUOztBWWg0REk7RUw3R0YsV0FBQTtFQUNBLFlBQUE7QVBpL0RGOztBWWw0RE07RUFDRSxhQUFBO0VBQ0EsMEJBQUE7RUFDQSx3QkFBQTtBWnE0RFI7QVFuOUNJO0VJcmJFO0lBTUksMEJBQUE7SUFDQSx3QkFBQTtFWnM0RFI7QUFDRjs7QVluNERNO0VBQ0UsOEJBQUE7RUFDQSw2QkFBQTtBWnM0RFI7QVE5OUNJO0VJMWFFO0lBS0ksZ0NBQUE7SUFDQSw0QkFBQTtFWnU0RFI7QUFDRjs7QVlyNERRO0VBQ0UsV0FBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7RUFDQSxXQUFBO0FadzREVjtBUTMrQ0k7RUlqYUk7SUFPSSxxQkFBQTtJQUNBLFdBQUE7RVp5NERWO0FBQ0Y7O0FZdjREVTtFTC9JUixXQUFBO0VBQ0EsWUFBQTtBUDBoRUY7O0FZejREWTtFTDFJVixXQUFBO0VBQ0EsaUJGUlU7RUVTVixjQUFBO0VBK1RBLG1CRi9UdUI7RUVnVXZCLHlCQUFBO0VBekJBLGtCRnZTdUI7RUV3U3ZCLHlCQUFBO0VBekJBLG9CRnhRb0I7RUV5UXBCLHlCQUFBO0FQNndERjtBUWxnREk7RUluWlE7SUwyTFIsbUJGbFV5QjtFTGdpRTNCO0FBQ0Y7QVF2Z0RJO0VJblpRO0lMK0xSLG1CRnJVcUI7RUxvaUV2QjtBQUNGO0FRNWdESTtFSW5aUTtJTG1NUixtQkZ4VXFCO0VMd2lFdkI7QUFDRjtBUWpoREk7RUluWlE7SUx1TVIsbUJGM1VzQjtFTDRpRXhCO0FBQ0Y7QVF0aERJO0VJblpRO0lMbUtSLGtCRjFTeUI7RUxvakUzQjtBQUNGO0FRM2hESTtFSW5aUTtJTHVLUixrQkY3U3FCO0VMd2pFdkI7QUFDRjtBUWhpREk7RUluWlE7SUwyS1Isa0JGaFRxQjtFTDRqRXZCO0FBQ0Y7QVFyaURJO0VJblpRO0lMK0tSLGtCRm5Uc0I7RUxna0V4QjtBQUNGO0FRMWlESTtFSW5aUTtJTDJJUixvQkYzUXNCO0VMaWtFeEI7QUFDRjtBUS9pREk7RUluWlE7SUwrSVIsb0JGOVFrQjtFTHFrRXBCO0FBQ0Y7QVFwakRJO0VJblpRO0lMbUpSLG9CRmpSa0I7RUx5a0VwQjtBQUNGO0FRempESTtFSW5aUTtJTHVKUixvQkZwUm1CO0VMNmtFckI7QUFDRjs7QVkzOERRO0VBQ0UsZ0JBQUE7QVo4OERWO0FRbGtESTtFSTdZSTtJQUlJLG9CQUFBO0VaKzhEVjtBQUNGOztBWTU4RFE7RUx5SE4sb0JGeFFvQjtFRXlRcEIseUJBQUE7RUt4SFEsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsV0FBQTtBWmc5RFY7QVEva0RJO0VJcllJO0lMNkhKLG9CRjNRc0I7RUxzbUV4QjtBQUNGO0FRcGxESTtFSXJZSTtJTGlJSixvQkY5UWtCO0VMMG1FcEI7QUFDRjtBUXpsREk7RUlyWUk7SUxxSUosb0JGalJrQjtFTDhtRXBCO0FBQ0Y7QVE5bERJO0VJcllJO0lMeUlKLG9CRnBSbUI7RUxrbkVyQjtBQUNGO0FRbm1ESTtFSXJZSTtJQU9JLHFCQUFBO0lBQ0EsV0FBQTtFWnErRFY7QUFDRjs7QWF0cEVBOztHQUFBO0FBS0E7RUFDRSxpQkFBQTtFQUNBLGVBQUE7RUFDQSxzQlJzRFk7QUxpbUVkOztBYXJwRUU7RU4rUEEsaUJGaFBvQjtFRWlQcEIseUJBQUE7RUF1QkEsb0JGeFFvQjtFRXlRcEIseUJBQUE7RU1yUkUsa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGNSeUNXO0FMaW5FZjtBUTVuREk7RUtuaUJGO0lObVFFLGlCRm5Qc0I7RUxtcEV4QjtBQUNGO0FRam9ESTtFS25pQkY7SU51UUUsaUJGdFBrQjtFTHVwRXBCO0FBQ0Y7QVF0b0RJO0VLbmlCRjtJTjJRRSxpQkZ6UGtCO0VMMnBFcEI7QUFDRjtBUTNvREk7RUtuaUJGO0lOK1FFLGlCRjVQbUI7RUwrcEVyQjtBQUNGO0FRaHBESTtFS25pQkY7SU4yUkUsb0JGM1FzQjtFTHVxRXhCO0FBQ0Y7QVFycERJO0VLbmlCRjtJTitSRSxvQkY5UWtCO0VMMnFFcEI7QUFDRjtBUTFwREk7RUtuaUJGO0lObVNFLG9CRmpSa0I7RUwrcUVwQjtBQUNGO0FRL3BESTtFS25pQkY7SU51U0Usb0JGcFJtQjtFTG1yRXJCO0FBQ0Y7O0FhaHNFSTtFQUNFLG9CQUFBO0FibXNFTjtBUXhxREk7RUs1aEJBO0lBSUksV0FBQTtFYm9zRU47QUFDRjtBYWxzRU07RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7QWJvc0VSO0FRcnJESTtFS3JoQkU7SUFTSSxXQUFBO0VicXNFUjtBQUNGO0FhbnNFUTtFTjZTTixtQkYvVHVCO0VFZ1V2Qix5QkFBQTtFQXpCQSxrQkZ2U3VCO0VFd1N2Qix5QkFBQTtFTXBSUSxXQUFBO0VBRUEsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtBYnVzRVY7QVF0c0RJO0VLemdCSTtJTmlUSixtQkZsVXlCO0VMb3VFM0I7QUFDRjtBUTNzREk7RUt6Z0JJO0lOcVRKLG1CRnJVcUI7RUx3dUV2QjtBQUNGO0FRaHRESTtFS3pnQkk7SU55VEosbUJGeFVxQjtFTDR1RXZCO0FBQ0Y7QVFydERJO0VLemdCSTtJTjZUSixtQkYzVXNCO0VMZ3ZFeEI7QUFDRjtBUTF0REk7RUt6Z0JJO0lOeVJKLGtCRjFTeUI7RUx3dkUzQjtBQUNGO0FRL3RESTtFS3pnQkk7SU42Ukosa0JGN1NxQjtFTDR2RXZCO0FBQ0Y7QVFwdURJO0VLemdCSTtJTmlTSixrQkZoVHFCO0VMZ3dFdkI7QUFDRjtBUXp1REk7RUt6Z0JJO0lOcVNKLGtCRm5Uc0I7RUxvd0V4QjtBQUNGO0FROXVESTtFS3pnQkk7SUFXSSxXQUFBO0lBQ0EsZUFBQTtFYmd2RVY7RWE5dUVVO0lBQ0UsWUFBQTtJQUNBLGNSSUM7SVFIRCxrQkFBQTtJQUNBLE1BQUE7SUFDQSxXQUFBO0ViZ3ZFWjtFYTN1RVk7SUFDRSxXQUFBO0ViNnVFZDtBQUNGO0FhenVFVTtFQUNFLFdBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsY1JqQkc7RVFrQkgsa0JBQUE7QWIydUVaO0FReHdESTtFSzNlTTtJQVdJLFdBQUE7SUFDQSxjQUFBO0ViNHVFWjtBQUNGOztBYXR1RUk7RUFDRSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGVBQUE7QWJ5dUVOOztBY2owRUE7O0dBQUE7QUFJQTtFQUNFLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0FkbTBFRjs7QWNqMEVFO0VBQ0Usa0JBQUE7RUFDQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7QWRvMEVKOztBY2wwRUk7OztFQUdFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBZHEwRU47O0FDdDBFRTtFQUNFLG1CQUFBO0VBQ0EsYUFBQTtFQUNBLGdDQUFBO0VBQ0Esd0JBQUE7RUFDQSxTQUFBO0VBRUEsYUFBQTtFQUdBLG9DSWlDUTtBTHF5RVo7QUNoMEVJO0VBRUUscUJBQUE7QURpMEVOO0FRNXpESTtFUHZnQkE7SUFLSSxxQkFBQTtFRGswRU47QUFDRjs7QUMvekVJO0VBQ0UscUJBQUE7QURrMEVOO0FRcjBESTtFUDlmQTtJQUlJLHFCQUFBO0VEbTBFTjtBQUNGOztBQy96RVE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QURrMEVWOztBQzd6RU07RUFDRSxnQkFBQTtBRGcwRVIiLCJmaWxlIjoid29ya2luZy1ncm91cHMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gICogUEFHRS1TUEVDSUZJQyBTVFlMRVNIRUVUOiBXb3JraW5nIEdyb3Vwc1xuICAqXG4gICogSW1wb3J0IGNvbW1vbiBzdHlsZXMgYW5kIGhvdXNlIHBhZ2Utc3BlY2lmaWMgc3R5bGVzIGZvciBXb3JraW5nIEdyb3VwcyBwYWdlLlxuICAqL1xuLyoqXG4gICogQ09NTU9OIFNUWUxFU1xuICAqXG4gICogRGVmaW5lcyB0aGUgc3R5bGVzIHRvIGltcG9ydCB0aGF0IGFyZSByZXF1aXJlZCBieSB2aXJ0dWFsbHkgYWxsIHBhZ2VzLlxuICAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPWJ1dHRvbl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1yZXNldF06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAgKiBTQ1NTIEJSRUFLUE9JTlRTXG4gICpcbiAgKiBEZWZpbmUgYnJlYWtwb2ludHMgZm9yIG1lZGlhIHF1ZXJ5IHVzZSBhbmQgZXhwb3J0IHRoZW0gZm9yIHVzZSB3aXRoIEpTLlxuICAqL1xuOmV4cG9ydCB7XG4gIGJyZWFrcG9pbnRQaG9uZVNtYWxsOiAzMjA7XG4gIGJyZWFrcG9pbnRQaG9uZUxhcmdlOiA0ODA7XG4gIGJyZWFrcG9pbnRUYWJsZXQ6IDc2ODtcbiAgYnJlYWtwb2ludExhcHRvcDogOTkyO1xuICBicmVha3BvaW50RGVza3RvcDogMTIwMDtcbiAgYnJlYWtwb2ludERlc2t0b3BMYXJnZTogMTQwMDtcbiAgYnJlYWtwb2ludEhkOiAxOTIwO1xufVxuXG4vKipcbiAgKiBTQ1NTIFZBUklBQkxFU1xuICAqL1xuLyoqXG4gICogRGltZW5zaW9uczpcbiAgKi9cbi8qKlxuICAqIENvbG9yczpcbiAgKi9cbi8qKlxuICAqIEZPTlQgU1RZTEVTXG4gICpcbiAgKiBEZWZpbmUgQGZvbnQtZmFjZSBzdHlsZXMuXG4gICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtUmVndWxhci50dGYpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IE1vbnRzZXJyYXQ7XG4gIHNyYzogdXJsKC4uL2ZvbnRzL01vbnRzZXJyYXQtQm9sZC50dGYpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKipcbiAgKiBTQ1NTIE1JWElOU1xuICAqXG4gICogU3RhbmRhcmRpemVkIHN0eWxlIGNodW5rcywgcHJvdmlkZWQgYXMgYm90aCBTQ1NTIG1peGlucyBhbmQgSFRNTCBjbGFzc2VzLlxuICAqL1xuLndyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaW5uZXItd3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5tYXItdG9wIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci10b3Age1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgfVxufVxuXG4ubWFyLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gIH1cbn1cblxuLm1hci12ZXJ0aWNhbCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItdmVydGljYWwge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLXZlcnRpY2FsIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci12ZXJ0aWNhbCB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLXZlcnRpY2FsIHtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLm1hci12ZXJ0aWNhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItdmVydGljYWwge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLXZlcnRpY2FsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItdmVydGljYWwge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gIH1cbn1cblxuLm1hci1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDI1cHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubWFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDYwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDgwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxufVxuXG4ubWFyLWxlZnQge1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyNXB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubWFyLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIH1cbn1cblxuLm1hci1ob3Jpem9udGFsIHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNTBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubWFyLWhvcml6b250YWwge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDYwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1ob3Jpem9udGFsIHtcbiAgICBtYXJnaW4tbGVmdDogODBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDgwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxNjBweCk7XG4gIH1cbn1cblxuLm1hci1yaWdodC1uZWdhdGl2ZSB7XG4gIG1hcmdpbi1yaWdodDogLTIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLXJpZ2h0LW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm1hci1yaWdodC1uZWdhdGl2ZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5tYXItcmlnaHQtbmVnYXRpdmUge1xuICAgIG1hcmdpbi1yaWdodDogLTYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1yaWdodC1uZWdhdGl2ZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtODBweDtcbiAgfVxufVxuXG4ubWFyLWxlZnQtbmVnYXRpdmUge1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLWxlZnQtbmVnYXRpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItbGVmdC1uZWdhdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1sZWZ0LW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1hci1sZWZ0LW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTgwcHg7XG4gIH1cbn1cblxuLm1hci1ob3Jpem9udGFsLW5lZ2F0aXZlIHtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFyLWhvcml6b250YWwtbmVnYXRpdmUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMjVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0yNXB4O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA1MHB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbC1uZWdhdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTMwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDYwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm1hci1ob3Jpem9udGFsLW5lZ2F0aXZlIHtcbiAgICBtYXJnaW4tbGVmdDogLTYwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNjBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMTIwcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tYXItaG9yaXpvbnRhbC1uZWdhdGl2ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC04MHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTgwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDE2MHB4KTtcbiAgfVxufVxuXG4ucGFkLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLXRvcCB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cblxuLnBhZC1ib3R0b20ge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFkLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC1ib3R0b20ge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG5cbi5wYWQtbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cblxuLnBhZC1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZC1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFkLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cblxuLnBhZC12ZXJ0aWNhbCB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtdmVydGljYWwge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLXZlcnRpY2FsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtdmVydGljYWwge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC12ZXJ0aWNhbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIH1cbn1cblxuLnBhZC1ob3Jpem9udGFsIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFkLWhvcml6b250YWwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAucGFkLWhvcml6b250YWwge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWQtaG9yaXpvbnRhbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZC1ob3Jpem9udGFsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cblxuLmJ1dHRvbiB7XG4gIG1hcmdpbjogM3JlbSAwO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDM0LCAzNCwgMzQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmOWY5Zjk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZjlmOWY5O1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG59XG5cbi5uby1zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaDEge1xuICBmb250LXNpemU6IDIuNHJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLmgyIHtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuOXJlbTtcbn1cblxuLmgzIHtcbiAgZm9udC1zaXplOiAyLjFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuOHJlbTtcbn1cblxuLmg0IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjdyZW07XG59XG5cbi5oNSB7XG4gIGZvbnQtc2l6ZTogMS45cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjZyZW07XG59XG5cbi5oNiB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5cbi8qKlxuICAqIEhUTUwgRUxFTUVOVCBTVFlMRVNcbiAgKlxuICAqIFN0eWxlIGRlZmluaXRpb25zIGZvciBnbG9iYWwgZWxlbWVudCBzZWxlY3RvcnMuXG4gICovXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbiAgZm9udC1zaXplOiA2Mi41JTtcbn1cblxuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmciBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBjb2xvcjogIzY2Njtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuaDEge1xuICBmb250LXNpemU6IDIuNHJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuaDIge1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS45cmVtO1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMi4xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjhyZW07XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjdyZW07XG59XG5cbmg1IHtcbiAgZm9udC1zaXplOiAxLjlyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiByZ2IoMzQsIDM0LCAzNCk7XG59XG51bCwgb2wge1xuICBtYXJnaW46IDEuNXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG59XG5cbmltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogQmVnaW4gYnV0dG9uIHN0eWxlcyAqL1xuYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyogRW5kIGJ1dHRvbiBzdHlsZXMgKi9cbmJsb2NrcXVvdGUge1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICMwMDAwMDA7XG4gIG1hcmdpbjogMS41ZW0gMTBweDtcbiAgcGFkZGluZzogMC41ZW0gMzBweDtcbiAgcXVvdGVzOiBcIuKAnFwiO1xufVxuYmxvY2txdW90ZTpiZWZvcmUge1xuICBjb2xvcjogI2NjYztcbiAgY29udGVudDogb3Blbi1xdW90ZTtcbiAgZm9udC1zaXplOiA0ZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAtMC40ZW07XG59XG5ibG9ja3F1b3RlIHAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbmJsb2NrcXVvdGUgcDpmaXJzdC1vZi10eXBlLCBibG9ja3F1b3RlIHA6bnRoLW9mLXR5cGUoMikge1xuICBmb250LXNpemU6IDEuM3JlbTtcbn1cblxuLyoqXG4gICogSEVBREVSIFNUWUxFU1xuICAqL1xuLmhlYWRlci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgZ3JpZC1yb3ctc3RhcnQ6IDE7XG4gIGdyaWQtcm93LWVuZDogMjtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICBib3JkZXItdG9wOiAzcHggc29saWQgIzNlMjM1NjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYigyMjQsIDIyNCwgMjI0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1MCwgMjUwLCAyNTApO1xufVxuXG4uaGVhZGVyLW92ZXJsYXkge1xuICAvKndpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gIG9wYWNpdHk6IDAuNztcblxuICAmLmJnLXZpc2libGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgICBvcGFjaXR5OiAxO1xuICB9Ki9cbn1cblxuLnRvcC1iYXItYmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYigyMjQsIDIyNCwgMjI0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0MiwgMjQyLCAyNDIpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3AtYmFyLWJnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgaGVpZ2h0OiA5MHB4O1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXIge1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgcGFkZGluZy10b3A6IDM1cHg7XG4gIH1cbn1cblxuLmhlYWRlci1icmFuZCB7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDcwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgaGVpZ2h0OiA5MHB4O1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiAxL3NwYW4gMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItYnJhbmQge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLWJyYW5kIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJyYW5kIHtcbiAgICB3aWR0aDogNDUlO1xuICAgIGhlaWdodDogNjVweDtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIHtcbiAgaGVpZ2h0OiA5MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSB7XG4gICAgaGVpZ2h0OiA2NXB4O1xuICB9XG59XG4uaGVhZGVyLWJyYW5kIGEgLmxvZ28taW1hZ2Uge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiA2MHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLWJyYW5kIGEgLmxvZ28tdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10aXRsZSBzcGFuLnJlZ2lzdGVyZWQge1xuICBmb250LXNpemU6IDAuN3JlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICB9XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGl0bGUgc3Bhbi5yZWdpc3RlcmVkIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuLmhlYWRlci1icmFuZCBhIC5sb2dvLXRleHQgLmxvZ28tdGV4dC10YWdsaW5lIHtcbiAgbWFyZ2luOiAxMHB4IGF1dG8gMCBhdXRvO1xuICBsaW5lLWhlaWdodDogMC44O1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnJhbmQgYSAubG9nby10ZXh0IC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbn1cblxuLmhlYWRlci1uYXYge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOTBweDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdiB7XG4gICAgaGVpZ2h0OiA2NXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxufVxuXG4uaGVhZGVyLW5hdi1tYWluIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1MCwgMjUwLCAyNTApO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA2NXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDM1cHg7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4ge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjb2x1bW4tZ2FwOiBhdXRvO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiKDIyNCwgMjI0LCAyMjQpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogNjVweDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGNvbHVtbi1nYXA6IDEwcHg7XG4gICAgYm9yZGVyLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA0NXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBib3JkZXItdG9wOiB1bnNldDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYigyMjQsIDIyNCwgMjI0KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogNjVweDtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgIzNlMjM1NjtcbiAgICBib3JkZXItYm90dG9tOiB1bnNldDtcbiAgICB0cmFuc2l0aW9uOiBkaXNwbGF5IDMwMG1zLCBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zO1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkuYWN0aXZlIHtcbiAgICBoZWlnaHQ6IDY2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyNCwgMjI0LCAyMjQpO1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGk6bnRoLWNoaWxkKDEpIHtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgIzM4NTcyMztcbiAgfVxuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpOm50aC1jaGlsZCgxKS5hY3RpdmUgdWwgbGkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzdjN2M3O1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgI2MwMDAwMDtcbiAgfVxuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpOm50aC1jaGlsZCgyKS5hY3RpdmUgdWwgbGkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzdjN2M3O1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGk6bnRoLWNoaWxkKDMpIHtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgIzQ0NzJjNDtcbiAgfVxuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpOm50aC1jaGlsZCgzKS5hY3RpdmUgdWwgbGkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzdjN2M3O1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGk6bnRoLWNoaWxkKDQpIHtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgIzNlMjM1NjtcbiAgfVxuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpOm50aC1jaGlsZCg0KS5hY3RpdmUgdWwgbGkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzdjN2M3O1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGk6aG92ZXIgPiB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0ge1xuICBib3JkZXItdG9wLXdpZHRoOiAxMHB4O1xufVxuLmhlYWRlci1uYXYtbWFpbiB1bCBsaS5jdXJyZW50X3BhZ2VfaXRlbSBhIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xufVxuLmhlYWRlci1uYXYtbWFpbiB1bCBsaS5jdXJyZW50X3BhZ2VfaXRlbSB1bCB7XG4gIG1hcmdpbi10b3A6IDBweDtcbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gdWwgbGkgYSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaS5jdXJyZW50X3BhZ2VfaXRlbSBhIHtcbiAgICBtYXJnaW4tdG9wOiAtN3B4O1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gdWwge1xuICAgIG1hcmdpbi10b3A6IC03cHg7XG4gIH1cbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaS5jdXJyZW50X3BhZ2VfaXRlbSB1bCBsaSBhIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpLmN1cnJlbnRfcGFnZV9hbmNlc3RvciB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDEwcHg7XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpLmN1cnJlbnRfcGFnZV9hbmNlc3RvciBhIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xufVxuLmhlYWRlci1uYXYtbWFpbiB1bCBsaS5jdXJyZW50X3BhZ2VfYW5jZXN0b3IgdWwge1xuICBtYXJnaW4tdG9wOiAwcHg7XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpLmN1cnJlbnRfcGFnZV9hbmNlc3RvciB1bCBsaSBhIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpLmN1cnJlbnRfcGFnZV9hbmNlc3RvciBhIHtcbiAgICBtYXJnaW4tdG9wOiAtN3B4O1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkuY3VycmVudF9wYWdlX2FuY2VzdG9yIHVsIHtcbiAgICBtYXJnaW4tdG9wOiAtN3B4O1xuICB9XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkuY3VycmVudF9wYWdlX2FuY2VzdG9yIHVsIGxpIGEge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgYSB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgYSB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgYSB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIGEge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgYTpob3ZlciB7XG4gIGNvbG9yOiByZ2IoMzQsIDM0LCAzNCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSBhIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDY1cHg7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpIC5uYXYtY2hldnJvbiB7XG4gIHdpZHRoOiA0NXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB6LWluZGV4OiA5OTk5O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgLm5hdi1jaGV2cm9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMjQsIDIyNCwgMjI0KTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYigyMjQsIDIyNCwgMjI0KTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2M3YzdjNztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjN2M3Yzc7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2M3YzdjNztcbiAgLyomOjpiZWZvcmUge1xuICAgIC8vY29udGVudDogXCJcIjtcbiAgICAvL3dpZHRoOiAwO1xuICAgIC8vaGVpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAvL3RyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvL3RvcDogLTEycHg7XG4gICAgLy9yaWdodDogLTFweDtcbiAgICAvL3otaW5kZXg6IDEwMDE7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgJG1lZGl1bUdyYXk7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC0xMnB4O1xuICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICB6LWluZGV4OiAxMDAxO1xuICAgIH1cbiAgfSovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNjJweDtcbiAgfVxufVxuLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCBsaSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDM1cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2M3YzdjNztcbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgdWwgbGk6bnRoLWNoaWxkKDEpIHtcbiAgYm9yZGVyLXRvcDogdW5zZXQ7XG59XG4uaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIGxpOm50aC1jaGlsZCgyKSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzdjN2M3O1xufVxuLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCBsaTpudGgtY2hpbGQoMykge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2M3YzdjNztcbn1cbi5oZWFkZXItbmF2LW1haW4gdWwgbGkgdWwgbGk6bnRoLWNoaWxkKDQpIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjN2M3Yzc7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCBsaSB7XG4gICAgbWluLXdpZHRoOiAyMjVweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2M3YzdjNztcbiAgfVxufVxuLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCBsaSBhIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBtYXJnaW46IDAgMTVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzNlMjM1Njtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIGxpIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIGxpIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIGxpIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLW5hdi1tYWluIHVsIGxpIHVsIGxpIGEge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgdWwgbGkgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXItbmF2LW1haW4gdWwgbGkgdWwgbGkgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1uYXYtbWFpbiB1bCBsaSB1bCBsaSBhIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIH1cbn1cblxuLmhlYWRlci1idXR0b25zIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogOTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA2O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItYnV0dG9ucyB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLWJ1dHRvbnMge1xuICAgIGhlaWdodDogMzVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmdsYXNzIHtcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRvcDogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZ2xhc3Mge1xuICAgIGhlaWdodDogMzVweDtcbiAgICBib3JkZXI6IHVuc2V0O1xuICB9XG59XG4uZ2xhc3MgaSB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuLmdsYXNzIGk6aG92ZXIge1xuICBjb2xvcjogIzMzMzMzMztcbn1cbi5idXJnZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZzogOHB4IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMzQwcHgpIHtcbiAgLmJ1cmdlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uYnVyZ2VyIGkge1xuICBjb2xvcjogIzAwMDAwMDtcbn1cbi5idXJnZXIgaTpob3ZlciB7XG4gIGNvbG9yOiAjMzMzMzMzO1xufVxuXG4uaGVhZGVyLXNlYXJjaC13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOTBweDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgei1pbmRleDogNjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyLXNlYXJjaC13cmFwIHtcbiAgICB0b3A6IDM1cHg7XG4gICAgaGVpZ2h0OiA2NXB4O1xuICB9XG59XG4uaGVhZGVyLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlci1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaGVhZGVyLXNlYXJjaC13cmFwIC5zaXRlLXNlYXJjaCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlYWRlci1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5oZWFkZXItc2VhcmNoLXdyYXAgLnNpdGUtc2VhcmNoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlci1zZWFyY2gtd3JhcCAuc2l0ZS1zZWFyY2gge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4vKipcbiAgKiBTSVRFIFNFQVJDSCBGT1JNIFNUWUxFU1xuICAqL1xuLnNpdGUtc2VhcmNoIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nOiA0MHB4IDA7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDUwcHg7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbn1cblxuLnNlYXJjaC1xdWVyeSB7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZzogMDtcbiAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICBncmlkLXJvdzogMTtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuLnNlYXJjaC1xdWVyeSBsYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzBweDtcbiAgY29sb3I6ICNmOWY5Zjk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNlYXJjaC1xdWVyeSBpbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZjlmOWY5O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gIGNvbG9yOiAjZjlmOWY5O1xufVxuXG4uc2VhcmNoLXN1Ym1pdCB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGdyaWQtY29sdW1uOiAyL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDE7XG4gIGFsaWduLXNlbGY6IHN0YXJ0O1xuICBjb2xvcjogIzIyMjtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXM7XG59XG4uc2VhcmNoLXN1Ym1pdDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNmM2YzY7XG59XG5cbi8qKlxuICAqIE1BSU4gUEFHRSBDT05URU5UIFNUWUxFU1xuICAqL1xuLm1haW4td3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGdyaWQtcm93LXN0YXJ0OiAyO1xuICBncmlkLXJvdy1lbmQ6IDM7XG59XG5cbi5tYWluIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaGVhZGVyLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xufVxuXG4uaG9tZS1iYW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMzAwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9ob21lX2Jhbm5lci5qcGdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhvbWUtYmFubmVyLW92ZXJsYXkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbi5ob21lLWJhbm5lci1vdmVybGF5IC5ob21lLWJhbm5lci1ib3gtd3JhcCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAuaG9tZS1iYW5uZXItb3ZlcmxheSAuaG9tZS1iYW5uZXItYm94LXdyYXAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaG9tZS1iYW5uZXItb3ZlcmxheSAuaG9tZS1iYW5uZXItYm94LXdyYXAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaG9tZS1iYW5uZXItb3ZlcmxheSAuaG9tZS1iYW5uZXItYm94LXdyYXAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhvbWUtYmFubmVyLW92ZXJsYXkgLmhvbWUtYmFubmVyLWJveC13cmFwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhvbWUtYmFubmVyLW92ZXJsYXkgLmhvbWUtYmFubmVyLWJveC13cmFwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaG9tZS1iYW5uZXItb3ZlcmxheSAuaG9tZS1iYW5uZXItYm94LXdyYXAge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5ob21lLWJhbm5lci1vdmVybGF5IC5ob21lLWJhbm5lci1ib3gtd3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5ob21lLWJhbm5lci1vdmVybGF5IC5ob21lLWJhbm5lci1ib3gtd3JhcCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICB9XG59XG4uaG9tZS1iYW5uZXItb3ZlcmxheSAuaG9tZS1iYW5uZXItYm94IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTQwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjgsIDExNCwgMTk2LCAwLjgpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmhvbWUtYmFubmVyLW92ZXJsYXkgLmhvbWUtYmFubmVyLWJveCBzcGFuIHtcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IDMwcHggNDBweDtcbiAgZm9udC1zaXplOiAxLjZlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiByZ2IoMjUwLCAyNTAsIDI1MCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ob21lLWJhbm5lci1vdmVybGF5IC5ob21lLWJhbm5lci1ib3ggc3BhbiB7XG4gICAgcGFkZGluZzogNDBweCA1MHB4O1xuICAgIGZvbnQtc2l6ZTogMi44ZW07XG4gIH1cbn1cblxuLnBhZ2UtaGVhZGVyLXdyYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucGFnZS1oZWFkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy1yaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuXG4ucGFnZS1pbnRybyB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLWludHJvIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLWludHJvIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLWludHJvIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1pbnRybyB7XG4gICAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIH1cbn1cblxuLnBhZ2UtaW50cm8tdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlLWludHJvLWRlc2NyaXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucGFnZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5wYWdlLXRpdGxlIGgyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5wYWdlLW1haW4td3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5wYWdlLW1haW4ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLW1haW4ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgfVxufVxuXG4ucGFnZS1tYWluLnNpZGUge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAwcHg7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLW1haW4uc2lkZSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMzIwcHg7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDBweDtcbiAgfVxufVxuXG4ucGFnZS1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMTtcbiAgZ3JpZC1yb3c6IDI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICB9XG59XG5cbi5wYWdlLXNlY3Rpb24td3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5wYWdlLXNlY3Rpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2VjdGlvbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuXG4uc2lkZSAucGFnZS1jb250ZW50IHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2lkZSAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgfVxufVxuXG4ucGFnZS1zaWRlYmFyIHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHdpZHRoOiAxMDAlO1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDE7XG4gIGdyaWQtcm93OiAxO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBhZ2Utc2lkZWJhciB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGFnZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlLXNpZGViYXIge1xuICAgIGdyaWQtY29sdW1uOiAyL3NwYW4gMTtcbiAgICBncmlkLXJvdzogMTtcbiAgfVxufVxuXG4vKipcbiAgKiBGT09URVIgU1RZTEVTXG4gICovXG4uZm9vdGVyLXdyYXAge1xuICBncmlkLXJvdy1zdGFydDogMztcbiAgZ3JpZC1yb3ctZW5kOiA0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xufVxuXG4uZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjZjlmOWY5O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxufVxuXG4uZm9vdGVyLW5hdiB7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmZvb3Rlci1uYXYgdWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbi5mb290ZXItbmF2IHVsIGxpIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3Rlci1uYXYgdWwgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLW5hdiB1bCBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG4gIC5mb290ZXItbmF2IHVsIGxpOmFmdGVyIHtcbiAgICBjb250ZW50OiBcInxcIjtcbiAgICBjb2xvcjogI2Y5ZjlmOTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAtMnB4O1xuICB9XG4gIC5mb290ZXItbmF2IHVsIGxpOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbi5mb290ZXItbmF2IHVsIGxpIGEge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogI2Y5ZjlmOTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXItbmF2IHVsIGxpIGEge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICB9XG59XG5cbi5jb3B5cmlnaHQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLyoqXG4gICogTUlTQ0VMTEFORU9VUyBTVFlMRVNcbiAgKi9cbi5lbWJlZC1jb250YWluZXItd3JhcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBtYXJnaW46IDIwcHggYXV0bztcbn1cblxuLmVtYmVkLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5lbWJlZC1jb250YWluZXIgaWZyYW1lLFxuLmVtYmVkLWNvbnRhaW5lciBvYmplY3QsXG4uZW1iZWQtY29udGFpbmVyIGVtYmVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi53b3JraW5nLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxNTBweCAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgZ2FwOiAyMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQyLCAyNDIsIDI0Mik7XG59XG4ud29ya2luZy1ncm91cC1pbWFnZSB7XG4gIGdyaWQtY29sdW1uOiAxL3NwYW4gMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAud29ya2luZy1ncm91cC1pbWFnZSB7XG4gICAgZ3JpZC1jb2x1bW46IDEvc3BhbiAxO1xuICB9XG59XG5cbi53b3JraW5nLWdyb3VwLXRleHQge1xuICBncmlkLWNvbHVtbjogMS9zcGFuIDI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLndvcmtpbmctZ3JvdXAtdGV4dCB7XG4gICAgZ3JpZC1jb2x1bW46IDIvc3BhbiAxO1xuICB9XG59XG5cbi53b3JraW5nLWdyb3VwLXRleHQtdGl0bGUgaDMge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ud29ya2luZy1ncm91cC10ZXh0LWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn0iLCIvKipcbiAgKiBQQUdFLVNQRUNJRklDIFNUWUxFU0hFRVQ6IFdvcmtpbmcgR3JvdXBzXG4gICpcbiAgKiBJbXBvcnQgY29tbW9uIHN0eWxlcyBhbmQgaG91c2UgcGFnZS1zcGVjaWZpYyBzdHlsZXMgZm9yIFdvcmtpbmcgR3JvdXBzIHBhZ2UuXG4gICovXG5cbkBpbXBvcnQgJ19jb21tb24nOyAvLyBDb21tb24gc3R5bGVzXG5cbi53b3JraW5nLWdyb3VwcyB7XG4gIC8vZGlzcGxheTogZ3JpZDtcbiAgLy9ncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAvL2dyaWQtdGVtcGxhdGUtcm93czogYXV0bztcbiAgLy9nYXA6IDIwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICAvL2dyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gIH1cbn1cbiAgLndvcmtpbmctZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDE1MHB4IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG4gICAgZ2FwOiAyMHB4O1xuXG4gICAgcGFkZGluZzogMjBweDtcbiAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgLy9mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodEdyYXk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1waG9uZS1sYXJnZScpIHtcblxuICAgIH1cbiAgfVxuICAgIC53b3JraW5nLWdyb3VwLWltYWdlIHtcbiAgICAgIC8vbWFyZ2luLXRvcDogYXV0bztcbiAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1waG9uZS1sYXJnZScpIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndvcmtpbmctZ3JvdXAtdGV4dCB7XG4gICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49cGhvbmUtbGFyZ2UnKSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgICAgfVxuICAgIH1cbiAgICAgIC53b3JraW5nLWdyb3VwLXRleHQtdGl0bGUge1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwOy8vMjVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgIC8vdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC53b3JraW5nLWdyb3VwLXRleHQtZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOy8vMjBweDtcbiAgICAgIH1cbiIsIi8qKlxuICAqIENPTU1PTiBTVFlMRVNcbiAgKlxuICAqIERlZmluZXMgdGhlIHN0eWxlcyB0byBpbXBvcnQgdGhhdCBhcmUgcmVxdWlyZWQgYnkgdmlydHVhbGx5IGFsbCBwYWdlcy5cbiAgKi9cblxuXG4vLyBpbXBvcnQgbGlicmFyaWVzOlxuQGltcG9ydCAnbGlicmFyaWVzL19pbmNsdWRlLW1lZGlhLnNjc3MnOyAvLyBcIkluY2x1ZGUtTWVkaWFcIiBtZWRpYSBxdWVyeSBsaWJyYXJ5IChwcm92aWRlcyBicmVha3BvaW50IGZ1bmN0aW9uYWxpdHkgZm9yIHJlc3BvbnNpdmUgZGVzaWduKVxuQGltcG9ydCAnbGlicmFyaWVzL19ub3JtYWxpemUuc2Nzcyc7ICAgICAvLyBcIk5vcm1hbGl6ZVwiIGNzcyByZXNldCBsaWJyYXJ5XG5cbi8vIGdsb2JhbCBzdHlsZXMgYW5kIGRlcGVuZGVuY2llczpcbkBpbXBvcnQgJ3BhcnRpYWxzL19icmVha3BvaW50cy5tb2R1bGVzJzsgIC8vIGJyZWFrcG9pbnQgZGVmaW5pdGlvbnMgZm9yIG1lZGlhIHF1ZXJ5IHVzZVxuQGltcG9ydCAncGFydGlhbHMvX3ZhcmlhYmxlcyc7ICAgICAgICAgICAgLy8gZ2VuZXJhbCB2YXJpYWJsZSBkZWZpbml0aW9ucyAoY29sb3JzLCBkaW1lbnNpb25zLCBldGMuKVxuQGltcG9ydCAncGFydGlhbHMvX2ZvbnRzJzsgICAgICAgICAgICAgICAgLy8gQGZvbnQtZmFjZSBkZWZpbml0aW9uc1xuQGltcG9ydCAncGFydGlhbHMvX21peGlucyc7ICAgICAgICAgICAgICAgLy8gbWl4aW4gYW5kIGFzc29jaWF0ZWQgY2xhc3MgZGVmaW5pdGlvbnNcbkBpbXBvcnQgJ3BhcnRpYWxzL19lbGVtZW50cyc7ICAgICAgICAgICAgIC8vIGdsb2JhbCBlbGVtZW50IHNlbGVjdG9yIHN0eWxlc1xuQGltcG9ydCAncGFydGlhbHMvX2hlYWRlcic7ICAgICAgICAgICAgICAgLy8gaGVhZGVyIHN0eWxlc1xuQGltcG9ydCAncGFydGlhbHMvX3NlYXJjaGZvcm0nOyAgICAgICAgICAgLy8gc2VhcmNoIGZvcm0gc3R5bGVzXG5AaW1wb3J0ICdwYXJ0aWFscy9fbWFpbic7ICAgICAgICAgICAgICAgICAvLyBtYWluIHBhZ2UgY29udGVudCBzdHlsZXNcbkBpbXBvcnQgJ3BhcnRpYWxzL19mb290ZXInOyAgICAgICAgICAgICAgIC8vIGZvb3RlciBzdHlsZXNcbkBpbXBvcnQgJ3BhcnRpYWxzL19taXNjJzsgICAgICAgICAgICAgICAgIC8vIG1pc2MuIHN0eWxlcyAodHlwaWNhbGx5IGNsYXNzZXMgdGhhdCBhcmUgdXNhYmxlIGluIGNvbnRlbnQsIGJ1dCBub3QgaW5oZXJlbnQgdG8gdGhlIHNpdGUgc3RydWN0dXJlKVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qKlxuICAqIFNDU1MgQlJFQUtQT0lOVFNcbiAgKlxuICAqIERlZmluZSBicmVha3BvaW50cyBmb3IgbWVkaWEgcXVlcnkgdXNlIGFuZCBleHBvcnQgdGhlbSBmb3IgdXNlIHdpdGggSlMuXG4gICovXG5cblxuLy8gRGVmaW5lIGJyZWFrcG9pbnRzIGhlcmUgKGluIHBpeGVscyk6XG4kYnJlYWtwb2ludC1waG9uZS1zbWFsbDogICAgMzIwO1xuJGJyZWFrcG9pbnQtcGhvbmUtbGFyZ2U6ICAgIDQ4MDtcbiRicmVha3BvaW50LXRhYmxldDogICAgICAgICA3Njg7XG4kYnJlYWtwb2ludC1sYXB0b3A6ICAgICAgICAgOTkyO1xuJGJyZWFrcG9pbnQtZGVza3RvcDogICAgICAgMTIwMDtcbiRicmVha3BvaW50LWRlc2t0b3AtbGFyZ2U6IDE0MDA7XG4kYnJlYWtwb2ludC1oZDogICAgICAgICAgICAxOTIwO1xuXG4vLyBGb3JtYXQgYnJlYWtwb2ludCBkZWZpbml0aW9ucyBmb3IgdXNlIHdpdGggaW5jbHVkZS1tZWRpYS5zY3NzIGxpYnJhcnk6XG4kYnJlYWtwb2ludHM6IChcbiAgJ3Bob25lLXNtYWxsJzogICAkYnJlYWtwb2ludC1waG9uZS1zbWFsbCAqIDFweCxcbiAgJ3Bob25lLWxhcmdlJzogICAkYnJlYWtwb2ludC1waG9uZS1sYXJnZSAqIDFweCxcbiAgJ3RhYmxldCc6ICAgICAgICAkYnJlYWtwb2ludC10YWJsZXQgKiAxcHgsXG4gICdsYXB0b3AnOiAgICAgICAgJGJyZWFrcG9pbnQtbGFwdG9wICogMXB4LFxuICAnZGVza3RvcCc6ICAgICAgICRicmVha3BvaW50LWRlc2t0b3AgKiAxcHgsXG4gICdkZXNrdG9wLWxhcmdlJzogJGJyZWFrcG9pbnQtZGVza3RvcC1sYXJnZSAqIDFweCxcbiAgJ2hkJzogICAgICAgICAgICAkYnJlYWtwb2ludC1oZCAqIDFweFxuKTtcblxuLy8gRXhwb3J0IGJyZWFrcG9pbnQgZGVmaW5pdGlvbnMgZm9yIEpTIHVzZTpcbjpleHBvcnQge1xuICBicmVha3BvaW50UGhvbmVTbWFsbDogJGJyZWFrcG9pbnQtcGhvbmUtc21hbGw7XG4gIGJyZWFrcG9pbnRQaG9uZUxhcmdlOiAkYnJlYWtwb2ludC1waG9uZS1sYXJnZTtcbiAgYnJlYWtwb2ludFRhYmxldDogJGJyZWFrcG9pbnQtdGFibGV0O1xuICBicmVha3BvaW50TGFwdG9wOiAkYnJlYWtwb2ludC1sYXB0b3A7XG4gIGJyZWFrcG9pbnREZXNrdG9wOiAkYnJlYWtwb2ludC1kZXNrdG9wO1xuICBicmVha3BvaW50RGVza3RvcExhcmdlOiAkYnJlYWtwb2ludC1kZXNrdG9wLWxhcmdlO1xuICBicmVha3BvaW50SGQ6ICRicmVha3BvaW50LWhkO1xufVxuIiwiLyoqXG4gICogU0NTUyBWQVJJQUJMRVNcbiAgKi9cblxuXG4vKipcbiAgKiBEaW1lbnNpb25zOlxuICAqL1xuXG4kc2l0ZVdpZHRoOiAxNDAwcHg7IC8vIE1heCB3aWR0aCBvZiBzaXRlJ3MgY29udGVudCBjb250YWluZXJzXG5cbi8vIEhlYWRlciBoZWlnaHRzOlxuJGhlYWRlckhlaWdodE1vYmlsZTogOTBweDsgLy8gSGVpZ2h0IG9mIGhlYWRlciBvbiBtb2JpbGUgc2l6ZXNcbiRoZWFkZXJIZWlnaHREZXNrdG9wOiAxMDBweDsgLy8gSGVpZ2h0IG9mIGhlYWRlciBvbiBkZXNrdG9wIHNpemVzXG4kdG9wQmFySGVpZ2h0OiAzNXB4OyAvLyBIZWlnaHQgb2YgdG9wIG5hdiwgbWFpbiBuYXYgc3ViIG1lbnUgaXRlbXMgYW5kIG1haW4gbmF2IG1vYmlsZSBtZW51IGl0ZW1zXG4kbWFpbk5hdkhlaWdodDogMzVweDsgLy8gSGVpZ2h0IG9mIGZpcnN0LWxldmVsIG1haW4gbWVudSBpdGVtcyAoZGVza3RvcClcblxuLy8gU3RhbmRhcmRpemVkIHNpZGUgcGFkZGluZzpcbiRjb250YWluZXJQYWRkaW5nTW9iaWxlOiAyMHB4O1xuJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlOiAyNXB4O1xuJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ6IDMwcHg7XG4kY29udGFpbmVyUGFkZGluZ0xhcHRvcDogNjBweDtcbiRjb250YWluZXJQYWRkaW5nRGVza3RvcDogODBweDtcblxuLy8gU3RhbmRhcmRpemVkIHRvcCBhbmQgYm90dG9tIHBhZGRpbmc6XG4kc3BhY2VyUGFkZGluZ01vYmlsZTogMjBweDtcbiRzcGFjZXJQYWRkaW5nUGhvbmVMYXJnZTogMjVweDtcbiRzcGFjZXJQYWRkaW5nVGFibGV0OiA0MHB4O1xuJHNwYWNlclBhZGRpbmdMYXB0b3A6IDUwcHg7XG4kc3BhY2VyUGFkZGluZ0Rlc2t0b3A6IDYwcHg7XG5cblxuLyoqXG4gICogQ29sb3JzOlxuICAqL1xuXG4vLyBIdWUgZGVmaW5pdGlvbnM6XG4kcmVkOiAgICAjZmYwMDAwO1xuJG9yYW5nZTogI2ZmODgwMDtcbiR5ZWxsb3c6ICNmZmZmMDA7XG4kZ3JlZW46ICAjMDBmZjAwO1xuJGJsdWU6ICAgIzAwMDBmZjtcbiRwdXJwbGU6ICNmZjAwZmY7XG4kYnJvd246ICAjODg4ODAwO1xuJGNyZWFtOiAgI2YwZWRlODtcblxuJG1pdG9CbHVlOiAjNDQ3MmM0OyAvL2JsdWVcbiRtaXRvR3JlZW46ICAjMzg1NzIzOyAvL2dyZWVuXG4kbWl0b1JlZDogICAjYzAwMDAwOyAvL3JlZFxuJG1pdG9QdXJwbGU6ICAjM2UyMzU2OyAvL3B1cnBsZVxuXG4vLyBHcmF5c2NhbGUgZGVmaW5pdGlvbnM6XG4kd2hpdGU6ICAjZmZmZmZmO1xuJGdyYXk6ICAgIzg4ODg4ODtcbiRibGFjazogICMwMDAwMDA7XG4kb2ZmV2hpdGU6ICNmZWZlZmU7XG4kbGlnaHRlc3RHcmF5OiAjZjlmOWY5O1xuJGxpZ2h0ZXJHcmF5OiAjZjJmMmYyO1xuJGxpZ2h0R3JheTogI2UyZTJlMjtcbiRtZWRpdW1HcmF5OiAjZTBlMGUwO1xuJGRhcmtHcmF5OiAjOTk5O1xuJGRhcmtlckdyYXk6ICM2NjY7XG4kZGFya2VzdEdyYXk6ICMyMjI7XG5cbiRvZmZXaGl0ZTogIHJnYigyNTAsIDI1MCwgMjUwKTsgLy8jZmFmYWZhXG4kbGlnaHRHcmF5OiByZ2IoMjQyLCAyNDIsIDI0Mik7IC8vI2YyZjJmMlxuJG1lZGl1bUdyYXk6IHJnYigyMjQsIDIyNCwgMjI0KTsgLy8jZTBlMGUwXG4kbWVkaXVtRGFya0dyYXk6IHJnYigxNTMsIDE1MywgMTUzKTsgLy8jOTk5OTk5XG4kZGFya0dyYXk6ICByZ2IoMzQsIDM0LCAzNCk7IC8vIzIyMlxuJGRhcmtCbHVlOiByZ2IoNTksIDk4LCAxMjcpOyAvLyMzYjYyN2ZcblxuJHRyYW5zR3JheTogcmdiYSg1MSwgNTEsIDUxLCAwLjgpO1xuXG4vLyBHbG9iYWwgYXNzaWdubWVudHM6XG4kYm9keUNvbG9yOiAkd2hpdGU7IC8vIEJvZHkgYmFja2dyb3VuZCBjb2xvclxuJGNvbnRlbnRDb2xvcjogJHdoaXRlOyAvLyBQYWdlIGNvbnRlbnQgYmFja2dyb3VuZCBjb2xvclxuJGZvbnRDb2xvcjogJGRhcmtlckdyYXk7IC8vIERlZmF1bHQgZm9udCBjb2xvclxuJGxpbmtDb2xvcjogJGRhcmtHcmF5OyAvLyBEZWZhdWx0IGxpbmsgY29sb3JcbiRidXR0b25Db2xvcjogJGRhcmtHcmF5OyAvLyBEZWZhdWx0IGJ1dHRvbiBjb2xvclxuXG4kYnJhbmRDb2xvclByaW1hcnk6ICRkYXJrZXN0R3JheTsgLy8gUHJpbWFyeSBjb2xvciBvZiBicmFuZFxuJGJyYW5kQ29sb3JDb250cmFzdDogJGxpZ2h0ZXN0R3JheTsgLy8gQ29sb3IgdGhhdCBjb250cmFzdHMgd2VsbCB3aXRoIGJyYW5kIGNvbG9yIChvZnRlbiB1c2VkIGZvciB0ZXh0IG9uIHRvcCBvZiBicmFuZCBjb2xvcilcbiIsIi8qKlxuICAqIEZPTlQgU1RZTEVTXG4gICpcbiAgKiBEZWZpbmUgQGZvbnQtZmFjZSBzdHlsZXMuXG4gICovXG5cblxuLy8gTW9udHNlcnJhdC1SZWd1bGFyLnR0ZjpcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogTW9udHNlcnJhdDtcbiAgc3JjOiB1cmwoLi4vZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLnR0Zik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLy8gTW9udHNlcnJhdC1Cb2xkLnR0ZlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBNb250c2VycmF0O1xuICBzcmM6IHVybCguLi9mb250cy9Nb250c2VycmF0LUJvbGQudHRmKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuIiwiLyoqXHJcbiAgKiBTQ1NTIE1JWElOU1xyXG4gICpcclxuICAqIFN0YW5kYXJkaXplZCBzdHlsZSBjaHVua3MsIHByb3ZpZGVkIGFzIGJvdGggU0NTUyBtaXhpbnMgYW5kIEhUTUwgY2xhc3Nlcy5cclxuICAqL1xyXG5cclxuXHJcbkBtaXhpbiB3cmFwIHsgLy8gTWFyZ2luLWxlc3Mgd3JhcHBlclxyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG4gIC53cmFwIHtcclxuICAgIEBpbmNsdWRlIHdyYXA7XHJcbiAgfVxyXG5cclxuQG1peGluIGlubmVyLXdyYXAgeyAvLyBXaWR0aC1saW1pdGVkLCBob3Jpem9udGFsbHkgY2VudGVyaW5nIHdyYXBwZXJcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6ICRzaXRlV2lkdGg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuICAuaW5uZXItd3JhcCB7XHJcbiAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xyXG4gIH1cclxuXHJcbkBtaXhpbiBtYXItdG9wIHsgLy8gU3RhbmRhcmRpemVkLCByZXNwb25zaXZlLCB0b3AtbWFyZ2luZWQgY29udGFpbmVyXHJcbiAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLXRvcDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbiAgLm1hci10b3Age1xyXG4gICAgQGluY2x1ZGUgbWFyLXRvcDtcclxuICB9XHJcblxyXG5AbWl4aW4gbWFyLWJvdHRvbSB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgYm90dG9tLW1hcmdpbmVkIGNvbnRhaW5lclxyXG4gIG1hcmdpbi1ib3R0b206ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIG1hcmdpbi1ib3R0b206ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wO1xyXG4gIH1cclxufVxyXG4gIC5tYXItYm90dG9tIHtcclxuICAgIEBpbmNsdWRlIG1hci1ib3R0b207XHJcbiAgfVxyXG5cclxuQG1peGluIG1hci12ZXJ0aWNhbCB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgdmVydGljYWxseS1tYXJnaW5lZCAoYm90aCB0b3AgYW5kIGJvdHRvbSkgY29udGFpbmVyXHJcbiAgQGluY2x1ZGUgbWFyLXRvcDtcclxuICBAaW5jbHVkZSBtYXItYm90dG9tO1xyXG59XHJcbiAgLm1hci12ZXJ0aWNhbCB7XHJcbiAgICBAaW5jbHVkZSBtYXItdmVydGljYWw7XHJcbiAgfVxyXG5cclxuQG1peGluIG1hci1yaWdodCB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgcmlnaHQtbWFyZ2luZWQgY29udGFpbmVyXHJcbiAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBtYXJnaW4gMzAwbXM7XHJcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICB9XHJcbn1cclxuICAubWFyLXJpZ2h0IHtcclxuICAgIEBpbmNsdWRlIG1hci1yaWdodDtcclxuICB9XHJcblxyXG5AbWl4aW4gbWFyLWxlZnQgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIGxlZnQtbWFyZ2luZWQgY29udGFpbmVyXHJcbiAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nTW9iaWxlKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2U7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nTGFwdG9wKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRjb250YWluZXJQYWRkaW5nRGVza3RvcCk7XHJcbiAgfVxyXG59XHJcbiAgLm1hci1sZWZ0IHtcclxuICAgIEBpbmNsdWRlIG1hci1sZWZ0O1xyXG4gIH1cclxuXHJcbkBtaXhpbiBtYXItaG9yaXpvbnRhbCB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgaG9yaXpvbnRhbGx5IHBhZGRlZCAoYm90aCBsZWZ0IGFuZCByaWdodCkgY29udGFpbmVyXHJcbiAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTW9iaWxlO1xyXG4gIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDIgKiAkY29udGFpbmVyUGFkZGluZ01vYmlsZSkpO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZTtcclxuICAgIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoMiAqICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSkpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAoMiAqICRjb250YWluZXJQYWRkaW5nVGFibGV0KSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcDtcclxuICAgIG1hcmdpbi1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICgyICogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3ApKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgICBtYXJnaW4tcmlnaHQ6ICRjb250YWluZXJQYWRkaW5nRGVza3RvcDtcclxuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gKDIgKiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3ApKTtcclxuICB9XHJcbn1cclxuICAubWFyLWhvcml6b250YWwge1xyXG4gICAgQGluY2x1ZGUgbWFyLWhvcml6b250YWw7XHJcbiAgfVxyXG5cclxuQG1peGluIG1hci1yaWdodC1uZWdhdGl2ZSB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgbmVnYXRpdmUgcmlnaHQtbWFyZ2luZWQgY29udGFpbmVyXHJcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGUpO1xyXG4gIHRyYW5zaXRpb246IG1hcmdpbiAzMDBtcztcclxuICAvL3dpZHRoOiBjYWxjKDEwMCUgKyAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2UpO1xyXG4gICAgLy93aWR0aDogY2FsYygxMDAlICsgJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gICAgLy93aWR0aDogY2FsYygxMDAlICsgJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgICAvL3dpZHRoOiBjYWxjKDEwMCUgKyAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3ApO1xyXG4gICAgLy93aWR0aDogY2FsYygxMDAlICsgJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICB9XHJcbn1cclxuICAubWFyLXJpZ2h0LW5lZ2F0aXZlIHtcclxuICAgIEBpbmNsdWRlIG1hci1yaWdodC1uZWdhdGl2ZTtcclxuICB9XHJcblxyXG5AbWl4aW4gbWFyLWxlZnQtbmVnYXRpdmUgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIG5lZ2F0aXZlIGxlZnQtbWFyZ2luZWQgY29udGFpbmVyXHJcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG4gIC8vd2lkdGg6IGNhbGMoMTAwJSArICRjb250YWluZXJQYWRkaW5nTW9iaWxlKTtcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKTtcclxuICAgIC8vd2lkdGg6IGNhbGMoMTAwJSArICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gICAgLy93aWR0aDogY2FsYygxMDAlICsgJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nTGFwdG9wKTtcclxuICAgIC8vd2lkdGg6IGNhbGMoMTAwJSArICRjb250YWluZXJQYWRkaW5nTGFwdG9wKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICAgIC8vd2lkdGg6IGNhbGMoMTAwJSArICRjb250YWluZXJQYWRkaW5nRGVza3RvcCk7XHJcbiAgfVxyXG59XHJcbiAgLm1hci1sZWZ0LW5lZ2F0aXZlIHtcclxuICAgIEBpbmNsdWRlIG1hci1sZWZ0LW5lZ2F0aXZlO1xyXG4gIH1cclxuXHJcbkBtaXhpbiBtYXItaG9yaXpvbnRhbC1uZWdhdGl2ZSB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgbmVnYXRpdmUgaG9yaXpvbnRhbGx5LW1hcmdpbmVkIChib3RoIGxlZnQgYW5kIHJpZ2h0KSBjb250YWluZXJcclxuICBtYXJnaW4tbGVmdDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nTW9iaWxlKTtcclxuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ01vYmlsZSk7XHJcbiAgdHJhbnNpdGlvbjogbWFyZ2luIDMwMG1zO1xyXG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAoMiAqICRjb250YWluZXJQYWRkaW5nTW9iaWxlKSk7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqICRjb250YWluZXJQYWRkaW5nUGhvbmVMYXJnZSk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ1Bob25lTGFyZ2UpO1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICgyICogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlKSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpO1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICgyICogJGNvbnRhaW5lclBhZGRpbmdUYWJsZXQpKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCk7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlICsgKDIgKiAkY29udGFpbmVyUGFkZGluZ0xhcHRvcCkpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3ApO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0xICogJGNvbnRhaW5lclBhZGRpbmdEZXNrdG9wKTtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAoMiAqICRjb250YWluZXJQYWRkaW5nRGVza3RvcCkpO1xyXG4gIH1cclxufVxyXG4gIC5tYXItaG9yaXpvbnRhbC1uZWdhdGl2ZSB7XHJcbiAgICBAaW5jbHVkZSBtYXItaG9yaXpvbnRhbC1uZWdhdGl2ZTtcclxuICB9XHJcblxyXG5AbWl4aW4gcGFkLXRvcCB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSBzcGFjZXIgZm9yIGVsZW1lbnQgdG9wXHJcbiAgcGFkZGluZy10b3A6ICRzcGFjZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNlclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbiAgLnBhZC10b3Age1xyXG4gICAgQGluY2x1ZGUgcGFkLXRvcDtcclxuICB9XHJcblxyXG5AbWl4aW4gcGFkLWJvdHRvbSB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSBzcGFjZXIgZm9yIGVsZW1lbnQgYm90dG9tXHJcbiAgcGFkZGluZy1ib3R0b206ICRzcGFjZXJQYWRkaW5nTW9iaWxlO1xyXG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMzAwbXM7XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNlclBhZGRpbmdUYWJsZXQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ0xhcHRvcDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2VyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbiAgLnBhZC1ib3R0b20ge1xyXG4gICAgQGluY2x1ZGUgcGFkLWJvdHRvbTtcclxuICB9XHJcblxyXG5AbWl4aW4gcGFkLWxlZnQgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIGxlZnQtcGFkZGVkIGNvbnRhaW5lclxyXG4gIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdNb2JpbGU7XHJcbiAgdHJhbnNpdGlvbjogcGFkZGluZyAzMDBtcztcclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBob25lLWxhcmdlXCIpIHtcclxuICAgIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nVGFibGV0O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRjb250YWluZXJQYWRkaW5nTGFwdG9wO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbiAgLnBhZC1sZWZ0IHtcclxuICAgIEBpbmNsdWRlIHBhZC1sZWZ0O1xyXG4gIH1cclxuXHJcbkBtaXhpbiBwYWQtcmlnaHQgeyAvLyBTdGFuZGFyZGl6ZWQsIHJlc3BvbnNpdmUsIHJpZ2h0LXBhZGRlZCBjb250YWluZXJcclxuICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ01vYmlsZTtcclxuICB0cmFuc2l0aW9uOiBwYWRkaW5nIDMwMG1zO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmUtbGFyZ2VcIikge1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdQaG9uZUxhcmdlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ1RhYmxldDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xyXG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lclBhZGRpbmdMYXB0b3A7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29udGFpbmVyUGFkZGluZ0Rlc2t0b3A7XHJcbiAgfVxyXG59XHJcbiAgLnBhZC1yaWdodCB7XHJcbiAgICBAaW5jbHVkZSBwYWQtcmlnaHQ7XHJcbiAgfVxyXG5cclxuQG1peGluIHBhZC12ZXJ0aWNhbCB7XHJcbiAgQGluY2x1ZGUgcGFkLXRvcDtcclxuICBAaW5jbHVkZSBwYWQtYm90dG9tO1xyXG59XHJcbiAgLnBhZC12ZXJ0aWNhbCB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSB2ZXJ0aWNhbCAoYm90aCB0byBhbmQgYm90dG9tKSBzcGFjZXIgZm9yIGVsZW1lbnRcclxuICAgIEBpbmNsdWRlIHBhZC12ZXJ0aWNhbDtcclxuICB9XHJcblxyXG5AbWl4aW4gcGFkLWhvcml6b250YWwge1xyXG4gIEBpbmNsdWRlIHBhZC1yaWdodDtcclxuICBAaW5jbHVkZSBwYWQtbGVmdDtcclxufVxyXG4gIC5wYWQtaG9yaXpvbnRhbCB7IC8vIFN0YW5kYXJkaXplZCwgcmVzcG9uc2l2ZSwgaG9yaXpvbnRhbGx5IHBhZGRlZCAoYm90aCBsZWZ0IGFuZCByaWdodCkgY29udGFpbmVyXHJcbiAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcclxuICB9XHJcblxyXG5AbWl4aW4gYnV0dG9uIHsgLy8gU3RhbmRhcmRpemVkIGJ1dHRvblxyXG4gIG1hcmdpbjogM3JlbSAwO1xyXG4gIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbkNvbG9yO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBib3JkZXI6IDJweCBzb2xpZCAkYnJhbmRDb2xvckNvbnRyYXN0O1xyXG59XHJcbiAgLmJ1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSBidXR0b247XHJcbiAgfVxyXG5cclxuQG1peGluIHNjcmVlbi1yZWFkZXItdGV4dCB7IC8vIFZpc2libGUgdG8gc2NyZWVuIHJlYWRlcnMgb25seVxyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMXB4O1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbWFyZ2luOiAtMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuICAuc2NyZWVuLXJlYWRlci10ZXh0IHtcclxuICAgIEBpbmNsdWRlIHNjcmVlbi1yZWFkZXItdGV4dDtcclxuICB9XHJcblxyXG5AbWl4aW4gbm8tc2Nyb2xsIHsgLy8gUmVtb3ZlIHNjcm9sbGFiaWxpdHkgZm9yIGVsZW1lbnRcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbiAgLm5vLXNjcm9sbCB7XHJcbiAgICBAaW5jbHVkZSBuby1zY3JvbGw7XHJcbiAgfVxyXG5cclxuQG1peGluIGgxIHtcclxuICBmb250LXNpemU6IDIuNHJlbTtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbn1cclxuXHJcbkBtaXhpbiBoMiB7XHJcbiAgZm9udC1zaXplOiAyLjJyZW07XHJcbiAgbWFyZ2luLWJvdHRvbTogMS45cmVtO1xyXG59XHJcblxyXG5AbWl4aW4gaDMge1xyXG4gIGZvbnQtc2l6ZTogMi4xcmVtO1xyXG4gIG1hcmdpbi1ib3R0b206IDEuOHJlbTtcclxufVxyXG5cclxuQG1peGluIGg0IHtcclxuICBmb250LXNpemU6IDJyZW07XHJcbiAgbWFyZ2luLWJvdHRvbTogMS43cmVtO1xyXG59XHJcblxyXG5AbWl4aW4gaDUge1xyXG4gIGZvbnQtc2l6ZTogMS45cmVtO1xyXG4gIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcclxufVxyXG5cclxuQG1peGluIGg2IHtcclxuICBmb250LXNpemU6IDEuOHJlbTtcclxuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcbn1cclxuXHJcbi5oMSB7XHJcbiAgQGluY2x1ZGUgaDE7XHJcbn1cclxuXHJcbi5oMiB7XHJcbiAgQGluY2x1ZGUgaDI7XHJcbn1cclxuXHJcbi5oMyB7XHJcbiAgQGluY2x1ZGUgaDM7XHJcbn1cclxuXHJcbi5oNCB7XHJcbiAgQGluY2x1ZGUgaDQ7XHJcbn1cclxuXHJcbi5oNSB7XHJcbiAgQGluY2x1ZGUgaDU7XHJcbn1cclxuXHJcbi5oNiB7XHJcbiAgQGluY2x1ZGUgaDY7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXHJcbi8vICAgIChfKSAgICAgICAgICB8IHwgICAgICAgICB8IHwgICAgICAgICAgICAgICAgICAgICAgICAgfCAoXylcclxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXHJcbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XHJcbi8vICAgIHwgfCB8IHwgfCAoX198IHwgfF98IHwgKF98IHwgIF9fLyB8IHwgfCB8IHwgfCAgX18vIChffCB8IHwgKF98IHxcclxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcclxuLy9cclxuLy8gICAgICBTaW1wbGUsIGVsZWdhbnQgYW5kIG1haW50YWluYWJsZSBtZWRpYSBxdWVyaWVzIGluIFNhc3NcclxuLy8gICAgICAgICAgICAgICAgICAgICAgICB2MS40LjlcclxuLy9cclxuLy8gICAgICAgIGh0dHBzOi8vZWR1YXJkb2JvdWNhcy5naXRodWIuaW8vaW5jbHVkZS1tZWRpYVxyXG4vL1xyXG4vLyAgICAgICAgIEF1dGhvcnM6IEVkdWFyZG8gQm91Y2FzIChAZWR1YXJkb2JvdWNhcylcclxuLy8gICAgICAgICAgICAgICAgICBLaXR0eSBHaXJhdWRlbCAoQGtpdHR5Z2lyYXVkZWwpXHJcbi8vXHJcbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcclxuLy8vL1xyXG4vLy8gaW5jbHVkZS1tZWRpYSBsaWJyYXJ5IHB1YmxpYyBjb25maWd1cmF0aW9uXHJcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXHJcbi8vLyBAYWNjZXNzIHB1YmxpY1xyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBnbG9iYWwgYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcclxuLy8vICAkYnJlYWtwb2ludHM6ICgncGhvbmUnOiAzMjBweCk7XHJcbi8vL1xyXG4kYnJlYWtwb2ludHM6IChcclxuICAncGhvbmUnOiAzMjBweCxcclxuICAndGFibGV0JzogNzY4cHgsXHJcbiAgJ2Rlc2t0b3AnOiAxMDI0cHhcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG4vLy9cclxuLy8vIENyZWF0ZXMgYSBsaXN0IG9mIHN0YXRpYyBleHByZXNzaW9ucyBvciBtZWRpYSB0eXBlc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcclxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJzogJ3NjcmVlbicpO1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcclxuLy8vICAkbWVkaWEtZXhwcmVzc2lvbnM6IChcclxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xyXG4vLy8gICk7XHJcbi8vL1xyXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcclxuICAnc2NyZWVuJzogJ3NjcmVlbicsXHJcbiAgJ3ByaW50JzogJ3ByaW50JyxcclxuICAnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxyXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcclxuICAncG9ydHJhaXQnOiAnKG9yaWVudGF0aW9uOiBwb3J0cmFpdCknLFxyXG4gICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLCAobWluLXJlc29sdXRpb246IDJkcHB4KScsXHJcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSksIChtaW4tcmVzb2x1dGlvbjogM2RwcHgpJ1xyXG4pICFkZWZhdWx0O1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxyXG4vLy9cclxuLy8vICAvKiBHZW5lcmF0ZXM6ICovXHJcbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cclxuLy8vXHJcbiR1bml0LWludGVydmFsczogKFxyXG4gICdweCc6IDEsXHJcbiAgJ2VtJzogMC4wMSxcclxuICAncmVtJzogMC4xLFxyXG4gICcnOiAwXHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLy9cclxuLy8vIERlZmluZXMgd2hldGhlciBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGF2YWlsYWJsZSwgdXNlZnVsIGZvciBjcmVhdGluZyBzZXBhcmF0ZSBzdHlsZXNoZWV0c1xyXG4vLy8gZm9yIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBtZWRpYSBxdWVyaWVzLlxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBEaXNhYmxlcyBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzXHJcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gIC5mb28ge1xyXG4vLy8gICAgY29sb3I6IHRvbWF0bztcclxuLy8vICB9XHJcbi8vL1xyXG4kaW0tbWVkaWEtc3VwcG9ydDogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vL1xyXG4vLy8gU2VsZWN0cyB3aGljaCBicmVha3BvaW50IHRvIGVtdWxhdGUgd2hlbiBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGRpc2FibGVkLiBNZWRpYSBxdWVyaWVzIHRoYXQgc3RhcnQgYXQgb3JcclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnKSB7XHJcbi8vLyAgICAuZm9vIHtcclxuLy8vICAgICAgY29sb3I6IHRvbWF0bztcclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cclxuLy8vICAuZm9vIHtcclxuLy8vICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBkb2VzIG5vdCBpbnRlcmNlcHQgdGhlIGRlc2t0b3AgYnJlYWtwb2ludFxyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyAgLyogTm8gb3V0cHV0ICovXHJcbi8vL1xyXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xyXG5cclxuLy8vXHJcbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXHJcbi8vLyBhcmUgbm90IHN1cHBvcnRlZC5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xyXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcclxuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xyXG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAnc2NyZWVuJykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAgLyogR2VuZXJhdGVzOiAqL1xyXG4vLy8gICAuZm9vIHtcclxuLy8vICAgICBjb2xvcjogdG9tYXRvO1xyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcclxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XHJcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcclxuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3JldGluYTJ4Jykge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vICAvKiBObyBvdXRwdXQgKi9cclxuLy8vXHJcbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XHJcblxyXG4vLy8vXHJcbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcclxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxyXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcclxuLy8vIHRvIGRldGVjdCBzdXBwb3J0LlxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXHJcbi8vL1xyXG5AZnVuY3Rpb24gaW0tbG9nKCRtZXNzYWdlKSB7XHJcbiAgQGlmIGZlYXR1cmUtZXhpc3RzKCdhdC1lcnJvcicpIHtcclxuICAgIEBlcnJvciAkbWVzc2FnZTtcclxuICB9IEBlbHNlIHtcclxuICAgIEB3YXJuICRtZXNzYWdlO1xyXG4gICAgJF86IG5vb3AoKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJG1lc3NhZ2U7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcclxuLy8vIEFQSSB0aGFuIGBAaWYgaW0tbG9nKCcuLicpIHt9YCBvciBgJF86IGltLWxvZygnLi4nKWAuIEJhc2ljYWxseSwgdXNlIHRoZSBmdW5jdGlvblxyXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxyXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xyXG4vLy9cclxuQG1peGluIGxvZygkbWVzc2FnZSkge1xyXG4gIEBpZiBpbS1sb2coJG1lc3NhZ2UpIHt9XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEZ1bmN0aW9uIHdpdGggbm8gYEByZXR1cm5gIGNhbGxlZCBuZXh0IHRvIGBAd2FybmAgaW4gU2FzcyAzLjNcclxuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXHJcbi8vL1xyXG5AZnVuY3Rpb24gbm9vcCgpIHt9XHJcblxyXG4vLy9cclxuLy8vIERldGVybWluZXMgd2hldGhlciBhIGxpc3Qgb2YgY29uZGl0aW9ucyBpcyBpbnRlcmNlcHRlZCBieSB0aGUgc3RhdGljIGJyZWFrcG9pbnQuXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAgICRjb25kaXRpb25zICAtIE1lZGlhIHF1ZXJ5IGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XHJcbi8vL1xyXG5AZnVuY3Rpb24gaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikge1xyXG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xyXG5cclxuICBAaWYgbm90ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlIHtcclxuICAgIEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxyXG4gIH1cclxuXHJcbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XHJcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xyXG4gICAgICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRjb25kaXRpb24pO1xyXG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcclxuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xyXG5cclxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXHJcbiAgICAgICAgICAoJHByZWZpeCA9PSAnbWluJyBhbmQgJHZhbHVlID4gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIHtcclxuICAgICAgICBAcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcclxuICAgICAgQHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gdHJ1ZTtcclxufVxyXG5cclxuLy8vL1xyXG4vLy8gUGFyc2luZyBlbmdpbmVcclxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8vXHJcblxyXG5cclxuLy8vXHJcbi8vLyBHZXQgb3BlcmF0b3Igb2YgYW4gZXhwcmVzc2lvblxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIEFueSBvZiBgPj1gLCBgPmAsIGA8PWAsIGA8YCwgYOKJpWAsIGDiiaRgXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pIHtcclxuICBAZWFjaCAkb3BlcmF0b3IgaW4gKCc+PScsICc+JywgJzw9JywgJzwnLCAn4omlJywgJ+KJpCcpIHtcclxuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICAgICBAcmV0dXJuICRvcGVyYXRvcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cclxuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxyXG4gIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXHJcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxyXG4gICRfOiBpbS1sb2coJ05vIG9wZXJhdG9yIGZvdW5kIGluIGAjeyRleHByZXNzaW9ufWAuJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxyXG4vLy9cclxuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKSB7XHJcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XHJcbiAgJGRpbWVuc2lvbjogJ3dpZHRoJztcclxuXHJcbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XHJcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJG9wZXJhdG9yIC0gT3BlcmF0b3JcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcclxuLy8vXHJcbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XHJcbiAgQHJldHVybiBpZihpbmRleCgoJzwnLCAnPD0nLCAn4omkJyksICRvcGVyYXRvciksICdtYXgnLCAnbWluJyk7XHJcbn1cclxuXHJcblxyXG4vLy9cclxuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IHZhbHVlIGZyb21cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gQSBudW1lcmljIHZhbHVlXHJcbi8vL1xyXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xyXG4gICRvcGVyYXRvci1pbmRleDogc3RyLWluZGV4KCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xyXG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xyXG5cclxuICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcclxuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkdmFsdWU6IHRvLW51bWJlcigkdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgJGludGVydmFsOiBtYXAtZ2V0KCR1bml0LWludGVydmFscywgdW5pdCgkdmFsdWUpKTtcclxuXHJcbiAgQGlmIG5vdCAkaW50ZXJ2YWwge1xyXG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xyXG4gICAgLy8gcmVseSBvbiB0aGUgYGltLWxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcclxuICAgIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxyXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcclxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgaW0tbG9nKC4uKSB7fWAgaW5zdGVhZC5cclxuICAgICRfOiBpbS1sb2coJ1Vua25vd24gdW5pdCBgI3t1bml0KCR2YWx1ZSl9YC4nKTtcclxuICB9XHJcblxyXG4gIEBpZiAkb3BlcmF0b3IgPT0gJz4nIHtcclxuICAgICR2YWx1ZTogJHZhbHVlICsgJGludGVydmFsO1xyXG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XHJcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHZhbHVlO1xyXG59XHJcblxyXG5cclxuLy8vXHJcbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cclxuLy8vXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXHJcbi8vL1xyXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIFZhbGlkIG1lZGlhIHF1ZXJ5XHJcbi8vL1xyXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xyXG4gIC8vIElmIGl0IGlzIHBhcnQgb2YgJG1lZGlhLWV4cHJlc3Npb25zLCBpdCBoYXMgbm8gb3BlcmF0b3JcclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxyXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XHJcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbik7XHJcbiAgfVxyXG5cclxuICAkb3BlcmF0b3I6IGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKTtcclxuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XHJcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XHJcbiAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcclxuXHJcbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XHJcbn1cclxuXHJcbi8vL1xyXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xyXG4vLy9cclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy9cclxuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxyXG4vLy9cclxuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxlbmd0aCgkbGlzdCkpIHtcclxuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XHJcbiAgICBAcmV0dXJuICgpO1xyXG4gIH1cclxuXHJcbiAgJHJlc3VsdDogKCk7XHJcblxyXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcclxuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbi8vLy9cclxuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vLyBAYWNjZXNzIHByaXZhdGVcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gQ2FzdHMgYSBzdHJpbmcgaW50byBhIG51bWJlclxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkdmFsdWUgLSBWYWx1ZSB0byBiZSBwYXJzZWRcclxuLy8vXHJcbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XHJcbi8vL1xyXG5AZnVuY3Rpb24gdG8tbnVtYmVyKCR2YWx1ZSkge1xyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xyXG4gICAgQHJldHVybiAkdmFsdWU7XHJcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ3N0cmluZycge1xyXG4gICAgJF86IGltLWxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcclxuICB9XHJcblxyXG4gICRmaXJzdC1jaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsIDEsIDEpO1xyXG4gICRyZXN1bHQ6IDA7XHJcbiAgJGRpZ2l0czogMDtcclxuICAkbWludXM6ICgkZmlyc3QtY2hhcmFjdGVyID09ICctJyk7XHJcbiAgJG51bWJlcnM6ICgnMCc6IDAsICcxJzogMSwgJzInOiAyLCAnMyc6IDMsICc0JzogNCwgJzUnOiA1LCAnNic6IDYsICc3JzogNywgJzgnOiA4LCAnOSc6IDkpO1xyXG5cclxuICAvLyBSZW1vdmUgKy8tIHNpZ24gaWYgcHJlc2VudCBhdCBmaXJzdCBjaGFyYWN0ZXJcclxuICBAaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJysnIG9yICRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKSB7XHJcbiAgICAkdmFsdWU6IHN0ci1zbGljZSgkdmFsdWUsIDIpO1xyXG4gIH1cclxuXHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xyXG4gICAgJGNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgJGksICRpKTtcclxuXHJcbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XHJcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHItc2xpY2UoJHZhbHVlLCAkaSkpXHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRjaGFyYWN0ZXIgPT0gJy4nIHtcclxuICAgICAgJGRpZ2l0czogMTtcclxuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcclxuICAgICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3Rlcik7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xyXG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgbWFwLWdldCgkbnVtYmVycywgJGNoYXJhY3RlcikgLyAkZGlnaXRzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiBpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KTtcclxufVxyXG5cclxuXHJcbi8vL1xyXG4vLy8gQWRkIGAkdW5pdGAgdG8gYCR2YWx1ZWBcclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkdW5pdCAtIFN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgdW5pdFxyXG4vLy9cclxuLy8vIEByZXR1cm4ge051bWJlcn0gLSBgJHZhbHVlYCBleHByZXNzZWQgaW4gYCR1bml0YFxyXG4vLy9cclxuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XHJcbiAgJHVuaXRzOiAoJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dywgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcclxuXHJcbiAgQGlmIG5vdCBpbmRleChtYXAta2V5cygkdW5pdHMpLCAkdW5pdCkge1xyXG4gICAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC1nZXQoJHVuaXRzLCAkdW5pdCk7XHJcbn1cclxuXHJcbi8vL1xyXG4vLy8gVGhpcyBtaXhpbiBhaW1zIGF0IHJlZGVmaW5pbmcgdGhlIGNvbmZpZ3VyYXRpb24ganVzdCBmb3IgdGhlIHNjb3BlIG9mXHJcbi8vLyB0aGUgY2FsbC4gSXQgaXMgaGVscGZ1bCB3aGVuIGhhdmluZyBhIGNvbXBvbmVudCBuZWVkaW5nIGFuIGV4dGVuZGVkXHJcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcclxuLy8vIGZvciBpbnN0YW5jZS5cclxuLy8vXHJcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXHJcbi8vL1xyXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vha3BvaW50cyBbKCldIC0gTWFwIG9mIHR3ZWFrcG9pbnRzIHRvIGJlIG1lcmdlZCB3aXRoIGAkYnJlYWtwb2ludHNgXHJcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIGJyZWFrcG9pbnRzIHdpdGggYSB0d2Vha3BvaW50XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XHJcbi8vLyAgICAgICAvLyAuLi5cclxuLy8vICAgICAgfVxyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgbWVkaWEgZXhwcmVzc2lvbnMgd2l0aCBhIGN1c3RvbSBvbmVcclxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcclxuLy8vICAgIC5mb28ge1xyXG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScpIHtcclxuLy8vICAgICAgIC8vIC4uLlxyXG4vLy8gICAgICB9XHJcbi8vLyAgICB9XHJcbi8vLyAgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xyXG4vLy8gICAgLmZvbyB7XHJcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJywgJzw9Y3VzdG9tJykge1xyXG4vLy8gICAgICAgLy8gLi4uXHJcbi8vLyAgICAgIH1cclxuLy8vICAgIH1cclxuLy8vICB9XHJcbi8vL1xyXG5AbWl4aW4gbWVkaWEtY29udGV4dCgkdHdlYWtwb2ludHM6ICgpLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgpKSB7XHJcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRnbG9iYWwtYnJlYWtwb2ludHM6ICRicmVha3BvaW50cztcclxuICAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zOiAkbWVkaWEtZXhwcmVzc2lvbnM7XHJcblxyXG4gIC8vIFVwZGF0ZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRicmVha3BvaW50czogbWFwLW1lcmdlKCRicmVha3BvaW50cywgJHR3ZWFrcG9pbnRzKSAhZ2xvYmFsO1xyXG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLW1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xyXG5cclxuICBAY29udGVudDtcclxuXHJcbiAgLy8gUmVzdG9yZSBnbG9iYWwgY29uZmlndXJhdGlvblxyXG4gICRicmVha3BvaW50czogJGdsb2JhbC1icmVha3BvaW50cyAhZ2xvYmFsO1xyXG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xyXG59XHJcblxyXG4vLy8vXHJcbi8vLyBpbmNsdWRlLW1lZGlhIHB1YmxpYyBleHBvc2VkIEFQSVxyXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xyXG4vLy8gQGFjY2VzcyBwdWJsaWNcclxuLy8vL1xyXG5cclxuXHJcbi8vL1xyXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc2luZ2xlIHNldCBicmVha3BvaW50XHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHR3byBzZXQgYnJlYWtwb2ludHNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9dGFibGV0JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggY3VzdG9tIHZhbHVlc1xyXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIHNldCBicmVha3BvaW50cyB3aXRoIGN1c3RvbSB2YWx1ZXNcclxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHN0YXRpYyBleHByZXNzaW9uXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2NzcyAtIE1peGluZyBldmVyeXRoaW5nXHJcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxyXG4vLy9cclxuQG1peGluIG1lZGlhKCRjb25kaXRpb25zLi4uKSB7XHJcbiAgQGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA9PSAwKSBvclxyXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XHJcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XHJcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKS4uLikge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qKlxuICAqIEhUTUwgRUxFTUVOVCBTVFlMRVNcbiAgKlxuICAqIFN0eWxlIGRlZmluaXRpb25zIGZvciBnbG9iYWwgZWxlbWVudCBzZWxlY3RvcnMuXG4gICovXG5cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIENvbnNpc3RlbnQgYm94LXNpemluZyBmb3IgYWxsIGVsZW1lbnRzXG59XG5cbmh0bWwge1xuICBoZWlnaHQ6IDEwMCU7IC8vIEZvciBzdGlja3kgZm9vdGVyXG4gIGxpbmUtaGVpZ2h0OiAxLjc7IC8vIFNldCBkZWZhdWx0IGxpbmUgaGVpZ2h0XG4gIGZvbnQtc2l6ZTogNjIuNSU7IC8vIDYyLjUlIG9mIDE2cHggYnJvd3NlciBmb250IHNpemUgaXMgMTBweFxufVxuXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTsgLy8gRm9yIHN0aWNreSBmb290ZXJcbiAgbWFyZ2luOiAwOyAvLyBNYWtlIHN1cmUgYm9keSBlbGVtZW50IGlzIGVkZ2UtdG8tZWRnZVxuICBkaXNwbGF5OiBncmlkOyAvLyBGb3Igc3RpY2t5IGZvb3RlclxuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIGF1dG87IC8vIEZvciBzdGlja3kgZm9vdGVyXG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5Q29sb3I7XG4gIGZvbnQtZmFtaWx5OiAnTW9udHNlcnJhdCcsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS42cmVtOyAvLyBSZXNldCBvdmVyYWxsIFwicm9vdFwiIGZvbnQtc2l6ZSBmb3IgMTZweCBzdGFuZGFyZCAocmVsYXRpdmUgdG8gNjIuNSUgYWN0dWFsIHJvb3Qgc2l6ZSBkZWNsYXJlZCBhYm92ZSlcbiAgY29sb3I6ICRmb250Q29sb3I7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIC5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBjb2xvcjogJGJsYWNrO1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLy8gKFNlZSBtaXhpbnMpOlxuaDEge1xuICBAaW5jbHVkZSBoMTtcbn1cblxuaDIge1xuICBAaW5jbHVkZSBoMjtcbn1cblxuaDMge1xuICBAaW5jbHVkZSBoMztcbn1cblxuaDQge1xuICBAaW5jbHVkZSBoNDtcbn1cblxuaDUge1xuICBAaW5jbHVkZSBoNTtcbn1cblxuaDYge1xuICBAaW5jbHVkZSBoNjtcbn1cblxucCB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogJGxpbmtDb2xvcjtcblxuICAmOmxpbmsge1xuXG4gIH1cblxuICAmOmhvdmVyIHtcblxuICB9XG5cbiAgJjphY3RpdmUge1xuXG4gIH1cblxuICAmOnZpc2l0ZWQge1xuXG4gIH1cbn1cblxuOmZvY3VzIHtcbiAgLy9vdXRsaW5lOiAzcHggc29saWQgJG9yYW5nZTtcbn1cblxudWwsIG9sIHtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEJlZ2luIGJ1dHRvbiBzdHlsZXMgKi9cbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmJ1dHRvbjpob3ZlcixcbmJ1dHRvbjpmb2N1cyB7XG5cbn1cblxuYnV0dG9uOmZvY3VzIHtcbiAgLy9vdXRsaW5lOiAxcHggc29saWQgI2ZmZjtcbiAgLy9vdXRsaW5lLW9mZnNldDogLTRweDtcbn1cblxuYnV0dG9uOmFjdGl2ZSB7XG4gIC8vdHJhbnNmb3JtOiBzY2FsZSgwLjk5KTtcbn1cbi8qIEVuZCBidXR0b24gc3R5bGVzICovXG5cbmJsb2NrcXVvdGUge1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICRibGFjaztcbiAgbWFyZ2luOiAxLjVlbSAxMHB4O1xuICBwYWRkaW5nOiAwLjVlbSAzMHB4O1xuICBxdW90ZXM6IFwiXFwyMDFDXCI7IC8vXCJcXDIwMURcIlwiXFwyMDE4XCJcIlxcMjAxOVwiO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb2xvcjogI2NjYztcbiAgICBjb250ZW50OiBvcGVuLXF1b3RlO1xuICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogLTAuNGVtO1xuICB9XG5cbiAgcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBwOmZpcnN0LW9mLXR5cGUsIHA6bnRoLW9mLXR5cGUoMikge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICB9XG59XG4iLCIvKipcbiAgKiBIRUFERVIgU1RZTEVTXG4gICovXG5cbiAgLmhlYWRlci13cmFwIHtcbiAgICBAaW5jbHVkZSB3cmFwO1xuICAgIGdyaWQtcm93LXN0YXJ0OiAxOyAvLyBmb3Igc3RpY2t5IGZvb3RlclxuICAgIGdyaWQtcm93LWVuZDogMjsgLy8gZm9yIHN0aWNreSBmb290ZXJcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkbWl0b1B1cnBsZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bUdyYXk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9mZldoaXRlO1xuICB9XG4gICAgLmhlYWRlci1vdmVybGF5IHsgLy8gVHJhbnNsdWNlbnQsIFwiZGltbWVyXCIgbGF5ZXIgb3ZlciBoZWFkZXIgYmFja2dyb3VuZC1pbWFnZS5cbiAgICAgIC8qd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZENvbG9yUHJpbWFyeTtcbiAgICAgIG9wYWNpdHk6IDAuNztcblxuICAgICAgJi5iZy12aXNpYmxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JQcmltYXJ5O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfSovXG4gICAgfVxuXG4gICAgLnRvcC1iYXItYmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbWVkaXVtR3JheTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodEdyYXk7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC8vZGlzcGxheTogZmxleDtcbiAgICAgIC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICAgLmhlYWRlci1icmFuZCB7IC8vIENvbnRhaW5lciBmb3IgbG9nbywgdGV4dCBsb2dvLCB0YWdsaW5lLiBDb3ZlcnMgZW50aXJlIGhlYWRlciBhcmVhIChiZWhpbmQgbmF2cylcbiAgICAgICAgQGluY2x1ZGUgcGFkLWxlZnQ7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IC8vIE5lZ2F0ZSByaWdodCBwYWRkaW5nIGZyb20gJ2NvbnRhaW5lcicgbWl4aW4gXl5eXG4gICAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAxO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgICBoZWlnaHQ6IGNhbGMoJGhlYWRlckhlaWdodERlc2t0b3AgLSAkdG9wQmFySGVpZ2h0KTtcbiAgICAgICAgICAvL21hcmdpbi10b3A6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAkbWFpbk5hdkhlaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKCRoZWFkZXJIZWlnaHREZXNrdG9wIC0gJHRvcEJhckhlaWdodCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxvZ28taW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoJGhlYWRlckhlaWdodE1vYmlsZSAtIDMwcHgpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxvZ28tdGV4dCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubG9nby10ZXh0LXRpdGxlIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAgICAgICAgICAgc3Bhbi5yZWdpc3RlcmVkIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG5cbiAgICAgICAgICAgICAgICBzcGFuLnJlZ2lzdGVyZWQge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sb2dvLXRleHQtdGFnbGluZSB7XG4gICAgICAgICAgICAgIC8vbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0byAwIGF1dG87XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG4gICAgICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjZyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xuICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waG9uZS1sYXJnZVwiKSB7XG4gICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaGVhZGVyLW5hdiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA5MHB4O1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgLmhlYWRlci1uYXYtbWFpbiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvZmZXaGl0ZTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7IC8vIG5lZ2F0ZSBsZWZ0IHBhZGRpbmcgZnJvbSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAzNXB4O1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgY29sdW1uLWdhcDogYXV0bztcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtR3JheTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDEwcHg7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIC8vQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bUdyYXk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDA7IC8vIG5lZ2F0ZSAnY29udGFpbmVyJyBtaXhpbiBeXl5cbiAgICAgICAgICAgICAgICAvL3BhZGRpbmctbGVmdDogMDsgLy8gbmVnYXRlICdjb250YWluZXInIG1peGluIF5eXlxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJG1pdG9QdXJwbGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogZGlzcGxheSAzMDBtcywgYmFja2dyb3VuZC1jb2xvciAzMDBtcztcblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogNjZweDtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZWRpdW1HcmF5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkbWl0b0dyZWVuO1xuXG4gICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgdWwge1xuXG4gICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGRhcmtlbigkbWVkaXVtR3JheSwgMTAlKTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJG1pdG9SZWQ7XG5cbiAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgICAgICAgICB1bCB7XG5cbiAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2VuKCRtZWRpdW1HcmF5LCAxMCUpO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkbWl0b0JsdWU7XG5cbiAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgICAgICAgICB1bCB7XG5cbiAgICAgICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2VuKCRtZWRpdW1HcmF5LCAxMCUpO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDNweCBzb2xpZCAkbWl0b1B1cnBsZTtcblxuICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuXG4gICAgICAgICAgICAgICAgICAgIHVsIHtcblxuICAgICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZW4oJG1lZGl1bUdyYXksIDEwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciA+IHVsIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuY3VycmVudF9wYWdlX2l0ZW0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGg6IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG5cbiAgICAgICAgICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cbiAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtN3B4O1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC03cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgbGkge1xuXG4gICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYuY3VycmVudF9wYWdlX2FuY2VzdG9yIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuXG4gICAgICAgICAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuXG4gICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTdweDtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtN3B4O1xuXG4gICAgICAgICAgICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgLy9tYXJnaW4tcmlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgLy9wYWRkaW5nOiAwIDI1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAvL2xpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIC8vei1pbmRleDogOTk5ODtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrR3JheTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgLm5hdi1jaGV2cm9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5O1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHVsIHsgLy8gc3ViLW5hdlxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIC8vcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtZWRpdW1HcmF5O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtR3JheTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBkYXJrZW4oJG1lZGl1bUdyYXksIDEwJSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkbWVkaXVtR3JheSwgMTAlKTtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtlbigkbWVkaXVtR3JheSwgMTAlKTtcbiAgICAgICAgICAgICAgICAvL3Zpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAvL29wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgLy90cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzLCBvcGFjaXR5IDFzIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAvL3RyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMzAwbXM7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgdG9wOiA2MnB4O1xuICAgICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtR3JheTtcbiAgICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8qJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIC8vY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgIC8vd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAvL2hlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAvL3RyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgLy90b3A6IC0xMnB4O1xuICAgICAgICAgICAgICAgICAgLy9yaWdodDogLTFweDtcbiAgICAgICAgICAgICAgICAgIC8vei1pbmRleDogMTAwMTtcblxuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRtZWRpdW1HcmF5O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtMTJweDtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDE7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSovXG5cbiAgICAgICAgICAgICAgICBsaSB7IC8vIHN1YiBuYXZcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGRhcmtlbigkbWVkaXVtR3JheSwgMTAlKTtcblxuICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtRGFya0dyYXk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZW4oJG1lZGl1bUdyYXksIDEwJSk7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICAgICAgLy9ib3JkZXItdG9wOiAxcHggc29saWQgJG9mZldoaXRlO1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2VuKCRtZWRpdW1HcmF5LCAxMCUpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vYm9yZGVyLXRvcDogMXB4IHNvbGlkICRvZmZXaGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgLy9ib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGRhcmtlbigkbWVkaXVtR3JheSwgMTAlKTtcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkb2ZmV2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIC8vYm9yZGVyLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBkYXJrZW4oJG1lZGl1bUdyYXksIDEwJSk7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDIyNXB4O1xuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci10b3A6IDFweCBzb2xpZCAkdHJhbnNHcmF5O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgZGFya2VuKCRtZWRpdW1HcmF5LCAxMCUpO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICBhIHsgLy8gc3ViIG5hdlxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIC8vcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbWl0b1B1cnBsZTtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAvL3RleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cblxuXG5cblxuXG4gICAgLmhlYWRlci1idXR0b25zIHtcbiAgICAgIEBpbmNsdWRlIHBhZC1yaWdodDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiAkaGVhZGVySGVpZ2h0TW9iaWxlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHotaW5kZXg6IDY7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBoZWlnaHQ6ICR0b3BCYXJIZWlnaHQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgICAuZ2xhc3Mge1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgdG9wOiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGhlaWdodDogJHRvcEJhckhlaWdodDtcbiAgICAgICAgICBib3JkZXI6IHVuc2V0O1xuICAgICAgICB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJGJsYWNrLCAyMCUpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgLy9jb2xvcjogJG1lZGl1bUdyYXk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5idXJnZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTM0MHB4XCIpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkYmxhY2ssIDIwJSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAuaGVhZGVyLXNlYXJjaC13cmFwIHsgLy8gSGVhZGVyLXNwZWNpZmljIHNlYXJjaCB3cmFwXG4gICAgICBAaW5jbHVkZSB3cmFwO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgICB6LWluZGV4OiA2O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgdG9wOiAkdG9wQmFySGVpZ2h0O1xuICAgICAgICBoZWlnaHQ6IGNhbGMoJGhlYWRlckhlaWdodERlc2t0b3AgLSAkbWFpbk5hdkhlaWdodCk7XG4gICAgICB9XG5cbiAgICAgIC5zaXRlLXNlYXJjaCB7IC8vIEhlYWRlciBzcGVjaWZpYyAtLSBzZWUgc2VhcmNoLnNjc3MgZm9yIGdsb2JhbCBzZWFyY2ggc3R5bGVzXG4gICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgfVxuICAgIH1cbiIsIi8qKlxuICAqIFNJVEUgU0VBUkNIIEZPUk0gU1RZTEVTXG4gICovXG5cbi5zaXRlLXNlYXJjaCB7XG4gIEBpbmNsdWRlIGlubmVyLXdyYXA7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogNDBweCAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA1MHB4O1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5cbiAgLnNlYXJjaC1xdWVyeSB7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDE7XG4gICAgZ3JpZC1yb3c6IDE7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgbGFiZWwge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdW5zZXQ7XG4gICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICB9XG4gIH1cblxuICAuc2VhcmNoLXN1Ym1pdCB7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAxO1xuICAgIGdyaWQtcm93OiAxO1xuICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgIGNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJyYW5kQ29sb3JDb250cmFzdCwgMjAlKTtcbiAgICB9XG4gIH1cbiIsIi8qKlxuICAqIE1BSU4gUEFHRSBDT05URU5UIFNUWUxFU1xuICAqL1xuXG5cbi5tYWluLXdyYXAge1xuICBAaW5jbHVkZSB3cmFwO1xuICBncmlkLXJvdy1zdGFydDogMjsgLy8gRm9yIHN0aWNreSBmb290ZXJcbiAgZ3JpZC1yb3ctZW5kOiAzOyAvLyBGb3Igc3RpY2t5IGZvb3RlclxufVxuICAubWFpbiB7IC8vIENvbnRhaW5lciBmb3IgYWxsIG5vbi1oZWFkZXIgYW5kIG5vbi1mb290ZXIgc3R1ZmZcbiAgICBoZWlnaHQ6IDEwMCU7IC8vIEZvciBzdGlja3kgZm9vdGVyOiBmaWxsIGFueSBlbXB0eSBzcGFjZSBkb3duIHRvIGZvb3RlclxuICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIEV4dGVuZHMgaGVpZ2h0IHRvIGFjY29tb2RhdGUgY29udGVudCdzIG1hcmdpblxuICB9XG4gIC5oZWFkZXItaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA1XG4gIH1cblxuXG5cblxuICAuaG9tZS1iYW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vbWluLWhlaWdodDogMzAwcHg7XG4gICAgLy9oZWlnaHQ6IGNhbGMoNDV2aCAtIDEyMHB4KTtcbiAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaG9tZV9iYW5uZXIuanBnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAvL21pbi1oZWlnaHQ6IDQwMHB4O1xuICAgICAgLy9oZWlnaHQ6IGNhbGMoNTV2aCAtIDEyMHB4KTtcbiAgICB9XG4gIH1cbiAgICAuaG9tZS1iYW5uZXItb3ZlcmxheSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgLmhvbWUtYmFubmVyLWJveC13cmFwIHtcbiAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgICAuaG9tZS1iYW5uZXItYm94IHtcbiAgICAgICAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRtaXRvQmx1ZSwgMC4yKTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcblxuICAgICAgICAgIH1cblxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDQwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBjb2xvcjogJG9mZldoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDUwcHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi44ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cblxuXG4gICAgLnBhZ2UtaGVhZGVyLXdyYXAge1xuICAgICAgQGluY2x1ZGUgd3JhcDtcbiAgICB9XG4gICAgICAucGFnZS1oZWFkZXIgeyAvLyBNYWluIHBhZ2UgaGVhZGVyIChjb250YWlucyBwYWdlIHRpdGxlIEgxLCBpbnRybyB0ZXh0LCBldGMuKVxuICAgICAgICBAaW5jbHVkZSBpbm5lci13cmFwO1xuICAgICAgICBAaW5jbHVkZSBwYWQtdG9wO1xuICAgICAgICBAaW5jbHVkZSBwYWQtaG9yaXpvbnRhbDtcbiAgICAgIH1cbiAgICAgICAgLnBhZ2UtaW50cm8ge1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC1ib3R0b207XG4gICAgICAgIH1cbiAgICAgICAgICAucGFnZS1pbnRyby10aXRsZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnBhZ2UtaW50cm8tZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAucGFnZS10aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgLnBhZ2UtbWFpbi13cmFwIHtcbiAgICAgIEBpbmNsdWRlIHdyYXA7XG4gICAgfVxuICAgICAgLnBhZ2UtbWFpbiB7IC8vIE1haW4gcGFnZSBjb250ZW50IGFuZCBzaWRlYmFyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wYWdlLW1haW4uc2lkZSB7IC8vIFNpZGViYXItc3BlY2lmaWMgdmVyc2lvbiBvZiAucGFnZS1tYWluIF5eXlxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAwcHg7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDMyMHB4O1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICAgLnBhZ2UtY29udGVudCB7IC8vIE1haW4gcGFnZSBjb250ZW50IChzaXRzIGFsb25nc2lkZSBzaWRlYmFyIGlmIHRoZXJlIGlzIG9uZSlcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAxO1xuICAgICAgICAgIGdyaWQtcm93OiAyO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAgIC5wYWdlLXNlY3Rpb24td3JhcCB7XG4gICAgICAgICAgICBAaW5jbHVkZSB3cmFwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wYWdlLXNlY3Rpb24geyAvLyB2ZXJ0aWNhbGx5IHNlcGFyYXRlcyBwaWVjZXMgb2YgbWFpbiBjb250ZW50IGFuZCBwYWRzIGFnYWluc3QgdGhlIHNpZGViYXJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgaW5uZXItd3JhcDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcGFkLWhvcml6b250YWw7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBhZC1ib3R0b207XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgLnNpZGUgLnBhZ2UtY29udGVudHsgLy8gLnBhZ2UtY29udGVudCBzdHlsZXMgZm9yIHNpZGViYXIgbGF5b3V0XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnBhZ2Utc2lkZWJhciB7XG4gICAgICAgICAgQGluY2x1ZGUgcGFkLWJvdHRvbTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMTtcbiAgICAgICAgICBncmlkLXJvdzogMTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDE7XG4gICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiIsIi8qKlxuICAqIEZPT1RFUiBTVFlMRVNcbiAgKi9cblxuXG4uZm9vdGVyLXdyYXAge1xuICBncmlkLXJvdy1zdGFydDogMzsgLy8gRm9yIHN0aWNreSBmb290ZXJcbiAgZ3JpZC1yb3ctZW5kOiA0OyAvLyBGb3Igc3RpY2t5IGZvb3RlclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmRDb2xvclByaW1hcnk7XG59XG4gIC5mb290ZXIge1xuICAgIEBpbmNsdWRlIHBhZC10b3A7XG4gICAgQGluY2x1ZGUgcGFkLWJvdHRvbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gRXh0ZW5kcyBoZWlnaHQgdG8gYWNjb21vZGF0ZSBjb250ZW50J3MgbWFyZ2luXG4gICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gIH1cbiAgICAuZm9vdGVyLW5hdiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIEBpbmNsdWRlIHBhZC1ob3Jpem9udGFsO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIC8vbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgICAgICAgY29sb3I6ICRicmFuZENvbG9yQ29udHJhc3Q7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICByaWdodDogLTJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBjb2xvcjogJGJyYW5kQ29sb3JDb250cmFzdDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29weXJpZ2h0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgfVxuIiwiLyoqXG4gICogTUlTQ0VMTEFORU9VUyBTVFlMRVNcbiAgKi9cblxuLmVtYmVkLWNvbnRhaW5lci13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xufVxuICAuZW1iZWQtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgICAuZW1iZWQtY29udGFpbmVyIGlmcmFtZSxcbiAgICAuZW1iZWQtY29udGFpbmVyIG9iamVjdCxcbiAgICAuZW1iZWQtY29udGFpbmVyIGVtYmVkIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4iXX0= */
