@charset "UTF-8";
/* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Colors                                                                   *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Fonts                                                                    *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Widths                                                                   *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Break Points                                                             *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Layers                                                                   *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * FontAwesome Icons (http://fortawesome.github.io/Font-Awesome/icons/)     *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Functions                                                                *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Mixins                                                                   *
\* ------------------------------------------------------------------------ */
.article-card, .comment-body, .comment-meta, .menu-list, .story, .header-wrapper > .header-block, .slideshow-wrapper > .slideshow-block, .content-wrapper > .content-block, .content-wrapper > .partners-block, .callouts-wrapper > .callouts-block, .partners-wrapper > .partners-block, .footer-wrapper > .footer-block {
  *zoom: 1 !important; }
  .article-card::before, .comment-body::before, .comment-meta::before, .menu-list::before, .story::before, .header-wrapper > .header-block::before, .slideshow-wrapper > .slideshow-block::before, .content-wrapper > .content-block::before, .content-wrapper > .partners-block::before, .callouts-wrapper > .callouts-block::before, .partners-wrapper > .partners-block::before, .footer-wrapper > .footer-block::before, .article-card::after, .comment-body::after, .comment-meta::after, .menu-list::after, .story::after, .header-wrapper > .header-block::after, .slideshow-wrapper > .slideshow-block::after, .content-wrapper > .content-block::after, .content-wrapper > .partners-block::after, .callouts-wrapper > .callouts-block::after, .partners-wrapper > .partners-block::after, .footer-wrapper > .footer-block::after {
    content: "\0020" !important;
    display: table !important; }
  .article-card::after, .comment-body::after, .comment-meta::after, .menu-list::after, .story::after, .header-wrapper > .header-block::after, .slideshow-wrapper > .slideshow-block::after, .content-wrapper > .content-block::after, .content-wrapper > .partners-block::after, .callouts-wrapper > .callouts-block::after, .partners-wrapper > .partners-block::after, .footer-wrapper > .footer-block::after {
    clear: both !important; }

._center {
  margin-left: auto !important;
  margin-right: auto !important; }

._left {
  float: left !important; }

._right {
  float: right !important; }

._textcenter {
  text-align: center !important; }

._textleft {
  text-align: left !important; }

._textright {
  text-align: right !important; }

._nomargin {
  margin: 0 !important; }

._nopadding {
  padding: 0 !important; }

._visuallyhidden {
  left: -999em !important;
  position: absolute !important;
  top: -999em !important; }

/* visibility classes */
._hidemobile,
._showtablet,
._showdesktop {
  display: none !important; }

._showmobile {
  display: block !important; }

/* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Base                                                                     *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Normalize                                                                *
\* ------------------------------------------------------------------------ */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Correct the line height in all browsers.
     * 2. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

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

/**
     * Add the correct display in IE 9-.
     */
article,
aside,
footer,
header,
nav,
section {
  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
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block; }

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px; }

/**
     * 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 */ }

/**
     * Add the correct display in IE.
     */
main {
  display: block; }

/**
     * 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 */ }

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

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

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit; }

/**
     * 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 style in Android 4.3-.
     */
dfn {
  font-style: italic; }

/**
     * Add the correct background and color in IE 9-.
     */
mark {
  background-color: #ff0;
  color: #000; }

/**
     * 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
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
audio,
video {
  display: inline-block; }

/**
     * Add the correct display in iOS 4-7.
     */
audio:not([controls]) {
  display: none;
  height: 0; }

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

/**
     * Hide the overflow in IE.
     */
svg:not(:root) {
  overflow: hidden; }

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

/**
     * Show the overflow in IE.
     */
button {
  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; }

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */ }
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0; }
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText; }

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible; }

/**
     * 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 and cancel buttons in Chrome and Safari on macOS.
       */ }
  [type="search"]::-webkit-search-cancel-button, [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 */ }

/**
     * 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 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */ }

/**
     * 1. Add the correct display in IE 9-.
     * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

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

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

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

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block; }

/* Scripting
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
canvas {
  display: inline-block; }

/**
     * Add the correct display in IE.
     */
template {
  display: none; }

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

html {
  box-sizing: border-box; }

*,
*::before,
*::after {
  box-sizing: inherit; }

html {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility; }

@-ms-viewport {
  width: device-width; }

::-webkit-outer-spin-button,
::-webkit-inner-spin-button,
::-webkit-calendar-picker-indicator {
  -webkit-appearance: none;
  appearance: none;
  display: none;
  margin: 0; }

input[type="number"] {
  -moz-appearance: textfield; }

address {
  font-style: normal; }

figure {
  margin: 0; }

button,
input {
  border-radius: 0; }

/* ------------------------------------------------------------------------ *\
 * Gridly (adapted from https://github.com/IonicaBizau/gridly)              *
\* ------------------------------------------------------------------------ */
.row, .ninja-row, .row-desktop {
  display: flex;
  flex-direction: column; }

.col, [class*="ninja-col-"] {
  flex: 0 0 auto; }

/* ------------------------------------------------------------------------ *\
 * Basic Global Content                                                     *
\* ------------------------------------------------------------------------ */
@font-face {
  font-family: "Brusher";
  font-style: normal;
  font-weight: 400;
  src: url("../media/fonts/brusher/webfont.eot");
  src: url("../media/fonts/brusher/webfont.eot?#iefix") format("embedded-opentype"), url("../media/fonts/brusher/webfont.woff2") format("woff2"), url("../media/fonts/brusher/webfont.woff") format("woff"), url("../media/fonts/brusher/webfont.ttf") format("truetype"), url("../media/fonts/brusher/webfont.svg#brusher") format("svg"); }

.title {
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1.16667em;
  margin: 0em 0em 0.75em;
  text-transform: uppercase; }
  .title.-sub {
    font-size: 2.5em; }
  .title.-partner-sub {
    font-size: 1.125em !important; }

.text, .ninja-forms-required-items {
  color: #111111;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.125em;
  line-height: normal;
  margin: 0em 0em 1.25em; }

.link {
  color: #13430C;
  text-decoration: none;
  transition: color 0.15s; }
  .link:hover {
    color: #295704; }
  .link.-alt {
    color: #8f0303; }
  .link.-alt:hover {
    color: #750202; }

/* ------------------------------------------------------------------------ *\
 * User Content                                                             *
\* ------------------------------------------------------------------------ */
.user-content, .comment-content {
  /* -------------- *\
     * Universal      *
    \* -------------- */
  /* -------------- *\
     * Headers        *
    \* -------------- */
  /* -------------- *\
     * General Text   *
    \* -------------- */
  /* -------------- *\
     * labels         *
    \* -------------- */
  /* -------------- *\
     * Lists          *
    \* -------------- */
  /* -------------- *\
     * Tables         *
    \* -------------- */
  /* -------------- *\
     * Blocks of Text *
    \* -------------- */
  /* -------------- *\
     * HRs            *
    \* -------------- */
  /* -------------- *\
     * Images         *
    \* -------------- */
  /* -------------- *\
     * General Forms  *
    \* -------------- */
  /* -------------- *\
     * Buttons        *
    \* -------------- */
  /* -------------- *\
     * Checkbox/Radio *
    \* -------------- */
  /* -------------- *\
     * Inputs         *
    \* -------------- */
  /* -------------- *\
     * Selects        *
    \* -------------- */
  /* -------------- *\
     * Textareas      *
    \* -------------- */
  /* -------------- *\
     * Alignment      *
    \* -------------- */ }
  .user-content a, .comment-content a {
    color: #13430C;
    text-decoration: none;
    transition: color 0.15s; }
    .user-content a:hover, .comment-content a:hover {
      color: #295704; }
  .user-content h1, .comment-content h1,
  .user-content h2,
  .comment-content h2,
  .user-content h3,
  .comment-content h3,
  .user-content h4,
  .comment-content h4,
  .user-content h5,
  .comment-content h5,
  .user-content h6,
  .comment-content h6 {
    color: #111111;
    font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
    font-weight: 300;
    text-transform: uppercase; }
    .user-content h1 em, .comment-content h1 em,
    .user-content h2 em,
    .comment-content h2 em,
    .user-content h3 em,
    .comment-content h3 em,
    .user-content h4 em,
    .comment-content h4 em,
    .user-content h5 em,
    .comment-content h5 em,
    .user-content h6 em,
    .comment-content h6 em {
      font-family: "Brusher", cursive;
      font-size: 1.125em;
      font-style: normal;
      font-weight: 400; }
  .user-content h1, .comment-content h1 {
    color: #5D0202;
    font-size: 1.875em;
    line-height: 0.8em;
    margin: 0em 0em 0.13333em; }
    .user-content h1 em, .comment-content h1 em {
      color: #13430C; }
  
  .user-content h2,
  .comment-content h2 {
    font-size: 1.625em;
    margin: 0em 0em 0.61538em; }
  .user-content h2.-alt, .comment-content h2.-alt {
    font-family: "Brusher", cursive;
    font-size: 2.125em;
    text-transform: none; }
  
  .user-content h3,
  .comment-content h3 {
    font-size: 1.25em;
    margin: 0em 0em 0.8em; }
  
  .user-content h4,
  .comment-content h4 {
    font-size: 1.375em;
    margin: 0em 0em 0.72727em; }
  
  .user-content h5,
  .comment-content h5 {
    font-size: 1.25em;
    margin: 0em 0em 0.8em; }
  
  .user-content h6,
  .comment-content h6 {
    font-size: 1.125em;
    margin: 0em 0em 0.44444em; }
  .user-content label, .comment-content label,
  .user-content menu,
  .comment-content menu,
  .user-content ol,
  .comment-content ol,
  .user-content p,
  .comment-content p,
  .user-content table,
  .comment-content table,
  .user-content ul,
  .comment-content ul {
    color: #111111;
    font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
    font-size: 1.125em;
    line-height: normal;
    margin: 0em 0em 1.25em; }
  .user-content label, .comment-content label {
    display: block; }
  
  .user-content menu,
  .comment-content menu,
  .user-content ol,
  .comment-content ol,
  .user-content ul,
  .comment-content ul {
    padding: 0em 0em 0em 1.5em; }
    .user-content menu menu, .comment-content menu menu,
    .user-content menu ol,
    .comment-content menu ol,
    .user-content menu ul,
    .comment-content menu ul,
    .user-content ol menu,
    .comment-content ol menu,
    .user-content ol ol,
    .comment-content ol ol,
    .user-content ol ul,
    .comment-content ol ul,
    .user-content ul menu,
    .comment-content ul menu,
    .user-content ul ol,
    .comment-content ul ol,
    .user-content ul ul,
    .comment-content ul ul {
      margin-bottom: 0; }
  
  .user-content table,
  .comment-content table {
    display: block;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 1px;
    padding-bottom: 0.0625em;
    table-layout: fixed;
    width: 100%; }
  .user-content table td, .comment-content table td,
  .user-content table th,
  .comment-content table th {
    padding: 0.25em 0.375em;
    vertical-align: top; }
  .user-content table thead td, .comment-content table thead td,
  .user-content table th,
  .comment-content table th {
    font-weight: 700;
    text-align: left; }
  .user-content table thead td, .comment-content table thead td,
  .user-content table thead th,
  .comment-content table thead th {
    background: #5D0202;
    color: #FFFFFF; }
  .user-content table tfoot td, .comment-content table tfoot td,
  .user-content table tfoot th,
  .comment-content table tfoot th {
    font-style: italic; }
  .user-content table tr:nth-child(even) td, .comment-content table tr:nth-child(even) td,
  .user-content table tr:nth-child(even) th,
  .comment-content table tr:nth-child(even) th {
    background: #EEEEEE; }
  .user-content pre, .comment-content pre {
    background: #000000;
    border: 1px solid #111111;
    color: #FFFFFF;
    display: block;
    font-family: monospace;
    font-size: 1.25em;
    margin: 0em 0em 1.8em;
    padding: 1.2em 1.8em;
    width: 100%; }
  .user-content blockquote, .comment-content blockquote {
    border-left: 0.1875em solid #5D0202;
    margin: 0em 0em 1.5em;
    padding: 0em 0em 0em 1.5em; }
  .user-content hr, .comment-content hr {
    border: 0;
    border-bottom: 0.1875em solid #EEEEEE;
    margin-bottom: 1.5em; }
  .user-content img, .comment-content img {
    height: auto !important;
    max-width: 100%; }
  .user-content input, .comment-content input,
  .user-content .select,
  .comment-content .select,
  .user-content select,
  .comment-content select,
  .user-content textarea,
  .comment-content textarea {
    color: #111111;
    font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
    font-size: 16px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.5em; }
  .user-content button, .comment-content button,
  .user-content input[type="button"],
  .comment-content input[type="button"],
  .user-content input[type="reset"],
  .comment-content input[type="reset"],
  .user-content input[type="submit"],
  .comment-content input[type="submit"] {
    background: #13430C;
    border: 0;
    color: #FFFFFF;
    display: inline-block;
    font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
    font-size: 16px;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 700;
    margin: 0em 0em 0.625em;
    padding: 0.25em 0.75em;
    text-transform: uppercase;
    transition: background 0.15s, color 0.15s; }
    .user-content button:hover, .comment-content button:hover,
    .user-content input[type="button"]:hover,
    .comment-content input[type="button"]:hover,
    .user-content input[type="reset"]:hover,
    .comment-content input[type="reset"]:hover,
    .user-content input[type="submit"]:hover,
    .comment-content input[type="submit"]:hover {
      background: #295704;
      color: #FFFFFF; }
  .user-content input[type="checkbox"], .comment-content input[type="checkbox"],
  .user-content input[type="radio"],
  .comment-content input[type="radio"] {
    left: -999em;
    position: absolute; }
    .user-content input[type="checkbox"] + label, .comment-content input[type="checkbox"] + label,
    .user-content input[type="radio"] + label,
    .comment-content input[type="radio"] + label {
      font-size: 1em;
      margin-bottom: 0;
      padding: 0.5em 0.5em 0.5em 1.5em;
      position: relative; }
      .user-content input[type="checkbox"] + label::before, .comment-content input[type="checkbox"] + label::before,
      .user-content input[type="radio"] + label::before,
      .comment-content input[type="radio"] + label::before {
        background: #FFFFFF;
        border: 1px solid #13430C;
        border-width: 1px;
        border-width: 0.0625rem;
        color: #13430C;
        content: "\0020";
        display: block;
        float: left;
        font-size: 1em;
        height: 1.125em;
        left: 0;
        line-height: 1.0625em;
        position: absolute;
        text-align: center;
        top: 0.375em;
        width: 1.125em; }
    .user-content input[type="checkbox"]:focus + label::before, .comment-content input[type="checkbox"]:focus + label::before, .user-content input[type="checkbox"]:focus + label::before, .comment-content input[type="checkbox"]:focus + label::before,
    .user-content input[type="radio"]:focus + label::before,
    .comment-content input[type="radio"]:focus + label::before,
    .user-content input[type="radio"]:focus + label::before,
    .comment-content input[type="radio"]:focus + label::before {
      outline: -webkit-focus-ring-color auto 5px; }
    .user-content input[type="checkbox"][disabled] + label::before, .comment-content input[type="checkbox"][disabled] + label::before,
    .user-content input[type="radio"][disabled] + label::before,
    .comment-content input[type="radio"][disabled] + label::before {
      background: #EEEEEE; }
  
  .user-content input[type="radio"] + label::before,
  .comment-content input[type="radio"] + label::before {
    border-radius: 50%; }
  .user-content input[type="checkbox"]:checked + label::before, .comment-content input[type="checkbox"]:checked + label::before {
    content: "";
    font-family: "fontawesome", sans-serif; }
  .user-content input[type="radio"]:checked + label::before, .comment-content input[type="radio"]:checked + label::before {
    content: "";
    font-family: "fontawesome", sans-serif; }
  .user-content input[type="color"], .comment-content input[type="color"],
  .user-content input[type="date"],
  .comment-content input[type="date"],
  .user-content input[type="datetime"],
  .comment-content input[type="datetime"],
  .user-content input[type="datetime-local"],
  .comment-content input[type="datetime-local"],
  .user-content input[type="email"],
  .comment-content input[type="email"],
  .user-content input[type="month"],
  .comment-content input[type="month"],
  .user-content input[type="number"],
  .comment-content input[type="number"],
  .user-content input[type="password"],
  .comment-content input[type="password"],
  .user-content input[type="range"],
  .comment-content input[type="range"],
  .user-content input[type="search"],
  .comment-content input[type="search"],
  .user-content input[type="tel"],
  .comment-content input[type="tel"],
  .user-content input[type="text"],
  .comment-content input[type="text"],
  .user-content input[type="time"],
  .comment-content input[type="time"],
  .user-content input[type="url"],
  .comment-content input[type="url"],
  .user-content input[type="week"],
  .comment-content input[type="week"],
  .user-content select,
  .comment-content select,
  .user-content .select,
  .comment-content .select,
  .user-content textarea,
  .comment-content textarea {
    background: #FFFFFF;
    border: 1px solid #13430C;
    box-sizing: border-box;
    display: block;
    margin: 0em 0em 0.625em;
    outline: none;
    padding: 0.5em 1em;
    text-overflow: ellipsis;
    width: 100%; }
  
  .user-content .select,
  .comment-content .select {
    padding: 0;
    position: relative; }
  .user-content .select::before, .comment-content .select::before {
    content: "";
    font-family: "fontawesome", sans-serif;
    color: #FFFFFF;
    display: block;
    font-size: 1.5em;
    line-height: normal;
    pointer-events: none;
    position: absolute;
    right: 0;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
    width: 1.75em;
    z-index: 2; }
  .user-content .select::after, .comment-content .select::after {
    background: #13430C;
    bottom: 0;
    content: "\0020";
    display: block;
    font-size: 1.5em;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 0;
    width: 1.75em;
    z-index: 1; }
  .user-content .select select, .comment-content .select select {
    -moz-appearance: none;
    -webkit-appearance: none;
    background: none;
    border: 0;
    display: block;
    margin: 0;
    outline: none;
    padding: 0.5625em 3.375em 0.6875em 0.75em;
    text-indent: 0.01px;
    text-overflow: "";
    width: 100%; }
    .user-content .select select::-ms-expand, .comment-content .select select::-ms-expand {
      display: none; }
    .user-content .select select:hover, .comment-content .select select:hover {
      cursor: pointer; }
  .user-content .select option, .comment-content .select option {
    background: #FFFFFF;
    color: #000000; }
    .user-content .select option:hover, .comment-content .select option:hover {
      background: #DDDDDD; }
  
  .user-content textarea,
  .comment-content textarea {
    max-width: 100%;
    min-height: 6.25em;
    min-width: 100%; }
  .user-content .aligncenter, .comment-content .aligncenter,
  .user-content .alignleft,
  .comment-content .alignleft,
  .user-content .alignright,
  .comment-content .alignright {
    display: block;
    margin: 0 auto 1.875em; }

/* ------------------------------------------------------------------------ *\
 * Components                                                               *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Article Card                                                             *
\* ------------------------------------------------------------------------ */
.article-card {
  padding: 0.9375em; }

.article-card:not(:last-child) {
  border-bottom: 0.1875em solid #EEEEEE;
  margin-bottom: 0.9375em;
  padding-bottom: 0.9375em; }

.article-card.-banner {
  padding: 5em 0.9375em 0.9375em; }

.article-card.-excerpt, .article-card.-excerpt:not(:last-child) {
  margin-bottom: 0;
  padding-left: 0;
  padding-right: 0; }

.article-card.-map {
  height: 62.5em; }

.article-card.-partner {
  text-align: center; }

.article-card > .image {
  clear: both;
  padding: 1.875em 0em 0em; }

.article-card.-excerpt > .image {
  padding: 0em 0em 0.9375em; }

.article-card.-partner > .image {
  padding: 0; }

.article-card > .image > img,
.article-card > .image > a > img {
  display: block;
  margin: 0 auto;
  max-width: 100%; }

.article-card.-partner > .image > .caption {
  margin-top: 1.25em;
  text-align: center; }

.article-card.-partner > .image > .caption > .text, .article-card.-partner > .image > .caption > .ninja-forms-required-items {
  font-size: 1.25em; }

.article-card > .header {
  margin: 0; }

.article-card.-banner > .header {
  background: url("../media/background-article-card-header-banner_mobile.png") center bottom no-repeat;
  background-size: 100% 30.125em;
  left: 0.9375em;
  padding: 0.3125em 1.25em 1.75em;
  position: absolute;
  text-align: center;
  top: 0;
  width: calc(100% - 1.875em);
  z-index: 2; }

.article-card.-excerpt > .header {
  margin: 0em 0em 0.5em; }

.article-card.-banner > .header > .title {
  color: #FFFFFF;
  font-size: 1.75em;
  font-weight: 300;
  margin: 0;
  text-align: center; }

.article-card.-excerpt > .header > .title {
  font-size: 1.125em;
  margin-bottom: 0; }

.article-card.-excerpt > .content > .text, .article-card.-excerpt > .content > .ninja-forms-required-items {
  margin-bottom: 0; }

/* ------------------------------------------------------------------------ *\
 * Banner                                                                   *
\* ------------------------------------------------------------------------ */
.banner-wrapper {
  background: #9F0000; }

.banner-wrapper.-notice {
  background: #ed7d35; }

.banner-wrapper > .banner {
  margin: 0 auto;
  max-width: 1600px;
  max-width: 1600px;
  max-width: 100rem;
  min-height: 5em;
  position: relative; }

.banner-wrapper > .banner > .title {
  align-items: center;
  border-bottom: 2px solid rgba(0, 0, 0, 0.1);
  border-bottom: 0.125rem solid rgba(0, 0, 0, 0.1);
  color: #FFFFFF;
  display: flex;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.5em;
  font-weight: 700;
  line-height: 1em;
  margin: 0;
  padding: 1em 4.33333em 1em 3.58333em;
  position: relative;
  text-transform: uppercase; }

.banner-wrapper > .banner > .title > .fa {
  color: #F83636;
  font-size: 1.75em;
  left: 0.71429em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }

.banner-wrapper.-notice > .banner > .title > .fa {
  color: #f6d2bb; }

.banner-wrapper > .banner > .excerpt {
  color: #FFFFFF;
  flex: 1 1 auto;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.5em;
  line-height: 1.16667em;
  margin: 0;
  padding: 1em 1.25em; }

.banner-wrapper > .banner > .excerpt > a {
  color: #F83636;
  text-decoration: none; }

.banner-wrapper.-notice > .banner > .excerpt > a {
  color: #f6d2bb; }

.banner-wrapper > .banner > .content {
  padding: 1.6em 2em; }

.banner-wrapper > .banner > .content.user-content ol, .banner-wrapper > .banner > .content.comment-content ol,
.banner-wrapper > .banner > .content.user-content p,
.banner-wrapper > .banner > .content.comment-content p,
.banner-wrapper > .banner > .content.user-content table,
.banner-wrapper > .banner > .content.comment-content table,
.banner-wrapper > .banner > .content.user-content ul,
.banner-wrapper > .banner > .content.comment-content ul {
  color: #FFFFFF;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 0.9375em;
  line-height: 1.6em; }

.banner-wrapper > .banner > .content.user-content > *:last-child, .banner-wrapper > .banner > .content.comment-content > *:last-child {
  margin-bottom: 0; }

.banner-wrapper > .banner > .content.user-content a, .banner-wrapper > .banner > .content.comment-content a {
  color: #F83636;
  text-decoration: none; }

.banner-wrapper > .banner > .content.user-content a, .banner-wrapper > .banner > .content.comment-content a {
  color: #f6d2bb; }

.banner-wrapper > .banner > .button, .banner-wrapper > .banner > .comment-reply-link {
  background: none;
  border: 0;
  font-size: 1.5em;
  height: 4em;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 4.33333em; }

.banner-wrapper > .banner > .button > .fa, .banner-wrapper > .banner > .comment-reply-link > .fa {
  color: #F83636;
  font-size: 1.75em;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%); }

.banner-wrapper.-notice > .banner > .button > .fa, .banner-wrapper.-notice > .banner > .comment-reply-link > .fa {
  color: #f6d2bb; }

/* ------------------------------------------------------------------------ *\
 * Button                                                                   *
\* ------------------------------------------------------------------------ */
.button, .comment-reply-link {
  background: #13430C;
  border: 0;
  color: #FFFFFF !important;
  display: inline-block;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.25em;
  font-weight: 700;
  margin: 0em 0em 0.5em;
  padding: 0.6em 0.8em;
  text-decoration: none;
  text-transform: uppercase;
  transition: background 0.15s, color 0.15s; }

.button:hover, .comment-reply-link:hover {
  background: #295704;
  color: #FFFFFF; }

/* ------------------------------------------------------------------------ *\
 * Callout Card                                                             *
\* ------------------------------------------------------------------------ */
.callout-card {
  display: block;
  padding: 1.25em; }

.callout-card > .callout-icon {
  display: block;
  margin: 0; }

.callout-card > .callout-icon > .callout-image {
  display: block;
  margin: 0em auto 1.25em;
  max-width: 100%; }

.callout-card > .callout-title {
  color: #c0c2aa;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.125em;
  font-weight: 400;
  line-height: 1.11111em;
  margin: 0;
  text-align: center; }

.callout-card > .callout-title > .callout-link {
  color: #FFFFFF;
  text-decoration: none;
  transition: color 0.15s; }

.callout-card > .callout-title > .callout-link:hover {
  color: #EEEEEE; }

/* ------------------------------------------------------------------------ *\
 * Comments                                                                 *
\* ------------------------------------------------------------------------ */
.comments {
  border-top: 0.1875em solid #EEEEEE;
  clear: both;
  margin-top: 2.1875em;
  padding-top: 2.1875em; }

.comments-title {
  color: #5D0202;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.25em;
  font-weight: 800;
  margin: 0;
  text-transform: uppercase; }

.comment-list,
.comment-list .children {
  list-style: none;
  margin: 0em 0em 3em;
  padding: 0; }
  .comment-list .children,
  .comment-list .children .children {
    margin: 0; }

.comment-list .children {
  padding: 0em 0em 0em 2em; }

.comment {
  clear: both; }

.comment-body {
  border-bottom: 3px solid #EEEEEE;
  border-bottom: 0.1875rem solid #EEEEEE;
  padding: 1.25em 0em; }

.comment-meta {
  color: #111111;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.125em;
  font-weight: 400;
  margin: 0em 0em 0.5em;
  width: 100%; }

.comment-author a {
  color: #13430C;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-weight: 800;
  text-decoration: none; }

.comment-metadata a {
  color: #13430C;
  text-decoration: none; }

.comment-edit-link {
  display: inline-block;
  position: relative;
  text-indent: -999em;
  width: 1em; }
  .comment-edit-link::before {
    content: "";
    font-family: "fontawesome", sans-serif;
    display: block;
    left: 0;
    line-height: 1.25em;
    position: absolute;
    right: 0;
    text-align: center;
    text-indent: 0;
    top: 0; }

.comment-reply-link {
  margin: 0; }

.comments-nav {
  color: #EEEEEE;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.0625em;
  font-weight: 800;
  line-height: 1.86928em;
  margin: 0em 0em 1.11111em;
  text-align: center; }

.comments-nav .page-numbers {
  border: 3px solid #EEEEEE;
  border: 0.1875rem solid #EEEEEE;
  border-radius: 50%;
  color: #EEEEEE;
  display: inline-block;
  height: 2.22222em;
  margin: 0em 0.16667em;
  text-align: center;
  text-decoration: none;
  transition: border-color 0.15s, color 0.15s;
  width: 2.22222em; }
  .comments-nav .page-numbers:hover {
    border-color: #13430C;
    color: #13430C; }
  .comments-nav .page-numbers.current {
    background: #111111;
    border-color: #111111;
    color: #FFFFFF; }

.comments-nav .prev.page-numbers:empty,
.comments-nav .next.page-numbers:empty {
  display: none; }

.comment-form-title {
  color: #5D0202;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.25em;
  font-weight: 800;
  margin: 0em 0em 0.26667em;
  text-transform: uppercase; }

.comment-logged-in {
  color: #111111;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.0625em;
  font-weight: 400;
  margin: 0em 0em 0.44444em; }

.comment-logged-in a {
  color: #13430C;
  text-decoration: none;
  transform: color 0.15s; }
  .comment-logged-in a:hover {
    color: #295704; }

.comment-input {
  border: 3px solid #13430C;
  border: 0.1875rem solid #13430C;
  color: #111111;
  display: block;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.0625em;
  line-height: normal;
  margin: 0em 0em 1.11111em;
  padding: 0.66667em 0.88889em;
  resize: vertical;
  width: 100%; }

/* ------------------------------------------------------------------------ *\
 * Footer Card                                                              *
\* ------------------------------------------------------------------------ */
.footer-card {
  order: 2;
  padding: 0.625em 0em;
  text-align: center; }

.footer-card.-firstmobile {
  order: 1; }

.footer-card .title {
  color: #5D0202;
  font-size: 1.5625em;
  font-weight: 300;
  line-height: normal;
  margin: 0; }

.footer-card .text, .footer-card .ninja-forms-required-items {
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 0.9375em;
  font-weight: 300;
  line-height: normal;
  margin: 0em 0em 1.33333em; }

.footer-card a,
.footer-card .link {
  color: #111111;
  text-decoration: none;
  transition: color 0.15s; }

.footer-card a:hover,
.footer-card .link:hover {
  color: #000000; }

.footer-card .logo {
  margin: 0 auto;
  max-width: 5.3125em; }

/* ------------------------------------------------------------------------ *\
 * Gallery                                                                  *
\* ------------------------------------------------------------------------ */
.gallery .gallery-item img {
  display: block;
  margin: 1em auto; }

/* ------------------------------------------------------------------------ *\
 * iframe                                                                   *
\* ------------------------------------------------------------------------ */
.iframe {
  display: block;
  height: 0;
  position: relative;
  width: 100%; }

.iframe > iframe {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%; }

/* ------------------------------------------------------------------------ *\
 * Logo                                                                     *
\* ------------------------------------------------------------------------ */
.logo {
  display: block; }

.logo > img {
  display: block;
  width: 100%; }

/* ------------------------------------------------------------------------ *\
 * Map                                                                      *
\* ------------------------------------------------------------------------ */
#map {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1; }

.infobox-content {
  font-size: 16px;
  font-size: 1rem;
  padding: 0.75em 0em 0.75em 1.5em; }

.infobox-image img {
  display: block;
  margin: 0 auto; }

.infobox-title {
  color: #5D0202;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.5em;
  font-weight: 700;
  line-height: normal;
  margin: 0;
  text-align: center; }

.infobox-text {
  color: #111111;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.25em;
  font-weight: 400;
  line-height: normal;
  margin: 0;
  text-align: center; }

.infobox-link {
  color: #5D0202;
  text-decoration: none;
  transition: color 0.15s; }

.infobox-link.-address {
  color: #111111; }

.infobox-link:hover {
  color: #750202; }

.infobox-link.-address:hover {
  color: #000000; }

/* ------------------------------------------------------------------------ *\
 * Menu Buton                                                               *
\* ------------------------------------------------------------------------ */
.menu-button {
  background: none;
  border: 0;
  color: #13430C;
  display: block;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.25em;
  font-weight: 300;
  margin: 0;
  padding: 0;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  width: 36px;
  width: 2.25rem; }

.menu-button > .fa {
  background: #13430C;
  color: #FFFFFF;
  display: block;
  height: 36px;
  height: 2.25rem;
  line-height: 1.825em; }

/* ------------------------------------------------------------------------ *\
 * Menu List                                                                *
\* ------------------------------------------------------------------------ */
/* generic variant */
.menu-list {
  list-style: none;
  margin: 0;
  padding: 0; }

.menu-list .menu-item {
  display: flex;
  float: left;
  position: relative; }

.menu-list .menu-link {
  color: #5D0202;
  display: block;
  flex: 1 1 auto;
  padding: 0.5em 0.75em;
  text-decoration: none;
  transition: color 0.15s; }

.menu-list .menu-link:hover {
  color: #750202; }

.menu-list .menu-toggle {
  background: none;
  border: 0;
  color: #5D0202;
  display: block;
  flex: none;
  font-size: 0.75em;
  height: 2.66667em;
  padding: 0;
  position: relative;
  transition: color 0.15s;
  width: 2.66667em; }

.menu-list .menu-toggle:hover {
  color: #750202; }

.menu-list .menu-toggle > .fa {
  display: block;
  height: 2.66667em;
  line-height: 2.66667em;
  width: 100%; }

/* submenu variant */
.menu-list.-submenu {
  background: #5D0202;
  font-size: 1em;
  left: -999em;
  min-width: 9.375em;
  opacity: 0;
  position: absolute;
  top: -999em;
  transition: left 0s 0.15s, opacity 0.15s, top 0s 0.15s; }

.menu-item:hover > .menu-list.-submenu {
  left: 0;
  opacity: 1;
  top: 100%;
  transition: left 0s 0.25s, opacity 0.15s 0.25s, top 0s 0.25s; }

.menu-list.-submenu .menu-item {
  float: none; }

.menu-list.-submenu .menu-link {
  color: #FFFFFF;
  padding: 0.28571em 0.85714em;
  transition: background 0.15s; }

.menu-list.-submenu .menu-link:hover {
  background: rgba(255, 255, 255, 0.1); }

.menu-list.-submenu .menu-item:first-child > .menu-link {
  padding-top: 0.57143em; }

.menu-list.-submenu .menu-item:last-child > .menu-link {
  padding-bottom: 0.57143em; }

.menu-list.-submenu .menu-toggle {
  color: #FFFFFF;
  transition: background 0.15s; }

.menu-list.-submenu .menu-toggle:hover {
  background: rgba(255, 255, 255, 0.1); }

/* submenu flyout variant */
.menu-list.-submenu.-flyout {
  background: #750202;
  left: 100%;
  top: 0; }

.menu-item:hover > .menu-list.-submenu.-flyout {
  left: 100%;
  top: 0; }

/* vertical variant */
.menu-list.-vertical {
  width: 100%; }

.menu-list.-vertical .menu-list.-submenu {
  left: auto;
  max-height: 0;
  opacity: 1;
  overflow: hidden;
  position: static;
  top: auto;
  transition: max-height 0.25s;
  width: 100%; }

.menu-list.-vertical .menu-list.-submenu.-active {
  max-height: 25em;
  transition: max-height 0.5s; }

.menu-list.-vertical .menu-item,
.menu-list.-vertical .menu-list.-submenu > .menu-item,
.menu-list.-vertical .menu-list.-submenu.-flyout > .menu-item {
  flex-wrap: wrap;
  float: none; }

.menu-list.-vertical .menu-link {
  width: 0; }

/* nav variant */
.menu-list.-nav {
  align-items: center;
  display: flex;
  font-size: 1.5em;
  font-weight: 300;
  text-transform: uppercase;
  width: 100%; }

.menu-list.-nav .menu-item {
  flex: none; }

.menu-list.-nav .menu-item.-logo {
  flex: 1 1 auto; }

.menu-list.-nav .menu-link {
  color: #13430C;
  padding: 0.625em 1.25em; }

.menu-list.-nav .menu-link:hover {
  color: #295704; }

.menu-list.-nav .menu-item.-logo > .menu-link {
  padding-bottom: 0;
  padding-top: 0; }

.menu-list.-nav .menu-item.-logo > .menu-link > img {
  display: block;
  margin: 0 auto; }

.menu-list.-nav .menu-list.-submenu {
  background: #13430C; }

.menu-list.-nav .menu-list.-submenu .menu-link {
  color: #FFFFFF; }

.menu-list.-nav .menu-list.-submenu .menu-link:hover {
  color: #EEEEEE; }

.menu-list.-nav .menu-list.-submenu.-flyout {
  background: #295704; }

/* nav vertical variant */
.menu-list.-nav.-vertical {
  display: block;
  padding: 0.41667em 0em; }

.menu-list.-nav.-vertical .menu-link {
  color: #FFFFFF;
  padding: 0.41667em 0.83333em; }

.menu-list.-nav.-vertical .menu-link:hover {
  color: #EEEEEE; }

.menu-list.-nav.-vertical .menu-toggle {
  color: #FFFFFF; }

.menu-list.-nav.-vertical .menu-toggle:hover {
  color: #EEEEEE; }

.menu-list.-nav.-vertical .menu-list.-submenu .menu-link {
  padding: 0.41667em 0.83333em; }

/* sitemap variant */
.menu-list.-sitemap .menu-item {
  display: inline-block;
  float: none; }

.menu-list.-sitemap .menu-item:not(:last-child)::after {
  content: "-";
  margin: 0em 0.16667em; }

.menu-list.-sitemap .menu-link {
  color: #111111;
  display: inline-block;
  padding: 0; }

.menu-list.-sitemap .menu-link:hover {
  color: #000000; }

/* meta variant */
.menu-list.-meta {
  color: #13430C;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.125em;
  text-transform: uppercase; }

.menu-list.-meta .menu-item:not(:last-child) {
  padding: 0em 0.66667em 0em 0em; }

.menu-list.-meta .menu-link,
.menu-list.-meta a {
  color: #13430C;
  display: inline-block;
  padding: 0;
  text-decoration: none; }

.menu-list.-meta .menu-link:hover,
.menu-list.-meta a:hover {
  color: #295704; }

.menu-list.-meta .fa {
  margin: 0em 0.22222em 0em 0em; }

/* ------------------------------------------------------------------------ *\
 * Ninja Forms                                                              *
\* ------------------------------------------------------------------------ */
.hp-wrap {
  display: none; }

.nf-form-layout {
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif; }

.nf-form-fields-required {
  margin-bottom: 2em; }

.ninja-forms-req-symbol {
  color: #9F0000; }

.field-wrap.label-left, .field-wrap.label-right {
  align-items: flex-start;
  display: flex; }

.field-wrap.label-left label,
.field-wrap.label-right label {
  flex: none; }

.field-wrap.label-above label {
  margin-bottom: 0.375em; }

.field-wrap.label-below label {
  margin-bottom: 0.625em;
  margin-top: 0.375em; }

.field-wrap.label-left label {
  margin-right: 0.75em; }

.field-wrap.label-right label {
  margin-left: 0.75em; }

.field-wrap.label-below .ninja-forms-field {
  margin-bottom: 0; }

.field-wrap.label-left .ninja-forms-field,
.field-wrap.label-right .ninja-forms-field {
  flex: 1 1 auto; }

.field-wrap.list-select-wrap .ninja-forms-field {
  margin: 0em 0em 0.625em;
  padding: 0.71875em 1em; }

.field-wrap.html-wrap h3 {
  margin-bottom: 0.5em; }

.field-wrap .nf-label-span {
  font-size: 1.125em; }

/* ------------------------------------------------------------------------ *\
 * Search form                                                              *
\* ------------------------------------------------------------------------ */
.search-form {
  background: #FFFFFF;
  border: 1px solid #13430C;
  display: flex;
  font-size: 1em; }

.search-form ::placeholder {
  color: #000000;
  opacity: 1; }

.search-form > .label {
  font-size: 1em; }

.search-form > .input {
  background: none;
  border: 0;
  border-radius: 0;
  color: #111111;
  flex: 1 1 auto;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1em;
  font-weight: 300;
  margin: 0;
  max-width: none;
  min-width: 0;
  padding: 0.5em 0.75em;
  width: 0; }

.search-form > .submit {
  background: none;
  border: 0;
  color: inherit;
  flex: none;
  font-size: 1em;
  margin: 0;
  padding: 0.5em 0.75em; }

/* ------------------------------------------------------------------------ *\
 * Story                                                                    *
\* ------------------------------------------------------------------------ */
.story {
  background: url("../media/background-green.jpg") right center no-repeat #13430C;
  padding: 2.1875em 1.5625em;
  position: relative; }

.story:nth-child(1) {
  z-index: 4; }

.story:nth-child(2) {
  z-index: 3; }

.story:nth-child(3) {
  z-index: 2; }

.story:nth-child(4) {
  z-index: 1; }

.story.-primary {
  background: url("../media/background-red.jpg") center center no-repeat #5D0202; }

.story.-secondary {
  background: url("../media/background-blue.jpg") left center no-repeat #090F24; }

.story.-tertiary {
  background: url("../media/background-gray.jpg") right center no-repeat #4E4E4E; }

.story:first-child::before, .story::after {
  border-left: 1.125em solid transparent;
  border-right: 1.125em solid transparent;
  border-top: 0.75em solid #13430C;
  content: "\0020";
  display: block;
  height: 0;
  left: 50%;
  position: absolute;
  top: 100%;
  width: 0; }

.story:first-child::before {
  border-top-color: #FFFFFF;
  left: auto;
  right: 50%;
  top: 0; }

.story:last-child::after {
  display: none !important; }

.story.-primary::after {
  border-top-color: #5D0202;
  left: auto;
  right: 1.5625em; }

.story.-secondary::after {
  border-top-color: #090F24;
  left: 1.5625em; }

.story.-tertiary::after {
  border-top-color: #4E4E4E;
  left: auto;
  right: 50%; }

.story .user-content h1, .story .comment-content h1,
.story .user-content h2,
.story .comment-content h2,
.story .user-content h3,
.story .comment-content h3,
.story .user-content h4,
.story .comment-content h4,
.story .user-content h5,
.story .comment-content h5,
.story .user-content h6,
.story .comment-content h6,
.story .user-content menu,
.story .comment-content menu,
.story .user-content ol,
.story .comment-content ol,
.story .user-content p,
.story .comment-content p,
.story .user-content table,
.story .comment-content table,
.story .user-content ul,
.story .comment-content ul {
  color: #FFFFFF; }

.story .user-content h2.-alt, .story .comment-content h2.-alt {
  margin: 0; }

.story .user-content > *:last-child, .story .comment-content > *:last-child {
  margin-bottom: 0 !important; }

/* ------------------------------------------------------------------------ *\
 * Swiper                                                                   *
\* ------------------------------------------------------------------------ */
/**
 * Swiper 4.5.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2019 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 22, 2019
 */
.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  -o-transition-property: transform, height;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform; }

/* 3D Effects */
.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px; }

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* IE10 Windows Phone 8 Fixes */
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat; }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-lock {
  display: none; }

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms opacity;
  -o-transition: 300ms opacity;
  transition: 300ms opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33);
  position: relative; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(0.66);
  -ms-transform: scale(0.66);
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(0.66);
  -ms-transform: scale(0.66);
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(0.33);
  -ms-transform: scale(0.33);
  transform: scale(0.33); }

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 8px; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: 200ms top, 200ms -webkit-transform;
  transition: 200ms top, 200ms -webkit-transform;
  -o-transition: 200ms transform, 200ms top;
  transition: 200ms transform, 200ms top;
  transition: 200ms transform, 200ms top, 200ms -webkit-transform; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 200ms left, 200ms -webkit-transform;
  transition: 200ms left, 200ms -webkit-transform;
  -o-transition: 200ms transform, 200ms left;
  transition: 200ms transform, 200ms left;
  transition: 200ms transform, 200ms left, 200ms -webkit-transform; }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: 200ms right, 200ms -webkit-transform;
  transition: 200ms right, 200ms -webkit-transform;
  -o-transition: 200ms transform, 200ms right;
  transition: 200ms transform, 200ms right;
  transition: 200ms transform, 200ms right, 200ms -webkit-transform; }

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #ffffff; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.25); }

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #ffffff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000000; }

.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, 0.25); }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000000; }

.swiper-pagination-lock {
  display: none; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.swiper-scrollbar-lock {
  display: none; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain; }

.swiper-slide-zoomed {
  cursor: move; }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  -ms-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube {
  overflow: visible; }

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

.swiper-container-flip {
  overflow: visible; }

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-coverflow .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

.partners-title {
  color: #5D0202;
  font-family: "Yanone Kaffeesatz", "Arial", "Helvetica", sans-serif;
  font-size: 1.5em;
  font-weight: 300;
  line-height: normal;
  margin: 0.91667em 0em 0.33333em;
  text-align: center;
  text-transform: uppercase; }

.partners-wrapper .partners-title {
  color: #FFFFFF;
  margin: 0em 0em 0.5em; }

.partners-slider {
  background: url("../media/background-ribbon_mobile.png") center left repeat-x;
  margin: 0em 1.5625em;
  position: relative; }

.partners-slider::before, .partners-slider::after {
  background-position: center center;
  background-repeat: no-repeat;
  bottom: 0;
  content: "\0020";
  display: block;
  position: absolute;
  top: 0;
  width: 1.875em;
  z-index: 2; }

.partners-slider::before {
  background-image: url("../media/background-ribbon-left_mobile.png");
  margin-right: -0.3125em;
  right: 100%; }

.partners-slider::after {
  background-image: url("../media/background-ribbon-right_mobile.png");
  left: 100%;
  margin-left: -0.3125em; }

.swiper-container.-partners {
  z-index: 1; }

.swiper-container.-partners::before, .swiper-container.-partners::after {
  bottom: 0.375em;
  content: "\0020";
  display: block;
  position: absolute;
  top: 0.375em;
  width: 3.75em;
  z-index: 999; }

.swiper-container.-partners::before {
  background: linear-gradient(to left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.75) 50%, #FFFFFF 100%);
  left: 0; }

.swiper-container.-partners::after {
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.75) 50%, #FFFFFF 100%);
  right: 0; }

.swiper-container.-slideshow {
  background: #EEEEEE; }

.swiper-container.-partners .swiper-slide {
  align-items: center;
  display: flex;
  height: 6em;
  width: auto; }

.swiper-container.-partners .swiper-slide .partner-card {
  padding: 0.78125em 1.5625em; }

.swiper-container.-partners .swiper-slide img {
  display: block;
  margin: 0 auto;
  max-height: 3.75em; }

.swiper-container.-slideshow .swiper-slide img {
  display: block;
  height: 365px;
  height: 22.8125rem;
  left: 50%;
  position: relative;
  transform: translateX(-50%); }

.swiper-button-prev.-partners,
.swiper-button-next.-partners {
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: auto;
  border: 0;
  font-size: 1em;
  height: 6em;
  margin: 0;
  padding: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 3em; }

.swiper-button-prev.-partners {
  background-image: url("../media/icon-arrow-left_mobile.png");
  left: -3em; }

.swiper-button-next.-partners {
  background-image: url("../media/icon-arrow-right_mobile.png");
  right: -3em; }

.no-csstransforms .swiper-slide:not(:first-child) {
  display: none; }

/* ------------------------------------------------------------------------ *\
 * Layouts                                                                   *
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Page                                                                     *
\* ------------------------------------------------------------------------ */
:root {
  font-size: 1em; }

html,
body {
  width: 100%; }

body {
  background: #FFFFFF; }

html.-navactive,
html.-navactive body {
  height: 100%;
  overflow: hidden;
  width: 100%; }

.page-wrapper {
  backface-visibility: hidden;
  background: #FFFFFF;
  left: 0;
  min-height: 100%;
  perspective: 1000;
  position: relative;
  transform: translateZ(0);
  transition: box-shadow 0.35s, left 0.35s;
  width: 100%;
  z-index: 2; }

html.-navactive .page-wrapper {
  box-shadow: 0em 0em 0.625em black(0.5);
  height: 100%;
  left: -240px;
  left: -240px;
  left: -15rem;
  overflow: hidden;
  width: 100%; }

/* ------------------------------------------------------------------------ *\
 * Header                                                                   *
\* ------------------------------------------------------------------------ */
.header-wrapper {
  position: relative;
  z-index: 6;
  background: rgba(255, 255, 255, 0.9);
  font-size: 1em;
  left: 0;
  padding: 0.5em 2em;
  position: absolute;
  right: 0;
  top: 0; }

.header-wrapper > .header-block {
  margin: 0 auto;
  max-width: 1600px;
  max-width: 100rem; }

.header-wrapper > .header-block > .logo {
  float: left;
  width: 160px;
  width: 10rem; }

.header-wrapper > .header-block > .menu-button {
  float: right;
  margin: 4px 0px 0px;
  margin: 0.25rem 0rem 0rem; }

/* ------------------------------------------------------------------------ *\
 * Mobile Navigation                                                        *
\* ------------------------------------------------------------------------ */
.mobile-nav-wrapper {
  background: #13430C;
  bottom: 999em;
  font-size: 1em;
  overflow: auto;
  position: absolute;
  right: 999em;
  top: -999em;
  transition: bottom 0s 0.35s, right 0s 0.35s, top 0s 0.35s;
  width: 15em;
  z-index: 1; }

.-navactive .mobile-nav-wrapper {
  bottom: 0;
  right: 0;
  top: 0;
  transition: none; }

.-navactive .admin-bar .mobile-nav-wrapper {
  top: 46px; }

@media screen and (min-width: 783px) {
  .-navactive .admin-bar .mobile-nav-wrapper {
    top: 32px; } }

.mobile-nav-wrapper .menu-list.-submenu {
  background: #195910; }

.mobile-nav-wrapper .menu-list.-submenu.-flyout {
  background: #1f6e14; }

/* ------------------------------------------------------------------------ *\
 * Slideshow                                                                *
\* ------------------------------------------------------------------------ */
.slideshow-wrapper {
  position: relative;
  z-index: 4;
  font-size: 1em; }

/* ------------------------------------------------------------------------ *\
 * Content                                                                  *
\* ------------------------------------------------------------------------ */
.content-wrapper {
  position: relative;
  z-index: 3;
  background: url("../media/background-content.jpg") center top no-repeat #f4f4f4;
  font-size: 1em;
  padding: 6.875em 0.9375em 1.875em; }

.home .content-wrapper {
  padding-top: 1.875em; }

.content-wrapper::before {
  background: url("../media/background-content-before_mobile.jpg") center top no-repeat;
  content: "\0020";
  display: block;
  height: 11.25em;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 1; }

.home .content-wrapper::before {
  display: none; }

.content-wrapper > .content-block {
  background: #FFFFFF;
  margin: 0 auto;
  max-width: 100em;
  position: relative;
  z-index: 2; }

.home .content-wrapper > .content-block {
  background: none; }

.content-wrapper > .partners-block {
  margin: 0 auto;
  max-width: 100em;
  padding: 0em 0.9375em; }

/* ------------------------------------------------------------------------ *\
 * Callouts                                                                 *
\* ------------------------------------------------------------------------ */
.callouts-wrapper {
  position: relative;
  z-index: 2;
  background: #13430C;
  font-size: 1em;
  padding: 1.875em; }

.callouts-wrapper > .callouts-block {
  margin: 0 auto;
  max-width: 100em; }

/* ------------------------------------------------------------------------ *\
 * Partners                                                                 *
\* ------------------------------------------------------------------------ */
.partners-wrapper {
  position: relative;
  background: url("../media/background-partners-wrapper_mobile.jpg") center top no-repeat;
  font-size: 1em;
  padding: 2.1875em 1.875em 4.6875em; }

.partners-wrapper > .partners-block {
  margin: 0 auto;
  max-width: 100em;
  padding: 0em 0.9375em; }

/* ------------------------------------------------------------------------ *\
 * Footer                                                                   *
\* ------------------------------------------------------------------------ */
.footer-wrapper {
  position: relative;
  z-index: 1;
  background: #FFFFFF;
  font-size: 1em;
  padding: 0em 1.25em; }

.footer-wrapper > .footer-block {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 100em;
  padding: 1.25em 0em; }

@media screen and (min-width: 30rem) {
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Base                                                                     *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Components                                                               *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Layout                                                                   *
\* ------------------------------------------------------------------------ */ }

@media screen and (min-width: 40rem) {
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Base                                                                     *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Components                                                               *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Swiper                                                                   *
\* ------------------------------------------------------------------------ */
  .partners-title {
    font-size: 3em;
    margin: 1em 0em 0.45833em; }
  .partners-wrapper .partners-title {
    margin: 0em 0em 1.25em; }
  .partners-slider {
    background-image: url("../media/background-ribbon.png");
    margin: 0em 3.4375em;
    padding: 0em 0.625em; }
  .partners-slider::before, .partners-slider::after {
    width: 3.4375em; }
  .partners-slider::before {
    background-image: url("../media/background-ribbon-left.png"); }
  .partners-slider::after {
    background-image: url("../media/background-ribbon-right.png"); }
  .swiper-container.-partners::before, .swiper-container.-partners::after {
    bottom: 0.625em;
    top: 0.625em; }
  .swiper-container.-partners .swiper-slide {
    height: 11.75em; }
  .swiper-container.-partners .swiper-slide .partner-card {
    padding: 1.5625em 3.125em; }
  .swiper-container.-partners .swiper-slide img {
    max-height: 8.75em; }
  .swiper-container.-slideshow .swiper-slide img {
    height: auto;
    left: auto;
    transform: none;
    width: 100%; }
  .swiper-button-prev.-partners,
  .swiper-button-next.-partners {
    height: 11.75em;
    width: 4.125em; }
  .partners-wrapper .swiper-button-prev.-partners, .partners-wrapper
  .swiper-button-next.-partners {
    opacity: 0.35; }
  .swiper-button-prev.-partners {
    background-image: url("../media/icon-arrow-left.png");
    left: -5.0625em; }
  .swiper-button-next.-partners {
    background-image: url("../media/icon-arrow-right.png");
    right: -5.0625em; }
  /* ------------------------------------------------------------------------ *\
 * Layout                                                                   *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Partners                                                                 *
\* ------------------------------------------------------------------------ */
  .partners-wrapper {
    background-image: url("../media/background-partners-wrapper.jpg");
    padding: 5em 1.875em 10em; }
  .partners-wrapper > .partners-block {
    padding: 0em 1.25em; } }

@media screen and (min-width: 48rem) {
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* visibility classes */
  ._showmobile,
  ._hidetablet {
    display: none !important; }
  ._showtablet {
    display: block !important; }
  /* ------------------------------------------------------------------------ *\
 * Base                                                                     *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Gridly (adapted from https://github.com/IonicaBizau/gridly)              *
\* ------------------------------------------------------------------------ */
  .row, .ninja-row {
    flex-direction: row; }
  .row.-center, .-center.ninja-row {
    align-items: center; }
  .col, [class*="ninja-col-"] {
    flex: 1; }
  .col.-tenth, .-tenth[class*="ninja-col-"] {
    flex: 0 0 10%; }
  .col.-fifth, .-fifth[class*="ninja-col-"] {
    flex: 0 0 20%; }
  .col.-quarter, .-quarter[class*="ninja-col-"] {
    flex: 0 0 25%; }
  .col.-third, .-third[class*="ninja-col-"] {
    flex: 0 0 33.3333334%; }
  .col.-half, .-half[class*="ninja-col-"] {
    flex: 0 0 50%; }
  .col.-equal, .-equal[class*="ninja-col-"] {
    flex: 1 1 0%; }
  .col.-padded, .-padded[class*="ninja-col-"] {
    padding: 0em 0.625em; }
  .col.-padded:first-child, .-padded:first-child[class*="ninja-col-"] {
    padding-left: 0; }
  .col.-padded:last-child, .-padded:last-child[class*="ninja-col-"] {
    padding-right: 0; }
  /* ------------------------------------------------------------------------ *\
 * Basic Global Content                                                     *
\* ------------------------------------------------------------------------ */
  .text, .ninja-forms-required-items {
    font-size: 1.5em; }
  /* ------------------------------------------------------------------------ *\
 * Content                                                                  *
\* ------------------------------------------------------------------------ */
  .user-content, .comment-content {
    /* -------------- *\
     * Headers        *
    \* -------------- */
    /* -------------- *\
     * General Text   *
    \* -------------- */
    /* -------------- *\
     * Tables         *
    \* -------------- */
    /* -------------- *\
     * Buttons        *
    \* -------------- */
    /* -------------- *\
     * Alignment      *
    \* -------------- */
    /* -------------- *\
     * Columns        *
    \* -------------- */ }
    .user-content h1, .comment-content h1 {
      font-size: 3.75em;
      margin: 0; }
    
    .user-content h2,
    .comment-content h2 {
      font-size: 3em; }
    .user-content h2.-alt, .comment-content h2.-alt {
      font-size: 4.25em; }
    
    .user-content h3,
    .comment-content h3 {
      font-size: 2.25em;
      margin: 0em 0em 1.66667em; }
    
    .user-content h4,
    .comment-content h4 {
      font-size: 1.75em; }
    
    .user-content h5,
    .comment-content h5 {
      font-size: 1.5em; }
    
    .user-content h6,
    .comment-content h6 {
      font-size: 1.25em; }
    .user-content label, .comment-content label,
    .user-content menu,
    .comment-content menu,
    .user-content ol,
    .comment-content ol,
    .user-content p,
    .comment-content p,
    .user-content table,
    .comment-content table,
    .user-content ul,
    .comment-content ul {
      font-size: 1.5em; }
    
    .user-content table,
    .comment-content table {
      display: table;
      overflow: visible;
      padding: 0; }
    .user-content button, .comment-content button,
    .user-content input[type="button"],
    .comment-content input[type="button"],
    .user-content input[type="reset"],
    .comment-content input[type="reset"],
    .user-content input[type="submit"],
    .comment-content input[type="submit"] {
      font-size: 24px;
      font-size: 1.5rem; }
      .user-content button:hover, .comment-content button:hover,
      .user-content input[type="button"]:hover,
      .comment-content input[type="button"]:hover,
      .user-content input[type="reset"]:hover,
      .comment-content input[type="reset"]:hover,
      .user-content input[type="submit"]:hover,
      .comment-content input[type="submit"]:hover {
        background: #295704;
        color: #FFFFFF; }
    .user-content .aligncenter, .comment-content .aligncenter {
      margin: 0 auto 1.875em; }
    
    .user-content .alignleft,
    .comment-content .alignleft {
      float: left;
      margin: 0em 1.875em 1.875em 0em; }
    
    .user-content .alignright,
    .comment-content .alignright {
      float: right;
      margin: 0em 0em 1.875em 1.875em; }
    .user-content .col, .comment-content .col, .user-content [class*="ninja-col-"], .comment-content [class*="ninja-col-"] {
      padding: 0em 3.75em; }
    .user-content .col:first-child, .comment-content .col:first-child, .user-content :first-child[class*="ninja-col-"], .comment-content :first-child[class*="ninja-col-"] {
      padding-left: 1.875em; }
    .user-content .col:last-child, .comment-content .col:last-child, .user-content :last-child[class*="ninja-col-"], .comment-content :last-child[class*="ninja-col-"] {
      padding-right: 1.875em; }
  /* ------------------------------------------------------------------------ *\
 * Components                                                               *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Article Card                                                             *
\* ------------------------------------------------------------------------ */
  .article-card {
    padding: 1.875em; }
  .article-card:not(:last-child) {
    margin-bottom: 1.875em;
    padding-bottom: 1.875em; }
  .article-card.-banner {
    padding: 10em 1.875em 1.875em; }
  .article-card.-partner {
    text-align: left; }
  .article-card > .image {
    padding-top: 3.75em; }
  .article-card.-excerpt > .image {
    float: left;
    padding: 0em 1.875em 0em 0em;
    width: 25%; }
  .article-card.-partner > .image.-logo {
    float: left;
    padding: 0em 1.875em 0em 0em;
    width: 33.33333%; }
  .article-card.-banner > .header {
    background-image: url("../media/background-article-card-header-banner.png");
    background-size: auto auto;
    left: 1.875em;
    padding: 0.75em 1.5625em 3.25em;
    width: 30.125em; }
  .article-card.-excerpt > .image ~ .header {
    float: left;
    width: 75%; }
  .article-card.-banner > .header > .title {
    font-size: 3.125em; }
  .article-card.-excerpt > .header > .title {
    font-size: 1.75em; }
  .article-card.-excerpt > .image ~ .content {
    float: left;
    width: 75%; }
  .article-card.-partner > .image.-logo + .content {
    float: left;
    padding: 1.875em 0em 0em;
    width: 66.66667%; }
  .article-card > .content.-full {
    clear: both;
    float: none;
    padding: 0;
    width: 100%; }
  /* ------------------------------------------------------------------------ *\
 * Banner                                                                   *
\* ------------------------------------------------------------------------ */
  .banner-wrapper {
    padding: 0em 1.25em; }
  .banner-wrapper > .banner {
    display: table;
    min-height: 5.375em; }
  .banner-wrapper > .banner > .title {
    border-bottom: 0;
    border-right: 0.125rem solid rgba(0, 0, 0, 0.1);
    display: table-cell;
    padding: 1em 2.33333em; }
  .banner-wrapper > .banner > .title > .fa {
    left: 0; }
  .banner-wrapper > .banner > .excerpt,
  .banner-wrapper > .banner > .content {
    display: table-cell; }
    .banner-wrapper > .banner > .excerpt:not(:last-child),
    .banner-wrapper > .banner > .content:not(:last-child) {
      padding-right: 12.5em; }
  .banner-wrapper > .banner > .button, .banner-wrapper > .banner > .comment-reply-link {
    height: 100%;
    min-height: 3.58333em;
    width: 3.58333em; }
  /* ------------------------------------------------------------------------ *\
 * Callout Card                                                             *
\* ------------------------------------------------------------------------ */
  .callout-card > .callout-title {
    font-size: 1.375em; }
  /* ------------------------------------------------------------------------ *\
 * Comments                                                                 *
\* ------------------------------------------------------------------------ */
  .comments-title {
    font-size: 1.875em; }
  .comment-list,
  .comment-list .children {
    margin: 0em 0em 1.5em; }
  .comment-list .children {
    padding: 0em 0em 0em 2em; }
  .comment-body {
    align-items: center;
    display: flex;
    flex-wrap: wrap; }
  .comment-meta {
    font-size: 1.25em; }
  .comment-author {
    float: left; }
  .comment-metadata {
    float: right; }
  .comment-content {
    flex: 1 1 auto;
    width: 1px; }
    .comment-content > *:last-child {
      margin-bottom: 0 !important; }
  .comment-reply-link {
    flex: none;
    margin: 0em 0em 0em 2.77778em; }
  .comments-nav {
    font-size: 1.125em;
    line-height: 1.88889em;
    text-align: right; }
  .comments-nav .page-numbers {
    margin: 0em 0em 0em 0.33333em; }
  .comment-form-title {
    font-size: 1.875em; }
  .comment-logged-in {
    font-size: 1.125em; }
  .comment-input {
    font-size: 1.125em; }
  /* ------------------------------------------------------------------------ *\
 * Footer Card                                                              *
\* ------------------------------------------------------------------------ */
  .footer-card {
    text-align: left; }
  .footer-card.-alignright {
    text-align: right; }
  .footer-card .logo {
    max-width: 10.625em; }
  /* ------------------------------------------------------------------------ *\
 * Gallery                                                                  *
\* ------------------------------------------------------------------------ */
  .gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin: 0rem -1.875rem; }
  .gallery .gallery-item {
    padding: 0rem 1.875rem; }
  .gallery.gallery-columns-3 .gallery-item {
    flex: 0 0 33.333333%; }
  .gallery.gallery-columns-4 .gallery-item {
    flex: 0 0 25%; }
  .gallery.gallery-columns-5 .gallery-item {
    flex: 0 0 20%; }
  .gallery.gallery-columns-6 .gallery-item {
    flex: 0 0 16.666667%; }
  /* ------------------------------------------------------------------------ *\
 * Ninja Forms                                                              *
\* ------------------------------------------------------------------------ */
  [class*="ninja-col-"] {
    padding: 0em 0.625em !important; }
    [class*="ninja-col-"]:first-child {
      padding-left: 0 !important; }
    [class*="ninja-col-"]:last-child {
      padding-right: 0 !important; }
  .field-wrap .nf-label-span {
    font-size: 1.5em; }
  /* ------------------------------------------------------------------------ *\
 * Search form                                                              *
\* ------------------------------------------------------------------------ */
  .search-form {
    font-size: 1.5em; }
  /* ------------------------------------------------------------------------ *\
 * Story                                                                    *
\* ------------------------------------------------------------------------ */
  .story {
    padding: 3.125em;
    padding-right: 43.75%; }
  .story.-primary {
    padding-left: 12.5%;
    padding-right: 12.5%; }
  .story.-secondary {
    padding-left: 31.25%;
    padding-right: 3.125em; }
  .story.-tertiary {
    padding-right: 31.25%; }
  .story:first-child::before {
    left: 11.25%;
    right: auto; }
  .story.-primary::after {
    left: 50%;
    right: auto; }
  .story.-secondary::after {
    left: 6.25%; }
  .story.-tertiary::after {
    left: 50%;
    margin-left: -1.125em;
    right: auto; }
  .story .user-content h2.-alt, .story .comment-content h2.-alt {
    text-align: center; }
  /* ------------------------------------------------------------------------ *\
 * Layout                                                                   *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Page                                                                     *
\* ------------------------------------------------------------------------ */
  html.-navactive,
  html.-navactive body {
    height: auto;
    overflow: auto;
    width: auto; }
  html.-navactive .page-wrapper {
    box-shadow: none;
    left: auto; }
  /* ------------------------------------------------------------------------ *\
 * Header                                                                   *
\* ------------------------------------------------------------------------ */
  .header-wrapper {
    padding-bottom: 1.25em;
    padding-top: 1.25em; }
  .header-wrapper > .header-block {
    padding: 0 5.625%; }
  .header-wrapper > .header-block .menu-list.-nav {
    font-size: 1.25em; }
  .header-wrapper > .header-block .menu-list.-nav .menu-item.-logo .menu-link img {
    max-width: 6.875em; }
  /* ------------------------------------------------------------------------ *\
 * Content                                                                  *
\* ------------------------------------------------------------------------ */
  .content-wrapper {
    padding-bottom: 3.75em;
    padding-top: 9.6875em; }
  .home .content-wrapper {
    padding-top: 3.75em; }
  .content-wrapper::before {
    background-image: url("../media/background-content-before.jpg");
    height: 21.875em; }
  /* ------------------------------------------------------------------------ *\
 * Footer                                                                   *
\* ------------------------------------------------------------------------ */
  .footer-wrapper > .footer-block {
    flex-direction: row; }
  .footer-wrapper > .footer-block > .footer-card {
    flex: 1 1 auto;
    order: 0;
    padding: 0em 1.25em; }
  .footer-wrapper > .footer-block > .footer-card.-firstmobile {
    order: 0; }
  .footer-wrapper > .footer-block > .footer-card.-noflex {
    flex: none; } }

@media screen and (min-width: 53.3125rem) {
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Base                                                                     *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Components                                                               *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Layout                                                                   *
\* ------------------------------------------------------------------------ */ }

@media screen and (min-width: 60rem) {
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Base                                                                     *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Components                                                               *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Layout                                                                   *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Header                                                                   *
\* ------------------------------------------------------------------------ */
  .header-wrapper > .header-block .menu-list.-nav {
    font-size: 1.5em; }
  /* ------------------------------------------------------------------------ *\
 * Content                                                                  *
\* ------------------------------------------------------------------------ */
  .content-wrapper {
    padding-top: 10.375em; } }

@media screen and (min-width: 64rem) {
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* visibility classes */
  ._showtablet,
  ._hidedesktop {
    display: none !important; }
  ._showdesktop {
    display: block !important; }
  /* ------------------------------------------------------------------------ *\
 * Base                                                                     *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Components                                                               *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Layout                                                                   *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Header                                                                   *
\* ------------------------------------------------------------------------ */
  .header-wrapper > .header-block .menu-list.-nav .menu-item.-logo .menu-link img {
    max-width: 9.16667em; }
  /* ------------------------------------------------------------------------ *\
 * Content                                                                  *
\* ------------------------------------------------------------------------ */
  .content-wrapper {
    padding-top: 11.75em; } }

@media screen and (min-width: 80rem) {
  /* ------------------------------------------------------------------------ *\
 * Helpers                                                                  *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Base                                                                     *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Gridly (adapted from https://github.com/IonicaBizau/gridly)              *
\* ------------------------------------------------------------------------ */
  .row-desktop {
    flex-direction: row; }
  .row-desktop.-center {
    align-items: center; }
  /* ------------------------------------------------------------------------ *\
 * Components                                                               *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Layout                                                                   *
\* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
 * Header                                                                   *
\* ------------------------------------------------------------------------ */
  .header-wrapper > .header-block {
    padding: 0 11.25%; }
  .header-wrapper > .header-block .menu-list.-nav .menu-item.-logo .menu-link img {
    max-width: 13.75em; }
  /* ------------------------------------------------------------------------ *\
 * Content                                                                  *
\* ------------------------------------------------------------------------ */
  .content-wrapper {
    padding-top: 14.5em; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vZGVybi5jc3MiLCJoZWxwZXJzL19oZWxwZXJzLnNjc3MiLCJoZWxwZXJzL192YXJpYWJsZXMuc2NzcyIsImhlbHBlcnMvX2Z1bmN0aW9ucy5zY3NzIiwiaGVscGVycy9fbWl4aW5zLnNjc3MiLCJ2aWV3cy9fc2NyZWVuLnNjc3MiLCJiYXNlL25vcm1hbGl6ZS9fbm9ybWFsaXplLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmFyaWFibGVzLnNjc3MiLCJiYXNlL2dyaWQvX2dyaWQuc2NzcyIsImJhc2UvY29udGVudC9fY29udGVudC5zY3NzIiwiYmFzZS91c2VyLWNvbnRlbnQvX3VzZXItY29udGVudC5zY3NzIiwiY29tcG9uZW50cy9hcnRpY2xlLWNhcmQvX2FydGljbGUtY2FyZC5zY3NzIiwiY29tcG9uZW50cy9iYW5uZXIvX2Jhbm5lci5zY3NzIiwiY29tcG9uZW50cy9idXR0b24vX2J1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9jYWxsb3V0LWNhcmQvX2NhbGxvdXQtY2FyZC5zY3NzIiwiY29tcG9uZW50cy9jb21tZW50cy9fY29tbWVudHMuc2NzcyIsImNvbXBvbmVudHMvZm9vdGVyLWNhcmQvX2Zvb3Rlci1jYXJkLnNjc3MiLCJjb21wb25lbnRzL2dhbGxlcnkvX2dhbGxlcnkuc2NzcyIsImNvbXBvbmVudHMvaWZyYW1lL19pZnJhbWUuc2NzcyIsImNvbXBvbmVudHMvbG9nby9fbG9nby5zY3NzIiwiY29tcG9uZW50cy9tYXAvX21hcC5zY3NzIiwiY29tcG9uZW50cy9tZW51LWJ1dHRvbi9fbWVudS1idXR0b24uc2NzcyIsImNvbXBvbmVudHMvbWVudS1saXN0L19tZW51LWxpc3Quc2NzcyIsImNvbXBvbmVudHMvbmluamEtZm9ybXMvX25pbmphLWZvcm1zLnNjc3MiLCJjb21wb25lbnRzL3NlYXJjaC1mb3JtL19zZWFyY2gtZm9ybS5zY3NzIiwiY29tcG9uZW50cy9zdG9yeS9fc3Rvcnkuc2NzcyIsImNvbXBvbmVudHMvc3dpcGVyL19zd2lwZXIuc2NzcyIsIi4uLy4uLy4uL3N3aXBlci9kaXN0L2Nzcy9zd2lwZXIiLCJsYXlvdXRzL3BhZ2UvX3BhZ2Uuc2NzcyIsImxheW91dHMvaGVhZGVyL19oZWFkZXIuc2NzcyIsImxheW91dHMvbmF2LW1vYmlsZS9fbmF2LW1vYmlsZS5zY3NzIiwibGF5b3V0cy9zbGlkZXNob3cvX3NsaWRlc2hvdy5zY3NzIiwibGF5b3V0cy9jb250ZW50L19jb250ZW50LnNjc3MiLCJsYXlvdXRzL2NhbGxvdXRzL19jYWxsb3V0cy5zY3NzIiwibGF5b3V0cy9wYXJ0bmVycy9fcGFydG5lcnMuc2NzcyIsImxheW91dHMvZm9vdGVyL19mb290ZXIuc2NzcyIsIm1vZGVybi5zY3NzIiwidmlld3MvX3NjcmVlbl94eHMuc2NzcyIsInZpZXdzL19zY3JlZW5feHMuc2NzcyIsImNvbXBvbmVudHMvc3dpcGVyL19zd2lwZXJfeHMuc2NzcyIsImxheW91dHMvcGFydG5lcnMvX3BhcnRuZXJzX3hzLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX3Muc2NzcyIsImhlbHBlcnMvX2hlbHBlcnNfcy5zY3NzIiwiYmFzZS9ncmlkL19ncmlkX3Muc2NzcyIsImJhc2UvY29udGVudC9fY29udGVudF9zLnNjc3MiLCJiYXNlL3VzZXItY29udGVudC9fdXNlci1jb250ZW50X3Muc2NzcyIsImNvbXBvbmVudHMvYXJ0aWNsZS1jYXJkL19hcnRpY2xlLWNhcmRfcy5zY3NzIiwiY29tcG9uZW50cy9iYW5uZXIvX2Jhbm5lcl9zLnNjc3MiLCJjb21wb25lbnRzL2NhbGxvdXQtY2FyZC9fY2FsbG91dC1jYXJkX3Muc2NzcyIsImNvbXBvbmVudHMvY29tbWVudHMvX2NvbW1lbnRzX3Muc2NzcyIsImNvbXBvbmVudHMvZm9vdGVyLWNhcmQvX2Zvb3Rlci1jYXJkX3Muc2NzcyIsImNvbXBvbmVudHMvZ2FsbGVyeS9fZ2FsbGVyeV9zLnNjc3MiLCJjb21wb25lbnRzL25pbmphLWZvcm1zL19uaW5qYS1mb3Jtc19zLnNjc3MiLCJjb21wb25lbnRzL3NlYXJjaC1mb3JtL19zZWFyY2gtZm9ybV9zLnNjc3MiLCJjb21wb25lbnRzL3N0b3J5L19zdG9yeV9zLnNjc3MiLCJsYXlvdXRzL3BhZ2UvX3BhZ2Vfcy5zY3NzIiwibGF5b3V0cy9oZWFkZXIvX2hlYWRlcl9zLnNjc3MiLCJsYXlvdXRzL2NvbnRlbnQvX2NvbnRlbnRfcy5zY3NzIiwibGF5b3V0cy9mb290ZXIvX2Zvb3Rlcl9zLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX20uc2NzcyIsInZpZXdzL19zY3JlZW5fbC5zY3NzIiwibGF5b3V0cy9oZWFkZXIvX2hlYWRlcl9sLnNjc3MiLCJsYXlvdXRzL2NvbnRlbnQvX2NvbnRlbnRfbC5zY3NzIiwidmlld3MvX3NjcmVlbl94bC5zY3NzIiwiaGVscGVycy9faGVscGVyc194bC5zY3NzIiwibGF5b3V0cy9oZWFkZXIvX2hlYWRlcl94bC5zY3NzIiwibGF5b3V0cy9jb250ZW50L19jb250ZW50X3hsLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX3h4bC5zY3NzIiwiYmFzZS9ncmlkL19ncmlkX3h4bC5zY3NzIiwibGF5b3V0cy9oZWFkZXIvX2hlYWRlcl94eGwuc2NzcyIsImxheW91dHMvY29udGVudC9fY29udGVudF94eGwuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNFaEI7OzZFREM2RTtBRUQ3RTs7NkVGSTZFO0FFOEI3RTs7NkVGM0I2RTtBRW1DN0U7OzZFRmhDNkU7QUV3QzdFOzs2RUZyQzZFO0FFaUQ3RTs7NkVGOUM2RTtBRTJEN0U7OzZFRnhENkU7QUduQjdFOzs2RUhzQjZFO0FJdEI3RTs7NkVKeUI2RTtB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Y1RWYztFU1dkLGtFVFM2RDtFU1I3RCxrQlJJdUU7RVFIdkUsbUJBQW1CO0VBQ25CLHNCUlk0RixFQUFBOztBUVRoRztFQUNJLGNUekJZO0VTMEJaLHFCQUFxQjtFQUNyQix1QkFBdUIsRUFBQTtFQUgzQjtJQU1RLGNUN0JZLEVBQUE7RVN1QnBCO0lBVVEsY0FBNkIsRUFBQTtFQVZyQztJQWNRLGNUOUNhLEVBQUE7O0FVTHJCOzs2RVorakI2RTtBWTNqQjdFO0VBQ0k7O3VCWjhqQm1CO0VZaGpCbkI7O3VCWm1qQm1CO0VZbGZuQjs7dUJacWZtQjtFWXBlbkI7O3VCWnVlbUI7RVkvZG5COzt1QlprZW1CO0VZbGRuQjs7dUJacWRtQjtFWTFhbkI7O3VCWjZhbUI7RVl2Wm5COzt1QlowWm1CO0VZaFpuQjs7dUJabVptQjtFWTFZbkI7O3VCWjZZbUI7RVk5WG5COzt1QlppWW1CO0VZdFduQjs7dUJaeVdtQjtFWWpUbkI7O3VCWm9UbUI7RVluUm5COzt1QlpzUm1CO0VZM01uQjs7dUJaOE1tQjtFWXBNbkI7O3VCWnVNbUIsRVlyTUM7RUF2YXhCO0lBTVEsY1ZHUTtJVUZSLHFCQUFxQjtJQUNyQix1QkFBdUIsRUFBQTtJQVIvQjtNQVdZLGNWRFEsRUFBQTtFVVZwQjs7Ozs7Ozs7Ozs7SUF5QlEsY1ZUVTtJVVVWLGtFVlE0RDtJVVA1RCxnQkFBZ0I7SUFDaEIseUJBQXlCLEVBQUE7SUE1QmpDOzs7Ozs7Ozs7OztNQStCWSwrQlZJeUI7TVVIekIsa0JUQStEO01TQy9ELGtCQUFrQjtNQUNsQixnQkFBZ0IsRUFBQTtFQWxDNUI7SUF1Q1EsY1Z2Q1M7SVV3Q1Qsa0JUUm1FO0lTU25FLGtCVFRtRTtJU1VuRSx5QlRBd0YsRUFBQTtJUzFDaEc7TUE2Q1ksY1ZwQ0ksRUFBQTs7RVVUaEI7O0lBa0RRLGtCVGxCbUU7SVNtQm5FLHlCVFR3RixFQUFBO0VTMUNoRztJQXVEUSwrQlZwQjZCO0lVcUI3QixrQlR4Qm1FO0lTeUJuRSxvQkFBb0IsRUFBQTs7RUF6RDVCOztJQTZEUSxpQlQ3Qm1FO0lTOEJuRSxxQlRwQndGLEVBQUE7O0VTMUNoRzs7SUFrRVEsa0JUbENtRTtJU21DbkUseUJUekJ3RixFQUFBOztFUzFDaEc7O0lBdUVRLGlCVHZDbUU7SVN3Q25FLHFCVDlCd0YsRUFBQTs7RVMxQ2hHOztJQTRFUSxrQlQ1Q21FO0lTNkNuRSx5QlRuQ3dGLEVBQUE7RVMxQ2hHOzs7Ozs7Ozs7OztJQTBGUSxjVjFFVTtJVTJFVixrRVZ2RHlEO0lVd0R6RCxrQlQ1RG1FO0lTNkRuRSxtQkFBbUI7SUFDbkIsc0JUcER3RixFQUFBO0VTMUNoRztJQXNHUSxjQUFjLEVBQUE7O0VBdEd0Qjs7Ozs7O0lBZ0hRLDBCVHRFd0YsRUFBQTtJUzFDaEc7Ozs7Ozs7Ozs7Ozs7Ozs7O01BcUhZLGdCQUFnQixFQUFBOztFQXJINUI7O0lBOEhRLGNBQWM7SUFDZCxjQUFjO0lBRWQsaUNBQWlDO0lBQ2pDLG1CQUFtQjtJQUNuQix3QlRuR21FO0lTb0duRSxtQkFBbUI7SUFDbkIsV0FBVyxFQUFBO0VBckluQjs7O0lBMElRLHVCVGhHd0Y7SVNpR3hGLG1CQUFtQixFQUFBO0VBM0kzQjs7O0lBZ0pRLGdCQUFnQjtJQUNoQixnQkFBZ0IsRUFBQTtFQWpKeEI7OztJQXNKUSxtQlZ0SlM7SVV1SlQsY0FBYyxFQUFBO0VBdkp0Qjs7O0lBNEpRLGtCQUFrQixFQUFBO0VBNUoxQjs7O0lBaUtRLG1CVnBKVyxFQUFBO0VVYm5CO0lBeUtRLG1CVjFKTTtJVTJKTix5QlYxSlU7SVUySlYsY1YvSk87SVVnS1AsY0FBYztJQUNkLHNCQUFzQjtJQUN0QixpQlQ5SW1FO0lTK0luRSxxQlRySXdGO0lTc0l4RixvQlR0SXdGO0lTdUl4RixXQUFXLEVBQUE7RUFqTG5CO0lBcUxRLG1DVnJMUztJVXNMVCxxQlQ1SXdGO0lTNkl4RiwwQlQ3SXdGLEVBQUE7RVMxQ2hHO0lBK0xRLFNBQVM7SUFDVCxxQ1ZuTFc7SVVvTFgsb0JUakttRSxFQUFBO0VTaEMzRTtJQXlNUSx1QkFBdUI7SUFDdkIsZUFBZSxFQUFBO0VBMU12Qjs7Ozs7OztJQXFOUSxjVnJNVTtJVXNNVixrRVZsTHlEO0lVbUx6RCxlQUFlO0lBQ2YsZVR4TG1FO0lTd0xuRSxlVHhMbUU7SVN5TG5FLGtCVHpMbUUsRUFBQTtFU2hDM0U7Ozs7Ozs7SUFvT1EsbUJWM05RO0lVNE5SLFNBQVM7SUFDVCxjVjFOTztJVTJOUCxxQkFBcUI7SUFDckIsa0VWcE15RDtJVXFNekQsZUFBZTtJQUNmLGVUMU1tRTtJUzBNbkUsZVQxTW1FO0lTMk1uRSxnQkFBZ0I7SUFDaEIsdUJUbE13RjtJU21NeEYsc0JUbk13RjtJU29NeEYseUJBQXlCO0lBQ3pCLHlDQUF5QyxFQUFBO0lBL09qRDs7Ozs7OztNQWtQWSxtQlZ4T1E7TVV5T1IsY1Z2T0csRUFBQTtFVVpmOzs7SUE2UFEsWUFBWTtJQUNaLGtCQUFrQixFQUFBO0lBOVAxQjs7O01BaVFZLGNUak8rRDtNU2tPL0QsZ0JBQWdCO01BQ2hCLGdDVHpOb0Y7TVMwTnBGLGtCQUFrQixFQUFBO01BcFE5Qjs7O1FBdVFnQixtQlYzUEQ7UVU0UEMseUJWL1BBO1FVZ1FBLGlCVHpPMkQ7UVN5TzNELHVCVHpPMkQ7UVMwTzNELGNWalFBO1FVa1FBLGdCQUFnQjtRQUNoQixjQUFjO1FBQ2QsV0FBVztRQUNYLGNUOU8yRDtRUytPM0QsZVQvTzJEO1FTZ1AzRCxPQUFPO1FBQ1AscUJUalAyRDtRU2tQM0Qsa0JBQWtCO1FBQ2xCLGtCQUFrQjtRQUNsQixZVHBQMkQ7UVNxUDNELGNUclAyRCxFQUFBO0lTaEMzRTs7Ozs7TUEyUlksMENBQTBDLEVBQUE7SUEzUnREOzs7TUErUlksbUJWbFJPLEVBQUE7O0VVYm5COztJQW9TUSxrQkFBa0IsRUFBQTtFQXBTMUI7SVIrREksWUZ3SU87SUV2SVAsc0NBQXNDLEVBQUE7RVFoRTFDO0lSK0RJLFlGdUpRO0lFdEpSLHNDQUFzQyxFQUFBO0VRaEUxQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFxVVEsbUJWelRPO0lVMFRQLHlCVjdUUTtJVThUUixzQkFBc0I7SUFDdEIsY0FBYztJQUNkLHVCVC9Sd0Y7SVNnU3hGLGFBQWE7SUFDYixrQlRqU3dGO0lT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Q2QsZ0IvQkhtRTtFK0JJbkUsa0JBQWtCO0VBQ2xCLFVBQVUsRUFBQTs7QUFHZDtFQUNJLGdCQUFnQixFQUFBOztBQXpDeEI7RUErQ1EsY0FBYztFQUNkLGdCL0JoQm1FO0UrQmlCbkUscUIvQlB3RixFQUFBOztBZ0M5Q2hHOzs2RW5DeXdGNkU7QW1DcndGN0U7RS9Cd0RJLGtCQUFrQjtFQUNsQixVRlVXO0VpQy9EUCxtQmpDS1E7RWlDSlIsY2hDMkJtRTtFZ0MxQm5FLGdCaEMwQm1FLEVBQUE7O0FnQ2hDM0U7RUFZUSxjQUFjO0VBQ2QsZ0JoQ21CbUUsRUFBQTs7QWlDcEMzRTs7NkVwQ3V4RjZFO0FvQ254RjdFO0VoQ3dESSxrQkFBa0I7RWdDcERkLHVGQUF1RjtFQUN2RixjakMyQm1FO0VpQzFCbkUsa0NqQ29Dd0YsRUFBQTs7QWlDMUNoRztFQVlRLGNBQWM7RUFDZCxnQmpDbUJtRTtFaUNsQm5FLHFCakM0QndGLEVBQUE7O0FrQzlDaEc7OzZFckNxeUY2RTtBcUNqeUY3RTtFakN3REksa0JBQWtCO0VBQ2xCLFVGV1M7RW1DaEVMLG1CbkNRTztFbUNQUCxjbEMyQm1FO0VrQzFCbkUsbUJsQ29Dd0YsRUFBQTs7QWtDMUNoRztFQVlRLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsY0FBYztFQUNkLGdCbENpQm1FO0VrQ2hCbkUsbUJsQzBCd0YsRUFBQTs7QW1DM0NoRztFQ0hBOzs2RXZDdXpGNkU7RXVDbnpGN0U7OzZFdkNzekY2RTtFdUNsekY3RTs7NkV2Q3F6RjZFO0V1Q2p6RjdFOzs2RXZDb3pGNkUsRXVDbHpGQzs7QURQOUU7RUVQQTs7NkV4Q3EwRjZFO0V3Q2owRjdFOzs2RXhDbzBGNkU7RXdDaDBGN0U7OzZFeENtMEY2RTtFeUMzMEY3RTs7NkV6QzgwRjZFO0U0QnAwRjdFO0lhRlEsY3RDNEJtRTtJc0MzQm5FLHlCdENxQ3dGLEVBQUE7RXlCeEI1RjtJYVRJLHNCdENpQ3dGLEVBQUE7RXlCbEJoRztJYVRRLHVEQUF1RDtJQUN2RCxvQnRDMEJ3RjtJc0N6QnhGLG9CdEN5QndGLEVBQUE7RXlCbEJoRztJYUZRLGV0Q1VtRSxFQUFBO0V5QlIzRTtJYUVRLDREQUE0RCxFQUFBO0ViRnBFO0lhTVEsNkRBQTZELEVBQUE7RWIyQnJFO0lhcEJRLGV0Q0xtRTtJc0NNbkUsWXRDTm1FLEVBQUE7RXlCeUR2RTtJYTdDSSxldENabUUsRUFBQTtFeUJnRXZFO0lhaERJLHlCdENOd0YsRUFBQTtFeUI0RDVGO0lhaERJLGtCdEN0Qm1FLEVBQUE7RXlCNkV2RTtJYW5ESSxZQUFZO0lBQ1osVUFBVTtJQUNWLGVBQWU7SUFDZixXQUFXLEVBQUE7RWJ5RG5COztJYWxEUSxldENwQ21FO0lzQ3FDbkUsY3RDckNtRSxFQUFBO0VzQ3dDdkU7O0lBQ0ksYUFBYSxFQUFBO0ViK0RyQjtJYXpEUSxxREFBcUQ7SUFDckQsZXRDaERtRSxFQUFBO0V5QitHM0U7SWF6RFEsc0RBQXNEO0lBQ3RELGdCdEN2RG1FLEVBQUE7RXFDdEIzRTs7NkV4QzYyRjZFO0UwQzMzRjdFOzs2RTFDODNGNkU7RW9DMTNGN0U7SU1FUSxpRUFBaUU7SUFDakUseUJ2Q3VDd0YsRUFBQTtFaUMxQ2hHO0lNT1EsbUJ2Q21Dd0YsRUFBQSxFdUNsQzNGOztBSkRMO0VLWEE7OzZFM0N3NEY2RTtFNEN4NEY3RTs7NkU1QzI0RjZFO0U0Q3Y0RjdFLHVCQUFBO0VBR0E7O0lBRUksd0JBQXdCLEVBQUE7RUFHNUI7SUFDSSx5QkFBeUIsRUFBQTtFRFA3Qjs7NkUzQzg0RjZFO0U2Q3A1RjdFOzs2RTdDdTVGNkU7RVVuNUY3RTtJbUNFUSxtQkFBbUIsRUFBQTtFQUYzQjtJQU1RLG1CQUFtQixFQUFBO0VuQ0UzQjtJbUNJUSxPQUFPLEVBQUE7RUFGZjtJQU1RLGFBQWEsRUFBQTtFQU5yQjtJQVVRLGFBQWEsRUFBQTtFQVZyQjtJQWNRLGFBQWEsRUFBQTtFQWRyQjtJQWtCUSxxQkFBcUIsRUFBQTtFQWxCN0I7SUFzQlEsYUFBYSxFQUFBO0VBdEJyQjtJQTBCUSxZQUFZLEVBQUE7RUExQnBCO0lBOEJRLG9CMUNFd0YsRUFBQTtFMENoQ2hHO0lBa0NRLGVBQWUsRUFBQTtFQWxDdkI7SUFzQ1EsZ0JBQWdCLEVBQUE7RUNwRHhCOzs2RTlDazdGNkU7RVdyNUY3RTtJbUN4QkksZ0IzQytCdUUsRUFBQTtFNENwQzNFOzs2RS9DdTdGNkU7RVluN0Y3RTtJbUNDSTs7dUIvQ3M3Rm1CO0krQ3A1Rm5COzt1Qi9DdTVGbUI7SStDMTRGbkI7O3VCL0M2NEZtQjtJK0NuNEZuQjs7dUIvQ3M0Rm1CO0krQ3IzRm5COzt1Qi9DdzNGbUI7SStDaDJGbkI7O3VCL0NtMkZtQixFK0NqMkZDO0luQ3JHeEI7TW1DTVEsaUI1QzBCbUU7TTRDekJuRSxTQUFTLEVBQUE7O0luQ1BqQjs7TW1DV1EsYzVDcUJtRSxFQUFBO0lTaEMzRTtNbUNlUSxpQjVDaUJtRSxFQUFBOztJU2hDM0U7O01tQ21CUSxpQjVDYW1FO000Q1puRSx5QjVDc0J3RixFQUFBOztJUzFDaEc7O01tQ3dCUSxpQjVDUW1FLEVBQUE7O0lTaEMzRTs7TW1DNEJRLGdCNUNJbUUsRUFBQTs7SVNoQzNFOztNbUNnQ1EsaUI1Q0FtRSxFQUFBO0lTaEMzRTs7Ozs7Ozs7Ozs7TW1DNkNRLGdCNUNibUUsRUFBQTs7SVNoQzNFOztNbUNxRFEsY0FBYztNQUNkLGlCQUFpQjtNQUNqQixVQUFVLEVBQUE7SW5DdkRsQjs7Ozs7OztNbUNrRVEsZUFBZTtNQUNmLGlCNUNuQ21FLEVBQUE7TVNoQzNFOzs7Ozs7O1FtQ3NFWSxtQjdDNURRO1E2QzZEUixjN0MzREcsRUFBQTtJVVpmO01tQ2lGWSxzQjVDakQrRCxFQUFBOztJU2hDM0U7O01tQ3VGWSxXQUFXO01BQ1gsK0I1QzlDb0YsRUFBQTs7SVMxQ2hHOztNbUM4RlksWUFBWTtNQUNaLCtCNUNyRG9GLEVBQUE7STRDMUNoRztNQXdHUSxtQjVDOUR3RixFQUFBO0k0QzFDaEc7TUE0R1EscUI1QzVFbUUsRUFBQTtJNENoQzNFO01BZ0hRLHNCNUNoRm1FLEVBQUE7RXdDdEIzRTs7NkUzQytnRzZFO0VnRDdoRzdFOzs2RWhEZ2lHNkU7RWE1aEc3RTtJbUNFUSxnQjdDOEJtRSxFQUFBO0VVaEMzRTtJbUNNUSxzQjdD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N0RneEc2RTtFNkQ1d0c3RTs7NkU3RCt3RzZFO0U2RDN3RzdFOzs2RTdEOHdHNkU7RTZEMXdHN0U7OzZFN0Q2d0c2RSxFNkQzd0dDOztBdkJLOUU7RXdCbkJBOzs2RTlEOHhHNkU7RThEMXhHN0U7OzZFOUQ2eEc2RTtFOER6eEc3RTs7NkU5RDR4RzZFO0U4RHh4RzdFOzs2RTlEMnhHNkU7RStEdnlHN0U7OzZFL0QweUc2RTtFMER0eUc3RTtJS0VRLGdCNUQ4Qm1FLEVBQUE7RTZEcEMzRTs7NkVoRSt5RzZFO0VrQzN5RzdFO0k4QkVRLHFCN0Q4Qm1FLEVBQUEsRTZEN0J0RTs7QTFCZ0JMO0UyQnZCQTs7NkVqRXN6RzZFO0VrRXR6RzdFOzs2RWxFeXpHNkU7RWtFcnpHN0UsdUJBQUE7RUFHQTs7SUFFSSx3QkFBd0IsRUFBQTtFQUc1QjtJQUNJLHlCQUF5QixFQUFBO0VEUDdCOzs2RWpFNHpHNkU7RWlFeHpHN0U7OzZFakUyekc2RTtFaUV2ekc3RTs7NkVqRTB6RzZFO0VtRXgwRzdFOzs2RW5FMjBHNkU7RTBEdjBHN0U7SVNFUSxvQmhFOEJtRSxFQUFBO0VpRXBDM0U7OzZFcEVnMUc2RTtFa0M1MEc3RTtJa0NFUSxvQmpFOEJtRSxFQUFBLEVpRTdCdEU7O0E5Qm9CTDtFK0IzQkE7OzZFckV1MUc2RTtFcUVuMUc3RTs7NkVyRXMxRzZFO0VzRTExRzdFOzs2RXRFNjFHNkU7RXNFejFHN0U7SUFFUSxtQkFBbUIsRUFBQTtFQUYzQjtJQU1RLG1CQUFtQixFQUFBO0VEQTNCOzs2RXJFMDFHNkU7RXFFdDFHN0U7OzZFckV5MUc2RTtFdUV2Mkc3RTs7NkV2RTAyRzZFO0UrQnQyRzdFO0l3Q0VRLGlCQUFpQixFQUFBO0ViRnpCO0lhTVEsa0JwRTBCbUUsRUFBQTtFcUVwQzNFOzs2RXhFaTNHNkU7RWtDNzJHN0U7SXNDRVEsbUJyRThCbUUsRUFBQSxFcUU3QnRFIiwiZmlsZSI6Im1vZGVybi45MWQ4YzY1Yy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29sb3JzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEZvbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBXaWR0aHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQnJlYWsgUG9pbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheWVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGb250QXdlc29tZSBJY29ucyAoaHR0cDovL2ZvcnRhd2Vzb21lLmdpdGh1Yi5pby9Gb250LUF3ZXNvbWUvaWNvbnMvKSAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRnVuY3Rpb25zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1peGlucyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uYXJ0aWNsZS1jYXJkLCAuY29tbWVudC1ib2R5LCAuY29tbWVudC1tZXRhLCAubWVudS1saXN0LCAuc3RvcnksIC5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2ssIC5zbGlkZXNob3ctd3JhcHBlciA+IC5zbGlkZXNob3ctYmxvY2ssIC5jb250ZW50LXdyYXBwZXIgPiAuY29udGVudC1ibG9jaywgLmNvbnRlbnQtd3JhcHBlciA+IC5wYXJ0bmVycy1ibG9jaywgLmNhbGxvdXRzLXdyYXBwZXIgPiAuY2FsbG91dHMtYmxvY2ssIC5wYXJ0bmVycy13cmFwcGVyID4gLnBhcnRuZXJzLWJsb2NrLCAuZm9vdGVyLXdyYXBwZXIgPiAuZm9vdGVyLWJsb2NrIHtcbiAgKnpvb206IDEgIWltcG9ydGFudDsgfVxuICAuYXJ0aWNsZS1jYXJkOjpiZWZvcmUsIC5jb21tZW50LWJvZHk6OmJlZm9yZSwgLmNvbW1lbnQtbWV0YTo6YmVmb3JlLCAubWVudS1saXN0OjpiZWZvcmUsIC5zdG9yeTo6YmVmb3JlLCAuaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrOjpiZWZvcmUsIC5zbGlkZXNob3ctd3JhcHBlciA+IC5zbGlkZXNob3ctYmxvY2s6OmJlZm9yZSwgLmNvbnRlbnQtd3JhcHBlciA+IC5jb250ZW50LWJsb2NrOjpiZWZvcmUsIC5jb250ZW50LXdyYXBwZXIgPiAucGFydG5lcnMtYmxvY2s6OmJlZm9yZSwgLmNhbGxvdXRzLXdyYXBwZXIgPiAuY2FsbG91dHMtYmxvY2s6OmJlZm9yZSwgLnBhcnRuZXJzLXdyYXBwZXIgPiAucGFydG5lcnMtYmxvY2s6OmJlZm9yZSwgLmZvb3Rlci13cmFwcGVyID4gLmZvb3Rlci1ibG9jazo6YmVmb3JlLCAuYXJ0aWNsZS1jYXJkOjphZnRlciwgLmNvbW1lbnQtYm9keTo6YWZ0ZXIsIC5jb21tZW50LW1ldGE6OmFmdGVyLCAubWVudS1saXN0OjphZnRlciwgLnN0b3J5OjphZnRlciwgLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jazo6YWZ0ZXIsIC5zbGlkZXNob3ctd3JhcHBlciA+IC5zbGlkZXNob3ctYmxvY2s6OmFmdGVyLCAuY29udGVudC13cmFwcGVyID4gLmNvbnRlbnQtYmxvY2s6OmFmdGVyLCAuY29udGVudC13cmFwcGVyID4gLnBhcnRuZXJzLWJsb2NrOjphZnRlciwgLmNhbGxvdXRzLXdyYXBwZXIgPiAuY2FsbG91dHMtYmxvY2s6OmFmdGVyLCAucGFydG5lcnMtd3JhcHBlciA+IC5wYXJ0bmVycy1ibG9jazo6YWZ0ZXIsIC5mb290ZXItd3JhcHBlciA+IC5mb290ZXItYmxvY2s6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcMDAyMFwiICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAuYXJ0aWNsZS1jYXJkOjphZnRlciwgLmNvbW1lbnQtYm9keTo6YWZ0ZXIsIC5jb21tZW50LW1ldGE6OmFmdGVyLCAubWVudS1saXN0OjphZnRlciwgLnN0b3J5OjphZnRlciwgLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jazo6YWZ0ZXIsIC5zbGlkZXNob3ctd3JhcHBlciA+IC5zbGlkZXNob3ctYmxvY2s6OmFmdGVyLCAuY29udGVudC13cmFwcGVyID4gLmNvbnRlbnQtYmxvY2s6OmFmdGVyLCAuY29udGVudC13cmFwcGVyID4gLnBhcnRuZXJzLWJsb2NrOjphZnRlciwgLmNhbGxvdXRzLXdyYXBwZXIgPiAuY2FsbG91dHMtYmxvY2s6OmFmdGVyLCAucGFydG5lcnMtd3JhcHBlciA+IC5wYXJ0bmVycy1ibG9jazo6YWZ0ZXIsIC5mb290ZXItd3JhcHBlciA+IC5mb290ZXItYmxvY2s6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aCAhaW1wb3J0YW50OyB9XG5cbi5fY2VudGVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLl9sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uX3JpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLl90ZXh0Y2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cblxuLl90ZXh0bGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uX3RleHRyaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLl9ub21hcmdpbiB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi5fbm9wYWRkaW5nIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG5cbi5fdmlzdWFsbHloaWRkZW4ge1xuICBsZWZ0OiAtOTk5ZW0gIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogLTk5OWVtICFpbXBvcnRhbnQ7IH1cblxuLyogdmlzaWJpbGl0eSBjbGFzc2VzICovXG4uX2hpZGVtb2JpbGUsXG4uX3Nob3d0YWJsZXQsXG4uX3Nob3dkZXNrdG9wIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5fc2hvd21vYmlsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE5vcm1hbGl6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovIH1cblxuLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgICAgKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICAgICAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuZmlnY2FwdGlvbixcbmZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIDEgKi9cbiAgaGVpZ2h0OiAwO1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKiBMaW5rc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgICAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG4gIC8qIDIgKi8gfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovIH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cbiAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi8gfVxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovIH1cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqLyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbm1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmh0bWwge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5ALW1zLXZpZXdwb3J0IHtcbiAgd2lkdGg6IGRldmljZS13aWR0aDsgfVxuXG46Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG46Oi13ZWJraXQtY2FsZW5kYXItcGlja2VyLWluZGljYXRvciB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbmlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgfVxuXG5hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBHcmlkbHkgKGFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vSW9uaWNhQml6YXUvZ3JpZGx5KSAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucm93LCAubmluamEtcm93LCAucm93LWRlc2t0b3Age1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5jb2wsIFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQmFzaWMgR2xvYmFsIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJCcnVzaGVyXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoXCIuLi9tZWRpYS9mb250cy9icnVzaGVyL3dlYmZvbnQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9tZWRpYS9mb250cy9icnVzaGVyL3dlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC5zdmcjYnJ1c2hlclwiKSBmb3JtYXQoXCJzdmdcIik7IH1cblxuLnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4xNjY2N2VtO1xuICBtYXJnaW46IDBlbSAwZW0gMC43NWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC50aXRsZS4tc3ViIHtcbiAgICBmb250LXNpemU6IDIuNWVtOyB9XG4gIC50aXRsZS4tcGFydG5lci1zdWIge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LCAubmluamEtZm9ybXMtcmVxdWlyZWQtaXRlbXMge1xuICBjb2xvcjogIzExMTExMTtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMGVtIDBlbSAxLjI1ZW07IH1cblxuLmxpbmsge1xuICBjb2xvcjogIzEzNDMwQztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1czsgfVxuICAubGluazpob3ZlciB7XG4gICAgY29sb3I6ICMyOTU3MDQ7IH1cbiAgLmxpbmsuLWFsdCB7XG4gICAgY29sb3I6ICM4ZjAzMDM7IH1cbiAgLmxpbmsuLWFsdDpob3ZlciB7XG4gICAgY29sb3I6ICM3NTAyMDI7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVXNlciBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi51c2VyLWNvbnRlbnQsIC5jb21tZW50LWNvbnRlbnQge1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBVbml2ZXJzYWwgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEhlYWRlcnMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogR2VuZXJhbCBUZXh0ICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBsYWJlbHMgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIExpc3RzICAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogVGFibGVzICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBCbG9ja3Mgb2YgVGV4dCAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEhScyAgICAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogSW1hZ2VzICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBHZW5lcmFsIEZvcm1zICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEJ1dHRvbnMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogQ2hlY2tib3gvUmFkaW8gKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBJbnB1dHMgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIFNlbGVjdHMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogVGV4dGFyZWFzICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBBbGlnbm1lbnQgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovIH1cbiAgLnVzZXItY29udGVudCBhLCAuY29tbWVudC1jb250ZW50IGEge1xuICAgIGNvbG9yOiAjMTM0MzBDO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1czsgfVxuICAgIC51c2VyLWNvbnRlbnQgYTpob3ZlciwgLmNvbW1lbnQtY29udGVudCBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMjk1NzA0OyB9XG4gIC51c2VyLWNvbnRlbnQgaDEsIC5jb21tZW50LWNvbnRlbnQgaDEsXG4gIC51c2VyLWNvbnRlbnQgaDIsXG4gIC5jb21tZW50LWNvbnRlbnQgaDIsXG4gIC51c2VyLWNvbnRlbnQgaDMsXG4gIC5jb21tZW50LWNvbnRlbnQgaDMsXG4gIC51c2VyLWNvbnRlbnQgaDQsXG4gIC5jb21tZW50LWNvbnRlbnQgaDQsXG4gIC51c2VyLWNvbnRlbnQgaDUsXG4gIC5jb21tZW50LWNvbnRlbnQgaDUsXG4gIC51c2VyLWNvbnRlbnQgaDYsXG4gIC5jb21tZW50LWNvbnRlbnQgaDYge1xuICAgIGNvbG9yOiAjMTExMTExO1xuICAgIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAudXNlci1jb250ZW50IGgxIGVtLCAuY29tbWVudC1jb250ZW50IGgxIGVtLFxuICAgIC51c2VyLWNvbnRlbnQgaDIgZW0sXG4gICAgLmNvbW1lbnQtY29udGVudCBoMiBlbSxcbiAgICAudXNlci1jb250ZW50IGgzIGVtLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaDMgZW0sXG4gICAgLnVzZXItY29udGVudCBoNCBlbSxcbiAgICAuY29tbWVudC1jb250ZW50IGg0IGVtLFxuICAgIC51c2VyLWNvbnRlbnQgaDUgZW0sXG4gICAgLmNvbW1lbnQtY29udGVudCBoNSBlbSxcbiAgICAudXNlci1jb250ZW50IGg2IGVtLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaDYgZW0ge1xuICAgICAgZm9udC1mYW1pbHk6IFwiQnJ1c2hlclwiLCBjdXJzaXZlO1xuICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAudXNlci1jb250ZW50IGgxLCAuY29tbWVudC1jb250ZW50IGgxIHtcbiAgICBjb2xvcjogIzVEMDIwMjtcbiAgICBmb250LXNpemU6IDEuODc1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDAuOGVtO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwLjEzMzMzZW07IH1cbiAgICAudXNlci1jb250ZW50IGgxIGVtLCAuY29tbWVudC1jb250ZW50IGgxIGVtIHtcbiAgICAgIGNvbG9yOiAjMTM0MzBDOyB9XG4gIFxuICAudXNlci1jb250ZW50IGgyLFxuICAuY29tbWVudC1jb250ZW50IGgyIHtcbiAgICBmb250LXNpemU6IDEuNjI1ZW07XG4gICAgbWFyZ2luOiAwZW0gMGVtIDAuNjE1MzhlbTsgfVxuICAudXNlci1jb250ZW50IGgyLi1hbHQsIC5jb21tZW50LWNvbnRlbnQgaDIuLWFsdCB7XG4gICAgZm9udC1mYW1pbHk6IFwiQnJ1c2hlclwiLCBjdXJzaXZlO1xuICAgIGZvbnQtc2l6ZTogMi4xMjVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICBcbiAgLnVzZXItY29udGVudCBoMyxcbiAgLmNvbW1lbnQtY29udGVudCBoMyB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgbWFyZ2luOiAwZW0gMGVtIDAuOGVtOyB9XG4gIFxuICAudXNlci1jb250ZW50IGg0LFxuICAuY29tbWVudC1jb250ZW50IGg0IHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgbWFyZ2luOiAwZW0gMGVtIDAuNzI3MjdlbTsgfVxuICBcbiAgLnVzZXItY29udGVudCBoNSxcbiAgLmNvbW1lbnQtY29udGVudCBoNSB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgbWFyZ2luOiAwZW0gMGVtIDAuOGVtOyB9XG4gIFxuICAudXNlci1jb250ZW50IGg2LFxuICAuY29tbWVudC1jb250ZW50IGg2IHtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgbWFyZ2luOiAwZW0gMGVtIDAuNDQ0NDRlbTsgfVxuICAudXNlci1jb250ZW50IGxhYmVsLCAuY29tbWVudC1jb250ZW50IGxhYmVsLFxuICAudXNlci1jb250ZW50IG1lbnUsXG4gIC5jb21tZW50LWNvbnRlbnQgbWVudSxcbiAgLnVzZXItY29udGVudCBvbCxcbiAgLmNvbW1lbnQtY29udGVudCBvbCxcbiAgLnVzZXItY29udGVudCBwLFxuICAuY29tbWVudC1jb250ZW50IHAsXG4gIC51c2VyLWNvbnRlbnQgdGFibGUsXG4gIC5jb21tZW50LWNvbnRlbnQgdGFibGUsXG4gIC51c2VyLWNvbnRlbnQgdWwsXG4gIC5jb21tZW50LWNvbnRlbnQgdWwge1xuICAgIGNvbG9yOiAjMTExMTExO1xuICAgIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMS4yNWVtOyB9XG4gIC51c2VyLWNvbnRlbnQgbGFiZWwsIC5jb21tZW50LWNvbnRlbnQgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIFxuICAudXNlci1jb250ZW50IG1lbnUsXG4gIC5jb21tZW50LWNvbnRlbnQgbWVudSxcbiAgLnVzZXItY29udGVudCBvbCxcbiAgLmNvbW1lbnQtY29udGVudCBvbCxcbiAgLnVzZXItY29udGVudCB1bCxcbiAgLmNvbW1lbnQtY29udGVudCB1bCB7XG4gICAgcGFkZGluZzogMGVtIDBlbSAwZW0gMS41ZW07IH1cbiAgICAudXNlci1jb250ZW50IG1lbnUgbWVudSwgLmNvbW1lbnQtY29udGVudCBtZW51IG1lbnUsXG4gICAgLnVzZXItY29udGVudCBtZW51IG9sLFxuICAgIC5jb21tZW50LWNvbnRlbnQgbWVudSBvbCxcbiAgICAudXNlci1jb250ZW50IG1lbnUgdWwsXG4gICAgLmNvbW1lbnQtY29udGVudCBtZW51IHVsLFxuICAgIC51c2VyLWNvbnRlbnQgb2wgbWVudSxcbiAgICAuY29tbWVudC1jb250ZW50IG9sIG1lbnUsXG4gICAgLnVzZXItY29udGVudCBvbCBvbCxcbiAgICAuY29tbWVudC1jb250ZW50IG9sIG9sLFxuICAgIC51c2VyLWNvbnRlbnQgb2wgdWwsXG4gICAgLmNvbW1lbnQtY29udGVudCBvbCB1bCxcbiAgICAudXNlci1jb250ZW50IHVsIG1lbnUsXG4gICAgLmNvbW1lbnQtY29udGVudCB1bCBtZW51LFxuICAgIC51c2VyLWNvbnRlbnQgdWwgb2wsXG4gICAgLmNvbW1lbnQtY29udGVudCB1bCBvbCxcbiAgICAudXNlci1jb250ZW50IHVsIHVsLFxuICAgIC5jb21tZW50LWNvbnRlbnQgdWwgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBcbiAgLnVzZXItY29udGVudCB0YWJsZSxcbiAgLmNvbW1lbnQtY29udGVudCB0YWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDAuMDYyNWVtO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnVzZXItY29udGVudCB0YWJsZSB0ZCwgLmNvbW1lbnQtY29udGVudCB0YWJsZSB0ZCxcbiAgLnVzZXItY29udGVudCB0YWJsZSB0aCxcbiAgLmNvbW1lbnQtY29udGVudCB0YWJsZSB0aCB7XG4gICAgcGFkZGluZzogMC4yNWVtIDAuMzc1ZW07XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAudXNlci1jb250ZW50IHRhYmxlIHRoZWFkIHRkLCAuY29tbWVudC1jb250ZW50IHRhYmxlIHRoZWFkIHRkLFxuICAudXNlci1jb250ZW50IHRhYmxlIHRoLFxuICAuY29tbWVudC1jb250ZW50IHRhYmxlIHRoIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnVzZXItY29udGVudCB0YWJsZSB0aGVhZCB0ZCwgLmNvbW1lbnQtY29udGVudCB0YWJsZSB0aGVhZCB0ZCxcbiAgLnVzZXItY29udGVudCB0YWJsZSB0aGVhZCB0aCxcbiAgLmNvbW1lbnQtY29udGVudCB0YWJsZSB0aGVhZCB0aCB7XG4gICAgYmFja2dyb3VuZDogIzVEMDIwMjtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAudXNlci1jb250ZW50IHRhYmxlIHRmb290IHRkLCAuY29tbWVudC1jb250ZW50IHRhYmxlIHRmb290IHRkLFxuICAudXNlci1jb250ZW50IHRhYmxlIHRmb290IHRoLFxuICAuY29tbWVudC1jb250ZW50IHRhYmxlIHRmb290IHRoIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7IH1cbiAgLnVzZXItY29udGVudCB0YWJsZSB0cjpudGgtY2hpbGQoZXZlbikgdGQsIC5jb21tZW50LWNvbnRlbnQgdGFibGUgdHI6bnRoLWNoaWxkKGV2ZW4pIHRkLFxuICAudXNlci1jb250ZW50IHRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB0aCxcbiAgLmNvbW1lbnQtY29udGVudCB0YWJsZSB0cjpudGgtY2hpbGQoZXZlbikgdGgge1xuICAgIGJhY2tncm91bmQ6ICNFRUVFRUU7IH1cbiAgLnVzZXItY29udGVudCBwcmUsIC5jb21tZW50LWNvbnRlbnQgcHJlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxMTExMTE7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcbiAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMS44ZW07XG4gICAgcGFkZGluZzogMS4yZW0gMS44ZW07XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnVzZXItY29udGVudCBibG9ja3F1b3RlLCAuY29tbWVudC1jb250ZW50IGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1sZWZ0OiAwLjE4NzVlbSBzb2xpZCAjNUQwMjAyO1xuICAgIG1hcmdpbjogMGVtIDBlbSAxLjVlbTtcbiAgICBwYWRkaW5nOiAwZW0gMGVtIDBlbSAxLjVlbTsgfVxuICAudXNlci1jb250ZW50IGhyLCAuY29tbWVudC1jb250ZW50IGhyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xODc1ZW0gc29saWQgI0VFRUVFRTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTsgfVxuICAudXNlci1jb250ZW50IGltZywgLmNvbW1lbnQtY29udGVudCBpbWcge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAudXNlci1jb250ZW50IGlucHV0LCAuY29tbWVudC1jb250ZW50IGlucHV0LFxuICAudXNlci1jb250ZW50IC5zZWxlY3QsXG4gIC5jb21tZW50LWNvbnRlbnQgLnNlbGVjdCxcbiAgLnVzZXItY29udGVudCBzZWxlY3QsXG4gIC5jb21tZW50LWNvbnRlbnQgc2VsZWN0LFxuICAudXNlci1jb250ZW50IHRleHRhcmVhLFxuICAuY29tbWVudC1jb250ZW50IHRleHRhcmVhIHtcbiAgICBjb2xvcjogIzExMTExMTtcbiAgICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07IH1cbiAgLnVzZXItY29udGVudCBidXR0b24sIC5jb21tZW50LWNvbnRlbnQgYnV0dG9uLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZDogIzEzNDMwQztcbiAgICBib3JkZXI6IDA7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDAuNjI1ZW07XG4gICAgcGFkZGluZzogMC4yNWVtIDAuNzVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMsIGNvbG9yIDAuMTVzOyB9XG4gICAgLnVzZXItY29udGVudCBidXR0b246aG92ZXIsIC5jb21tZW50LWNvbnRlbnQgYnV0dG9uOmhvdmVyLFxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlcixcbiAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsXG4gICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwicmVzZXRcIl06aG92ZXIsXG4gICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmVzZXRcIl06aG92ZXIsXG4gICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMjk1NzA0O1xuICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGxlZnQ6IC05OTllbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLCAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLFxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwsXG4gICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAwLjVlbSAwLjVlbSAwLjVlbSAxLjVlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDo6YmVmb3JlLCAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOjpiZWZvcmUsXG4gICAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOjpiZWZvcmUsXG4gICAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMTM0MzBDO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAuMDYyNXJlbTtcbiAgICAgICAgY29sb3I6ICMxMzQzMEM7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFwwMDIwXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGhlaWdodDogMS4xMjVlbTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDYyNWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiAwLjM3NWVtO1xuICAgICAgICB3aWR0aDogMS4xMjVlbTsgfVxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSwgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLCAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSxcbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG4gICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSxcbiAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgb3V0bGluZTogLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yIGF1dG8gNXB4OyB9XG4gICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl1bZGlzYWJsZWRdICsgbGFiZWw6OmJlZm9yZSwgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl1bZGlzYWJsZWRdICsgbGFiZWw6OmJlZm9yZSxcbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXVtkaXNhYmxlZF0gKyBsYWJlbDo6YmVmb3JlLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdW2Rpc2FibGVkXSArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogI0VFRUVFRTsgfVxuICBcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YmVmb3JlLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOjpiZWZvcmUge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSwgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi74CMXCI7XG4gICAgZm9udC1mYW1pbHk6IFwiZm9udGF3ZXNvbWVcIiwgc2Fucy1zZXJpZjsgfVxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSwgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi74SRXCI7XG4gICAgZm9udC1mYW1pbHk6IFwiZm9udGF3ZXNvbWVcIiwgc2Fucy1zZXJpZjsgfVxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJjb2xvclwiXSwgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwicmFuZ2VcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhbmdlXCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAudXNlci1jb250ZW50IHNlbGVjdCxcbiAgLmNvbW1lbnQtY29udGVudCBzZWxlY3QsXG4gIC51c2VyLWNvbnRlbnQgLnNlbGVjdCxcbiAgLmNvbW1lbnQtY29udGVudCAuc2VsZWN0LFxuICAudXNlci1jb250ZW50IHRleHRhcmVhLFxuICAuY29tbWVudC1jb250ZW50IHRleHRhcmVhIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMxMzQzMEM7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDBlbSAwZW0gMC42MjVlbTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aWR0aDogMTAwJTsgfVxuICBcbiAgLnVzZXItY29udGVudCAuc2VsZWN0LFxuICAuY29tbWVudC1jb250ZW50IC5zZWxlY3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51c2VyLWNvbnRlbnQgLnNlbGVjdDo6YmVmb3JlLCAuY29tbWVudC1jb250ZW50IC5zZWxlY3Q6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLvg5xcIjtcbiAgICBmb250LWZhbWlseTogXCJmb250YXdlc29tZVwiLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMS43NWVtO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLnVzZXItY29udGVudCAuc2VsZWN0OjphZnRlciwgLmNvbW1lbnQtY29udGVudCAuc2VsZWN0OjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogIzEzNDMwQztcbiAgICBib3R0b206IDA7XG4gICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEuNzVlbTtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC51c2VyLWNvbnRlbnQgLnNlbGVjdCBzZWxlY3QsIC5jb21tZW50LWNvbnRlbnQgLnNlbGVjdCBzZWxlY3Qge1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMC41NjI1ZW0gMy4zNzVlbSAwLjY4NzVlbSAwLjc1ZW07XG4gICAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbiAgICB0ZXh0LW92ZXJmbG93OiBcIlwiO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnVzZXItY29udGVudCAuc2VsZWN0IHNlbGVjdDo6LW1zLWV4cGFuZCwgLmNvbW1lbnQtY29udGVudCAuc2VsZWN0IHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnVzZXItY29udGVudCAuc2VsZWN0IHNlbGVjdDpob3ZlciwgLmNvbW1lbnQtY29udGVudCAuc2VsZWN0IHNlbGVjdDpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnVzZXItY29udGVudCAuc2VsZWN0IG9wdGlvbiwgLmNvbW1lbnQtY29udGVudCAuc2VsZWN0IG9wdGlvbiB7XG4gICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC51c2VyLWNvbnRlbnQgLnNlbGVjdCBvcHRpb246aG92ZXIsIC5jb21tZW50LWNvbnRlbnQgLnNlbGVjdCBvcHRpb246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI0RERERERDsgfVxuICBcbiAgLnVzZXItY29udGVudCB0ZXh0YXJlYSxcbiAgLmNvbW1lbnQtY29udGVudCB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDYuMjVlbTtcbiAgICBtaW4td2lkdGg6IDEwMCU7IH1cbiAgLnVzZXItY29udGVudCAuYWxpZ25jZW50ZXIsIC5jb21tZW50LWNvbnRlbnQgLmFsaWduY2VudGVyLFxuICAudXNlci1jb250ZW50IC5hbGlnbmxlZnQsXG4gIC5jb21tZW50LWNvbnRlbnQgLmFsaWdubGVmdCxcbiAgLnVzZXItY29udGVudCAuYWxpZ25yaWdodCxcbiAgLmNvbW1lbnQtY29udGVudCAuYWxpZ25yaWdodCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG8gMS44NzVlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEFydGljbGUgQ2FyZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uYXJ0aWNsZS1jYXJkIHtcbiAgcGFkZGluZzogMC45Mzc1ZW07IH1cblxuLmFydGljbGUtY2FyZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4xODc1ZW0gc29saWQgI0VFRUVFRTtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjkzNzVlbTsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1iYW5uZXIge1xuICBwYWRkaW5nOiA1ZW0gMC45Mzc1ZW0gMC45Mzc1ZW07IH1cblxuLmFydGljbGUtY2FyZC4tZXhjZXJwdCwgLmFydGljbGUtY2FyZC4tZXhjZXJwdDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5hcnRpY2xlLWNhcmQuLW1hcCB7XG4gIGhlaWdodDogNjIuNWVtOyB9XG5cbi5hcnRpY2xlLWNhcmQuLXBhcnRuZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmFydGljbGUtY2FyZCA+IC5pbWFnZSB7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiAxLjg3NWVtIDBlbSAwZW07IH1cblxuLmFydGljbGUtY2FyZC4tZXhjZXJwdCA+IC5pbWFnZSB7XG4gIHBhZGRpbmc6IDBlbSAwZW0gMC45Mzc1ZW07IH1cblxuLmFydGljbGUtY2FyZC4tcGFydG5lciA+IC5pbWFnZSB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmFydGljbGUtY2FyZCA+IC5pbWFnZSA+IGltZyxcbi5hcnRpY2xlLWNhcmQgPiAuaW1hZ2UgPiBhID4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmFydGljbGUtY2FyZC4tcGFydG5lciA+IC5pbWFnZSA+IC5jYXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMS4yNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmFydGljbGUtY2FyZC4tcGFydG5lciA+IC5pbWFnZSA+IC5jYXB0aW9uID4gLnRleHQsIC5hcnRpY2xlLWNhcmQuLXBhcnRuZXIgPiAuaW1hZ2UgPiAuY2FwdGlvbiA+IC5uaW5qYS1mb3Jtcy1yZXF1aXJlZC1pdGVtcyB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG5cbi5hcnRpY2xlLWNhcmQgPiAuaGVhZGVyIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5hcnRpY2xlLWNhcmQuLWJhbm5lciA+IC5oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWFydGljbGUtY2FyZC1oZWFkZXItYmFubmVyX21vYmlsZS5wbmdcIikgY2VudGVyIGJvdHRvbSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAzMC4xMjVlbTtcbiAgbGVmdDogMC45Mzc1ZW07XG4gIHBhZGRpbmc6IDAuMzEyNWVtIDEuMjVlbSAxLjc1ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NWVtKTtcbiAgei1pbmRleDogMjsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1leGNlcnB0ID4gLmhlYWRlciB7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjVlbTsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1iYW5uZXIgPiAuaGVhZGVyID4gLnRpdGxlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMS43NWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1leGNlcnB0ID4gLmhlYWRlciA+IC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1leGNlcnB0ID4gLmNvbnRlbnQgPiAudGV4dCwgLmFydGljbGUtY2FyZC4tZXhjZXJwdCA+IC5jb250ZW50ID4gLm5pbmphLWZvcm1zLXJlcXVpcmVkLWl0ZW1zIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCYW5uZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmJhbm5lci13cmFwcGVyIHtcbiAgYmFja2dyb3VuZDogIzlGMDAwMDsgfVxuXG4uYmFubmVyLXdyYXBwZXIuLW5vdGljZSB7XG4gIGJhY2tncm91bmQ6ICNlZDdkMzU7IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgbWF4LXdpZHRoOiAxMDByZW07XG4gIG1pbi1oZWlnaHQ6IDVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAudGl0bGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMWVtIDQuMzMzMzNlbSAxZW0gMy41ODMzM2VtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC50aXRsZSA+IC5mYSB7XG4gIGNvbG9yOiAjRjgzNjM2O1xuICBmb250LXNpemU6IDEuNzVlbTtcbiAgbGVmdDogMC43MTQyOWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLmJhbm5lci13cmFwcGVyLi1ub3RpY2UgPiAuYmFubmVyID4gLnRpdGxlID4gLmZhIHtcbiAgY29sb3I6ICNmNmQyYmI7IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5leGNlcnB0IHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE2NjY3ZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMWVtIDEuMjVlbTsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmV4Y2VycHQgPiBhIHtcbiAgY29sb3I6ICNGODM2MzY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uYmFubmVyLXdyYXBwZXIuLW5vdGljZSA+IC5iYW5uZXIgPiAuZXhjZXJwdCA+IGEge1xuICBjb2xvcjogI2Y2ZDJiYjsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQge1xuICBwYWRkaW5nOiAxLjZlbSAyZW07IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCBvbCwgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LmNvbW1lbnQtY29udGVudCBvbCxcbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29udGVudC51c2VyLWNvbnRlbnQgcCxcbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29udGVudC5jb21tZW50LWNvbnRlbnQgcCxcbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29udGVudC51c2VyLWNvbnRlbnQgdGFibGUsXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQuY29tbWVudC1jb250ZW50IHRhYmxlLFxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCB1bCxcbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29udGVudC5jb21tZW50LWNvbnRlbnQgdWwge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOTM3NWVtO1xuICBsaW5lLWhlaWdodDogMS42ZW07IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCA+ICo6bGFzdC1jaGlsZCwgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LmNvbW1lbnQtY29udGVudCA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCBhLCAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQuY29tbWVudC1jb250ZW50IGEge1xuICBjb2xvcjogI0Y4MzYzNjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29udGVudC51c2VyLWNvbnRlbnQgYSwgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LmNvbW1lbnQtY29udGVudCBhIHtcbiAgY29sb3I6ICNmNmQyYmI7IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5idXR0b24sIC5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29tbWVudC1yZXBseS1saW5rIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBoZWlnaHQ6IDRlbTtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogNC4zMzMzM2VtOyB9XG5cbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuYnV0dG9uID4gLmZhLCAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbW1lbnQtcmVwbHktbGluayA+IC5mYSB7XG4gIGNvbG9yOiAjRjgzNjM2O1xuICBmb250LXNpemU6IDEuNzVlbTtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4uYmFubmVyLXdyYXBwZXIuLW5vdGljZSA+IC5iYW5uZXIgPiAuYnV0dG9uID4gLmZhLCAuYmFubmVyLXdyYXBwZXIuLW5vdGljZSA+IC5iYW5uZXIgPiAuY29tbWVudC1yZXBseS1saW5rID4gLmZhIHtcbiAgY29sb3I6ICNmNmQyYmI7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQnV0dG9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5idXR0b24sIC5jb21tZW50LXJlcGx5LWxpbmsge1xuICBiYWNrZ3JvdW5kOiAjMTM0MzBDO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNWVtO1xuICBwYWRkaW5nOiAwLjZlbSAwLjhlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzLCBjb2xvciAwLjE1czsgfVxuXG4uYnV0dG9uOmhvdmVyLCAuY29tbWVudC1yZXBseS1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzI5NTcwNDtcbiAgY29sb3I6ICNGRkZGRkY7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDYWxsb3V0IENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY2FsbG91dC1jYXJkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVlbTsgfVxuXG4uY2FsbG91dC1jYXJkID4gLmNhbGxvdXQtaWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7IH1cblxuLmNhbGxvdXQtY2FyZCA+IC5jYWxsb3V0LWljb24gPiAuY2FsbG91dC1pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDBlbSBhdXRvIDEuMjVlbTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5jYWxsb3V0LWNhcmQgPiAuY2FsbG91dC10aXRsZSB7XG4gIGNvbG9yOiAjYzBjMmFhO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTExMTFlbTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmNhbGxvdXQtY2FyZCA+IC5jYWxsb3V0LXRpdGxlID4gLmNhbGxvdXQtbGluayB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzOyB9XG5cbi5jYWxsb3V0LWNhcmQgPiAuY2FsbG91dC10aXRsZSA+IC5jYWxsb3V0LWxpbms6aG92ZXIge1xuICBjb2xvcjogI0VFRUVFRTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb21tZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbW1lbnRzIHtcbiAgYm9yZGVyLXRvcDogMC4xODc1ZW0gc29saWQgI0VFRUVFRTtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi10b3A6IDIuMTg3NWVtO1xuICBwYWRkaW5nLXRvcDogMi4xODc1ZW07IH1cblxuLmNvbW1lbnRzLXRpdGxlIHtcbiAgY29sb3I6ICM1RDAyMDI7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uY29tbWVudC1saXN0LFxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDBlbSAwZW0gM2VtO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5jb21tZW50LWxpc3QgLmNoaWxkcmVuLFxuICAuY29tbWVudC1saXN0IC5jaGlsZHJlbiAuY2hpbGRyZW4ge1xuICAgIG1hcmdpbjogMDsgfVxuXG4uY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDJlbTsgfVxuXG4uY29tbWVudCB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5jb21tZW50LWJvZHkge1xuICBib3JkZXItYm90dG9tOiAwLjE4NzVyZW0gc29saWQgI0VFRUVFRTtcbiAgcGFkZGluZzogMS4yNWVtIDBlbTsgfVxuXG4uY29tbWVudC1tZXRhIHtcbiAgY29sb3I6ICMxMTExMTE7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW46IDBlbSAwZW0gMC41ZW07XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jb21tZW50LWF1dGhvciBhIHtcbiAgY29sb3I6ICMxMzQzMEM7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jb21tZW50LW1ldGFkYXRhIGEge1xuICBjb2xvcjogIzEzNDMwQztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jb21tZW50LWVkaXQtbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogLTk5OWVtO1xuICB3aWR0aDogMWVtOyB9XG4gIC5jb21tZW50LWVkaXQtbGluazo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIu+BgFwiO1xuICAgIGZvbnQtZmFtaWx5OiBcImZvbnRhd2Vzb21lXCIsIHNhbnMtc2VyaWY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogMDtcbiAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgdG9wOiAwOyB9XG5cbi5jb21tZW50LXJlcGx5LWxpbmsge1xuICBtYXJnaW46IDA7IH1cblxuLmNvbW1lbnRzLW5hdiB7XG4gIGNvbG9yOiAjRUVFRUVFO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjg2OTI4ZW07XG4gIG1hcmdpbjogMGVtIDBlbSAxLjExMTExZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY29tbWVudHMtbmF2IC5wYWdlLW51bWJlcnMge1xuICBib3JkZXI6IDAuMTg3NXJlbSBzb2xpZCAjRUVFRUVFO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiAjRUVFRUVFO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMi4yMjIyMmVtO1xuICBtYXJnaW46IDBlbSAwLjE2NjY3ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMsIGNvbG9yIDAuMTVzO1xuICB3aWR0aDogMi4yMjIyMmVtOyB9XG4gIC5jb21tZW50cy1uYXYgLnBhZ2UtbnVtYmVyczpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTM0MzBDO1xuICAgIGNvbG9yOiAjMTM0MzBDOyB9XG4gIC5jb21tZW50cy1uYXYgLnBhZ2UtbnVtYmVycy5jdXJyZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAjMTExMTExO1xuICAgIGJvcmRlci1jb2xvcjogIzExMTExMTtcbiAgICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4uY29tbWVudHMtbmF2IC5wcmV2LnBhZ2UtbnVtYmVyczplbXB0eSxcbi5jb21tZW50cy1uYXYgLm5leHQucGFnZS1udW1iZXJzOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY29tbWVudC1mb3JtLXRpdGxlIHtcbiAgY29sb3I6ICM1RDAyMDI7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjI2NjY3ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmNvbW1lbnQtbG9nZ2VkLWluIHtcbiAgY29sb3I6ICMxMTExMTE7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNDQ0NDRlbTsgfVxuXG4uY29tbWVudC1sb2dnZWQtaW4gYSB7XG4gIGNvbG9yOiAjMTM0MzBDO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zZm9ybTogY29sb3IgMC4xNXM7IH1cbiAgLmNvbW1lbnQtbG9nZ2VkLWluIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMjk1NzA0OyB9XG5cbi5jb21tZW50LWlucHV0IHtcbiAgYm9yZGVyOiAwLjE4NzVyZW0gc29saWQgIzEzNDMwQztcbiAgY29sb3I6ICMxMTExMTE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMGVtIDBlbSAxLjExMTExZW07XG4gIHBhZGRpbmc6IDAuNjY2NjdlbSAwLjg4ODg5ZW07XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogRm9vdGVyIENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZvb3Rlci1jYXJkIHtcbiAgb3JkZXI6IDI7XG4gIHBhZGRpbmc6IDAuNjI1ZW0gMGVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZvb3Rlci1jYXJkLi1maXJzdG1vYmlsZSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5mb290ZXItY2FyZCAudGl0bGUge1xuICBjb2xvcjogIzVEMDIwMjtcbiAgZm9udC1zaXplOiAxLjU2MjVlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5mb290ZXItY2FyZCAudGV4dCwgLmZvb3Rlci1jYXJkIC5uaW5qYS1mb3Jtcy1yZXF1aXJlZC1pdGVtcyB7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjkzNzVlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwZW0gMGVtIDEuMzMzMzNlbTsgfVxuXG4uZm9vdGVyLWNhcmQgYSxcbi5mb290ZXItY2FyZCAubGluayB7XG4gIGNvbG9yOiAjMTExMTExO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzOyB9XG5cbi5mb290ZXItY2FyZCBhOmhvdmVyLFxuLmZvb3Rlci1jYXJkIC5saW5rOmhvdmVyIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmZvb3Rlci1jYXJkIC5sb2dvIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNS4zMTI1ZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBHYWxsZXJ5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZ2FsbGVyeSAuZ2FsbGVyeS1pdGVtIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDFlbSBhdXRvOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIGlmcmFtZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaWZyYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uaWZyYW1lID4gaWZyYW1lIHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMb2dvICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5sb2dvID4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTWFwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuI21hcCB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxOyB9XG5cbi5pbmZvYm94LWNvbnRlbnQge1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmc6IDAuNzVlbSAwZW0gMC43NWVtIDEuNWVtOyB9XG5cbi5pbmZvYm94LWltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uaW5mb2JveC10aXRsZSB7XG4gIGNvbG9yOiAjNUQwMjAyO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5pbmZvYm94LXRleHQge1xuICBjb2xvcjogIzExMTExMTtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmluZm9ib3gtbGluayB7XG4gIGNvbG9yOiAjNUQwMjAyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzOyB9XG5cbi5pbmZvYm94LWxpbmsuLWFkZHJlc3Mge1xuICBjb2xvcjogIzExMTExMTsgfVxuXG4uaW5mb2JveC1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICM3NTAyMDI7IH1cblxuLmluZm9ib3gtbGluay4tYWRkcmVzczpob3ZlciB7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1lbnUgQnV0b24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubWVudS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjMTM0MzBDO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDIuMjVyZW07IH1cblxuLm1lbnUtYnV0dG9uID4gLmZhIHtcbiAgYmFja2dyb3VuZDogIzEzNDMwQztcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjgyNWVtOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1lbnUgTGlzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBnZW5lcmljIHZhcmlhbnQgKi9cbi5tZW51LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm1lbnUtbGlzdCAubWVudS1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubWVudS1saXN0IC5tZW51LWxpbmsge1xuICBjb2xvcjogIzVEMDIwMjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAwLjVlbSAwLjc1ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7IH1cblxuLm1lbnUtbGlzdCAubWVudS1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICM3NTAyMDI7IH1cblxuLm1lbnUtbGlzdCAubWVudS10b2dnbGUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjNUQwMjAyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogbm9uZTtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGhlaWdodDogMi42NjY2N2VtO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xuICB3aWR0aDogMi42NjY2N2VtOyB9XG5cbi5tZW51LWxpc3QgLm1lbnUtdG9nZ2xlOmhvdmVyIHtcbiAgY29sb3I6ICM3NTAyMDI7IH1cblxuLm1lbnUtbGlzdCAubWVudS10b2dnbGUgPiAuZmEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyLjY2NjY3ZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjY2NjY3ZW07XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qIHN1Ym1lbnUgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC4tc3VibWVudSB7XG4gIGJhY2tncm91bmQ6ICM1RDAyMDI7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsZWZ0OiAtOTk5ZW07XG4gIG1pbi13aWR0aDogOS4zNzVlbTtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTllbTtcbiAgdHJhbnNpdGlvbjogbGVmdCAwcyAwLjE1cywgb3BhY2l0eSAwLjE1cywgdG9wIDBzIDAuMTVzOyB9XG5cbi5tZW51LWl0ZW06aG92ZXIgPiAubWVudS1saXN0Li1zdWJtZW51IHtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMTtcbiAgdG9wOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDBzIDAuMjVzLCBvcGFjaXR5IDAuMTVzIDAuMjVzLCB0b3AgMHMgMC4yNXM7IH1cblxuLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1pdGVtIHtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1saW5rIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDAuMjg1NzFlbSAwLjg1NzE0ZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXM7IH1cblxuLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpOyB9XG5cbi5tZW51LWxpc3QuLXN1Ym1lbnUgLm1lbnUtaXRlbTpmaXJzdC1jaGlsZCA+IC5tZW51LWxpbmsge1xuICBwYWRkaW5nLXRvcDogMC41NzE0M2VtOyB9XG5cbi5tZW51LWxpc3QuLXN1Ym1lbnUgLm1lbnUtaXRlbTpsYXN0LWNoaWxkID4gLm1lbnUtbGluayB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjU3MTQzZW07IH1cblxuLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS10b2dnbGUge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1czsgfVxuXG4ubWVudS1saXN0Li1zdWJtZW51IC5tZW51LXRvZ2dsZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsgfVxuXG4vKiBzdWJtZW51IGZseW91dCB2YXJpYW50ICovXG4ubWVudS1saXN0Li1zdWJtZW51Li1mbHlvdXQge1xuICBiYWNrZ3JvdW5kOiAjNzUwMjAyO1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDA7IH1cblxuLm1lbnUtaXRlbTpob3ZlciA+IC5tZW51LWxpc3QuLXN1Ym1lbnUuLWZseW91dCB7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogMDsgfVxuXG4vKiB2ZXJ0aWNhbCB2YXJpYW50ICovXG4ubWVudS1saXN0Li12ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5tZW51LWxpc3QuLXZlcnRpY2FsIC5tZW51LWxpc3QuLXN1Ym1lbnUge1xuICBsZWZ0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB0b3A6IGF1dG87XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4yNXM7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5tZW51LWxpc3QuLXZlcnRpY2FsIC5tZW51LWxpc3QuLXN1Ym1lbnUuLWFjdGl2ZSB7XG4gIG1heC1oZWlnaHQ6IDI1ZW07XG4gIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC41czsgfVxuXG4ubWVudS1saXN0Li12ZXJ0aWNhbCAubWVudS1pdGVtLFxuLm1lbnUtbGlzdC4tdmVydGljYWwgLm1lbnUtbGlzdC4tc3VibWVudSA+IC5tZW51LWl0ZW0sXG4ubWVudS1saXN0Li12ZXJ0aWNhbCAubWVudS1saXN0Li1zdWJtZW51Li1mbHlvdXQgPiAubWVudS1pdGVtIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbG9hdDogbm9uZTsgfVxuXG4ubWVudS1saXN0Li12ZXJ0aWNhbCAubWVudS1saW5rIHtcbiAgd2lkdGg6IDA7IH1cblxuLyogbmF2IHZhcmlhbnQgKi9cbi5tZW51LWxpc3QuLW5hdiB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5tZW51LWxpc3QuLW5hdiAubWVudS1pdGVtIHtcbiAgZmxleDogbm9uZTsgfVxuXG4ubWVudS1saXN0Li1uYXYgLm1lbnUtaXRlbS4tbG9nbyB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5tZW51LWxpc3QuLW5hdiAubWVudS1saW5rIHtcbiAgY29sb3I6ICMxMzQzMEM7XG4gIHBhZGRpbmc6IDAuNjI1ZW0gMS4yNWVtOyB9XG5cbi5tZW51LWxpc3QuLW5hdiAubWVudS1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICMyOTU3MDQ7IH1cblxuLm1lbnUtbGlzdC4tbmF2IC5tZW51LWl0ZW0uLWxvZ28gPiAubWVudS1saW5rIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG5cbi5tZW51LWxpc3QuLW5hdiAubWVudS1pdGVtLi1sb2dvID4gLm1lbnUtbGluayA+IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4ubWVudS1saXN0Li1uYXYgLm1lbnUtbGlzdC4tc3VibWVudSB7XG4gIGJhY2tncm91bmQ6ICMxMzQzMEM7IH1cblxuLm1lbnUtbGlzdC4tbmF2IC5tZW51LWxpc3QuLXN1Ym1lbnUgLm1lbnUtbGluayB7XG4gIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5tZW51LWxpc3QuLW5hdiAubWVudS1saXN0Li1zdWJtZW51IC5tZW51LWxpbms6aG92ZXIge1xuICBjb2xvcjogI0VFRUVFRTsgfVxuXG4ubWVudS1saXN0Li1uYXYgLm1lbnUtbGlzdC4tc3VibWVudS4tZmx5b3V0IHtcbiAgYmFja2dyb3VuZDogIzI5NTcwNDsgfVxuXG4vKiBuYXYgdmVydGljYWwgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC4tbmF2Li12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjQxNjY3ZW0gMGVtOyB9XG5cbi5tZW51LWxpc3QuLW5hdi4tdmVydGljYWwgLm1lbnUtbGluayB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAwLjQxNjY3ZW0gMC44MzMzM2VtOyB9XG5cbi5tZW51LWxpc3QuLW5hdi4tdmVydGljYWwgLm1lbnUtbGluazpob3ZlciB7XG4gIGNvbG9yOiAjRUVFRUVFOyB9XG5cbi5tZW51LWxpc3QuLW5hdi4tdmVydGljYWwgLm1lbnUtdG9nZ2xlIHtcbiAgY29sb3I6ICNGRkZGRkY7IH1cblxuLm1lbnUtbGlzdC4tbmF2Li12ZXJ0aWNhbCAubWVudS10b2dnbGU6aG92ZXIge1xuICBjb2xvcjogI0VFRUVFRTsgfVxuXG4ubWVudS1saXN0Li1uYXYuLXZlcnRpY2FsIC5tZW51LWxpc3QuLXN1Ym1lbnUgLm1lbnUtbGluayB7XG4gIHBhZGRpbmc6IDAuNDE2NjdlbSAwLjgzMzMzZW07IH1cblxuLyogc2l0ZW1hcCB2YXJpYW50ICovXG4ubWVudS1saXN0Li1zaXRlbWFwIC5tZW51LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lOyB9XG5cbi5tZW51LWxpc3QuLXNpdGVtYXAgLm1lbnUtaXRlbTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLVwiO1xuICBtYXJnaW46IDBlbSAwLjE2NjY3ZW07IH1cblxuLm1lbnUtbGlzdC4tc2l0ZW1hcCAubWVudS1saW5rIHtcbiAgY29sb3I6ICMxMTExMTE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMDsgfVxuXG4ubWVudS1saXN0Li1zaXRlbWFwIC5tZW51LWxpbms6aG92ZXIge1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4vKiBtZXRhIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QuLW1ldGEge1xuICBjb2xvcjogIzEzNDMwQztcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLm1lbnUtbGlzdC4tbWV0YSAubWVudS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBwYWRkaW5nOiAwZW0gMC42NjY2N2VtIDBlbSAwZW07IH1cblxuLm1lbnUtbGlzdC4tbWV0YSAubWVudS1saW5rLFxuLm1lbnUtbGlzdC4tbWV0YSBhIHtcbiAgY29sb3I6ICMxMzQzMEM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5tZW51LWxpc3QuLW1ldGEgLm1lbnUtbGluazpob3Zlcixcbi5tZW51LWxpc3QuLW1ldGEgYTpob3ZlciB7XG4gIGNvbG9yOiAjMjk1NzA0OyB9XG5cbi5tZW51LWxpc3QuLW1ldGEgLmZhIHtcbiAgbWFyZ2luOiAwZW0gMC4yMjIyMmVtIDBlbSAwZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTmluamEgRm9ybXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5ocC13cmFwIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmYtZm9ybS1sYXlvdXQge1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7IH1cblxuLm5mLWZvcm0tZmllbGRzLXJlcXVpcmVkIHtcbiAgbWFyZ2luLWJvdHRvbTogMmVtOyB9XG5cbi5uaW5qYS1mb3Jtcy1yZXEtc3ltYm9sIHtcbiAgY29sb3I6ICM5RjAwMDA7IH1cblxuLmZpZWxkLXdyYXAubGFiZWwtbGVmdCwgLmZpZWxkLXdyYXAubGFiZWwtcmlnaHQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmllbGQtd3JhcC5sYWJlbC1sZWZ0IGxhYmVsLFxuLmZpZWxkLXdyYXAubGFiZWwtcmlnaHQgbGFiZWwge1xuICBmbGV4OiBub25lOyB9XG5cbi5maWVsZC13cmFwLmxhYmVsLWFib3ZlIGxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVlbTsgfVxuXG4uZmllbGQtd3JhcC5sYWJlbC1iZWxvdyBsYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1ZW07XG4gIG1hcmdpbi10b3A6IDAuMzc1ZW07IH1cblxuLmZpZWxkLXdyYXAubGFiZWwtbGVmdCBsYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMC43NWVtOyB9XG5cbi5maWVsZC13cmFwLmxhYmVsLXJpZ2h0IGxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNzVlbTsgfVxuXG4uZmllbGQtd3JhcC5sYWJlbC1iZWxvdyAubmluamEtZm9ybXMtZmllbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5maWVsZC13cmFwLmxhYmVsLWxlZnQgLm5pbmphLWZvcm1zLWZpZWxkLFxuLmZpZWxkLXdyYXAubGFiZWwtcmlnaHQgLm5pbmphLWZvcm1zLWZpZWxkIHtcbiAgZmxleDogMSAxIGF1dG87IH1cblxuLmZpZWxkLXdyYXAubGlzdC1zZWxlY3Qtd3JhcCAubmluamEtZm9ybXMtZmllbGQge1xuICBtYXJnaW46IDBlbSAwZW0gMC42MjVlbTtcbiAgcGFkZGluZzogMC43MTg3NWVtIDFlbTsgfVxuXG4uZmllbGQtd3JhcC5odG1sLXdyYXAgaDMge1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTsgfVxuXG4uZmllbGQtd3JhcCAubmYtbGFiZWwtc3BhbiB7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTZWFyY2ggZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlYXJjaC1mb3JtIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzEzNDMwQztcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLnNlYXJjaC1mb3JtIDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2VhcmNoLWZvcm0gPiAubGFiZWwge1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4uc2VhcmNoLWZvcm0gPiAuaW5wdXQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAjMTExMTExO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMC41ZW0gMC43NWVtO1xuICB3aWR0aDogMDsgfVxuXG4uc2VhcmNoLWZvcm0gPiAuc3VibWl0IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZmxleDogbm9uZTtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC41ZW0gMC43NWVtOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFN0b3J5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc3Rvcnkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWdyZWVuLmpwZ1wiKSByaWdodCBjZW50ZXIgbm8tcmVwZWF0ICMxMzQzMEM7XG4gIHBhZGRpbmc6IDIuMTg3NWVtIDEuNTYyNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnN0b3J5Om50aC1jaGlsZCgxKSB7XG4gIHotaW5kZXg6IDQ7IH1cblxuLnN0b3J5Om50aC1jaGlsZCgyKSB7XG4gIHotaW5kZXg6IDM7IH1cblxuLnN0b3J5Om50aC1jaGlsZCgzKSB7XG4gIHotaW5kZXg6IDI7IH1cblxuLnN0b3J5Om50aC1jaGlsZCg0KSB7XG4gIHotaW5kZXg6IDE7IH1cblxuLnN0b3J5Li1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yZWQuanBnXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0ICM1RDAyMDI7IH1cblxuLnN0b3J5Li1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWJsdWUuanBnXCIpIGxlZnQgY2VudGVyIG5vLXJlcGVhdCAjMDkwRjI0OyB9XG5cbi5zdG9yeS4tdGVydGlhcnkge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWdyYXkuanBnXCIpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQgIzRFNEU0RTsgfVxuXG4uc3Rvcnk6Zmlyc3QtY2hpbGQ6OmJlZm9yZSwgLnN0b3J5OjphZnRlciB7XG4gIGJvcmRlci1sZWZ0OiAxLjEyNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDEuMTI1ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDAuNzVlbSBzb2xpZCAjMTM0MzBDO1xuICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB3aWR0aDogMDsgfVxuXG4uc3Rvcnk6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNGRkZGRkY7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiA1MCU7XG4gIHRvcDogMDsgfVxuXG4uc3Rvcnk6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnN0b3J5Li1wcmltYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM1RDAyMDI7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxLjU2MjVlbTsgfVxuXG4uc3RvcnkuLXNlY29uZGFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjMDkwRjI0O1xuICBsZWZ0OiAxLjU2MjVlbTsgfVxuXG4uc3RvcnkuLXRlcnRpYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM0RTRFNEU7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiA1MCU7IH1cblxuLnN0b3J5IC51c2VyLWNvbnRlbnQgaDEsIC5zdG9yeSAuY29tbWVudC1jb250ZW50IGgxLFxuLnN0b3J5IC51c2VyLWNvbnRlbnQgaDIsXG4uc3RvcnkgLmNvbW1lbnQtY29udGVudCBoMixcbi5zdG9yeSAudXNlci1jb250ZW50IGgzLFxuLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgaDMsXG4uc3RvcnkgLnVzZXItY29udGVudCBoNCxcbi5zdG9yeSAuY29tbWVudC1jb250ZW50IGg0LFxuLnN0b3J5IC51c2VyLWNvbnRlbnQgaDUsXG4uc3RvcnkgLmNvbW1lbnQtY29udGVudCBoNSxcbi5zdG9yeSAudXNlci1jb250ZW50IGg2LFxuLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgaDYsXG4uc3RvcnkgLnVzZXItY29udGVudCBtZW51LFxuLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgbWVudSxcbi5zdG9yeSAudXNlci1jb250ZW50IG9sLFxuLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgb2wsXG4uc3RvcnkgLnVzZXItY29udGVudCBwLFxuLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgcCxcbi5zdG9yeSAudXNlci1jb250ZW50IHRhYmxlLFxuLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgdGFibGUsXG4uc3RvcnkgLnVzZXItY29udGVudCB1bCxcbi5zdG9yeSAuY29tbWVudC1jb250ZW50IHVsIHtcbiAgY29sb3I6ICNGRkZGRkY7IH1cblxuLnN0b3J5IC51c2VyLWNvbnRlbnQgaDIuLWFsdCwgLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgaDIuLWFsdCB7XG4gIG1hcmdpbjogMDsgfVxuXG4uc3RvcnkgLnVzZXItY29udGVudCA+ICo6bGFzdC1jaGlsZCwgLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3dpcGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qKlxuICogU3dpcGVyIDQuNS4wXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cDovL3d3dy5pZGFuZ2Vyby51cy9zd2lwZXIvXG4gKlxuICogQ29weXJpZ2h0IDIwMTQtMjAxOSBWbGFkaW1pciBLaGFybGFtcGlkaVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBGZWJydWFyeSAyMiwgMjAxOVxuICovXG4uc3dpcGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIC8qIEZpeCBvZiBXZWJraXQgZmxpY2tlcmluZyAqL1xuICB6LWluZGV4OiAxOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLnN3aXBlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAtbXMtZmxleC1uZWdhdGl2ZTogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtOyB9XG5cbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qIEF1dG8gSGVpZ2h0ICovXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0LFxuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRlIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtOyB9XG5cbi8qIDNEIEVmZmVjdHMgKi9cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTIwMHB4O1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItd3JhcHBlcixcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCByaWdodCB0b3AsIGxlZnQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpOyB9XG5cbi8qIElFMTAgV2luZG93cyBQaG9uZSA4IEZpeGVzICovXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtaG9yaXpvbnRhbCxcbi5zd2lwZXItY29udGFpbmVyLXdwOC1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7IH1cblxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsLFxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7IH1cblxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMjdweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBtYXJnaW4tdG9wOiAtMjJweDtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyN3B4IDQ0cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bzsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDA3YWZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgcmlnaHQ6IDEwcHg7XG4gIGxlZnQ6IGF1dG87IH1cblxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2ssXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyMzAwMDAwMCclMkYlM0UlM0MlMkZzdmclM0VcIik7IH1cblxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIG9wYWNpdHk7XG4gIC1vLXRyYW5zaXRpb246IDMwMG1zIG9wYWNpdHk7XG4gIHRyYW5zaXRpb246IDMwMG1zIG9wYWNpdHk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogMTA7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogQnVsbGV0cyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1tYWluIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC4yOyB9XG5cbmJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICByaWdodDogMTBweDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiA2cHggMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDIwMG1zIHRvcCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IDIwMG1zIHRvcCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wO1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHRvcDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3AsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIDRweDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgbGVmdCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IDIwMG1zIGxlZnQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsLnN3aXBlci1jb250YWluZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IDIwMG1zIHJpZ2h0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07IH1cblxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLFxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcixcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogU2Nyb2xsYmFyICovXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMSU7XG4gIGJvdHRvbTogM3B4O1xuICB6LWluZGV4OiA1MDtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiA5OCU7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNweDtcbiAgdG9wOiAxJTtcbiAgei1pbmRleDogNTA7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogOTglOyB9XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWN1cnNvci1kcmFnIHtcbiAgY3Vyc29yOiBtb3ZlOyB9XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWxvY2sge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gaW1nLFxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IHN2Zyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBjYW52YXMge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cblxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7IH1cblxuLyogUHJlbG9hZGVyICovXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIxcHg7XG4gIG1hcmdpbi10b3A6IC0yMXB4O1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7IH1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzNmM2YzZjJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzZmZmJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5cbkBrZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG4vKiBhMTF5ICovXG4uc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTEwMDA7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZS5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSAuc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZS5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IDAuNjtcbiAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoNTBweCk7XG4gIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgei1pbmRleDogMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7IH1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgei1pbmRleDogMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jb3ZlcmZsb3cgLnN3aXBlci13cmFwcGVyIHtcbiAgLyogV2luZG93cyA4IElFIDEwIGZpeCAqL1xuICAtbXMtcGVyc3BlY3RpdmU6IDEyMDBweDsgfVxuXG4ucGFydG5lcnMtdGl0bGUge1xuICBjb2xvcjogIzVEMDIwMjtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBtYXJnaW46IDAuOTE2NjdlbSAwZW0gMC4zMzMzM2VtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLnBhcnRuZXJzLXdyYXBwZXIgLnBhcnRuZXJzLXRpdGxlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjVlbTsgfVxuXG4ucGFydG5lcnMtc2xpZGVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yaWJib25fbW9iaWxlLnBuZ1wiKSBjZW50ZXIgbGVmdCByZXBlYXQteDtcbiAgbWFyZ2luOiAwZW0gMS41NjI1ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucGFydG5lcnMtc2xpZGVyOjpiZWZvcmUsIC5wYXJ0bmVycy1zbGlkZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYm90dG9tOiAwO1xuICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxLjg3NWVtO1xuICB6LWluZGV4OiAyOyB9XG5cbi5wYXJ0bmVycy1zbGlkZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uLWxlZnRfbW9iaWxlLnBuZ1wiKTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4zMTI1ZW07XG4gIHJpZ2h0OiAxMDAlOyB9XG5cbi5wYXJ0bmVycy1zbGlkZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yaWJib24tcmlnaHRfbW9iaWxlLnBuZ1wiKTtcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjMxMjVlbTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMge1xuICB6LWluZGV4OiAxOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVyczo6YmVmb3JlLCAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnM6OmFmdGVyIHtcbiAgYm90dG9tOiAwLjM3NWVtO1xuICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMzc1ZW07XG4gIHdpZHRoOiAzLjc1ZW07XG4gIHotaW5kZXg6IDk5OTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnM6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpIDUwJSwgI0ZGRkZGRiAxMDAlKTtcbiAgbGVmdDogMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnM6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpIDUwJSwgI0ZGRkZGRiAxMDAlKTtcbiAgcmlnaHQ6IDA7IH1cblxuLnN3aXBlci1jb250YWluZXIuLXNsaWRlc2hvdyB7XG4gIGJhY2tncm91bmQ6ICNFRUVFRUU7IH1cblxuLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzIC5zd2lwZXItc2xpZGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDZlbTtcbiAgd2lkdGg6IGF1dG87IH1cblxuLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzIC5zd2lwZXItc2xpZGUgLnBhcnRuZXItY2FyZCB7XG4gIHBhZGRpbmc6IDAuNzgxMjVlbSAxLjU2MjVlbTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgLnN3aXBlci1zbGlkZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC1oZWlnaHQ6IDMuNzVlbTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci4tc2xpZGVzaG93IC5zd2lwZXItc2xpZGUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjIuODEyNXJlbTtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2Li1wYXJ0bmVycyxcbi5zd2lwZXItYnV0dG9uLW5leHQuLXBhcnRuZXJzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0bztcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDFlbTtcbiAgaGVpZ2h0OiA2ZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDNlbTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2Li1wYXJ0bmVycyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2ljb24tYXJyb3ctbGVmdF9tb2JpbGUucG5nXCIpO1xuICBsZWZ0OiAtM2VtOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuLXBhcnRuZXJzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvaWNvbi1hcnJvdy1yaWdodF9tb2JpbGUucG5nXCIpO1xuICByaWdodDogLTNlbTsgfVxuXG4ubm8tY3NzdHJhbnNmb3JtcyAuc3dpcGVyLXNsaWRlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQYWdlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuOnJvb3Qge1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5odG1sLFxuYm9keSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGOyB9XG5cbmh0bWwuLW5hdmFjdGl2ZSxcbmh0bWwuLW5hdmFjdGl2ZSBib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucGFnZS13cmFwcGVyIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBsZWZ0OiAwO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwZXJzcGVjdGl2ZTogMTAwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zNXMsIGxlZnQgMC4zNXM7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAyOyB9XG5cbmh0bWwuLW5hdmFjdGl2ZSAucGFnZS13cmFwcGVyIHtcbiAgYm94LXNoYWRvdzogMGVtIDBlbSAwLjYyNWVtIGJsYWNrKDAuNSk7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogLTI0MHB4O1xuICBsZWZ0OiAtMTVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVhZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmhlYWRlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA2O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAwLjVlbSAyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwcmVtOyB9XG5cbi5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2sgPiAubG9nbyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTByZW07IH1cblxuLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jayA+IC5tZW51LWJ1dHRvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwLjI1cmVtIDByZW0gMHJlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2JpbGUgTmF2aWdhdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm1vYmlsZS1uYXYtd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICMxMzQzMEM7XG4gIGJvdHRvbTogOTk5ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogOTk5ZW07XG4gIHRvcDogLTk5OWVtO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMHMgMC4zNXMsIHJpZ2h0IDBzIDAuMzVzLCB0b3AgMHMgMC4zNXM7XG4gIHdpZHRoOiAxNWVtO1xuICB6LWluZGV4OiAxOyB9XG5cbi4tbmF2YWN0aXZlIC5tb2JpbGUtbmF2LXdyYXBwZXIge1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLi1uYXZhY3RpdmUgLmFkbWluLWJhciAubW9iaWxlLW5hdi13cmFwcGVyIHtcbiAgdG9wOiA0NnB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc4M3B4KSB7XG4gIC4tbmF2YWN0aXZlIC5hZG1pbi1iYXIgLm1vYmlsZS1uYXYtd3JhcHBlciB7XG4gICAgdG9wOiAzMnB4OyB9IH1cblxuLm1vYmlsZS1uYXYtd3JhcHBlciAubWVudS1saXN0Li1zdWJtZW51IHtcbiAgYmFja2dyb3VuZDogIzE5NTkxMDsgfVxuXG4ubW9iaWxlLW5hdi13cmFwcGVyIC5tZW51LWxpc3QuLXN1Ym1lbnUuLWZseW91dCB7XG4gIGJhY2tncm91bmQ6ICMxZjZlMTQ7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBTbGlkZXNob3cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2xpZGVzaG93LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDQ7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29udGVudC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnQuanBnXCIpIGNlbnRlciB0b3Agbm8tcmVwZWF0ICNmNGY0ZjQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBwYWRkaW5nOiA2Ljg3NWVtIDAuOTM3NWVtIDEuODc1ZW07IH1cblxuLmhvbWUgLmNvbnRlbnQtd3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiAxLjg3NWVtOyB9XG5cbi5jb250ZW50LXdyYXBwZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudC1iZWZvcmVfbW9iaWxlLmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcbiAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTEuMjVlbTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTsgfVxuXG4uaG9tZSAuY29udGVudC13cmFwcGVyOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb250ZW50LXdyYXBwZXIgPiAuY29udGVudC1ibG9jayB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMGVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cblxuLmhvbWUgLmNvbnRlbnQtd3JhcHBlciA+IC5jb250ZW50LWJsb2NrIHtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uY29udGVudC13cmFwcGVyID4gLnBhcnRuZXJzLWJsb2NrIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwZW07XG4gIHBhZGRpbmc6IDBlbSAwLjkzNzVlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENhbGxvdXRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jYWxsb3V0cy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kOiAjMTM0MzBDO1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogMS44NzVlbTsgfVxuXG4uY2FsbG91dHMtd3JhcHBlciA+IC5jYWxsb3V0cy1ibG9jayB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMGVtOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogUGFydG5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhcnRuZXJzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcGFydG5lcnMtd3JhcHBlcl9tb2JpbGUuanBnXCIpIGNlbnRlciB0b3Agbm8tcmVwZWF0O1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogMi4xODc1ZW0gMS44NzVlbSA0LjY4NzVlbTsgfVxuXG4ucGFydG5lcnMtd3JhcHBlciA+IC5wYXJ0bmVycy1ibG9jayB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMGVtO1xuICBwYWRkaW5nOiAwZW0gMC45Mzc1ZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBGb290ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZm9vdGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBwYWRkaW5nOiAwZW0gMS4yNWVtOyB9XG5cbi5mb290ZXItd3JhcHBlciA+IC5mb290ZXItYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDBlbTtcbiAgcGFkZGluZzogMS4yNWVtIDBlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMHJlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTd2lwZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAucGFydG5lcnMtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgIG1hcmdpbjogMWVtIDBlbSAwLjQ1ODMzZW07IH1cbiAgLnBhcnRuZXJzLXdyYXBwZXIgLnBhcnRuZXJzLXRpdGxlIHtcbiAgICBtYXJnaW46IDBlbSAwZW0gMS4yNWVtOyB9XG4gIC5wYXJ0bmVycy1zbGlkZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uLnBuZ1wiKTtcbiAgICBtYXJnaW46IDBlbSAzLjQzNzVlbTtcbiAgICBwYWRkaW5nOiAwZW0gMC42MjVlbTsgfVxuICAucGFydG5lcnMtc2xpZGVyOjpiZWZvcmUsIC5wYXJ0bmVycy1zbGlkZXI6OmFmdGVyIHtcbiAgICB3aWR0aDogMy40Mzc1ZW07IH1cbiAgLnBhcnRuZXJzLXNsaWRlcjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXJpYmJvbi1sZWZ0LnBuZ1wiKTsgfVxuICAucGFydG5lcnMtc2xpZGVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yaWJib24tcmlnaHQucG5nXCIpOyB9XG4gIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVyczo6YmVmb3JlLCAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnM6OmFmdGVyIHtcbiAgICBib3R0b206IDAuNjI1ZW07XG4gICAgdG9wOiAwLjYyNWVtOyB9XG4gIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAuc3dpcGVyLXNsaWRlIHtcbiAgICBoZWlnaHQ6IDExLjc1ZW07IH1cbiAgLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzIC5zd2lwZXItc2xpZGUgLnBhcnRuZXItY2FyZCB7XG4gICAgcGFkZGluZzogMS41NjI1ZW0gMy4xMjVlbTsgfVxuICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgLnN3aXBlci1zbGlkZSBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDguNzVlbTsgfVxuICAuc3dpcGVyLWNvbnRhaW5lci4tc2xpZGVzaG93IC5zd2lwZXItc2xpZGUgaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnN3aXBlci1idXR0b24tcHJldi4tcGFydG5lcnMsXG4gIC5zd2lwZXItYnV0dG9uLW5leHQuLXBhcnRuZXJzIHtcbiAgICBoZWlnaHQ6IDExLjc1ZW07XG4gICAgd2lkdGg6IDQuMTI1ZW07IH1cbiAgLnBhcnRuZXJzLXdyYXBwZXIgLnN3aXBlci1idXR0b24tcHJldi4tcGFydG5lcnMsIC5wYXJ0bmVycy13cmFwcGVyXG4gIC5zd2lwZXItYnV0dG9uLW5leHQuLXBhcnRuZXJzIHtcbiAgICBvcGFjaXR5OiAwLjM1OyB9XG4gIC5zd2lwZXItYnV0dG9uLXByZXYuLXBhcnRuZXJzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9pY29uLWFycm93LWxlZnQucG5nXCIpO1xuICAgIGxlZnQ6IC01LjA2MjVlbTsgfVxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0Li1wYXJ0bmVycyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvaWNvbi1hcnJvdy1yaWdodC5wbmdcIik7XG4gICAgcmlnaHQ6IC01LjA2MjVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBQYXJ0bmVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5wYXJ0bmVycy13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXBhcnRuZXJzLXdyYXBwZXIuanBnXCIpO1xuICAgIHBhZGRpbmc6IDVlbSAxLjg3NWVtIDEwZW07IH1cbiAgLnBhcnRuZXJzLXdyYXBwZXIgPiAucGFydG5lcnMtYmxvY2sge1xuICAgIHBhZGRpbmc6IDBlbSAxLjI1ZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIHZpc2liaWxpdHkgY2xhc3NlcyAqL1xuICAuX3Nob3dtb2JpbGUsXG4gIC5faGlkZXRhYmxldCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5fc2hvd3RhYmxldCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBHcmlkbHkgKGFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vSW9uaWNhQml6YXUvZ3JpZGx5KSAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5yb3csIC5uaW5qYS1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLnJvdy4tY2VudGVyLCAuLWNlbnRlci5uaW5qYS1yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmNvbCwgW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICAgIGZsZXg6IDE7IH1cbiAgLmNvbC4tdGVudGgsIC4tdGVudGhbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgZmxleDogMCAwIDEwJTsgfVxuICAuY29sLi1maWZ0aCwgLi1maWZ0aFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBmbGV4OiAwIDAgMjAlOyB9XG4gIC5jb2wuLXF1YXJ0ZXIsIC4tcXVhcnRlcltjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBmbGV4OiAwIDAgMjUlOyB9XG4gIC5jb2wuLXRoaXJkLCAuLXRoaXJkW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzM0JTsgfVxuICAuY29sLi1oYWxmLCAuLWhhbGZbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgZmxleDogMCAwIDUwJTsgfVxuICAuY29sLi1lcXVhbCwgLi1lcXVhbFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBmbGV4OiAxIDEgMCU7IH1cbiAgLmNvbC4tcGFkZGVkLCAuLXBhZGRlZFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBwYWRkaW5nOiAwZW0gMC42MjVlbTsgfVxuICAuY29sLi1wYWRkZWQ6Zmlyc3QtY2hpbGQsIC4tcGFkZGVkOmZpcnN0LWNoaWxkW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAuY29sLi1wYWRkZWQ6bGFzdC1jaGlsZCwgLi1wYWRkZWQ6bGFzdC1jaGlsZFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzaWMgR2xvYmFsIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAudGV4dCwgLm5pbmphLWZvcm1zLXJlcXVpcmVkLWl0ZW1zIHtcbiAgICBmb250LXNpemU6IDEuNWVtOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC51c2VyLWNvbnRlbnQsIC5jb21tZW50LWNvbnRlbnQge1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEhlYWRlcnMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBHZW5lcmFsIFRleHQgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogVGFibGVzICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEJ1dHRvbnMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBBbGlnbm1lbnQgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogQ29sdW1ucyAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqLyB9XG4gICAgLnVzZXItY29udGVudCBoMSwgLmNvbW1lbnQtY29udGVudCBoMSB7XG4gICAgICBmb250LXNpemU6IDMuNzVlbTtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIFxuICAgIC51c2VyLWNvbnRlbnQgaDIsXG4gICAgLmNvbW1lbnQtY29udGVudCBoMiB7XG4gICAgICBmb250LXNpemU6IDNlbTsgfVxuICAgIC51c2VyLWNvbnRlbnQgaDIuLWFsdCwgLmNvbW1lbnQtY29udGVudCBoMi4tYWx0IHtcbiAgICAgIGZvbnQtc2l6ZTogNC4yNWVtOyB9XG4gICAgXG4gICAgLnVzZXItY29udGVudCBoMyxcbiAgICAuY29tbWVudC1jb250ZW50IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4yNWVtO1xuICAgICAgbWFyZ2luOiAwZW0gMGVtIDEuNjY2NjdlbTsgfVxuICAgIFxuICAgIC51c2VyLWNvbnRlbnQgaDQsXG4gICAgLmNvbW1lbnQtY29udGVudCBoNCB7XG4gICAgICBmb250LXNpemU6IDEuNzVlbTsgfVxuICAgIFxuICAgIC51c2VyLWNvbnRlbnQgaDUsXG4gICAgLmNvbW1lbnQtY29udGVudCBoNSB7XG4gICAgICBmb250LXNpemU6IDEuNWVtOyB9XG4gICAgXG4gICAgLnVzZXItY29udGVudCBoNixcbiAgICAuY29tbWVudC1jb250ZW50IGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG4gICAgLnVzZXItY29udGVudCBsYWJlbCwgLmNvbW1lbnQtY29udGVudCBsYWJlbCxcbiAgICAudXNlci1jb250ZW50IG1lbnUsXG4gICAgLmNvbW1lbnQtY29udGVudCBtZW51LFxuICAgIC51c2VyLWNvbnRlbnQgb2wsXG4gICAgLmNvbW1lbnQtY29udGVudCBvbCxcbiAgICAudXNlci1jb250ZW50IHAsXG4gICAgLmNvbW1lbnQtY29udGVudCBwLFxuICAgIC51c2VyLWNvbnRlbnQgdGFibGUsXG4gICAgLmNvbW1lbnQtY29udGVudCB0YWJsZSxcbiAgICAudXNlci1jb250ZW50IHVsLFxuICAgIC5jb21tZW50LWNvbnRlbnQgdWwge1xuICAgICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAgIFxuICAgIC51c2VyLWNvbnRlbnQgdGFibGUsXG4gICAgLmNvbW1lbnQtY29udGVudCB0YWJsZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgIC51c2VyLWNvbnRlbnQgYnV0dG9uLCAuY29tbWVudC1jb250ZW50IGJ1dHRvbixcbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG4gICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAgIC51c2VyLWNvbnRlbnQgYnV0dG9uOmhvdmVyLCAuY29tbWVudC1jb250ZW50IGJ1dHRvbjpob3ZlcixcbiAgICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlcixcbiAgICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlcixcbiAgICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmhvdmVyLFxuICAgICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmVzZXRcIl06aG92ZXIsXG4gICAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4gICAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjk1NzA0O1xuICAgICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAgIC51c2VyLWNvbnRlbnQgLmFsaWduY2VudGVyLCAuY29tbWVudC1jb250ZW50IC5hbGlnbmNlbnRlciB7XG4gICAgICBtYXJnaW46IDAgYXV0byAxLjg3NWVtOyB9XG4gICAgXG4gICAgLnVzZXItY29udGVudCAuYWxpZ25sZWZ0LFxuICAgIC5jb21tZW50LWNvbnRlbnQgLmFsaWdubGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbjogMGVtIDEuODc1ZW0gMS44NzVlbSAwZW07IH1cbiAgICBcbiAgICAudXNlci1jb250ZW50IC5hbGlnbnJpZ2h0LFxuICAgIC5jb21tZW50LWNvbnRlbnQgLmFsaWducmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luOiAwZW0gMGVtIDEuODc1ZW0gMS44NzVlbTsgfVxuICAgIC51c2VyLWNvbnRlbnQgLmNvbCwgLmNvbW1lbnQtY29udGVudCAuY29sLCAudXNlci1jb250ZW50IFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdLCAuY29tbWVudC1jb250ZW50IFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICAgIHBhZGRpbmc6IDBlbSAzLjc1ZW07IH1cbiAgICAudXNlci1jb250ZW50IC5jb2w6Zmlyc3QtY2hpbGQsIC5jb21tZW50LWNvbnRlbnQgLmNvbDpmaXJzdC1jaGlsZCwgLnVzZXItY29udGVudCA6Zmlyc3QtY2hpbGRbY2xhc3MqPVwibmluamEtY29sLVwiXSwgLmNvbW1lbnQtY29udGVudCA6Zmlyc3QtY2hpbGRbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1ZW07IH1cbiAgICAudXNlci1jb250ZW50IC5jb2w6bGFzdC1jaGlsZCwgLmNvbW1lbnQtY29udGVudCAuY29sOmxhc3QtY2hpbGQsIC51c2VyLWNvbnRlbnQgOmxhc3QtY2hpbGRbY2xhc3MqPVwibmluamEtY29sLVwiXSwgLmNvbW1lbnQtY29udGVudCA6bGFzdC1jaGlsZFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQXJ0aWNsZSBDYXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuYXJ0aWNsZS1jYXJkIHtcbiAgICBwYWRkaW5nOiAxLjg3NWVtOyB9XG4gIC5hcnRpY2xlLWNhcmQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVlbTsgfVxuICAuYXJ0aWNsZS1jYXJkLi1iYW5uZXIge1xuICAgIHBhZGRpbmc6IDEwZW0gMS44NzVlbSAxLjg3NWVtOyB9XG4gIC5hcnRpY2xlLWNhcmQuLXBhcnRuZXIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmFydGljbGUtY2FyZCA+IC5pbWFnZSB7XG4gICAgcGFkZGluZy10b3A6IDMuNzVlbTsgfVxuICAuYXJ0aWNsZS1jYXJkLi1leGNlcnB0ID4gLmltYWdlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAwZW0gMS44NzVlbSAwZW0gMGVtO1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmFydGljbGUtY2FyZC4tcGFydG5lciA+IC5pbWFnZS4tbG9nbyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMGVtIDEuODc1ZW0gMGVtIDBlbTtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5hcnRpY2xlLWNhcmQuLWJhbm5lciA+IC5oZWFkZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtYXJ0aWNsZS1jYXJkLWhlYWRlci1iYW5uZXIucG5nXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byBhdXRvO1xuICAgIGxlZnQ6IDEuODc1ZW07XG4gICAgcGFkZGluZzogMC43NWVtIDEuNTYyNWVtIDMuMjVlbTtcbiAgICB3aWR0aDogMzAuMTI1ZW07IH1cbiAgLmFydGljbGUtY2FyZC4tZXhjZXJwdCA+IC5pbWFnZSB+IC5oZWFkZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmFydGljbGUtY2FyZC4tYmFubmVyID4gLmhlYWRlciA+IC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAzLjEyNWVtOyB9XG4gIC5hcnRpY2xlLWNhcmQuLWV4Y2VycHQgPiAuaGVhZGVyID4gLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNzVlbTsgfVxuICAuYXJ0aWNsZS1jYXJkLi1leGNlcnB0ID4gLmltYWdlIH4gLmNvbnRlbnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmFydGljbGUtY2FyZC4tcGFydG5lciA+IC5pbWFnZS4tbG9nbyArIC5jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAxLjg3NWVtIDBlbSAwZW07XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuYXJ0aWNsZS1jYXJkID4gLmNvbnRlbnQuLWZ1bGwge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYW5uZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5iYW5uZXItd3JhcHBlciB7XG4gICAgcGFkZGluZzogMGVtIDEuMjVlbTsgfVxuICAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBtaW4taGVpZ2h0OiA1LjM3NWVtOyB9XG4gIC5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAudGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwLjEyNXJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICBwYWRkaW5nOiAxZW0gMi4zMzMzM2VtOyB9XG4gIC5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAudGl0bGUgPiAuZmEge1xuICAgIGxlZnQ6IDA7IH1cbiAgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5leGNlcnB0LFxuICAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgICAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmV4Y2VycHQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMi41ZW07IH1cbiAgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5idXR0b24sIC5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29tbWVudC1yZXBseS1saW5rIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMy41ODMzM2VtO1xuICAgIHdpZHRoOiAzLjU4MzMzZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDYWxsb3V0IENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5jYWxsb3V0LWNhcmQgPiAuY2FsbG91dC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjM3NWVtOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbW1lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5jb21tZW50cy10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjg3NWVtOyB9XG4gIC5jb21tZW50LWxpc3QsXG4gIC5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgICBtYXJnaW46IDBlbSAwZW0gMS41ZW07IH1cbiAgLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICAgIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDJlbTsgfVxuICAuY29tbWVudC1ib2R5IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5jb21tZW50LW1ldGEge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG4gIC5jb21tZW50LWF1dGhvciB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmNvbW1lbnQtbWV0YWRhdGEge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY29tbWVudC1jb250ZW50IHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMXB4OyB9XG4gICAgLmNvbW1lbnQtY29udGVudCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmNvbW1lbnQtcmVwbHktbGluayB7XG4gICAgZmxleDogbm9uZTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDIuNzc3NzhlbTsgfVxuICAuY29tbWVudHMtbmF2IHtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODg4ODllbTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuY29tbWVudHMtbmF2IC5wYWdlLW51bWJlcnMge1xuICAgIG1hcmdpbjogMGVtIDBlbSAwZW0gMC4zMzMzM2VtOyB9XG4gIC5jb21tZW50LWZvcm0tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS44NzVlbTsgfVxuICAuY29tbWVudC1sb2dnZWQtaW4ge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTsgfVxuICAuY29tbWVudC1pbnB1dCB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogRm9vdGVyIENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuZm9vdGVyLWNhcmQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmZvb3Rlci1jYXJkLi1hbGlnbnJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuZm9vdGVyLWNhcmQgLmxvZ28ge1xuICAgIG1heC13aWR0aDogMTAuNjI1ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBHYWxsZXJ5ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5nYWxsZXJ5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBtYXJnaW46IDByZW0gLTEuODc1cmVtOyB9XG4gIC5nYWxsZXJ5IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHBhZGRpbmc6IDByZW0gMS44NzVyZW07IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTMgLmdhbGxlcnktaXRlbSB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMyU7IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbSB7XG4gICAgZmxleDogMCAwIDI1JTsgfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNSAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgMjAlOyB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy02IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjclOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTmluamEgRm9ybXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICBbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgcGFkZGluZzogMGVtIDAuNjI1ZW0gIWltcG9ydGFudDsgfVxuICAgIFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgW2NsYXNzKj1cIm5pbmphLWNvbC1cIl06bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLmZpZWxkLXdyYXAgLm5mLWxhYmVsLXNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBTZWFyY2ggZm9ybSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5zZWFyY2gtZm9ybSB7XG4gICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTdG9yeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuc3Rvcnkge1xuICAgIHBhZGRpbmc6IDMuMTI1ZW07XG4gICAgcGFkZGluZy1yaWdodDogNDMuNzUlOyB9XG4gIC5zdG9yeS4tcHJpbWFyeSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMi41JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMi41JTsgfVxuICAuc3RvcnkuLXNlY29uZGFyeSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMS4yNSU7XG4gICAgcGFkZGluZy1yaWdodDogMy4xMjVlbTsgfVxuICAuc3RvcnkuLXRlcnRpYXJ5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMS4yNSU7IH1cbiAgLnN0b3J5OmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgIGxlZnQ6IDExLjI1JTtcbiAgICByaWdodDogYXV0bzsgfVxuICAuc3RvcnkuLXByaW1hcnk6OmFmdGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnN0b3J5Li1zZWNvbmRhcnk6OmFmdGVyIHtcbiAgICBsZWZ0OiA2LjI1JTsgfVxuICAuc3RvcnkuLXRlcnRpYXJ5OjphZnRlciB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMS4xMjVlbTtcbiAgICByaWdodDogYXV0bzsgfVxuICAuc3RvcnkgLnVzZXItY29udGVudCBoMi4tYWx0LCAuc3RvcnkgLmNvbW1lbnQtY29udGVudCBoMi4tYWx0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogUGFnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICBodG1sLi1uYXZhY3RpdmUsXG4gIGh0bWwuLW5hdmFjdGl2ZSBib2R5IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgaHRtbC4tbmF2YWN0aXZlIC5wYWdlLXdyYXBwZXIge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlYWRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmhlYWRlci13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4yNWVtO1xuICAgIHBhZGRpbmctdG9wOiAxLjI1ZW07IH1cbiAgLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jayB7XG4gICAgcGFkZGluZzogMCA1LjYyNSU7IH1cbiAgLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jayAubWVudS1saXN0Li1uYXYge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG4gIC5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2sgLm1lbnUtbGlzdC4tbmF2IC5tZW51LWl0ZW0uLWxvZ28gLm1lbnUtbGluayBpbWcge1xuICAgIG1heC13aWR0aDogNi44NzVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy43NWVtO1xuICAgIHBhZGRpbmctdG9wOiA5LjY4NzVlbTsgfVxuICAuaG9tZSAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMy43NWVtOyB9XG4gIC5jb250ZW50LXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50LWJlZm9yZS5qcGdcIik7XG4gICAgaGVpZ2h0OiAyMS44NzVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGb290ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuZm9vdGVyLXdyYXBwZXIgPiAuZm9vdGVyLWJsb2NrIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5mb290ZXItd3JhcHBlciA+IC5mb290ZXItYmxvY2sgPiAuZm9vdGVyLWNhcmQge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDBlbSAxLjI1ZW07IH1cbiAgLmZvb3Rlci13cmFwcGVyID4gLmZvb3Rlci1ibG9jayA+IC5mb290ZXItY2FyZC4tZmlyc3Rtb2JpbGUge1xuICAgIG9yZGVyOiAwOyB9XG4gIC5mb290ZXItd3JhcHBlciA+IC5mb290ZXItYmxvY2sgPiAuZm9vdGVyLWNhcmQuLW5vZmxleCB7XG4gICAgZmxleDogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUzLjMxMjVyZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovIH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjByZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVhZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrIC5tZW51LWxpc3QuLW5hdiB7XG4gICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDEwLjM3NWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiB2aXNpYmlsaXR5IGNsYXNzZXMgKi9cbiAgLl9zaG93dGFibGV0LFxuICAuX2hpZGVkZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLl9zaG93ZGVza3RvcCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTGF5b3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlYWRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jayAubWVudS1saXN0Li1uYXYgLm1lbnUtaXRlbS4tbG9nbyAubWVudS1saW5rIGltZyB7XG4gICAgbWF4LXdpZHRoOiA5LjE2NjY3ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAxMS43NWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODByZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEdyaWRseSAoYWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9Jb25pY2FCaXphdS9ncmlkbHkpICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLnJvdy1kZXNrdG9wIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5yb3ctZGVza3RvcC4tY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWFkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2sge1xuICAgIHBhZGRpbmc6IDAgMTEuMjUlOyB9XG4gIC5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2sgLm1lbnUtbGlzdC4tbmF2IC5tZW51LWl0ZW0uLWxvZ28gLm1lbnUtbGluayBpbWcge1xuICAgIG1heC13aWR0aDogMTMuNzVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDE0LjVlbTsgfSB9XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIGltcG9ydHNcblxuQGltcG9ydCBcIl92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJfZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiX21peGluc1wiO1xuXG4vLyBnZW5lcmljIGhlbHBlcnNcblxuJWNsZWFyZml4IHtcbiAgICAqem9vbTogMSAhaW1wb3J0YW50O1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIiAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5fY2VudGVyIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uX2xlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5fcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4uX3RleHRjZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uX3RleHRsZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5fdGV4dHJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4uX25vbWFyZ2luIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLl9ub3BhZGRpbmcge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLl92aXN1YWxseWhpZGRlbiB7XG4gICAgbGVmdDogLTk5OWVtICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAtOTk5ZW0gIWltcG9ydGFudDtcbn1cblxuLyogdmlzaWJpbGl0eSBjbGFzc2VzICovXG4vLyBpZGVhbDogaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy1kaXNwbGF5LTMvI3Byb3BkZWYtYm94LXN1cHByZXNzXG5cbi5faGlkZW1vYmlsZSxcbi5fc2hvd3RhYmxldCxcbi5fc2hvd2Rlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLl9zaG93bW9iaWxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb2xvcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kcHJpbWFyeTogIzVEMDIwMjtcbiRwcmltYXJ5X2FsdDogIzc1MDIwMjtcblxuJHNlY29uZGFyeTogIzA5MEYyNDtcbiRzZWNvbmRhcnlfYWx0OiAjMEYxOTNEO1xuXG4kdGVydGlhcnk6ICM0RTRFNEU7XG4kdGVydGlhcnlfYWx0OiAjNjk2OTY5O1xuXG4kYWNjZW50OiAjMTM0MzBDO1xuJGFjY2VudF9hbHQ6ICMyOTU3MDQ7XG5cbiRsaWdodDogI0ZGRkZGRjtcbiRsaWdodF9hbHQ6ICNFRUVFRUU7XG5cbiRkYXJrOiAjMDAwMDAwO1xuJGRhcmtfYWx0OiAjMTExMTExO1xuXG4kZm9yZWdyb3VuZDogJGRhcmtfYWx0O1xuJGZvcmVncm91bmRfYWx0OiAkZGFyaztcblxuJGJhY2tncm91bmQ6ICRsaWdodDtcbiRiYWNrZ3JvdW5kX2FsdDogJGxpZ2h0X2FsdDtcblxuJHBhZ2VfYmFja2dyb3VuZDogJGxpZ2h0X2FsdDtcbiRwYWdlX2JhY2tncm91bmRfYWx0OiAkbGlnaHQ7XG5cbiR3YXJuaW5nOiAjOUYwMDAwO1xuJHdhcm5pbmdfYWx0OiAjRjgzNjM2O1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGb250cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kaGVhZGluZy1mb250OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiRoZWFkaW5nLWZvbnRfYWx0OiBcIkJydXNoZXJcIiwgY3Vyc2l2ZTtcbiRib2R5LWZvbnQ6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBXaWR0aHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kc2l0ZS13aWR0aDogMTYwMDtcbiRtb2JpbGUtbmF2LXdpZHRoOiAyNDA7XG4kZ3JpZC1ndXR0ZXI6IDIwO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCcmVhayBQb2ludHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4keHhsLWJyZWFrOiAxMjgwcmVtIC8gMTY7XG4keGwtYnJlYWs6IDEwMjRyZW0gLyAxNjtcbiRsLWJyZWFrOiA5NjByZW0gLyAxNjtcbiRtLWJyZWFrOiA4NTNyZW0gLyAxNjtcbiRzLWJyZWFrOiA3NjhyZW0gLyAxNjtcbiR4cy1icmVhazogNjQwcmVtIC8gMTY7XG4keHhzLWJyZWFrOiA0ODByZW0gLyAxNjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5ZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuJGxheWVyczogKFxuICAgIGhlYWRlcjogNixcbiAgICBuYXZpZ2F0aW9uOiA1LFxuICAgIHNsaWRlc2hvdzogNCxcbiAgICBjb250ZW50OiAzLFxuICAgIGNhbGxvdXRzOiAyLFxuICAgIGZvb3RlcjogMSxcbik7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEZvbnRBd2Vzb21lIEljb25zIChodHRwOi8vZm9ydGF3ZXNvbWUuZ2l0aHViLmlvL0ZvbnQtQXdlc29tZS9pY29ucy8pICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiRmYS1pY29uczogKFxuICAgIDUwMHB4OiBcIlxcZjI2ZVwiLFxuICAgIGFkanVzdDogXCJcXGYwNDJcIixcbiAgICBhZG46IFwiXFxmMTcwXCIsXG4gICAgYWxpZ24tY2VudGVyOiBcIlxcZjAzN1wiLFxuICAgIGFsaWduLWp1c3RpZnk6IFwiXFxmMDM5XCIsXG4gICAgYWxpZ24tbGVmdDogXCJcXGYwMzZcIixcbiAgICBhbGlnbi1yaWdodDogXCJcXGYwMzhcIixcbiAgICBhbWF6b246IFwiXFxmMjcwXCIsXG4gICAgYW1idWxhbmNlOiBcIlxcZjBmOVwiLFxuICAgIGFuY2hvcjogXCJcXGYxM2RcIixcbiAgICBhbmRyb2lkOiBcIlxcZjE3YlwiLFxuICAgIGFuZ2VsbGlzdDogXCJcXGYyMDlcIixcbiAgICBhbmdsZS1kb3VibGUtZG93bjogXCJcXGYxMDNcIixcbiAgICBhbmdsZS1kb3VibGUtbGVmdDogXCJcXGYxMDBcIixcbiAgICBhbmdsZS1kb3VibGUtcmlnaHQ6IFwiXFxmMTAxXCIsXG4gICAgYW5nbGUtZG91YmxlLXVwOiBcIlxcZjEwMlwiLFxuICAgIGFuZ2xlLWRvd246IFwiXFxmMTA3XCIsXG4gICAgYW5nbGUtbGVmdDogXCJcXGYxMDRcIixcbiAgICBhbmdsZS1yaWdodDogXCJcXGYxMDVcIixcbiAgICBhbmdsZS11cDogXCJcXGYxMDZcIixcbiAgICBhcHBsZTogXCJcXGYxNzlcIixcbiAgICBhcmNoaXZlOiBcIlxcZjE4N1wiLFxuICAgIGFyZWEtY2hhcnQ6IFwiXFxmMWZlXCIsXG4gICAgYXJyb3ctY2lyY2xlLWRvd246IFwiXFxmMGFiXCIsXG4gICAgYXJyb3ctY2lyY2xlLWxlZnQ6IFwiXFxmMGE4XCIsXG4gICAgYXJyb3ctY2lyY2xlLW8tZG93bjogXCJcXGYwMWFcIixcbiAgICBhcnJvdy1jaXJjbGUtby1sZWZ0OiBcIlxcZjE5MFwiLFxuICAgIGFycm93LWNpcmNsZS1vLXJpZ2h0OiBcIlxcZjE4ZVwiLFxuICAgIGFycm93LWNpcmNsZS1vLXVwOiBcIlxcZjAxYlwiLFxuICAgIGFycm93LWNpcmNsZS1yaWdodDogXCJcXGYwYTlcIixcbiAgICBhcnJvdy1jaXJjbGUtdXA6IFwiXFxmMGFhXCIsXG4gICAgYXJyb3ctZG93bjogXCJcXGYwNjNcIixcbiAgICBhcnJvdy1sZWZ0OiBcIlxcZjA2MFwiLFxuICAgIGFycm93LXJpZ2h0OiBcIlxcZjA2MVwiLFxuICAgIGFycm93LXVwOiBcIlxcZjA2MlwiLFxuICAgIGFycm93czogXCJcXGYwNDdcIixcbiAgICBhcnJvd3MtYWx0OiBcIlxcZjBiMlwiLFxuICAgIGFycm93cy1oOiBcIlxcZjA3ZVwiLFxuICAgIGFycm93cy12OiBcIlxcZjA3ZFwiLFxuICAgIGFzdGVyaXNrOiBcIlxcZjA2OVwiLFxuICAgIGF0OiBcIlxcZjFmYVwiLFxuICAgIGF1dG9tb2JpbGU6IFwiXFxmMWI5XCIsXG4gICAgYmFja3dhcmQ6IFwiXFxmMDRhXCIsXG4gICAgYmFsYW5jZS1zY2FsZTogXCJcXGYyNGVcIixcbiAgICBiYW46IFwiXFxmMDVlXCIsXG4gICAgYmFuazogXCJcXGYxOWNcIixcbiAgICBiYXItY2hhcnQ6IFwiXFxmMDgwXCIsXG4gICAgYmFyLWNoYXJ0LW86IFwiXFxmMDgwXCIsXG4gICAgYmFyY29kZTogXCJcXGYwMmFcIixcbiAgICBiYXJzOiBcIlxcZjBjOVwiLFxuICAgIGJhdHRlcnktMDogXCJcXGYyNDRcIixcbiAgICBiYXR0ZXJ5LTE6IFwiXFxmMjQzXCIsXG4gICAgYmF0dGVyeS0yOiBcIlxcZjI0MlwiLFxuICAgIGJhdHRlcnktMzogXCJcXGYyNDFcIixcbiAgICBiYXR0ZXJ5LTQ6IFwiXFxmMjQwXCIsXG4gICAgYmF0dGVyeS1lbXB0eTogXCJcXGYyNDRcIixcbiAgICBiYXR0ZXJ5LWZ1bGw6IFwiXFxmMjQwXCIsXG4gICAgYmF0dGVyeS1oYWxmOiBcIlxcZjI0MlwiLFxuICAgIGJhdHRlcnktcXVhcnRlcjogXCJcXGYyNDNcIixcbiAgICBiYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOiBcIlxcZjI0MVwiLFxuICAgIGJlZDogXCJcXGYyMzZcIixcbiAgICBiZWVyOiBcIlxcZjBmY1wiLFxuICAgIGJlaGFuY2U6IFwiXFxmMWI0XCIsXG4gICAgYmVoYW5jZS1zcXVhcmU6IFwiXFxmMWI1XCIsXG4gICAgYmVsbDogXCJcXGYwZjNcIixcbiAgICBiZWxsLW86IFwiXFxmMGEyXCIsXG4gICAgYmVsbC1zbGFzaDogXCJcXGYxZjZcIixcbiAgICBiZWxsLXNsYXNoLW86IFwiXFxmMWY3XCIsXG4gICAgYmljeWNsZTogXCJcXGYyMDZcIixcbiAgICBiaW5vY3VsYXJzOiBcIlxcZjFlNVwiLFxuICAgIGJpcnRoZGF5LWNha2U6IFwiXFxmMWZkXCIsXG4gICAgYml0YnVja2V0OiBcIlxcZjE3MVwiLFxuICAgIGJpdGJ1Y2tldC1zcXVhcmU6IFwiXFxmMTcyXCIsXG4gICAgYml0Y29pbjogXCJcXGYxNWFcIixcbiAgICBibGFjay10aWU6IFwiXFxmMjdlXCIsXG4gICAgYm9sZDogXCJcXGYwMzJcIixcbiAgICBib2x0OiBcIlxcZjBlN1wiLFxuICAgIGJvbWI6IFwiXFxmMWUyXCIsXG4gICAgYm9vazogXCJcXGYwMmRcIixcbiAgICBib29rbWFyazogXCJcXGYwMmVcIixcbiAgICBib29rbWFyay1vOiBcIlxcZjA5N1wiLFxuICAgIGJyaWVmY2FzZTogXCJcXGYwYjFcIixcbiAgICBidGM6IFwiXFxmMTVhXCIsXG4gICAgYnVnOiBcIlxcZjE4OFwiLFxuICAgIGJ1aWxkaW5nOiBcIlxcZjFhZFwiLFxuICAgIGJ1aWxkaW5nLW86IFwiXFxmMGY3XCIsXG4gICAgYnVsbGhvcm46IFwiXFxmMGExXCIsXG4gICAgYnVsbHNleWU6IFwiXFxmMTQwXCIsXG4gICAgYnVzOiBcIlxcZjIwN1wiLFxuICAgIGJ1eXNlbGxhZHM6IFwiXFxmMjBkXCIsXG4gICAgY2FiOiBcIlxcZjFiYVwiLFxuICAgIGNhbGN1bGF0b3I6IFwiXFxmMWVjXCIsXG4gICAgY2FsZW5kYXI6IFwiXFxmMDczXCIsXG4gICAgY2FsZW5kYXItY2hlY2stbzogXCJcXGYyNzRcIixcbiAgICBjYWxlbmRhci1taW51cy1vOiBcIlxcZjI3MlwiLFxuICAgIGNhbGVuZGFyLW86IFwiXFxmMTMzXCIsXG4gICAgY2FsZW5kYXItcGx1cy1vOiBcIlxcZjI3MVwiLFxuICAgIGNhbGVuZGFyLXRpbWVzLW86IFwiXFxmMjczXCIsXG4gICAgY2FtZXJhOiBcIlxcZjAzMFwiLFxuICAgIGNhbWVyYS1yZXRybzogXCJcXGYwODNcIixcbiAgICBjYXI6IFwiXFxmMWI5XCIsXG4gICAgY2FyZXQtZG93bjogXCJcXGYwZDdcIixcbiAgICBjYXJldC1sZWZ0OiBcIlxcZjBkOVwiLFxuICAgIGNhcmV0LXJpZ2h0OiBcIlxcZjBkYVwiLFxuICAgIGNhcmV0LXNxdWFyZS1vLWRvd246IFwiXFxmMTUwXCIsXG4gICAgY2FyZXQtc3F1YXJlLW8tbGVmdDogXCJcXGYxOTFcIixcbiAgICBjYXJldC1zcXVhcmUtby1yaWdodDogXCJcXGYxNTJcIixcbiAgICBjYXJldC1zcXVhcmUtby11cDogXCJcXGYxNTFcIixcbiAgICBjYXJldC11cDogXCJcXGYwZDhcIixcbiAgICBjYXJ0LWFycm93LWRvd246IFwiXFxmMjE4XCIsXG4gICAgY2FydC1wbHVzOiBcIlxcZjIxN1wiLFxuICAgIGNjOiBcIlxcZjIwYVwiLFxuICAgIGNjLWFtZXg6IFwiXFxmMWYzXCIsXG4gICAgY2MtZGluZXJzLWNsdWI6IFwiXFxmMjRjXCIsXG4gICAgY2MtZGlzY292ZXI6IFwiXFxmMWYyXCIsXG4gICAgY2MtamNiOiBcIlxcZjI0YlwiLFxuICAgIGNjLW1hc3RlcmNhcmQ6IFwiXFxmMWYxXCIsXG4gICAgY2MtcGF5cGFsOiBcIlxcZjFmNFwiLFxuICAgIGNjLXN0cmlwZTogXCJcXGYxZjVcIixcbiAgICBjYy12aXNhOiBcIlxcZjFmMFwiLFxuICAgIGNlcnRpZmljYXRlOiBcIlxcZjBhM1wiLFxuICAgIGNoYWluOiBcIlxcZjBjMVwiLFxuICAgIGNoYWluLWJyb2tlbjogXCJcXGYxMjdcIixcbiAgICBjaGVjazogXCJcXGYwMGNcIixcbiAgICBjaGVjay1jaXJjbGU6IFwiXFxmMDU4XCIsXG4gICAgY2hlY2stY2lyY2xlLW86IFwiXFxmMDVkXCIsXG4gICAgY2hlY2stc3F1YXJlOiBcIlxcZjE0YVwiLFxuICAgIGNoZWNrLXNxdWFyZS1vOiBcIlxcZjA0NlwiLFxuICAgIGNoZXZyb24tY2lyY2xlLWRvd246IFwiXFxmMTNhXCIsXG4gICAgY2hldnJvbi1jaXJjbGUtbGVmdDogXCJcXGYxMzdcIixcbiAgICBjaGV2cm9uLWNpcmNsZS1yaWdodDogXCJcXGYxMzhcIixcbiAgICBjaGV2cm9uLWNpcmNsZS11cDogXCJcXGYxMzlcIixcbiAgICBjaGV2cm9uLWRvd246IFwiXFxmMDc4XCIsXG4gICAgY2hldnJvbi1sZWZ0OiBcIlxcZjA1M1wiLFxuICAgIGNoZXZyb24tcmlnaHQ6IFwiXFxmMDU0XCIsXG4gICAgY2hldnJvbi11cDogXCJcXGYwNzdcIixcbiAgICBjaGlsZDogXCJcXGYxYWVcIixcbiAgICBjaHJvbWU6IFwiXFxmMjY4XCIsXG4gICAgY2lyY2xlOiBcIlxcZjExMVwiLFxuICAgIGNpcmNsZS1vOiBcIlxcZjEwY1wiLFxuICAgIGNpcmNsZS1vLW5vdGNoOiBcIlxcZjFjZVwiLFxuICAgIGNpcmNsZS10aGluOiBcIlxcZjFkYlwiLFxuICAgIGNsaXBib2FyZDogXCJcXGYwZWFcIixcbiAgICBjbG9jay1vOiBcIlxcZjAxN1wiLFxuICAgIGNsb25lOiBcIlxcZjI0ZFwiLFxuICAgIGNsb3NlOiBcIlxcZjAwZFwiLFxuICAgIGNsb3VkOiBcIlxcZjBjMlwiLFxuICAgIGNsb3VkLWRvd25sb2FkOiBcIlxcZjBlZFwiLFxuICAgIGNsb3VkLXVwbG9hZDogXCJcXGYwZWVcIixcbiAgICBjbnk6IFwiXFxmMTU3XCIsXG4gICAgY29kZTogXCJcXGYxMjFcIixcbiAgICBjb2RlLWZvcms6IFwiXFxmMTI2XCIsXG4gICAgY29kZXBlbjogXCJcXGYxY2JcIixcbiAgICBjb2ZmZWU6IFwiXFxmMGY0XCIsXG4gICAgY29nOiBcIlxcZjAxM1wiLFxuICAgIGNvZ3M6IFwiXFxmMDg1XCIsXG4gICAgY29sdW1uczogXCJcXGYwZGJcIixcbiAgICBjb21tZW50OiBcIlxcZjA3NVwiLFxuICAgIGNvbW1lbnQtbzogXCJcXGYwZTVcIixcbiAgICBjb21tZW50aW5nOiBcIlxcZjI3YVwiLFxuICAgIGNvbW1lbnRpbmctbzogXCJcXGYyN2JcIixcbiAgICBjb21tZW50czogXCJcXGYwODZcIixcbiAgICBjb21tZW50cy1vOiBcIlxcZjBlNlwiLFxuICAgIGNvbXBhc3M6IFwiXFxmMTRlXCIsXG4gICAgY29tcHJlc3M6IFwiXFxmMDY2XCIsXG4gICAgY29ubmVjdGRldmVsb3A6IFwiXFxmMjBlXCIsXG4gICAgY29udGFvOiBcIlxcZjI2ZFwiLFxuICAgIGNvcHk6IFwiXFxmMGM1XCIsXG4gICAgY29weXJpZ2h0OiBcIlxcZjFmOVwiLFxuICAgIGNyZWF0aXZlLWNvbW1vbnM6IFwiXFxmMjVlXCIsXG4gICAgY3JlZGl0LWNhcmQ6IFwiXFxmMDlkXCIsXG4gICAgY3JvcDogXCJcXGYxMjVcIixcbiAgICBjcm9zc2hhaXJzOiBcIlxcZjA1YlwiLFxuICAgIGNzczM6IFwiXFxmMTNjXCIsXG4gICAgY3ViZTogXCJcXGYxYjJcIixcbiAgICBjdWJlczogXCJcXGYxYjNcIixcbiAgICBjdXQ6IFwiXFxmMGM0XCIsXG4gICAgY3V0bGVyeTogXCJcXGYwZjVcIixcbiAgICBkYXNoYm9hcmQ6IFwiXFxmMGU0XCIsXG4gICAgZGFzaGN1YmU6IFwiXFxmMjEwXCIsXG4gICAgZGF0YWJhc2U6IFwiXFxmMWMwXCIsXG4gICAgZGVkZW50OiBcIlxcZjAzYlwiLFxuICAgIGRlbGljaW91czogXCJcXGYxYTVcIixcbiAgICBkZXNrdG9wOiBcIlxcZjEwOFwiLFxuICAgIGRldmlhbnRhcnQ6IFwiXFxmMWJkXCIsXG4gICAgZGlhbW9uZDogXCJcXGYyMTlcIixcbiAgICBkaWdnOiBcIlxcZjFhNlwiLFxuICAgIGRvbGxhcjogXCJcXGYxNTVcIixcbiAgICBkb3QtY2lyY2xlLW86IFwiXFxmMTkyXCIsXG4gICAgZG93bmxvYWQ6IFwiXFxmMDE5XCIsXG4gICAgZHJpYmJibGU6IFwiXFxmMTdkXCIsXG4gICAgZHJvcGJveDogXCJcXGYxNmJcIixcbiAgICBkcnVwYWw6IFwiXFxmMWE5XCIsXG4gICAgZWRpdDogXCJcXGYwNDRcIixcbiAgICBlamVjdDogXCJcXGYwNTJcIixcbiAgICBlbGxpcHNpcy1oOiBcIlxcZjE0MVwiLFxuICAgIGVsbGlwc2lzLXY6IFwiXFxmMTQyXCIsXG4gICAgZW1waXJlOiBcIlxcZjFkMVwiLFxuICAgIGVudmVsb3BlOiBcIlxcZjBlMFwiLFxuICAgIGVudmVsb3BlLW86IFwiXFxmMDAzXCIsXG4gICAgZW52ZWxvcGUtc3F1YXJlOiBcIlxcZjE5OVwiLFxuICAgIGVyYXNlcjogXCJcXGYxMmRcIixcbiAgICBldXI6IFwiXFxmMTUzXCIsXG4gICAgZXVybzogXCJcXGYxNTNcIixcbiAgICBleGNoYW5nZTogXCJcXGYwZWNcIixcbiAgICBleGNsYW1hdGlvbjogXCJcXGYxMmFcIixcbiAgICBleGNsYW1hdGlvbi1jaXJjbGU6IFwiXFxmMDZhXCIsXG4gICAgZXhjbGFtYXRpb24tdHJpYW5nbGU6IFwiXFxmMDcxXCIsXG4gICAgZXhwYW5kOiBcIlxcZjA2NVwiLFxuICAgIGV4cGVkaXRlZHNzbDogXCJcXGYyM2VcIixcbiAgICBleHRlcm5hbC1saW5rOiBcIlxcZjA4ZVwiLFxuICAgIGV4dGVybmFsLWxpbmstc3F1YXJlOiBcIlxcZjE0Y1wiLFxuICAgIGV5ZTogXCJcXGYwNmVcIixcbiAgICBleWUtc2xhc2g6IFwiXFxmMDcwXCIsXG4gICAgZXllZHJvcHBlcjogXCJcXGYxZmJcIixcbiAgICBmYWNlYm9vazogXCJcXGYwOWFcIixcbiAgICBmYWNlYm9vay1mOiBcIlxcZjA5YVwiLFxuICAgIGZhY2Vib29rLW9mZmljaWFsOiBcIlxcZjIzMFwiLFxuICAgIGZhY2Vib29rLXNxdWFyZTogXCJcXGYwODJcIixcbiAgICBmYXN0LWJhY2t3YXJkOiBcIlxcZjA0OVwiLFxuICAgIGZhc3QtZm9yd2FyZDogXCJcXGYwNTBcIixcbiAgICBmYXg6IFwiXFxmMWFjXCIsXG4gICAgZmVlZDogXCJcXGYwOWVcIixcbiAgICBmZW1hbGU6IFwiXFxmMTgyXCIsXG4gICAgZmlnaHRlci1qZXQ6IFwiXFxmMGZiXCIsXG4gICAgZmlsZTogXCJcXGYxNWJcIixcbiAgICBmaWxlLWFyY2hpdmUtbzogXCJcXGYxYzZcIixcbiAgICBmaWxlLWF1ZGlvLW86IFwiXFxmMWM3XCIsXG4gICAgZmlsZS1jb2RlLW86IFwiXFxmMWM5XCIsXG4gICAgZmlsZS1leGNlbC1vOiBcIlxcZjFjM1wiLFxuICAgIGZpbGUtaW1hZ2UtbzogXCJcXGYxYzVcIixcbiAgICBmaWxlLW1vdmllLW86IFwiXFxmMWM4XCIsXG4gICAgZmlsZS1vOiBcIlxcZjAxNlwiLFxuICAgIGZpbGUtcGRmLW86IFwiXFxmMWMxXCIsXG4gICAgZmlsZS1waG90by1vOiBcIlxcZjFjNVwiLFxuICAgIGZpbGUtcGljdHVyZS1vOiBcIlxcZjFjNVwiLFxuICAgIGZpbGUtcG93ZXJwb2ludC1vOiBcIlxcZjFjNFwiLFxuICAgIGZpbGUtc291bmQtbzogXCJcXGYxYzdcIixcbiAgICBmaWxlLXRleHQ6IFwiXFxmMTVjXCIsXG4gICAgZmlsZS10ZXh0LW86IFwiXFxmMGY2XCIsXG4gICAgZmlsZS12aWRlby1vOiBcIlxcZjFjOFwiLFxuICAgIGZpbGUtd29yZC1vOiBcIlxcZjFjMlwiLFxuICAgIGZpbGUtemlwLW86IFwiXFxmMWM2XCIsXG4gICAgZmlsZXMtbzogXCJcXGYwYzVcIixcbiAgICBmaWxtOiBcIlxcZjAwOFwiLFxuICAgIGZpbHRlcjogXCJcXGYwYjBcIixcbiAgICBmaXJlOiBcIlxcZjA2ZFwiLFxuICAgIGZpcmUtZXh0aW5ndWlzaGVyOiBcIlxcZjEzNFwiLFxuICAgIGZpcmVmb3g6IFwiXFxmMjY5XCIsXG4gICAgZmxhZzogXCJcXGYwMjRcIixcbiAgICBmbGFnLWNoZWNrZXJlZDogXCJcXGYxMWVcIixcbiAgICBmbGFnLW86IFwiXFxmMTFkXCIsXG4gICAgZmxhc2g6IFwiXFxmMGU3XCIsXG4gICAgZmxhc2s6IFwiXFxmMGMzXCIsXG4gICAgZmxpY2tyOiBcIlxcZjE2ZVwiLFxuICAgIGZsb3BweS1vOiBcIlxcZjBjN1wiLFxuICAgIGZvbGRlcjogXCJcXGYwN2JcIixcbiAgICBmb2xkZXItbzogXCJcXGYxMTRcIixcbiAgICBmb2xkZXItb3BlbjogXCJcXGYwN2NcIixcbiAgICBmb2xkZXItb3Blbi1vOiBcIlxcZjExNVwiLFxuICAgIGZvbnQ6IFwiXFxmMDMxXCIsXG4gICAgZm9udGljb25zOiBcIlxcZjI4MFwiLFxuICAgIGZvcnVtYmVlOiBcIlxcZjIxMVwiLFxuICAgIGZvcndhcmQ6IFwiXFxmMDRlXCIsXG4gICAgZm91cnNxdWFyZTogXCJcXGYxODBcIixcbiAgICBmcm93bi1vOiBcIlxcZjExOVwiLFxuICAgIGZ1dGJvbC1vOiBcIlxcZjFlM1wiLFxuICAgIGdhbWVwYWQ6IFwiXFxmMTFiXCIsXG4gICAgZ2F2ZWw6IFwiXFxmMGUzXCIsXG4gICAgZ2JwOiBcIlxcZjE1NFwiLFxuICAgIGdlOiBcIlxcZjFkMVwiLFxuICAgIGdlYXI6IFwiXFxmMDEzXCIsXG4gICAgZ2VhcnM6IFwiXFxmMDg1XCIsXG4gICAgZ2VuZGVybGVzczogXCJcXGYyMmRcIixcbiAgICBnZXQtcG9ja2V0OiBcIlxcZjI2NVwiLFxuICAgIGdnOiBcIlxcZjI2MFwiLFxuICAgIGdnLWNpcmNsZTogXCJcXGYyNjFcIixcbiAgICBnaWZ0OiBcIlxcZjA2YlwiLFxuICAgIGdpdDogXCJcXGYxZDNcIixcbiAgICBnaXQtc3F1YXJlOiBcIlxcZjFkMlwiLFxuICAgIGdpdGh1YjogXCJcXGYwOWJcIixcbiAgICBnaXRodWItYWx0OiBcIlxcZjExM1wiLFxuICAgIGdpdGh1Yi1zcXVhcmU6IFwiXFxmMDkyXCIsXG4gICAgZ2l0dGlwOiBcIlxcZjE4NFwiLFxuICAgIGdsYXNzOiBcIlxcZjAwMFwiLFxuICAgIGdsb2JlOiBcIlxcZjBhY1wiLFxuICAgIGdvb2dsZTogXCJcXGYxYTBcIixcbiAgICBnb29nbGUtcGx1czogXCJcXGYwZDVcIixcbiAgICBnb29nbGUtcGx1cy1zcXVhcmU6IFwiXFxmMGQ0XCIsXG4gICAgZ29vZ2xlLXdhbGxldDogXCJcXGYxZWVcIixcbiAgICBncmFkdWF0aW9uLWNhcDogXCJcXGYxOWRcIixcbiAgICBncmF0aXBheTogXCJcXGYxODRcIixcbiAgICBncm91cDogXCJcXGYwYzBcIixcbiAgICBoLXNxdWFyZTogXCJcXGYwZmRcIixcbiAgICBoYWNrZXItbmV3czogXCJcXGYxZDRcIixcbiAgICBoYW5kLWdyYWItbzogXCJcXGYyNTVcIixcbiAgICBoYW5kLWxpemFyZC1vOiBcIlxcZjI1OFwiLFxuICAgIGhhbmQtby1kb3duOiBcIlxcZjBhN1wiLFxuICAgIGhhbmQtby1sZWZ0OiBcIlxcZjBhNVwiLFxuICAgIGhhbmQtby1yaWdodDogXCJcXGYwYTRcIixcbiAgICBoYW5kLW8tdXA6IFwiXFxmMGE2XCIsXG4gICAgaGFuZC1wYXBlci1vOiBcIlxcZjI1NlwiLFxuICAgIGhhbmQtcGVhY2UtbzogXCJcXGYyNWJcIixcbiAgICBoYW5kLXBvaW50ZXItbzogXCJcXGYyNWFcIixcbiAgICBoYW5kLXJvY2stbzogXCJcXGYyNTVcIixcbiAgICBoYW5kLXNjaXNzb3JzLW86IFwiXFxmMjU3XCIsXG4gICAgaGFuZC1zcG9jay1vOiBcIlxcZjI1OVwiLFxuICAgIGhhbmQtc3RvcC1vOiBcIlxcZjI1NlwiLFxuICAgIGhkZC1vOiBcIlxcZjBhMFwiLFxuICAgIGhlYWRlcjogXCJcXGYxZGNcIixcbiAgICBoZWFkcGhvbmVzOiBcIlxcZjAyNVwiLFxuICAgIGhlYXJ0OiBcIlxcZjAwNFwiLFxuICAgIGhlYXJ0LW86IFwiXFxmMDhhXCIsXG4gICAgaGVhcnRiZWF0OiBcIlxcZjIxZVwiLFxuICAgIGhpc3Rvcnk6IFwiXFxmMWRhXCIsXG4gICAgaG9tZTogXCJcXGYwMTVcIixcbiAgICBob3NwaXRhbC1vOiBcIlxcZjBmOFwiLFxuICAgIGhvdGVsOiBcIlxcZjIzNlwiLFxuICAgIGhvdXJnbGFzczogXCJcXGYyNTRcIixcbiAgICBob3VyZ2xhc3MtMTogXCJcXGYyNTFcIixcbiAgICBob3VyZ2xhc3MtMjogXCJcXGYyNTJcIixcbiAgICBob3VyZ2xhc3MtMzogXCJcXGYyNTNcIixcbiAgICBob3VyZ2xhc3MtZW5kOiBcIlxcZjI1M1wiLFxuICAgIGhvdXJnbGFzcy1oYWxmOiBcIlxcZjI1MlwiLFxuICAgIGhvdXJnbGFzcy1vOiBcIlxcZjI1MFwiLFxuICAgIGhvdXJnbGFzcy1zdGFydDogXCJcXGYyNTFcIixcbiAgICBob3V6ejogXCJcXGYyN2NcIixcbiAgICBodG1sNTogXCJcXGYxM2JcIixcbiAgICBpLWN1cnNvcjogXCJcXGYyNDZcIixcbiAgICBpbHM6IFwiXFxmMjBiXCIsXG4gICAgaW1hZ2U6IFwiXFxmMDNlXCIsXG4gICAgaW5ib3g6IFwiXFxmMDFjXCIsXG4gICAgaW5kZW50OiBcIlxcZjAzY1wiLFxuICAgIGluZHVzdHJ5OiBcIlxcZjI3NVwiLFxuICAgIGluZm86IFwiXFxmMTI5XCIsXG4gICAgaW5mby1jaXJjbGU6IFwiXFxmMDVhXCIsXG4gICAgaW5yOiBcIlxcZjE1NlwiLFxuICAgIGluc3RhZ3JhbTogXCJcXGYxNmRcIixcbiAgICBpbnN0aXR1dGlvbjogXCJcXGYxOWNcIixcbiAgICBpbnRlcm5ldC1leHBsb3JlcjogXCJcXGYyNmJcIixcbiAgICBpbnRlcnNleDogXCJcXGYyMjRcIixcbiAgICBpb3hob3N0OiBcIlxcZjIwOFwiLFxuICAgIGl0YWxpYzogXCJcXGYwMzNcIixcbiAgICBqb29tbGE6IFwiXFxmMWFhXCIsXG4gICAganB5OiBcIlxcZjE1N1wiLFxuICAgIGpzZmlkZGxlOiBcIlxcZjFjY1wiLFxuICAgIGtleTogXCJcXGYwODRcIixcbiAgICBrZXlib2FyZC1vOiBcIlxcZjExY1wiLFxuICAgIGtydzogXCJcXGYxNTlcIixcbiAgICBsYW5ndWFnZTogXCJcXGYxYWJcIixcbiAgICBsYXB0b3A6IFwiXFxmMTA5XCIsXG4gICAgbGFzdGZtOiBcIlxcZjIwMlwiLFxuICAgIGxhc3RmbS1zcXVhcmU6IFwiXFxmMjAzXCIsXG4gICAgbGVhZjogXCJcXGYwNmNcIixcbiAgICBsZWFucHViOiBcIlxcZjIxMlwiLFxuICAgIGxlZ2FsOiBcIlxcZjBlM1wiLFxuICAgIGxlbW9uLW86IFwiXFxmMDk0XCIsXG4gICAgbGV2ZWwtZG93bjogXCJcXGYxNDlcIixcbiAgICBsZXZlbC11cDogXCJcXGYxNDhcIixcbiAgICBsaWZlLWJvdXk6IFwiXFxmMWNkXCIsXG4gICAgbGlmZS1idW95OiBcIlxcZjFjZFwiLFxuICAgIGxpZmUtcmluZzogXCJcXGYxY2RcIixcbiAgICBsaWZlLXNhdmVyOiBcIlxcZjFjZFwiLFxuICAgIGxpZ2h0YnVsYi1vOiBcIlxcZjBlYlwiLFxuICAgIGxpbmUtY2hhcnQ6IFwiXFxmMjAxXCIsXG4gICAgbGluazogXCJcXGYwYzFcIixcbiAgICBsaW5rZWRpbjogXCJcXGYwZTFcIixcbiAgICBsaW5rZWRpbi1zcXVhcmU6IFwiXFxmMDhjXCIsXG4gICAgbGludXg6IFwiXFxmMTdjXCIsXG4gICAgbGlzdDogXCJcXGYwM2FcIixcbiAgICBsaXN0LWFsdDogXCJcXGYwMjJcIixcbiAgICBsaXN0LW9sOiBcIlxcZjBjYlwiLFxuICAgIGxpc3QtdWw6IFwiXFxmMGNhXCIsXG4gICAgbG9jYXRpb24tYXJyb3c6IFwiXFxmMTI0XCIsXG4gICAgbG9jazogXCJcXGYwMjNcIixcbiAgICBsb25nLWFycm93LWRvd246IFwiXFxmMTc1XCIsXG4gICAgbG9uZy1hcnJvdy1sZWZ0OiBcIlxcZjE3N1wiLFxuICAgIGxvbmctYXJyb3ctcmlnaHQ6IFwiXFxmMTc4XCIsXG4gICAgbG9uZy1hcnJvdy11cDogXCJcXGYxNzZcIixcbiAgICBtYWdpYzogXCJcXGYwZDBcIixcbiAgICBtYWduZXQ6IFwiXFxmMDc2XCIsXG4gICAgbWFpbC1mb3J3YXJkOiBcIlxcZjA2NFwiLFxuICAgIG1haWwtcmVwbHk6IFwiXFxmMTEyXCIsXG4gICAgbWFpbC1yZXBseS1hbGw6IFwiXFxmMTIyXCIsXG4gICAgbWFsZTogXCJcXGYxODNcIixcbiAgICBtYXA6IFwiXFxmMjc5XCIsXG4gICAgbWFwLW1hcmtlcjogXCJcXGYwNDFcIixcbiAgICBtYXAtbzogXCJcXGYyNzhcIixcbiAgICBtYXAtcGluOiBcIlxcZjI3NlwiLFxuICAgIG1hcC1zaWduczogXCJcXGYyNzdcIixcbiAgICBtYXJzOiBcIlxcZjIyMlwiLFxuICAgIG1hcnMtZG91YmxlOiBcIlxcZjIyN1wiLFxuICAgIG1hcnMtc3Ryb2tlOiBcIlxcZjIyOVwiLFxuICAgIG1hcnMtc3Ryb2tlLWg6IFwiXFxmMjJiXCIsXG4gICAgbWFycy1zdHJva2UtdjogXCJcXGYyMmFcIixcbiAgICBtYXhjZG46IFwiXFxmMTM2XCIsXG4gICAgbWVhbnBhdGg6IFwiXFxmMjBjXCIsXG4gICAgbWVkaXVtOiBcIlxcZjIzYVwiLFxuICAgIG1lZGtpdDogXCJcXGYwZmFcIixcbiAgICBtZWgtbzogXCJcXGYxMWFcIixcbiAgICBtZXJjdXJ5OiBcIlxcZjIyM1wiLFxuICAgIG1pY3JvcGhvbmU6IFwiXFxmMTMwXCIsXG4gICAgbWljcm9waG9uZS1zbGFzaDogXCJcXGYxMzFcIixcbiAgICBtaW51czogXCJcXGYwNjhcIixcbiAgICBtaW51cy1jaXJjbGU6IFwiXFxmMDU2XCIsXG4gICAgbWludXMtc3F1YXJlOiBcIlxcZjE0NlwiLFxuICAgIG1pbnVzLXNxdWFyZS1vOiBcIlxcZjE0N1wiLFxuICAgIG1vYmlsZTogXCJcXGYxMGJcIixcbiAgICBtb2JpbGUtcGhvbmU6IFwiXFxmMTBiXCIsXG4gICAgbW9uZXk6IFwiXFxmMGQ2XCIsXG4gICAgbW9vbi1vOiBcIlxcZjE4NlwiLFxuICAgIG1vcnRhci1ib2FyZDogXCJcXGYxOWRcIixcbiAgICBtb3RvcmN5Y2xlOiBcIlxcZjIxY1wiLFxuICAgIG1vdXNlLXBvaW50ZXI6IFwiXFxmMjQ1XCIsXG4gICAgbXVzaWM6IFwiXFxmMDAxXCIsXG4gICAgbmF2aWNvbjogXCJcXGYwYzlcIixcbiAgICBuZXV0ZXI6IFwiXFxmMjJjXCIsXG4gICAgbmV3c3BhcGVyLW86IFwiXFxmMWVhXCIsXG4gICAgb2JqZWN0LWdyb3VwOiBcIlxcZjI0N1wiLFxuICAgIG9iamVjdC11bmdyb3VwOiBcIlxcZjI0OFwiLFxuICAgIG9kbm9rbGFzc25pa2k6IFwiXFxmMjYzXCIsXG4gICAgb2Rub2tsYXNzbmlraS1zcXVhcmU6IFwiXFxmMjY0XCIsXG4gICAgb3BlbmNhcnQ6IFwiXFxmMjNkXCIsXG4gICAgb3BlbmlkOiBcIlxcZjE5YlwiLFxuICAgIG9wZXJhOiBcIlxcZjI2YVwiLFxuICAgIG9wdGluLW1vbnN0ZXI6IFwiXFxmMjNjXCIsXG4gICAgb3V0ZGVudDogXCJcXGYwM2JcIixcbiAgICBwYWdlbGluZXM6IFwiXFxmMThjXCIsXG4gICAgcGFpbnQtYnJ1c2g6IFwiXFxmMWZjXCIsXG4gICAgcGFwZXItcGxhbmU6IFwiXFxmMWQ4XCIsXG4gICAgcGFwZXItcGxhbmUtbzogXCJcXGYxZDlcIixcbiAgICBwYXBlcmNsaXA6IFwiXFxmMGM2XCIsXG4gICAgcGFyYWdyYXBoOiBcIlxcZjFkZFwiLFxuICAgIHBhc3RlOiBcIlxcZjBlYVwiLFxuICAgIHBhdXNlOiBcIlxcZjA0Y1wiLFxuICAgIHBhdzogXCJcXGYxYjBcIixcbiAgICBwYXlwYWw6IFwiXFxmMWVkXCIsXG4gICAgcGVuY2lsOiBcIlxcZjA0MFwiLFxuICAgIHBlbmNpbC1zcXVhcmU6IFwiXFxmMTRiXCIsXG4gICAgcGVuY2lsLXNxdWFyZS1vOiBcIlxcZjA0NFwiLFxuICAgIHBob25lOiBcIlxcZjA5NVwiLFxuICAgIHBob25lLXNxdWFyZTogXCJcXGYwOThcIixcbiAgICBwaG90bzogXCJcXGYwM2VcIixcbiAgICBwaWN0dXJlLW86IFwiXFxmMDNlXCIsXG4gICAgcGllLWNoYXJ0OiBcIlxcZjIwMFwiLFxuICAgIHBpZWQtcGlwZXI6IFwiXFxmMWE3XCIsXG4gICAgcGllZC1waXBlci1hbHQ6IFwiXFxmMWE4XCIsXG4gICAgcGludGVyZXN0OiBcIlxcZjBkMlwiLFxuICAgIHBpbnRlcmVzdC1wOiBcIlxcZjIzMVwiLFxuICAgIHBpbnRlcmVzdC1zcXVhcmU6IFwiXFxmMGQzXCIsXG4gICAgcGxhbmU6IFwiXFxmMDcyXCIsXG4gICAgcGxheTogXCJcXGYwNGJcIixcbiAgICBwbGF5LWNpcmNsZTogXCJcXGYxNDRcIixcbiAgICBwbGF5LWNpcmNsZS1vOiBcIlxcZjAxZFwiLFxuICAgIHBsdWc6IFwiXFxmMWU2XCIsXG4gICAgcGx1czogXCJcXGYwNjdcIixcbiAgICBwbHVzLWNpcmNsZTogXCJcXGYwNTVcIixcbiAgICBwbHVzLXNxdWFyZTogXCJcXGYwZmVcIixcbiAgICBwbHVzLXNxdWFyZS1vOiBcIlxcZjE5NlwiLFxuICAgIHBvd2VyLW9mZjogXCJcXGYwMTFcIixcbiAgICBwcmludDogXCJcXGYwMmZcIixcbiAgICBwdXp6bGUtcGllY2U6IFwiXFxmMTJlXCIsXG4gICAgcXE6IFwiXFxmMWQ2XCIsXG4gICAgcXJjb2RlOiBcIlxcZjAyOVwiLFxuICAgIHF1ZXN0aW9uOiBcIlxcZjEyOFwiLFxuICAgIHF1ZXN0aW9uLWNpcmNsZTogXCJcXGYwNTlcIixcbiAgICBxdW90ZS1sZWZ0OiBcIlxcZjEwZFwiLFxuICAgIHF1b3RlLXJpZ2h0OiBcIlxcZjEwZVwiLFxuICAgIHJhOiBcIlxcZjFkMFwiLFxuICAgIHJhbmRvbTogXCJcXGYwNzRcIixcbiAgICByZWJlbDogXCJcXGYxZDBcIixcbiAgICByZWN5Y2xlOiBcIlxcZjFiOFwiLFxuICAgIHJlZGRpdDogXCJcXGYxYTFcIixcbiAgICByZWRkaXQtc3F1YXJlOiBcIlxcZjFhMlwiLFxuICAgIHJlZnJlc2g6IFwiXFxmMDIxXCIsXG4gICAgcmVnaXN0ZXJlZDogXCJcXGYyNWRcIixcbiAgICByZW1vdmU6IFwiXFxmMDBkXCIsXG4gICAgcmVucmVuOiBcIlxcZjE4YlwiLFxuICAgIHJlb3JkZXI6IFwiXFxmMGM5XCIsXG4gICAgcmVwZWF0OiBcIlxcZjAxZVwiLFxuICAgIHJlcGx5OiBcIlxcZjExMlwiLFxuICAgIHJlcGx5LWFsbDogXCJcXGYxMjJcIixcbiAgICByZXR3ZWV0OiBcIlxcZjA3OVwiLFxuICAgIHJtYjogXCJcXGYxNTdcIixcbiAgICByb2FkOiBcIlxcZjAxOFwiLFxuICAgIHJvY2tldDogXCJcXGYxMzVcIixcbiAgICByb3RhdGUtbGVmdDogXCJcXGYwZTJcIixcbiAgICByb3RhdGUtcmlnaHQ6IFwiXFxmMDFlXCIsXG4gICAgcm91YmxlOiBcIlxcZjE1OFwiLFxuICAgIHJzczogXCJcXGYwOWVcIixcbiAgICByc3Mtc3F1YXJlOiBcIlxcZjE0M1wiLFxuICAgIHJ1YjogXCJcXGYxNThcIixcbiAgICBydWJsZTogXCJcXGYxNThcIixcbiAgICBydXBlZTogXCJcXGYxNTZcIixcbiAgICBzYWZhcmk6IFwiXFxmMjY3XCIsXG4gICAgc2F2ZTogXCJcXGYwYzdcIixcbiAgICBzY2lzc29yczogXCJcXGYwYzRcIixcbiAgICBzZWFyY2g6IFwiXFxmMDAyXCIsXG4gICAgc2VhcmNoLW1pbnVzOiBcIlxcZjAxMFwiLFxuICAgIHNlYXJjaC1wbHVzOiBcIlxcZjAwZVwiLFxuICAgIHNlbGxzeTogXCJcXGYyMTNcIixcbiAgICBzZW5kOiBcIlxcZjFkOFwiLFxuICAgIHNlbmQtbzogXCJcXGYxZDlcIixcbiAgICBzZXJ2ZXI6IFwiXFxmMjMzXCIsXG4gICAgc2hhcmU6IFwiXFxmMDY0XCIsXG4gICAgc2hhcmUtYWx0OiBcIlxcZjFlMFwiLFxuICAgIHNoYXJlLWFsdC1zcXVhcmU6IFwiXFxmMWUxXCIsXG4gICAgc2hhcmUtc3F1YXJlOiBcIlxcZjE0ZFwiLFxuICAgIHNoYXJlLXNxdWFyZS1vOiBcIlxcZjA0NVwiLFxuICAgIHNoZWtlbDogXCJcXGYyMGJcIixcbiAgICBzaGVxZWw6IFwiXFxmMjBiXCIsXG4gICAgc2hpZWxkOiBcIlxcZjEzMlwiLFxuICAgIHNoaXA6IFwiXFxmMjFhXCIsXG4gICAgc2hpcnRzaW5idWxrOiBcIlxcZjIxNFwiLFxuICAgIHNob3BwaW5nLWNhcnQ6IFwiXFxmMDdhXCIsXG4gICAgc2lnbi1pbjogXCJcXGYwOTBcIixcbiAgICBzaWduLW91dDogXCJcXGYwOGJcIixcbiAgICBzaWduYWw6IFwiXFxmMDEyXCIsXG4gICAgc2ltcGx5YnVpbHQ6IFwiXFxmMjE1XCIsXG4gICAgc2l0ZW1hcDogXCJcXGYwZThcIixcbiAgICBza3lhdGxhczogXCJcXGYyMTZcIixcbiAgICBza3lwZTogXCJcXGYxN2VcIixcbiAgICBzbGFjazogXCJcXGYxOThcIixcbiAgICBzbGlkZXJzOiBcIlxcZjFkZVwiLFxuICAgIHNsaWRlc2hhcmU6IFwiXFxmMWU3XCIsXG4gICAgc21pbGUtbzogXCJcXGYxMThcIixcbiAgICBzb2NjZXItYmFsbC1vOiBcIlxcZjFlM1wiLFxuICAgIHNvcnQ6IFwiXFxmMGRjXCIsXG4gICAgc29ydC1hbHBoYS1hc2M6IFwiXFxmMTVkXCIsXG4gICAgc29ydC1hbHBoYS1kZXNjOiBcIlxcZjE1ZVwiLFxuICAgIHNvcnQtYW1vdW50LWFzYzogXCJcXGYxNjBcIixcbiAgICBzb3J0LWFtb3VudC1kZXNjOiBcIlxcZjE2MVwiLFxuICAgIHNvcnQtYXNjOiBcIlxcZjBkZVwiLFxuICAgIHNvcnQtZGVzYzogXCJcXGYwZGRcIixcbiAgICBzb3J0LWRvd246IFwiXFxmMGRkXCIsXG4gICAgc29ydC1udW1lcmljLWFzYzogXCJcXGYxNjJcIixcbiAgICBzb3J0LW51bWVyaWMtZGVzYzogXCJcXGYxNjNcIixcbiAgICBzb3J0LXVwOiBcIlxcZjBkZVwiLFxuICAgIHNvdW5kY2xvdWQ6IFwiXFxmMWJlXCIsXG4gICAgc3BhY2Utc2h1dHRsZTogXCJcXGYxOTdcIixcbiAgICBzcGlubmVyOiBcIlxcZjExMFwiLFxuICAgIHNwb29uOiBcIlxcZjFiMVwiLFxuICAgIHNwb3RpZnk6IFwiXFxmMWJjXCIsXG4gICAgc3F1YXJlOiBcIlxcZjBjOFwiLFxuICAgIHNxdWFyZS1vOiBcIlxcZjA5NlwiLFxuICAgIHN0YWNrLWV4Y2hhbmdlOiBcIlxcZjE4ZFwiLFxuICAgIHN0YWNrLW92ZXJmbG93OiBcIlxcZjE2Y1wiLFxuICAgIHN0YXI6IFwiXFxmMDA1XCIsXG4gICAgc3Rhci1oYWxmOiBcIlxcZjA4OVwiLFxuICAgIHN0YXItaGFsZi1lbXB0eTogXCJcXGYxMjNcIixcbiAgICBzdGFyLWhhbGYtZnVsbDogXCJcXGYxMjNcIixcbiAgICBzdGFyLWhhbGYtbzogXCJcXGYxMjNcIixcbiAgICBzdGFyLW86IFwiXFxmMDA2XCIsXG4gICAgc3RlYW06IFwiXFxmMWI2XCIsXG4gICAgc3RlYW0tc3F1YXJlOiBcIlxcZjFiN1wiLFxuICAgIHN0ZXAtYmFja3dhcmQ6IFwiXFxmMDQ4XCIsXG4gICAgc3RlcC1mb3J3YXJkOiBcIlxcZjA1MVwiLFxuICAgIHN0ZXRob3Njb3BlOiBcIlxcZjBmMVwiLFxuICAgIHN0aWNreS1ub3RlOiBcIlxcZjI0OVwiLFxuICAgIHN0aWNreS1ub3RlLW86IFwiXFxmMjRhXCIsXG4gICAgc3RvcDogXCJcXGYwNGRcIixcbiAgICBzdHJlZXQtdmlldzogXCJcXGYyMWRcIixcbiAgICBzdHJpa2V0aHJvdWdoOiBcIlxcZjBjY1wiLFxuICAgIHN0dW1ibGV1cG9uOiBcIlxcZjFhNFwiLFxuICAgIHN0dW1ibGV1cG9uLWNpcmNsZTogXCJcXGYxYTNcIixcbiAgICBzdWJzY3JpcHQ6IFwiXFxmMTJjXCIsXG4gICAgc3Vid2F5OiBcIlxcZjIzOVwiLFxuICAgIHN1aXRjYXNlOiBcIlxcZjBmMlwiLFxuICAgIHN1bi1vOiBcIlxcZjE4NVwiLFxuICAgIHN1cGVyc2NyaXB0OiBcIlxcZjEyYlwiLFxuICAgIHN1cHBvcnQ6IFwiXFxmMWNkXCIsXG4gICAgdGFibGU6IFwiXFxmMGNlXCIsXG4gICAgdGFibGV0OiBcIlxcZjEwYVwiLFxuICAgIHRhY2hvbWV0ZXI6IFwiXFxmMGU0XCIsXG4gICAgdGFnOiBcIlxcZjAyYlwiLFxuICAgIHRhZ3M6IFwiXFxmMDJjXCIsXG4gICAgdGFza3M6IFwiXFxmMGFlXCIsXG4gICAgdGF4aTogXCJcXGYxYmFcIixcbiAgICB0ZWxldmlzaW9uOiBcIlxcZjI2Y1wiLFxuICAgIHRlbmNlbnQtd2VpYm86IFwiXFxmMWQ1XCIsXG4gICAgdGVybWluYWw6IFwiXFxmMTIwXCIsXG4gICAgdGV4dC1oZWlnaHQ6IFwiXFxmMDM0XCIsXG4gICAgdGV4dC13aWR0aDogXCJcXGYwMzVcIixcbiAgICB0aDogXCJcXGYwMGFcIixcbiAgICB0aC1sYXJnZTogXCJcXGYwMDlcIixcbiAgICB0aC1saXN0OiBcIlxcZjAwYlwiLFxuICAgIHRodW1iLXRhY2s6IFwiXFxmMDhkXCIsXG4gICAgdGh1bWJzLWRvd246IFwiXFxmMTY1XCIsXG4gICAgdGh1bWJzLW8tZG93bjogXCJcXGYwODhcIixcbiAgICB0aHVtYnMtby11cDogXCJcXGYwODdcIixcbiAgICB0aHVtYnMtdXA6IFwiXFxmMTY0XCIsXG4gICAgdGlja2V0OiBcIlxcZjE0NVwiLFxuICAgIHRpbWVzOiBcIlxcZjAwZFwiLFxuICAgIHRpbWVzLWNpcmNsZTogXCJcXGYwNTdcIixcbiAgICB0aW1lcy1jaXJjbGUtbzogXCJcXGYwNWNcIixcbiAgICB0aW50OiBcIlxcZjA0M1wiLFxuICAgIHRvZ2dsZS1kb3duOiBcIlxcZjE1MFwiLFxuICAgIHRvZ2dsZS1sZWZ0OiBcIlxcZjE5MVwiLFxuICAgIHRvZ2dsZS1vZmY6IFwiXFxmMjA0XCIsXG4gICAgdG9nZ2xlLW9uOiBcIlxcZjIwNVwiLFxuICAgIHRvZ2dsZS1yaWdodDogXCJcXGYxNTJcIixcbiAgICB0b2dnbGUtdXA6IFwiXFxmMTUxXCIsXG4gICAgdHJhZGVtYXJrOiBcIlxcZjI1Y1wiLFxuICAgIHRyYWluOiBcIlxcZjIzOFwiLFxuICAgIHRyYW5zZ2VuZGVyOiBcIlxcZjIyNFwiLFxuICAgIHRyYW5zZ2VuZGVyLWFsdDogXCJcXGYyMjVcIixcbiAgICB0cmFzaDogXCJcXGYxZjhcIixcbiAgICB0cmFzaC1vOiBcIlxcZjAxNFwiLFxuICAgIHRyZWU6IFwiXFxmMWJiXCIsXG4gICAgdHJlbGxvOiBcIlxcZjE4MVwiLFxuICAgIHRyaXBhZHZpc29yOiBcIlxcZjI2MlwiLFxuICAgIHRyb3BoeTogXCJcXGYwOTFcIixcbiAgICB0cnVjazogXCJcXGYwZDFcIixcbiAgICB0cnk6IFwiXFxmMTk1XCIsXG4gICAgdHR5OiBcIlxcZjFlNFwiLFxuICAgIHR1bWJscjogXCJcXGYxNzNcIixcbiAgICB0dW1ibHItc3F1YXJlOiBcIlxcZjE3NFwiLFxuICAgIHR1cmtpc2gtbGlyYTogXCJcXGYxOTVcIixcbiAgICB0djogXCJcXGYyNmNcIixcbiAgICB0d2l0Y2g6IFwiXFxmMWU4XCIsXG4gICAgdHdpdHRlcjogXCJcXGYwOTlcIixcbiAgICB0d2l0dGVyLXNxdWFyZTogXCJcXGYwODFcIixcbiAgICB1bWJyZWxsYTogXCJcXGYwZTlcIixcbiAgICB1bmRlcmxpbmU6IFwiXFxmMGNkXCIsXG4gICAgdW5kbzogXCJcXGYwZTJcIixcbiAgICB1bml2ZXJzaXR5OiBcIlxcZjE5Y1wiLFxuICAgIHVubGluazogXCJcXGYxMjdcIixcbiAgICB1bmxvY2s6IFwiXFxmMDljXCIsXG4gICAgdW5sb2NrLWFsdDogXCJcXGYxM2VcIixcbiAgICB1bnNvcnRlZDogXCJcXGYwZGNcIixcbiAgICB1cGxvYWQ6IFwiXFxmMDkzXCIsXG4gICAgdXNkOiBcIlxcZjE1NVwiLFxuICAgIHVzZXI6IFwiXFxmMDA3XCIsXG4gICAgdXNlci1tZDogXCJcXGYwZjBcIixcbiAgICB1c2VyLXBsdXM6IFwiXFxmMjM0XCIsXG4gICAgdXNlci1zZWNyZXQ6IFwiXFxmMjFiXCIsXG4gICAgdXNlci10aW1lczogXCJcXGYyMzVcIixcbiAgICB1c2VyczogXCJcXGYwYzBcIixcbiAgICB2ZW51czogXCJcXGYyMjFcIixcbiAgICB2ZW51cy1kb3VibGU6IFwiXFxmMjI2XCIsXG4gICAgdmVudXMtbWFyczogXCJcXGYyMjhcIixcbiAgICB2aWFjb2luOiBcIlxcZjIzN1wiLFxuICAgIHZpZGVvLWNhbWVyYTogXCJcXGYwM2RcIixcbiAgICB2aW1lbzogXCJcXGYyN2RcIixcbiAgICB2aW1lby1zcXVhcmU6IFwiXFxmMTk0XCIsXG4gICAgdmluZTogXCJcXGYxY2FcIixcbiAgICB2azogXCJcXGYxODlcIixcbiAgICB2b2x1bWUtZG93bjogXCJcXGYwMjdcIixcbiAgICB2b2x1bWUtb2ZmOiBcIlxcZjAyNlwiLFxuICAgIHZvbHVtZS11cDogXCJcXGYwMjhcIixcbiAgICB3YXJuaW5nOiBcIlxcZjA3MVwiLFxuICAgIHdlY2hhdDogXCJcXGYxZDdcIixcbiAgICB3ZWlibzogXCJcXGYxOGFcIixcbiAgICB3ZWl4aW46IFwiXFxmMWQ3XCIsXG4gICAgd2hhdHNhcHA6IFwiXFxmMjMyXCIsXG4gICAgd2hlZWxjaGFpcjogXCJcXGYxOTNcIixcbiAgICB3aWZpOiBcIlxcZjFlYlwiLFxuICAgIHdpa2lwZWRpYS13OiBcIlxcZjI2NlwiLFxuICAgIHdpbmRvd3M6IFwiXFxmMTdhXCIsXG4gICAgd29uOiBcIlxcZjE1OVwiLFxuICAgIHdvcmRwcmVzczogXCJcXGYxOWFcIixcbiAgICB3cmVuY2g6IFwiXFxmMGFkXCIsXG4gICAgeGluZzogXCJcXGYxNjhcIixcbiAgICB4aW5nLXNxdWFyZTogXCJcXGYxNjlcIixcbiAgICB5LWNvbWJpbmF0b3I6IFwiXFxmMjNiXCIsXG4gICAgeS1jb21iaW5hdG9yLXNxdWFyZTogXCJcXGYxZDRcIixcbiAgICB5YWhvbzogXCJcXGYxOWVcIixcbiAgICB5YzogXCJcXGYyM2JcIixcbiAgICB5Yy1zcXVhcmU6IFwiXFxmMWQ0XCIsXG4gICAgeWVscDogXCJcXGYxZTlcIixcbiAgICB5ZW46IFwiXFxmMTU3XCIsXG4gICAgeW91dHViZTogXCJcXGYxNjdcIixcbiAgICB5b3V0dWJlLXBsYXk6IFwiXFxmMTZhXCIsXG4gICAgeW91dHViZS1zcXVhcmU6IFwiXFxmMTY2XCIsXG4pO1xuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGdW5jdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBSZW1vdmUgdGhlIHVuaXQgb2YgYSBsZW5ndGhcblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuICAgIEBpZiB0eXBlLW9mKCRudW1iZXIpID09IFwibnVtYmVyXCIgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSB7XG4gICAgICAgIEByZXR1cm4gJG51bWJlciAvICgkbnVtYmVyICogMCArIDEpO1xuICAgIH1cblxuICAgIEByZXR1cm4gJG51bWJlcjtcbn1cblxuLy8gUmVtaWZ5XG5cbkBmdW5jdGlvbiByZW1pZnkoJHNpemVzOiAoJHNpemUxLCAkc2l6ZTIsICRzaXplMywgJHNpemU0KSwgJGJhc2U6IG51bGwsICR1bml0OiBudWxsKSB7XG4gICAgJHZhbHVlLXJlbTogbnVsbDtcblxuICAgIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAgICAgJGJhc2U6IDE2O1xuXG4gICAgICAgIEBpZiAkdW5pdCA9PSBudWxsIHtcbiAgICAgICAgICAgICR1bml0OiByZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAgIEBpZiAkdW5pdCA9PSBudWxsIHtcbiAgICAgICAgICAgICR1bml0OiBlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpZiAkdmFsdWUtcmVtID09IG51bGwge1xuICAgICAgICAgICAgQGlmIHR5cGUtb2YoJHNpemUpID09IFwibnVtYmVyXCIge1xuICAgICAgICAgICAgICAgICR2YWx1ZS1yZW06IChzdHJpcC11bml0KCRzaXplKSAvIHN0cmlwLXVuaXQoJGJhc2UpKSArICR1bml0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgICAgJHZhbHVlLXJlbTogJHNpemU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICBAaWYgdHlwZS1vZigkc2l6ZSkgPT0gXCJudW1iZXJcIiB7XG4gICAgICAgICAgICAgICAgJHZhbHVlLXJlbTogJHZhbHVlLXJlbSArIFwiIFwiICsgKChzdHJpcC11bml0KCRzaXplKSAvIHN0cmlwLXVuaXQoJGJhc2UpKSArICR1bml0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICR2YWx1ZS1yZW06ICR2YWx1ZS1yZW0gKyBcIiBcIiArICRzaXplO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiAkdmFsdWUtcmVtO1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNaXhpbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBwbGFjZWhvbGRlcnNcblxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgICA6OnBsYWNlaG9sZGVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuLy8gcXVhbnRpdHkgcXVlcmllc1xuXG5AbWl4aW4gcXVhbnRpdHktcXVlcnkoJG51bWJlciwgJGNvbXBhcmlzb246IFwiZXF1YWxcIikge1xuICAgICRudGg6IFwiXCI7XG5cbiAgICBAaWYgaW5kZXgoKFwiZ3JlYXRlclwiIFwibW9yZVwiIFwiPlwiKSwgJGNvbXBhcmlzb24pIHtcbiAgICAgICAgJG50aDogXCJuICsgI3skbnVtYmVyfVwiO1xuICAgIH1cblxuICAgIEBlbHNlIGlmIGluZGV4KCAoXCJsZXNzXCIgXCJmZXdlclwiIFwiPFwiKSwgJGNvbXBhcmlzb24pIHtcbiAgICAgICAgJG50aDogXCItbiArICN7JG51bWJlcn1cIjtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiBpbmRleCgoXCJlcXVhbFwiIFwic2FtZVwiIFwiPVwiKSwgJGNvbXBhcmlzb24pIHtcbiAgICAgICAgJG50aDogJG51bWJlcjtcbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuIFwiU29ycnksIHRoYXQncyBhbiBpbnZhbGlkICRjb21wYXJpc29uIHZhbHVlLlwiO1xuICAgIH1cblxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skbnRofSk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmLFxuICAgICAgICAmIH4gKiB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHFxLWVxdWFsKCRudW1iZXIpIHtcbiAgICBAaW5jbHVkZSBxdWFudGl0eS1xdWVyeSgkbnVtYmVyLCBlcXVhbCkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBxcS1ncmVhdGVyKCRudW1iZXIpIHtcbiAgICBAaW5jbHVkZSBxdWFudGl0eS1xdWVyeSgkbnVtYmVyLCBncmVhdGVyKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIHFxLWxlc3MoJG51bWJlcikge1xuICAgIEBpbmNsdWRlIHF1YW50aXR5LXF1ZXJ5KCRudW1iZXIsIGxlc3MpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vLyBsYXllcnNcblxuQG1peGluIGxheWVyKCRsYXllci1uYW1lKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IG1hcC1nZXQoJGxheWVycywgJGxheWVyLW5hbWUpO1xufVxuXG4vLyBpY29uc1xuXG5AbWl4aW4gaWNvbigkaWNvbjogbnVsbCkge1xuICAgIGNvbnRlbnQ6IG1hcC1nZXQoJGZhLWljb25zLCAkaWNvbik7XG4gICAgZm9udC1mYW1pbHk6IFwiZm9udGF3ZXNvbWVcIiwgc2Fucy1zZXJpZjtcbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0IFwiLi4vYmFzZS9ub3JtYWxpemUvX25vcm1hbGl6ZVwiO1xyXG5AaW1wb3J0IFwiLi4vYmFzZS9ncmlkL19ncmlkXCI7XHJcbkBpbXBvcnQgXCIuLi9iYXNlL2NvbnRlbnQvX2NvbnRlbnRcIjtcclxuQGltcG9ydCBcIi4uL2Jhc2UvdXNlci1jb250ZW50L191c2VyLWNvbnRlbnRcIjtcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvYXJ0aWNsZS1jYXJkL19hcnRpY2xlLWNhcmRcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvYmFubmVyL19iYW5uZXJcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvYnV0dG9uL19idXR0b25cIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvY2FsbG91dC1jYXJkL19jYWxsb3V0LWNhcmRcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvY29tbWVudHMvX2NvbW1lbnRzXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2Zvb3Rlci1jYXJkL19mb290ZXItY2FyZFwiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9nYWxsZXJ5L19nYWxsZXJ5XCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2lmcmFtZS9faWZyYW1lXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2xvZ28vX2xvZ29cIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvbWFwL19tYXBcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvbWVudS1idXR0b24vX21lbnUtYnV0dG9uXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL21lbnUtbGlzdC9fbWVudS1saXN0XCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL25pbmphLWZvcm1zL19uaW5qYS1mb3Jtc1wiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9zZWFyY2gtZm9ybS9fc2VhcmNoLWZvcm1cIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvc3RvcnkvX3N0b3J5XCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL3N3aXBlci9fc3dpcGVyXCI7XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9wYWdlL19wYWdlXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2hlYWRlci9faGVhZGVyXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL25hdi1tb2JpbGUvX25hdi1tb2JpbGVcIjtcclxuQGltcG9ydCBcIi4uL2xheW91dHMvc2xpZGVzaG93L19zbGlkZXNob3dcIjtcclxuQGltcG9ydCBcIi4uL2xheW91dHMvY29udGVudC9fY29udGVudFwiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9jYWxsb3V0cy9fY2FsbG91dHNcIjtcclxuQGltcG9ydCBcIi4uL2xheW91dHMvcGFydG5lcnMvX3BhcnRuZXJzXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2Zvb3Rlci9fZm9vdGVyXCI7XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTm9ybWFsaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gaW1wb3J0IHZlbmRvciBzdHlsZXNcblxuQGltcG9ydCBcIm5vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL19pbXBvcnQtbm93XCI7XG5cbi8vIGN1c3RvbSBzdHlsZXNcblxuLy8gU2V0IGV2ZXJ5dGhpbmcgdG8gYm94LXNpemluZzogYm9yZGVyLWJveDtcbi8vIGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlL1xuXG5odG1sIHtcbiAgICAmIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gICAgJiB7XG4gICAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgfVxufVxuXG4vLyBCZXR0ZXIgdGV4dCByZW5kZXJpbmdcblxuaHRtbCB7XG4gICAgJiB7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIH1cbn1cblxuLy8gSUUgc25hcCBmaXhcblxuQC1tcy12aWV3cG9ydCB7XG4gICAgd2lkdGg6IGRldmljZS13aWR0aDtcbn1cblxuLy8gUmVtb3ZlIGFycm93cyBvbiBudW1iZXJzIGFuZCBkYXRlIGZpZWxkcyBpbiBXZWJraXRcblxuOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZVxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8vIFJlbW92ZSBhcnJvd3Mgb24gbnVtYmVycyBhbmQgZGF0ZSBmaWVsZHMgaW4gTW96aWxsYVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAmIHtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmVcbiAgICB9XG59XG5cbi8vIFJlc2V0IGl0YWxpY3Mgb24gYWRkcmVzc1xuXG5hZGRyZXNzIHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbn1cblxuLy8gUmVtb3ZlIG1hcmdpbiBmcm9tIGZpZ3VyZXNcblxuZmlndXJlIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxuLy8gUmVtb3ZlIGJvcmRlciByYWRpdXMgZnJvbSBpbnB1dHMgYW5kIGJ1dHRvbnMgaW4gaU9TXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgICAmIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG59XG4iLCIvLyBIZWxwZXIgZnVuY3Rpb24gZm9yIHRoZSBub3JtYWxpemUoKSBtaXhpbi5cbkBmdW5jdGlvbiBfbm9ybWFsaXplLWluY2x1ZGUoJHNlY3Rpb24sICRleGNsdWRlOiBudWxsKSB7XG4gIC8vIEluaXRpYWxpemUgdGhlIGdsb2JhbCB2YXJpYWJsZXMgbmVlZGVkIGJ5IHRoaXMgZnVuY3Rpb24uXG4gIEBpZiBub3QgZ2xvYmFsX3ZhcmlhYmxlX2V4aXN0cyhfbm9ybWFsaXplLWluY2x1ZGUpIHtcbiAgICAkX25vcm1hbGl6ZS1pbmNsdWRlOiAoKSAhZ2xvYmFsO1xuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6ICgpICFnbG9iYWw7XG4gIH1cbiAgLy8gU2luY2Ugd2UgYXJlIGdpdmVuIDIgcGFyYW1ldGVycywgc2V0IHRoZSBnbG9iYWwgdmFyaWFibGVzLlxuICBAaWYgJGV4Y2x1ZGUgIT0gbnVsbCB7XG4gICAgJGluY2x1ZGU6ICRzZWN0aW9uO1xuICAgIC8vIFNhc3MgZG9lc24ndCBoYXZlIHN0YXRpYyB2YXJpYWJsZXMsIHNvIHRoZSB3b3JrLWFyb3VuZCBpcyB0byBzdHVmZiB0aGVzZVxuICAgIC8vIHZhbHVlcyBpbnRvIGdsb2JhbCB2YXJpYWJsZXMgc28gd2UgY2FuIGFjY2VzcyB0aGVtIGluIGZ1dHVyZSBjYWxscy5cbiAgICAkX25vcm1hbGl6ZS1pbmNsdWRlOiBpZih0eXBlLW9mKCRpbmNsdWRlKSA9PSAnbGlzdCcsICRpbmNsdWRlLCAoJGluY2x1ZGUpKSAhZ2xvYmFsO1xuICAgICRfbm9ybWFsaXplLWV4Y2x1ZGU6IGlmKHR5cGUtb2YoJGV4Y2x1ZGUpID09ICdsaXN0JywgJGV4Y2x1ZGUsICgkZXhjbHVkZSkpICFnbG9iYWw7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHNlY3Rpb24gaXMgaW4gdGhlICRpbmNsdWRlIGxpc3QuXG4gIEBpZiBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCAkc2VjdGlvbikge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICAvLyBJZiAkaW5jbHVkZSBpcyBzZXQgdG8gKGFsbCksIG1ha2Ugc3VyZSAkc2VjdGlvbiBpcyBub3QgaW4gJGV4Y2x1ZGUuXG4gIEBlbHNlIGlmIG5vdCBpbmRleCgkX25vcm1hbGl6ZS1leGNsdWRlLCAkc2VjdGlvbikgYW5kIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsIGFsbCkge1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuICBAcmV0dXJuIGZhbHNlO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplKCRpbmNsdWRlOiAoYWxsKSwgJGV4Y2x1ZGU6ICgpKSB7XG4gIC8vIEluaXRpYWxpemUgdGhlIGhlbHBlciBmdW5jdGlvbiBieSBwYXNzaW5nIGl0IHRoaXMgbWl4aW4ncyBwYXJhbWV0ZXJzLlxuICAkaW5pdDogX25vcm1hbGl6ZS1pbmNsdWRlKCRpbmNsdWRlLCAkZXhjbHVkZSk7XG5cbiAgLy8gSWYgd2UndmUgY3VzdG9taXplZCBhbnkgZm9udCB2YXJpYWJsZXMsIHdlJ2xsIG5lZWQgZXh0cmEgcHJvcGVydGllcy5cbiAgQGlmICRiYXNlLWxpbmUtaGVpZ2h0ICE9IDI0cHhcbiAgICBvciAkYmFzZS11bml0ICE9ICdlbSdcbiAgICBvciAkaDItZm9udC1zaXplICE9IDEuNSAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDMtZm9udC1zaXplICE9IDEuMTcgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDQtZm9udC1zaXplICE9IDEgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDUtZm9udC1zaXplICE9IDAuODMgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDYtZm9udC1zaXplICE9IDAuNjcgKiAkYmFzZS1mb250LXNpemUge1xuICAgICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZG9jdW1lbnQpIHtcbiAgICAvKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cblxuICAgIGh0bWwge1xuICAgICAgQGlmICRiYXNlLWZvbnQtZmFtaWx5IHtcbiAgICAgICAgLyogQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLiAqL1xuICAgICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gICAgICB9XG4gICAgICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHggb3IgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvLyBDb3JyZWN0IG9sZCBicm93c2VyIGJ1ZyB0aGF0IHByZXZlbnRlZCBhY2Nlc3NpYmxlIHJlc2l6aW5nIG9mIHRleHRcbiAgICAgICAgLy8gd2hlbiByb290IGZvbnQtc2l6ZSBpcyBzZXQgd2l0aCBweCBvciBlbS5cbiAgICAgICAgZm9udC1zaXplOiAoJGJhc2UtZm9udC1zaXplIC8gMTZweCkgKiAxMDAlO1xuICAgICAgfVxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNlY3Rpb25zKSB7XG4gICAgLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBib2R5IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGFydGljbGUsXG4gICAgYXNpZGUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBuYXYsXG4gICAgc2VjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiAqL1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMC42N2VtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgyLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgzLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg0LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg1LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg2IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg2LWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShncm91cGluZykge1xuICAgIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cblxuICAgICAgZGwsXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICovXG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBvbCxcbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGZpZ2NhcHRpb24sXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cblxuICAgIGZpZ3VyZSB7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDFlbSAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuXG4gICAgaHIge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIG1haW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBwLFxuICAgICAgcHJlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgcHJlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGxpbmtzKSB7XG4gICAgLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHRleHQpIHtcbiAgICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGFiYnJbdGl0bGVdIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgY29kZSxcbiAgICBrYmQsXG4gICAgc2FtcCB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuXG4gICAgZGZuIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1YixcbiAgICBzdXAge1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgYm90dG9tOiAtMC4yNWVtO1xuICAgIH1cblxuICAgIHN1cCB7XG4gICAgICB0b3A6IC0wLjVlbTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGVtYmVkZGVkKSB7XG4gICAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuXG4gICAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgc3ZnOm5vdCg6cm9vdCkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGZvcm1zKSB7XG4gICAgLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXQsXG4gICAgb3B0Z3JvdXAsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBpZigkYmFzZS1mb250LWZhbWlseSwgJGJhc2UtZm9udC1mYW1pbHksIHNhbnMtc2VyaWYpOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAxICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gICAgICB9XG4gICAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbiB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgc2VsZWN0IHsgLyogMSAqL1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgICB9XG5cbiAgICBidXR0b24sXG4gICAgW3R5cGU9XCJidXR0b25cIl0sXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuXG4gICAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqL1xuXG4gICAgICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICAgICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5cbiAgICBpbnB1dCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG5cbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAgICAgICAqL1xuXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBmaWVsZHNldCB7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZlcnRpY2FsIFJoeXRobVxuLy9cbi8vIFRoaXMgaXMgdGhlIG1pbmltYWwgYW1vdW50IG9mIGNvZGUgbmVlZGVkIHRvIGNyZWF0ZSB2ZXJ0aWNhbCByaHl0aG0gaW4gb3VyXG4vLyBDU1MuIElmIHlvdSBhcmUgbG9va2luZyBmb3IgYSByb2J1c3Qgc29sdXRpb24sIGxvb2sgYXQgdGhlIGV4Y2VsbGVudCBUeXBleVxuLy8gbGlicmFyeS4gQHNlZSBodHRwczovL2dpdGh1Yi5jb20vanB0YXJhbnRvL3R5cGV5XG5cbkBmdW5jdGlvbiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUsICR1bml0OiAkYmFzZS11bml0KSB7XG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gcHgge1xuICAgIEBlcnJvciBcIlRoZSBub3JtYWxpemUgdmVydGljYWwtcmh5dGhtIG1vZHVsZSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIEBpZiAkdW5pdCA9PSByZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxcmVtO1xuICB9XG4gIEBlbHNlIGlmICR1bml0ID09IGVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkcmVsYXRpdmUtdG8pICogMWVtO1xuICB9XG4gIEBlbHNlIHsgLy8gJHVuaXQgPT0gcHhcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxufVxuXG5AbWl4aW4gbm9ybWFsaXplLWZvbnQtc2l6ZSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3B4JyB7XG4gICAgQGVycm9yIFwibm9ybWFsaXplLWZvbnQtc2l6ZSgpIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgZm9udC1zaXplOiBub3JtYWxpemUtcmh5dGhtKCR2YWx1ZSwgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1yaHl0aG0oJHByb3BlcnR5LCAkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICAkdmFsdWUtbGlzdDogJHZhbHVlcztcbiAgJHNlcDogc3BhY2U7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09ICdsaXN0JyB7XG4gICAgJHNlcDogbGlzdC1zZXBhcmF0b3IoJHZhbHVlcyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWx1ZS1saXN0OiBhcHBlbmQoKCksICR2YWx1ZXMpO1xuICB9XG5cbiAgJG5vcm1hbGl6ZWQtdmFsdWVzOiAoKTtcbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZS1saXN0IHtcbiAgICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgJHZhbHVlICE9IDAge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiBub3JtYWxpemUtcmh5dGhtKCRiYXNlLWxpbmUtaGVpZ2h0LCAkcmVsYXRpdmUtdG8pO1xuICAgIH1cbiAgICAkbm9ybWFsaXplZC12YWx1ZXM6IGFwcGVuZCgkbm9ybWFsaXplZC12YWx1ZXMsICR2YWx1ZSwgJHNlcCk7XG4gIH1cbiAgI3skcHJvcGVydHl9OiAkbm9ybWFsaXplZC12YWx1ZXM7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbWFyZ2luKCR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obWFyZ2luLCAkdmFsdWVzLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRmb250LXNpemUsICRtaW4tbGluZS1wYWRkaW5nOiAycHgpIHtcbiAgJGxpbmVzOiBjZWlsKCRmb250LXNpemUgLyAkYmFzZS1saW5lLWhlaWdodCk7XG4gIC8vIElmIGxpbmVzIGFyZSBjcmFtcGVkIGluY2x1ZGUgc29tZSBleHRyYSBsZWFkaW5nLlxuICBAaWYgKCRsaW5lcyAqICRiYXNlLWxpbmUtaGVpZ2h0IC0gJGZvbnQtc2l6ZSkgPCAoJG1pbi1saW5lLXBhZGRpbmcgKiAyKSB7XG4gICAgJGxpbmVzOiAkbGluZXMgKyAxO1xuICB9XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZS1yaHl0aG0obGluZS1oZWlnaHQsICRsaW5lcywgJGZvbnQtc2l6ZSk7XG59XG4iLCIvL1xuLy8gVmFyaWFibGVzXG4vL1xuLy8gWW91IGNhbiBvdmVycmlkZSB0aGUgZGVmYXVsdCB2YWx1ZXMgYnkgc2V0dGluZyB0aGUgdmFyaWFibGVzIGluIHlvdXIgU2Fzc1xuLy8gYmVmb3JlIGltcG9ydGluZyB0aGUgbm9ybWFsaXplLXNjc3MgbGlicmFyeS5cblxuLy8gVGhlIGZvbnQgc2l6ZSBzZXQgb24gdGhlIHJvb3QgaHRtbCBlbGVtZW50LlxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgYmFzZSBsaW5lIGhlaWdodCBkZXRlcm1pbmVzIHRoZSBiYXNpYyB1bml0IG9mIHZlcnRpY2FsIHJoeXRobS5cbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgbGVuZ3RoIHVuaXQgaW4gd2hpY2ggdG8gb3V0cHV0IHZlcnRpY2FsIHJoeXRobSB2YWx1ZXMuXG4vLyBTdXBwb3J0ZWQgdmFsdWVzOiBweCwgZW0sIHJlbS5cbiRiYXNlLXVuaXQ6ICdlbScgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5LlxuJGJhc2UtZm9udC1mYW1pbHk6IG51bGwgIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb250IHNpemVzIGZvciBoMS1oNi5cbiRoMS1mb250LXNpemU6IDIgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAxLjUgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogMS4xNyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IDEgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAwLjgzICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogMC42NyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8gVGhlIGFtb3VudCBsaXN0cyBhbmQgYmxvY2txdW90ZXMgYXJlIGluZGVudGVkLlxuJGluZGVudC1hbW91bnQ6IDQwcHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb2xsb3dpbmcgdmFyaWFibGUgY29udHJvbHMgd2hldGhlciBub3JtYWxpemUtc2NzcyB3aWxsIG91dHB1dFxuLy8gZm9udC1zaXplcywgbGluZS1oZWlnaHRzIGFuZCBibG9jay1sZXZlbCB0b3AvYm90dG9tIG1hcmdpbnMgdGhhdCBmb3JtIGEgYmFzaWNcbi8vIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgcGFnZSwgd2hpY2ggZGlmZmVycyBmcm9tIHRoZSBvcmlnaW5hbCBOb3JtYWxpemUuY3NzLlxuLy8gSG93ZXZlciwgY2hhbmdpbmcgYW55IG9mIHRoZSB2YXJpYWJsZXMgYWJvdmUgd2lsbCBjYXVzZVxuLy8gJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0gdG8gYmUgYXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZS5cbiRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiBmYWxzZSAhZGVmYXVsdDtcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogR3JpZGx5IChhZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL0lvbmljYUJpemF1L2dyaWRseSkgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLnJvdyB7XHJcbiAgICAmLFxyXG4gICAgJi1kZXNrdG9wIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jb2wge1xyXG4gICAgJiB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCYXNpYyBHbG9iYWwgQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJCcnVzaGVyXCI7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgc3JjOiB1cmwoXCIuLi9tZWRpYS9mb250cy9icnVzaGVyL3dlYmZvbnQuZW90XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LnN2ZyNicnVzaGVyXCIpIGZvcm1hdChcInN2Z1wiKTtcbn1cblxuLnRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyOCwgMjQpO1xuICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAxOCwgMjQpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAmLi1zdWIge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg0MCwgMTYpO1xuICAgIH1cblxuICAgICYuLXBhcnRuZXItc3ViIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnRleHQge1xuICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDIwLCAxNik7XG59XG5cbi5saW5rIHtcbiAgICBjb2xvcjogJGFjY2VudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnRfYWx0O1xuICAgIH1cblxuICAgICYuLWFsdCB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LCAxMCUpO1xuICAgIH1cblxuICAgICYuLWFsdDpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1hbHQ7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBVc2VyIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udXNlci1jb250ZW50IHtcbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBVbml2ZXJzYWwgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGFjY2VudF9hbHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBIZWFkZXJzICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgZW0ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnRfYWx0O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzAsIDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyNCwgMzApO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgNCwgMzApO1xuXG4gICAgICAgIGVtIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNiwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTYsIDI2KTtcbiAgICB9XG5cbiAgICBoMi4tYWx0IHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnRfYWx0O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgzNCwgMTYpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAxNiwgMjApO1xuICAgIH1cblxuICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjIsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDE2LCAyMik7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTYsIDIwKTtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE4LCAxNik7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCA4LCAxOCk7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogR2VuZXJhbCBUZXh0ICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgbGFiZWwsXG4gICAgbWVudSxcbiAgICBvbCxcbiAgICBwLFxuICAgIHRhYmxlLFxuICAgIHVsIHtcbiAgICAgICAgY29sb3I6ICRmb3JlZ3JvdW5kO1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDIwLCAxNik7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogbGFiZWxzICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBMaXN0cyAgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBtZW51LFxuICAgIG9sLFxuICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMCAwIDI0LCAxNik7XG5cbiAgICAgICAgbWVudSxcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBUYWJsZXMgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICB0YWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgLy8gaU9TIGZpeFxuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW1pZnkoMSwgMTYpO1xuICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICB0YWJsZSB0ZCxcbiAgICB0YWJsZSB0aCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg0IDYsIDE2KTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG5cbiAgICB0YWJsZSB0aGVhZCB0ZCxcbiAgICB0YWJsZSB0aCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgdGFibGUgdGhlYWQgdGQsXG4gICAgdGFibGUgdGhlYWQgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgfVxuXG4gICAgdGFibGUgdGZvb3QgdGQsXG4gICAgdGFibGUgdGZvb3QgdGgge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgdGFibGUgdHI6bnRoLWNoaWxkKGV2ZW4pIHRkLFxuICAgIHRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB0aCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kX2FsdDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBCbG9ja3Mgb2YgVGV4dCAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBwcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZm9yZWdyb3VuZF9hbHQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRmb3JlZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMzYsIDIwKTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDI0IDM2LCAyMCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBib3JkZXItbGVmdDogcmVtaWZ5KDMsIDE2KSBzb2xpZCAkcHJpbWFyeTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDI0LCAxNik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDAgMCAyNCwgMTYpO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEhScyAgICAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIGhyIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW1pZnkoMywgMTYpIHNvbGlkICRiYWNrZ3JvdW5kX2FsdDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDI0LCAxNik7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogSW1hZ2VzICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBHZW5lcmFsIEZvcm1zICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBpbnB1dCxcbiAgICAuc2VsZWN0LFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDI0LCAxNik7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogQnV0dG9ucyAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG4gICAgaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAxMCwgMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoNCAxMiwgMTYpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzLCBjb2xvciAwLjE1cztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnRfYWx0O1xuICAgICAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogQ2hlY2tib3gvUmFkaW8gKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIGxlZnQ6IC05OTllbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbWlmeSg4IDggOCAyNCwgMTYpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRhY2NlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiByZW1pZnkoMSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtaWZ5KDE4LCAxNik7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDE3LCAxNik7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB0b3A6IHJlbWlmeSg2LCAxNik7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbWlmeSgxOCwgMTYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG4gICAgICAgICY6Zm9jdXMgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICAgIG91dGxpbmU6IC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciBhdXRvIDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICZbZGlzYWJsZWRdICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZF9hbHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGljb24oXCJjaGVja1wiKTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBpY29uKFwiY2lyY2xlXCIpO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIElucHV0cyAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4gICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4gICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdLFxuICAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgICBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAgIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAgIHNlbGVjdCxcbiAgICAuc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRhY2NlbnQ7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTAsIDE2KTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDggMTYsIDE2KTtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIFNlbGVjdHMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIC5zZWxlY3Qge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLnNlbGVjdDo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbihcInNvcnRcIik7XG5cbiAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg0MiwgMjQpO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5zZWxlY3Q6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg0MiwgMjQpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5zZWxlY3Qgc2VsZWN0IHtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lXG4gICAgICAgIC8vIHdlYmtpdCBmaXhcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDkgNTQgMTEgMTIsIDE2KTtcbiAgICAgICAgLy8gZ2Vja28gZml4XG4gICAgICAgIHRleHQtaW5kZW50OiAwLjAxcHg7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyB0cmlkZW50IGZpeFxuICAgICAgICAmOjotbXMtZXhwYW5kIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGZpeCBmb3IgaW5jb25zaXN0YW5jaWVzIGFjY3Jvc3MgYnJvd3NlcnNcblxuICAgIC5zZWxlY3Qgb3B0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjREREREREO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogVGV4dGFyZWFzICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbWlmeSgxMDAsIDE2KTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEFsaWdubWVudCAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIC5hbGlnbmNlbnRlcixcbiAgICAuYWxpZ25sZWZ0LFxuICAgIC5hbGlnbnJpZ2h0IHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIHJlbWlmeSgzMCwgMTYpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBcnRpY2xlIENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uYXJ0aWNsZS1jYXJkIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XG5cbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDE1LCAxNik7XG4gICAgfVxuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtaWZ5KDMsIDE2KSBzb2xpZCAkYmFja2dyb3VuZF9hbHQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgxNSwgMTYpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtaWZ5KDE1LCAxNik7XG4gICAgfVxuXG4gICAgJi4tYmFubmVyIHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDgwIDE1IDE1LCAxNik7XG4gICAgfVxuXG4gICAgJi4tZXhjZXJwdCxcbiAgICAmLi1leGNlcnB0Om5vdCg6bGFzdC1jaGlsZCkgeyAvLyBvdmVycmlkZXMgYWJvdmUgcnVsZVxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgJi4tbWFwIHtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMTAwMCwgMTYpO1xuICAgIH1cblxuICAgICYuLXBhcnRuZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgPiAuaW1hZ2Uge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDMwIDAgMCwgMTYpO1xuICAgIH1cblxuICAgICYuLWV4Y2VycHQgPiAuaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDE1LCAxNik7XG4gICAgfVxuXG4gICAgJi4tcGFydG5lciA+IC5pbWFnZSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgPiAuaW1hZ2UgPiBpbWcsXG4gICAgPiAuaW1hZ2UgPiBhID4gaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJi4tcGFydG5lciA+IC5pbWFnZSA+IC5jYXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtaWZ5KDIwLCAxNik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLi1wYXJ0bmVyID4gLmltYWdlID4gLmNhcHRpb24gPiAudGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgfVxuXG4gICAgPiAuaGVhZGVyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICYuLWJhbm5lciA+IC5oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWFydGljbGUtY2FyZC1oZWFkZXItYmFubmVyX21vYmlsZS5wbmdcIikgY2VudGVyIGJvdHRvbSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAje3JlbWlmeSg0ODIsIDE2KX07XG4gICAgICAgIGxlZnQ6IHJlbWlmeSgxNSwgMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoNSAyMCAyOCwgMTYpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3tyZW1pZnkoMzAsIDE2KX0pO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICYuLWV4Y2VycHQgPiAuaGVhZGVyIHtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDgsIDE2KTtcbiAgICB9XG5cbiAgICAmLi1iYW5uZXIgPiAuaGVhZGVyID4gLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjgsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi4tZXhjZXJwdCA+IC5oZWFkZXIgPiAudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICYuLWV4Y2VycHQgPiAuY29udGVudCA+IC50ZXh0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEJhbm5lciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5iYW5uZXItd3JhcHBlciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3YXJuaW5nO1xuICAgIH1cblxuICAgICYuLW5vdGljZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oZGVzYXR1cmF0ZShhZGp1c3QtaHVlKCR3YXJuaW5nLCAyMy40NzgzKSwgMTYuMzYzNiksIDI1LjY4NjMpO1xuICAgIH1cblxuICAgID4gLmJhbm5lciB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6ICRzaXRlLXdpZHRoICsgcHg7XG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoKTtcbiAgICAgICAgbWluLWhlaWdodDogcmVtaWZ5KDgwLCAxNik7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICA+IC5iYW5uZXIgPiAudGl0bGUge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW1pZnkoMikgc29saWQgdHJhbnNwYXJlbnRpemUoJGRhcmssIDAuOSk7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDI0LCAyNCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDI0IDEwNCAyNCA4NiwgMjQpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgPiAuYmFubmVyID4gLnRpdGxlID4gLmZhIHtcbiAgICAgICAgY29sb3I6ICR3YXJuaW5nX2FsdDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoNDIsIDI0KTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KDMwLCA0Mik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG5cbiAgICAmLi1ub3RpY2UgPiAuYmFubmVyID4gLnRpdGxlID4gLmZhIHtcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oZGVzYXR1cmF0ZShhZGp1c3QtaHVlKGxpZ2h0ZW4oZGVzYXR1cmF0ZShhZGp1c3QtaHVlKCR3YXJuaW5nLCAyMy40NzgzKSwgMTYuMzYzNiksIDI1LjY4NjMpLCAwKSwgNi43MzA4KSwgMjguMDM5Mik7XG4gICAgfVxuXG4gICAgPiAuYmFubmVyID4gLmV4Y2VycHQge1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI0LCAxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMjgsIDI0KTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjQgMzAsIDI0KTtcbiAgICB9XG5cbiAgICA+IC5iYW5uZXIgPiAuZXhjZXJwdCA+IGEge1xuICAgICAgICBjb2xvcjogJHdhcm5pbmdfYWx0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJi4tbm90aWNlID4gLmJhbm5lciA+IC5leGNlcnB0ID4gYSB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKGRlc2F0dXJhdGUoYWRqdXN0LWh1ZShsaWdodGVuKGRlc2F0dXJhdGUoYWRqdXN0LWh1ZSgkd2FybmluZywgMjMuNDc4MyksIDE2LjM2MzYpLCAyNS42ODYzKSwgMCksIDYuNzMwOCksIDI4LjAzOTIpO1xuICAgIH1cblxuICAgID4gLmJhbm5lciA+IC5jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDI0IDMwLCAxNSk7XG4gICAgfVxuXG4gICAgPiAuYmFubmVyID4gLmNvbnRlbnQudXNlci1jb250ZW50IHtcbiAgICAgICAgb2wsXG4gICAgICAgIHAsXG4gICAgICAgIHRhYmxlLFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNSwgMTYpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyNCwgMTUpO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR3YXJuaW5nX2FsdDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oZGVzYXR1cmF0ZShhZGp1c3QtaHVlKGxpZ2h0ZW4oZGVzYXR1cmF0ZShhZGp1c3QtaHVlKCR3YXJuaW5nLCAyMy40NzgzKSwgMTYuMzYzNiksIDI1LjY4NjMpLCAwKSwgNi43MzA4KSwgMjguMDM5Mik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5iYW5uZXIgPiAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSg5NiwgMjQpO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMTA0LCAyNCk7XG4gICAgfVxuXG4gICAgPiAuYmFubmVyID4gLmJ1dHRvbiA+IC5mYSB7XG4gICAgICAgIGNvbG9yOiAkd2FybmluZ19hbHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDQyLCAyNCk7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgJi4tbm90aWNlID4gLmJhbm5lciA+IC5idXR0b24gPiAuZmEge1xuICAgICAgICBjb2xvcjogbGlnaHRlbihkZXNhdHVyYXRlKGFkanVzdC1odWUobGlnaHRlbihkZXNhdHVyYXRlKGFkanVzdC1odWUoJHdhcm5pbmcsIDIzLjQ3ODMpLCAxNi4zNjM2KSwgMjUuNjg2MyksIDApLCA2LjczMDgpLCAyOC4wMzkyKTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEJ1dHRvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5idXR0b24ge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50O1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTAsIDIwKTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEyIDE2LCAyMCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cywgY29sb3IgMC4xNXM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnRfYWx0O1xuICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDYWxsb3V0IENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uY2FsbG91dC1jYXJkIHtcclxuICAgICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgyMCwgMTYpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmNhbGxvdXQtaWNvbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmNhbGxvdXQtaWNvbiA+IC5jYWxsb3V0LWltYWdlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIGF1dG8gMjAsIDE2KTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuY2FsbG91dC10aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oZGVzYXR1cmF0ZShhZGp1c3QtaHVlKCRhY2NlbnQsIC00NS44OTAzKSwgNTIuNzM2OCksIDU1Ljg4MjQpO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE4LCAxNik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDIwLCAxOCk7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICA+IC5jYWxsb3V0LXRpdGxlID4gLmNhbGxvdXQtbGluayB7XHJcbiAgICAgICAgY29sb3I6ICRsaWdodDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuY2FsbG91dC10aXRsZSA+IC5jYWxsb3V0LWxpbms6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkbGlnaHRfYWx0O1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29tbWVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gQ29tbWVudCBXcmFwcGVyXG5cbi5jb21tZW50cyB7XG4gICAgYm9yZGVyLXRvcDogcmVtaWZ5KDMsIDE2KSBzb2xpZCAkYmFja2dyb3VuZF9hbHQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLXRvcDogcmVtaWZ5KDM1LCAxNik7XG4gICAgcGFkZGluZy10b3A6IHJlbWlmeSgzNSwgMTYpO1xufVxuXG4vLyBDb21tZW50IFRpdGxlXG5cbi5jb21tZW50cy10aXRsZSB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLy8gQ29tbWVudCBMaXN0XG5cbi5jb21tZW50LWxpc3QsXG4uY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IHJlbWlmeSgwIDAgNDgsIDE2KTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgLmNoaWxkcmVuIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICAgIHBhZGRpbmc6IHJlbWlmeSgwIDAgMCAzMiwgMTYpO1xufVxuXG4uY29tbWVudCB7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5jb21tZW50LWJvZHkge1xuICAgIEBleHRlbmQgJWNsZWFyZml4O1xuXG4gICAgYm9yZGVyLWJvdHRvbTogcmVtaWZ5KDMpIHNvbGlkICRiYWNrZ3JvdW5kX2FsdDtcbiAgICBwYWRkaW5nOiByZW1pZnkoMjAgMCwgMTYpO1xufVxuXG4uY29tbWVudC1tZXRhIHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcblxuICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDEwLCAyMCk7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb21tZW50LWF1dGhvciBhIHtcbiAgICBjb2xvcjogJGFjY2VudDtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmNvbW1lbnQtbWV0YWRhdGEgYSB7XG4gICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY29tbWVudC1lZGl0LWxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTllbTtcbiAgICB3aWR0aDogcmVtaWZ5KDIwLCAyMCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBpY29uKFwicGVuY2lsXCIpO1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDI1LCAyMCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG59XG5cbi5jb21tZW50LWNvbnRlbnQge1xuICAgIEBleHRlbmQgLnVzZXItY29udGVudDtcbn1cblxuLmNvbW1lbnQtcmVwbHktbGluayB7XG4gICAgQGV4dGVuZCAuYnV0dG9uO1xuXG4gICAgbWFyZ2luOiAwO1xufVxuXG4vLyBDb21tZW50IFBhZ2luYXRpb25cblxuLmNvbW1lbnRzLW5hdiB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kX2FsdDtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICBmb250LXNpemU6IHJlbWlmeSgxNywgMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgzMS43Nzc3Nzc3Nzc3Nzc3OCwgMTcpO1xuICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAyMCwgMTgpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNvbW1lbnRzLW5hdiAucGFnZS1udW1iZXJzIHtcbiAgICBib3JkZXI6IHJlbWlmeSgzKSBzb2xpZCAkYmFja2dyb3VuZF9hbHQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZF9hbHQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogcmVtaWZ5KDQwLCAxOCk7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAzLCAxOCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMsIGNvbG9yIDAuMTVzO1xuICAgIHdpZHRoOiByZW1pZnkoNDAsIDE4KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRhY2NlbnQ7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgIH1cblxuICAgICYuY3VycmVudCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRmb3JlZ3JvdW5kO1xuICAgICAgICBib3JkZXItY29sb3I6ICRmb3JlZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxufVxuXG4uY29tbWVudHMtbmF2IC5wcmV2LnBhZ2UtbnVtYmVyczplbXB0eSxcbi5jb21tZW50cy1uYXYgLm5leHQucGFnZS1udW1iZXJzOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vLyBDb21tZW50IEZvcm1cblxuLmNvbW1lbnQtZm9ybS10aXRsZSB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBtYXJnaW46IHJlbWlmeSgwIDAgOCwgMzApO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb21tZW50LWxvZ2dlZC1pbiB7XG4gICAgY29sb3I6ICRmb3JlZ3JvdW5kO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE3LCAxNik7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW46IHJlbWlmeSgwIDAgOCwgMTgpO1xufVxuXG4uY29tbWVudC1sb2dnZWQtaW4gYSB7XG4gICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zZm9ybTogY29sb3IgMC4xNXM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnRfYWx0O1xuICAgIH1cbn1cblxuLmNvbW1lbnQtaW5wdXQge1xuICAgIGJvcmRlcjogcmVtaWZ5KDMpIHNvbGlkICRhY2NlbnQ7XG4gICAgY29sb3I6ICRmb3JlZ3JvdW5kO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE3LCAxNik7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW46IHJlbWlmeSgwIDAgMjAsIDE4KTtcbiAgICBwYWRkaW5nOiByZW1pZnkoMTIgMTYsIDE4KTtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBGb290ZXIgQ2FyZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uZm9vdGVyLWNhcmQge1xyXG4gICAgJiB7XHJcbiAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEwIDAsIDE2KTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZmlyc3Rtb2JpbGUge1xyXG4gICAgICAgIG9yZGVyOiAxO1xyXG4gICAgfVxyXG5cclxuICAgIC50aXRsZSB7XHJcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI1LCAxNik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICAudGV4dCB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTUsIDE2KTtcclxuICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDIwLCAxNSk7XHJcbiAgICB9XHJcblxyXG4gICAgYSwgLy8gZm9yIGF1dG8gaGlnaGxpZ2h0aW5nIHBob25lIG51bWJlcnNcclxuICAgIC5saW5rIHtcclxuICAgICAgICBjb2xvcjogJGZvcmVncm91bmQ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAgLy8gZm9yIGF1dG8gaGlnaGxpZ2h0aW5nIHBob25lIG51bWJlcnNcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1czsgIC8vIGZvciBhdXRvIGhpZ2hsaWdodGluZyBwaG9uZSBudW1iZXJzXHJcbiAgICB9XHJcblxyXG4gICAgYTpob3ZlciwgLy8gZm9yIGF1dG8gaGlnaGxpZ2h0aW5nIHBob25lIG51bWJlcnNcclxuICAgIC5saW5rOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGZvcmVncm91bmRfYWx0O1xyXG4gICAgfVxyXG5cclxuICAgIC5sb2dvIHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSg4NSwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogR2FsbGVyeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmdhbGxlcnkge1xyXG4gICAgLmdhbGxlcnktaXRlbSBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMWVtIGF1dG87XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBpZnJhbWUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uaWZyYW1lIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICA+IGlmcmFtZSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTG9nbyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmxvZ28ge1xyXG4gICAgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgPiBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTWFwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuI21hcCB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4uaW5mb2JveC1jb250ZW50IHtcclxuICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2KTtcclxuICAgIHBhZGRpbmc6IHJlbWlmeSgxMiAwIDEyIDI0LCAxNik7XHJcbn1cclxuXHJcbi5pbmZvYm94LWltYWdlIGltZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uaW5mb2JveC10aXRsZSB7XHJcbiAgICBjb2xvcjogJHByaW1hcnk7XHJcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcclxuICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI0LCAxNik7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmluZm9ib3gtdGV4dCB7XHJcbiAgICBjb2xvcjogJGZvcmVncm91bmQ7XHJcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcclxuICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmluZm9ib3gtbGluayB7XHJcbiAgICAmIHtcclxuICAgICAgICBjb2xvcjogJHByaW1hcnk7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWFkZHJlc3Mge1xyXG4gICAgICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJHByaW1hcnlfYWx0O1xyXG4gICAgfVxyXG5cclxuICAgICYuLWFkZHJlc3M6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkZm9yZWdyb3VuZF9hbHQ7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNZW51IEJ1dG9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ubWVudS1idXR0b24ge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMzYpO1xuICAgIH1cblxuICAgICYgPiAuZmEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50O1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMzYpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDM2LjUsIDIwKTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1lbnUgTGlzdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIGdlbmVyaWMgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0IHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XG5cbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5tZW51LWxpbmsge1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDggMTIsIDE2KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cztcbiAgICB9XG5cbiAgICAubWVudS1saW5rOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5X2FsdDtcbiAgICB9XG5cbiAgICAubWVudS10b2dnbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDEyLCAxNik7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDMyLCAxMik7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMzIsIDEyKTtcbiAgICB9XG5cbiAgICAubWVudS10b2dnbGU6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnlfYWx0O1xuICAgIH1cblxuICAgIC5tZW51LXRvZ2dsZSA+IC5mYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgzMiwgMTIpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDMyLCAxMik7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLyogc3VibWVudSB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QuLXN1Ym1lbnUge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICBtaW4td2lkdGg6IHJlbWlmeSgxNTAsIDE2KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC05OTllbTtcbiAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwcyAwLjE1cywgb3BhY2l0eSAwLjE1cywgdG9wIDBzIDAuMTVzO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW06aG92ZXIgPiAmIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IDBzIDAuMjVzLCBvcGFjaXR5IDAuMTVzIDAuMjVzLCB0b3AgMHMgMC4yNXM7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cblxuICAgIC5tZW51LWxpbmsge1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoNCAxMiwgMTQpO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzO1xuICAgIH1cblxuICAgIC5tZW51LWxpbms6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZSgkbGlnaHQsIDAuOSk7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbTpmaXJzdC1jaGlsZCA+IC5tZW51LWxpbmsge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtaWZ5KDgsIDE0KTtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtOmxhc3QtY2hpbGQgPiAubWVudS1saW5rIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbWlmeSg4LCAxNCk7XG4gICAgfVxuXG4gICAgLm1lbnUtdG9nZ2xlIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cztcbiAgICB9XG5cbiAgICAubWVudS10b2dnbGU6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZSgkbGlnaHQsIDAuOSk7XG4gICAgfVxufVxuXG4vKiBzdWJtZW51IGZseW91dCB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QuLXN1Ym1lbnUuLWZseW91dCB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5X2FsdDtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW06aG92ZXIgPiAmIHtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbn1cblxuLyogdmVydGljYWwgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0Li12ZXJ0aWNhbCB7XG4gICAgJiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QuLXN1Ym1lbnUge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC4yNXM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QuLXN1Ym1lbnUuLWFjdGl2ZSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IHJlbWlmeSg0MDAsIDE2KTtcbiAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjVzO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0sXG4gICAgLm1lbnUtbGlzdC4tc3VibWVudSA+IC5tZW51LWl0ZW0sXG4gICAgLm1lbnUtbGlzdC4tc3VibWVudS4tZmx5b3V0ID4gLm1lbnUtaXRlbSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1lbnUtbGluayB7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgIH1cbn1cblxuLyogbmF2IHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC4tbmF2IHtcbiAgICAmIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbSB7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbS4tbG9nbyB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIH1cblxuICAgIC5tZW51LWxpbmsge1xuICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDE1IDMwLCAyNCk7XG4gICAgfVxuXG4gICAgLm1lbnUtbGluazpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50X2FsdDtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtLi1sb2dvID4gLm1lbnUtbGluayB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtLi1sb2dvID4gLm1lbnUtbGluayA+IGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudDtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51IC5tZW51LWxpbmsge1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QuLXN1Ym1lbnUgLm1lbnUtbGluazpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHRfYWx0O1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QuLXN1Ym1lbnUuLWZseW91dCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnRfYWx0O1xuICAgIH1cbn1cblxuLyogbmF2IHZlcnRpY2FsIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC4tbmF2Li12ZXJ0aWNhbCB7XG4gICAgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMTAgMCwgMjQpO1xuICAgIH1cblxuICAgIC5tZW51LWxpbmsge1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMTAgMjAsIDI0KTtcbiAgICB9XG5cbiAgICAubWVudS1saW5rOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRsaWdodF9hbHQ7XG4gICAgfVxuXG4gICAgLm1lbnUtdG9nZ2xlIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICB9XG5cbiAgICAubWVudS10b2dnbGU6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGxpZ2h0X2FsdDtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51IC5tZW51LWxpbmsge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMTAgMjAsIDI0KTtcbiAgICB9XG59XG5cbi8qIHNpdGVtYXAgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0Li1zaXRlbWFwIHtcbiAgICAubWVudS1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCItXCI7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMi41LCAxNSk7XG4gICAgfVxuXG4gICAgLm1lbnUtbGluayB7XG4gICAgICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5tZW51LWxpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGZvcmVncm91bmRfYWx0O1xuICAgIH1cbn1cblxuLyogbWV0YSB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QuLW1ldGEge1xuICAgICYge1xuICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE4LCAxNik7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMTIgMCAwLCAxOCk7XG4gICAgfVxuXG4gICAgLm1lbnUtbGluayxcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5tZW51LWxpbms6aG92ZXIsXG4gICAgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50X2FsdDtcbiAgICB9XG5cbiAgICAuZmEge1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDQgMCAwLCAxOCk7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIHwgamFjb2JAYmVhcmNlLm1lXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE5pbmphIEZvcm1zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5ocC13cmFwIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmYtZm9ybS1sYXlvdXQge1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xufVxuXG4ubmYtZm9ybS1maWVsZHMtcmVxdWlyZWQge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgzMiwgMTYpO1xufVxuXG4ubmluamEtZm9ybXMtcmVxLXN5bWJvbCB7XG4gICAgY29sb3I6ICR3YXJuaW5nO1xufVxuXG4ubmluamEtZm9ybXMtcmVxdWlyZWQtaXRlbXMge1xuICAgIEBleHRlbmQgLnRleHQ7XG59XG5cbi5uaW5qYS1yb3cge1xuICAgIEBleHRlbmQgLnJvdztcbn1cblxuW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICAgIEBleHRlbmQgLmNvbDtcbn1cblxuLmZpZWxkLXdyYXAge1xuICAgICYubGFiZWwtbGVmdCxcbiAgICAmLmxhYmVsLXJpZ2h0IHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgJi5sYWJlbC1sZWZ0IGxhYmVsLFxuICAgICYubGFiZWwtcmlnaHQgbGFiZWwge1xuICAgICAgICBmbGV4OiBub25lO1xuICAgIH1cblxuICAgICYubGFiZWwtYWJvdmUgbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNiwgMTYpO1xuICAgIH1cblxuICAgICYubGFiZWwtYmVsb3cgbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMTAsIDE2KTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtaWZ5KDYsIDE2KTtcbiAgICB9XG5cbiAgICAmLmxhYmVsLWxlZnQgbGFiZWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgxMiwgMTYpO1xuICAgIH1cblxuICAgICYubGFiZWwtcmlnaHQgbGFiZWwge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtaWZ5KDEyLCAxNik7XG4gICAgfVxuXG4gICAgJi5sYWJlbC1iZWxvdyAubmluamEtZm9ybXMtZmllbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICYubGFiZWwtbGVmdCAubmluamEtZm9ybXMtZmllbGQsXG4gICAgJi5sYWJlbC1yaWdodCAubmluamEtZm9ybXMtZmllbGQge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB9XG5cbiAgICAmLmxpc3Qtc2VsZWN0LXdyYXAgLm5pbmphLWZvcm1zLWZpZWxkIHtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDEwLCAxNik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMS41IDE2LCAxNik7XG4gICAgfVxuXG4gICAgJi5odG1sLXdyYXAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoOCwgMTYpO1xuICAgIH1cblxuICAgIC5uZi1sYWJlbC1zcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFNlYXJjaCBmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zZWFyY2gtZm9ybSB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYWNjZW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRmb3JlZ3JvdW5kX2FsdDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICA+IC5sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIH1cblxuICAgID4gLmlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBjb2xvcjogJGZvcmVncm91bmQ7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDggMTIsIDE2KTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgPiAuc3VibWl0IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoOCAxMiwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3RvcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnN0b3J5IHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XG5cbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1ncmVlbi5qcGdcIikgcmlnaHQgY2VudGVyIG5vLXJlcGVhdCAkYWNjZW50O1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzUgMjUsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgei1pbmRleDogNDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmLi1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yZWQuanBnXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0ICRwcmltYXJ5O1xuICAgIH1cblxuICAgICYuLXNlY29uZGFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtYmx1ZS5qcGdcIikgbGVmdCBjZW50ZXIgbm8tcmVwZWF0ICRzZWNvbmRhcnk7XG4gICAgfVxuXG4gICAgJi4tdGVydGlhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWdyYXkuanBnXCIpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQgJHRlcnRpYXJ5O1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQ6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiByZW1pZnkoMTgsIDE2KSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW1pZnkoMTgsIDE2KSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogcmVtaWZ5KDEyLCAxNikgc29saWQgJGFjY2VudDtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGxpZ2h0O1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgLy8gZm9yIHNvbWUgcmVhc29uIHRoaXMgbmVlZHMgIWltcG9ydGFudFxuICAgIH1cblxuICAgICYuLXByaW1hcnk6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiByZW1pZnkoMjUsIDE2KTtcbiAgICB9XG5cbiAgICAmLi1zZWNvbmRhcnk6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHNlY29uZGFyeTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KDI1LCAxNik7XG4gICAgfVxuXG4gICAgJi4tdGVydGlhcnk6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRlcnRpYXJ5O1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogNTAlO1xuICAgIH1cblxuICAgIC51c2VyLWNvbnRlbnQgaDEsXG4gICAgLnVzZXItY29udGVudCBoMixcbiAgICAudXNlci1jb250ZW50IGgzLFxuICAgIC51c2VyLWNvbnRlbnQgaDQsXG4gICAgLnVzZXItY29udGVudCBoNSxcbiAgICAudXNlci1jb250ZW50IGg2LFxuICAgIC51c2VyLWNvbnRlbnQgbWVudSxcbiAgICAudXNlci1jb250ZW50IG9sLFxuICAgIC51c2VyLWNvbnRlbnQgcCxcbiAgICAudXNlci1jb250ZW50IHRhYmxlLFxuICAgIC51c2VyLWNvbnRlbnQgdWwge1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgIH1cblxuICAgIC51c2VyLWNvbnRlbnQgaDIuLWFsdCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAudXNlci1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3dpcGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gaW1wb3J0IGJhc2Ugc3R5bGVzXG5cbkBpbXBvcnQgXCJzd2lwZXIvZGlzdC9jc3Mvc3dpcGVyXCI7XG5cbi8vIGN1c3RvbSBzdHlsZXNcblxuLnBhcnRuZXJzLXRpdGxlIHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMjIgMCA4LCAyNCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAucGFydG5lcnMtd3JhcHBlciAmIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDEyLCAyNCk7XG4gICAgfVxufVxuXG4ucGFydG5lcnMtc2xpZGVyIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yaWJib25fbW9iaWxlLnBuZ1wiKSBjZW50ZXIgbGVmdCByZXBlYXQteDtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAyNSwgMTYpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMzAsIDE2KTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXJpYmJvbi1sZWZ0X21vYmlsZS5wbmdcIik7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KC01LCAxNik7XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yaWJib24tcmlnaHRfbW9iaWxlLnBuZ1wiKTtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbWlmeSgtNSwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1jb250YWluZXIge1xuICAgICYuLXBhcnRuZXJzIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmLi1wYXJ0bmVyczo6YmVmb3JlLFxuICAgICYuLXBhcnRuZXJzOjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogcmVtaWZ5KDYsIDE2KTtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiByZW1pZnkoNiwgMTYpO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDYwLCAxNik7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICB9XG5cbiAgICAmLi1wYXJ0bmVyczo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHRyYW5zcGFyZW50aXplKCRsaWdodCwgMSkgMCUsIHRyYW5zcGFyZW50aXplKCRsaWdodCwgMC4yNSkgNTAlLCAkbGlnaHQgMTAwJSk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJi4tcGFydG5lcnM6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudGl6ZSgkbGlnaHQsIDEpIDAlLCB0cmFuc3BhcmVudGl6ZSgkbGlnaHQsIDAuMjUpIDUwJSwgJGxpZ2h0IDEwMCUpO1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAmLi1zbGlkZXNob3cge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZF9hbHQ7XG4gICAgfVxufVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDk2LCAxNik7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAmIC5wYXJ0bmVyLWNhcmQge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMTIuNSAyNSwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1zbGlkZSBpbWcge1xuICAgIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtaGVpZ2h0OiByZW1pZnkoNjAsIDE2KTtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnN3aXBlci1jb250YWluZXIuLXNsaWRlc2hvdyAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDM2NSk7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDk2LCAxNik7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg0OCwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9pY29uLWFycm93LWxlZnRfbW9iaWxlLnBuZ1wiKTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KC00OCwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9pY29uLWFycm93LXJpZ2h0X21vYmlsZS5wbmdcIik7XG4gICAgICAgIHJpZ2h0OiByZW1pZnkoLTQ4LCAxNik7XG4gICAgfVxufVxuXG4vLyBkaXNwbGF5IHRoZSBmaXJzdCBzbGlkZSBpbiBvbGRlciBicm93c2Vyc1xuXG4ubm8tY3NzdHJhbnNmb3JtcyAuc3dpcGVyLXNsaWRlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iLCIvKipcbiAqIFN3aXBlciA0LjUuMFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMTkgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogRmVicnVhcnkgMjIsIDIwMTlcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xufVxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3cgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAtbXMtZmxleC1uZWdhdGl2ZTogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLyogM0QgRWZmZWN0cyAqL1xuLnN3aXBlci1jb250YWluZXItM2Qge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXdyYXBwZXIsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIHJpZ2h0IHRvcCwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4vKiBJRTEwIFdpbmRvd3MgUGhvbmUgOCBGaXhlcyAqL1xuLnN3aXBlci1jb250YWluZXItd3A4LWhvcml6b250YWwsXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsLFxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyN3B4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zNTtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICByaWdodDogMTBweDtcbiAgbGVmdDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC4yO1xufVxuYnV0dG9uLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogNnB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgdG9wLCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdG9wLCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wO1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHRvcCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogMCA0cHg7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAyMDBtcyBsZWZ0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogMjAwbXMgbGVmdCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0O1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbC5zd2lwZXItY29udGFpbmVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgcmlnaHQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6ICMwMDdhZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLFxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLFxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogU2Nyb2xsYmFyICovXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxJTtcbiAgYm90dG9tOiAzcHg7XG4gIHotaW5kZXg6IDUwO1xuICBoZWlnaHQ6IDVweDtcbiAgd2lkdGg6IDk4JTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcge1xuICBjdXJzb3I6IG1vdmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBpbWcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gc3ZnLFxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGNhbnZhcyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgLW8tb2JqZWN0LWZpdDogY29udGFpbjtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cbi5zd2lwZXItc2xpZGUtem9vbWVkIHtcbiAgY3Vyc29yOiBtb3ZlO1xufVxuLyogUHJlbG9hZGVyICovXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIxcHg7XG4gIG1hcmdpbi10b3A6IC0yMXB4O1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMTIwJTIwMTIwJyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB4bWxucyUzQXhsaW5rJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJyUzRSUzQ2RlZnMlM0UlM0NsaW5lJTIwaWQlM0QnbCclMjB4MSUzRCc2MCclMjB4MiUzRCc2MCclMjB5MSUzRCc3JyUyMHkyJTNEJzI3JyUyMHN0cm9rZSUzRCclMjM2YzZjNmMnJTIwc3Ryb2tlLXdpZHRoJTNEJzExJyUyMHN0cm9rZS1saW5lY2FwJTNEJ3JvdW5kJyUyRiUzRSUzQyUyRmRlZnMlM0UlM0NnJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoNjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDkwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxMjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE1MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjM3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTgwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNDYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyMTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy41NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI0MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjY2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjcwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNzUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy44NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMzMCUyMDYwJTJDNjApJyUyRiUzRSUzQyUyRmclM0UlM0MlMkZzdmclM0VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyogYTExeSAqL1xuLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwO1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZS5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSAuc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjY7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDUwcHgpO1xuICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gIHotaW5kZXg6IDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnN3aXBlci1jb250YWluZXItY292ZXJmbG93IC5zd2lwZXItd3JhcHBlciB7XG4gIC8qIFdpbmRvd3MgOCBJRSAxMCBmaXggKi9cbiAgLW1zLXBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFBhZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbjpyb290IHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICB9XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgICAmIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG5ib2R5IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgfVxufVxuXG5odG1sLi1uYXZhY3RpdmUsXG5odG1sLi1uYXZhY3RpdmUgYm9keSB7XG4gICAgJiB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4ucGFnZS13cmFwcGVyIHtcbiAgICAmIHtcblxuICAgICAgICAvLyBHUFUgcmVuZGVyaW5nXG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBlcnNwZWN0aXZlOiAxMDAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjM1cywgbGVmdCAwLjM1cztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgaHRtbC4tbmF2YWN0aXZlICYge1xuICAgICAgICBib3gtc2hhZG93OiByZW1pZnkoMCAwIDEwLCAxNikgYmxhY2soMC41KTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAtICRtb2JpbGUtbmF2LXdpZHRoICsgcHg7XG4gICAgICAgIGxlZnQ6IC0gcmVtaWZ5KCRtb2JpbGUtbmF2LXdpZHRoKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWFkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uaGVhZGVyLXdyYXBwZXIge1xyXG4gICAgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGF5ZXIoXCJoZWFkZXJcIik7XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKCRsaWdodCwgMC4xKTtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDggMzIsIDE2KTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmhlYWRlci1ibG9jayB7XHJcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoKTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5oZWFkZXItYmxvY2sgPiAubG9nbyB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6IHJlbWlmeSgxNjApO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmhlYWRlci1ibG9jayA+IC5tZW51LWJ1dHRvbiB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDQgMCAwKTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vYmlsZSBOYXZpZ2F0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIHdyYXBwZXJcblxuLm1vYmlsZS1uYXYtd3JhcHBlciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gICAgICAgIGJvdHRvbTogOTk5ZW07XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA5OTllbTtcbiAgICAgICAgdG9wOiAtOTk5ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwcyAwLjM1cywgcmlnaHQgMHMgMC4zNXMsIHRvcCAwcyAwLjM1cztcbiAgICAgICAgd2lkdGg6IHJlbWlmeSgkbW9iaWxlLW5hdi13aWR0aCwgMTYpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC4tbmF2YWN0aXZlICYge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLi1uYXZhY3RpdmUgLmFkbWluLWJhciAmIHtcbiAgICAgICAgdG9wOiA0NnB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc4M3B4KSB7XG4gICAgICAgIC4tbmF2YWN0aXZlIC5hZG1pbi1iYXIgJiB7XG4gICAgICAgICAgICB0b3A6IDMycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkYWNjZW50LCA1KTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51Li1mbHlvdXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRhY2NlbnQsIDEwKTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIFNsaWRlc2hvdyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5zbGlkZXNob3ctd3JhcHBlciB7XHJcbiAgICAmIHtcclxuICAgICAgICBAaW5jbHVkZSBsYXllcihcInNsaWRlc2hvd1wiKTtcclxuXHJcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5zbGlkZXNob3ctYmxvY2sge1xyXG4gICAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIGxheWVyKFwiY29udGVudFwiKTtcblxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnQuanBnXCIpIGNlbnRlciB0b3Agbm8tcmVwZWF0IGRhcmtlbihzYXR1cmF0ZShhZGp1c3QtaHVlKCRiYWNrZ3JvdW5kLCA1MS40Mjg2KSwgMzAuNDM0OCksIDQuNTA5OCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMTAgMTUgMzAsIDE2KTtcbiAgICB9XG5cbiAgICAuaG9tZSAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgzMCwgMTYpO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudC1iZWZvcmVfbW9iaWxlLmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDE4MCwgMTYpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5ob21lICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgPiAuY29udGVudC1ibG9jayB7XG4gICAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xuXG4gICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5ob21lICYgPiAuY29udGVudC1ibG9jayB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgPiAucGFydG5lcnMtYmxvY2sge1xuICAgICAgICBAZXh0ZW5kICVjbGVhcmZpeDtcblxuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgsIDE2KTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMTUsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENhbGxvdXRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5jYWxsb3V0cy13cmFwcGVyIHtcclxuICAgICYge1xyXG4gICAgICAgIEBpbmNsdWRlIGxheWVyKFwiY2FsbG91dHNcIik7XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5jYWxsb3V0cy1ibG9jayB7XHJcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoLCAxNik7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBQYXJ0bmVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4ucGFydG5lcnMtd3JhcHBlciB7XHJcbiAgICAmIHtcclxuICAgICAgICBAaW5jbHVkZSBsYXllcihcInBhcnRuZXJzXCIpO1xyXG5cclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXBhcnRuZXJzLXdyYXBwZXJfbW9iaWxlLmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgzNSAzMCA3NSwgMTYpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLnBhcnRuZXJzLWJsb2NrIHtcclxuICAgICAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxuXHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgsIDE2KTtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAxNSwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogRm9vdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmZvb3Rlci13cmFwcGVyIHtcclxuICAgICYge1xyXG4gICAgICAgIEBpbmNsdWRlIGxheWVyKFwiZm9vdGVyXCIpO1xyXG5cclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDIwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuZm9vdGVyLWJsb2NrIHtcclxuICAgICAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxuXHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoLCAxNik7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDIwIDAsIDE2KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG5AaW1wb3J0IFwiaGVscGVycy9faGVscGVyc1wiO1xyXG5AaW1wb3J0IFwidmlld3MvX3NjcmVlblwiO1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHh4cy1icmVhaykge1xyXG4gICAgQGltcG9ydCBcInZpZXdzL19zY3JlZW5feHhzXCI7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4cy1icmVhaykge1xyXG4gICAgQGltcG9ydCBcInZpZXdzL19zY3JlZW5feHNcIjtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHMtYnJlYWspIHtcclxuICAgIEBpbXBvcnQgXCJ2aWV3cy9fc2NyZWVuX3NcIjtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG0tYnJlYWspIHtcclxuICAgIEBpbXBvcnQgXCJ2aWV3cy9fc2NyZWVuX21cIjtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGwtYnJlYWspIHtcclxuICAgIEBpbXBvcnQgXCJ2aWV3cy9fc2NyZWVuX2xcIjtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhsLWJyZWFrKSB7XHJcbiAgICBAaW1wb3J0IFwidmlld3MvX3NjcmVlbl94bFwiO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkeHhsLWJyZWFrKSB7XHJcbiAgICBAaW1wb3J0IFwidmlld3MvX3NjcmVlbl94eGxcIjtcclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvc3dpcGVyL19zd2lwZXJfeHNcIjtcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTGF5b3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2xheW91dHMvcGFydG5lcnMvX3BhcnRuZXJzX3hzXCI7XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3dpcGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gY3VzdG9tIHN0eWxlc1xuXG4ucGFydG5lcnMtdGl0bGUge1xuICAgICYge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg0OCwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSg0OCAwIDIyLCA0OCk7XG4gICAgfVxuXG4gICAgLnBhcnRuZXJzLXdyYXBwZXIgJiB7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCA2MCwgNDgpO1xuICAgIH1cbn1cblxuLnBhcnRuZXJzLXNsaWRlciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uLnBuZ1wiKTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCA1NSwgMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAxMCwgMTYpO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoNTUsIDE2KTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXJpYmJvbi1sZWZ0LnBuZ1wiKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uLXJpZ2h0LnBuZ1wiKTtcbiAgICB9XG59XG5cbi5zd2lwZXItY29udGFpbmVyIHtcbiAgICAmLi1wYXJ0bmVyczo6YmVmb3JlLFxuICAgICYuLXBhcnRuZXJzOjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogcmVtaWZ5KDEwLCAxNik7XG4gICAgICAgIHRvcDogcmVtaWZ5KDEwLCAxNik7XG4gICAgfVxufVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgJiB7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDE4OCwgMTYpO1xuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAmIC5wYXJ0bmVyLWNhcmQge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjUgNTAsIDE2KTtcbiAgICB9XG59XG5cbi5zd2lwZXItc2xpZGUgaW1nIHtcbiAgICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgJiB7XG4gICAgICAgIG1heC1oZWlnaHQ6IHJlbWlmeSgxNDAsIDE2KTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLWNvbnRhaW5lci4tc2xpZGVzaG93ICYge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgxODgsIDE2KTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg2NiwgMTYpO1xuICAgIH1cblxuICAgIC5wYXJ0bmVycy13cmFwcGVyICYuLXBhcnRuZXJzIHtcbiAgICAgICAgb3BhY2l0eTogMC4zNTtcbiAgICB9XG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgICYuLXBhcnRuZXJzIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvaWNvbi1hcnJvdy1sZWZ0LnBuZ1wiKTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KC04MSwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9pY29uLWFycm93LXJpZ2h0LnBuZ1wiKTtcbiAgICAgICAgcmlnaHQ6IHJlbWlmeSgtODEsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIFBhcnRuZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5wYXJ0bmVycy13cmFwcGVyIHtcclxuICAgICYge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcGFydG5lcnMtd3JhcHBlci5qcGdcIik7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDgwIDMwIDE2MCwgMTYpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLnBhcnRuZXJzLWJsb2NrIHtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAyMCwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2hlbHBlcnMvX2hlbHBlcnNfc1wiO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0IFwiLi4vYmFzZS9ncmlkL19ncmlkX3NcIjtcclxuQGltcG9ydCBcIi4uL2Jhc2UvY29udGVudC9fY29udGVudF9zXCI7XHJcbkBpbXBvcnQgXCIuLi9iYXNlL3VzZXItY29udGVudC9fdXNlci1jb250ZW50X3NcIjtcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvYXJ0aWNsZS1jYXJkL19hcnRpY2xlLWNhcmRfc1wiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9iYW5uZXIvX2Jhbm5lcl9zXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2NhbGxvdXQtY2FyZC9fY2FsbG91dC1jYXJkX3NcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvY29tbWVudHMvX2NvbW1lbnRzX3NcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvZm9vdGVyLWNhcmQvX2Zvb3Rlci1jYXJkX3NcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvZ2FsbGVyeS9fZ2FsbGVyeV9zXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL25pbmphLWZvcm1zL19uaW5qYS1mb3Jtc19zXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL3NlYXJjaC1mb3JtL19zZWFyY2gtZm9ybV9zXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL3N0b3J5L19zdG9yeV9zXCI7XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL3BhZ2UvX3BhZ2Vfc1wiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9oZWFkZXIvX2hlYWRlcl9zXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2NvbnRlbnQvX2NvbnRlbnRfc1wiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9mb290ZXIvX2Zvb3Rlcl9zXCI7XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogdmlzaWJpbGl0eSBjbGFzc2VzICovXHJcbi8vIGlkZWFsOiBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWRpc3BsYXktMy8jcHJvcGRlZi1ib3gtc3VwcHJlc3NcclxuXHJcbi5fc2hvd21vYmlsZSxcclxuLl9oaWRldGFibGV0IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLl9zaG93dGFibGV0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBHcmlkbHkgKGFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vSW9uaWNhQml6YXUvZ3JpZGx5KSAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4ucm93IHtcclxuICAgICYge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tY2VudGVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29sIHtcclxuICAgICYge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdGVudGgge1xyXG4gICAgICAgIGZsZXg6IDAgMCAxMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZmlmdGgge1xyXG4gICAgICAgIGZsZXg6IDAgMCAyMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcXVhcnRlciB7XHJcbiAgICAgICAgZmxleDogMCAwIDI1JTtcclxuICAgIH1cclxuXHJcbiAgICAmLi10aGlyZCB7XHJcbiAgICAgICAgZmxleDogMCAwIDMzLjMzMzMzMzQlO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWhhbGYge1xyXG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXF1YWwge1xyXG4gICAgICAgIGZsZXg6IDEgMSAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1wYWRkZWQge1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDEwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcGFkZGVkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcGFkZGVkOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNpYyBHbG9iYWwgQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4udGV4dCB7XHJcbiAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnVzZXItY29udGVudCB7XG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogSGVhZGVycyAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg2MCwgMTYpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg0OCwgMTYpO1xuICAgIH1cblxuICAgIGgyLi1hbHQge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg2OCwgMTYpO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzYsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDYwLCAzNik7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyOCwgMTYpO1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogR2VuZXJhbCBUZXh0ICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgbGFiZWwsXG4gICAgbWVudSxcbiAgICBvbCxcbiAgICBwLFxuICAgIHRhYmxlLFxuICAgIHVsIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBUYWJsZXMgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICB0YWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBCdXR0b25zICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudF9hbHQ7XG4gICAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBBbGlnbm1lbnQgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICAuYWxpZ25jZW50ZXIge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIHJlbWlmeSgzMCwgMTYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFsaWdubGVmdCB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDMwIDMwIDAsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hbGlnbnJpZ2h0IHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMzAgMzAsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIENvbHVtbnMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIC5jb2wge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCA2MCwgMTYpO1xuICAgIH1cblxuICAgIC5jb2w6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbWlmeSgzMCwgMTYpO1xuICAgIH1cblxuICAgIC5jb2w6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbWlmeSgzMCwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQXJ0aWNsZSBDYXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmFydGljbGUtY2FyZCB7XHJcbiAgICAmIHtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgzMCwgMTYpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW1pZnkoMzAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1iYW5uZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxNjAgMzAgMzAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1wYXJ0bmVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgID4gLmltYWdlIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtaWZ5KDYwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXhjZXJwdCA+IC5pbWFnZSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMzAgMCAwLCAxNik7XHJcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gNCk7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcGFydG5lciA+IC5pbWFnZS4tbG9nbyB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMzAgMCAwLCAxNik7XHJcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gMyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tYmFubmVyID4gLmhlYWRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1hcnRpY2xlLWNhcmQtaGVhZGVyLWJhbm5lci5wbmdcIik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIGF1dG87XHJcbiAgICAgICAgbGVmdDogcmVtaWZ5KDMwLCAxNik7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEyIDI1IDUyLCAxNik7XHJcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg0ODIsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1leGNlcnB0ID4gLmltYWdlIH4gLmhlYWRlciB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gNCkgKiAzO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWJhbm5lciA+IC5oZWFkZXIgPiAudGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDUwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXhjZXJwdCA+IC5oZWFkZXIgPiAudGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI4LCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXhjZXJwdCA+IC5pbWFnZSB+IC5jb250ZW50IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB3aWR0aDogKDEwMCUgLyA0KSAqIDM7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcGFydG5lciA+IC5pbWFnZS4tbG9nbyArIC5jb250ZW50IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzAgMCAwLCAxNik7XHJcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gMykgKiAyO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmNvbnRlbnQuLWZ1bGwge1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYW5uZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uYmFubmVyLXdyYXBwZXIge1xyXG4gICAgJiB7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMjAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5iYW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbWlmeSg4NiwgMTYpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmJhbm5lciA+IC50aXRsZSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IHJlbWlmeSgyKSBzb2xpZCB0cmFuc3BhcmVudGl6ZSgkZGFyaywgMC45KTtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgyNCA1NiwgMjQpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmJhbm5lciA+IC50aXRsZSA+IC5mYSB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICA+IC5iYW5uZXIgPiAuZXhjZXJwdCxcclxuICAgID4gLmJhbm5lciA+IC5jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG5cclxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoMjAwLCAxNik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgID4gLmJhbm5lciA+IC5idXR0b24ge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBtaW4taGVpZ2h0OiByZW1pZnkoODYsIDI0KTtcclxuICAgICAgICB3aWR0aDogcmVtaWZ5KDg2LCAyNCk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDYWxsb3V0IENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uY2FsbG91dC1jYXJkIHtcclxuICAgID4gLmNhbGxvdXQtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIyLCAxNik7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb21tZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDb21tZW50IFRpdGxlXG5cbi5jb21tZW50cy10aXRsZSB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMzAsIDE2KTtcbn1cblxuLy8gQ29tbWVudCBMaXN0XG5cbi5jb21tZW50LWxpc3QsXG4uY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDI0LCAxNik7XG59XG5cbi5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDAgMzIsIDE2KTtcbn1cblxuLmNvbW1lbnQtYm9keSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNvbW1lbnQtbWV0YSB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMjAsIDE2KTtcbn1cblxuLmNvbW1lbnQtYXV0aG9yIHtcbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLmNvbW1lbnQtbWV0YWRhdGEge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLmNvbW1lbnQtY29udGVudCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDFweDsgLy8gYXMgc21hbGwgYXMgcG9zaXNibGUgc28gaXQgd29uJ3Qgd3JhcFxuXG4gICAgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IC8vIHNob3VsZCBhbHdheXMgYmUgMFxuICAgIH1cbn1cblxuLmNvbW1lbnQtcmVwbHktbGluayB7XG4gICAgZmxleDogbm9uZTtcbiAgICBtYXJnaW46IHJlbWlmeSgwIDAgMCA1MCwgMTgpO1xufVxuXG4vLyBDb21tZW50IFBhZ2luYXRpb25cblxuLmNvbW1lbnRzLW5hdiB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDM0LCAxOCk7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb21tZW50cy1uYXYgLnBhZ2UtbnVtYmVycyB7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDAgNiwgMTgpO1xufVxuXG4vLyBDb21tZW50IEZvcm1cblxuLmNvbW1lbnQtZm9ybS10aXRsZSB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMzAsIDE2KTtcbn1cblxuLmNvbW1lbnQtbG9nZ2VkLWluIHtcbiAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xufVxuXG4uY29tbWVudC1pbnB1dCB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogRm9vdGVyIENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmZvb3Rlci1jYXJkIHtcclxuICAgICYge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tYWxpZ25yaWdodCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ28ge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KDE3MCwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogR2FsbGVyeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmdhbGxlcnkge1xyXG4gICAgJiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAtMzApO1xyXG4gICAgfVxyXG5cclxuICAgIC5nYWxsZXJ5LWl0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDMwKTtcclxuICAgIH1cclxuXHJcbiAgICAmLmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xyXG4gICAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xyXG4gICAgfVxyXG5cclxuICAgICYuZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbSB7XHJcbiAgICAgICAgZmxleDogMCAwIDI1JTtcclxuICAgIH1cclxuXHJcbiAgICAmLmdhbGxlcnktY29sdW1ucy01IC5nYWxsZXJ5LWl0ZW0ge1xyXG4gICAgICAgIGZsZXg6IDAgMCAyMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5nYWxsZXJ5LWNvbHVtbnMtNiAuZ2FsbGVyeS1pdGVtIHtcclxuICAgICAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgfCBqYWNvYkBiZWFyY2UubWVcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTmluamEgRm9ybXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xyXG4gICAgcGFkZGluZzogcmVtaWZ5KDAgMTAsIDE2KSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uZmllbGQtd3JhcCB7XHJcbiAgICAubmYtbGFiZWwtc3BhbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIFNlYXJjaCBmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5zZWFyY2gtZm9ybSB7XHJcbiAgICAmIHtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3RvcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnN0b3J5IHtcbiAgICAmIHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDUwLCAxNik7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQzLjc1JTtcbiAgICB9XG5cbiAgICAmLi1wcmltYXJ5IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMi41JTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTIuNSU7XG4gICAgfVxuXG4gICAgJi4tc2Vjb25kYXJ5IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMS4yNSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbWlmeSg1MCwgMTYpO1xuICAgIH1cblxuICAgICYuLXRlcnRpYXJ5IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzEuMjUlO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDExLjI1JTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi4tcHJpbWFyeTo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgICYuLXNlY29uZGFyeTo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiA2LjI1JTtcbiAgICB9XG5cbiAgICAmLi10ZXJ0aWFyeTo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW1pZnkoLTE4LCAxNik7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC51c2VyLWNvbnRlbnQgaDIuLWFsdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIFBhZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbmh0bWwuLW5hdmFjdGl2ZSxcclxuaHRtbC4tbmF2YWN0aXZlIGJvZHkge1xyXG4gICAgJiB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGFnZS13cmFwcGVyIHtcclxuICAgIGh0bWwuLW5hdmFjdGl2ZSAmIHtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWFkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uaGVhZGVyLXdyYXBwZXIge1xyXG4gICAgJiB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbWlmeSgyMCwgMTYpO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZW1pZnkoMjAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5oZWFkZXItYmxvY2sge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgNS42MjUlO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmhlYWRlci1ibG9jayAubWVudS1saXN0Li1uYXYge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuaGVhZGVyLWJsb2NrIC5tZW51LWxpc3QuLW5hdiAubWVudS1pdGVtLi1sb2dvIC5tZW51LWxpbmsgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSgxNjUsIDI0KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jb250ZW50LXdyYXBwZXIge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtaWZ5KDYwLCAxNik7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW1pZnkoMTU1LCAxNik7XG4gICAgfVxuXG4gICAgLmhvbWUgJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW1pZnkoNjAsIDE2KTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnQtYmVmb3JlLmpwZ1wiKTtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMzUwLCAxNik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGb290ZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZm9vdGVyLXdyYXBwZXIge1xuICAgID4gLmZvb3Rlci1ibG9jayB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuXG4gICAgPiAuZm9vdGVyLWJsb2NrID4gLmZvb3Rlci1jYXJkIHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIG9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAyMCwgMTYpO1xuICAgIH1cblxuICAgID4gLmZvb3Rlci1ibG9jayA+IC5mb290ZXItY2FyZC4tZmlyc3Rtb2JpbGUge1xuICAgICAgICBvcmRlcjogMDtcbiAgICB9XG5cbiAgICA+IC5mb290ZXItYmxvY2sgPiAuZm9vdGVyLWNhcmQuLW5vZmxleCB7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTGF5b3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2xheW91dHMvaGVhZGVyL19oZWFkZXJfbFwiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9jb250ZW50L19jb250ZW50X2xcIjtcclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWFkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uaGVhZGVyLXdyYXBwZXIge1xyXG4gICAgPiAuaGVhZGVyLWJsb2NrIC5tZW51LWxpc3QuLW5hdiB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5jb250ZW50LXdyYXBwZXIge1xyXG4gICAgJiB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgxNjYsIDE2KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbkBpbXBvcnQgXCIuLi9oZWxwZXJzL19oZWxwZXJzX3hsXCI7XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9oZWFkZXIvX2hlYWRlcl94bFwiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9jb250ZW50L19jb250ZW50X3hsXCI7XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogdmlzaWJpbGl0eSBjbGFzc2VzICovXHJcbi8vIGlkZWFsOiBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWRpc3BsYXktMy8jcHJvcGRlZi1ib3gtc3VwcHJlc3NcclxuXHJcbi5fc2hvd3RhYmxldCxcclxuLl9oaWRlZGVza3RvcCB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5fc2hvd2Rlc2t0b3Age1xyXG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlYWRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5oZWFkZXItd3JhcHBlciB7XHJcbiAgICA+IC5oZWFkZXItYmxvY2sgLm1lbnUtbGlzdC4tbmF2IC5tZW51LWl0ZW0uLWxvZ28gLm1lbnUtbGluayBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KDIyMCwgMjQpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmNvbnRlbnQtd3JhcHBlciB7XHJcbiAgICAmIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtaWZ5KDE4OCwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0IFwiLi4vYmFzZS9ncmlkL19ncmlkX3h4bFwiO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2hlYWRlci9faGVhZGVyX3h4bFwiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9jb250ZW50L19jb250ZW50X3h4bFwiO1xyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEdyaWRseSAoYWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9Jb25pY2FCaXphdS9ncmlkbHkpICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5yb3ctZGVza3RvcCB7XHJcbiAgICAmIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgfVxyXG5cclxuICAgICYuLWNlbnRlciB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlYWRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5oZWFkZXItd3JhcHBlciB7XHJcbiAgICA+IC5oZWFkZXItYmxvY2sge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTEuMjUlO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmhlYWRlci1ibG9jayAubWVudS1saXN0Li1uYXYgLm1lbnUtaXRlbS4tbG9nbyAubWVudS1saW5rIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoMzMwLCAyNCk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uY29udGVudC13cmFwcGVyIHtcclxuICAgICYge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZW1pZnkoMjMyLCAxNik7XHJcbiAgICB9XHJcbn1cclxuIl19 */
