@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-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; }

/* ------------------------------------------------------------------------ *\
 * 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; }
  /* ------------------------------------------------------------------------ *\
 * 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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QWdCLEVBQUE7O0FBekN4QjtFQStDUSxjQUFjO0VBQ2QsZ0IvQmhCbUU7RStCaUJuRSxxQi9CUHdGLEVBQUE7O0FnQzlDaEc7OzZFbkNtd0Y2RTtBbUMvdkY3RTtFL0J3REksa0JBQWtCO0VBQ2xCLFVGVVc7RWlDL0RQLG1CakNLUTtFaUNKUixjaEMyQm1FO0VnQzFCbkUsZ0JoQzBCbUUsRUFBQTs7QWdDaEMzRTtFQVlRLGNBQWM7RUFDZCxnQmhDbUJtRSxFQUFBOztBaUNwQzNFOzs2RXBDaXhGNkU7QW9DN3dGN0U7RWhDd0RJLGtCQUFrQjtFZ0NwRGQsdUZBQXVGO0VBQ3ZGLGNqQzJCbUU7RWlDMUJuRSxrQ2pDb0N3RixFQUFBOztBaUMxQ2hHO0VBWVEsY0FBYztFQUNkLGdCakNtQm1FO0VpQ2xCbkUscUJqQzRCd0YsRUFBQTs7QWtDOUNoRzs7NkVyQyt4RjZFO0FxQzN4RjdFO0VqQ3dESSxrQkFBa0I7RUFDbEIsVUZXUztFbUNoRUwsbUJuQ1FPO0VtQ1BQLGNsQzJCbUU7RWtDMUJuRSxtQmxDb0N3RixFQUFBOztBa0MxQ2hHO0VBWVEsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixjQUFjO0VBQ2QsZ0JsQ2lCbUU7RWtDaEJuRSxtQmxDMEJ3RixFQUFBOztBbUMzQ2hHO0VDSEE7OzZFdkNpekY2RTtFdUM3eUY3RTs7NkV2Q2d6RjZFO0V1QzV5RjdFOzs2RXZDK3lGNkU7RXVDM3lGN0U7OzZFdkM4eUY2RSxFdUM1eUZDOztBRFA5RTtFRVBBOzs2RXhDK3pGNkU7RXdDM3pGN0U7OzZFeEM4ekY2RTtFd0MxekY3RTs7NkV4QzZ6RjZFO0V5Q3IwRjdFOzs2RXpDdzBGNkU7RTRCOXpGN0U7SWFGUSxjdEM0Qm1FO0lzQzNCbkUseUJ0Q3FDd0YsRUFBQTtFeUJ4QjVGO0lhVEksc0J0Q2lDd0YsRUFBQTtFeUJsQmhHO0lhVFEsdURBQXVEO0lBQ3ZELG9CdEMwQndGO0lzQ3pCeEYsb0J0Q3lCd0YsRUFBQTtFeUJsQmhHO0lhRlEsZXRDVW1FLEVBQUE7RXlCUjNFO0lhRVEsNERBQTRELEVBQUE7RWJGcEU7SWFNUSw2REFBNkQsRUFBQTtFYjJCckU7SWFwQlEsZXRDTG1FO0lzQ01uRSxZdENObUUsRUFBQTtFeUJ5RHZFO0lhN0NJLGV0Q1ptRSxFQUFBO0V5QmdFdkU7SWFoREkseUJ0Q053RixFQUFBO0V5QjRENUY7SWFoREksa0J0Q3RCbUUsRUFBQTtFeUI2RXZFO0lhbkRJLFlBQVk7SUFDWixVQUFVO0lBQ1YsZUFBZTtJQUNmLFdBQVcsRUFBQTtFYnlEbkI7O0lhbERRLGV0Q3BDbUU7SXNDcUNuRSxjdENyQ21FLEVBQUE7RXNDd0N2RTs7SUFDSSxhQUFhLEVBQUE7RWIrRHJCO0lhekRRLHFEQUFxRDtJQUNyRCxldENoRG1FLEVBQUE7RXlCK0czRTtJYXpEUSxzREFBc0Q7SUFDdEQsZ0J0Q3ZEbUUsRUFBQTtFcUN0QjNFOzs2RXhDdTJGNkU7RTBDcjNGN0U7OzZFMUN3M0Y2RTtFb0NwM0Y3RTtJTUVRLGlFQUFpRTtJQUNqRSx5QnZDdUN3RixFQUFBO0VpQzFDaEc7SU1PUSxtQnZDbUN3RixFQUFBLEV1Q2xDM0Y7O0FKREw7RUtYQTs7NkUzQ2s0RjZFO0U0Q2w0RjdFOzs2RTVDcTRGNkU7RTRDajRGN0UsdUJBQUE7RUFHQTs7SUFFSSx3QkFBd0IsRUFBQTtFQUc1QjtJQUNJLHlCQUF5QixFQUFBO0VEUDdCOzs2RTNDdzRGNkU7RTZDOTRGN0U7OzZFN0NpNUY2RTtFVTc0RjdFO0ltQ0VRLG1CQUFtQixFQUFBO0VBRjNCO0lBTVEsbUJBQW1CLEVBQUE7RW5DRTNCO0ltQ0lRLE9BQU8sRUFBQTtFQUZmO0lBTVEsYUFBYSxFQUFBO0VBTnJCO0lBVVEsYUFBYSxFQUFBO0VBVnJCO0lBY1EsYUFBYSxFQUFBO0VBZHJCO0lBa0JRLHFCQUFxQixFQUFBO0VBbEI3QjtJQXNCUSxhQUFhLEVBQUE7RUF0QnJCO0lBMEJRLFlBQVksRUFBQTtFQTFCcEI7SUE4QlEsb0IxQ0V3RixFQUFBO0UwQ2hDaEc7SUFrQ1EsZUFBZSxFQUFBO0VBbEN2QjtJQXNDUSxnQkFBZ0IsRUFBQTtFQ3BEeEI7OzZFOUM0NkY2RTtFVy80RjdFO0ltQ3hCSSxnQjNDK0J1RSxFQUFBO0U0Q3BDM0U7OzZFL0NpN0Y2RTtFWTc2RjdFO0ltQ0NJOzt1Qi9DZzdGbUI7SStDOTRGbkI7O3VCL0NpNUZtQjtJK0NwNEZuQjs7dUIvQ3U0Rm1CO0krQzczRm5COzt1Qi9DZzRGbUI7SStDLzJGbkI7O3VCL0NrM0ZtQjtJK0MxMUZuQjs7dUIvQzYxRm1CLEUrQzMxRkM7SW5Dckd4QjtNbUNNUSxpQjVDMEJtRTtNNEN6Qm5FLFNBQVMsRUFBQTs7SW5DUGpCOztNbUNXUSxjNUNxQm1FLEVBQUE7SVNoQzNFO01tQ2VRLGlCNUNpQm1FLEVBQUE7O0lTaEMzRTs7TW1DbUJRLGlCNUNhbUU7TTRDWm5FLHlCNUNzQndGLEVBQUE7O0lTMUNoRzs7TW1Dd0JRLGlCNUNRbUUsRUFBQTs7SVNoQzNFOztNbUM0QlEsZ0I1Q0ltRSxFQUFBOztJU2hDM0U7O01tQ2dDUSxpQjVDQW1FLEVBQUE7SVNoQzNFOzs7Ozs7Ozs7OztNbUM2Q1EsZ0I1Q2JtRSxFQUFBOztJU2hDM0U7O01tQ3FEUSxjQUFjO01BQ2QsaUJBQWlCO01BQ2pCLFVBQVUsRUFBQTtJbkN2RGxCOzs7Ozs7O01tQ2tFUSxlQUFlO01BQ2YsaUI1Q25DbUUsRUFBQTtNU2hDM0U7Ozs7Ozs7UW1Dc0VZLG1CN0M1RFE7UTZDNkRSLGM3QzNERyxFQUFBO0lVWmY7TW1DaUZZLHNCNUNqRCtELEVBQUE7O0lTaEMzRTs7TW1DdUZZLFdBQVc7TUFDWCwrQjVDOUNvRixFQUFBOztJUzFDaEc7O01tQzhGWSxZQUFZO01BQ1osK0I1Q3JEb0YsRUFBQTtJNEMxQ2hHO01Bd0dRLG1CNUM5RHdGLEVBQUE7STRDMUNoRztNQTRHUSxxQjVDNUVtRSxFQUFBO0k0Q2hDM0U7TUFnSFEsc0I1Q2hGbUUsRUFBQTtFd0N0QjNFOzs2RTNDeWdHNkU7RWdEdmhHN0U7OzZFaEQwaEc2RTtFYXRoRzdFO0ltQ0VRLGdCN0M4Qm1FLEVBQUE7RVVoQzNFO0ltQ01RLHNCN0MwQm1FO0k2Q3pCbkUsdUI3Q3lCbUUsRUFBQTtFVWhDM0U7SW1DV1EsNkI3QytCd0YsRUFBQTtFVTFDaEc7SW1DZVEsZ0JBQWdCLEVBQUE7RW5DZnhCO0ltQ21CUSxtQjdDYW1FLEVBQUE7RVVoQzNFO0ltQ3VCUSxXQUFXO0lBQ1gsNEI3Q2tCd0Y7STZDakJ4RixVQUFpQixFQUFBO0VBekJ6QjtJQTZCUSxXQUFXO0lBQ1gsNEI3Q1l3RjtJNkNYeEYsZ0JBQWlCLEVBQUE7RW5DL0J6QjtJbUNtQ1EsMkVBQTJFO0lBQzNFLDBCQUEwQjtJQUMxQixhN0NMbUU7STZDTW5FLCtCN0NJd0Y7STZDSHhGLGU3Q1BtRSxFQUFBO0U2Q2hDM0U7SUEyQ1EsV0FBVztJQUNYLFVBQXFCLEVBQUE7RW5DNUM3QjtJbUNnRFEsa0I3Q2hCbUUsRUFBQTtFVWhDM0U7SW1Db0RRLGlCN0NwQm1FLEVBQUE7RTZDaEMzRTtJQXdEUSxXQUFXO0lBQ1gsVUFBcUIsRUFBQTtFQXpEN0I7SUE2RFEsV0FBVztJQUNYLHdCN0NwQndGO0k2Q3FCeEYsZ0JBQXFCLEVBQUE7RUEvRDdCO0lBbUVRLFdBQVc7SUFDWCxXQUFXO0lBQ1gsVUFBVTtJQUNWLFdBQVcsRUFBQTtFQzFFbkI7OzZFakR5a0c2RTtFY3JrRzdFO0ltQ0VRLG1COUN3Q3dGLEVBQUE7RVcxQ2hHO0ltQ01RLGNBQWM7SUFDZCxtQjlDeUJtRSxFQUFBO0VXaEMzRTtJbUNXUSxnQkFBZ0I7SUFDaEIsK0NBQXdEO0lBQ3hELG1CQUFtQjtJQUNuQixzQjlDNEJ3RixFQUFBO0VXMUNoRztJbUNrQlEsT0FBTyxFQUFBO0VBbEJmOztJQXVCUSxtQkFBbUIsRUFBQTtJQXZCM0I7O01BMEJZLHFCOUNNK0QsRUFBQTtFV2hDM0U7SW1DK0JRLFlBQVk7SUFDWixxQjlDQW1FO0k4Q0NuRSxnQjlDRG1FLEVBQUE7RStDcEMzRTs7NkVsRGttRzZFO0VnQjlsRzdFO0lrQ0VRLGtCL0M4Qm1FLEVBQUE7RWdEcEMzRTs7NkVuRHVtRzZFO0VpQnhsRzdFO0lrQ1JJLGtCaEQ2QnVFLEVBQUE7RWNWM0U7O0lrQ1pJLHFCaERnQzRGLEVBQUE7RWNUaEc7SWtDbkJJLHdCaEQ0QjRGLEVBQUE7RWNEaEc7SWtDdkJJLG1CQUFtQjtJQUNuQixhQUFhO0lBQ2IsZUFBZSxFQUFBO0VsQzRCbkI7SWtDeEJJLGlCaERRdUUsRUFBQTtFZ0RMM0U7SUFDSSxXQUFXLEVBQUE7RUFHZjtJQUNJLFlBQVksRUFBQTtFQUdoQjtJQUNJLGNBQWM7SUFDZCxVQUFVLEVBQUE7SUFGZDtNQUtRLDJCQUEyQixFQUFBO0VsQ3VEbkM7SWtDbERJLFVBQVU7SUFDViw2QmhESjRGLEVBQUE7RWM2RGhHO0lrQ25ESSxrQmhEcEJ1RTtJZ0RxQnZFLHNCaERyQnVFO0lnRHNCdkUsaUJBQWlCLEVBQUE7RWxDMkRyQjtJa0N2REksNkJoRGhCNEYsRUFBQTtFY3NHaEc7SWtDaEZJLGtCaERoQ3VFLEVBQUE7RWN5SDNFO0lrQ3JGSSxrQmhEcEN1RSxFQUFBO0VjMkkzRTtJa0NuR0ksa0JoRHhDdUUsRUFBQTtFaURwQzNFOzs2RXBEK29HNkU7RWtCM29HN0U7SWtDRVEsZ0JBQWdCLEVBQUE7RUFGeEI7SUFNUSxpQkFBaUIsRUFBQTtFbENOekI7SWtDVVEsbUJqRHNCbUUsRUFBQTtFa0RwQzNFOzs2RXJEd3BHNkU7RXFEcHBHN0U7SUFFUSxhQUFhO0lBQ2IsZUFBZTtJQUNmLDZCQUE2QjtJQUM3QixzQmxEcUN3RixFQUFBO0VrRDFDaEc7SUFTUSxzQmxEaUN3RixFQUFBO0VrRDFDaEc7SUFhUSxvQkFBb0IsRUFBQTtFQWI1QjtJQWlCUSxhQUFhLEVBQUE7RUFqQnJCO0lBcUJRLGFBQWEsRUFBQTtFQXJCckI7SUF5QlEsb0JBQW9CLEVBQUE7RUM3QjVCOzs2RXREMHFHNkU7RUFDM0U7SXNEdHFHRSwrQkFBb0MsRUFBQTtJdER3cUdwQztNc0RycUdJLDBCQUEwQixFQUFBO0l0RHVxRzlCO01zRG5xR0ksMkJBQTJCLEVBQUE7RUNabkM7OzZFdkRtckc2RTtFMEIvcUc3RTtJNkJFUSxnQnBEOEJtRSxFQUFBO0VxRHBDM0U7OzZFeER3ckc2RTtFMkJwckc3RTtJNkJFUSxnQnJEOEJtRTtJcUQ3Qm5FLHFCQUFxQixFQUFBO0U3Qkg3QjtJNkJPUSxtQkFBbUI7SUFDbkIsb0JBQW9CLEVBQUE7RTdCUjVCO0k2QllRLG9CQUFvQjtJQUNwQixzQnJEbUJtRSxFQUFBO0V3QmhDM0U7STZCaUJRLHFCQUFxQixFQUFBO0U3QmpCN0I7STZCcUJRLFlBQVk7SUFDWixXQUFXLEVBQUE7RTdCdEJuQjtJNkIwQlEsU0FBUztJQUNULFdBQVcsRUFBQTtFN0IzQm5CO0k2QitCUSxXQUFXLEVBQUE7RTdCL0JuQjtJNkJtQ1EsU0FBUztJQUNULHFCckRKbUU7SXFES25FLFdBQVcsRUFBQTtFN0JyQ25CO0k2QnlDUSxrQkFBa0IsRUFBQTtFYmpCMUI7OzZFM0N3ckc2RTtFeURwdEc3RTs7NkV6RHV0RzZFO0U4QmhzRzdFOztJMkJoQlEsWUFBWTtJQUNaLGNBQWM7SUFDZCxXQUFXLEVBQUE7RTNCdUNmO0kyQmpDSSxnQkFBZ0I7SUFDaEIsVUFBVSxFQUFBO0VDaEJsQjs7NkUxRGt1RzZFO0UrQjl0RzdFO0kyQkVRLHNCdkQ4Qm1FO0l1RDdCbkUsbUJ2RDZCbUUsRUFBQTtFNEJoQzNFO0kyQk9RLGlCQUFpQixFQUFBO0VBUHpCO0lBV1EsaUJ2RHFCbUUsRUFBQTtFdURoQzNFO0lBZVEsa0J2RGlCbUUsRUFBQTtFd0RwQzNFOzs2RTNEOHVHNkU7RWtDMXVHN0U7SXlCRVEsc0J4RDhCbUU7SXdEN0JuRSxxQnhENkJtRSxFQUFBO0UrQnZCdkU7SXlCRkksbUJ4RHlCbUUsRUFBQTtFK0JoQzNFO0l5QldRLCtEQUErRDtJQUMvRCxnQnhEb0JtRSxFQUFBO0V5RHBDM0U7OzZFNUR5dkc2RTtFcUNydkc3RTtJdUJFUSxtQkFBbUIsRUFBQTtFQUYzQjtJQU1RLGNBQWM7SUFDZCxRQUFRO0lBQ1IsbUJ6RGtDd0YsRUFBQTtFeUQxQ2hHO0lBWVEsUUFBUSxFQUFBO0VBWmhCO0lBZ0JRLFVBQVUsRUFBQSxFQUNiOztBdEJOTDtFdUJmQTs7NkU3RHd3RzZFO0U2RHB3RzdFOzs2RTdEdXdHNkU7RTZEbndHN0U7OzZFN0Rzd0c2RTtFNkRsd0c3RTs7NkU3RHF3RzZFLEU2RG53R0M7O0F2Qks5RTtFd0JuQkE7OzZFOURzeEc2RTtFOERseEc3RTs7NkU5RHF4RzZFO0U4RGp4RzdFOzs2RTlEb3hHNkU7RThEaHhHN0U7OzZFOURteEc2RTtFK0QveEc3RTs7NkUvRGt5RzZFO0UwRDl4RzdFO0lLRVEsZ0I1RDhCbUUsRUFBQTtFNkRwQzNFOzs2RWhFdXlHNkU7RWtDbnlHN0U7SThCRVEscUI3RDhCbUUsRUFBQSxFNkQ3QnRFOztBMUJnQkw7RTJCdkJBOzs2RWpFOHlHNkU7RWtFOXlHN0U7OzZFbEVpekc2RTtFa0U3eUc3RSx1QkFBQTtFQUdBOztJQUVJLHdCQUF3QixFQUFBO0VBRzVCO0lBQ0kseUJBQXlCLEVBQUE7RURQN0I7OzZFakVvekc2RTtFaUVoekc3RTs7NkVqRW16RzZFO0VpRS95RzdFOzs2RWpFa3pHNkU7RW1FaDBHN0U7OzZFbkVtMEc2RTtFMEQvekc3RTtJU0VRLG9CaEU4Qm1FLEVBQUE7RWlFcEMzRTs7NkVwRXcwRzZFO0VrQ3AwRzdFO0lrQ0VRLG9CakU4Qm1FLEVBQUEsRWlFN0J0RTs7QTlCb0JMO0UrQjNCQTs7NkVyRSswRzZFO0VxRTMwRzdFOzs2RXJFODBHNkU7RXNFbDFHN0U7OzZFdEVxMUc2RTtFc0VqMUc3RTtJQUVRLG1CQUFtQixFQUFBO0VBRjNCO0lBTVEsbUJBQW1CLEVBQUE7RURBM0I7OzZFckVrMUc2RTtFcUU5MEc3RTs7NkVyRWkxRzZFO0V1RS8xRzdFOzs2RXZFazJHNkU7RStCOTFHN0U7SXdDRVEsaUJBQWlCLEVBQUE7RWJGekI7SWFNUSxrQnBFMEJtRSxFQUFBO0VxRXBDM0U7OzZFeEV5Mkc2RTtFa0NyMkc3RTtJc0NFUSxtQnJFOEJtRSxFQUFBLEVxRTdCdEUiLCJmaWxlIjoibW9kZXJuLjRkMDE5ZjUxLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb2xvcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRm9udHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFdpZHRocyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCcmVhayBQb2ludHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5ZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEZvbnRBd2Vzb21lIEljb25zIChodHRwOi8vZm9ydGF3ZXNvbWUuZ2l0aHViLmlvL0ZvbnQtQXdlc29tZS9pY29ucy8pICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGdW5jdGlvbnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTWl4aW5zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hcnRpY2xlLWNhcmQsIC5jb21tZW50LWJvZHksIC5jb21tZW50LW1ldGEsIC5tZW51LWxpc3QsIC5zdG9yeSwgLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jaywgLnNsaWRlc2hvdy13cmFwcGVyID4gLnNsaWRlc2hvdy1ibG9jaywgLmNvbnRlbnQtd3JhcHBlciA+IC5jb250ZW50LWJsb2NrLCAuY29udGVudC13cmFwcGVyID4gLnBhcnRuZXJzLWJsb2NrLCAuY2FsbG91dHMtd3JhcHBlciA+IC5jYWxsb3V0cy1ibG9jaywgLnBhcnRuZXJzLXdyYXBwZXIgPiAucGFydG5lcnMtYmxvY2ssIC5mb290ZXItd3JhcHBlciA+IC5mb290ZXItYmxvY2sge1xuICAqem9vbTogMSAhaW1wb3J0YW50OyB9XG4gIC5hcnRpY2xlLWNhcmQ6OmJlZm9yZSwgLmNvbW1lbnQtYm9keTo6YmVmb3JlLCAuY29tbWVudC1tZXRhOjpiZWZvcmUsIC5tZW51LWxpc3Q6OmJlZm9yZSwgLnN0b3J5OjpiZWZvcmUsIC5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2s6OmJlZm9yZSwgLnNsaWRlc2hvdy13cmFwcGVyID4gLnNsaWRlc2hvdy1ibG9jazo6YmVmb3JlLCAuY29udGVudC13cmFwcGVyID4gLmNvbnRlbnQtYmxvY2s6OmJlZm9yZSwgLmNvbnRlbnQtd3JhcHBlciA+IC5wYXJ0bmVycy1ibG9jazo6YmVmb3JlLCAuY2FsbG91dHMtd3JhcHBlciA+IC5jYWxsb3V0cy1ibG9jazo6YmVmb3JlLCAucGFydG5lcnMtd3JhcHBlciA+IC5wYXJ0bmVycy1ibG9jazo6YmVmb3JlLCAuZm9vdGVyLXdyYXBwZXIgPiAuZm9vdGVyLWJsb2NrOjpiZWZvcmUsIC5hcnRpY2xlLWNhcmQ6OmFmdGVyLCAuY29tbWVudC1ib2R5OjphZnRlciwgLmNvbW1lbnQtbWV0YTo6YWZ0ZXIsIC5tZW51LWxpc3Q6OmFmdGVyLCAuc3Rvcnk6OmFmdGVyLCAuaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrOjphZnRlciwgLnNsaWRlc2hvdy13cmFwcGVyID4gLnNsaWRlc2hvdy1ibG9jazo6YWZ0ZXIsIC5jb250ZW50LXdyYXBwZXIgPiAuY29udGVudC1ibG9jazo6YWZ0ZXIsIC5jb250ZW50LXdyYXBwZXIgPiAucGFydG5lcnMtYmxvY2s6OmFmdGVyLCAuY2FsbG91dHMtd3JhcHBlciA+IC5jYWxsb3V0cy1ibG9jazo6YWZ0ZXIsIC5wYXJ0bmVycy13cmFwcGVyID4gLnBhcnRuZXJzLWJsb2NrOjphZnRlciwgLmZvb3Rlci13cmFwcGVyID4gLmZvb3Rlci1ibG9jazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFwwMDIwXCIgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIC5hcnRpY2xlLWNhcmQ6OmFmdGVyLCAuY29tbWVudC1ib2R5OjphZnRlciwgLmNvbW1lbnQtbWV0YTo6YWZ0ZXIsIC5tZW51LWxpc3Q6OmFmdGVyLCAuc3Rvcnk6OmFmdGVyLCAuaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrOjphZnRlciwgLnNsaWRlc2hvdy13cmFwcGVyID4gLnNsaWRlc2hvdy1ibG9jazo6YWZ0ZXIsIC5jb250ZW50LXdyYXBwZXIgPiAuY29udGVudC1ibG9jazo6YWZ0ZXIsIC5jb250ZW50LXdyYXBwZXIgPiAucGFydG5lcnMtYmxvY2s6OmFmdGVyLCAuY2FsbG91dHMtd3JhcHBlciA+IC5jYWxsb3V0cy1ibG9jazo6YWZ0ZXIsIC5wYXJ0bmVycy13cmFwcGVyID4gLnBhcnRuZXJzLWJsb2NrOjphZnRlciwgLmZvb3Rlci13cmFwcGVyID4gLmZvb3Rlci1ibG9jazo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoICFpbXBvcnRhbnQ7IH1cblxuLl9jZW50ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uX2xlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5fcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4uX3RleHRjZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuXG4uX3RleHRsZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5fdGV4dHJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4uX25vbWFyZ2luIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cblxuLl9ub3BhZGRpbmcge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLl92aXN1YWxseWhpZGRlbiB7XG4gIGxlZnQ6IC05OTllbSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiAtOTk5ZW0gIWltcG9ydGFudDsgfVxuXG4vKiB2aXNpYmlsaXR5IGNsYXNzZXMgKi9cbi5faGlkZW1vYmlsZSxcbi5fc2hvd3RhYmxldCxcbi5fc2hvd2Rlc2t0b3Age1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLl9zaG93bW9iaWxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTm9ybWFsaXplICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qISBub3JtYWxpemUtc2NzcyB8IE1JVC9HUEx2MiBMaWNlbnNlIHwgYml0Lmx5L25vcm1hbGl6ZS1zY3NzICovXG4vKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5maWdjYXB0aW9uLFxuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctIGFuZCBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi8gfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqLyB9XG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi8gfVxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuaHRtbCB7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbkAtbXMtdmlld3BvcnQge1xuICB3aWR0aDogZGV2aWNlLXdpZHRoOyB9XG5cbjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbjo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDA7IH1cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyB9XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEdyaWRseSAoYWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9Jb25pY2FCaXphdS9ncmlkbHkpICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5yb3csIC5uaW5qYS1yb3csIC5yb3ctZGVza3RvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmNvbCwgW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCYXNpYyBHbG9iYWwgQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkJydXNoZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LnN2ZyNicnVzaGVyXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG4udGl0bGUge1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE2NjY3ZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwLjc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLnRpdGxlLi1zdWIge1xuICAgIGZvbnQtc2l6ZTogMi41ZW07IH1cbiAgLnRpdGxlLi1wYXJ0bmVyLXN1YiB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtICFpbXBvcnRhbnQ7IH1cblxuLnRleHQsIC5uaW5qYS1mb3Jtcy1yZXF1aXJlZC1pdGVtcyB7XG4gIGNvbG9yOiAjMTExMTExO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwZW0gMGVtIDEuMjVlbTsgfVxuXG4ubGluayB7XG4gIGNvbG9yOiAjMTM0MzBDO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzOyB9XG4gIC5saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogIzI5NTcwNDsgfVxuICAubGluay4tYWx0IHtcbiAgICBjb2xvcjogIzhmMDMwMzsgfVxuICAubGluay4tYWx0OmhvdmVyIHtcbiAgICBjb2xvcjogIzc1MDIwMjsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBVc2VyIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnVzZXItY29udGVudCwgLmNvbW1lbnQtY29udGVudCB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIFVuaXZlcnNhbCAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogSGVhZGVycyAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBHZW5lcmFsIFRleHQgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIGxhYmVscyAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogTGlzdHMgICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBUYWJsZXMgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEJsb2NrcyBvZiBUZXh0ICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogSFJzICAgICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBJbWFnZXMgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEdlbmVyYWwgRm9ybXMgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogQnV0dG9ucyAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBDaGVja2JveC9SYWRpbyAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIElucHV0cyAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogU2VsZWN0cyAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBUZXh0YXJlYXMgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEFsaWdubWVudCAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi8gfVxuICAudXNlci1jb250ZW50IGEsIC5jb21tZW50LWNvbnRlbnQgYSB7XG4gICAgY29sb3I6ICMxMzQzMEM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzOyB9XG4gICAgLnVzZXItY29udGVudCBhOmhvdmVyLCAuY29tbWVudC1jb250ZW50IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyOTU3MDQ7IH1cbiAgLnVzZXItY29udGVudCBoMSwgLmNvbW1lbnQtY29udGVudCBoMSxcbiAgLnVzZXItY29udGVudCBoMixcbiAgLmNvbW1lbnQtY29udGVudCBoMixcbiAgLnVzZXItY29udGVudCBoMyxcbiAgLmNvbW1lbnQtY29udGVudCBoMyxcbiAgLnVzZXItY29udGVudCBoNCxcbiAgLmNvbW1lbnQtY29udGVudCBoNCxcbiAgLnVzZXItY29udGVudCBoNSxcbiAgLmNvbW1lbnQtY29udGVudCBoNSxcbiAgLnVzZXItY29udGVudCBoNixcbiAgLmNvbW1lbnQtY29udGVudCBoNiB7XG4gICAgY29sb3I6ICMxMTExMTE7XG4gICAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC51c2VyLWNvbnRlbnQgaDEgZW0sIC5jb21tZW50LWNvbnRlbnQgaDEgZW0sXG4gICAgLnVzZXItY29udGVudCBoMiBlbSxcbiAgICAuY29tbWVudC1jb250ZW50IGgyIGVtLFxuICAgIC51c2VyLWNvbnRlbnQgaDMgZW0sXG4gICAgLmNvbW1lbnQtY29udGVudCBoMyBlbSxcbiAgICAudXNlci1jb250ZW50IGg0IGVtLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaDQgZW0sXG4gICAgLnVzZXItY29udGVudCBoNSBlbSxcbiAgICAuY29tbWVudC1jb250ZW50IGg1IGVtLFxuICAgIC51c2VyLWNvbnRlbnQgaDYgZW0sXG4gICAgLmNvbW1lbnQtY29udGVudCBoNiBlbSB7XG4gICAgICBmb250LWZhbWlseTogXCJCcnVzaGVyXCIsIGN1cnNpdmU7XG4gICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC51c2VyLWNvbnRlbnQgaDEsIC5jb21tZW50LWNvbnRlbnQgaDEge1xuICAgIGNvbG9yOiAjNUQwMjAyO1xuICAgIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgICBsaW5lLWhlaWdodDogMC44ZW07XG4gICAgbWFyZ2luOiAwZW0gMGVtIDAuMTMzMzNlbTsgfVxuICAgIC51c2VyLWNvbnRlbnQgaDEgZW0sIC5jb21tZW50LWNvbnRlbnQgaDEgZW0ge1xuICAgICAgY29sb3I6ICMxMzQzMEM7IH1cbiAgXG4gIC51c2VyLWNvbnRlbnQgaDIsXG4gIC5jb21tZW50LWNvbnRlbnQgaDIge1xuICAgIGZvbnQtc2l6ZTogMS42MjVlbTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMC42MTUzOGVtOyB9XG4gIC51c2VyLWNvbnRlbnQgaDIuLWFsdCwgLmNvbW1lbnQtY29udGVudCBoMi4tYWx0IHtcbiAgICBmb250LWZhbWlseTogXCJCcnVzaGVyXCIsIGN1cnNpdmU7XG4gICAgZm9udC1zaXplOiAyLjEyNWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIFxuICAudXNlci1jb250ZW50IGgzLFxuICAuY29tbWVudC1jb250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMC44ZW07IH1cbiAgXG4gIC51c2VyLWNvbnRlbnQgaDQsXG4gIC5jb21tZW50LWNvbnRlbnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVlbTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMC43MjcyN2VtOyB9XG4gIFxuICAudXNlci1jb250ZW50IGg1LFxuICAuY29tbWVudC1jb250ZW50IGg1IHtcbiAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMC44ZW07IH1cbiAgXG4gIC51c2VyLWNvbnRlbnQgaDYsXG4gIC5jb21tZW50LWNvbnRlbnQgaDYge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICBtYXJnaW46IDBlbSAwZW0gMC40NDQ0NGVtOyB9XG4gIC51c2VyLWNvbnRlbnQgbGFiZWwsIC5jb21tZW50LWNvbnRlbnQgbGFiZWwsXG4gIC51c2VyLWNvbnRlbnQgbWVudSxcbiAgLmNvbW1lbnQtY29udGVudCBtZW51LFxuICAudXNlci1jb250ZW50IG9sLFxuICAuY29tbWVudC1jb250ZW50IG9sLFxuICAudXNlci1jb250ZW50IHAsXG4gIC5jb21tZW50LWNvbnRlbnQgcCxcbiAgLnVzZXItY29udGVudCB0YWJsZSxcbiAgLmNvbW1lbnQtY29udGVudCB0YWJsZSxcbiAgLnVzZXItY29udGVudCB1bCxcbiAgLmNvbW1lbnQtY29udGVudCB1bCB7XG4gICAgY29sb3I6ICMxMTExMTE7XG4gICAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbjogMGVtIDBlbSAxLjI1ZW07IH1cbiAgLnVzZXItY29udGVudCBsYWJlbCwgLmNvbW1lbnQtY29udGVudCBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgXG4gIC51c2VyLWNvbnRlbnQgbWVudSxcbiAgLmNvbW1lbnQtY29udGVudCBtZW51LFxuICAudXNlci1jb250ZW50IG9sLFxuICAuY29tbWVudC1jb250ZW50IG9sLFxuICAudXNlci1jb250ZW50IHVsLFxuICAuY29tbWVudC1jb250ZW50IHVsIHtcbiAgICBwYWRkaW5nOiAwZW0gMGVtIDBlbSAxLjVlbTsgfVxuICAgIC51c2VyLWNvbnRlbnQgbWVudSBtZW51LCAuY29tbWVudC1jb250ZW50IG1lbnUgbWVudSxcbiAgICAudXNlci1jb250ZW50IG1lbnUgb2wsXG4gICAgLmNvbW1lbnQtY29udGVudCBtZW51IG9sLFxuICAgIC51c2VyLWNvbnRlbnQgbWVudSB1bCxcbiAgICAuY29tbWVudC1jb250ZW50IG1lbnUgdWwsXG4gICAgLnVzZXItY29udGVudCBvbCBtZW51LFxuICAgIC5jb21tZW50LWNvbnRlbnQgb2wgbWVudSxcbiAgICAudXNlci1jb250ZW50IG9sIG9sLFxuICAgIC5jb21tZW50LWNvbnRlbnQgb2wgb2wsXG4gICAgLnVzZXItY29udGVudCBvbCB1bCxcbiAgICAuY29tbWVudC1jb250ZW50IG9sIHVsLFxuICAgIC51c2VyLWNvbnRlbnQgdWwgbWVudSxcbiAgICAuY29tbWVudC1jb250ZW50IHVsIG1lbnUsXG4gICAgLnVzZXItY29udGVudCB1bCBvbCxcbiAgICAuY29tbWVudC1jb250ZW50IHVsIG9sLFxuICAgIC51c2VyLWNvbnRlbnQgdWwgdWwsXG4gICAgLmNvbW1lbnQtY29udGVudCB1bCB1bCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIFxuICAudXNlci1jb250ZW50IHRhYmxlLFxuICAuY29tbWVudC1jb250ZW50IHRhYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgcGFkZGluZy1ib3R0b206IDFweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4wNjI1ZW07XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAudXNlci1jb250ZW50IHRhYmxlIHRkLCAuY29tbWVudC1jb250ZW50IHRhYmxlIHRkLFxuICAudXNlci1jb250ZW50IHRhYmxlIHRoLFxuICAuY29tbWVudC1jb250ZW50IHRhYmxlIHRoIHtcbiAgICBwYWRkaW5nOiAwLjI1ZW0gMC4zNzVlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gIC51c2VyLWNvbnRlbnQgdGFibGUgdGhlYWQgdGQsIC5jb21tZW50LWNvbnRlbnQgdGFibGUgdGhlYWQgdGQsXG4gIC51c2VyLWNvbnRlbnQgdGFibGUgdGgsXG4gIC5jb21tZW50LWNvbnRlbnQgdGFibGUgdGgge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAudXNlci1jb250ZW50IHRhYmxlIHRoZWFkIHRkLCAuY29tbWVudC1jb250ZW50IHRhYmxlIHRoZWFkIHRkLFxuICAudXNlci1jb250ZW50IHRhYmxlIHRoZWFkIHRoLFxuICAuY29tbWVudC1jb250ZW50IHRhYmxlIHRoZWFkIHRoIHtcbiAgICBiYWNrZ3JvdW5kOiAjNUQwMjAyO1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG4gIC51c2VyLWNvbnRlbnQgdGFibGUgdGZvb3QgdGQsIC5jb21tZW50LWNvbnRlbnQgdGFibGUgdGZvb3QgdGQsXG4gIC51c2VyLWNvbnRlbnQgdGFibGUgdGZvb3QgdGgsXG4gIC5jb21tZW50LWNvbnRlbnQgdGFibGUgdGZvb3QgdGgge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAudXNlci1jb250ZW50IHRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB0ZCwgLmNvbW1lbnQtY29udGVudCB0YWJsZSB0cjpudGgtY2hpbGQoZXZlbikgdGQsXG4gIC51c2VyLWNvbnRlbnQgdGFibGUgdHI6bnRoLWNoaWxkKGV2ZW4pIHRoLFxuICAuY29tbWVudC1jb250ZW50IHRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB0aCB7XG4gICAgYmFja2dyb3VuZDogI0VFRUVFRTsgfVxuICAudXNlci1jb250ZW50IHByZSwgLmNvbW1lbnQtY29udGVudCBwcmUge1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzExMTExMTtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIG1hcmdpbjogMGVtIDBlbSAxLjhlbTtcbiAgICBwYWRkaW5nOiAxLjJlbSAxLjhlbTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAudXNlci1jb250ZW50IGJsb2NrcXVvdGUsIC5jb21tZW50LWNvbnRlbnQgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDAuMTg3NWVtIHNvbGlkICM1RDAyMDI7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDEuNWVtO1xuICAgIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDEuNWVtOyB9XG4gIC51c2VyLWNvbnRlbnQgaHIsIC5jb21tZW50LWNvbnRlbnQgaHIge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAwLjE4NzVlbSBzb2xpZCAjRUVFRUVFO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNWVtOyB9XG4gIC51c2VyLWNvbnRlbnQgaW1nLCAuY29tbWVudC1jb250ZW50IGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC51c2VyLWNvbnRlbnQgaW5wdXQsIC5jb21tZW50LWNvbnRlbnQgaW5wdXQsXG4gIC51c2VyLWNvbnRlbnQgLnNlbGVjdCxcbiAgLmNvbW1lbnQtY29udGVudCAuc2VsZWN0LFxuICAudXNlci1jb250ZW50IHNlbGVjdCxcbiAgLmNvbW1lbnQtY29udGVudCBzZWxlY3QsXG4gIC51c2VyLWNvbnRlbnQgdGV4dGFyZWEsXG4gIC5jb21tZW50LWNvbnRlbnQgdGV4dGFyZWEge1xuICAgIGNvbG9yOiAjMTExMTExO1xuICAgIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTsgfVxuICAudXNlci1jb250ZW50IGJ1dHRvbiwgLmNvbW1lbnQtY29udGVudCBidXR0b24sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTM0MzBDO1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDBlbSAwZW0gMC42MjVlbTtcbiAgICBwYWRkaW5nOiAwLjI1ZW0gMC43NWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cywgY29sb3IgMC4xNXM7IH1cbiAgICAudXNlci1jb250ZW50IGJ1dHRvbjpob3ZlciwgLmNvbW1lbnQtY29udGVudCBidXR0b246aG92ZXIsXG4gICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdOmhvdmVyLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImJ1dHRvblwiXTpob3ZlcixcbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyZXNldFwiXTpob3ZlcixcbiAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyZXNldFwiXTpob3ZlcixcbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsXG4gICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMyOTU3MDQ7XG4gICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgbGVmdDogLTk5OWVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsXG4gICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCxcbiAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDAuNWVtIDAuNWVtIDAuNWVtIDEuNWVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOjpiZWZvcmUsIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6OmJlZm9yZSxcbiAgICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSxcbiAgICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMxMzQzMEM7XG4gICAgICAgIGJvcmRlci13aWR0aDogMC4wNjI1cmVtO1xuICAgICAgICBjb2xvcjogIzEzNDMwQztcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjEyNWVtO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4wNjI1ZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0b3A6IDAuMzc1ZW07XG4gICAgICAgIHdpZHRoOiAxLjEyNWVtOyB9XG4gICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLCAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSwgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSxcbiAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG4gICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICBvdXRsaW5lOiAtd2Via2l0LWZvY3VzLXJpbmctY29sb3IgYXV0byA1cHg7IH1cbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXVtkaXNhYmxlZF0gKyBsYWJlbDo6YmVmb3JlLCAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXVtkaXNhYmxlZF0gKyBsYWJlbDo6YmVmb3JlLFxuICAgIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdW2Rpc2FibGVkXSArIGxhYmVsOjpiZWZvcmUsXG4gICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmFkaW9cIl1bZGlzYWJsZWRdICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRUVFRUVFOyB9XG4gIFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOjpiZWZvcmUsXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlLCAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLvgIxcIjtcbiAgICBmb250LWZhbWlseTogXCJmb250YXdlc29tZVwiLCBzYW5zLXNlcmlmOyB9XG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlLCAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLvhJFcIjtcbiAgICBmb250LWZhbWlseTogXCJmb250YXdlc29tZVwiLCBzYW5zLXNlcmlmOyB9XG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImNvbG9yXCJdLCAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyYW5nZVwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwicmFuZ2VcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gIC51c2VyLWNvbnRlbnQgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gIC51c2VyLWNvbnRlbnQgc2VsZWN0LFxuICAuY29tbWVudC1jb250ZW50IHNlbGVjdCxcbiAgLnVzZXItY29udGVudCAuc2VsZWN0LFxuICAuY29tbWVudC1jb250ZW50IC5zZWxlY3QsXG4gIC51c2VyLWNvbnRlbnQgdGV4dGFyZWEsXG4gIC5jb21tZW50LWNvbnRlbnQgdGV4dGFyZWEge1xuICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzEzNDMwQztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMGVtIDBlbSAwLjYyNWVtO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMC41ZW0gMWVtO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIFxuICAudXNlci1jb250ZW50IC5zZWxlY3QsXG4gIC5jb21tZW50LWNvbnRlbnQgLnNlbGVjdCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnVzZXItY29udGVudCAuc2VsZWN0OjpiZWZvcmUsIC5jb21tZW50LWNvbnRlbnQgLnNlbGVjdDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIu+DnFwiO1xuICAgIGZvbnQtZmFtaWx5OiBcImZvbnRhd2Vzb21lXCIsIHNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAxLjc1ZW07XG4gICAgei1pbmRleDogMjsgfVxuICAudXNlci1jb250ZW50IC5zZWxlY3Q6OmFmdGVyLCAuY29tbWVudC1jb250ZW50IC5zZWxlY3Q6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTM0MzBDO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMS43NWVtO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLnVzZXItY29udGVudCAuc2VsZWN0IHNlbGVjdCwgLmNvbW1lbnQtY29udGVudCAuc2VsZWN0IHNlbGVjdCB7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwLjU2MjVlbSAzLjM3NWVtIDAuNjg3NWVtIDAuNzVlbTtcbiAgICB0ZXh0LWluZGVudDogMC4wMXB4O1xuICAgIHRleHQtb3ZlcmZsb3c6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAudXNlci1jb250ZW50IC5zZWxlY3Qgc2VsZWN0OjotbXMtZXhwYW5kLCAuY29tbWVudC1jb250ZW50IC5zZWxlY3Qgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudXNlci1jb250ZW50IC5zZWxlY3Qgc2VsZWN0OmhvdmVyLCAuY29tbWVudC1jb250ZW50IC5zZWxlY3Qgc2VsZWN0OmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAudXNlci1jb250ZW50IC5zZWxlY3Qgb3B0aW9uLCAuY29tbWVudC1jb250ZW50IC5zZWxlY3Qgb3B0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnVzZXItY29udGVudCAuc2VsZWN0IG9wdGlvbjpob3ZlciwgLmNvbW1lbnQtY29udGVudCAuc2VsZWN0IG9wdGlvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjREREREREOyB9XG4gIFxuICAudXNlci1jb250ZW50IHRleHRhcmVhLFxuICAuY29tbWVudC1jb250ZW50IHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNi4yNWVtO1xuICAgIG1pbi13aWR0aDogMTAwJTsgfVxuICAudXNlci1jb250ZW50IC5hbGlnbmNlbnRlciwgLmNvbW1lbnQtY29udGVudCAuYWxpZ25jZW50ZXIsXG4gIC51c2VyLWNvbnRlbnQgLmFsaWdubGVmdCxcbiAgLmNvbW1lbnQtY29udGVudCAuYWxpZ25sZWZ0LFxuICAudXNlci1jb250ZW50IC5hbGlnbnJpZ2h0LFxuICAuY29tbWVudC1jb250ZW50IC5hbGlnbnJpZ2h0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAxLjg3NWVtOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQXJ0aWNsZSBDYXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hcnRpY2xlLWNhcmQge1xuICBwYWRkaW5nOiAwLjkzNzVlbTsgfVxuXG4uYXJ0aWNsZS1jYXJkOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tOiAwLjE4NzVlbSBzb2xpZCAjRUVFRUVFO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuOTM3NWVtOyB9XG5cbi5hcnRpY2xlLWNhcmQuLWJhbm5lciB7XG4gIHBhZGRpbmc6IDVlbSAwLjkzNzVlbSAwLjkzNzVlbTsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1leGNlcnB0LCAuYXJ0aWNsZS1jYXJkLi1leGNlcnB0Om5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLmFydGljbGUtY2FyZC4tbWFwIHtcbiAgaGVpZ2h0OiA2Mi41ZW07IH1cblxuLmFydGljbGUtY2FyZC4tcGFydG5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYXJ0aWNsZS1jYXJkID4gLmltYWdlIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDEuODc1ZW0gMGVtIDBlbTsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1leGNlcnB0ID4gLmltYWdlIHtcbiAgcGFkZGluZzogMGVtIDBlbSAwLjkzNzVlbTsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1wYXJ0bmVyID4gLmltYWdlIHtcbiAgcGFkZGluZzogMDsgfVxuXG4uYXJ0aWNsZS1jYXJkID4gLmltYWdlID4gaW1nLFxuLmFydGljbGUtY2FyZCA+IC5pbWFnZSA+IGEgPiBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1wYXJ0bmVyID4gLmltYWdlID4gLmNhcHRpb24ge1xuICBtYXJnaW4tdG9wOiAxLjI1ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYXJ0aWNsZS1jYXJkLi1wYXJ0bmVyID4gLmltYWdlID4gLmNhcHRpb24gPiAudGV4dCwgLmFydGljbGUtY2FyZC4tcGFydG5lciA+IC5pbWFnZSA+IC5jYXB0aW9uID4gLm5pbmphLWZvcm1zLXJlcXVpcmVkLWl0ZW1zIHtcbiAgZm9udC1zaXplOiAxLjI1ZW07IH1cblxuLmFydGljbGUtY2FyZCA+IC5oZWFkZXIge1xuICBtYXJnaW46IDA7IH1cblxuLmFydGljbGUtY2FyZC4tYmFubmVyID4gLmhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtYXJ0aWNsZS1jYXJkLWhlYWRlci1iYW5uZXJfbW9iaWxlLnBuZ1wiKSBjZW50ZXIgYm90dG9tIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDMwLjEyNWVtO1xuICBsZWZ0OiAwLjkzNzVlbTtcbiAgcGFkZGluZzogMC4zMTI1ZW0gMS4yNWVtIDEuNzVlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1ZW0pO1xuICB6LWluZGV4OiAyOyB9XG5cbi5hcnRpY2xlLWNhcmQuLWV4Y2VycHQgPiAuaGVhZGVyIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNWVtOyB9XG5cbi5hcnRpY2xlLWNhcmQuLWJhbm5lciA+IC5oZWFkZXIgPiAudGl0bGUge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAxLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5hcnRpY2xlLWNhcmQuLWV4Y2VycHQgPiAuaGVhZGVyID4gLnRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5hcnRpY2xlLWNhcmQuLWV4Y2VycHQgPiAuY29udGVudCA+IC50ZXh0LCAuYXJ0aWNsZS1jYXJkLi1leGNlcnB0ID4gLmNvbnRlbnQgPiAubmluamEtZm9ybXMtcmVxdWlyZWQtaXRlbXMge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEJhbm5lciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uYmFubmVyLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjOUYwMDAwOyB9XG5cbi5iYW5uZXItd3JhcHBlci4tbm90aWNlIHtcbiAgYmFja2dyb3VuZDogI2VkN2QzNTsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTYwMHB4O1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgbWluLWhlaWdodDogNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC50aXRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDAuMTI1cmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxZW0gNC4zMzMzM2VtIDFlbSAzLjU4MzMzZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLnRpdGxlID4gLmZhIHtcbiAgY29sb3I6ICNGODM2MzY7XG4gIGZvbnQtc2l6ZTogMS43NWVtO1xuICBsZWZ0OiAwLjcxNDI5ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4uYmFubmVyLXdyYXBwZXIuLW5vdGljZSA+IC5iYW5uZXIgPiAudGl0bGUgPiAuZmEge1xuICBjb2xvcjogI2Y2ZDJiYjsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmV4Y2VycHQge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZmxleDogMSAxIGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTY2NjdlbTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxZW0gMS4yNWVtOyB9XG5cbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuZXhjZXJwdCA+IGEge1xuICBjb2xvcjogI0Y4MzYzNjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5iYW5uZXItd3JhcHBlci4tbm90aWNlID4gLmJhbm5lciA+IC5leGNlcnB0ID4gYSB7XG4gIGNvbG9yOiAjZjZkMmJiOyB9XG5cbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29udGVudCB7XG4gIHBhZGRpbmc6IDEuNmVtIDJlbTsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQudXNlci1jb250ZW50IG9sLCAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQuY29tbWVudC1jb250ZW50IG9sLFxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCBwLFxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LmNvbW1lbnQtY29udGVudCBwLFxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCB0YWJsZSxcbi5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29udGVudC5jb21tZW50LWNvbnRlbnQgdGFibGUsXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQudXNlci1jb250ZW50IHVsLFxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LmNvbW1lbnQtY29udGVudCB1bCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjZlbTsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQudXNlci1jb250ZW50ID4gKjpsYXN0LWNoaWxkLCAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQuY29tbWVudC1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQudXNlci1jb250ZW50IGEsIC5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29udGVudC5jb21tZW50LWNvbnRlbnQgYSB7XG4gIGNvbG9yOiAjRjgzNjM2O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCBhLCAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbnRlbnQuY29tbWVudC1jb250ZW50IGEge1xuICBjb2xvcjogI2Y2ZDJiYjsgfVxuXG4uYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmJ1dHRvbiwgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb21tZW50LXJlcGx5LWxpbmsge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGhlaWdodDogNGVtO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiA0LjMzMzMzZW07IH1cblxuLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5idXR0b24gPiAuZmEsIC5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuY29tbWVudC1yZXBseS1saW5rID4gLmZhIHtcbiAgY29sb3I6ICNGODM2MzY7XG4gIGZvbnQtc2l6ZTogMS43NWVtO1xuICBsZWZ0OiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5iYW5uZXItd3JhcHBlci4tbm90aWNlID4gLmJhbm5lciA+IC5idXR0b24gPiAuZmEsIC5iYW5uZXItd3JhcHBlci4tbm90aWNlID4gLmJhbm5lciA+IC5jb21tZW50LXJlcGx5LWxpbmsgPiAuZmEge1xuICBjb2xvcjogI2Y2ZDJiYjsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCdXR0b24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmJ1dHRvbiwgLmNvbW1lbnQtcmVwbHktbGluayB7XG4gIGJhY2tncm91bmQ6ICMxMzQzMEM7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDBlbSAwZW0gMC41ZW07XG4gIHBhZGRpbmc6IDAuNmVtIDAuOGVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMsIGNvbG9yIDAuMTVzOyB9XG5cbi5idXR0b246aG92ZXIsIC5jb21tZW50LXJlcGx5LWxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMjk1NzA0O1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENhbGxvdXQgQ2FyZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jYWxsb3V0LWNhcmQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNWVtOyB9XG5cbi5jYWxsb3V0LWNhcmQgPiAuY2FsbG91dC1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDsgfVxuXG4uY2FsbG91dC1jYXJkID4gLmNhbGxvdXQtaWNvbiA+IC5jYWxsb3V0LWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMGVtIGF1dG8gMS4yNWVtO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmNhbGxvdXQtY2FyZCA+IC5jYWxsb3V0LXRpdGxlIHtcbiAgY29sb3I6ICNjMGMyYWE7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4xMTExMWVtO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uY2FsbG91dC1jYXJkID4gLmNhbGxvdXQtdGl0bGUgPiAuY2FsbG91dC1saW5rIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7IH1cblxuLmNhbGxvdXQtY2FyZCA+IC5jYWxsb3V0LXRpdGxlID4gLmNhbGxvdXQtbGluazpob3ZlciB7XG4gIGNvbG9yOiAjRUVFRUVFOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbW1lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY29tbWVudHMge1xuICBib3JkZXItdG9wOiAwLjE4NzVlbSBzb2xpZCAjRUVFRUVFO1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luLXRvcDogMi4xODc1ZW07XG4gIHBhZGRpbmctdG9wOiAyLjE4NzVlbTsgfVxuXG4uY29tbWVudHMtdGl0bGUge1xuICBjb2xvcjogIzVEMDIwMjtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5jb21tZW50LWxpc3QsXG4uY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMGVtIDBlbSAzZW07XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4sXG4gIC5jb21tZW50LWxpc3QgLmNoaWxkcmVuIC5jaGlsZHJlbiB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbi5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgcGFkZGluZzogMGVtIDBlbSAwZW0gMmVtOyB9XG5cbi5jb21tZW50IHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmNvbW1lbnQtYm9keSB7XG4gIGJvcmRlci1ib3R0b206IDAuMTg3NXJlbSBzb2xpZCAjRUVFRUVFO1xuICBwYWRkaW5nOiAxLjI1ZW0gMGVtOyB9XG5cbi5jb21tZW50LW1ldGEge1xuICBjb2xvcjogIzExMTExMTtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjVlbTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNvbW1lbnQtYXV0aG9yIGEge1xuICBjb2xvcjogIzEzNDMwQztcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogODAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNvbW1lbnQtbWV0YWRhdGEgYSB7XG4gIGNvbG9yOiAjMTM0MzBDO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmNvbW1lbnQtZWRpdC1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gIHdpZHRoOiAxZW07IH1cbiAgLmNvbW1lbnQtZWRpdC1saW5rOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi74GAXCI7XG4gICAgZm9udC1mYW1pbHk6IFwiZm9udGF3ZXNvbWVcIiwgc2Fucy1zZXJpZjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsZWZ0OiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgICB0b3A6IDA7IH1cblxuLmNvbW1lbnQtcmVwbHktbGluayB7XG4gIG1hcmdpbjogMDsgfVxuXG4uY29tbWVudHMtbmF2IHtcbiAgY29sb3I6ICNFRUVFRUU7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDEuODY5MjhlbTtcbiAgbWFyZ2luOiAwZW0gMGVtIDEuMTExMTFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jb21tZW50cy1uYXYgLnBhZ2UtbnVtYmVycyB7XG4gIGJvcmRlcjogMC4xODc1cmVtIHNvbGlkICNFRUVFRUU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6ICNFRUVFRUU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyLjIyMjIyZW07XG4gIG1hcmdpbjogMGVtIDAuMTY2NjdlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cywgY29sb3IgMC4xNXM7XG4gIHdpZHRoOiAyLjIyMjIyZW07IH1cbiAgLmNvbW1lbnRzLW5hdiAucGFnZS1udW1iZXJzOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICMxMzQzMEM7XG4gICAgY29sb3I6ICMxMzQzMEM7IH1cbiAgLmNvbW1lbnRzLW5hdiAucGFnZS1udW1iZXJzLmN1cnJlbnQge1xuICAgIGJhY2tncm91bmQ6ICMxMTExMTE7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTExMTExO1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5jb21tZW50cy1uYXYgLnByZXYucGFnZS1udW1iZXJzOmVtcHR5LFxuLmNvbW1lbnRzLW5hdiAubmV4dC5wYWdlLW51bWJlcnM6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jb21tZW50LWZvcm0tdGl0bGUge1xuICBjb2xvcjogIzVEMDIwMjtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuMjY2NjdlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uY29tbWVudC1sb2dnZWQtaW4ge1xuICBjb2xvcjogIzExMTExMTtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW46IDBlbSAwZW0gMC40NDQ0NGVtOyB9XG5cbi5jb21tZW50LWxvZ2dlZC1pbiBhIHtcbiAgY29sb3I6ICMxMzQzMEM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNmb3JtOiBjb2xvciAwLjE1czsgfVxuICAuY29tbWVudC1sb2dnZWQtaW4gYTpob3ZlciB7XG4gICAgY29sb3I6ICMyOTU3MDQ7IH1cblxuLmNvbW1lbnQtaW5wdXQge1xuICBib3JkZXI6IDAuMTg3NXJlbSBzb2xpZCAjMTM0MzBDO1xuICBjb2xvcjogIzExMTExMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwZW0gMGVtIDEuMTExMTFlbTtcbiAgcGFkZGluZzogMC42NjY2N2VtIDAuODg4ODllbTtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBGb290ZXIgQ2FyZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZm9vdGVyLWNhcmQge1xuICBvcmRlcjogMjtcbiAgcGFkZGluZzogMC42MjVlbSAwZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZm9vdGVyLWNhcmQuLWZpcnN0bW9iaWxlIHtcbiAgb3JkZXI6IDE7IH1cblxuLmZvb3Rlci1jYXJkIC50aXRsZSB7XG4gIGNvbG9yOiAjNUQwMjAyO1xuICBmb250LXNpemU6IDEuNTYyNWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBtYXJnaW46IDA7IH1cblxuLmZvb3Rlci1jYXJkIC50ZXh0LCAuZm9vdGVyLWNhcmQgLm5pbmphLWZvcm1zLXJlcXVpcmVkLWl0ZW1zIHtcbiAgZm9udC1mYW1pbHk6IFwiWWFub25lIEthZmZlZXNhdHpcIiwgXCJBcmlhbFwiLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOTM3NWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBtYXJnaW46IDBlbSAwZW0gMS4zMzMzM2VtOyB9XG5cbi5mb290ZXItY2FyZCBhLFxuLmZvb3Rlci1jYXJkIC5saW5rIHtcbiAgY29sb3I6ICMxMTExMTE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7IH1cblxuLmZvb3Rlci1jYXJkIGE6aG92ZXIsXG4uZm9vdGVyLWNhcmQgLmxpbms6aG92ZXIge1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uZm9vdGVyLWNhcmQgLmxvZ28ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA1LjMxMjVlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEdhbGxlcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5nYWxsZXJ5IC5nYWxsZXJ5LWl0ZW0gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMWVtIGF1dG87IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogaWZyYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pZnJhbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5pZnJhbWUgPiBpZnJhbWUge1xuICBib3R0b206IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExvZ28gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmxvZ28gPiBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBNYXAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4jbWFwIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7IH1cblxuLmluZm9ib3gtY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogMC43NWVtIDBlbSAwLjc1ZW0gMS41ZW07IH1cblxuLmluZm9ib3gtaW1hZ2UgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5pbmZvYm94LXRpdGxlIHtcbiAgY29sb3I6ICM1RDAyMDI7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmluZm9ib3gtdGV4dCB7XG4gIGNvbG9yOiAjMTExMTExO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uaW5mb2JveC1saW5rIHtcbiAgY29sb3I6ICM1RDAyMDI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7IH1cblxuLmluZm9ib3gtbGluay4tYWRkcmVzcyB7XG4gIGNvbG9yOiAjMTExMTExOyB9XG5cbi5pbmZvYm94LWxpbms6aG92ZXIge1xuICBjb2xvcjogIzc1MDIwMjsgfVxuXG4uaW5mb2JveC1saW5rLi1hZGRyZXNzOmhvdmVyIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTWVudSBCdXRvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5tZW51LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICMxMzQzMEM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogMi4yNXJlbTsgfVxuXG4ubWVudS1idXR0b24gPiAuZmEge1xuICBiYWNrZ3JvdW5kOiAjMTM0MzBDO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODI1ZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTWVudSBMaXN0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIGdlbmVyaWMgdmFyaWFudCAqL1xuLm1lbnUtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4ubWVudS1saXN0IC5tZW51LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5tZW51LWxpc3QgLm1lbnUtbGluayB7XG4gIGNvbG9yOiAjNUQwMjAyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAxIGF1dG87XG4gIHBhZGRpbmc6IDAuNWVtIDAuNzVlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1czsgfVxuXG4ubWVudS1saXN0IC5tZW51LWxpbms6aG92ZXIge1xuICBjb2xvcjogIzc1MDIwMjsgfVxuXG4ubWVudS1saXN0IC5tZW51LXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICM1RDAyMDI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiBub25lO1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgaGVpZ2h0OiAyLjY2NjY3ZW07XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG4gIHdpZHRoOiAyLjY2NjY3ZW07IH1cblxuLm1lbnUtbGlzdCAubWVudS10b2dnbGU6aG92ZXIge1xuICBjb2xvcjogIzc1MDIwMjsgfVxuXG4ubWVudS1saXN0IC5tZW51LXRvZ2dsZSA+IC5mYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIuNjY2NjdlbTtcbiAgbGluZS1oZWlnaHQ6IDIuNjY2NjdlbTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyogc3VibWVudSB2YXJpYW50ICovXG4ubWVudS1saXN0Li1zdWJtZW51IHtcbiAgYmFja2dyb3VuZDogIzVEMDIwMjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxlZnQ6IC05OTllbTtcbiAgbWluLXdpZHRoOiA5LjM3NWVtO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OWVtO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDBzIDAuMTVzLCBvcGFjaXR5IDAuMTVzLCB0b3AgMHMgMC4xNXM7IH1cblxuLm1lbnUtaXRlbTpob3ZlciA+IC5tZW51LWxpc3QuLXN1Ym1lbnUge1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAxO1xuICB0b3A6IDEwMCU7XG4gIHRyYW5zaXRpb246IGxlZnQgMHMgMC4yNXMsIG9wYWNpdHkgMC4xNXMgMC4yNXMsIHRvcCAwcyAwLjI1czsgfVxuXG4ubWVudS1saXN0Li1zdWJtZW51IC5tZW51LWl0ZW0ge1xuICBmbG9hdDogbm9uZTsgfVxuXG4ubWVudS1saXN0Li1zdWJtZW51IC5tZW51LWxpbmsge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZzogMC4yODU3MWVtIDAuODU3MTRlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1czsgfVxuXG4ubWVudS1saXN0Li1zdWJtZW51IC5tZW51LWxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IH1cblxuLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1pdGVtOmZpcnN0LWNoaWxkID4gLm1lbnUtbGluayB7XG4gIHBhZGRpbmctdG9wOiAwLjU3MTQzZW07IH1cblxuLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1pdGVtOmxhc3QtY2hpbGQgPiAubWVudS1saW5rIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNTcxNDNlbTsgfVxuXG4ubWVudS1saXN0Li1zdWJtZW51IC5tZW51LXRvZ2dsZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzOyB9XG5cbi5tZW51LWxpc3QuLXN1Ym1lbnUgLm1lbnUtdG9nZ2xlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpOyB9XG5cbi8qIHN1Ym1lbnUgZmx5b3V0IHZhcmlhbnQgKi9cbi5tZW51LWxpc3QuLXN1Ym1lbnUuLWZseW91dCB7XG4gIGJhY2tncm91bmQ6ICM3NTAyMDI7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogMDsgfVxuXG4ubWVudS1pdGVtOmhvdmVyID4gLm1lbnUtbGlzdC4tc3VibWVudS4tZmx5b3V0IHtcbiAgbGVmdDogMTAwJTtcbiAgdG9wOiAwOyB9XG5cbi8qIHZlcnRpY2FsIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QuLXZlcnRpY2FsIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm1lbnUtbGlzdC4tdmVydGljYWwgLm1lbnUtbGlzdC4tc3VibWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG9wYWNpdHk6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHRvcDogYXV0bztcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjI1cztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm1lbnUtbGlzdC4tdmVydGljYWwgLm1lbnUtbGlzdC4tc3VibWVudS4tYWN0aXZlIHtcbiAgbWF4LWhlaWdodDogMjVlbTtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjVzOyB9XG5cbi5tZW51LWxpc3QuLXZlcnRpY2FsIC5tZW51LWl0ZW0sXG4ubWVudS1saXN0Li12ZXJ0aWNhbCAubWVudS1saXN0Li1zdWJtZW51ID4gLm1lbnUtaXRlbSxcbi5tZW51LWxpc3QuLXZlcnRpY2FsIC5tZW51LWxpc3QuLXN1Ym1lbnUuLWZseW91dCA+IC5tZW51LWl0ZW0ge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsb2F0OiBub25lOyB9XG5cbi5tZW51LWxpc3QuLXZlcnRpY2FsIC5tZW51LWxpbmsge1xuICB3aWR0aDogMDsgfVxuXG4vKiBuYXYgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC4tbmF2IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm1lbnUtbGlzdC4tbmF2IC5tZW51LWl0ZW0ge1xuICBmbGV4OiBub25lOyB9XG5cbi5tZW51LWxpc3QuLW5hdiAubWVudS1pdGVtLi1sb2dvIHtcbiAgZmxleDogMSAxIGF1dG87IH1cblxuLm1lbnUtbGlzdC4tbmF2IC5tZW51LWxpbmsge1xuICBjb2xvcjogIzEzNDMwQztcbiAgcGFkZGluZzogMC42MjVlbSAxLjI1ZW07IH1cblxuLm1lbnUtbGlzdC4tbmF2IC5tZW51LWxpbms6aG92ZXIge1xuICBjb2xvcjogIzI5NTcwNDsgfVxuXG4ubWVudS1saXN0Li1uYXYgLm1lbnUtaXRlbS4tbG9nbyA+IC5tZW51LWxpbmsge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDA7IH1cblxuLm1lbnUtbGlzdC4tbmF2IC5tZW51LWl0ZW0uLWxvZ28gPiAubWVudS1saW5rID4gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5tZW51LWxpc3QuLW5hdiAubWVudS1saXN0Li1zdWJtZW51IHtcbiAgYmFja2dyb3VuZDogIzEzNDMwQzsgfVxuXG4ubWVudS1saXN0Li1uYXYgLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1saW5rIHtcbiAgY29sb3I6ICNGRkZGRkY7IH1cblxuLm1lbnUtbGlzdC4tbmF2IC5tZW51LWxpc3QuLXN1Ym1lbnUgLm1lbnUtbGluazpob3ZlciB7XG4gIGNvbG9yOiAjRUVFRUVFOyB9XG5cbi5tZW51LWxpc3QuLW5hdiAubWVudS1saXN0Li1zdWJtZW51Li1mbHlvdXQge1xuICBiYWNrZ3JvdW5kOiAjMjk1NzA0OyB9XG5cbi8qIG5hdiB2ZXJ0aWNhbCB2YXJpYW50ICovXG4ubWVudS1saXN0Li1uYXYuLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNDE2NjdlbSAwZW07IH1cblxuLm1lbnUtbGlzdC4tbmF2Li12ZXJ0aWNhbCAubWVudS1saW5rIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDAuNDE2NjdlbSAwLjgzMzMzZW07IH1cblxuLm1lbnUtbGlzdC4tbmF2Li12ZXJ0aWNhbCAubWVudS1saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNFRUVFRUU7IH1cblxuLm1lbnUtbGlzdC4tbmF2Li12ZXJ0aWNhbCAubWVudS10b2dnbGUge1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4ubWVudS1saXN0Li1uYXYuLXZlcnRpY2FsIC5tZW51LXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjRUVFRUVFOyB9XG5cbi5tZW51LWxpc3QuLW5hdi4tdmVydGljYWwgLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1saW5rIHtcbiAgcGFkZGluZzogMC40MTY2N2VtIDAuODMzMzNlbTsgfVxuXG4vKiBzaXRlbWFwIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QuLXNpdGVtYXAgLm1lbnUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7IH1cblxuLm1lbnUtbGlzdC4tc2l0ZW1hcCAubWVudS1pdGVtOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgY29udGVudDogXCItXCI7XG4gIG1hcmdpbjogMGVtIDAuMTY2NjdlbTsgfVxuXG4ubWVudS1saXN0Li1zaXRlbWFwIC5tZW51LWxpbmsge1xuICBjb2xvcjogIzExMTExMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5tZW51LWxpc3QuLXNpdGVtYXAgLm1lbnUtbGluazpob3ZlciB7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi8qIG1ldGEgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC4tbWV0YSB7XG4gIGNvbG9yOiAjMTM0MzBDO1xuICBmb250LWZhbWlseTogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4ubWVudS1saXN0Li1tZXRhIC5tZW51LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIHBhZGRpbmc6IDBlbSAwLjY2NjY3ZW0gMGVtIDBlbTsgfVxuXG4ubWVudS1saXN0Li1tZXRhIC5tZW51LWxpbmssXG4ubWVudS1saXN0Li1tZXRhIGEge1xuICBjb2xvcjogIzEzNDMwQztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm1lbnUtbGlzdC4tbWV0YSAubWVudS1saW5rOmhvdmVyLFxuLm1lbnUtbGlzdC4tbWV0YSBhOmhvdmVyIHtcbiAgY29sb3I6ICMyOTU3MDQ7IH1cblxuLm1lbnUtbGlzdC4tbWV0YSAuZmEge1xuICBtYXJnaW46IDBlbSAwLjIyMjIyZW0gMGVtIDBlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBOaW5qYSBGb3JtcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmhwLXdyYXAge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5uZi1mb3JtLWZpZWxkcy1yZXF1aXJlZCB7XG4gIG1hcmdpbi1ib3R0b206IDJlbTsgfVxuXG4ubmluamEtZm9ybXMtcmVxLXN5bWJvbCB7XG4gIGNvbG9yOiAjOUYwMDAwOyB9XG5cbi5maWVsZC13cmFwLmxhYmVsLWxlZnQsIC5maWVsZC13cmFwLmxhYmVsLXJpZ2h0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZpZWxkLXdyYXAubGFiZWwtbGVmdCBsYWJlbCxcbi5maWVsZC13cmFwLmxhYmVsLXJpZ2h0IGxhYmVsIHtcbiAgZmxleDogbm9uZTsgfVxuXG4uZmllbGQtd3JhcC5sYWJlbC1hYm92ZSBsYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1ZW07IH1cblxuLmZpZWxkLXdyYXAubGFiZWwtYmVsb3cgbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNWVtO1xuICBtYXJnaW4tdG9wOiAwLjM3NWVtOyB9XG5cbi5maWVsZC13cmFwLmxhYmVsLWxlZnQgbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTsgfVxuXG4uZmllbGQtd3JhcC5sYWJlbC1yaWdodCBsYWJlbCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1ZW07IH1cblxuLmZpZWxkLXdyYXAubGFiZWwtYmVsb3cgLm5pbmphLWZvcm1zLWZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZmllbGQtd3JhcC5sYWJlbC1sZWZ0IC5uaW5qYS1mb3Jtcy1maWVsZCxcbi5maWVsZC13cmFwLmxhYmVsLXJpZ2h0IC5uaW5qYS1mb3Jtcy1maWVsZCB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5maWVsZC13cmFwLmxpc3Qtc2VsZWN0LXdyYXAgLm5pbmphLWZvcm1zLWZpZWxkIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNjI1ZW07XG4gIHBhZGRpbmc6IDAuNzE4NzVlbSAxZW07IH1cblxuLmZpZWxkLXdyYXAuaHRtbC13cmFwIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU2VhcmNoIGZvcm0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zZWFyY2gtZm9ybSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxMzQzMEM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi5zZWFyY2gtZm9ybSA6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNlYXJjaC1mb3JtID4gLmxhYmVsIHtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLnNlYXJjaC1mb3JtID4gLmlucHV0IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogIzExMTExMTtcbiAgZmxleDogMSAxIGF1dG87XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IDAuNWVtIDAuNzVlbTtcbiAgd2lkdGg6IDA7IH1cblxuLnNlYXJjaC1mb3JtID4gLnN1Ym1pdCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZsZXg6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNWVtIDAuNzVlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTdG9yeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnN0b3J5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1ncmVlbi5qcGdcIikgcmlnaHQgY2VudGVyIG5vLXJlcGVhdCAjMTM0MzBDO1xuICBwYWRkaW5nOiAyLjE4NzVlbSAxLjU2MjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zdG9yeTpudGgtY2hpbGQoMSkge1xuICB6LWluZGV4OiA0OyB9XG5cbi5zdG9yeTpudGgtY2hpbGQoMikge1xuICB6LWluZGV4OiAzOyB9XG5cbi5zdG9yeTpudGgtY2hpbGQoMykge1xuICB6LWluZGV4OiAyOyB9XG5cbi5zdG9yeTpudGgtY2hpbGQoNCkge1xuICB6LWluZGV4OiAxOyB9XG5cbi5zdG9yeS4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmVkLmpwZ1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdCAjNUQwMjAyOyB9XG5cbi5zdG9yeS4tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1ibHVlLmpwZ1wiKSBsZWZ0IGNlbnRlciBuby1yZXBlYXQgIzA5MEYyNDsgfVxuXG4uc3RvcnkuLXRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1ncmF5LmpwZ1wiKSByaWdodCBjZW50ZXIgbm8tcmVwZWF0ICM0RTRFNEU7IH1cblxuLnN0b3J5OmZpcnN0LWNoaWxkOjpiZWZvcmUsIC5zdG9yeTo6YWZ0ZXIge1xuICBib3JkZXItbGVmdDogMS4xMjVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAxLjEyNWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiAwLjc1ZW0gc29saWQgIzEzNDMwQztcbiAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgd2lkdGg6IDA7IH1cblxuLnN0b3J5OmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICBib3JkZXItdG9wLWNvbG9yOiAjRkZGRkZGO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogNTAlO1xuICB0b3A6IDA7IH1cblxuLnN0b3J5Omxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5zdG9yeS4tcHJpbWFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNUQwMjAyO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMS41NjI1ZW07IH1cblxuLnN0b3J5Li1zZWNvbmRhcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzA5MEYyNDtcbiAgbGVmdDogMS41NjI1ZW07IH1cblxuLnN0b3J5Li10ZXJ0aWFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNEU0RTRFO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogNTAlOyB9XG5cbi5zdG9yeSAudXNlci1jb250ZW50IGgxLCAuc3RvcnkgLmNvbW1lbnQtY29udGVudCBoMSxcbi5zdG9yeSAudXNlci1jb250ZW50IGgyLFxuLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgaDIsXG4uc3RvcnkgLnVzZXItY29udGVudCBoMyxcbi5zdG9yeSAuY29tbWVudC1jb250ZW50IGgzLFxuLnN0b3J5IC51c2VyLWNvbnRlbnQgaDQsXG4uc3RvcnkgLmNvbW1lbnQtY29udGVudCBoNCxcbi5zdG9yeSAudXNlci1jb250ZW50IGg1LFxuLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgaDUsXG4uc3RvcnkgLnVzZXItY29udGVudCBoNixcbi5zdG9yeSAuY29tbWVudC1jb250ZW50IGg2LFxuLnN0b3J5IC51c2VyLWNvbnRlbnQgbWVudSxcbi5zdG9yeSAuY29tbWVudC1jb250ZW50IG1lbnUsXG4uc3RvcnkgLnVzZXItY29udGVudCBvbCxcbi5zdG9yeSAuY29tbWVudC1jb250ZW50IG9sLFxuLnN0b3J5IC51c2VyLWNvbnRlbnQgcCxcbi5zdG9yeSAuY29tbWVudC1jb250ZW50IHAsXG4uc3RvcnkgLnVzZXItY29udGVudCB0YWJsZSxcbi5zdG9yeSAuY29tbWVudC1jb250ZW50IHRhYmxlLFxuLnN0b3J5IC51c2VyLWNvbnRlbnQgdWwsXG4uc3RvcnkgLmNvbW1lbnQtY29udGVudCB1bCB7XG4gIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5zdG9yeSAudXNlci1jb250ZW50IGgyLi1hbHQsIC5zdG9yeSAuY29tbWVudC1jb250ZW50IGgyLi1hbHQge1xuICBtYXJnaW46IDA7IH1cblxuLnN0b3J5IC51c2VyLWNvbnRlbnQgPiAqOmxhc3QtY2hpbGQsIC5zdG9yeSAuY29tbWVudC1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFN3aXBlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKipcbiAqIFN3aXBlciA0LjUuMFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMTkgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogRmVicnVhcnkgMjIsIDIwMTlcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1uby1mbGV4Ym94IC5zd2lwZXItc2xpZGUge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cblxuLnN3aXBlci1jb250YWluZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1tdWx0aXJvdyA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTsgfVxuXG4uc3dpcGVyLXNsaWRlLWludmlzaWJsZS1ibGFuayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0LCAtd2Via2l0LXRyYW5zZm9ybTsgfVxuXG4vKiAzRCBFZmZlY3RzICovXG4uc3dpcGVyLWNvbnRhaW5lci0zZCB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXdyYXBwZXIsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgcmlnaHQgdG9wLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQocmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTsgfVxuXG4vKiBJRTEwIFdpbmRvd3MgUGhvbmUgOCBGaXhlcyAqL1xuLnN3aXBlci1jb250YWluZXItd3A4LWhvcml6b250YWwsXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXdwOC12ZXJ0aWNhbCxcbi5zd2lwZXItY29udGFpbmVyLXdwOC12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi14O1xuICB0b3VjaC1hY3Rpb246IHBhbi14OyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDI3cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbWFyZ2luLXRvcDogLTIycHg7XG4gIHotaW5kZXg6IDEwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjdweCA0NHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zNTtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDA3YWZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyMzAwN2FmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gIHJpZ2h0OiAxMHB4O1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24td2hpdGUsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyM2ZmZmZmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7IH1cblxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWJsYWNrLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qIENvbW1vbiBTdHlsZXMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbixcbi5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qIEJ1bGxldHMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDA7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYtcHJldiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IDAuMjsgfVxuXG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZDogIzAwN2FmZjsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogNnB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiA4cHg7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAyMDBtcyB0b3AsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0b3AsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHRvcDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wLCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogMCA0cHg7IH1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIGxlZnQ6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IDIwMG1zIGxlZnQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAyMDBtcyBsZWZ0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0O1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07IH1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbC5zd2lwZXItY29udGFpbmVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgcmlnaHQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtOyB9XG5cbi8qIFByb2dyZXNzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogIzAwN2FmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7IH1cblxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7IH1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcixcbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIsXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24td2hpdGUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIFNjcm9sbGJhciAqL1xuLnN3aXBlci1zY3JvbGxiYXIge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDElO1xuICBib3R0b206IDNweDtcbiAgei1pbmRleDogNTA7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogOTglOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTsgfVxuXG4uc3dpcGVyLXNjcm9sbGJhci1kcmFnIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XG4gIGN1cnNvcjogbW92ZTsgfVxuXG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAtby1vYmplY3QtZml0OiBjb250YWluO1xuICBvYmplY3QtZml0OiBjb250YWluOyB9XG5cbi5zd2lwZXItc2xpZGUtem9vbWVkIHtcbiAgY3Vyc29yOiBtb3ZlOyB9XG5cbi8qIFByZWxvYWRlciAqL1xuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIHN0ZXBzKDEyLCBlbmQpIGluZmluaXRlOyB9XG5cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyMzZjNmM2YyclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuLyogYTExeSAqL1xuLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUuc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtcHJldixcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1uZXh0ICsgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgei1pbmRleDogMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjY7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDUwcHgpO1xuICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gIHotaW5kZXg6IDA7IH1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnN3aXBlci1jb250YWluZXItY292ZXJmbG93IC5zd2lwZXItd3JhcHBlciB7XG4gIC8qIFdpbmRvd3MgOCBJRSAxMCBmaXggKi9cbiAgLW1zLXBlcnNwZWN0aXZlOiAxMjAwcHg7IH1cblxuLnBhcnRuZXJzLXRpdGxlIHtcbiAgY29sb3I6ICM1RDAyMDI7XG4gIGZvbnQtZmFtaWx5OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgbWFyZ2luOiAwLjkxNjY3ZW0gMGVtIDAuMzMzMzNlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5wYXJ0bmVycy13cmFwcGVyIC5wYXJ0bmVycy10aXRsZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBtYXJnaW46IDBlbSAwZW0gMC41ZW07IH1cblxuLnBhcnRuZXJzLXNsaWRlciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uX21vYmlsZS5wbmdcIikgY2VudGVyIGxlZnQgcmVwZWF0LXg7XG4gIG1hcmdpbjogMGVtIDEuNTYyNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnBhcnRuZXJzLXNsaWRlcjo6YmVmb3JlLCAucGFydG5lcnMtc2xpZGVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvdHRvbTogMDtcbiAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMS44NzVlbTtcbiAgei1pbmRleDogMjsgfVxuXG4ucGFydG5lcnMtc2xpZGVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXJpYmJvbi1sZWZ0X21vYmlsZS5wbmdcIik7XG4gIG1hcmdpbi1yaWdodDogLTAuMzEyNWVtO1xuICByaWdodDogMTAwJTsgfVxuXG4ucGFydG5lcnMtc2xpZGVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uLXJpZ2h0X21vYmlsZS5wbmdcIik7XG4gIGxlZnQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zMTI1ZW07IH1cblxuLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzIHtcbiAgei1pbmRleDogMTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnM6OmJlZm9yZSwgLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzOjphZnRlciB7XG4gIGJvdHRvbTogMC4zNzVlbTtcbiAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjM3NWVtO1xuICB3aWR0aDogMy43NWVtO1xuICB6LWluZGV4OiA5OTk7IH1cblxuLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KSA1MCUsICNGRkZGRkYgMTAwJSk7XG4gIGxlZnQ6IDA7IH1cblxuLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzOjphZnRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KSA1MCUsICNGRkZGRkYgMTAwJSk7XG4gIHJpZ2h0OiAwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLi1zbGlkZXNob3cge1xuICBiYWNrZ3JvdW5kOiAjRUVFRUVFOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAuc3dpcGVyLXNsaWRlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiA2ZW07XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAuc3dpcGVyLXNsaWRlIC5wYXJ0bmVyLWNhcmQge1xuICBwYWRkaW5nOiAwLjc4MTI1ZW0gMS41NjI1ZW07IH1cblxuLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzIC5zd2lwZXItc2xpZGUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtaGVpZ2h0OiAzLjc1ZW07IH1cblxuLnN3aXBlci1jb250YWluZXIuLXNsaWRlc2hvdyAuc3dpcGVyLXNsaWRlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIyLjgxMjVyZW07XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cblxuLnN3aXBlci1idXR0b24tcHJldi4tcGFydG5lcnMsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0Li1wYXJ0bmVycyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG87XG4gIGJvcmRlcjogMDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGhlaWdodDogNmVtO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAzZW07IH1cblxuLnN3aXBlci1idXR0b24tcHJldi4tcGFydG5lcnMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9pY29uLWFycm93LWxlZnRfbW9iaWxlLnBuZ1wiKTtcbiAgbGVmdDogLTNlbTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0Li1wYXJ0bmVycyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2ljb24tYXJyb3ctcmlnaHRfbW9iaWxlLnBuZ1wiKTtcbiAgcmlnaHQ6IC0zZW07IH1cblxuLm5vLWNzc3RyYW5zZm9ybXMgLnN3aXBlci1zbGlkZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogUGFnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbjpyb290IHtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuaHRtbCxcbmJvZHkge1xuICB3aWR0aDogMTAwJTsgfVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjsgfVxuXG5odG1sLi1uYXZhY3RpdmUsXG5odG1sLi1uYXZhY3RpdmUgYm9keSB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnBhZ2Utd3JhcHBlciB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgbGVmdDogMDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgcGVyc3BlY3RpdmU6IDEwMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMzVzLCBsZWZ0IDAuMzVzO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMjsgfVxuXG5odG1sLi1uYXZhY3RpdmUgLnBhZ2Utd3JhcHBlciB7XG4gIGJveC1zaGFkb3c6IDBlbSAwZW0gMC42MjVlbSBibGFjaygwLjUpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IC0yNDBweDtcbiAgbGVmdDogLTE1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlYWRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5oZWFkZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNjtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBmb250LXNpemU6IDFlbTtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMC41ZW0gMmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7IH1cblxuLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jayB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMHJlbTsgfVxuXG4uaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrID4gLmxvZ28ge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwcmVtOyB9XG5cbi5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2sgPiAubWVudS1idXR0b24ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMC4yNXJlbSAwcmVtIDByZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTW9iaWxlIE5hdmlnYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5tb2JpbGUtbmF2LXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjMTM0MzBDO1xuICBib3R0b206IDk5OWVtO1xuICBmb250LXNpemU6IDFlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDk5OWVtO1xuICB0b3A6IC05OTllbTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDBzIDAuMzVzLCByaWdodCAwcyAwLjM1cywgdG9wIDBzIDAuMzVzO1xuICB3aWR0aDogMTVlbTtcbiAgei1pbmRleDogMTsgfVxuXG4uLW5hdmFjdGl2ZSAubW9iaWxlLW5hdi13cmFwcGVyIHtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi4tbmF2YWN0aXZlIC5hZG1pbi1iYXIgLm1vYmlsZS1uYXYtd3JhcHBlciB7XG4gIHRvcDogNDZweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3ODNweCkge1xuICAuLW5hdmFjdGl2ZSAuYWRtaW4tYmFyIC5tb2JpbGUtbmF2LXdyYXBwZXIge1xuICAgIHRvcDogMzJweDsgfSB9XG5cbi5tb2JpbGUtbmF2LXdyYXBwZXIgLm1lbnUtbGlzdC4tc3VibWVudSB7XG4gIGJhY2tncm91bmQ6ICMxOTU5MTA7IH1cblxuLm1vYmlsZS1uYXYtd3JhcHBlciAubWVudS1saXN0Li1zdWJtZW51Li1mbHlvdXQge1xuICBiYWNrZ3JvdW5kOiAjMWY2ZTE0OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogU2xpZGVzaG93ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNsaWRlc2hvdy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0O1xuICBmb250LXNpemU6IDFlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbnRlbnQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50LmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdCAjZjRmNGY0O1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogNi44NzVlbSAwLjkzNzVlbSAxLjg3NWVtOyB9XG5cbi5ob21lIC5jb250ZW50LXdyYXBwZXIge1xuICBwYWRkaW5nLXRvcDogMS44NzVlbTsgfVxuXG4uY29udGVudC13cmFwcGVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnQtYmVmb3JlX21vYmlsZS5qcGdcIikgY2VudGVyIHRvcCBuby1yZXBlYXQ7XG4gIGNvbnRlbnQ6IFwiXFwwMDIwXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDExLjI1ZW07XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7IH1cblxuLmhvbWUgLmNvbnRlbnQtd3JhcHBlcjo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY29udGVudC13cmFwcGVyID4gLmNvbnRlbnQtYmxvY2sge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDBlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyOyB9XG5cbi5ob21lIC5jb250ZW50LXdyYXBwZXIgPiAuY29udGVudC1ibG9jayB7XG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLmNvbnRlbnQtd3JhcHBlciA+IC5wYXJ0bmVycy1ibG9jayB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMGVtO1xuICBwYWRkaW5nOiAwZW0gMC45Mzc1ZW07IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDYWxsb3V0cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY2FsbG91dHMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZDogIzEzNDMwQztcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmc6IDEuODc1ZW07IH1cblxuLmNhbGxvdXRzLXdyYXBwZXIgPiAuY2FsbG91dHMtYmxvY2sge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDBlbTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIFBhcnRuZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wYXJ0bmVycy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXBhcnRuZXJzLXdyYXBwZXJfbW9iaWxlLmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmc6IDIuMTg3NWVtIDEuODc1ZW0gNC42ODc1ZW07IH1cblxuLnBhcnRuZXJzLXdyYXBwZXIgPiAucGFydG5lcnMtYmxvY2sge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDBlbTtcbiAgcGFkZGluZzogMGVtIDAuOTM3NWVtOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogRm9vdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZvb3Rlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDFlbTtcbiAgcGFkZGluZzogMGVtIDEuMjVlbTsgfVxuXG4uZm9vdGVyLXdyYXBwZXIgPiAuZm9vdGVyLWJsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwZW07XG4gIHBhZGRpbmc6IDEuMjVlbSAwZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzByZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovIH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3dpcGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLnBhcnRuZXJzLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDNlbTtcbiAgICBtYXJnaW46IDFlbSAwZW0gMC40NTgzM2VtOyB9XG4gIC5wYXJ0bmVycy13cmFwcGVyIC5wYXJ0bmVycy10aXRsZSB7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDEuMjVlbTsgfVxuICAucGFydG5lcnMtc2xpZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXJpYmJvbi5wbmdcIik7XG4gICAgbWFyZ2luOiAwZW0gMy40Mzc1ZW07XG4gICAgcGFkZGluZzogMGVtIDAuNjI1ZW07IH1cbiAgLnBhcnRuZXJzLXNsaWRlcjo6YmVmb3JlLCAucGFydG5lcnMtc2xpZGVyOjphZnRlciB7XG4gICAgd2lkdGg6IDMuNDM3NWVtOyB9XG4gIC5wYXJ0bmVycy1zbGlkZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yaWJib24tbGVmdC5wbmdcIik7IH1cbiAgLnBhcnRuZXJzLXNsaWRlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uLXJpZ2h0LnBuZ1wiKTsgfVxuICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnM6OmJlZm9yZSwgLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzOjphZnRlciB7XG4gICAgYm90dG9tOiAwLjYyNWVtO1xuICAgIHRvcDogMC42MjVlbTsgfVxuICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgLnN3aXBlci1zbGlkZSB7XG4gICAgaGVpZ2h0OiAxMS43NWVtOyB9XG4gIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAuc3dpcGVyLXNsaWRlIC5wYXJ0bmVyLWNhcmQge1xuICAgIHBhZGRpbmc6IDEuNTYyNWVtIDMuMTI1ZW07IH1cbiAgLnN3aXBlci1jb250YWluZXIuLXBhcnRuZXJzIC5zd2lwZXItc2xpZGUgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA4Ljc1ZW07IH1cbiAgLnN3aXBlci1jb250YWluZXIuLXNsaWRlc2hvdyAuc3dpcGVyLXNsaWRlIGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5zd2lwZXItYnV0dG9uLXByZXYuLXBhcnRuZXJzLFxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0Li1wYXJ0bmVycyB7XG4gICAgaGVpZ2h0OiAxMS43NWVtO1xuICAgIHdpZHRoOiA0LjEyNWVtOyB9XG4gIC5wYXJ0bmVycy13cmFwcGVyIC5zd2lwZXItYnV0dG9uLXByZXYuLXBhcnRuZXJzLCAucGFydG5lcnMtd3JhcHBlclxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0Li1wYXJ0bmVycyB7XG4gICAgb3BhY2l0eTogMC4zNTsgfVxuICAuc3dpcGVyLWJ1dHRvbi1wcmV2Li1wYXJ0bmVycyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvaWNvbi1hcnJvdy1sZWZ0LnBuZ1wiKTtcbiAgICBsZWZ0OiAtNS4wNjI1ZW07IH1cbiAgLnN3aXBlci1idXR0b24tbmV4dC4tcGFydG5lcnMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2ljb24tYXJyb3ctcmlnaHQucG5nXCIpO1xuICAgIHJpZ2h0OiAtNS4wNjI1ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogUGFydG5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAucGFydG5lcnMtd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1wYXJ0bmVycy13cmFwcGVyLmpwZ1wiKTtcbiAgICBwYWRkaW5nOiA1ZW0gMS44NzVlbSAxMGVtOyB9XG4gIC5wYXJ0bmVycy13cmFwcGVyID4gLnBhcnRuZXJzLWJsb2NrIHtcbiAgICBwYWRkaW5nOiAwZW0gMS4yNWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiB2aXNpYmlsaXR5IGNsYXNzZXMgKi9cbiAgLl9zaG93bW9iaWxlLFxuICAuX2hpZGV0YWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuX3Nob3d0YWJsZXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogR3JpZGx5IChhZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL0lvbmljYUJpemF1L2dyaWRseSkgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAucm93LCAubmluamEtcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5yb3cuLWNlbnRlciwgLi1jZW50ZXIubmluamEtcm93IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5jb2wsIFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBmbGV4OiAxOyB9XG4gIC5jb2wuLXRlbnRoLCAuLXRlbnRoW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICAgIGZsZXg6IDAgMCAxMCU7IH1cbiAgLmNvbC4tZmlmdGgsIC4tZmlmdGhbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgZmxleDogMCAwIDIwJTsgfVxuICAuY29sLi1xdWFydGVyLCAuLXF1YXJ0ZXJbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgZmxleDogMCAwIDI1JTsgfVxuICAuY29sLi10aGlyZCwgLi10aGlyZFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzNCU7IH1cbiAgLmNvbC4taGFsZiwgLi1oYWxmW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICAgIGZsZXg6IDAgMCA1MCU7IH1cbiAgLmNvbC4tZXF1YWwsIC4tZXF1YWxbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgZmxleDogMSAxIDAlOyB9XG4gIC5jb2wuLXBhZGRlZCwgLi1wYWRkZWRbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgcGFkZGluZzogMGVtIDAuNjI1ZW07IH1cbiAgLmNvbC4tcGFkZGVkOmZpcnN0LWNoaWxkLCAuLXBhZGRlZDpmaXJzdC1jaGlsZFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmNvbC4tcGFkZGVkOmxhc3QtY2hpbGQsIC4tcGFkZGVkOmxhc3QtY2hpbGRbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2ljIEdsb2JhbCBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLnRleHQsIC5uaW5qYS1mb3Jtcy1yZXF1aXJlZC1pdGVtcyB7XG4gICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAudXNlci1jb250ZW50LCAuY29tbWVudC1jb250ZW50IHtcbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBIZWFkZXJzICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogR2VuZXJhbCBUZXh0ICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIFRhYmxlcyAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBCdXR0b25zICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogQWxpZ25tZW50ICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIENvbHVtbnMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi8gfVxuICAgIC51c2VyLWNvbnRlbnQgaDEsIC5jb21tZW50LWNvbnRlbnQgaDEge1xuICAgICAgZm9udC1zaXplOiAzLjc1ZW07XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICBcbiAgICAudXNlci1jb250ZW50IGgyLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaDIge1xuICAgICAgZm9udC1zaXplOiAzZW07IH1cbiAgICAudXNlci1jb250ZW50IGgyLi1hbHQsIC5jb21tZW50LWNvbnRlbnQgaDIuLWFsdCB7XG4gICAgICBmb250LXNpemU6IDQuMjVlbTsgfVxuICAgIFxuICAgIC51c2VyLWNvbnRlbnQgaDMsXG4gICAgLmNvbW1lbnQtY29udGVudCBoMyB7XG4gICAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICAgIG1hcmdpbjogMGVtIDBlbSAxLjY2NjY3ZW07IH1cbiAgICBcbiAgICAudXNlci1jb250ZW50IGg0LFxuICAgIC5jb21tZW50LWNvbnRlbnQgaDQge1xuICAgICAgZm9udC1zaXplOiAxLjc1ZW07IH1cbiAgICBcbiAgICAudXNlci1jb250ZW50IGg1LFxuICAgIC5jb21tZW50LWNvbnRlbnQgaDUge1xuICAgICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAgIFxuICAgIC51c2VyLWNvbnRlbnQgaDYsXG4gICAgLmNvbW1lbnQtY29udGVudCBoNiB7XG4gICAgICBmb250LXNpemU6IDEuMjVlbTsgfVxuICAgIC51c2VyLWNvbnRlbnQgbGFiZWwsIC5jb21tZW50LWNvbnRlbnQgbGFiZWwsXG4gICAgLnVzZXItY29udGVudCBtZW51LFxuICAgIC5jb21tZW50LWNvbnRlbnQgbWVudSxcbiAgICAudXNlci1jb250ZW50IG9sLFxuICAgIC5jb21tZW50LWNvbnRlbnQgb2wsXG4gICAgLnVzZXItY29udGVudCBwLFxuICAgIC5jb21tZW50LWNvbnRlbnQgcCxcbiAgICAudXNlci1jb250ZW50IHRhYmxlLFxuICAgIC5jb21tZW50LWNvbnRlbnQgdGFibGUsXG4gICAgLnVzZXItY29udGVudCB1bCxcbiAgICAuY29tbWVudC1jb250ZW50IHVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07IH1cbiAgICBcbiAgICAudXNlci1jb250ZW50IHRhYmxlLFxuICAgIC5jb21tZW50LWNvbnRlbnQgdGFibGUge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAudXNlci1jb250ZW50IGJ1dHRvbiwgLmNvbW1lbnQtY29udGVudCBidXR0b24sXG4gICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbiAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbiAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgICAudXNlci1jb250ZW50IGJ1dHRvbjpob3ZlciwgLmNvbW1lbnQtY29udGVudCBidXR0b246aG92ZXIsXG4gICAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsXG4gICAgICAuY29tbWVudC1jb250ZW50IGlucHV0W3R5cGU9XCJidXR0b25cIl06aG92ZXIsXG4gICAgICAudXNlci1jb250ZW50IGlucHV0W3R5cGU9XCJyZXNldFwiXTpob3ZlcixcbiAgICAgIC5jb21tZW50LWNvbnRlbnQgaW5wdXRbdHlwZT1cInJlc2V0XCJdOmhvdmVyLFxuICAgICAgLnVzZXItY29udGVudCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLFxuICAgICAgLmNvbW1lbnQtY29udGVudCBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzI5NTcwNDtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAudXNlci1jb250ZW50IC5hbGlnbmNlbnRlciwgLmNvbW1lbnQtY29udGVudCAuYWxpZ25jZW50ZXIge1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMS44NzVlbTsgfVxuICAgIFxuICAgIC51c2VyLWNvbnRlbnQgLmFsaWdubGVmdCxcbiAgICAuY29tbWVudC1jb250ZW50IC5hbGlnbmxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW46IDBlbSAxLjg3NWVtIDEuODc1ZW0gMGVtOyB9XG4gICAgXG4gICAgLnVzZXItY29udGVudCAuYWxpZ25yaWdodCxcbiAgICAuY29tbWVudC1jb250ZW50IC5hbGlnbnJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbjogMGVtIDBlbSAxLjg3NWVtIDEuODc1ZW07IH1cbiAgICAudXNlci1jb250ZW50IC5jb2wsIC5jb21tZW50LWNvbnRlbnQgLmNvbCwgLnVzZXItY29udGVudCBbY2xhc3MqPVwibmluamEtY29sLVwiXSwgLmNvbW1lbnQtY29udGVudCBbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgICBwYWRkaW5nOiAwZW0gMy43NWVtOyB9XG4gICAgLnVzZXItY29udGVudCAuY29sOmZpcnN0LWNoaWxkLCAuY29tbWVudC1jb250ZW50IC5jb2w6Zmlyc3QtY2hpbGQsIC51c2VyLWNvbnRlbnQgOmZpcnN0LWNoaWxkW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0sIC5jb21tZW50LWNvbnRlbnQgOmZpcnN0LWNoaWxkW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NWVtOyB9XG4gICAgLnVzZXItY29udGVudCAuY29sOmxhc3QtY2hpbGQsIC5jb21tZW50LWNvbnRlbnQgLmNvbDpsYXN0LWNoaWxkLCAudXNlci1jb250ZW50IDpsYXN0LWNoaWxkW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0sIC5jb21tZW50LWNvbnRlbnQgOmxhc3QtY2hpbGRbY2xhc3MqPVwibmluamEtY29sLVwiXSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NWVtOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEFydGljbGUgQ2FyZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmFydGljbGUtY2FyZCB7XG4gICAgcGFkZGluZzogMS44NzVlbTsgfVxuICAuYXJ0aWNsZS1jYXJkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuODc1ZW07IH1cbiAgLmFydGljbGUtY2FyZC4tYmFubmVyIHtcbiAgICBwYWRkaW5nOiAxMGVtIDEuODc1ZW0gMS44NzVlbTsgfVxuICAuYXJ0aWNsZS1jYXJkLi1wYXJ0bmVyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5hcnRpY2xlLWNhcmQgPiAuaW1hZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAzLjc1ZW07IH1cbiAgLmFydGljbGUtY2FyZC4tZXhjZXJwdCA+IC5pbWFnZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMGVtIDEuODc1ZW0gMGVtIDBlbTtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5hcnRpY2xlLWNhcmQuLXBhcnRuZXIgPiAuaW1hZ2UuLWxvZ28ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDBlbSAxLjg3NWVtIDBlbSAwZW07XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuYXJ0aWNsZS1jYXJkLi1iYW5uZXIgPiAuaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWFydGljbGUtY2FyZC1oZWFkZXItYmFubmVyLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gYXV0bztcbiAgICBsZWZ0OiAxLjg3NWVtO1xuICAgIHBhZGRpbmc6IDAuNzVlbSAxLjU2MjVlbSAzLjI1ZW07XG4gICAgd2lkdGg6IDMwLjEyNWVtOyB9XG4gIC5hcnRpY2xlLWNhcmQuLWV4Y2VycHQgPiAuaW1hZ2UgfiAuaGVhZGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5hcnRpY2xlLWNhcmQuLWJhbm5lciA+IC5oZWFkZXIgPiAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy4xMjVlbTsgfVxuICAuYXJ0aWNsZS1jYXJkLi1leGNlcnB0ID4gLmhlYWRlciA+IC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjc1ZW07IH1cbiAgLmFydGljbGUtY2FyZC4tZXhjZXJwdCA+IC5pbWFnZSB+IC5jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5hcnRpY2xlLWNhcmQuLXBhcnRuZXIgPiAuaW1hZ2UuLWxvZ28gKyAuY29udGVudCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMS44NzVlbSAwZW0gMGVtO1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmFydGljbGUtY2FyZCA+IC5jb250ZW50Li1mdWxsIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFubmVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuYmFubmVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDBlbSAxLjI1ZW07IH1cbiAgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgbWluLWhlaWdodDogNS4zNzVlbTsgfVxuICAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLnRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1yaWdodDogMC4xMjVyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgcGFkZGluZzogMWVtIDIuMzMzMzNlbTsgfVxuICAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLnRpdGxlID4gLmZhIHtcbiAgICBsZWZ0OiAwOyB9XG4gIC5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuZXhjZXJwdCxcbiAgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gICAgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5leGNlcnB0Om5vdCg6bGFzdC1jaGlsZCksXG4gICAgLmJhbm5lci13cmFwcGVyID4gLmJhbm5lciA+IC5jb250ZW50Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMTIuNWVtOyB9XG4gIC5iYW5uZXItd3JhcHBlciA+IC5iYW5uZXIgPiAuYnV0dG9uLCAuYmFubmVyLXdyYXBwZXIgPiAuYmFubmVyID4gLmNvbW1lbnQtcmVwbHktbGluayB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDMuNTgzMzNlbTtcbiAgICB3aWR0aDogMy41ODMzM2VtOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ2FsbG91dCBDYXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuY2FsbG91dC1jYXJkID4gLmNhbGxvdXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb21tZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuY29tbWVudHMtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS44NzVlbTsgfVxuICAuY29tbWVudC1saXN0LFxuICAuY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDEuNWVtOyB9XG4gIC5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgICBwYWRkaW5nOiAwZW0gMGVtIDBlbSAyZW07IH1cbiAgLmNvbW1lbnQtYm9keSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuY29tbWVudC1tZXRhIHtcbiAgICBmb250LXNpemU6IDEuMjVlbTsgfVxuICAuY29tbWVudC1hdXRob3Ige1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5jb21tZW50LW1ldGFkYXRhIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNvbW1lbnQtY29udGVudCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDFweDsgfVxuICAgIC5jb21tZW50LWNvbnRlbnQgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5jb21tZW50LXJlcGx5LWxpbmsge1xuICAgIGZsZXg6IG5vbmU7XG4gICAgbWFyZ2luOiAwZW0gMGVtIDBlbSAyLjc3Nzc4ZW07IH1cbiAgLmNvbW1lbnRzLW5hdiB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg4ODg5ZW07XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmNvbW1lbnRzLW5hdiAucGFnZS1udW1iZXJzIHtcbiAgICBtYXJnaW46IDBlbSAwZW0gMGVtIDAuMzMzMzNlbTsgfVxuICAuY29tbWVudC1mb3JtLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuODc1ZW07IH1cbiAgLmNvbW1lbnQtbG9nZ2VkLWluIHtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07IH1cbiAgLmNvbW1lbnQtaW5wdXQge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEZvb3RlciBDYXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmZvb3Rlci1jYXJkIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5mb290ZXItY2FyZC4tYWxpZ25yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmZvb3Rlci1jYXJkIC5sb2dvIHtcbiAgICBtYXgtd2lkdGg6IDEwLjYyNWVtOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogR2FsbGVyeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuZ2FsbGVyeSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgbWFyZ2luOiAwcmVtIC0xLjg3NXJlbTsgfVxuICAuZ2FsbGVyeSAuZ2FsbGVyeS1pdGVtIHtcbiAgICBwYWRkaW5nOiAwcmVtIDEuODc1cmVtOyB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlOyB9XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCAyNSU7IH1cbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG4gICAgZmxleDogMCAwIDIwJTsgfVxuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiAuZ2FsbGVyeS1pdGVtIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIE5pbmphIEZvcm1zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xuICAgIHBhZGRpbmc6IDBlbSAwLjYyNWVtICFpbXBvcnRhbnQ7IH1cbiAgICBbY2xhc3MqPVwibmluamEtY29sLVwiXTpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIFtjbGFzcyo9XCJuaW5qYS1jb2wtXCJdOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogU2VhcmNoIGZvcm0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuc2VhcmNoLWZvcm0ge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3RvcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLnN0b3J5IHtcbiAgICBwYWRkaW5nOiAzLjEyNWVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQzLjc1JTsgfVxuICAuc3RvcnkuLXByaW1hcnkge1xuICAgIHBhZGRpbmctbGVmdDogMTIuNSU7XG4gICAgcGFkZGluZy1yaWdodDogMTIuNSU7IH1cbiAgLnN0b3J5Li1zZWNvbmRhcnkge1xuICAgIHBhZGRpbmctbGVmdDogMzEuMjUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1ZW07IH1cbiAgLnN0b3J5Li10ZXJ0aWFyeSB7XG4gICAgcGFkZGluZy1yaWdodDogMzEuMjUlOyB9XG4gIC5zdG9yeTpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMS4yNSU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnN0b3J5Li1wcmltYXJ5OjphZnRlciB7XG4gICAgbGVmdDogNTAlO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zdG9yeS4tc2Vjb25kYXJ5OjphZnRlciB7XG4gICAgbGVmdDogNi4yNSU7IH1cbiAgLnN0b3J5Li10ZXJ0aWFyeTo6YWZ0ZXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTEuMTI1ZW07XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnN0b3J5IC51c2VyLWNvbnRlbnQgaDIuLWFsdCwgLnN0b3J5IC5jb21tZW50LWNvbnRlbnQgaDIuLWFsdCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTGF5b3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIFBhZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgaHRtbC4tbmF2YWN0aXZlLFxuICBodG1sLi1uYXZhY3RpdmUgYm9keSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIGh0bWwuLW5hdmFjdGl2ZSAucGFnZS13cmFwcGVyIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWFkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5oZWFkZXItd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuMjVlbTtcbiAgICBwYWRkaW5nLXRvcDogMS4yNWVtOyB9XG4gIC5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2sge1xuICAgIHBhZGRpbmc6IDAgNS42MjUlOyB9XG4gIC5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2sgLm1lbnUtbGlzdC4tbmF2IHtcbiAgICBmb250LXNpemU6IDEuMjVlbTsgfVxuICAuaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrIC5tZW51LWxpc3QuLW5hdiAubWVudS1pdGVtLi1sb2dvIC5tZW51LWxpbmsgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDYuODc1ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDMuNzVlbTtcbiAgICBwYWRkaW5nLXRvcDogOS42ODc1ZW07IH1cbiAgLmhvbWUgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgcGFkZGluZy10b3A6IDMuNzVlbTsgfVxuICAuY29udGVudC13cmFwcGVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudC1iZWZvcmUuanBnXCIpO1xuICAgIGhlaWdodDogMjEuODc1ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRm9vdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmZvb3Rlci13cmFwcGVyID4gLmZvb3Rlci1ibG9jayB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAuZm9vdGVyLXdyYXBwZXIgPiAuZm9vdGVyLWJsb2NrID4gLmZvb3Rlci1jYXJkIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwZW0gMS4yNWVtOyB9XG4gIC5mb290ZXItd3JhcHBlciA+IC5mb290ZXItYmxvY2sgPiAuZm9vdGVyLWNhcmQuLWZpcnN0bW9iaWxlIHtcbiAgICBvcmRlcjogMDsgfVxuICAuZm9vdGVyLXdyYXBwZXIgPiAuZm9vdGVyLWJsb2NrID4gLmZvb3Rlci1jYXJkLi1ub2ZsZXgge1xuICAgIGZsZXg6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1My4zMTI1cmVtKSB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTGF5b3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqLyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwcmVtKSB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTGF5b3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlYWRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmhlYWRlci13cmFwcGVyID4gLmhlYWRlci1ibG9jayAubWVudS1saXN0Li1uYXYge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAxMC4zNzVlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogdmlzaWJpbGl0eSBjbGFzc2VzICovXG4gIC5fc2hvd3RhYmxldCxcbiAgLl9oaWRlZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5fc2hvd2Rlc2t0b3Age1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWFkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5oZWFkZXItd3JhcHBlciA+IC5oZWFkZXItYmxvY2sgLm1lbnUtbGlzdC4tbmF2IC5tZW51LWl0ZW0uLWxvZ28gLm1lbnUtbGluayBpbWcge1xuICAgIG1heC13aWR0aDogOS4xNjY2N2VtOyB9XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTEuNzVlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwcmVtKSB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBHcmlkbHkgKGFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vSW9uaWNhQml6YXUvZ3JpZGx5KSAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5yb3ctZGVza3RvcCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAucm93LWRlc2t0b3AuLWNlbnRlciB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVhZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrIHtcbiAgICBwYWRkaW5nOiAwIDExLjI1JTsgfVxuICAuaGVhZGVyLXdyYXBwZXIgPiAuaGVhZGVyLWJsb2NrIC5tZW51LWxpc3QuLW5hdiAubWVudS1pdGVtLi1sb2dvIC5tZW51LWxpbmsgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEzLjc1ZW07IH1cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAxNC41ZW07IH0gfVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBpbXBvcnRzXG5cbkBpbXBvcnQgXCJfdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiX2Z1bmN0aW9uc1wiO1xuQGltcG9ydCBcIl9taXhpbnNcIjtcblxuLy8gZ2VuZXJpYyBoZWxwZXJzXG5cbiVjbGVhcmZpeCB7XG4gICAgKnpvb206IDEgIWltcG9ydGFudDtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFwwMDIwXCIgIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4uX2NlbnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLl9sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uX3JpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLl90ZXh0Y2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLl90ZXh0bGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uX3RleHRyaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLl9ub21hcmdpbiB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5fbm9wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5fdmlzdWFsbHloaWRkZW4ge1xuICAgIGxlZnQ6IC05OTllbSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHRvcDogLTk5OWVtICFpbXBvcnRhbnQ7XG59XG5cbi8qIHZpc2liaWxpdHkgY2xhc3NlcyAqL1xuLy8gaWRlYWw6IGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtZGlzcGxheS0zLyNwcm9wZGVmLWJveC1zdXBwcmVzc1xuXG4uX2hpZGVtb2JpbGUsXG4uX3Nob3d0YWJsZXQsXG4uX3Nob3dkZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5fc2hvd21vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29sb3JzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuJHByaW1hcnk6ICM1RDAyMDI7XG4kcHJpbWFyeV9hbHQ6ICM3NTAyMDI7XG5cbiRzZWNvbmRhcnk6ICMwOTBGMjQ7XG4kc2Vjb25kYXJ5X2FsdDogIzBGMTkzRDtcblxuJHRlcnRpYXJ5OiAjNEU0RTRFO1xuJHRlcnRpYXJ5X2FsdDogIzY5Njk2OTtcblxuJGFjY2VudDogIzEzNDMwQztcbiRhY2NlbnRfYWx0OiAjMjk1NzA0O1xuXG4kbGlnaHQ6ICNGRkZGRkY7XG4kbGlnaHRfYWx0OiAjRUVFRUVFO1xuXG4kZGFyazogIzAwMDAwMDtcbiRkYXJrX2FsdDogIzExMTExMTtcblxuJGZvcmVncm91bmQ6ICRkYXJrX2FsdDtcbiRmb3JlZ3JvdW5kX2FsdDogJGRhcms7XG5cbiRiYWNrZ3JvdW5kOiAkbGlnaHQ7XG4kYmFja2dyb3VuZF9hbHQ6ICRsaWdodF9hbHQ7XG5cbiRwYWdlX2JhY2tncm91bmQ6ICRsaWdodF9hbHQ7XG4kcGFnZV9iYWNrZ3JvdW5kX2FsdDogJGxpZ2h0O1xuXG4kd2FybmluZzogIzlGMDAwMDtcbiR3YXJuaW5nX2FsdDogI0Y4MzYzNjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRm9udHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuJGhlYWRpbmctZm9udDogXCJZYW5vbmUgS2FmZmVlc2F0elwiLCBcIkFyaWFsXCIsIFwiSGVsdmV0aWNhXCIsIHNhbnMtc2VyaWY7XG4kaGVhZGluZy1mb250X2FsdDogXCJCcnVzaGVyXCIsIGN1cnNpdmU7XG4kYm9keS1mb250OiBcIllhbm9uZSBLYWZmZWVzYXR6XCIsIFwiQXJpYWxcIiwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogV2lkdGhzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuJHNpdGUtd2lkdGg6IDE2MDA7XG4kbW9iaWxlLW5hdi13aWR0aDogMjQwO1xuJGdyaWQtZ3V0dGVyOiAyMDtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQnJlYWsgUG9pbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuJHh4bC1icmVhazogMTI4MHJlbSAvIDE2O1xuJHhsLWJyZWFrOiAxMDI0cmVtIC8gMTY7XG4kbC1icmVhazogOTYwcmVtIC8gMTY7XG4kbS1icmVhazogODUzcmVtIC8gMTY7XG4kcy1icmVhazogNzY4cmVtIC8gMTY7XG4keHMtYnJlYWs6IDY0MHJlbSAvIDE2O1xuJHh4cy1icmVhazogNDgwcmVtIC8gMTY7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheWVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiRsYXllcnM6IChcbiAgICBoZWFkZXI6IDYsXG4gICAgbmF2aWdhdGlvbjogNSxcbiAgICBzbGlkZXNob3c6IDQsXG4gICAgY29udGVudDogMyxcbiAgICBjYWxsb3V0czogMixcbiAgICBmb290ZXI6IDEsXG4pO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGb250QXdlc29tZSBJY29ucyAoaHR0cDovL2ZvcnRhd2Vzb21lLmdpdGh1Yi5pby9Gb250LUF3ZXNvbWUvaWNvbnMvKSAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kZmEtaWNvbnM6IChcbiAgICA1MDBweDogXCJcXGYyNmVcIixcbiAgICBhZGp1c3Q6IFwiXFxmMDQyXCIsXG4gICAgYWRuOiBcIlxcZjE3MFwiLFxuICAgIGFsaWduLWNlbnRlcjogXCJcXGYwMzdcIixcbiAgICBhbGlnbi1qdXN0aWZ5OiBcIlxcZjAzOVwiLFxuICAgIGFsaWduLWxlZnQ6IFwiXFxmMDM2XCIsXG4gICAgYWxpZ24tcmlnaHQ6IFwiXFxmMDM4XCIsXG4gICAgYW1hem9uOiBcIlxcZjI3MFwiLFxuICAgIGFtYnVsYW5jZTogXCJcXGYwZjlcIixcbiAgICBhbmNob3I6IFwiXFxmMTNkXCIsXG4gICAgYW5kcm9pZDogXCJcXGYxN2JcIixcbiAgICBhbmdlbGxpc3Q6IFwiXFxmMjA5XCIsXG4gICAgYW5nbGUtZG91YmxlLWRvd246IFwiXFxmMTAzXCIsXG4gICAgYW5nbGUtZG91YmxlLWxlZnQ6IFwiXFxmMTAwXCIsXG4gICAgYW5nbGUtZG91YmxlLXJpZ2h0OiBcIlxcZjEwMVwiLFxuICAgIGFuZ2xlLWRvdWJsZS11cDogXCJcXGYxMDJcIixcbiAgICBhbmdsZS1kb3duOiBcIlxcZjEwN1wiLFxuICAgIGFuZ2xlLWxlZnQ6IFwiXFxmMTA0XCIsXG4gICAgYW5nbGUtcmlnaHQ6IFwiXFxmMTA1XCIsXG4gICAgYW5nbGUtdXA6IFwiXFxmMTA2XCIsXG4gICAgYXBwbGU6IFwiXFxmMTc5XCIsXG4gICAgYXJjaGl2ZTogXCJcXGYxODdcIixcbiAgICBhcmVhLWNoYXJ0OiBcIlxcZjFmZVwiLFxuICAgIGFycm93LWNpcmNsZS1kb3duOiBcIlxcZjBhYlwiLFxuICAgIGFycm93LWNpcmNsZS1sZWZ0OiBcIlxcZjBhOFwiLFxuICAgIGFycm93LWNpcmNsZS1vLWRvd246IFwiXFxmMDFhXCIsXG4gICAgYXJyb3ctY2lyY2xlLW8tbGVmdDogXCJcXGYxOTBcIixcbiAgICBhcnJvdy1jaXJjbGUtby1yaWdodDogXCJcXGYxOGVcIixcbiAgICBhcnJvdy1jaXJjbGUtby11cDogXCJcXGYwMWJcIixcbiAgICBhcnJvdy1jaXJjbGUtcmlnaHQ6IFwiXFxmMGE5XCIsXG4gICAgYXJyb3ctY2lyY2xlLXVwOiBcIlxcZjBhYVwiLFxuICAgIGFycm93LWRvd246IFwiXFxmMDYzXCIsXG4gICAgYXJyb3ctbGVmdDogXCJcXGYwNjBcIixcbiAgICBhcnJvdy1yaWdodDogXCJcXGYwNjFcIixcbiAgICBhcnJvdy11cDogXCJcXGYwNjJcIixcbiAgICBhcnJvd3M6IFwiXFxmMDQ3XCIsXG4gICAgYXJyb3dzLWFsdDogXCJcXGYwYjJcIixcbiAgICBhcnJvd3MtaDogXCJcXGYwN2VcIixcbiAgICBhcnJvd3MtdjogXCJcXGYwN2RcIixcbiAgICBhc3RlcmlzazogXCJcXGYwNjlcIixcbiAgICBhdDogXCJcXGYxZmFcIixcbiAgICBhdXRvbW9iaWxlOiBcIlxcZjFiOVwiLFxuICAgIGJhY2t3YXJkOiBcIlxcZjA0YVwiLFxuICAgIGJhbGFuY2Utc2NhbGU6IFwiXFxmMjRlXCIsXG4gICAgYmFuOiBcIlxcZjA1ZVwiLFxuICAgIGJhbms6IFwiXFxmMTljXCIsXG4gICAgYmFyLWNoYXJ0OiBcIlxcZjA4MFwiLFxuICAgIGJhci1jaGFydC1vOiBcIlxcZjA4MFwiLFxuICAgIGJhcmNvZGU6IFwiXFxmMDJhXCIsXG4gICAgYmFyczogXCJcXGYwYzlcIixcbiAgICBiYXR0ZXJ5LTA6IFwiXFxmMjQ0XCIsXG4gICAgYmF0dGVyeS0xOiBcIlxcZjI0M1wiLFxuICAgIGJhdHRlcnktMjogXCJcXGYyNDJcIixcbiAgICBiYXR0ZXJ5LTM6IFwiXFxmMjQxXCIsXG4gICAgYmF0dGVyeS00OiBcIlxcZjI0MFwiLFxuICAgIGJhdHRlcnktZW1wdHk6IFwiXFxmMjQ0XCIsXG4gICAgYmF0dGVyeS1mdWxsOiBcIlxcZjI0MFwiLFxuICAgIGJhdHRlcnktaGFsZjogXCJcXGYyNDJcIixcbiAgICBiYXR0ZXJ5LXF1YXJ0ZXI6IFwiXFxmMjQzXCIsXG4gICAgYmF0dGVyeS10aHJlZS1xdWFydGVyczogXCJcXGYyNDFcIixcbiAgICBiZWQ6IFwiXFxmMjM2XCIsXG4gICAgYmVlcjogXCJcXGYwZmNcIixcbiAgICBiZWhhbmNlOiBcIlxcZjFiNFwiLFxuICAgIGJlaGFuY2Utc3F1YXJlOiBcIlxcZjFiNVwiLFxuICAgIGJlbGw6IFwiXFxmMGYzXCIsXG4gICAgYmVsbC1vOiBcIlxcZjBhMlwiLFxuICAgIGJlbGwtc2xhc2g6IFwiXFxmMWY2XCIsXG4gICAgYmVsbC1zbGFzaC1vOiBcIlxcZjFmN1wiLFxuICAgIGJpY3ljbGU6IFwiXFxmMjA2XCIsXG4gICAgYmlub2N1bGFyczogXCJcXGYxZTVcIixcbiAgICBiaXJ0aGRheS1jYWtlOiBcIlxcZjFmZFwiLFxuICAgIGJpdGJ1Y2tldDogXCJcXGYxNzFcIixcbiAgICBiaXRidWNrZXQtc3F1YXJlOiBcIlxcZjE3MlwiLFxuICAgIGJpdGNvaW46IFwiXFxmMTVhXCIsXG4gICAgYmxhY2stdGllOiBcIlxcZjI3ZVwiLFxuICAgIGJvbGQ6IFwiXFxmMDMyXCIsXG4gICAgYm9sdDogXCJcXGYwZTdcIixcbiAgICBib21iOiBcIlxcZjFlMlwiLFxuICAgIGJvb2s6IFwiXFxmMDJkXCIsXG4gICAgYm9va21hcms6IFwiXFxmMDJlXCIsXG4gICAgYm9va21hcmstbzogXCJcXGYwOTdcIixcbiAgICBicmllZmNhc2U6IFwiXFxmMGIxXCIsXG4gICAgYnRjOiBcIlxcZjE1YVwiLFxuICAgIGJ1ZzogXCJcXGYxODhcIixcbiAgICBidWlsZGluZzogXCJcXGYxYWRcIixcbiAgICBidWlsZGluZy1vOiBcIlxcZjBmN1wiLFxuICAgIGJ1bGxob3JuOiBcIlxcZjBhMVwiLFxuICAgIGJ1bGxzZXllOiBcIlxcZjE0MFwiLFxuICAgIGJ1czogXCJcXGYyMDdcIixcbiAgICBidXlzZWxsYWRzOiBcIlxcZjIwZFwiLFxuICAgIGNhYjogXCJcXGYxYmFcIixcbiAgICBjYWxjdWxhdG9yOiBcIlxcZjFlY1wiLFxuICAgIGNhbGVuZGFyOiBcIlxcZjA3M1wiLFxuICAgIGNhbGVuZGFyLWNoZWNrLW86IFwiXFxmMjc0XCIsXG4gICAgY2FsZW5kYXItbWludXMtbzogXCJcXGYyNzJcIixcbiAgICBjYWxlbmRhci1vOiBcIlxcZjEzM1wiLFxuICAgIGNhbGVuZGFyLXBsdXMtbzogXCJcXGYyNzFcIixcbiAgICBjYWxlbmRhci10aW1lcy1vOiBcIlxcZjI3M1wiLFxuICAgIGNhbWVyYTogXCJcXGYwMzBcIixcbiAgICBjYW1lcmEtcmV0cm86IFwiXFxmMDgzXCIsXG4gICAgY2FyOiBcIlxcZjFiOVwiLFxuICAgIGNhcmV0LWRvd246IFwiXFxmMGQ3XCIsXG4gICAgY2FyZXQtbGVmdDogXCJcXGYwZDlcIixcbiAgICBjYXJldC1yaWdodDogXCJcXGYwZGFcIixcbiAgICBjYXJldC1zcXVhcmUtby1kb3duOiBcIlxcZjE1MFwiLFxuICAgIGNhcmV0LXNxdWFyZS1vLWxlZnQ6IFwiXFxmMTkxXCIsXG4gICAgY2FyZXQtc3F1YXJlLW8tcmlnaHQ6IFwiXFxmMTUyXCIsXG4gICAgY2FyZXQtc3F1YXJlLW8tdXA6IFwiXFxmMTUxXCIsXG4gICAgY2FyZXQtdXA6IFwiXFxmMGQ4XCIsXG4gICAgY2FydC1hcnJvdy1kb3duOiBcIlxcZjIxOFwiLFxuICAgIGNhcnQtcGx1czogXCJcXGYyMTdcIixcbiAgICBjYzogXCJcXGYyMGFcIixcbiAgICBjYy1hbWV4OiBcIlxcZjFmM1wiLFxuICAgIGNjLWRpbmVycy1jbHViOiBcIlxcZjI0Y1wiLFxuICAgIGNjLWRpc2NvdmVyOiBcIlxcZjFmMlwiLFxuICAgIGNjLWpjYjogXCJcXGYyNGJcIixcbiAgICBjYy1tYXN0ZXJjYXJkOiBcIlxcZjFmMVwiLFxuICAgIGNjLXBheXBhbDogXCJcXGYxZjRcIixcbiAgICBjYy1zdHJpcGU6IFwiXFxmMWY1XCIsXG4gICAgY2MtdmlzYTogXCJcXGYxZjBcIixcbiAgICBjZXJ0aWZpY2F0ZTogXCJcXGYwYTNcIixcbiAgICBjaGFpbjogXCJcXGYwYzFcIixcbiAgICBjaGFpbi1icm9rZW46IFwiXFxmMTI3XCIsXG4gICAgY2hlY2s6IFwiXFxmMDBjXCIsXG4gICAgY2hlY2stY2lyY2xlOiBcIlxcZjA1OFwiLFxuICAgIGNoZWNrLWNpcmNsZS1vOiBcIlxcZjA1ZFwiLFxuICAgIGNoZWNrLXNxdWFyZTogXCJcXGYxNGFcIixcbiAgICBjaGVjay1zcXVhcmUtbzogXCJcXGYwNDZcIixcbiAgICBjaGV2cm9uLWNpcmNsZS1kb3duOiBcIlxcZjEzYVwiLFxuICAgIGNoZXZyb24tY2lyY2xlLWxlZnQ6IFwiXFxmMTM3XCIsXG4gICAgY2hldnJvbi1jaXJjbGUtcmlnaHQ6IFwiXFxmMTM4XCIsXG4gICAgY2hldnJvbi1jaXJjbGUtdXA6IFwiXFxmMTM5XCIsXG4gICAgY2hldnJvbi1kb3duOiBcIlxcZjA3OFwiLFxuICAgIGNoZXZyb24tbGVmdDogXCJcXGYwNTNcIixcbiAgICBjaGV2cm9uLXJpZ2h0OiBcIlxcZjA1NFwiLFxuICAgIGNoZXZyb24tdXA6IFwiXFxmMDc3XCIsXG4gICAgY2hpbGQ6IFwiXFxmMWFlXCIsXG4gICAgY2hyb21lOiBcIlxcZjI2OFwiLFxuICAgIGNpcmNsZTogXCJcXGYxMTFcIixcbiAgICBjaXJjbGUtbzogXCJcXGYxMGNcIixcbiAgICBjaXJjbGUtby1ub3RjaDogXCJcXGYxY2VcIixcbiAgICBjaXJjbGUtdGhpbjogXCJcXGYxZGJcIixcbiAgICBjbGlwYm9hcmQ6IFwiXFxmMGVhXCIsXG4gICAgY2xvY2stbzogXCJcXGYwMTdcIixcbiAgICBjbG9uZTogXCJcXGYyNGRcIixcbiAgICBjbG9zZTogXCJcXGYwMGRcIixcbiAgICBjbG91ZDogXCJcXGYwYzJcIixcbiAgICBjbG91ZC1kb3dubG9hZDogXCJcXGYwZWRcIixcbiAgICBjbG91ZC11cGxvYWQ6IFwiXFxmMGVlXCIsXG4gICAgY255OiBcIlxcZjE1N1wiLFxuICAgIGNvZGU6IFwiXFxmMTIxXCIsXG4gICAgY29kZS1mb3JrOiBcIlxcZjEyNlwiLFxuICAgIGNvZGVwZW46IFwiXFxmMWNiXCIsXG4gICAgY29mZmVlOiBcIlxcZjBmNFwiLFxuICAgIGNvZzogXCJcXGYwMTNcIixcbiAgICBjb2dzOiBcIlxcZjA4NVwiLFxuICAgIGNvbHVtbnM6IFwiXFxmMGRiXCIsXG4gICAgY29tbWVudDogXCJcXGYwNzVcIixcbiAgICBjb21tZW50LW86IFwiXFxmMGU1XCIsXG4gICAgY29tbWVudGluZzogXCJcXGYyN2FcIixcbiAgICBjb21tZW50aW5nLW86IFwiXFxmMjdiXCIsXG4gICAgY29tbWVudHM6IFwiXFxmMDg2XCIsXG4gICAgY29tbWVudHMtbzogXCJcXGYwZTZcIixcbiAgICBjb21wYXNzOiBcIlxcZjE0ZVwiLFxuICAgIGNvbXByZXNzOiBcIlxcZjA2NlwiLFxuICAgIGNvbm5lY3RkZXZlbG9wOiBcIlxcZjIwZVwiLFxuICAgIGNvbnRhbzogXCJcXGYyNmRcIixcbiAgICBjb3B5OiBcIlxcZjBjNVwiLFxuICAgIGNvcHlyaWdodDogXCJcXGYxZjlcIixcbiAgICBjcmVhdGl2ZS1jb21tb25zOiBcIlxcZjI1ZVwiLFxuICAgIGNyZWRpdC1jYXJkOiBcIlxcZjA5ZFwiLFxuICAgIGNyb3A6IFwiXFxmMTI1XCIsXG4gICAgY3Jvc3NoYWlyczogXCJcXGYwNWJcIixcbiAgICBjc3MzOiBcIlxcZjEzY1wiLFxuICAgIGN1YmU6IFwiXFxmMWIyXCIsXG4gICAgY3ViZXM6IFwiXFxmMWIzXCIsXG4gICAgY3V0OiBcIlxcZjBjNFwiLFxuICAgIGN1dGxlcnk6IFwiXFxmMGY1XCIsXG4gICAgZGFzaGJvYXJkOiBcIlxcZjBlNFwiLFxuICAgIGRhc2hjdWJlOiBcIlxcZjIxMFwiLFxuICAgIGRhdGFiYXNlOiBcIlxcZjFjMFwiLFxuICAgIGRlZGVudDogXCJcXGYwM2JcIixcbiAgICBkZWxpY2lvdXM6IFwiXFxmMWE1XCIsXG4gICAgZGVza3RvcDogXCJcXGYxMDhcIixcbiAgICBkZXZpYW50YXJ0OiBcIlxcZjFiZFwiLFxuICAgIGRpYW1vbmQ6IFwiXFxmMjE5XCIsXG4gICAgZGlnZzogXCJcXGYxYTZcIixcbiAgICBkb2xsYXI6IFwiXFxmMTU1XCIsXG4gICAgZG90LWNpcmNsZS1vOiBcIlxcZjE5MlwiLFxuICAgIGRvd25sb2FkOiBcIlxcZjAxOVwiLFxuICAgIGRyaWJiYmxlOiBcIlxcZjE3ZFwiLFxuICAgIGRyb3Bib3g6IFwiXFxmMTZiXCIsXG4gICAgZHJ1cGFsOiBcIlxcZjFhOVwiLFxuICAgIGVkaXQ6IFwiXFxmMDQ0XCIsXG4gICAgZWplY3Q6IFwiXFxmMDUyXCIsXG4gICAgZWxsaXBzaXMtaDogXCJcXGYxNDFcIixcbiAgICBlbGxpcHNpcy12OiBcIlxcZjE0MlwiLFxuICAgIGVtcGlyZTogXCJcXGYxZDFcIixcbiAgICBlbnZlbG9wZTogXCJcXGYwZTBcIixcbiAgICBlbnZlbG9wZS1vOiBcIlxcZjAwM1wiLFxuICAgIGVudmVsb3BlLXNxdWFyZTogXCJcXGYxOTlcIixcbiAgICBlcmFzZXI6IFwiXFxmMTJkXCIsXG4gICAgZXVyOiBcIlxcZjE1M1wiLFxuICAgIGV1cm86IFwiXFxmMTUzXCIsXG4gICAgZXhjaGFuZ2U6IFwiXFxmMGVjXCIsXG4gICAgZXhjbGFtYXRpb246IFwiXFxmMTJhXCIsXG4gICAgZXhjbGFtYXRpb24tY2lyY2xlOiBcIlxcZjA2YVwiLFxuICAgIGV4Y2xhbWF0aW9uLXRyaWFuZ2xlOiBcIlxcZjA3MVwiLFxuICAgIGV4cGFuZDogXCJcXGYwNjVcIixcbiAgICBleHBlZGl0ZWRzc2w6IFwiXFxmMjNlXCIsXG4gICAgZXh0ZXJuYWwtbGluazogXCJcXGYwOGVcIixcbiAgICBleHRlcm5hbC1saW5rLXNxdWFyZTogXCJcXGYxNGNcIixcbiAgICBleWU6IFwiXFxmMDZlXCIsXG4gICAgZXllLXNsYXNoOiBcIlxcZjA3MFwiLFxuICAgIGV5ZWRyb3BwZXI6IFwiXFxmMWZiXCIsXG4gICAgZmFjZWJvb2s6IFwiXFxmMDlhXCIsXG4gICAgZmFjZWJvb2stZjogXCJcXGYwOWFcIixcbiAgICBmYWNlYm9vay1vZmZpY2lhbDogXCJcXGYyMzBcIixcbiAgICBmYWNlYm9vay1zcXVhcmU6IFwiXFxmMDgyXCIsXG4gICAgZmFzdC1iYWNrd2FyZDogXCJcXGYwNDlcIixcbiAgICBmYXN0LWZvcndhcmQ6IFwiXFxmMDUwXCIsXG4gICAgZmF4OiBcIlxcZjFhY1wiLFxuICAgIGZlZWQ6IFwiXFxmMDllXCIsXG4gICAgZmVtYWxlOiBcIlxcZjE4MlwiLFxuICAgIGZpZ2h0ZXItamV0OiBcIlxcZjBmYlwiLFxuICAgIGZpbGU6IFwiXFxmMTViXCIsXG4gICAgZmlsZS1hcmNoaXZlLW86IFwiXFxmMWM2XCIsXG4gICAgZmlsZS1hdWRpby1vOiBcIlxcZjFjN1wiLFxuICAgIGZpbGUtY29kZS1vOiBcIlxcZjFjOVwiLFxuICAgIGZpbGUtZXhjZWwtbzogXCJcXGYxYzNcIixcbiAgICBmaWxlLWltYWdlLW86IFwiXFxmMWM1XCIsXG4gICAgZmlsZS1tb3ZpZS1vOiBcIlxcZjFjOFwiLFxuICAgIGZpbGUtbzogXCJcXGYwMTZcIixcbiAgICBmaWxlLXBkZi1vOiBcIlxcZjFjMVwiLFxuICAgIGZpbGUtcGhvdG8tbzogXCJcXGYxYzVcIixcbiAgICBmaWxlLXBpY3R1cmUtbzogXCJcXGYxYzVcIixcbiAgICBmaWxlLXBvd2VycG9pbnQtbzogXCJcXGYxYzRcIixcbiAgICBmaWxlLXNvdW5kLW86IFwiXFxmMWM3XCIsXG4gICAgZmlsZS10ZXh0OiBcIlxcZjE1Y1wiLFxuICAgIGZpbGUtdGV4dC1vOiBcIlxcZjBmNlwiLFxuICAgIGZpbGUtdmlkZW8tbzogXCJcXGYxYzhcIixcbiAgICBmaWxlLXdvcmQtbzogXCJcXGYxYzJcIixcbiAgICBmaWxlLXppcC1vOiBcIlxcZjFjNlwiLFxuICAgIGZpbGVzLW86IFwiXFxmMGM1XCIsXG4gICAgZmlsbTogXCJcXGYwMDhcIixcbiAgICBmaWx0ZXI6IFwiXFxmMGIwXCIsXG4gICAgZmlyZTogXCJcXGYwNmRcIixcbiAgICBmaXJlLWV4dGluZ3Vpc2hlcjogXCJcXGYxMzRcIixcbiAgICBmaXJlZm94OiBcIlxcZjI2OVwiLFxuICAgIGZsYWc6IFwiXFxmMDI0XCIsXG4gICAgZmxhZy1jaGVja2VyZWQ6IFwiXFxmMTFlXCIsXG4gICAgZmxhZy1vOiBcIlxcZjExZFwiLFxuICAgIGZsYXNoOiBcIlxcZjBlN1wiLFxuICAgIGZsYXNrOiBcIlxcZjBjM1wiLFxuICAgIGZsaWNrcjogXCJcXGYxNmVcIixcbiAgICBmbG9wcHktbzogXCJcXGYwYzdcIixcbiAgICBmb2xkZXI6IFwiXFxmMDdiXCIsXG4gICAgZm9sZGVyLW86IFwiXFxmMTE0XCIsXG4gICAgZm9sZGVyLW9wZW46IFwiXFxmMDdjXCIsXG4gICAgZm9sZGVyLW9wZW4tbzogXCJcXGYxMTVcIixcbiAgICBmb250OiBcIlxcZjAzMVwiLFxuICAgIGZvbnRpY29uczogXCJcXGYyODBcIixcbiAgICBmb3J1bWJlZTogXCJcXGYyMTFcIixcbiAgICBmb3J3YXJkOiBcIlxcZjA0ZVwiLFxuICAgIGZvdXJzcXVhcmU6IFwiXFxmMTgwXCIsXG4gICAgZnJvd24tbzogXCJcXGYxMTlcIixcbiAgICBmdXRib2wtbzogXCJcXGYxZTNcIixcbiAgICBnYW1lcGFkOiBcIlxcZjExYlwiLFxuICAgIGdhdmVsOiBcIlxcZjBlM1wiLFxuICAgIGdicDogXCJcXGYxNTRcIixcbiAgICBnZTogXCJcXGYxZDFcIixcbiAgICBnZWFyOiBcIlxcZjAxM1wiLFxuICAgIGdlYXJzOiBcIlxcZjA4NVwiLFxuICAgIGdlbmRlcmxlc3M6IFwiXFxmMjJkXCIsXG4gICAgZ2V0LXBvY2tldDogXCJcXGYyNjVcIixcbiAgICBnZzogXCJcXGYyNjBcIixcbiAgICBnZy1jaXJjbGU6IFwiXFxmMjYxXCIsXG4gICAgZ2lmdDogXCJcXGYwNmJcIixcbiAgICBnaXQ6IFwiXFxmMWQzXCIsXG4gICAgZ2l0LXNxdWFyZTogXCJcXGYxZDJcIixcbiAgICBnaXRodWI6IFwiXFxmMDliXCIsXG4gICAgZ2l0aHViLWFsdDogXCJcXGYxMTNcIixcbiAgICBnaXRodWItc3F1YXJlOiBcIlxcZjA5MlwiLFxuICAgIGdpdHRpcDogXCJcXGYxODRcIixcbiAgICBnbGFzczogXCJcXGYwMDBcIixcbiAgICBnbG9iZTogXCJcXGYwYWNcIixcbiAgICBnb29nbGU6IFwiXFxmMWEwXCIsXG4gICAgZ29vZ2xlLXBsdXM6IFwiXFxmMGQ1XCIsXG4gICAgZ29vZ2xlLXBsdXMtc3F1YXJlOiBcIlxcZjBkNFwiLFxuICAgIGdvb2dsZS13YWxsZXQ6IFwiXFxmMWVlXCIsXG4gICAgZ3JhZHVhdGlvbi1jYXA6IFwiXFxmMTlkXCIsXG4gICAgZ3JhdGlwYXk6IFwiXFxmMTg0XCIsXG4gICAgZ3JvdXA6IFwiXFxmMGMwXCIsXG4gICAgaC1zcXVhcmU6IFwiXFxmMGZkXCIsXG4gICAgaGFja2VyLW5ld3M6IFwiXFxmMWQ0XCIsXG4gICAgaGFuZC1ncmFiLW86IFwiXFxmMjU1XCIsXG4gICAgaGFuZC1saXphcmQtbzogXCJcXGYyNThcIixcbiAgICBoYW5kLW8tZG93bjogXCJcXGYwYTdcIixcbiAgICBoYW5kLW8tbGVmdDogXCJcXGYwYTVcIixcbiAgICBoYW5kLW8tcmlnaHQ6IFwiXFxmMGE0XCIsXG4gICAgaGFuZC1vLXVwOiBcIlxcZjBhNlwiLFxuICAgIGhhbmQtcGFwZXItbzogXCJcXGYyNTZcIixcbiAgICBoYW5kLXBlYWNlLW86IFwiXFxmMjViXCIsXG4gICAgaGFuZC1wb2ludGVyLW86IFwiXFxmMjVhXCIsXG4gICAgaGFuZC1yb2NrLW86IFwiXFxmMjU1XCIsXG4gICAgaGFuZC1zY2lzc29ycy1vOiBcIlxcZjI1N1wiLFxuICAgIGhhbmQtc3BvY2stbzogXCJcXGYyNTlcIixcbiAgICBoYW5kLXN0b3AtbzogXCJcXGYyNTZcIixcbiAgICBoZGQtbzogXCJcXGYwYTBcIixcbiAgICBoZWFkZXI6IFwiXFxmMWRjXCIsXG4gICAgaGVhZHBob25lczogXCJcXGYwMjVcIixcbiAgICBoZWFydDogXCJcXGYwMDRcIixcbiAgICBoZWFydC1vOiBcIlxcZjA4YVwiLFxuICAgIGhlYXJ0YmVhdDogXCJcXGYyMWVcIixcbiAgICBoaXN0b3J5OiBcIlxcZjFkYVwiLFxuICAgIGhvbWU6IFwiXFxmMDE1XCIsXG4gICAgaG9zcGl0YWwtbzogXCJcXGYwZjhcIixcbiAgICBob3RlbDogXCJcXGYyMzZcIixcbiAgICBob3VyZ2xhc3M6IFwiXFxmMjU0XCIsXG4gICAgaG91cmdsYXNzLTE6IFwiXFxmMjUxXCIsXG4gICAgaG91cmdsYXNzLTI6IFwiXFxmMjUyXCIsXG4gICAgaG91cmdsYXNzLTM6IFwiXFxmMjUzXCIsXG4gICAgaG91cmdsYXNzLWVuZDogXCJcXGYyNTNcIixcbiAgICBob3VyZ2xhc3MtaGFsZjogXCJcXGYyNTJcIixcbiAgICBob3VyZ2xhc3MtbzogXCJcXGYyNTBcIixcbiAgICBob3VyZ2xhc3Mtc3RhcnQ6IFwiXFxmMjUxXCIsXG4gICAgaG91eno6IFwiXFxmMjdjXCIsXG4gICAgaHRtbDU6IFwiXFxmMTNiXCIsXG4gICAgaS1jdXJzb3I6IFwiXFxmMjQ2XCIsXG4gICAgaWxzOiBcIlxcZjIwYlwiLFxuICAgIGltYWdlOiBcIlxcZjAzZVwiLFxuICAgIGluYm94OiBcIlxcZjAxY1wiLFxuICAgIGluZGVudDogXCJcXGYwM2NcIixcbiAgICBpbmR1c3RyeTogXCJcXGYyNzVcIixcbiAgICBpbmZvOiBcIlxcZjEyOVwiLFxuICAgIGluZm8tY2lyY2xlOiBcIlxcZjA1YVwiLFxuICAgIGlucjogXCJcXGYxNTZcIixcbiAgICBpbnN0YWdyYW06IFwiXFxmMTZkXCIsXG4gICAgaW5zdGl0dXRpb246IFwiXFxmMTljXCIsXG4gICAgaW50ZXJuZXQtZXhwbG9yZXI6IFwiXFxmMjZiXCIsXG4gICAgaW50ZXJzZXg6IFwiXFxmMjI0XCIsXG4gICAgaW94aG9zdDogXCJcXGYyMDhcIixcbiAgICBpdGFsaWM6IFwiXFxmMDMzXCIsXG4gICAgam9vbWxhOiBcIlxcZjFhYVwiLFxuICAgIGpweTogXCJcXGYxNTdcIixcbiAgICBqc2ZpZGRsZTogXCJcXGYxY2NcIixcbiAgICBrZXk6IFwiXFxmMDg0XCIsXG4gICAga2V5Ym9hcmQtbzogXCJcXGYxMWNcIixcbiAgICBrcnc6IFwiXFxmMTU5XCIsXG4gICAgbGFuZ3VhZ2U6IFwiXFxmMWFiXCIsXG4gICAgbGFwdG9wOiBcIlxcZjEwOVwiLFxuICAgIGxhc3RmbTogXCJcXGYyMDJcIixcbiAgICBsYXN0Zm0tc3F1YXJlOiBcIlxcZjIwM1wiLFxuICAgIGxlYWY6IFwiXFxmMDZjXCIsXG4gICAgbGVhbnB1YjogXCJcXGYyMTJcIixcbiAgICBsZWdhbDogXCJcXGYwZTNcIixcbiAgICBsZW1vbi1vOiBcIlxcZjA5NFwiLFxuICAgIGxldmVsLWRvd246IFwiXFxmMTQ5XCIsXG4gICAgbGV2ZWwtdXA6IFwiXFxmMTQ4XCIsXG4gICAgbGlmZS1ib3V5OiBcIlxcZjFjZFwiLFxuICAgIGxpZmUtYnVveTogXCJcXGYxY2RcIixcbiAgICBsaWZlLXJpbmc6IFwiXFxmMWNkXCIsXG4gICAgbGlmZS1zYXZlcjogXCJcXGYxY2RcIixcbiAgICBsaWdodGJ1bGItbzogXCJcXGYwZWJcIixcbiAgICBsaW5lLWNoYXJ0OiBcIlxcZjIwMVwiLFxuICAgIGxpbms6IFwiXFxmMGMxXCIsXG4gICAgbGlua2VkaW46IFwiXFxmMGUxXCIsXG4gICAgbGlua2VkaW4tc3F1YXJlOiBcIlxcZjA4Y1wiLFxuICAgIGxpbnV4OiBcIlxcZjE3Y1wiLFxuICAgIGxpc3Q6IFwiXFxmMDNhXCIsXG4gICAgbGlzdC1hbHQ6IFwiXFxmMDIyXCIsXG4gICAgbGlzdC1vbDogXCJcXGYwY2JcIixcbiAgICBsaXN0LXVsOiBcIlxcZjBjYVwiLFxuICAgIGxvY2F0aW9uLWFycm93OiBcIlxcZjEyNFwiLFxuICAgIGxvY2s6IFwiXFxmMDIzXCIsXG4gICAgbG9uZy1hcnJvdy1kb3duOiBcIlxcZjE3NVwiLFxuICAgIGxvbmctYXJyb3ctbGVmdDogXCJcXGYxNzdcIixcbiAgICBsb25nLWFycm93LXJpZ2h0OiBcIlxcZjE3OFwiLFxuICAgIGxvbmctYXJyb3ctdXA6IFwiXFxmMTc2XCIsXG4gICAgbWFnaWM6IFwiXFxmMGQwXCIsXG4gICAgbWFnbmV0OiBcIlxcZjA3NlwiLFxuICAgIG1haWwtZm9yd2FyZDogXCJcXGYwNjRcIixcbiAgICBtYWlsLXJlcGx5OiBcIlxcZjExMlwiLFxuICAgIG1haWwtcmVwbHktYWxsOiBcIlxcZjEyMlwiLFxuICAgIG1hbGU6IFwiXFxmMTgzXCIsXG4gICAgbWFwOiBcIlxcZjI3OVwiLFxuICAgIG1hcC1tYXJrZXI6IFwiXFxmMDQxXCIsXG4gICAgbWFwLW86IFwiXFxmMjc4XCIsXG4gICAgbWFwLXBpbjogXCJcXGYyNzZcIixcbiAgICBtYXAtc2lnbnM6IFwiXFxmMjc3XCIsXG4gICAgbWFyczogXCJcXGYyMjJcIixcbiAgICBtYXJzLWRvdWJsZTogXCJcXGYyMjdcIixcbiAgICBtYXJzLXN0cm9rZTogXCJcXGYyMjlcIixcbiAgICBtYXJzLXN0cm9rZS1oOiBcIlxcZjIyYlwiLFxuICAgIG1hcnMtc3Ryb2tlLXY6IFwiXFxmMjJhXCIsXG4gICAgbWF4Y2RuOiBcIlxcZjEzNlwiLFxuICAgIG1lYW5wYXRoOiBcIlxcZjIwY1wiLFxuICAgIG1lZGl1bTogXCJcXGYyM2FcIixcbiAgICBtZWRraXQ6IFwiXFxmMGZhXCIsXG4gICAgbWVoLW86IFwiXFxmMTFhXCIsXG4gICAgbWVyY3VyeTogXCJcXGYyMjNcIixcbiAgICBtaWNyb3Bob25lOiBcIlxcZjEzMFwiLFxuICAgIG1pY3JvcGhvbmUtc2xhc2g6IFwiXFxmMTMxXCIsXG4gICAgbWludXM6IFwiXFxmMDY4XCIsXG4gICAgbWludXMtY2lyY2xlOiBcIlxcZjA1NlwiLFxuICAgIG1pbnVzLXNxdWFyZTogXCJcXGYxNDZcIixcbiAgICBtaW51cy1zcXVhcmUtbzogXCJcXGYxNDdcIixcbiAgICBtb2JpbGU6IFwiXFxmMTBiXCIsXG4gICAgbW9iaWxlLXBob25lOiBcIlxcZjEwYlwiLFxuICAgIG1vbmV5OiBcIlxcZjBkNlwiLFxuICAgIG1vb24tbzogXCJcXGYxODZcIixcbiAgICBtb3J0YXItYm9hcmQ6IFwiXFxmMTlkXCIsXG4gICAgbW90b3JjeWNsZTogXCJcXGYyMWNcIixcbiAgICBtb3VzZS1wb2ludGVyOiBcIlxcZjI0NVwiLFxuICAgIG11c2ljOiBcIlxcZjAwMVwiLFxuICAgIG5hdmljb246IFwiXFxmMGM5XCIsXG4gICAgbmV1dGVyOiBcIlxcZjIyY1wiLFxuICAgIG5ld3NwYXBlci1vOiBcIlxcZjFlYVwiLFxuICAgIG9iamVjdC1ncm91cDogXCJcXGYyNDdcIixcbiAgICBvYmplY3QtdW5ncm91cDogXCJcXGYyNDhcIixcbiAgICBvZG5va2xhc3NuaWtpOiBcIlxcZjI2M1wiLFxuICAgIG9kbm9rbGFzc25pa2ktc3F1YXJlOiBcIlxcZjI2NFwiLFxuICAgIG9wZW5jYXJ0OiBcIlxcZjIzZFwiLFxuICAgIG9wZW5pZDogXCJcXGYxOWJcIixcbiAgICBvcGVyYTogXCJcXGYyNmFcIixcbiAgICBvcHRpbi1tb25zdGVyOiBcIlxcZjIzY1wiLFxuICAgIG91dGRlbnQ6IFwiXFxmMDNiXCIsXG4gICAgcGFnZWxpbmVzOiBcIlxcZjE4Y1wiLFxuICAgIHBhaW50LWJydXNoOiBcIlxcZjFmY1wiLFxuICAgIHBhcGVyLXBsYW5lOiBcIlxcZjFkOFwiLFxuICAgIHBhcGVyLXBsYW5lLW86IFwiXFxmMWQ5XCIsXG4gICAgcGFwZXJjbGlwOiBcIlxcZjBjNlwiLFxuICAgIHBhcmFncmFwaDogXCJcXGYxZGRcIixcbiAgICBwYXN0ZTogXCJcXGYwZWFcIixcbiAgICBwYXVzZTogXCJcXGYwNGNcIixcbiAgICBwYXc6IFwiXFxmMWIwXCIsXG4gICAgcGF5cGFsOiBcIlxcZjFlZFwiLFxuICAgIHBlbmNpbDogXCJcXGYwNDBcIixcbiAgICBwZW5jaWwtc3F1YXJlOiBcIlxcZjE0YlwiLFxuICAgIHBlbmNpbC1zcXVhcmUtbzogXCJcXGYwNDRcIixcbiAgICBwaG9uZTogXCJcXGYwOTVcIixcbiAgICBwaG9uZS1zcXVhcmU6IFwiXFxmMDk4XCIsXG4gICAgcGhvdG86IFwiXFxmMDNlXCIsXG4gICAgcGljdHVyZS1vOiBcIlxcZjAzZVwiLFxuICAgIHBpZS1jaGFydDogXCJcXGYyMDBcIixcbiAgICBwaWVkLXBpcGVyOiBcIlxcZjFhN1wiLFxuICAgIHBpZWQtcGlwZXItYWx0OiBcIlxcZjFhOFwiLFxuICAgIHBpbnRlcmVzdDogXCJcXGYwZDJcIixcbiAgICBwaW50ZXJlc3QtcDogXCJcXGYyMzFcIixcbiAgICBwaW50ZXJlc3Qtc3F1YXJlOiBcIlxcZjBkM1wiLFxuICAgIHBsYW5lOiBcIlxcZjA3MlwiLFxuICAgIHBsYXk6IFwiXFxmMDRiXCIsXG4gICAgcGxheS1jaXJjbGU6IFwiXFxmMTQ0XCIsXG4gICAgcGxheS1jaXJjbGUtbzogXCJcXGYwMWRcIixcbiAgICBwbHVnOiBcIlxcZjFlNlwiLFxuICAgIHBsdXM6IFwiXFxmMDY3XCIsXG4gICAgcGx1cy1jaXJjbGU6IFwiXFxmMDU1XCIsXG4gICAgcGx1cy1zcXVhcmU6IFwiXFxmMGZlXCIsXG4gICAgcGx1cy1zcXVhcmUtbzogXCJcXGYxOTZcIixcbiAgICBwb3dlci1vZmY6IFwiXFxmMDExXCIsXG4gICAgcHJpbnQ6IFwiXFxmMDJmXCIsXG4gICAgcHV6emxlLXBpZWNlOiBcIlxcZjEyZVwiLFxuICAgIHFxOiBcIlxcZjFkNlwiLFxuICAgIHFyY29kZTogXCJcXGYwMjlcIixcbiAgICBxdWVzdGlvbjogXCJcXGYxMjhcIixcbiAgICBxdWVzdGlvbi1jaXJjbGU6IFwiXFxmMDU5XCIsXG4gICAgcXVvdGUtbGVmdDogXCJcXGYxMGRcIixcbiAgICBxdW90ZS1yaWdodDogXCJcXGYxMGVcIixcbiAgICByYTogXCJcXGYxZDBcIixcbiAgICByYW5kb206IFwiXFxmMDc0XCIsXG4gICAgcmViZWw6IFwiXFxmMWQwXCIsXG4gICAgcmVjeWNsZTogXCJcXGYxYjhcIixcbiAgICByZWRkaXQ6IFwiXFxmMWExXCIsXG4gICAgcmVkZGl0LXNxdWFyZTogXCJcXGYxYTJcIixcbiAgICByZWZyZXNoOiBcIlxcZjAyMVwiLFxuICAgIHJlZ2lzdGVyZWQ6IFwiXFxmMjVkXCIsXG4gICAgcmVtb3ZlOiBcIlxcZjAwZFwiLFxuICAgIHJlbnJlbjogXCJcXGYxOGJcIixcbiAgICByZW9yZGVyOiBcIlxcZjBjOVwiLFxuICAgIHJlcGVhdDogXCJcXGYwMWVcIixcbiAgICByZXBseTogXCJcXGYxMTJcIixcbiAgICByZXBseS1hbGw6IFwiXFxmMTIyXCIsXG4gICAgcmV0d2VldDogXCJcXGYwNzlcIixcbiAgICBybWI6IFwiXFxmMTU3XCIsXG4gICAgcm9hZDogXCJcXGYwMThcIixcbiAgICByb2NrZXQ6IFwiXFxmMTM1XCIsXG4gICAgcm90YXRlLWxlZnQ6IFwiXFxmMGUyXCIsXG4gICAgcm90YXRlLXJpZ2h0OiBcIlxcZjAxZVwiLFxuICAgIHJvdWJsZTogXCJcXGYxNThcIixcbiAgICByc3M6IFwiXFxmMDllXCIsXG4gICAgcnNzLXNxdWFyZTogXCJcXGYxNDNcIixcbiAgICBydWI6IFwiXFxmMTU4XCIsXG4gICAgcnVibGU6IFwiXFxmMTU4XCIsXG4gICAgcnVwZWU6IFwiXFxmMTU2XCIsXG4gICAgc2FmYXJpOiBcIlxcZjI2N1wiLFxuICAgIHNhdmU6IFwiXFxmMGM3XCIsXG4gICAgc2Npc3NvcnM6IFwiXFxmMGM0XCIsXG4gICAgc2VhcmNoOiBcIlxcZjAwMlwiLFxuICAgIHNlYXJjaC1taW51czogXCJcXGYwMTBcIixcbiAgICBzZWFyY2gtcGx1czogXCJcXGYwMGVcIixcbiAgICBzZWxsc3k6IFwiXFxmMjEzXCIsXG4gICAgc2VuZDogXCJcXGYxZDhcIixcbiAgICBzZW5kLW86IFwiXFxmMWQ5XCIsXG4gICAgc2VydmVyOiBcIlxcZjIzM1wiLFxuICAgIHNoYXJlOiBcIlxcZjA2NFwiLFxuICAgIHNoYXJlLWFsdDogXCJcXGYxZTBcIixcbiAgICBzaGFyZS1hbHQtc3F1YXJlOiBcIlxcZjFlMVwiLFxuICAgIHNoYXJlLXNxdWFyZTogXCJcXGYxNGRcIixcbiAgICBzaGFyZS1zcXVhcmUtbzogXCJcXGYwNDVcIixcbiAgICBzaGVrZWw6IFwiXFxmMjBiXCIsXG4gICAgc2hlcWVsOiBcIlxcZjIwYlwiLFxuICAgIHNoaWVsZDogXCJcXGYxMzJcIixcbiAgICBzaGlwOiBcIlxcZjIxYVwiLFxuICAgIHNoaXJ0c2luYnVsazogXCJcXGYyMTRcIixcbiAgICBzaG9wcGluZy1jYXJ0OiBcIlxcZjA3YVwiLFxuICAgIHNpZ24taW46IFwiXFxmMDkwXCIsXG4gICAgc2lnbi1vdXQ6IFwiXFxmMDhiXCIsXG4gICAgc2lnbmFsOiBcIlxcZjAxMlwiLFxuICAgIHNpbXBseWJ1aWx0OiBcIlxcZjIxNVwiLFxuICAgIHNpdGVtYXA6IFwiXFxmMGU4XCIsXG4gICAgc2t5YXRsYXM6IFwiXFxmMjE2XCIsXG4gICAgc2t5cGU6IFwiXFxmMTdlXCIsXG4gICAgc2xhY2s6IFwiXFxmMTk4XCIsXG4gICAgc2xpZGVyczogXCJcXGYxZGVcIixcbiAgICBzbGlkZXNoYXJlOiBcIlxcZjFlN1wiLFxuICAgIHNtaWxlLW86IFwiXFxmMTE4XCIsXG4gICAgc29jY2VyLWJhbGwtbzogXCJcXGYxZTNcIixcbiAgICBzb3J0OiBcIlxcZjBkY1wiLFxuICAgIHNvcnQtYWxwaGEtYXNjOiBcIlxcZjE1ZFwiLFxuICAgIHNvcnQtYWxwaGEtZGVzYzogXCJcXGYxNWVcIixcbiAgICBzb3J0LWFtb3VudC1hc2M6IFwiXFxmMTYwXCIsXG4gICAgc29ydC1hbW91bnQtZGVzYzogXCJcXGYxNjFcIixcbiAgICBzb3J0LWFzYzogXCJcXGYwZGVcIixcbiAgICBzb3J0LWRlc2M6IFwiXFxmMGRkXCIsXG4gICAgc29ydC1kb3duOiBcIlxcZjBkZFwiLFxuICAgIHNvcnQtbnVtZXJpYy1hc2M6IFwiXFxmMTYyXCIsXG4gICAgc29ydC1udW1lcmljLWRlc2M6IFwiXFxmMTYzXCIsXG4gICAgc29ydC11cDogXCJcXGYwZGVcIixcbiAgICBzb3VuZGNsb3VkOiBcIlxcZjFiZVwiLFxuICAgIHNwYWNlLXNodXR0bGU6IFwiXFxmMTk3XCIsXG4gICAgc3Bpbm5lcjogXCJcXGYxMTBcIixcbiAgICBzcG9vbjogXCJcXGYxYjFcIixcbiAgICBzcG90aWZ5OiBcIlxcZjFiY1wiLFxuICAgIHNxdWFyZTogXCJcXGYwYzhcIixcbiAgICBzcXVhcmUtbzogXCJcXGYwOTZcIixcbiAgICBzdGFjay1leGNoYW5nZTogXCJcXGYxOGRcIixcbiAgICBzdGFjay1vdmVyZmxvdzogXCJcXGYxNmNcIixcbiAgICBzdGFyOiBcIlxcZjAwNVwiLFxuICAgIHN0YXItaGFsZjogXCJcXGYwODlcIixcbiAgICBzdGFyLWhhbGYtZW1wdHk6IFwiXFxmMTIzXCIsXG4gICAgc3Rhci1oYWxmLWZ1bGw6IFwiXFxmMTIzXCIsXG4gICAgc3Rhci1oYWxmLW86IFwiXFxmMTIzXCIsXG4gICAgc3Rhci1vOiBcIlxcZjAwNlwiLFxuICAgIHN0ZWFtOiBcIlxcZjFiNlwiLFxuICAgIHN0ZWFtLXNxdWFyZTogXCJcXGYxYjdcIixcbiAgICBzdGVwLWJhY2t3YXJkOiBcIlxcZjA0OFwiLFxuICAgIHN0ZXAtZm9yd2FyZDogXCJcXGYwNTFcIixcbiAgICBzdGV0aG9zY29wZTogXCJcXGYwZjFcIixcbiAgICBzdGlja3ktbm90ZTogXCJcXGYyNDlcIixcbiAgICBzdGlja3ktbm90ZS1vOiBcIlxcZjI0YVwiLFxuICAgIHN0b3A6IFwiXFxmMDRkXCIsXG4gICAgc3RyZWV0LXZpZXc6IFwiXFxmMjFkXCIsXG4gICAgc3RyaWtldGhyb3VnaDogXCJcXGYwY2NcIixcbiAgICBzdHVtYmxldXBvbjogXCJcXGYxYTRcIixcbiAgICBzdHVtYmxldXBvbi1jaXJjbGU6IFwiXFxmMWEzXCIsXG4gICAgc3Vic2NyaXB0OiBcIlxcZjEyY1wiLFxuICAgIHN1YndheTogXCJcXGYyMzlcIixcbiAgICBzdWl0Y2FzZTogXCJcXGYwZjJcIixcbiAgICBzdW4tbzogXCJcXGYxODVcIixcbiAgICBzdXBlcnNjcmlwdDogXCJcXGYxMmJcIixcbiAgICBzdXBwb3J0OiBcIlxcZjFjZFwiLFxuICAgIHRhYmxlOiBcIlxcZjBjZVwiLFxuICAgIHRhYmxldDogXCJcXGYxMGFcIixcbiAgICB0YWNob21ldGVyOiBcIlxcZjBlNFwiLFxuICAgIHRhZzogXCJcXGYwMmJcIixcbiAgICB0YWdzOiBcIlxcZjAyY1wiLFxuICAgIHRhc2tzOiBcIlxcZjBhZVwiLFxuICAgIHRheGk6IFwiXFxmMWJhXCIsXG4gICAgdGVsZXZpc2lvbjogXCJcXGYyNmNcIixcbiAgICB0ZW5jZW50LXdlaWJvOiBcIlxcZjFkNVwiLFxuICAgIHRlcm1pbmFsOiBcIlxcZjEyMFwiLFxuICAgIHRleHQtaGVpZ2h0OiBcIlxcZjAzNFwiLFxuICAgIHRleHQtd2lkdGg6IFwiXFxmMDM1XCIsXG4gICAgdGg6IFwiXFxmMDBhXCIsXG4gICAgdGgtbGFyZ2U6IFwiXFxmMDA5XCIsXG4gICAgdGgtbGlzdDogXCJcXGYwMGJcIixcbiAgICB0aHVtYi10YWNrOiBcIlxcZjA4ZFwiLFxuICAgIHRodW1icy1kb3duOiBcIlxcZjE2NVwiLFxuICAgIHRodW1icy1vLWRvd246IFwiXFxmMDg4XCIsXG4gICAgdGh1bWJzLW8tdXA6IFwiXFxmMDg3XCIsXG4gICAgdGh1bWJzLXVwOiBcIlxcZjE2NFwiLFxuICAgIHRpY2tldDogXCJcXGYxNDVcIixcbiAgICB0aW1lczogXCJcXGYwMGRcIixcbiAgICB0aW1lcy1jaXJjbGU6IFwiXFxmMDU3XCIsXG4gICAgdGltZXMtY2lyY2xlLW86IFwiXFxmMDVjXCIsXG4gICAgdGludDogXCJcXGYwNDNcIixcbiAgICB0b2dnbGUtZG93bjogXCJcXGYxNTBcIixcbiAgICB0b2dnbGUtbGVmdDogXCJcXGYxOTFcIixcbiAgICB0b2dnbGUtb2ZmOiBcIlxcZjIwNFwiLFxuICAgIHRvZ2dsZS1vbjogXCJcXGYyMDVcIixcbiAgICB0b2dnbGUtcmlnaHQ6IFwiXFxmMTUyXCIsXG4gICAgdG9nZ2xlLXVwOiBcIlxcZjE1MVwiLFxuICAgIHRyYWRlbWFyazogXCJcXGYyNWNcIixcbiAgICB0cmFpbjogXCJcXGYyMzhcIixcbiAgICB0cmFuc2dlbmRlcjogXCJcXGYyMjRcIixcbiAgICB0cmFuc2dlbmRlci1hbHQ6IFwiXFxmMjI1XCIsXG4gICAgdHJhc2g6IFwiXFxmMWY4XCIsXG4gICAgdHJhc2gtbzogXCJcXGYwMTRcIixcbiAgICB0cmVlOiBcIlxcZjFiYlwiLFxuICAgIHRyZWxsbzogXCJcXGYxODFcIixcbiAgICB0cmlwYWR2aXNvcjogXCJcXGYyNjJcIixcbiAgICB0cm9waHk6IFwiXFxmMDkxXCIsXG4gICAgdHJ1Y2s6IFwiXFxmMGQxXCIsXG4gICAgdHJ5OiBcIlxcZjE5NVwiLFxuICAgIHR0eTogXCJcXGYxZTRcIixcbiAgICB0dW1ibHI6IFwiXFxmMTczXCIsXG4gICAgdHVtYmxyLXNxdWFyZTogXCJcXGYxNzRcIixcbiAgICB0dXJraXNoLWxpcmE6IFwiXFxmMTk1XCIsXG4gICAgdHY6IFwiXFxmMjZjXCIsXG4gICAgdHdpdGNoOiBcIlxcZjFlOFwiLFxuICAgIHR3aXR0ZXI6IFwiXFxmMDk5XCIsXG4gICAgdHdpdHRlci1zcXVhcmU6IFwiXFxmMDgxXCIsXG4gICAgdW1icmVsbGE6IFwiXFxmMGU5XCIsXG4gICAgdW5kZXJsaW5lOiBcIlxcZjBjZFwiLFxuICAgIHVuZG86IFwiXFxmMGUyXCIsXG4gICAgdW5pdmVyc2l0eTogXCJcXGYxOWNcIixcbiAgICB1bmxpbms6IFwiXFxmMTI3XCIsXG4gICAgdW5sb2NrOiBcIlxcZjA5Y1wiLFxuICAgIHVubG9jay1hbHQ6IFwiXFxmMTNlXCIsXG4gICAgdW5zb3J0ZWQ6IFwiXFxmMGRjXCIsXG4gICAgdXBsb2FkOiBcIlxcZjA5M1wiLFxuICAgIHVzZDogXCJcXGYxNTVcIixcbiAgICB1c2VyOiBcIlxcZjAwN1wiLFxuICAgIHVzZXItbWQ6IFwiXFxmMGYwXCIsXG4gICAgdXNlci1wbHVzOiBcIlxcZjIzNFwiLFxuICAgIHVzZXItc2VjcmV0OiBcIlxcZjIxYlwiLFxuICAgIHVzZXItdGltZXM6IFwiXFxmMjM1XCIsXG4gICAgdXNlcnM6IFwiXFxmMGMwXCIsXG4gICAgdmVudXM6IFwiXFxmMjIxXCIsXG4gICAgdmVudXMtZG91YmxlOiBcIlxcZjIyNlwiLFxuICAgIHZlbnVzLW1hcnM6IFwiXFxmMjI4XCIsXG4gICAgdmlhY29pbjogXCJcXGYyMzdcIixcbiAgICB2aWRlby1jYW1lcmE6IFwiXFxmMDNkXCIsXG4gICAgdmltZW86IFwiXFxmMjdkXCIsXG4gICAgdmltZW8tc3F1YXJlOiBcIlxcZjE5NFwiLFxuICAgIHZpbmU6IFwiXFxmMWNhXCIsXG4gICAgdms6IFwiXFxmMTg5XCIsXG4gICAgdm9sdW1lLWRvd246IFwiXFxmMDI3XCIsXG4gICAgdm9sdW1lLW9mZjogXCJcXGYwMjZcIixcbiAgICB2b2x1bWUtdXA6IFwiXFxmMDI4XCIsXG4gICAgd2FybmluZzogXCJcXGYwNzFcIixcbiAgICB3ZWNoYXQ6IFwiXFxmMWQ3XCIsXG4gICAgd2VpYm86IFwiXFxmMThhXCIsXG4gICAgd2VpeGluOiBcIlxcZjFkN1wiLFxuICAgIHdoYXRzYXBwOiBcIlxcZjIzMlwiLFxuICAgIHdoZWVsY2hhaXI6IFwiXFxmMTkzXCIsXG4gICAgd2lmaTogXCJcXGYxZWJcIixcbiAgICB3aWtpcGVkaWEtdzogXCJcXGYyNjZcIixcbiAgICB3aW5kb3dzOiBcIlxcZjE3YVwiLFxuICAgIHdvbjogXCJcXGYxNTlcIixcbiAgICB3b3JkcHJlc3M6IFwiXFxmMTlhXCIsXG4gICAgd3JlbmNoOiBcIlxcZjBhZFwiLFxuICAgIHhpbmc6IFwiXFxmMTY4XCIsXG4gICAgeGluZy1zcXVhcmU6IFwiXFxmMTY5XCIsXG4gICAgeS1jb21iaW5hdG9yOiBcIlxcZjIzYlwiLFxuICAgIHktY29tYmluYXRvci1zcXVhcmU6IFwiXFxmMWQ0XCIsXG4gICAgeWFob286IFwiXFxmMTllXCIsXG4gICAgeWM6IFwiXFxmMjNiXCIsXG4gICAgeWMtc3F1YXJlOiBcIlxcZjFkNFwiLFxuICAgIHllbHA6IFwiXFxmMWU5XCIsXG4gICAgeWVuOiBcIlxcZjE1N1wiLFxuICAgIHlvdXR1YmU6IFwiXFxmMTY3XCIsXG4gICAgeW91dHViZS1wbGF5OiBcIlxcZjE2YVwiLFxuICAgIHlvdXR1YmUtc3F1YXJlOiBcIlxcZjE2NlwiLFxuKTtcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRnVuY3Rpb25zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gUmVtb3ZlIHRoZSB1bml0IG9mIGEgbGVuZ3RoXG5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW1iZXIpIHtcbiAgICBAaWYgdHlwZS1vZigkbnVtYmVyKSA9PSBcIm51bWJlclwiIGFuZCBub3QgdW5pdGxlc3MoJG51bWJlcikge1xuICAgICAgICBAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcbiAgICB9XG5cbiAgICBAcmV0dXJuICRudW1iZXI7XG59XG5cbi8vIFJlbWlmeVxuXG5AZnVuY3Rpb24gcmVtaWZ5KCRzaXplczogKCRzaXplMSwgJHNpemUyLCAkc2l6ZTMsICRzaXplNCksICRiYXNlOiBudWxsLCAkdW5pdDogbnVsbCkge1xuICAgICR2YWx1ZS1yZW06IG51bGw7XG5cbiAgICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgICAgICRiYXNlOiAxNjtcblxuICAgICAgICBAaWYgJHVuaXQgPT0gbnVsbCB7XG4gICAgICAgICAgICAkdW5pdDogcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICBAaWYgJHVuaXQgPT0gbnVsbCB7XG4gICAgICAgICAgICAkdW5pdDogZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaWYgJHZhbHVlLXJlbSA9PSBudWxsIHtcbiAgICAgICAgICAgIEBpZiB0eXBlLW9mKCRzaXplKSA9PSBcIm51bWJlclwiIHtcbiAgICAgICAgICAgICAgICAkdmFsdWUtcmVtOiAoc3RyaXAtdW5pdCgkc2l6ZSkgLyBzdHJpcC11bml0KCRiYXNlKSkgKyAkdW5pdDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICR2YWx1ZS1yZW06ICRzaXplO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgQGlmIHR5cGUtb2YoJHNpemUpID09IFwibnVtYmVyXCIge1xuICAgICAgICAgICAgICAgICR2YWx1ZS1yZW06ICR2YWx1ZS1yZW0gKyBcIiBcIiArICgoc3RyaXAtdW5pdCgkc2l6ZSkgLyBzdHJpcC11bml0KCRiYXNlKSkgKyAkdW5pdCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAkdmFsdWUtcmVtOiAkdmFsdWUtcmVtICsgXCIgXCIgKyAkc2l6ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gJHZhbHVlLXJlbTtcbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTWl4aW5zICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gcGxhY2Vob2xkZXJzXG5cbkBtaXhpbiBwbGFjZWhvbGRlciB7XG4gICAgOjpwbGFjZWhvbGRlciB7IEBjb250ZW50OyB9XG59XG5cbi8vIHF1YW50aXR5IHF1ZXJpZXNcblxuQG1peGluIHF1YW50aXR5LXF1ZXJ5KCRudW1iZXIsICRjb21wYXJpc29uOiBcImVxdWFsXCIpIHtcbiAgICAkbnRoOiBcIlwiO1xuXG4gICAgQGlmIGluZGV4KChcImdyZWF0ZXJcIiBcIm1vcmVcIiBcIj5cIiksICRjb21wYXJpc29uKSB7XG4gICAgICAgICRudGg6IFwibiArICN7JG51bWJlcn1cIjtcbiAgICB9XG5cbiAgICBAZWxzZSBpZiBpbmRleCggKFwibGVzc1wiIFwiZmV3ZXJcIiBcIjxcIiksICRjb21wYXJpc29uKSB7XG4gICAgICAgICRudGg6IFwiLW4gKyAjeyRudW1iZXJ9XCI7XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgaW5kZXgoKFwiZXF1YWxcIiBcInNhbWVcIiBcIj1cIiksICRjb21wYXJpc29uKSB7XG4gICAgICAgICRudGg6ICRudW1iZXI7XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICBAd2FybiBcIlNvcnJ5LCB0aGF0J3MgYW4gaW52YWxpZCAkY29tcGFyaXNvbiB2YWx1ZS5cIjtcbiAgICB9XG5cbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JG50aH0pOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgJixcbiAgICAgICAgJiB+ICoge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBxcS1lcXVhbCgkbnVtYmVyKSB7XG4gICAgQGluY2x1ZGUgcXVhbnRpdHktcXVlcnkoJG51bWJlciwgZXF1YWwpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gcXEtZ3JlYXRlcigkbnVtYmVyKSB7XG4gICAgQGluY2x1ZGUgcXVhbnRpdHktcXVlcnkoJG51bWJlciwgZ3JlYXRlcikge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBxcS1sZXNzKCRudW1iZXIpIHtcbiAgICBAaW5jbHVkZSBxdWFudGl0eS1xdWVyeSgkbnVtYmVyLCBsZXNzKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuLy8gbGF5ZXJzXG5cbkBtaXhpbiBsYXllcigkbGF5ZXItbmFtZSkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiBtYXAtZ2V0KCRsYXllcnMsICRsYXllci1uYW1lKTtcbn1cblxuLy8gaWNvbnNcblxuQG1peGluIGljb24oJGljb246IG51bGwpIHtcbiAgICBjb250ZW50OiBtYXAtZ2V0KCRmYS1pY29ucywgJGljb24pO1xuICAgIGZvbnQtZmFtaWx5OiBcImZvbnRhd2Vzb21lXCIsIHNhbnMtc2VyaWY7XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2Jhc2Uvbm9ybWFsaXplL19ub3JtYWxpemVcIjtcclxuQGltcG9ydCBcIi4uL2Jhc2UvZ3JpZC9fZ3JpZFwiO1xyXG5AaW1wb3J0IFwiLi4vYmFzZS9jb250ZW50L19jb250ZW50XCI7XHJcbkBpbXBvcnQgXCIuLi9iYXNlL3VzZXItY29udGVudC9fdXNlci1jb250ZW50XCI7XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2FydGljbGUtY2FyZC9fYXJ0aWNsZS1jYXJkXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2Jhbm5lci9fYmFubmVyXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2J1dHRvbi9fYnV0dG9uXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2NhbGxvdXQtY2FyZC9fY2FsbG91dC1jYXJkXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2NvbW1lbnRzL19jb21tZW50c1wiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9mb290ZXItY2FyZC9fZm9vdGVyLWNhcmRcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvZ2FsbGVyeS9fZ2FsbGVyeVwiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9pZnJhbWUvX2lmcmFtZVwiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9sb2dvL19sb2dvXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL21hcC9fbWFwXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL21lbnUtYnV0dG9uL19tZW51LWJ1dHRvblwiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9tZW51LWxpc3QvX21lbnUtbGlzdFwiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9uaW5qYS1mb3Jtcy9fbmluamEtZm9ybXNcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvc2VhcmNoLWZvcm0vX3NlYXJjaC1mb3JtXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL3N0b3J5L19zdG9yeVwiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9zd2lwZXIvX3N3aXBlclwiO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2xheW91dHMvcGFnZS9fcGFnZVwiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9oZWFkZXIvX2hlYWRlclwiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9uYXYtbW9iaWxlL19uYXYtbW9iaWxlXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL3NsaWRlc2hvdy9fc2xpZGVzaG93XCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2NvbnRlbnQvX2NvbnRlbnRcIjtcclxuQGltcG9ydCBcIi4uL2xheW91dHMvY2FsbG91dHMvX2NhbGxvdXRzXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL3BhcnRuZXJzL19wYXJ0bmVyc1wiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9mb290ZXIvX2Zvb3RlclwiO1xyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE5vcm1hbGl6ZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIGltcG9ydCB2ZW5kb3Igc3R5bGVzXG5cbkBpbXBvcnQgXCJub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9faW1wb3J0LW5vd1wiO1xuXG4vLyBjdXN0b20gc3R5bGVzXG5cbi8vIFNldCBldmVyeXRoaW5nIHRvIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4vLyBodHRwczovL2Nzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZS9cblxuaHRtbCB7XG4gICAgJiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgICYge1xuICAgICAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICAgIH1cbn1cblxuLy8gQmV0dGVyIHRleHQgcmVuZGVyaW5nXG5cbmh0bWwge1xuICAgICYge1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgICB9XG59XG5cbi8vIElFIHNuYXAgZml4XG5cbkAtbXMtdmlld3BvcnQge1xuICAgIHdpZHRoOiBkZXZpY2Utd2lkdGg7XG59XG5cbi8vIFJlbW92ZSBhcnJvd3Mgb24gbnVtYmVycyBhbmQgZGF0ZSBmaWVsZHMgaW4gV2Via2l0XG5cbjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbjo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmVcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4vLyBSZW1vdmUgYXJyb3dzIG9uIG51bWJlcnMgYW5kIGRhdGUgZmllbGRzIGluIE1vemlsbGFcblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgJiB7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lXG4gICAgfVxufVxuXG4vLyBSZXNldCBpdGFsaWNzIG9uIGFkZHJlc3NcblxuYWRkcmVzcyB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG59XG5cbi8vIFJlbW92ZSBtYXJnaW4gZnJvbSBmaWd1cmVzXG5cbmZpZ3VyZSB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbi8vIFJlbW92ZSBib3JkZXIgcmFkaXVzIGZyb20gaW5wdXRzIGFuZCBidXR0b25zIGluIGlPU1xuXG5idXR0b24sXG5pbnB1dCB7XG4gICAgJiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxufVxuIiwiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIEBpZiAkYmFzZS1mb250LWZhbWlseSB7XG4gICAgICAgIC8qIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS4gKi9cbiAgICAgICAgZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5O1xuICAgICAgfVxuICAgICAgQGlmICRiYXNlLWZvbnQtc2l6ZSAhPSAxNnB4IG9yICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAxICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogaWYoJGJhc2UtZm9udC1mYW1pbHksICRiYXNlLWZvbnQtZmFtaWx5LCBzYW5zLXNlcmlmKTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAgICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICAgKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGxlZ2VuZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gICAgICBwYWRkaW5nOiAwOyAvKiAzICovXG4gICAgICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAgICovXG5cbiAgICBwcm9ncmVzcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGludGVyYWN0aXZlKSB7XG4gICAgLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5cbiAgICBkZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIG1lbnUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qXG4gICAgICAgICAqIDEuIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgICAqIDIuIFNldCBjb25zaXN0ZW50IHNwYWNlIGZvciB0aGUgbGlzdCBzdHlsZSBpbWFnZS5cbiAgICAgICAgICovXG5cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApOyAvKiAxICovXG4gICAgICAgIHBhZGRpbmc6IDAgMCAwICRpbmRlbnQtYW1vdW50OyAvKiAyICovXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICAgKi9cblxuICAgICAgICBtZW51ICYsXG4gICAgICAgIG9sICYsXG4gICAgICAgIHVsICYge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoc2NyaXB0aW5nKSB7XG4gICAgLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgY2FudmFzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRlbXBsYXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShoaWRkZW4pIHtcbiAgICAvKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW2hpZGRlbl0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBudWxsICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEdyaWRseSAoYWRhcHRlZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9Jb25pY2FCaXphdS9ncmlkbHkpICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5yb3cge1xyXG4gICAgJixcclxuICAgICYtZGVza3RvcCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29sIHtcclxuICAgICYge1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQmFzaWMgR2xvYmFsIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiQnJ1c2hlclwiO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHNyYzogdXJsKFwiLi4vbWVkaWEvZm9udHMvYnJ1c2hlci93ZWJmb250LmVvdFwiKTtcbiAgICBzcmM6IHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9tZWRpYS9mb250cy9icnVzaGVyL3dlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL21lZGlhL2ZvbnRzL2JydXNoZXIvd2ViZm9udC5zdmcjYnJ1c2hlclwiKSBmb3JtYXQoXCJzdmdcIik7XG59XG5cbi50aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMjgsIDI0KTtcbiAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTgsIDI0KTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgJi4tc3ViIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoNDAsIDE2KTtcbiAgICB9XG5cbiAgICAmLi1wYXJ0bmVyLXN1YiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE4LCAxNikgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi50ZXh0IHtcbiAgICBjb2xvcjogJGZvcmVncm91bmQ7XG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAyMCwgMTYpO1xufVxuXG4ubGluayB7XG4gICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50X2FsdDtcbiAgICB9XG5cbiAgICAmLi1hbHQge1xuICAgICAgICBjb2xvcjogbGlnaHRlbigkcHJpbWFyeSwgMTAlKTtcbiAgICB9XG5cbiAgICAmLi1hbHQ6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktYWx0O1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVXNlciBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnVzZXItY29udGVudCB7XG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogVW5pdmVyc2FsICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRhY2NlbnRfYWx0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogSGVhZGVycyAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuICAgICAgICBjb2xvcjogJGZvcmVncm91bmQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIGVtIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250X2FsdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE4LCAxNik7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDMwLCAxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMjQsIDMwKTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDQsIDMwKTtcblxuICAgICAgICBlbSB7XG4gICAgICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjYsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDE2LCAyNik7XG4gICAgfVxuXG4gICAgaDIuLWFsdCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250X2FsdDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzQsIDE2KTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTYsIDIwKTtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIyLCAxNik7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAxNiwgMjIpO1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjAsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDE2LCAyMCk7XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgOCwgMTgpO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEdlbmVyYWwgVGV4dCAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIGxhYmVsLFxuICAgIG1lbnUsXG4gICAgb2wsXG4gICAgcCxcbiAgICB0YWJsZSxcbiAgICB1bCB7XG4gICAgICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE4LCAxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAyMCwgMTYpO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIGxhYmVscyAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogTGlzdHMgICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgbWVudSxcbiAgICBvbCxcbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDAgMCAyNCwgMTYpO1xuXG4gICAgICAgIG1lbnUsXG4gICAgICAgIG9sLFxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogVGFibGVzICAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgdGFibGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIC8vIGlPUyBmaXhcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtaWZ5KDEsIDE2KTtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgdGFibGUgdGQsXG4gICAgdGFibGUgdGgge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoNCA2LCAxNik7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG4gICAgdGFibGUgdGhlYWQgdGQsXG4gICAgdGFibGUgdGgge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIHRhYmxlIHRoZWFkIHRkLFxuICAgIHRhYmxlIHRoZWFkIHRoIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIH1cblxuICAgIHRhYmxlIHRmb290IHRkLFxuICAgIHRhYmxlIHRmb290IHRoIHtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIH1cblxuICAgIHRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB0ZCxcbiAgICB0YWJsZSB0cjpudGgtY2hpbGQoZXZlbikgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZF9hbHQ7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogQmxvY2tzIG9mIFRleHQgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgcHJlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGZvcmVncm91bmRfYWx0O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZm9yZWdyb3VuZDtcbiAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjAsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDM2LCAyMCk7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgyNCAzNiwgMjApO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHJlbWlmeSgzLCAxNikgc29saWQgJHByaW1hcnk7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAyNCwgMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDAgMjQsIDE2KTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBIUnMgICAgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBociB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtaWZ5KDMsIDE2KSBzb2xpZCAkYmFja2dyb3VuZF9hbHQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgyNCwgMTYpO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEltYWdlcyAgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogR2VuZXJhbCBGb3JtcyAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgaW5wdXQsXG4gICAgLnNlbGVjdCxcbiAgICBzZWxlY3QsXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBjb2xvcjogJGZvcmVncm91bmQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyNCwgMTYpO1xuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIEJ1dHRvbnMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIGJ1dHRvbixcbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTAsIDE2KTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDQgMTIsIDE2KTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cywgY29sb3IgMC4xNXM7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50X2FsdDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIENoZWNrYm94L1JhZGlvICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAmICsgbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW1pZnkoOCA4IDggMjQsIDE2KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYWNjZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogcmVtaWZ5KDEpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwwMDIwXCI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbWlmeSgxOCwgMTYpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgxNywgMTYpO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdG9wOiByZW1pZnkoNiwgMTYpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiByZW1pZnkoMTgsIDE2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxuICAgICAgICAmOmZvY3VzICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgICBvdXRsaW5lOiAtd2Via2l0LWZvY3VzLXJpbmctY29sb3IgYXV0byA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmW2Rpc2FibGVkXSArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmRfYWx0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBpY29uKFwiY2hlY2tcIik7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbihcImNpcmNsZVwiKTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBJbnB1dHMgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gICAgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAgIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXSxcbiAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAgIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gICAgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgICBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbiAgICBzZWxlY3QsXG4gICAgLnNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYWNjZW50O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDEwLCAxNik7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg4IDE2LCAxNik7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBTZWxlY3RzICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICAuc2VsZWN0IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5zZWxlY3Q6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGljb24oXCJzb3J0XCIpO1xuXG4gICAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI0LCAxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoNDIsIDI0KTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAuc2VsZWN0OjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI0LCAxNik7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoNDIsIDI0KTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAuc2VsZWN0IHNlbGVjdCB7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZVxuICAgICAgICAvLyB3ZWJraXQgZml4XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZVxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg5IDU0IDExIDEyLCAxNik7XG4gICAgICAgIC8vIGdlY2tvIGZpeFxuICAgICAgICB0ZXh0LWluZGVudDogMC4wMXB4O1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBcIlwiO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gdHJpZGVudCBmaXhcbiAgICAgICAgJjo6LW1zLWV4cGFuZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBmaXggZm9yIGluY29uc2lzdGFuY2llcyBhY2Nyb3NzIGJyb3dzZXJzXG5cbiAgICAuc2VsZWN0IG9wdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0RERERERDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIFRleHRhcmVhcyAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiByZW1pZnkoMTAwLCAxNik7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBBbGlnbm1lbnQgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICAuYWxpZ25jZW50ZXIsXG4gICAgLmFsaWdubGVmdCxcbiAgICAuYWxpZ25yaWdodCB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byByZW1pZnkoMzAsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQXJ0aWNsZSBDYXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmFydGljbGUtY2FyZCB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xuXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxNSwgMTYpO1xuICAgIH1cblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHJlbWlmeSgzLCAxNikgc29saWQgJGJhY2tncm91bmRfYWx0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMTUsIDE2KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbWlmeSgxNSwgMTYpO1xuICAgIH1cblxuICAgICYuLWJhbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg4MCAxNSAxNSwgMTYpO1xuICAgIH1cblxuICAgICYuLWV4Y2VycHQsXG4gICAgJi4tZXhjZXJwdDpub3QoOmxhc3QtY2hpbGQpIHsgLy8gb3ZlcnJpZGVzIGFib3ZlIHJ1bGVcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgICYuLW1hcCB7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDEwMDAsIDE2KTtcbiAgICB9XG5cbiAgICAmLi1wYXJ0bmVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgID4gLmltYWdlIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgzMCAwIDAsIDE2KTtcbiAgICB9XG5cbiAgICAmLi1leGNlcnB0ID4gLmltYWdlIHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMCAxNSwgMTYpO1xuICAgIH1cblxuICAgICYuLXBhcnRuZXIgPiAuaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgID4gLmltYWdlID4gaW1nLFxuICAgID4gLmltYWdlID4gYSA+IGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYuLXBhcnRuZXIgPiAuaW1hZ2UgPiAuY2FwdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbWlmeSgyMCwgMTYpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi4tcGFydG5lciA+IC5pbWFnZSA+IC5jYXB0aW9uID4gLnRleHQge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgIH1cblxuICAgID4gLmhlYWRlciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAmLi1iYW5uZXIgPiAuaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1hcnRpY2xlLWNhcmQtaGVhZGVyLWJhbm5lcl9tb2JpbGUucG5nXCIpIGNlbnRlciBib3R0b20gbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgI3tyZW1pZnkoNDgyLCAxNil9O1xuICAgICAgICBsZWZ0OiByZW1pZnkoMTUsIDE2KTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDUgMjAgMjgsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7cmVtaWZ5KDMwLCAxNil9KTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAmLi1leGNlcnB0ID4gLmhlYWRlciB7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCA4LCAxNik7XG4gICAgfVxuXG4gICAgJi4tYmFubmVyID4gLmhlYWRlciA+IC50aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI4LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICYuLWV4Y2VycHQgPiAuaGVhZGVyID4gLnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmLi1leGNlcnB0ID4gLmNvbnRlbnQgPiAudGV4dCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCYW5uZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uYmFubmVyLXdyYXBwZXIge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkd2FybmluZztcbiAgICB9XG5cbiAgICAmLi1ub3RpY2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKGRlc2F0dXJhdGUoYWRqdXN0LWh1ZSgkd2FybmluZywgMjMuNDc4MyksIDE2LjM2MzYpLCAyNS42ODYzKTtcbiAgICB9XG5cbiAgICA+IC5iYW5uZXIge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAkc2l0ZS13aWR0aCArIHB4O1xuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSgkc2l0ZS13aWR0aCk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbWlmeSg4MCwgMTYpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgPiAuYmFubmVyID4gLnRpdGxlIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtaWZ5KDIpIHNvbGlkIHRyYW5zcGFyZW50aXplKCRkYXJrLCAwLjkpO1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyNCwgMjQpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgyNCAxMDQgMjQgODYsIDI0KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgID4gLmJhbm5lciA+IC50aXRsZSA+IC5mYSB7XG4gICAgICAgIGNvbG9yOiAkd2FybmluZ19hbHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDQyLCAyNCk7XG4gICAgICAgIGxlZnQ6IHJlbWlmeSgzMCwgNDIpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuXG4gICAgJi4tbm90aWNlID4gLmJhbm5lciA+IC50aXRsZSA+IC5mYSB7XG4gICAgICAgIGNvbG9yOiBsaWdodGVuKGRlc2F0dXJhdGUoYWRqdXN0LWh1ZShsaWdodGVuKGRlc2F0dXJhdGUoYWRqdXN0LWh1ZSgkd2FybmluZywgMjMuNDc4MyksIDE2LjM2MzYpLCAyNS42ODYzKSwgMCksIDYuNzMwOCksIDI4LjAzOTIpO1xuICAgIH1cblxuICAgID4gLmJhbm5lciA+IC5leGNlcnB0IHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDI4LCAyNCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDI0IDMwLCAyNCk7XG4gICAgfVxuXG4gICAgPiAuYmFubmVyID4gLmV4Y2VycHQgPiBhIHtcbiAgICAgICAgY29sb3I6ICR3YXJuaW5nX2FsdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgICYuLW5vdGljZSA+IC5iYW5uZXIgPiAuZXhjZXJwdCA+IGEge1xuICAgICAgICBjb2xvcjogbGlnaHRlbihkZXNhdHVyYXRlKGFkanVzdC1odWUobGlnaHRlbihkZXNhdHVyYXRlKGFkanVzdC1odWUoJHdhcm5pbmcsIDIzLjQ3ODMpLCAxNi4zNjM2KSwgMjUuNjg2MyksIDApLCA2LjczMDgpLCAyOC4wMzkyKTtcbiAgICB9XG5cbiAgICA+IC5iYW5uZXIgPiAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgyNCAzMCwgMTUpO1xuICAgIH1cblxuICAgID4gLmJhbm5lciA+IC5jb250ZW50LnVzZXItY29udGVudCB7XG4gICAgICAgIG9sLFxuICAgICAgICBwLFxuICAgICAgICB0YWJsZSxcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTUsIDE2KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMjQsIDE1KTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2FybmluZ19hbHQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5iYW5uZXIgPiAuY29udGVudC51c2VyLWNvbnRlbnQge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKGRlc2F0dXJhdGUoYWRqdXN0LWh1ZShsaWdodGVuKGRlc2F0dXJhdGUoYWRqdXN0LWh1ZSgkd2FybmluZywgMjMuNDc4MyksIDE2LjM2MzYpLCAyNS42ODYzKSwgMCksIDYuNzMwOCksIDI4LjAzOTIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiAuYmFubmVyID4gLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoOTYsIDI0KTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDEwNCwgMjQpO1xuICAgIH1cblxuICAgID4gLmJhbm5lciA+IC5idXR0b24gPiAuZmEge1xuICAgICAgICBjb2xvcjogJHdhcm5pbmdfYWx0O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg0MiwgMjQpO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cblxuICAgICYuLW5vdGljZSA+IC5iYW5uZXIgPiAuYnV0dG9uID4gLmZhIHtcbiAgICAgICAgY29sb3I6IGxpZ2h0ZW4oZGVzYXR1cmF0ZShhZGp1c3QtaHVlKGxpZ2h0ZW4oZGVzYXR1cmF0ZShhZGp1c3QtaHVlKCR3YXJuaW5nLCAyMy40NzgzKSwgMTYuMzYzNiksIDI1LjY4NjMpLCAwKSwgNi43MzA4KSwgMjguMDM5Mik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCdXR0b24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uYnV0dG9uIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogJGJhY2tncm91bmQgIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjAsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDEwLCAyMCk7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMiAxNiwgMjApO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMsIGNvbG9yIDAuMTVzO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50X2FsdDtcbiAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ2FsbG91dCBDYXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmNhbGxvdXQtY2FyZCB7XHJcbiAgICAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5jYWxsb3V0LWljb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICA+IC5jYWxsb3V0LWljb24gPiAuY2FsbG91dC1pbWFnZSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCBhdXRvIDIwLCAxNik7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmNhbGxvdXQtdGl0bGUge1xyXG4gICAgICAgIGNvbG9yOiBsaWdodGVuKGRlc2F0dXJhdGUoYWRqdXN0LWh1ZSgkYWNjZW50LCAtNDUuODkwMyksIDUyLjczNjgpLCA1NS44ODI0KTtcclxuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyMCwgMTgpO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuY2FsbG91dC10aXRsZSA+IC5jYWxsb3V0LWxpbmsge1xyXG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmNhbGxvdXQtdGl0bGUgPiAuY2FsbG91dC1saW5rOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGxpZ2h0X2FsdDtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbW1lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIENvbW1lbnQgV3JhcHBlclxuXG4uY29tbWVudHMge1xuICAgIGJvcmRlci10b3A6IHJlbWlmeSgzLCAxNikgc29saWQgJGJhY2tncm91bmRfYWx0O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi10b3A6IHJlbWlmeSgzNSwgMTYpO1xuICAgIHBhZGRpbmctdG9wOiByZW1pZnkoMzUsIDE2KTtcbn1cblxuLy8gQ29tbWVudCBUaXRsZVxuXG4uY29tbWVudHMtdGl0bGUge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi8vIENvbW1lbnQgTGlzdFxuXG4uY29tbWVudC1saXN0LFxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDQ4LCAxNik7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5jaGlsZHJlbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbi5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDAgMzIsIDE2KTtcbn1cblxuLmNvbW1lbnQge1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4uY29tbWVudC1ib2R5IHtcbiAgICBAZXh0ZW5kICVjbGVhcmZpeDtcblxuICAgIGJvcmRlci1ib3R0b206IHJlbWlmeSgzKSBzb2xpZCAkYmFja2dyb3VuZF9hbHQ7XG4gICAgcGFkZGluZzogcmVtaWZ5KDIwIDAsIDE2KTtcbn1cblxuLmNvbW1lbnQtbWV0YSB7XG4gICAgQGV4dGVuZCAlY2xlYXJmaXg7XG5cbiAgICBjb2xvcjogJGZvcmVncm91bmQ7XG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAxMCwgMjApO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbWVudC1hdXRob3IgYSB7XG4gICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jb21tZW50LW1ldGFkYXRhIGEge1xuICAgIGNvbG9yOiAkYWNjZW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmNvbW1lbnQtZWRpdC1saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gICAgd2lkdGg6IHJlbWlmeSgyMCwgMjApO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbihcInBlbmNpbFwiKTtcblxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyNSwgMjApO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuXG4uY29tbWVudC1jb250ZW50IHtcbiAgICBAZXh0ZW5kIC51c2VyLWNvbnRlbnQ7XG59XG5cbi5jb21tZW50LXJlcGx5LWxpbmsge1xuICAgIEBleHRlbmQgLmJ1dHRvbjtcblxuICAgIG1hcmdpbjogMDtcbn1cblxuLy8gQ29tbWVudCBQYWdpbmF0aW9uXG5cbi5jb21tZW50cy1uYXYge1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZF9hbHQ7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMTcsIDE2KTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMzEuNzc3Nzc3Nzc3Nzc3NzgsIDE3KTtcbiAgICBtYXJnaW46IHJlbWlmeSgwIDAgMjAsIDE4KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jb21tZW50cy1uYXYgLnBhZ2UtbnVtYmVycyB7XG4gICAgYm9yZGVyOiByZW1pZnkoMykgc29saWQgJGJhY2tncm91bmRfYWx0O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogJGJhY2tncm91bmRfYWx0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IHJlbWlmeSg0MCwgMTgpO1xuICAgIG1hcmdpbjogcmVtaWZ5KDAgMywgMTgpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzLCBjb2xvciAwLjE1cztcbiAgICB3aWR0aDogcmVtaWZ5KDQwLCAxOCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYWNjZW50O1xuICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICB9XG5cbiAgICAmLmN1cnJlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZm9yZWdyb3VuZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbn1cblxuLmNvbW1lbnRzLW5hdiAucHJldi5wYWdlLW51bWJlcnM6ZW1wdHksXG4uY29tbWVudHMtbmF2IC5uZXh0LnBhZ2UtbnVtYmVyczplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gQ29tbWVudCBGb3JtXG5cbi5jb21tZW50LWZvcm0tdGl0bGUge1xuICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDgsIDMwKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY29tbWVudC1sb2dnZWQtaW4ge1xuICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICBmb250LXNpemU6IHJlbWlmeSgxNywgMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDgsIDE4KTtcbn1cblxuLmNvbW1lbnQtbG9nZ2VkLWluIGEge1xuICAgIGNvbG9yOiAkYWNjZW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2Zvcm06IGNvbG9yIDAuMTVzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50X2FsdDtcbiAgICB9XG59XG5cbi5jb21tZW50LWlucHV0IHtcbiAgICBib3JkZXI6IHJlbWlmeSgzKSBzb2xpZCAkYWNjZW50O1xuICAgIGNvbG9yOiAkZm9yZWdyb3VuZDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICBmb250LXNpemU6IHJlbWlmeSgxNywgMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDIwLCAxOCk7XG4gICAgcGFkZGluZzogcmVtaWZ5KDEyIDE2LCAxOCk7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgICB3aWR0aDogMTAwJTtcbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogRm9vdGVyIENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmZvb3Rlci1jYXJkIHtcclxuICAgICYge1xyXG4gICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMCAwLCAxNik7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWZpcnN0bW9iaWxlIHtcclxuICAgICAgICBvcmRlcjogMTtcclxuICAgIH1cclxuXHJcbiAgICAudGl0bGUge1xyXG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNSwgMTYpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnRleHQge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE1LCAxNik7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAyMCwgMTUpO1xyXG4gICAgfVxyXG5cclxuICAgIGEsIC8vIGZvciBhdXRvIGhpZ2hsaWdodGluZyBwaG9uZSBudW1iZXJzXHJcbiAgICAubGluayB7XHJcbiAgICAgICAgY29sb3I6ICRmb3JlZ3JvdW5kO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgIC8vIGZvciBhdXRvIGhpZ2hsaWdodGluZyBwaG9uZSBudW1iZXJzXHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7ICAvLyBmb3IgYXV0byBoaWdobGlnaHRpbmcgcGhvbmUgbnVtYmVyc1xyXG4gICAgfVxyXG5cclxuICAgIGE6aG92ZXIsIC8vIGZvciBhdXRvIGhpZ2hsaWdodGluZyBwaG9uZSBudW1iZXJzXHJcbiAgICAubGluazpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRmb3JlZ3JvdW5kX2FsdDtcclxuICAgIH1cclxuXHJcbiAgICAubG9nbyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoODUsIDE2KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEdhbGxlcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5nYWxsZXJ5IHtcclxuICAgIC5nYWxsZXJ5LWl0ZW0gaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDFlbSBhdXRvO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogaWZyYW1lICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmlmcmFtZSB7XG4gICAgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgPiBpZnJhbWUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExvZ28gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5sb2dvIHtcclxuICAgICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgID4gaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIE1hcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbiNtYXAge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogMTtcclxufVxyXG5cclxuLmluZm9ib3gtY29udGVudCB7XHJcbiAgICBmb250LXNpemU6IHJlbWlmeSgxNik7XHJcbiAgICBwYWRkaW5nOiByZW1pZnkoMTIgMCAxMiAyNCwgMTYpO1xyXG59XHJcblxyXG4uaW5mb2JveC1pbWFnZSBpbWcge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxufVxyXG5cclxuLmluZm9ib3gtdGl0bGUge1xyXG4gICAgY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XHJcbiAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5pbmZvYm94LXRleHQge1xyXG4gICAgY29sb3I6ICRmb3JlZ3JvdW5kO1xyXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XHJcbiAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5pbmZvYm94LWxpbmsge1xyXG4gICAgJiB7XHJcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cztcclxuICAgIH1cclxuXHJcbiAgICAmLi1hZGRyZXNzIHtcclxuICAgICAgICBjb2xvcjogJGZvcmVncm91bmQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5X2FsdDtcclxuICAgIH1cclxuXHJcbiAgICAmLi1hZGRyZXNzOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGZvcmVncm91bmRfYWx0O1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTWVudSBCdXRvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLm1lbnUtYnV0dG9uIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogJGFjY2VudDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDM2KTtcbiAgICB9XG5cbiAgICAmID4gLmZhIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudDtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDM2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgzNi41LCAyMCk7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNZW51IExpc3QgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBnZW5lcmljIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdCB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xuXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAubWVudS1saW5rIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg4IDEyLCAxNik7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG4gICAgfVxuXG4gICAgLm1lbnUtbGluazpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeV9hbHQ7XG4gICAgfVxuXG4gICAgLm1lbnUtdG9nZ2xlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbGV4OiBub25lO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxMiwgMTYpO1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgzMiwgMTIpO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDMyLCAxMik7XG4gICAgfVxuXG4gICAgLm1lbnUtdG9nZ2xlOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5X2FsdDtcbiAgICB9XG5cbiAgICAubWVudS10b2dnbGUgPiAuZmEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMzIsIDEyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgzMiwgMTIpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi8qIHN1Ym1lbnUgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0Li1zdWJtZW51IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGxlZnQ6IC05OTllbTtcbiAgICAgICAgbWluLXdpZHRoOiByZW1pZnkoMTUwLCAxNik7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtOTk5ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgMHMgMC4xNXMsIG9wYWNpdHkgMC4xNXMsIHRvcCAwcyAwLjE1cztcbiAgICB9XG5cbiAgICAubWVudS1pdGVtOmhvdmVyID4gJiB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwcyAwLjI1cywgb3BhY2l0eSAwLjE1cyAwLjI1cywgdG9wIDBzIDAuMjVzO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG5cbiAgICAubWVudS1saW5rIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDQgMTIsIDE0KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cztcbiAgICB9XG5cbiAgICAubWVudS1saW5rOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnRpemUoJGxpZ2h0LCAwLjkpO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW06Zmlyc3QtY2hpbGQgPiAubWVudS1saW5rIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSg4LCAxNCk7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbTpsYXN0LWNoaWxkID4gLm1lbnUtbGluayB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW1pZnkoOCwgMTQpO1xuICAgIH1cblxuICAgIC5tZW51LXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXM7XG4gICAgfVxuXG4gICAgLm1lbnUtdG9nZ2xlOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnRpemUoJGxpZ2h0LCAwLjkpO1xuICAgIH1cbn1cblxuLyogc3VibWVudSBmbHlvdXQgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0Li1zdWJtZW51Li1mbHlvdXQge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeV9hbHQ7XG4gICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAubWVudS1pdGVtOmhvdmVyID4gJiB7XG4gICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG59XG5cbi8qIHZlcnRpY2FsIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC4tdmVydGljYWwge1xuICAgICYge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuMjVzO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51Li1hY3RpdmUge1xuICAgICAgICBtYXgtaGVpZ2h0OiByZW1pZnkoNDAwLCAxNik7XG4gICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC41cztcbiAgICB9XG5cbiAgICAubWVudS1pdGVtLFxuICAgIC5tZW51LWxpc3QuLXN1Ym1lbnUgPiAubWVudS1pdGVtLFxuICAgIC5tZW51LWxpc3QuLXN1Ym1lbnUuLWZseW91dCA+IC5tZW51LWl0ZW0ge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cblxuICAgIC5tZW51LWxpbmsge1xuICAgICAgICB3aWR0aDogMDtcbiAgICB9XG59XG5cbi8qIG5hdiB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QuLW5hdiB7XG4gICAgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI0LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgICBmbGV4OiBub25lO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0uLWxvZ28ge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB9XG5cbiAgICAubWVudS1saW5rIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxNSAzMCwgMjQpO1xuICAgIH1cblxuICAgIC5tZW51LWxpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGFjY2VudF9hbHQ7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbS4tbG9nbyA+IC5tZW51LWxpbmsge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbS4tbG9nbyA+IC5tZW51LWxpbmsgPiBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdC4tc3VibWVudSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1saW5rIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51IC5tZW51LWxpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGxpZ2h0X2FsdDtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51Li1mbHlvdXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjZW50X2FsdDtcbiAgICB9XG59XG5cbi8qIG5hdiB2ZXJ0aWNhbCB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QuLW5hdi4tdmVydGljYWwge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEwIDAsIDI0KTtcbiAgICB9XG5cbiAgICAubWVudS1saW5rIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEwIDIwLCAyNCk7XG4gICAgfVxuXG4gICAgLm1lbnUtbGluazpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHRfYWx0O1xuICAgIH1cblxuICAgIC5tZW51LXRvZ2dsZSB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgfVxuXG4gICAgLm1lbnUtdG9nZ2xlOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRsaWdodF9hbHQ7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdC4tc3VibWVudSAubWVudS1saW5rIHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEwIDIwLCAyNCk7XG4gICAgfVxufVxuXG4vKiBzaXRlbWFwIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC4tc2l0ZW1hcCB7XG4gICAgLm1lbnUtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiLVwiO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDIuNSwgMTUpO1xuICAgIH1cblxuICAgIC5tZW51LWxpbmsge1xuICAgICAgICBjb2xvcjogJGZvcmVncm91bmQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubWVudS1saW5rOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRmb3JlZ3JvdW5kX2FsdDtcbiAgICB9XG59XG5cbi8qIG1ldGEgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0Li1tZXRhIHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6ICRhY2NlbnQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDEyIDAgMCwgMTgpO1xuICAgIH1cblxuICAgIC5tZW51LWxpbmssXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYWNjZW50O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAubWVudS1saW5rOmhvdmVyLFxuICAgIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGFjY2VudF9hbHQ7XG4gICAgfVxuXG4gICAgLmZhIHtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCA0IDAgMCwgMTgpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSB8IGphY29iQGJlYXJjZS5tZVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBOaW5qYSBGb3JtcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uaHAtd3JhcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5mLWZvcm0tZmllbGRzLXJlcXVpcmVkIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMzIsIDE2KTtcbn1cblxuLm5pbmphLWZvcm1zLXJlcS1zeW1ib2wge1xuICAgIGNvbG9yOiAkd2FybmluZztcbn1cblxuLm5pbmphLWZvcm1zLXJlcXVpcmVkLWl0ZW1zIHtcbiAgICBAZXh0ZW5kIC50ZXh0O1xufVxuXG4ubmluamEtcm93IHtcbiAgICBAZXh0ZW5kIC5yb3c7XG59XG5cbltjbGFzcyo9XCJuaW5qYS1jb2wtXCJdIHtcbiAgICBAZXh0ZW5kIC5jb2w7XG59XG5cbi5maWVsZC13cmFwIHtcbiAgICAmLmxhYmVsLWxlZnQsXG4gICAgJi5sYWJlbC1yaWdodCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICYubGFiZWwtbGVmdCBsYWJlbCxcbiAgICAmLmxhYmVsLXJpZ2h0IGxhYmVsIHtcbiAgICAgICAgZmxleDogbm9uZTtcbiAgICB9XG5cbiAgICAmLmxhYmVsLWFib3ZlIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDYsIDE2KTtcbiAgICB9XG5cbiAgICAmLmxhYmVsLWJlbG93IGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDEwLCAxNik7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbWlmeSg2LCAxNik7XG4gICAgfVxuXG4gICAgJi5sYWJlbC1sZWZ0IGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW1pZnkoMTIsIDE2KTtcbiAgICB9XG5cbiAgICAmLmxhYmVsLXJpZ2h0IGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbWlmeSgxMiwgMTYpO1xuICAgIH1cblxuICAgICYubGFiZWwtYmVsb3cgLm5pbmphLWZvcm1zLWZpZWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmLmxhYmVsLWxlZnQgLm5pbmphLWZvcm1zLWZpZWxkLFxuICAgICYubGFiZWwtcmlnaHQgLm5pbmphLWZvcm1zLWZpZWxkIHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgfVxuXG4gICAgJi5saXN0LXNlbGVjdC13cmFwIC5uaW5qYS1mb3Jtcy1maWVsZCB7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAxMCwgMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMTEuNSAxNiwgMTYpO1xuICAgIH1cblxuICAgICYuaHRtbC13cmFwIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDgsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFNlYXJjaCBmb3JtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zZWFyY2gtZm9ybSB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYWNjZW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRmb3JlZ3JvdW5kX2FsdDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICA+IC5sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIH1cblxuICAgID4gLmlucHV0IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBjb2xvcjogJGZvcmVncm91bmQ7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDggMTIsIDE2KTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgPiAuc3VibWl0IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoOCAxMiwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3RvcnkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnN0b3J5IHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XG5cbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1ncmVlbi5qcGdcIikgcmlnaHQgY2VudGVyIG5vLXJlcGVhdCAkYWNjZW50O1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzUgMjUsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgei1pbmRleDogNDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmLi1wcmltYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yZWQuanBnXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0ICRwcmltYXJ5O1xuICAgIH1cblxuICAgICYuLXNlY29uZGFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtYmx1ZS5qcGdcIikgbGVmdCBjZW50ZXIgbm8tcmVwZWF0ICRzZWNvbmRhcnk7XG4gICAgfVxuXG4gICAgJi4tdGVydGlhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWdyYXkuanBnXCIpIHJpZ2h0IGNlbnRlciBuby1yZXBlYXQgJHRlcnRpYXJ5O1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQ6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiByZW1pZnkoMTgsIDE2KSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW1pZnkoMTgsIDE2KSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogcmVtaWZ5KDEyLCAxNikgc29saWQgJGFjY2VudDtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGxpZ2h0O1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgLy8gZm9yIHNvbWUgcmVhc29uIHRoaXMgbmVlZHMgIWltcG9ydGFudFxuICAgIH1cblxuICAgICYuLXByaW1hcnk6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiByZW1pZnkoMjUsIDE2KTtcbiAgICB9XG5cbiAgICAmLi1zZWNvbmRhcnk6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHNlY29uZGFyeTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KDI1LCAxNik7XG4gICAgfVxuXG4gICAgJi4tdGVydGlhcnk6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRlcnRpYXJ5O1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogNTAlO1xuICAgIH1cblxuICAgIC51c2VyLWNvbnRlbnQgaDEsXG4gICAgLnVzZXItY29udGVudCBoMixcbiAgICAudXNlci1jb250ZW50IGgzLFxuICAgIC51c2VyLWNvbnRlbnQgaDQsXG4gICAgLnVzZXItY29udGVudCBoNSxcbiAgICAudXNlci1jb250ZW50IGg2LFxuICAgIC51c2VyLWNvbnRlbnQgbWVudSxcbiAgICAudXNlci1jb250ZW50IG9sLFxuICAgIC51c2VyLWNvbnRlbnQgcCxcbiAgICAudXNlci1jb250ZW50IHRhYmxlLFxuICAgIC51c2VyLWNvbnRlbnQgdWwge1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgIH1cblxuICAgIC51c2VyLWNvbnRlbnQgaDIuLWFsdCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAudXNlci1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3dpcGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gaW1wb3J0IGJhc2Ugc3R5bGVzXG5cbkBpbXBvcnQgXCJzd2lwZXIvZGlzdC9jc3Mvc3dpcGVyXCI7XG5cbi8vIGN1c3RvbSBzdHlsZXNcblxuLnBhcnRuZXJzLXRpdGxlIHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMjIgMCA4LCAyNCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAucGFydG5lcnMtd3JhcHBlciAmIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDEyLCAyNCk7XG4gICAgfVxufVxuXG4ucGFydG5lcnMtc2xpZGVyIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yaWJib25fbW9iaWxlLnBuZ1wiKSBjZW50ZXIgbGVmdCByZXBlYXQteDtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAyNSwgMTYpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMzAsIDE2KTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXJpYmJvbi1sZWZ0X21vYmlsZS5wbmdcIik7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KC01LCAxNik7XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1yaWJib24tcmlnaHRfbW9iaWxlLnBuZ1wiKTtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbWlmeSgtNSwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1jb250YWluZXIge1xuICAgICYuLXBhcnRuZXJzIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmLi1wYXJ0bmVyczo6YmVmb3JlLFxuICAgICYuLXBhcnRuZXJzOjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogcmVtaWZ5KDYsIDE2KTtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiByZW1pZnkoNiwgMTYpO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDYwLCAxNik7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICB9XG5cbiAgICAmLi1wYXJ0bmVyczo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHRyYW5zcGFyZW50aXplKCRsaWdodCwgMSkgMCUsIHRyYW5zcGFyZW50aXplKCRsaWdodCwgMC4yNSkgNTAlLCAkbGlnaHQgMTAwJSk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJi4tcGFydG5lcnM6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudGl6ZSgkbGlnaHQsIDEpIDAlLCB0cmFuc3BhcmVudGl6ZSgkbGlnaHQsIDAuMjUpIDUwJSwgJGxpZ2h0IDEwMCUpO1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAmLi1zbGlkZXNob3cge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZF9hbHQ7XG4gICAgfVxufVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDk2LCAxNik7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAmIC5wYXJ0bmVyLWNhcmQge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMTIuNSAyNSwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1zbGlkZSBpbWcge1xuICAgIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtaGVpZ2h0OiByZW1pZnkoNjAsIDE2KTtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnN3aXBlci1jb250YWluZXIuLXNsaWRlc2hvdyAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDM2NSk7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDk2LCAxNik7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg0OCwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9pY29uLWFycm93LWxlZnRfbW9iaWxlLnBuZ1wiKTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KC00OCwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9pY29uLWFycm93LXJpZ2h0X21vYmlsZS5wbmdcIik7XG4gICAgICAgIHJpZ2h0OiByZW1pZnkoLTQ4LCAxNik7XG4gICAgfVxufVxuXG4vLyBkaXNwbGF5IHRoZSBmaXJzdCBzbGlkZSBpbiBvbGRlciBicm93c2Vyc1xuXG4ubm8tY3NzdHJhbnNmb3JtcyAuc3dpcGVyLXNsaWRlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4iLCIvKipcbiAqIFN3aXBlciA0LjUuMFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMTkgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogRmVicnVhcnkgMjIsIDIwMTlcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtd2Via2l0LWJveC1kaXJlY3Rpb246IG5vcm1hbDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xufVxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3cgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAtbXMtZmxleC1uZWdhdGl2ZTogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGhlaWdodCwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLyogM0QgRWZmZWN0cyAqL1xuLnN3aXBlci1jb250YWluZXItM2Qge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXdyYXBwZXIsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIHJpZ2h0IHRvcCwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgYm90dG9tLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4vKiBJRTEwIFdpbmRvd3MgUGhvbmUgOCBGaXhlcyAqL1xuLnN3aXBlci1jb250YWluZXItd3A4LWhvcml6b250YWwsXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsLFxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyN3B4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC4zNTtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICByaWdodDogMTBweDtcbiAgbGVmdDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbi5zd2lwZXItYnV0dG9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC4yO1xufVxuYnV0dG9uLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogNnB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgdG9wLCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdG9wLCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wO1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIHRvcCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogMCA0cHg7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAyMDBtcyBsZWZ0LCAyMDBtcyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogMjAwbXMgbGVmdCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgbGVmdDtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0O1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbC5zd2lwZXItY29udGFpbmVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMjAwbXMgcmlnaHQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAyMDBtcyByaWdodCwgMjAwbXMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQsIDIwMG1zIC13ZWJraXQtdHJhbnNmb3JtO1xufVxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6ICMwMDdhZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLFxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLFxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogU2Nyb2xsYmFyICovXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxJTtcbiAgYm90dG9tOiAzcHg7XG4gIHotaW5kZXg6IDUwO1xuICBoZWlnaHQ6IDVweDtcbiAgd2lkdGg6IDk4JTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcge1xuICBjdXJzb3I6IG1vdmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBpbWcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gc3ZnLFxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGNhbnZhcyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgLW8tb2JqZWN0LWZpdDogY29udGFpbjtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cbi5zd2lwZXItc2xpZGUtem9vbWVkIHtcbiAgY3Vyc29yOiBtb3ZlO1xufVxuLyogUHJlbG9hZGVyICovXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIxcHg7XG4gIG1hcmdpbi10b3A6IC0yMXB4O1xuICB6LWluZGV4OiAxMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyOmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMTIwJTIwMTIwJyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB4bWxucyUzQXhsaW5rJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJyUzRSUzQ2RlZnMlM0UlM0NsaW5lJTIwaWQlM0QnbCclMjB4MSUzRCc2MCclMjB4MiUzRCc2MCclMjB5MSUzRCc3JyUyMHkyJTNEJzI3JyUyMHN0cm9rZSUzRCclMjM2YzZjNmMnJTIwc3Ryb2tlLXdpZHRoJTNEJzExJyUyMHN0cm9rZS1saW5lY2FwJTNEJ3JvdW5kJyUyRiUzRSUzQyUyRmRlZnMlM0UlM0NnJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoNjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDkwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxMjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE1MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjM3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTgwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNDYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyMTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy41NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI0MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjY2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjcwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNzUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy44NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMzMCUyMDYwJTJDNjApJyUyRiUzRSUzQyUyRmclM0UlM0MlMkZzdmclM0VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyogYTExeSAqL1xuLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwO1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZS5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSAuc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjY7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDUwcHgpO1xuICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gIHotaW5kZXg6IDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnN3aXBlci1jb250YWluZXItY292ZXJmbG93IC5zd2lwZXItd3JhcHBlciB7XG4gIC8qIFdpbmRvd3MgOCBJRSAxMCBmaXggKi9cbiAgLW1zLXBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFBhZ2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbjpyb290IHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICB9XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgICAmIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG5ib2R5IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgfVxufVxuXG5odG1sLi1uYXZhY3RpdmUsXG5odG1sLi1uYXZhY3RpdmUgYm9keSB7XG4gICAgJiB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4ucGFnZS13cmFwcGVyIHtcbiAgICAmIHtcblxuICAgICAgICAvLyBHUFUgcmVuZGVyaW5nXG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBlcnNwZWN0aXZlOiAxMDAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjM1cywgbGVmdCAwLjM1cztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgaHRtbC4tbmF2YWN0aXZlICYge1xuICAgICAgICBib3gtc2hhZG93OiByZW1pZnkoMCAwIDEwLCAxNikgYmxhY2soMC41KTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAtICRtb2JpbGUtbmF2LXdpZHRoICsgcHg7XG4gICAgICAgIGxlZnQ6IC0gcmVtaWZ5KCRtb2JpbGUtbmF2LXdpZHRoKTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWFkZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uaGVhZGVyLXdyYXBwZXIge1xyXG4gICAgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGF5ZXIoXCJoZWFkZXJcIik7XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKCRsaWdodCwgMC4xKTtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDggMzIsIDE2KTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmhlYWRlci1ibG9jayB7XHJcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoKTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5oZWFkZXItYmxvY2sgPiAubG9nbyB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6IHJlbWlmeSgxNjApO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmhlYWRlci1ibG9jayA+IC5tZW51LWJ1dHRvbiB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDQgMCAwKTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vYmlsZSBOYXZpZ2F0aW9uICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8vIHdyYXBwZXJcblxuLm1vYmlsZS1uYXYtd3JhcHBlciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XG4gICAgICAgIGJvdHRvbTogOTk5ZW07XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA5OTllbTtcbiAgICAgICAgdG9wOiAtOTk5ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwcyAwLjM1cywgcmlnaHQgMHMgMC4zNXMsIHRvcCAwcyAwLjM1cztcbiAgICAgICAgd2lkdGg6IHJlbWlmeSgkbW9iaWxlLW5hdi13aWR0aCwgMTYpO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC4tbmF2YWN0aXZlICYge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLi1uYXZhY3RpdmUgLmFkbWluLWJhciAmIHtcbiAgICAgICAgdG9wOiA0NnB4O1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc4M3B4KSB7XG4gICAgICAgIC4tbmF2YWN0aXZlIC5hZG1pbi1iYXIgJiB7XG4gICAgICAgICAgICB0b3A6IDMycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51IHtcbiAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkYWNjZW50LCA1KTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Li1zdWJtZW51Li1mbHlvdXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRhY2NlbnQsIDEwKTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIFNsaWRlc2hvdyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5zbGlkZXNob3ctd3JhcHBlciB7XHJcbiAgICAmIHtcclxuICAgICAgICBAaW5jbHVkZSBsYXllcihcInNsaWRlc2hvd1wiKTtcclxuXHJcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5zbGlkZXNob3ctYmxvY2sge1xyXG4gICAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIGxheWVyKFwiY29udGVudFwiKTtcblxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnQuanBnXCIpIGNlbnRlciB0b3Agbm8tcmVwZWF0IGRhcmtlbihzYXR1cmF0ZShhZGp1c3QtaHVlKCRiYWNrZ3JvdW5kLCA1MS40Mjg2KSwgMzAuNDM0OCksIDQuNTA5OCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMTAgMTUgMzAsIDE2KTtcbiAgICB9XG5cbiAgICAuaG9tZSAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgzMCwgMTYpO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudC1iZWZvcmVfbW9iaWxlLmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDE4MCwgMTYpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5ob21lICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgPiAuY29udGVudC1ibG9jayB7XG4gICAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xuXG4gICAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5ob21lICYgPiAuY29udGVudC1ibG9jayB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuXG4gICAgPiAucGFydG5lcnMtYmxvY2sge1xuICAgICAgICBAZXh0ZW5kICVjbGVhcmZpeDtcblxuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgsIDE2KTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMTUsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENhbGxvdXRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5jYWxsb3V0cy13cmFwcGVyIHtcclxuICAgICYge1xyXG4gICAgICAgIEBpbmNsdWRlIGxheWVyKFwiY2FsbG91dHNcIik7XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NlbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5jYWxsb3V0cy1ibG9jayB7XHJcbiAgICAgICAgQGV4dGVuZCAlY2xlYXJmaXg7XHJcblxyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoLCAxNik7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBQYXJ0bmVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4ucGFydG5lcnMtd3JhcHBlciB7XHJcbiAgICAmIHtcclxuICAgICAgICBAaW5jbHVkZSBsYXllcihcInBhcnRuZXJzXCIpO1xyXG5cclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXBhcnRuZXJzLXdyYXBwZXJfbW9iaWxlLmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgzNSAzMCA3NSwgMTYpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLnBhcnRuZXJzLWJsb2NrIHtcclxuICAgICAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxuXHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgsIDE2KTtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAxNSwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogRm9vdGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmZvb3Rlci13cmFwcGVyIHtcclxuICAgICYge1xyXG4gICAgICAgIEBpbmNsdWRlIGxheWVyKFwiZm9vdGVyXCIpO1xyXG5cclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDIwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuZm9vdGVyLWJsb2NrIHtcclxuICAgICAgICBAZXh0ZW5kICVjbGVhcmZpeDtcclxuXHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoLCAxNik7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDIwIDAsIDE2KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG5AaW1wb3J0IFwiaGVscGVycy9faGVscGVyc1wiO1xyXG5AaW1wb3J0IFwidmlld3MvX3NjcmVlblwiO1xyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHh4cy1icmVhaykge1xyXG4gICAgQGltcG9ydCBcInZpZXdzL19zY3JlZW5feHhzXCI7XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR4cy1icmVhaykge1xyXG4gICAgQGltcG9ydCBcInZpZXdzL19zY3JlZW5feHNcIjtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHMtYnJlYWspIHtcclxuICAgIEBpbXBvcnQgXCJ2aWV3cy9fc2NyZWVuX3NcIjtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG0tYnJlYWspIHtcclxuICAgIEBpbXBvcnQgXCJ2aWV3cy9fc2NyZWVuX21cIjtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGwtYnJlYWspIHtcclxuICAgIEBpbXBvcnQgXCJ2aWV3cy9fc2NyZWVuX2xcIjtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHhsLWJyZWFrKSB7XHJcbiAgICBAaW1wb3J0IFwidmlld3MvX3NjcmVlbl94bFwiO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkeHhsLWJyZWFrKSB7XHJcbiAgICBAaW1wb3J0IFwidmlld3MvX3NjcmVlbl94eGxcIjtcclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvc3dpcGVyL19zd2lwZXJfeHNcIjtcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTGF5b3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2xheW91dHMvcGFydG5lcnMvX3BhcnRuZXJzX3hzXCI7XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3dpcGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gY3VzdG9tIHN0eWxlc1xuXG4ucGFydG5lcnMtdGl0bGUge1xuICAgICYge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg0OCwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSg0OCAwIDIyLCA0OCk7XG4gICAgfVxuXG4gICAgLnBhcnRuZXJzLXdyYXBwZXIgJiB7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCA2MCwgNDgpO1xuICAgIH1cbn1cblxuLnBhcnRuZXJzLXNsaWRlciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uLnBuZ1wiKTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCA1NSwgMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAxMCwgMTYpO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoNTUsIDE2KTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLXJpYmJvbi1sZWZ0LnBuZ1wiKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcmliYm9uLXJpZ2h0LnBuZ1wiKTtcbiAgICB9XG59XG5cbi5zd2lwZXItY29udGFpbmVyIHtcbiAgICAmLi1wYXJ0bmVyczo6YmVmb3JlLFxuICAgICYuLXBhcnRuZXJzOjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogcmVtaWZ5KDEwLCAxNik7XG4gICAgICAgIHRvcDogcmVtaWZ5KDEwLCAxNik7XG4gICAgfVxufVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgJiB7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDE4OCwgMTYpO1xuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyLi1wYXJ0bmVycyAmIC5wYXJ0bmVyLWNhcmQge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjUgNTAsIDE2KTtcbiAgICB9XG59XG5cbi5zd2lwZXItc2xpZGUgaW1nIHtcbiAgICAuc3dpcGVyLWNvbnRhaW5lci4tcGFydG5lcnMgJiB7XG4gICAgICAgIG1heC1oZWlnaHQ6IHJlbWlmeSgxNDAsIDE2KTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLWNvbnRhaW5lci4tc2xpZGVzaG93ICYge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgxODgsIDE2KTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg2NiwgMTYpO1xuICAgIH1cblxuICAgIC5wYXJ0bmVycy13cmFwcGVyICYuLXBhcnRuZXJzIHtcbiAgICAgICAgb3BhY2l0eTogMC4zNTtcbiAgICB9XG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgICYuLXBhcnRuZXJzIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvaWNvbi1hcnJvdy1sZWZ0LnBuZ1wiKTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KC04MSwgMTYpO1xuICAgIH1cbn1cblxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgJi4tcGFydG5lcnMge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9pY29uLWFycm93LXJpZ2h0LnBuZ1wiKTtcbiAgICAgICAgcmlnaHQ6IHJlbWlmeSgtODEsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIFBhcnRuZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5wYXJ0bmVycy13cmFwcGVyIHtcclxuICAgICYge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtcGFydG5lcnMtd3JhcHBlci5qcGdcIik7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDgwIDMwIDE2MCwgMTYpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLnBhcnRuZXJzLWJsb2NrIHtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAyMCwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2hlbHBlcnMvX2hlbHBlcnNfc1wiO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0IFwiLi4vYmFzZS9ncmlkL19ncmlkX3NcIjtcclxuQGltcG9ydCBcIi4uL2Jhc2UvY29udGVudC9fY29udGVudF9zXCI7XHJcbkBpbXBvcnQgXCIuLi9iYXNlL3VzZXItY29udGVudC9fdXNlci1jb250ZW50X3NcIjtcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvYXJ0aWNsZS1jYXJkL19hcnRpY2xlLWNhcmRfc1wiO1xyXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9iYW5uZXIvX2Jhbm5lcl9zXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2NhbGxvdXQtY2FyZC9fY2FsbG91dC1jYXJkX3NcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvY29tbWVudHMvX2NvbW1lbnRzX3NcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvZm9vdGVyLWNhcmQvX2Zvb3Rlci1jYXJkX3NcIjtcclxuQGltcG9ydCBcIi4uL2NvbXBvbmVudHMvZ2FsbGVyeS9fZ2FsbGVyeV9zXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL25pbmphLWZvcm1zL19uaW5qYS1mb3Jtc19zXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL3NlYXJjaC1mb3JtL19zZWFyY2gtZm9ybV9zXCI7XHJcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL3N0b3J5L19zdG9yeV9zXCI7XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL3BhZ2UvX3BhZ2Vfc1wiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9oZWFkZXIvX2hlYWRlcl9zXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2NvbnRlbnQvX2NvbnRlbnRfc1wiO1xyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9mb290ZXIvX2Zvb3Rlcl9zXCI7XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogdmlzaWJpbGl0eSBjbGFzc2VzICovXHJcbi8vIGlkZWFsOiBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLWRpc3BsYXktMy8jcHJvcGRlZi1ib3gtc3VwcHJlc3NcclxuXHJcbi5fc2hvd21vYmlsZSxcclxuLl9oaWRldGFibGV0IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLl9zaG93dGFibGV0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBHcmlkbHkgKGFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vSW9uaWNhQml6YXUvZ3JpZGx5KSAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4ucm93IHtcclxuICAgICYge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tY2VudGVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY29sIHtcclxuICAgICYge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tdGVudGgge1xyXG4gICAgICAgIGZsZXg6IDAgMCAxMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZmlmdGgge1xyXG4gICAgICAgIGZsZXg6IDAgMCAyMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcXVhcnRlciB7XHJcbiAgICAgICAgZmxleDogMCAwIDI1JTtcclxuICAgIH1cclxuXHJcbiAgICAmLi10aGlyZCB7XHJcbiAgICAgICAgZmxleDogMCAwIDMzLjMzMzMzMzQlO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWhhbGYge1xyXG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXF1YWwge1xyXG4gICAgICAgIGZsZXg6IDEgMSAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1wYWRkZWQge1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDEwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcGFkZGVkOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcGFkZGVkOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYXNpYyBHbG9iYWwgQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4udGV4dCB7XHJcbiAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnVzZXItY29udGVudCB7XG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogSGVhZGVycyAgICAgICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg2MCwgMTYpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg0OCwgMTYpO1xuICAgIH1cblxuICAgIGgyLi1hbHQge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg2OCwgMTYpO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzYsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDYwLCAzNik7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyOCwgMTYpO1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAgICogR2VuZXJhbCBUZXh0ICAgKlxuICAgIFxcKiAtLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgbGFiZWwsXG4gICAgbWVudSxcbiAgICBvbCxcbiAgICBwLFxuICAgIHRhYmxlLFxuICAgIHVsIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQsIDE2KTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBUYWJsZXMgICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICB0YWJsZSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBCdXR0b25zICAgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjQpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGFjY2VudF9hbHQ7XG4gICAgICAgICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLSAqXFxcbiAgICAgKiBBbGlnbm1lbnQgICAgICAqXG4gICAgXFwqIC0tLS0tLS0tLS0tLS0tICovXG5cbiAgICAuYWxpZ25jZW50ZXIge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIHJlbWlmeSgzMCwgMTYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFsaWdubGVmdCB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDMwIDMwIDAsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hbGlnbnJpZ2h0IHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMzAgMzAsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tICpcXFxuICAgICAqIENvbHVtbnMgICAgICAgICpcbiAgICBcXCogLS0tLS0tLS0tLS0tLS0gKi9cblxuICAgIC5jb2wge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCA2MCwgMTYpO1xuICAgIH1cblxuICAgIC5jb2w6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbWlmeSgzMCwgMTYpO1xuICAgIH1cblxuICAgIC5jb2w6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbWlmeSgzMCwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQXJ0aWNsZSBDYXJkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmFydGljbGUtY2FyZCB7XHJcbiAgICAmIHtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgzMCwgMTYpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW1pZnkoMzAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1iYW5uZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxNjAgMzAgMzAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1wYXJ0bmVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgID4gLmltYWdlIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtaWZ5KDYwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXhjZXJwdCA+IC5pbWFnZSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMzAgMCAwLCAxNik7XHJcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gNCk7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcGFydG5lciA+IC5pbWFnZS4tbG9nbyB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMzAgMCAwLCAxNik7XHJcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gMyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tYmFubmVyID4gLmhlYWRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1hcnRpY2xlLWNhcmQtaGVhZGVyLWJhbm5lci5wbmdcIik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIGF1dG87XHJcbiAgICAgICAgbGVmdDogcmVtaWZ5KDMwLCAxNik7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEyIDI1IDUyLCAxNik7XHJcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg0ODIsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICAmLi1leGNlcnB0ID4gLmltYWdlIH4gLmhlYWRlciB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gNCkgKiAzO1xyXG4gICAgfVxyXG5cclxuICAgICYuLWJhbm5lciA+IC5oZWFkZXIgPiAudGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDUwLCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXhjZXJwdCA+IC5oZWFkZXIgPiAudGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI4LCAxNik7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tZXhjZXJwdCA+IC5pbWFnZSB+IC5jb250ZW50IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB3aWR0aDogKDEwMCUgLyA0KSAqIDM7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tcGFydG5lciA+IC5pbWFnZS4tbG9nbyArIC5jb250ZW50IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzAgMCAwLCAxNik7XHJcbiAgICAgICAgd2lkdGg6ICgxMDAlIC8gMykgKiAyO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmNvbnRlbnQuLWZ1bGwge1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBCYW5uZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uYmFubmVyLXdyYXBwZXIge1xyXG4gICAgJiB7XHJcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMjAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5iYW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbWlmeSg4NiwgMTYpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmJhbm5lciA+IC50aXRsZSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IHJlbWlmeSgyKSBzb2xpZCB0cmFuc3BhcmVudGl6ZSgkZGFyaywgMC45KTtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgyNCA1NiwgMjQpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmJhbm5lciA+IC50aXRsZSA+IC5mYSB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICA+IC5iYW5uZXIgPiAuZXhjZXJwdCxcclxuICAgID4gLmJhbm5lciA+IC5jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG5cclxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoMjAwLCAxNik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgID4gLmJhbm5lciA+IC5idXR0b24ge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBtaW4taGVpZ2h0OiByZW1pZnkoODYsIDI0KTtcclxuICAgICAgICB3aWR0aDogcmVtaWZ5KDg2LCAyNCk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDYWxsb3V0IENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uY2FsbG91dC1jYXJkIHtcclxuICAgID4gLmNhbGxvdXQtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIyLCAxNik7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb21tZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBDb21tZW50IFRpdGxlXG5cbi5jb21tZW50cy10aXRsZSB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMzAsIDE2KTtcbn1cblxuLy8gQ29tbWVudCBMaXN0XG5cbi5jb21tZW50LWxpc3QsXG4uY29tbWVudC1saXN0IC5jaGlsZHJlbiB7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDI0LCAxNik7XG59XG5cbi5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDAgMzIsIDE2KTtcbn1cblxuLmNvbW1lbnQtYm9keSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNvbW1lbnQtbWV0YSB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMjAsIDE2KTtcbn1cblxuLmNvbW1lbnQtYXV0aG9yIHtcbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLmNvbW1lbnQtbWV0YWRhdGEge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLmNvbW1lbnQtY29udGVudCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDFweDsgLy8gYXMgc21hbGwgYXMgcG9zaXNibGUgc28gaXQgd29uJ3Qgd3JhcFxuXG4gICAgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IC8vIHNob3VsZCBhbHdheXMgYmUgMFxuICAgIH1cbn1cblxuLmNvbW1lbnQtcmVwbHktbGluayB7XG4gICAgZmxleDogbm9uZTtcbiAgICBtYXJnaW46IHJlbWlmeSgwIDAgMCA1MCwgMTgpO1xufVxuXG4vLyBDb21tZW50IFBhZ2luYXRpb25cblxuLmNvbW1lbnRzLW5hdiB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDM0LCAxOCk7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb21tZW50cy1uYXYgLnBhZ2UtbnVtYmVycyB7XG4gICAgbWFyZ2luOiByZW1pZnkoMCAwIDAgNiwgMTgpO1xufVxuXG4vLyBDb21tZW50IEZvcm1cblxuLmNvbW1lbnQtZm9ybS10aXRsZSB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMzAsIDE2KTtcbn1cblxuLmNvbW1lbnQtbG9nZ2VkLWluIHtcbiAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xufVxuXG4uY29tbWVudC1pbnB1dCB7XG4gICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogRm9vdGVyIENhcmQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmZvb3Rlci1jYXJkIHtcclxuICAgICYge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tYWxpZ25yaWdodCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ28ge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KDE3MCwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogR2FsbGVyeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmdhbGxlcnkge1xyXG4gICAgJiB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAtMzApO1xyXG4gICAgfVxyXG5cclxuICAgIC5nYWxsZXJ5LWl0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDMwKTtcclxuICAgIH1cclxuXHJcbiAgICAmLmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xyXG4gICAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMlO1xyXG4gICAgfVxyXG5cclxuICAgICYuZ2FsbGVyeS1jb2x1bW5zLTQgLmdhbGxlcnktaXRlbSB7XHJcbiAgICAgICAgZmxleDogMCAwIDI1JTtcclxuICAgIH1cclxuXHJcbiAgICAmLmdhbGxlcnktY29sdW1ucy01IC5nYWxsZXJ5LWl0ZW0ge1xyXG4gICAgICAgIGZsZXg6IDAgMCAyMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5nYWxsZXJ5LWNvbHVtbnMtNiAuZ2FsbGVyeS1pdGVtIHtcclxuICAgICAgICBmbGV4OiAwIDAgMTYuNjY2NjY3JTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgfCBqYWNvYkBiZWFyY2UubWVcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTmluamEgRm9ybXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuW2NsYXNzKj1cIm5pbmphLWNvbC1cIl0ge1xyXG4gICAgcGFkZGluZzogcmVtaWZ5KDAgMTAsIDE2KSAhaW1wb3J0YW50O1xyXG5cclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogU2VhcmNoIGZvcm0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLnNlYXJjaC1mb3JtIHtcclxuICAgICYge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI0LCAxNik7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTdG9yeSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uc3Rvcnkge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoNTAsIDE2KTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDMuNzUlO1xuICAgIH1cblxuICAgICYuLXByaW1hcnkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEyLjUlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMi41JTtcbiAgICB9XG5cbiAgICAmLi1zZWNvbmRhcnkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMxLjI1JTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtaWZ5KDUwLCAxNik7XG4gICAgfVxuXG4gICAgJi4tdGVydGlhcnkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMS4yNSU7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMTEuMjUlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAmLi1wcmltYXJ5OjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi4tc2Vjb25kYXJ5OjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDYuMjUlO1xuICAgIH1cblxuICAgICYuLXRlcnRpYXJ5OjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbWlmeSgtMTgsIDE2KTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnVzZXItY29udGVudCBoMi4tYWx0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogUGFnZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuaHRtbC4tbmF2YWN0aXZlLFxyXG5odG1sLi1uYXZhY3RpdmUgYm9keSB7XHJcbiAgICAmIHtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYWdlLXdyYXBwZXIge1xyXG4gICAgaHRtbC4tbmF2YWN0aXZlICYge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlYWRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5oZWFkZXItd3JhcHBlciB7XHJcbiAgICAmIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtaWZ5KDIwLCAxNik7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgyMCwgMTYpO1xyXG4gICAgfVxyXG5cclxuICAgID4gLmhlYWRlci1ibG9jayB7XHJcbiAgICAgICAgcGFkZGluZzogMCA1LjYyNSU7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuaGVhZGVyLWJsb2NrIC5tZW51LWxpc3QuLW5hdiB7XHJcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjAsIDE2KTtcclxuICAgIH1cclxuXHJcbiAgICA+IC5oZWFkZXItYmxvY2sgLm1lbnUtbGlzdC4tbmF2IC5tZW51LWl0ZW0uLWxvZ28gLm1lbnUtbGluayBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KDE2NSwgMjQpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW1pZnkoNjAsIDE2KTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgxNTUsIDE2KTtcbiAgICB9XG5cbiAgICAuaG9tZSAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSg2MCwgMTYpO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudC1iZWZvcmUuanBnXCIpO1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgzNTAsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEZvb3RlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5mb290ZXItd3JhcHBlciB7XG4gICAgPiAuZm9vdGVyLWJsb2NrIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICA+IC5mb290ZXItYmxvY2sgPiAuZm9vdGVyLWNhcmQge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgb3JkZXI6IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDIwLCAxNik7XG4gICAgfVxuXG4gICAgPiAuZm9vdGVyLWJsb2NrID4gLmZvb3Rlci1jYXJkLi1maXJzdG1vYmlsZSB7XG4gICAgICAgIG9yZGVyOiAwO1xuICAgIH1cblxuICAgID4gLmZvb3Rlci1ibG9jayA+IC5mb290ZXItY2FyZC4tbm9mbGV4IHtcbiAgICAgICAgZmxleDogbm9uZTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlbHBlcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29tcG9uZW50cyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBMYXlvdXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG5AaW1wb3J0IFwiLi4vbGF5b3V0cy9oZWFkZXIvX2hlYWRlcl9sXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2NvbnRlbnQvX2NvbnRlbnRfbFwiO1xyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEhlYWRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5oZWFkZXItd3JhcHBlciB7XHJcbiAgICA+IC5oZWFkZXItYmxvY2sgLm1lbnUtbGlzdC4tbmF2IHtcclxuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQ29udGVudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmNvbnRlbnQtd3JhcHBlciB7XHJcbiAgICAmIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogcmVtaWZ5KDE2NiwgMTYpO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVscGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2hlbHBlcnMvX2hlbHBlcnNfeGxcIjtcclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogQmFzZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb21wb25lbnRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIExheW91dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2hlYWRlci9faGVhZGVyX3hsXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2NvbnRlbnQvX2NvbnRlbnRfeGxcIjtcclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiB2aXNpYmlsaXR5IGNsYXNzZXMgKi9cclxuLy8gaWRlYWw6IGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtZGlzcGxheS0zLyNwcm9wZGVmLWJveC1zdXBwcmVzc1xyXG5cclxuLl9zaG93dGFibGV0LFxyXG4uX2hpZGVkZXNrdG9wIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLl9zaG93ZGVza3RvcCB7XHJcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVhZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmhlYWRlci13cmFwcGVyIHtcclxuICAgID4gLmhlYWRlci1ibG9jayAubWVudS1saXN0Li1uYXYgLm1lbnUtaXRlbS4tbG9nbyAubWVudS1saW5rIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoMjIwLCAyNCk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBDb250ZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uY29udGVudC13cmFwcGVyIHtcclxuICAgICYge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiByZW1pZnkoMTg4LCAxNik7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxyXG4gKiBIZWxwZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIEJhc2UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbkBpbXBvcnQgXCIuLi9iYXNlL2dyaWQvX2dyaWRfeHhsXCI7XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbXBvbmVudHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogTGF5b3V0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuQGltcG9ydCBcIi4uL2xheW91dHMvaGVhZGVyL19oZWFkZXJfeHhsXCI7XHJcbkBpbXBvcnQgXCIuLi9sYXlvdXRzL2NvbnRlbnQvX2NvbnRlbnRfeHhsXCI7XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogR3JpZGx5IChhZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL0lvbmljYUJpemF1L2dyaWRseSkgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLnJvdy1kZXNrdG9wIHtcclxuICAgICYge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICB9XHJcblxyXG4gICAgJi4tY2VudGVyIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcclxuICogSGVhZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmhlYWRlci13cmFwcGVyIHtcclxuICAgID4gLmhlYWRlci1ibG9jayB7XHJcbiAgICAgICAgcGFkZGluZzogMCAxMS4yNSU7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuaGVhZGVyLWJsb2NrIC5tZW51LWxpc3QuLW5hdiAubWVudS1pdGVtLi1sb2dvIC5tZW51LWxpbmsgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSgzMzAsIDI0KTtcclxuICAgIH1cclxufVxyXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXHJcbiAqIENvbnRlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXHJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5jb250ZW50LXdyYXBwZXIge1xyXG4gICAgJiB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgyMzIsIDE2KTtcclxuICAgIH1cclxufVxyXG4iXX0= */
