/* global variables */
/* this file is for public and private/admin pages */
*, *:after, *:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
/* Document
   ========================================================================== */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

/* 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-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  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 {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

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

/* Text-level semantics
   ========================================================================== */
/**
 * 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 */ }

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0; }

/**
 * 1. Remove the bottom border in 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 */
  -webkit-text-decoration: underline dotted;
          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.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

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

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

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

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

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 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 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  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; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          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 */ }

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

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

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

input[type=radio], input[type=checkbox] {
  margin-right: 0.3em; }

a[href], input[type='submit'], input[type='image'], label[for], select, button {
  cursor: pointer; }

td {
  vertical-align: top; }

img, object, embed {
  max-width: 100%; }

img {
  height: auto; }

h1:not(.heading-keep_margin):first-child, h2:not(.heading-keep_margin):first-child, h3:not(.heading-keep_margin):first-child, h4:not(.heading-keep_margin):first-child {
  margin-top: 0; }

h1 a, h2 a, h3 a, h4 a {
  color: inherit;
  text-decoration: none; }
  h1 a:hover, h1 a:active, h2 a:hover, h2 a:active, h3 a:hover, h3 a:active, h4 a:hover, h4 a:active {
    color: inherit;
    text-decoration: underline; }

.-margin-no_top {
  margin-top: 0; }

.-margin-no_margin {
  margin: 0; }

.-display-hidden {
  display: none; }

.-link-no_underline {
  text-decoration: none; }

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

html {
  font: 100%/1 'Corporate S W01', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  line-height: 1.5;
  color: #444; }

a {
  -webkit-transition: color 0.25s ease;
  transition: color 0.25s ease;
  color: #3047b0;
  text-decoration: none; }
  a:hover {
    text-decoration: underline;
    color: #465fcd; }

address {
  font-style: normal; }

textarea {
  vertical-align: top; }

.form-input-align_right {
  text-align: right; }

.form-form_wrap {
  width: 90%;
  max-width: 30em;
  margin: 1em auto;
  padding: 1em;
  border-radius: 2px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1); }
  .form-form_wrap h2 {
    margin-top: 0; }
  .form-form_wrap h4 {
    margin-bottom: 0.5em; }

.form-fieldset {
  margin: 1.5em 0 1em;
  padding: 1em 1em;
  border: 1px solid rgba(0, 0, 0, 0.1); }
  .form-fieldset > .form-field_wrap:last-of-type {
    margin-bottom: 0.5em; }

.form-fieldset-first {
  margin-top: 0.5em; }

.form-field-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.form-field_wrap select {
  height: 2.3em;
  padding: 0.5em; }

.form-field_wrap, .form_table-col {
  margin-bottom: 1em; }
  .form-field_wrap label, .form_table-col label {
    display: block;
    margin-bottom: 0.25em; }
  .form-field_wrap input:not([type=submit]):not([type=button]):not([type=file]):not([type=radio]):not([type=checkbox]):not([type=color]), .form-field_wrap textarea, .form-field_wrap select, .form_table-col input:not([type=submit]):not([type=button]):not([type=file]):not([type=radio]):not([type=checkbox]):not([type=color]), .form_table-col textarea, .form_table-col select {
    width: 100%;
    padding: 0.5em;
    border: 1px solid rgba(32, 36, 41, 0.15);
    border-radius: 2px;
    background-color: rgba(255, 255, 255, 0.9); }
  .form-field_wrap input[type=file], .form_table-col input[type=file] {
    width: 100%; }

.form-field_wrap-no_width input:not([type=submit]):not([type=button]):not([type=file]):not([type=radio]):not([type=checkbox]):not([type=color]), .form-field_wrap-no_width textarea, .form-field_wrap-no_width select {
  width: auto; }

.form-field_wrap-no_margin {
  margin-bottom: 0; }

.form-field_wrap-textarea textarea {
  height: 10em; }

.form-field_wrap-checkbox label {
  display: inline-block;
  margin-right: 1em;
  margin-bottom: 0; }
  .form-field_wrap-checkbox label:hover {
    color: #777777; }

.form-field_wrap-radio_row > label:first-of-type {
  display: block;
  margin-bottom: 0.25em; }

.form-field_wrap-radio_row label {
  display: inline-block;
  margin-right: 1em;
  margin-bottom: 0; }

.form-field_wrap-flex_horz {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1em; }
  .form-field_wrap-flex_horz > .form-field_wrap {
    margin-bottom: 0; }

.form-field_wrap-flex_full_width {
  display: block; }
  @media (min-width: 35em) {
    .form-field_wrap-flex_full_width {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 1em; } }
  @media (min-width: 35em) {
    .form-field_wrap-flex_full_width > .form-field_wrap {
      -ms-flex-preferred-size: 50%;
          flex-basis: 50%;
      margin-bottom: 0; } }

.form-field_wrap-right_margin {
  margin-right: 0.25em; }

.form-field_wrap-readonly {
  position: relative; }
  .form-field_wrap-readonly input:not([type=submit]):not([type=button]):not([type=file]):not([type=radio]):not([type=checkbox]):not([type=color]), .form-field_wrap-readonly textarea, .form-field_wrap-readonly select {
    opacity: 0.4; }
  .form-field_wrap-readonly:after {
    position: absolute;
    top: 0.5em;
    right: 0;
    font-size: 0.7em;
    opacity: 0.5;
    content: "read-only"; }

.form-field_wrap-inset {
  padding-left: 2em;
  border-left: 3px solid #a7a7a7; }

.form-vertical_list > div label {
  display: inline-block; }
  .form-vertical_list > div label:hover {
    color: #777777; }

.form-field_prefix {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  margin-right: 0.5em; }
  .form-field_prefix label {
    margin-bottom: 0; }

.form-field_suffix {
  margin-left: 0.25em;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.form-field_separator {
  padding: 0 0.25em; }

.form-field_help {
  margin-top: 0.2em;
  padding-left: 0.1em;
  font-size: 0.8em;
  color: #6f6f6f;
  font-style: italic; }

.form-field_help-button {
  margin-top: 0.25em; }

.form-row_item_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  max-width: 100%; }

.form-row_item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%; }
  @media (min-width: 35em) {
    .form-row_item {
      -webkit-box-flex: 1;
          -ms-flex: 1 1 33%;
              flex: 1 1 33%; } }

.form-button_wrap button, .form-button_wrap .button {
  margin-right: 0.5em; }

.form-action_link {
  font-size: 0.8em;
  margin-right: 1em;
  color: rgba(196, 90, 75, 0.6); }
  .form-action_link:hover {
    color: #c45a4b; }

.form-field_errors {
  list-style: none;
  margin: 0 0 0.25em;
  padding-left: 0; }
  .form-field_errors li {
    margin-bottom: 0.25em;
    padding: 0.5em;
    background: #f3f3f3;
    border-left: 10px solid #d9524e;
    border-width: 0 0 0 10px; }

.vich-file label {
  margin-top: 0.25em; }

.form-heading_with_link_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }

.form-heading_links {
  margin-left: auto; }
  .form-heading_links a:last-child {
    margin-right: 0; }

.alert {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 90%;
  min-width: 10rem;
  margin: 1em auto;
  padding: 0.5em;
  background-color: #f3f3f3;
  border-left: 10px solid transparent; }
  @media (min-width: 48em) {
    .alert {
      width: 70%; } }
  .form-form_wrap .alert {
    width: 100%; }

.alert-type-success {
  border-left-color: #5ab65a; }

.alert-type-info {
  border-left-color: #5bc0dd; }

.alert-type-warning {
  border-left-color: #f0ad4e; }

.alert-type-danger {
  border-left-color: #d9524e; }

.alert-action-right {
  float: right;
  padding-left: 1em; }

.ie9_warning-wrap {
  background: #d9524e; }

.ie9_warning-content {
  max-width: 35em;
  margin: 0 auto;
  padding: 0.8em;
  color: #fff;
  text-align: center; }

.ie9_warning-content-big {
  font-size: 1.2em; }

.ie9_warning-link {
  color: #fff; }
  .ie9_warning-link:hover {
    color: #ddd; }

.content-wrap {
  max-width: 71.25em;
  margin: 0 auto;
  padding: 2em 1em; }
  .content-wrap:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 73.25em) {
    .content-wrap {
      padding: 2em 0; } }
  .content-wrap-medium {
    max-width: 71.25em; }
  .content-wrap-narrow {
    max-width: 33em; }
  @media (min-width: 48em) {
    .content-wrap-flex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; }
      .content-wrap-flex > div {
        width: 48%; } }
  .content-wrap p:first-of-type {
    margin-top: 0; }

.content-img-center {
  display: block;
  margin: 1em auto; }

.content-img-left {
  float: left;
  margin: 1em 1em 1em 0; }

.content-img-right {
  float: right;
  margin: 1em 0 1em 1em; }

button, .button {
  padding: 0.5em 1em;
  background-color: #2a5f33;
  color: white;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  border: 1px solid #2a5f33;
  border-radius: 4px; }
  button:hover, .button:hover {
    background-color: #3a8246; }

.button {
  display: inline-block; }

h1, h2, h3, h4, h5, h6 {
  font-family: 'Corporate A W01';
  line-height: 1.2; }

h2 {
  font-size: 2.5em; }

h3, h4 {
  margin-bottom: 0.25em; }

.header-wrap {
  position: absolute;
  top: 0;
  width: 100%;
  padding: 0.5em 2em 0;
  background-color: rgba(255, 255, 255, 0.6); }
  @media (min-width: 73.25em) {
    .header-wrap {
      padding: 1em 0 0.5em; } }

.header-content {
  max-width: 71.25em;
  margin: 0 auto;
  padding: 0 1em;
  text-align: center; }
  @media (min-width: 48em) {
    .header-content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  @media (min-width: 73.25em) {
    .header-content {
      padding: 0; } }

.header-nav {
  margin-top: 0.6em;
  padding: 0;
  color: white;
  list-style: none; }

.header_nav-item {
  display: inline-block;
  margin-right: 2em; }
  .header_nav-item:last-of-type {
    margin-right: 0; }
  .header_nav-item a {
    color: white;
    text-decoration: none; }
  .header_nav-item:hover {
    text-shadow: 2px 2px 0 #7a7a7a, -1px -1px 2px #7a7a7a, 1px -1px 2px #7a7a7a, -1px 1px 2px #7a7a7a, 1px 1px 2px #7a7a7a;
    cursor: pointer; }

.footer-wrap {
  padding: 0 0 1em;
  background-color: #f3f3f3;
  color: #202429;
  border-top: 1px solid #2a5f33; }
  .footer-wrap a {
    color: #2a5f33;
    text-decoration: none; }
    .footer-wrap a:hover {
      text-decoration: underline; }
  .footer-wrap .social-wrap svg {
    fill: #202429; }

.footer-content {
  max-width: 71.25em;
  margin: 0 auto;
  padding: 0 2em; }
  @media (min-width: 73.25em) {
    .footer-content {
      padding: 0; } }

.footer-flex {
  margin-bottom: 2em;
  padding-top: 2em;
  text-align: center; }
  @media (min-width: 48em) {
    .footer-flex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      text-align: left; }
      .footer-flex > div {
        margin-right: 1.5em; }
        .footer-flex > div:last-of-type {
          margin-right: 0; } }

.footer-project_list {
  list-style: none;
  padding: 0;
  margin-top: 0; }
  .footer-project_list li {
    margin-bottom: 0.25em; }

.footer-logo {
  max-width: 16em;
  margin: 0 auto;
  padding: 0.5em; }
  @media (min-width: 48em) {
    .footer-logo {
      margin: 0; } }

.footer-copyright {
  font-size: 0.9em;
  text-align: center; }

.herobar {
  color: white;
  min-height: 30em;
  text-shadow: 2px 2px 0 black, -1px -1px 2px black, 1px -1px 2px black, -1px 1px 2px black, 1px 1px 2px black; }

.herobar-hp {
  position: relative;
  width: 100%;
  height: 95vh;
  background: #f3f3f3 url("/images/herobar-hp1.jpg") no-repeat;
  background-position: center;
  -webkit-box-shadow: 1em 1em 14em rgba(0, 0, 0, 0.9) inset;
          box-shadow: 1em 1em 14em rgba(0, 0, 0, 0.9) inset; }
  @media (min-width: 48em) {
    .herobar-hp {
      height: 100vh; } }
  @media (min-width: 71.25em) {
    .herobar-hp {
      background-attachment: fixed; } }

.herobar-contact {
  width: 100%;
  background: #f3f3f3 url("/images/herobar-contact.jpg") no-repeat;
  -webkit-box-shadow: 1em 1em 14em rgba(0, 0, 0, 0.9) inset;
          box-shadow: 1em 1em 14em rgba(0, 0, 0, 0.9) inset;
  background-position: -31em top; }
  @media (min-width: 48em) {
    .herobar-contact {
      background-position: center; } }

.herobar-properties {
  width: 100%;
  background: #f3f3f3 url("/images/herobar-properties.jpg") no-repeat;
  -webkit-box-shadow: 1em 1em 14em rgba(0, 0, 0, 0.9) inset;
          box-shadow: 1em 1em 14em rgba(0, 0, 0, 0.9) inset;
  background-position: center bottom; }
  @media (min-width: 48em) {
    .herobar-properties {
      background-position: center bottom; } }

.herobar-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  min-height: 30em;
  background: rgba(0, 0, 0, 0.4); }

.herobar-heading {
  font-size: 2em;
  font-weight: 100;
  max-width: 45rem;
  margin-top: 4.25em;
  padding: 0 1em;
  text-align: center; }
  @media (min-width: 48em) {
    .herobar-heading {
      font-size: 3.25em;
      margin-top: 2em;
      padding: 0; } }
  @media (min-width: 47em) {
    .herobar-heading {
      padding: 0; } }

.herobar-arrow-wrap {
  position: absolute;
  bottom: 1em;
  left: 42%;
  right: 42%; }
  @media (min-width: 64em) {
    .herobar-arrow-wrap {
      left: 45%;
      right: 45%; } }

.herobar-arrow {
  height: 4em;
  width: 4em;
  -webkit-animation: pulse 5s infinite;
          animation: pulse 5s infinite; }

@-webkit-keyframes pulse {
  0% {
    fill: #f3f3f3; }
  50% {
    fill: #a0a0a0;
    -webkit-transform: translateY(0.5em);
            transform: translateY(0.5em); }
  100% {
    fill: #f3f3f3; } }

@keyframes pulse {
  0% {
    fill: #f3f3f3; }
  50% {
    fill: #a0a0a0;
    -webkit-transform: translateY(0.5em);
            transform: translateY(0.5em); }
  100% {
    fill: #f3f3f3; } }

.section {
  background: rgba(26, 60, 32, 0.8) url("/images/bkg.png") repeat;
  background-attachment: fixed;
  -webkit-box-shadow: 1em 1em 14em rgba(122, 122, 122, 0.7) inset;
          box-shadow: 1em 1em 14em rgba(122, 122, 122, 0.7) inset; }

.section-cards_wrap {
  border-bottom: 1px solid rgba(37, 55, 136, 0.5); }

.cards-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 2em auto;
  padding: 0 2em;
  max-width: 71.25em; }
  @media (min-width: 40em) {
    .cards-wrap {
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start; } }
  @media (min-width: 73.25em) {
    .cards-wrap {
      padding: 0; } }

.card {
  position: relative;
  display: block;
  float: left;
  width: 21em;
  max-width: 21.5em;
  height: 24em;
  margin-bottom: 1em;
  border: 1px solid #dadada;
  border-radius: 2px;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  overflow: hidden;
  background-color: #f3f3f3;
  -webkit-box-shadow: 2px 2px 4px rgba(122, 122, 122, 0.3);
          box-shadow: 2px 2px 4px rgba(122, 122, 122, 0.3);
  border-radius: 4px; }
  @media (min-width: 35em) {
    .card {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 48.5%;
              flex: 0 0 48.5%;
      width: 48.5%;
      max-width: 48.5%;
      margin-right: 1em; }
      .card:nth-of-type(2n) {
        margin-right: 0; } }
  @media (min-width: 48em) {
    .card {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 31.25%;
              flex: 0 0 31.25%;
      width: 31.25%;
      max-width: 31.25%; }
      .card:nth-of-type(2n) {
        margin-right: 1em; }
      .card:nth-of-type(3n) {
        margin-right: 0; } }
  .card:hover {
    border-color: #253788;
    -webkit-box-shadow: 4px 4px 8px rgba(37, 55, 136, 0.3);
            box-shadow: 4px 4px 8px rgba(37, 55, 136, 0.3); }
    .card:hover h2 {
      color: #3047b0; }

.card-heading {
  font-size: 1.4em; }

.card-copy {
  position: absolute;
  width: 100%;
  min-height: 7em;
  padding: 1em;
  color: #444; }
  .card-copy h2 {
    font-size: 1.25em;
    margin: 0;
    color: #253788; }

.card-image {
  width: 100%;
  max-width: 100%;
  max-height: 18em;
  display: block;
  margin: 0 auto; }
  @media (min-width: 64em) {
    .card-image {
      max-height: 20em; } }

.social-wrap {
  padding: 0;
  list-style: none; }
  .social-wrap li {
    display: inline-block;
    margin-right: 0.25em; }
  .social-wrap svg {
    width: 2em;
    height: 2em;
    fill: #253788;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease; }
    .social-wrap svg:hover {
      fill: #3047b0; }

.section_content-about {
  width: 100%;
  max-width: 71.25em;
  margin: 0 auto;
  color: white; }
  .section_content-about .about-img_wrap {
    margin-bottom: -0.35em; }

.about-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 3em 1em;
  max-width: 42em;
  margin: 0 auto; }
  @media (min-width: 48em) {
    .about-content {
      font-size: 1.3em; } }

.about-copy {
  padding: 2em;
  border-radius: 6px;
  background-color: rgba(32, 36, 41, 0.6); }
  @media (min-width: 48em) {
    .about-copy {
      padding: 2em 4em; } }

.about-copy-heading {
  font-style: italic;
  text-align: center;
  letter-spacing: 1px;
  line-height: 1.5; }

.about-icons_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media (min-width: 35em) {
    .about-icons_wrap {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end;
      margin: 3em auto 0; } }

.about-icon {
  display: block;
  max-width: 30%;
  margin: 0 1em 0 0;
  fill: #f3f3f3;
  text-align: center; }
  .about-icon:last-of-type {
    margin-right: 0; }
  @media (min-width: 35em) {
    .about-icon {
      width: 5.5em;
      height: 5.5em;
      margin: 0 2em 0 0; } }

.logos-wrap {
  list-style: none;
  padding: 0 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 71.25em;
  margin: 0 auto; }
  @media (min-width: 48em) {
    .logos-wrap {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between; } }
  @supports (display: grid) {
    @media (min-width: 40em) {
      .logos-wrap {
        display: grid;
        grid-auto-flow: row;
        grid-gap: 2em;
        grid-template-columns: repeat(auto-fit, minmax(45%, auto)); } }
    @media (min-width: 64em) {
      .logos-wrap {
        grid-template-columns: repeat(auto-fit, minmax(23%, auto)); } } }
  @media (min-width: 73.25em) {
    .logos-wrap {
      padding: 0; } }

.logo {
  margin-bottom: 2em;
  text-align: center; }
  @media (min-width: 48em) {
    .logo {
      margin-right: 2em; } }

.logo-svg {
  width: 15em; }

.contact-wrap h3 {
  margin-bottom: 0.25em; }

.contact-wrap p:first-of-type {
  margin-top: 0; }

.contact-map-wrap {
  height: 25em; }

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL2NvbW1vbi9fdmFycy5zY3NzIiwid2VicGFjazovLy8uL2h0bWwvY3NzL3Nhc3MvY29tbW9uL19jb21tb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL2NvbW1vbi9fbm9ybWFsaXplLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcHVibGljLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMuc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX3ZhcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL2NvbW1vbi9fZm9ybXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL2NvbW1vbi9fbWl4aW5zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9jb21tb24vX21lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9jb21tb24vX2FsZXJ0cy5zY3NzIiwid2VicGFjazovLy8uL2h0bWwvY3NzL3Nhc3MvY29tbW9uL19pZTlfd2FybmluZy5zY3NzIiwid2VicGFjazovLy8uL2h0bWwvY3NzL3Nhc3MvcHVibGljL19jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9jb21tb24vX2NvbnRlbnRfYWxpZ25tZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9faGVhZGluZ3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX2Zvb3Rlci5zY3NzIiwid2VicGFjazovLy8uL2h0bWwvY3NzL3Nhc3MvcHVibGljL19oZXJvYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX3NlY3Rpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9fY2FyZHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9fc29jaWFsLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX3BfaW5kZXguc2NzcyIsIndlYnBhY2s6Ly8vLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9fcF9jb250YWN0LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsc0JBQXNCO0FDQXRCLHFEQUFxRDtBQUdyRDtFQUF1QiwrQkFBc0I7VUFBdEIsdUJBQXNCLEVBQUs7O0FDSGxELDRFQUE0RTtBQUU1RTs7Ozs7R0FLRztBQUVIO2dGQUNnRjtBQUVoRjtFQUNJLHdCQUF1QjtFQUFHLE9BQU87RUFDakMsa0JBQWlCO0VBQUcsT0FBTztFQUMzQiwyQkFBMEI7RUFBRyxPQUFPO0VBQ3BDLCtCQUE4QjtFQUFHLE9BQU8sRUFDM0M7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FBRUg7RUFDSSxVQUFTLEVBQ1o7O0FBRUQ7O0dBRUc7QUFFSDs7Ozs7O0VBTUksZUFBYyxFQUNqQjs7QUFFRDs7O0dBR0c7QUFFSDtFQUNJLGVBQWM7RUFDZCxpQkFBZ0IsRUFDbkI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOzs7R0FHRztBQUVIOzs7RUFFTyxPQUFPO0VBQ1YsZUFBYyxFQUNqQjs7QUFFRDs7R0FFRztBQUVIO0VBQ0ksaUJBQWdCLEVBQ25COztBQUVEOzs7R0FHRztBQUVIO0VBQ0ksZ0NBQXVCO1VBQXZCLHdCQUF1QjtFQUFHLE9BQU87RUFDakMsVUFBUztFQUFHLE9BQU87RUFDbkIsa0JBQWlCO0VBQUcsT0FBTyxFQUM5Qjs7QUFFRDs7O0dBR0c7QUFFSDtFQUNJLGtDQUFpQztFQUFHLE9BQU87RUFDM0MsZUFBYztFQUFHLE9BQU8sRUFDM0I7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOzs7R0FHRztBQUVIO0VBQ0ksOEJBQTZCO0VBQUcsT0FBTztFQUN2QyxzQ0FBcUM7RUFBRyxPQUFPLEVBQ2xEOztBQUVEOzs7R0FHRztBQUVIOztFQUVJLGlCQUFnQixFQUNuQjs7QUFFRDs7O0dBR0c7QUFFSDtFQUNJLG9CQUFtQjtFQUFHLE9BQU87RUFDN0IsMkJBQTBCO0VBQUcsT0FBTztFQUNwQywwQ0FBaUM7VUFBakMsa0NBQWlDO0VBQUcsT0FBTyxFQUM5Qzs7QUFFRDs7R0FFRztBQUVIOztFQUVJLHFCQUFvQixFQUN2Qjs7QUFFRDs7R0FFRztBQUVIOztFQUVJLG9CQUFtQixFQUN0Qjs7QUFFRDs7O0dBR0c7QUFFSDs7O0VBR0ksa0NBQWlDO0VBQUcsT0FBTztFQUMzQyxlQUFjO0VBQUcsT0FBTyxFQUMzQjs7QUFFRDs7R0FFRztBQUVIO0VBQ0ksbUJBQWtCLEVBQ3JCOztBQUVEOztHQUVHO0FBRUg7RUFDSSx1QkFBc0I7RUFDdEIsWUFBVyxFQUNkOztBQUVEOztHQUVHO0FBRUg7RUFDSSxlQUFjLEVBQ2pCOztBQUVEOzs7R0FHRztBQUVIOztFQUVJLGVBQWM7RUFDZCxlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLHlCQUF3QixFQUMzQjs7QUFFRDtFQUNJLGdCQUFlLEVBQ2xCOztBQUVEO0VBQ0ksWUFBVyxFQUNkOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIOztFQUVJLHNCQUFxQixFQUN4Qjs7QUFFRDs7R0FFRztBQUVIO0VBQ0ksY0FBYTtFQUNiLFVBQVMsRUFDWjs7QUFFRDs7R0FFRztBQUVIO0VBQ0ksbUJBQWtCLEVBQ3JCOztBQUVEOztHQUVHO0FBRUg7RUFDSSxpQkFBZ0IsRUFDbkI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOzs7R0FHRztBQUVIOzs7OztFQUtJLHdCQUF1QjtFQUFHLE9BQU87RUFDakMsZ0JBQWU7RUFBRyxPQUFPO0VBQ3pCLGtCQUFpQjtFQUFHLE9BQU87RUFDM0IsVUFBUztFQUFHLE9BQU8sRUFDdEI7O0FBRUQ7OztHQUdHO0FBRUg7O0VBQ1EsT0FBTztFQUNYLGtCQUFpQixFQUNwQjs7QUFFRDs7O0dBR0c7QUFFSDs7RUFDUyxPQUFPO0VBQ1oscUJBQW9CLEVBQ3ZCOztBQUVEOzs7O0dBSUc7QUFFSDs7OztFQUlJLDJCQUEwQjtFQUFHLE9BQU8sRUFDdkM7O0FBRUQ7O0dBRUc7QUFFSDs7OztFQUlJLG1CQUFrQjtFQUNsQixXQUFVLEVBQ2I7O0FBRUQ7O0dBRUc7QUFFSDs7OztFQUlJLCtCQUE4QixFQUNqQzs7QUFFRDs7R0FFRztBQUVIO0VBQ0ksMEJBQXlCO0VBQ3pCLGNBQWE7RUFDYiwrQkFBOEIsRUFDakM7O0FBRUQ7Ozs7O0dBS0c7QUFFSDtFQUNJLCtCQUFzQjtVQUF0Qix1QkFBc0I7RUFBRyxPQUFPO0VBQ2hDLGVBQWM7RUFBRyxPQUFPO0VBQ3hCLGVBQWM7RUFBRyxPQUFPO0VBQ3hCLGdCQUFlO0VBQUcsT0FBTztFQUN6QixXQUFVO0VBQUcsT0FBTztFQUNwQixvQkFBbUI7RUFBRyxPQUFPLEVBQ2hDOztBQUVEOzs7R0FHRztBQUVIO0VBQ0ksc0JBQXFCO0VBQUcsT0FBTztFQUMvQix5QkFBd0I7RUFBRyxPQUFPLEVBQ3JDOztBQUVEOztHQUVHO0FBRUg7RUFDSSxlQUFjLEVBQ2pCOztBQUVEOzs7R0FHRztBQ25DSDs7RUR1Q0ksK0JBQXNCO1VBQXRCLHVCQUFzQjtFQUFHLE9BQU87RUFDaEMsV0FBVTtFQUFHLE9BQU8sRUFDdkI7O0FBRUQ7O0dBRUc7QUNuQ0g7O0VEdUNJLGFBQVksRUFDZjs7QUFFRDs7O0dBR0c7QUNyQ0g7RUR3Q0ksOEJBQTZCO0VBQUcsT0FBTztFQUN2QyxxQkFBb0I7RUFBRyxPQUFPLEVBQ2pDOztBQUVEOztHQUVHO0FDckNIOztFRHlDSSx5QkFBd0IsRUFDM0I7O0FBRUQ7OztHQUdHO0FBRUg7RUFDSSwyQkFBMEI7RUFBRyxPQUFPO0VBQ3BDLGNBQWE7RUFBRyxPQUFPLEVBQzFCOztBQUVEO2dGQUNnRjtBQUVoRjs7O0dBR0c7QUFFSDs7RUFFSSxlQUFjLEVBQ2pCOztBQUVEOztHQUVHO0FBRUg7RUFDSSxtQkFBa0IsRUFDckI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FBRUg7RUFDSSxzQkFBcUIsRUFDeEI7O0FBRUQ7O0dBRUc7QUFFSDtFQUNJLGNBQWEsRUFDaEI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FDbERIO0VEcURJLGNBQWEsRUFDaEI7O0FEcmNEO0VBQTBDLG9CQUFtQixFQUFLOztBQUVsRTtFQUNJLGdCQUFlLEVBQ2xCOztBQUNEO0VBQUssb0JBQW1CLEVBQUs7O0FBRTdCO0VBQXFCLGdCQUFlLEVBQUs7O0FBQ3pDO0VBQU0sYUFBWSxFQUFLOztBQUd2QjtFQUM4QyxjQUFhLEVBQUs7O0FBRGhFO0VBSVEsZUFBYztFQUNkLHNCQUFxQixFQUt4QjtFQVZMO0lBT1ksZUFBYztJQUNkLDJCQUEwQixFQUM3Qjs7QUFJVDtFQUFrQixjQUFhLEVBQUs7O0FBQ3BDO0VBQXFCLFVBQVMsRUFBSzs7QUFDbkM7RUFBbUIsY0FBYSxFQUFLOztBQUNyQztFQUFzQixzQkFBcUIsRUFBSzs7QUFDaEQ7RUFBZ0IsbUJBQWtCLEVBQUs7O0FHMUJ2QztFQ1BJLCtFQUE4RTtFQUM5RSxpQkFBZ0I7RUFDaEIsWUNDYSxFRk1oQjs7QUFFRDtFQUNJLHFDQUE0QjtFQUE1Qiw2QkFBNEI7RUFDNUIsZUFBa0M7RUFDbEMsc0JBQXFCLEVBS3hCO0VBUkQ7SUFLUSwyQkFBMEI7SUFDMUIsZUFBa0MsRUFDckM7O0FBRUw7RUFBVSxtQkFBa0IsRUFBSzs7QUdsQmpDO0VBQ0ksb0JBQW1CLEVBQ3RCOztBQUVEO0VBQTBCLGtCQUFpQixFQUFLOztBQUVoRDtFQUNJLFdBQVU7RUFDVixnQkFBZTtFQUNmLGlCQUFnQjtFQUNoQixhQUFZO0VBQ1osbUJETmU7RUNPZixrREFma0M7VUFlbEMsMENBZmtDLEVBa0JyQztFQVREO0lBT1MsY0FBYSxFQUFLO0VBUDNCO0lBUVMscUJBQW9CLEVBQUs7O0FBR2xDO0VBQ0ksb0JBQW1CO0VBQ25CLGlCQUFnQjtFQUNoQixxQ0F2QmtDLEVBMkJyQztFQVBEO0lBS1EscUJBQW9CLEVBQ3ZCOztBQUVMO0VBQ0ksa0JBQWlCLEVBQ3BCOztBQVFEO0VDdENJLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsK0JBQW1CO0VBQW5CLDhCQUFtQjtNQUFuQix3QkFBbUI7VUFBbkIsb0JBQW1CLEVEdUN0Qjs7QUFFRDtFQUVRLGNBQWE7RUFDYixlQUFjLEVBQ2pCOztBQUdMO0VBQ0ksbUJBQWtCLEVBYXJCO0VBZEQ7SUFHUSxlQUFjO0lBQ2Qsc0JQL0JxQixFT2dDeEI7RUFyQkQ7SUF1QkksWUFBVztJQUNYLGVBQWM7SUFDZCx5Q1B0RHlCO0lPdUR6QixtQkRuRFc7SUNvRFgsMkNBQTBDLEVBekI3QztFQWNMO0lBYXVCLFlBQVcsRUFBSzs7QUE3Qm5DO0VBaUNJLFlBQVcsRUEvQmQ7O0FBa0NMO0VBQ0ksaUJBQWdCLEVBQ25COztBQUNEO0VBQ2UsYUFBWSxFQUFLOztBQUVoQztFQUVRLHNCQUFxQjtFQUNyQixrQkFBaUI7RUFDakIsaUJBQWdCLEVBRW5CO0VBTkw7SUFLa0IsZUFqRmdDLEVBaUZFOztBQUdwRDtFQUVRLGVBQWM7RUFDZCxzQlBoRXFCLEVPaUV4Qjs7QUFKTDtFQU1RLHNCQUFxQjtFQUNyQixrQkFBaUI7RUFDakIsaUJBQWdCLEVBQ25COztBQUVMO0VBQ0kscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiwwQkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQjtFQUNuQixtQkFBa0IsRUFJckI7RUFQRDtJQUtRLGlCQUFnQixFQUNuQjs7QUFHTDtFQUNJLGVBQWMsRUFhakI7RUVuSE87SUZxR1I7TUFHUSxxQkFBYTtNQUFiLHFCQUFhO01BQWIsY0FBYTtNQUNiLDBCQUFtQjtVQUFuQix1QkFBbUI7Y0FBbkIsb0JBQW1CO01BQ25CLG1CQUFrQixFQVN6QjtFRW5ITztJRnFHUjtNQVVZLDZCQUFlO1VBQWYsZ0JBQWU7TUFDZixpQkFBZ0IsRUFFdkI7O0FBR0w7RUFDSSxxQkFBb0IsRUFDdkI7O0FBQ0Q7RUFDSSxtQkFBa0IsRUFjckI7RUF4R0c7SUE2RkksYUFBWSxFQTNGZjtFQXVGTDtJQVFRLG1CQUFrQjtJQUNsQixXQUFVO0lBQ1YsU0FBUTtJQUNSLGlCQUFnQjtJQUNoQixhQUFZO0lBQ1oscUJBQW9CLEVBQ3ZCOztBQUlMO0VBQ0ksa0JBQWlCO0VBQ2pCLCtCQUFxRCxFQUN4RDs7QUFHRDtFQUVRLHNCQUFxQixFQUV4QjtFQUpMO0lBR2tCLGVBdEpnQyxFQXNKRTs7QUFJcEQ7RUFDSSxvQkFBYztNQUFkLG1CQUFjO1VBQWQsZUFBYztFQUNkLG9CQUFtQixFQUV0QjtFQUpEO0lBR1ksaUJBQWdCLEVBQUs7O0FBRWpDO0VBQ0ksb0JQekl5QjtFTzBJekIsb0JBQWM7TUFBZCxtQkFBYztVQUFkLGVBQWMsRUFDakI7O0FBQ0Q7RUFDSSxrQkFBaUIsRUFDcEI7O0FBRUQ7RUFDSSxrQkFBaUI7RUFFakIsb0JBQW1CO0VBQ25CLGlCQUFnQjtFQUNoQixlQUFnQztFQUNoQyxtQkFBa0IsRUFDckI7O0FBRUQ7RUFDSSxtQlAxSnlCLEVPMko1Qjs7QUFHRDtFQUNJLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsK0JBQW1CO0VBQW5CLDhCQUFtQjtNQUFuQix3QkFBbUI7VUFBbkIsb0JBQW1CO0VBQ25CLGdCQUFlLEVBQ2xCOztBQUNEO0VBQ0ksb0JBQWE7TUFBYixrQkFBYTtVQUFiLGNBQWEsRUFJaEI7RUU1TE87SUZ1TFI7TUFHUSxvQkFBYTtVQUFiLGtCQUFhO2NBQWIsY0FBYSxFQUVwQjs7QUFFRDtFQUNzQixvQkFBbUIsRUFBSzs7QUFHOUM7RUFDSSxpQkFBZ0I7RUFDaEIsa0JBQWlCO0VBQ2pCLDhCUGpNd0IsRU9tTTNCO0VBTEQ7SUFJYyxlUGxNYyxFT2tNaUI7O0FBRzdDO0VBQ0ksaUJBQWdCO0VBQ2hCLG1CUHZMeUI7RU93THpCLGdCQUFlLEVBUWxCO0VBWEQ7SUFLUSxzQlAxTHFCO0lPMkxyQixlQUFjO0lBQ2Qsb0JQL002QjtJT2dON0IsZ0NQbE02QjtJT21NN0IseUJBQXdCLEVBQzNCOztBQUlMO0VBQ0ksbUJQcE15QixFT3FNNUI7O0FBR0Q7RUFDSSxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHlCQUF1QjtNQUF2QixzQkFBdUI7VUFBdkIsd0JBQXVCLEVBQzFCOztBQUNEO0VBQ0ksa0JBQWlCLEVBRXBCO0VBSEQ7SUFFbUIsZ0JBQWUsRUFBSzs7QUdyT3ZDO0VBQ0kscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiwwQkFBOEI7TUFBOUIsdUJBQThCO1VBQTlCLCtCQUE4QjtFQUM5QixXQUFVO0VBQ1YsaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQixlQUFjO0VBQ2QsMEJWSGlDO0VVSWpDLG9DQUFtQyxFQU90QztFRFpPO0lDSFI7TUFVUSxXQUFVLEVBS2pCO0VBREc7SUFBb0IsWUFBVyxFQUFLOztBQUd4QztFQUNJLDJCVkhrQyxFVUlyQzs7QUFDRDtFQUNJLDJCVkxnQyxFVU1uQzs7QUFDRDtFQUNJLDJCVlBtQyxFVVF0Qzs7QUFDRDtFQUNJLDJCVlRpQyxFVVVwQzs7QUFHRDtFQUVJLGFBQVk7RUFDWixrQkFBaUIsRUFDcEI7O0FDbkNEO0VBQ0ksb0JYaUJpQyxFV2hCcEM7O0FBQ0Q7RUFFSSxnQkFBZTtFQUNmLGVBQWM7RUFDZCxlQUFjO0VBQ2QsWUFBVztFQUNYLG1CQUFrQixFQUNyQjs7QUFDRDtFQUNJLGlCQUFnQixFQUNuQjs7QUFDRDtFQUNJLFlBQVcsRUFJZDtFQUxEO0lBR1EsWUFBVyxFQUNkOztBQ2xCTDtFQUVJLG1CTkRlO0VNRWYsZUFBYztFQUNkLGlCQUFnQixFQTRCbkI7RUpwQkc7SUFDSSxZQUFXO0lBQ1gsZUFBYztJQUNkLFlBQVcsRUFDZDtFQ1ZHO0lHTlI7TUFPUSxlQUFjLEVBeUJyQjtFQXRCRztJQUNJLG1CQUFrQixFQUNyQjtFQUVEO0lBQ0ksZ0JOWmdCLEVNYW5CO0VIYkc7SUdlSjtNQUVRLHFCQUFhO01BQWIscUJBQWE7TUFBYixjQUFhO01BQ2IsMEJBQThCO1VBQTlCLHVCQUE4QjtjQUE5QiwrQkFBOEIsRUFNckM7TUFURDtRQU1ZLFdBQVUsRUFDYjtFQXpCYjtJQThCUSxjQUFhLEVBQ2hCOztBQy9CTDtFQUNJLGVBQWM7RUFDZCxpQkFBZ0IsRUFDbkI7O0FBQ0Q7RUFDSSxZQUFXO0VBQ1gsc0JBQXFCLEVBQ3hCOztBQUNEO0VBQ0ksYUFBWTtFQUNaLHNCQUFxQixFQUN4Qjs7QUNYRDtFQUNJLG1CQUFrQjtFQUNsQiwwQmRROEI7RWNQOUIsYWRGNEI7RWNHNUIsa0NBQXlCO0VBQXpCLDBCQUF5QjtFQUN6QiwwQmRLOEI7RWNKOUIsbUJBQWtCLEVBS3JCO0VBWEQ7SUFTUSwwQkFBaUQsRUFDcEQ7O0FBR0w7RUFDSSxzQkFBcUIsRUFDeEI7O0FDZkQ7RUFDSSwrQkFBOEI7RUFDOUIsaUJBQWdCLEVBRW5COztBQUVEO0VBQ0ksaUJBQWdCLEVBQ25COztBQUVEO0VBQ0ksc0JBQXFCLEVBQ3hCOztBQ1pEO0VBQ0ksbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixZQUFXO0VBQ1gscUJBQW9CO0VBQ3BCLDJDaEJKNEIsRWdCUy9CO0VQSk87SU9OUjtNQVFRLHFCQUFvQixFQUUzQjs7QUFFRDtFQUNJLG1CVlplO0VVYWYsZUFBYztFQUNkLGVBQWM7RUFDZCxtQkFBa0IsRUFTckI7RVB0Qk87SU9TUjtNQU1RLHFCQUFhO01BQWIscUJBQWE7TUFBYixjQUFhO01BQ2IsMEJBQThCO1VBQTlCLHVCQUE4QjtjQUE5QiwrQkFBOEI7TUFDOUIsMEJBQW1CO1VBQW5CLHVCQUFtQjtjQUFuQixvQkFBbUIsRUFLMUI7RVBuQk87SU9NUjtNQVdRLFdBQVUsRUFFakI7O0FBRUQ7RUFDSSxrQkFBaUI7RUFDakIsV0FBVTtFQUNWLGFoQjdCNEI7RWdCOEI1QixpQkFBZ0IsRUFDbkI7O0FBRUQ7RUFDSSxzQkFBcUI7RUFDckIsa0JBQWlCLEVBZ0JwQjtFQWxCRDtJQUlRLGdCQUFlLEVBQ2xCO0VBTEw7SUFPUSxhaEJ4Q3dCO0lnQnlDeEIsc0JBQXFCLEVBQ3hCO0VBVEw7SUFXUSx1SGhCMUN1QjtJZ0IrQ3ZCLGdCQUFlLEVBQ2xCOztBQ25ETDtFQUNJLGlCQUFnQjtFQUNoQiwwQmpCRWlDO0VpQkRqQyxlakJFNkI7RWlCRDdCLDhCakJNOEIsRWlCU2pDO0VBbkJEO0lBTVEsZWpCSTBCO0lpQkgxQixzQkFBcUIsRUFLeEI7SUFaTDtNQVVZLDJCQUEwQixFQUM3QjtFQVhUO0lBZ0JZLGNqQlhxQixFaUJZeEI7O0FBSVQ7RUFDSSxtQlhyQmU7RVdzQmYsZUFBYztFQUNkLGVBQWMsRUFJakI7RVJ0Qk87SVFlUjtNQUtRLFdBQVUsRUFFakI7O0FBRUQ7RUFDSSxtQkFBa0I7RUFDbEIsaUJBQWdCO0VBQ2hCLG1CQUFrQixFQWNyQjtFUjVDTztJUTJCUjtNQU1RLHFCQUFhO01BQWIscUJBQWE7TUFBYixjQUFhO01BQ2IsMEJBQThCO1VBQTlCLHVCQUE4QjtjQUE5QiwrQkFBOEI7TUFDOUIsaUJBQWdCLEVBU3ZCO01BakJEO1FBV1ksb0JBQW1CLEVBSXRCO1FBZlQ7VUFhZ0IsZ0JBQWUsRUFDbEI7O0FBS2I7RUFDSSxpQkFBZ0I7RUFDaEIsV0FBVTtFQUNWLGNBQWEsRUFJaEI7RUFQRDtJQUtRLHNCQUFxQixFQUN4Qjs7QUFHTDtFQUNJLGdCQUFlO0VBQ2YsZUFBYztFQUNkLGVBQWMsRUFJakI7RVI5RE87SVF1RFI7TUFLUSxVQUFTLEVBRWhCOztBQUVEO0VBQ0ksaUJBQWdCO0VBQ2hCLG1CQUFrQixFQUNyQjs7QUN0RUQ7RUFDSSxhbEJBNEI7RWtCQzVCLGlCQUFnQjtFQUNoQiw2R2xCRHNCLEVrQk16Qjs7QUFFRDtFQUNJLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsYUFBWTtFQUNaLDZEQUFzRTtFQUV0RSw0QkFBMkI7RUFDM0IsMERBQXFEO1VBQXJELGtEQUFxRCxFQVF4RDtFVHRCTztJU09SO01BVU0sY0FBYSxFQUtsQjtFVG5CTztJU0lSO01BYU0sNkJBQTRCLEVBRWpDOztBQUVEO0VBQ0ksWUFBVztFQUNYLGlFQUEwRTtFQUMxRSwwREFBcUQ7VUFBckQsa0RBQXFEO0VBQ3JELCtCQUE4QixFQUtqQztFVGpDTztJU3dCUjtNQU9RLDRCQUEyQixFQUVsQzs7QUFFRDtFQUNJLFlBQVc7RUFDWCxvRUFBNkU7RUFDN0UsMERBQXFEO1VBQXJELGtEQUFxRDtFQUNyRCxtQ0FBa0MsRUFLckM7RVQ1Q087SVNtQ1I7TUFPUSxtQ0FBa0MsRUFFekM7O0FBRUQ7RUFDSSxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHlCQUF1QjtNQUF2QixzQkFBdUI7VUFBdkIsd0JBQXVCO0VBQ3ZCLDBCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsb0JBQW1CO0VBQ25CLGFBQVk7RUFDWixpQkFBZ0I7RUFDaEIsK0JsQnJEc0IsRWtCc0R6Qjs7QUFFRDtFQUNJLGVBQWM7RUFDZCxpQkFBZ0I7RUFDaEIsaUJBQWdCO0VBQ2hCLG1CQUFrQjtFQUNsQixlQUFjO0VBQ2QsbUJBQWtCLEVBV3JCO0VUeEVPO0lTdURSO01BU1Esa0JBQWlCO01BQ2pCLGdCQUFlO01BQ2YsV0FBVSxFQU1qQjtFVHJFTztJU29EUjtNQWVRLFdBQVUsRUFFakI7O0FBRUQ7RUFDSSxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLFVBQVM7RUFDVCxXQUFVLEVBTWI7RVRwRk87SVMwRVI7TUFPUSxVQUFTO01BQ1QsV0FBVSxFQUVqQjs7QUFFRDtFQUNJLFlBQVc7RUFDWCxXQUFVO0VBQ1YscUNBQTRCO1VBQTVCLDZCQUE0QixFQUMvQjs7QUFFRDtFQUNFO0lBQ0UsY2xCN0ZpQztFa0IrRm5DO0lBQ0UsY0FBK0I7SUFDL0IscUNBQTRCO1lBQTVCLDZCQUE0QjtFQUU5QjtJQUNFLGNsQnBHaUM7O0FrQjJGckM7RUFDRTtJQUNFLGNsQjdGaUM7RWtCK0ZuQztJQUNFLGNBQStCO0lBQy9CLHFDQUE0QjtZQUE1Qiw2QkFBNEI7RUFFOUI7SUFDRSxjbEJwR2lDOztBbUJKckM7RUFDSSxnRUFBaUY7RUFDakYsNkJBQTRCO0VBQzVCLGdFQUFxRDtVQUFyRCx3REFBcUQsRUFDeEQ7O0FBRUQ7RUFDSSxnRG5CSzJCLEVtQko5Qjs7QUNSRDtFQUNJLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsK0JBQW1CO0VBQW5CLDhCQUFtQjtNQUFuQix3QkFBbUI7VUFBbkIsb0JBQW1CO0VBQ25CLHlCQUF1QjtNQUF2QixzQkFBdUI7VUFBdkIsd0JBQXVCO0VBQ3ZCLGlCQUFnQjtFQUNoQixlQUFjO0VBQ2QsbUJBQWtCLEVBU3JCO0VYVE87SVdOUjtNQVNRLHdCQUEyQjtVQUEzQixxQkFBMkI7Y0FBM0IsNEJBQTJCLEVBTWxDO0VYVE87SVdOUjtNQWFRLFdBQVUsRUFFakI7O0FBRUQ7RUFDSSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLFlBQVc7RUFDWCxZQUFXO0VBQ1gsa0JBQWlCO0VBQ2pCLGFBQVk7RUFDWixtQkFBa0I7RUFDbEIsMEJBQWdEO0VBQ2hELG1CZGpCZTtFY2tCZiwwQ0FBaUM7RUFBakMsa0NBQWlDO0VBQ2pDLGlCQUFnQjtFQUNoQiwwQnBCekJpQztFb0IwQmpDLHlEcEIzQjJCO1VvQjJCM0IsaURwQjNCMkI7RW9CNEIzQixtQkFBa0IsRUE4QnJCO0VYMURPO0lXY1I7TUFpQlEsb0JBQWU7VUFBZixvQkFBZTtjQUFmLGdCQUFlO01BQ2YsYUFBWTtNQUNaLGlCQUFnQjtNQUNoQixrQkFBaUIsRUF3QnhCO01BNUNEO1FBc0JZLGdCQUFlLEVBQ2xCO0VYckNEO0lXY1I7TUEwQlEsb0JBQWdCO1VBQWhCLHFCQUFnQjtjQUFoQixpQkFBZ0I7TUFDaEIsY0FBYTtNQUNiLGtCQUFpQixFQWdCeEI7TUE1Q0Q7UUE4Qlksa0JBQWlCLEVBQ3BCO01BL0JUO1FBaUNZLGdCQUFlLEVBQ2xCO0VBbENUO0lBc0NRLHNCcEIzQ3VCO0lvQjRDdkIsdURwQjVDdUI7WW9CNEN2QiwrQ3BCNUN1QixFb0JnRDFCO0lBM0NMO01BeUNZLGVBQWtDLEVBQ3JDOztBQUlUO0VBQ0ksaUJBQWdCLEVBQ25COztBQUVEO0VBQ0ksbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCxnQkFBZTtFQUNmLGFBQVk7RUFDWixZZG5FYSxFYzBFaEI7RUFaRDtJQVFRLGtCQUFpQjtJQUNqQixVQUFTO0lBQ1QsZXBCakV1QixFb0JrRTFCOztBQUdMO0VBQ0ksWUFBVztFQUNYLGdCQUFnQjtFQUNoQixpQkFBZ0I7RUFDaEIsZUFBYztFQUNkLGVBQWMsRUFLakI7RVh4Rk87SVc4RVI7TUFRUSxpQkFBZ0IsRUFFdkI7O0FDM0ZEO0VBQ0ksV0FBVTtFQUNWLGlCQUFnQixFQWNuQjtFQWhCRDtJQUlRLHNCQUFxQjtJQUNyQixxQkFBb0IsRUFDdkI7RUFOTDtJQVFRLFdBQVU7SUFDVixZQUFXO0lBQ1gsY3JCRXVCO0lxQkR2QixrQ0FBeUI7SUFBekIsMEJBQXlCLEVBSTVCO0lBZkw7TUFhWSxjQUFpQyxFQUNwQzs7QUNkVDtFQUNJLFlBQVc7RUFDWCxtQmhCRGU7RWdCRWYsZUFBYztFQUNkLGF0Qkg0QixFc0JRL0I7RUFURDtJQU9RLHVCQUFzQixFQUN6Qjs7QUFHTDtFQUNJLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsMEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIsaUJBQWdCO0VBQ2hCLGdCQUFlO0VBQ2YsZUFBYyxFQUlqQjtFYmpCTztJYVFSO01BT1EsaUJBQWdCLEVBRXZCOztBQUVEO0VBQ0ksYUFBWTtFQUNaLG1CQUFrQjtFQUNsQix3Q3RCcEI2QixFc0J5QmhDO0ViM0JPO0lhbUJSO01BTVEsaUJBQWdCLEVBRXZCOztBQUVEO0VBQ0ksbUJBQWtCO0VBQ2xCLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsaUJBQWdCLEVBQ25COztBQUVEO0VBQ0kscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiwwQkFBOEI7TUFBOUIsdUJBQThCO1VBQTlCLCtCQUE4QixFQU9qQztFYjdDTztJYW9DUjtNQUlRLHFCQUFhO01BQWIscUJBQWE7TUFBYixjQUFhO01BQ2IsMEJBQThCO1VBQTlCLHVCQUE4QjtjQUE5QiwrQkFBOEI7TUFDOUIsdUJBQXFCO1VBQXJCLG9CQUFxQjtjQUFyQixzQkFBcUI7TUFDckIsbUJBQWtCLEVBRXpCOztBQUVEO0VBQ0ksZUFBYztFQUNkLGVBQWM7RUFDZCxrQkFBaUI7RUFDakIsY3RCbERpQztFc0JtRGpDLG1CQUFrQixFQVNyQjtFQWREO0lBT1EsZ0JBQWUsRUFDbEI7RWJ2REc7SWErQ1I7TUFVUSxhQUFZO01BQ1osY0FBYTtNQUNiLGtCQUFpQixFQUV4Qjs7QUFFRDtFQUNJLGlCQUFnQjtFQUNoQixlQUFjO0VBQ2QscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiwrQkFBbUI7RUFBbkIsOEJBQW1CO01BQW5CLHdCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIseUJBQXVCO01BQXZCLHNCQUF1QjtVQUF2Qix3QkFBdUI7RUFDdkIsbUJoQnZFZTtFZ0J3RWYsZUFBYyxFQXNCakI7RWI1Rk87SWErRFI7TUFVUSwwQkFBOEI7VUFBOUIsdUJBQThCO2NBQTlCLCtCQUE4QixFQW1CckM7RUFoQjBCO0liekVuQjtNYTREUjtRQWVZLGNBQWE7UUFDYixvQkFBbUI7UUFDbkIsY0FBYTtRQUNiLDJEQUEwRCxFQVdyRTtJYjVGTztNYStEUjtRQXNCYSwyREFBMEQsRUFPdEU7RWJ6Rk87SWE0RFI7TUEyQlEsV0FBVSxFQUVqQjs7QUFFRDtFQUNJLG1CQUFrQjtFQUNsQixtQkFBa0IsRUFLckI7RWJyR087SWE4RlI7TUFLUSxrQkFBaUIsRUFFeEI7O0FBRUQ7RUFDSSxZQUFXLEVBQ2Q7O0FDNUdEO0VBRVEsc0JBQXFCLEVBQ3hCOztBQUhMO0VBTVEsY0FBYSxFQUNoQjs7QUFHTDtFQUNJLGFBQVksRUFDZiIsImZpbGUiOiJwdWJsaWMuMzQ1MzgwMjAwMTYxNDVmYzQ1NTUwODEzZmMxY2Y1NTIuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyogZ2xvYmFsIHZhcmlhYmxlcyAqL1xuJGNvbG9yLXdoaXRlOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4kY29sb3ItYmxhY2s6IHJnYigwLCAwLCAwKTtcbiRjb2xvci1ncmV5OiByZ2IoMTIyLCAxMjIsIDEyMik7XG4kY29sb3ItZ3JleS1saWdodDogcmdiKDI0MywgMjQzLCAyNDMpO1xuJGNvbG9yLWdyZXktZGFyazogcmdiKDMyLCAzNiwgNDEpO1xuXG4kY29sb3ItcmVkOiByZ2IoMTk2LCA5MCwgNzUpO1xuJGNvbG9yLXJlZC1saWdodDogcmdiKDE4MywgNjksIDYwKTtcbiRjb2xvci1ncmVlbjogcmdiKDEsIDE0MiwgNjYpO1xuJGNvbG9yLWdyZWVuLWRhcms6IHJnYig0MiwgOTUsIDUxKTtcblxuJGNvbG9yLXB1cnBsZTogcmdiKDM3LCA1NSwgMTM2KTtcblxuLy90aGVzZSBhcmUgdXNlZCBpbiBtdWx0aXBsZSBzaXR1YXRpb25zIC0gbm90IGp1c3QgYWxlcnRzXG4kc3RhdHVzLXR5cGUtc3VjY2VzczogcmdiKDkwLCAxODIsIDkwKTtcbiRzdGF0dXMtdHlwZS1pbmZvOiByZ2IoOTEsIDE5MiwgMjIxKTtcbiRzdGF0dXMtdHlwZS13YXJuaW5nOiByZ2IoMjQwLCAxNzMsIDc4KTtcbiRzdGF0dXMtdHlwZS1kYW5nZXI6IHJnYigyMTcsIDgyLCA3OCk7XG5cbiRwYWdpbmF0aW9uLWxpbmstaG92ZXI6IHJnYmEoMzIsIDM2LCA0MSwgMC4xKTtcbiRwYWdpbmF0aW9uLWN1cnJlbnQtYm9yZGVyOiByZ2JhKDMyLCAzNiwgNDEsIDAuMTUpO1xuXG4kZm9ybS1zcGFjZS1zZXBhcmF0b3I6IDAuMjVlbTtcblxuJG1xczogKFxuICAgIGhhbmRoZWxkczogMjBlbSxcbiAgICB3aWRlX2hhbmRoZWxkczogMzVlbSxcbiAgICB0YWJsZXRzOiA0OGVtLFxuICAgIHdpZGVfdGFibGV0czogNjRlbSxcbik7XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9jb21tb24vX3ZhcnMuc2NzcyIsIi8qIHRoaXMgZmlsZSBpcyBmb3IgcHVibGljIGFuZCBwcml2YXRlL2FkbWluIHBhZ2VzICovXG5cbi8vIGluY2x1ZGUgdGhpcyBiZWZvcmUgbm9ybWFsaXplIGFzIG5vcm1hbGl6ZSBvdmVycmlkZSBpdCBmb3Igc29tZSBlbGVtZW50c1xuKiwgKjphZnRlciwgKjpiZWZvcmUgeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbkBpbXBvcnQgXCJub3JtYWxpemVcIjtcblxuaW5wdXRbdHlwZT1yYWRpb10sIGlucHV0W3R5cGU9Y2hlY2tib3hdIHsgbWFyZ2luLXJpZ2h0OiAwLjNlbTsgfVxuLy8gbWFrZSBzdXJlIGV2ZXJ5dGhpbmcgc2hvd3MgYSBwb2ludGVyIG9uIGhvdmVyXG5hW2hyZWZdLCBpbnB1dFt0eXBlPSdzdWJtaXQnXSwgaW5wdXRbdHlwZT0naW1hZ2UnXSwgbGFiZWxbZm9yXSwgc2VsZWN0LCBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbnRkIHsgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuLy8gbWFrZSBpbWFnZXMgc2NhbGUgYXV0b21hdGljYWxseSB3aGVuIHdpZHRoIG9mIHRoZSBjb250YWluZXIgY2hhbmdlc1xuaW1nLCBvYmplY3QsIGVtYmVkIHsgbWF4LXdpZHRoOiAxMDAlOyB9XG5pbWcgeyBoZWlnaHQ6IGF1dG87IH1cblxuLy8gbWFrZSBhbmNob3JzIHRoYXQgYXJlIGluc2lkZSBoZWFkZXJzIGxvb2sgbGlrZSB0aGUgaGVhZGVyLCBidXQgdW5kZXJsaW5lIHdoZW4gaG92ZXJlZFxuaDEsIGgyLCBoMywgaDQge1xuICAgICY6bm90KC5oZWFkaW5nLWtlZXBfbWFyZ2luKTpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDA7IH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uLW1hcmdpbi1ub190b3AgeyBtYXJnaW4tdG9wOiAwOyB9XG4uLW1hcmdpbi1ub19tYXJnaW4geyBtYXJnaW46IDA7IH1cbi4tZGlzcGxheS1oaWRkZW4geyBkaXNwbGF5OiBub25lOyB9XG4uLWxpbmstbm9fdW5kZXJsaW5lIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4uLXRleHQtY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9jb21tb24vX2NvbW1vbi5zY3NzIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjUuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaHRtbCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMiAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbm1haW4geyAvKiAxICovXG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5cbmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgaGVpZ2h0OiAwOyAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5cbmEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgICBvdXRsaW5lLXdpZHRoOiAwO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5cbmIsXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cblxubWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hdWRpbyxcbnZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5maWVsZHNldCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG5cbnRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscywgLyogMSAqL1xubWVudSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBTY3JpcHRpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuY2FudmFzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhpZGRlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKi9cblxuW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9jb21tb24vX25vcm1hbGl6ZS5zY3NzIiwiLyogZ2xvYmFsIHZhcmlhYmxlcyAqL1xuLyogdGhpcyBmaWxlIGlzIGZvciBwdWJsaWMgYW5kIHByaXZhdGUvYWRtaW4gcGFnZXMgKi9cbiosICo6YWZ0ZXIsICo6YmVmb3JlIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2NS4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDIgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovIH1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbm1haW4ge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7IH1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqLyB9XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzLFxubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxuLyogU2NyaXB0aW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBIaWRkZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmlucHV0W3R5cGU9cmFkaW9dLCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07IH1cblxuYVtocmVmXSwgaW5wdXRbdHlwZT0nc3VibWl0J10sIGlucHV0W3R5cGU9J2ltYWdlJ10sIGxhYmVsW2Zvcl0sIHNlbGVjdCwgYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbnRkIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG5pbWcsIG9iamVjdCwgZW1iZWQge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuaW1nIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbmgxOm5vdCguaGVhZGluZy1rZWVwX21hcmdpbik6Zmlyc3QtY2hpbGQsIGgyOm5vdCguaGVhZGluZy1rZWVwX21hcmdpbik6Zmlyc3QtY2hpbGQsIGgzOm5vdCguaGVhZGluZy1rZWVwX21hcmdpbik6Zmlyc3QtY2hpbGQsIGg0Om5vdCguaGVhZGluZy1rZWVwX21hcmdpbik6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbmgxIGEsIGgyIGEsIGgzIGEsIGg0IGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGgxIGE6aG92ZXIsIGgxIGE6YWN0aXZlLCBoMiBhOmhvdmVyLCBoMiBhOmFjdGl2ZSwgaDMgYTpob3ZlciwgaDMgYTphY3RpdmUsIGg0IGE6aG92ZXIsIGg0IGE6YWN0aXZlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uLW1hcmdpbi1ub190b3Age1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi4tbWFyZ2luLW5vX21hcmdpbiB7XG4gIG1hcmdpbjogMDsgfVxuXG4uLWRpc3BsYXktaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uLWxpbmstbm9fdW5kZXJsaW5lIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi4tdGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuaHRtbCB7XG4gIGZvbnQ6IDEwMCUvMSAnQ29ycG9yYXRlIFMgVzAxJywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICM0NDQ7IH1cblxuYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2U7XG4gIGNvbG9yOiAjMzA0N2IwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgY29sb3I6ICM0NjVmY2Q7IH1cblxuYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG50ZXh0YXJlYSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLmZvcm0taW5wdXQtYWxpZ25fcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4uZm9ybS1mb3JtX3dyYXAge1xuICB3aWR0aDogOTAlO1xuICBtYXgtd2lkdGg6IDMwZW07XG4gIG1hcmdpbjogMWVtIGF1dG87XG4gIHBhZGRpbmc6IDFlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuZm9ybS1mb3JtX3dyYXAgaDIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmZvcm0tZm9ybV93cmFwIGg0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTsgfVxuXG4uZm9ybS1maWVsZHNldCB7XG4gIG1hcmdpbjogMS41ZW0gMCAxZW07XG4gIHBhZGRpbmc6IDFlbSAxZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuZm9ybS1maWVsZHNldCA+IC5mb3JtLWZpZWxkX3dyYXA6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTsgfVxuXG4uZm9ybS1maWVsZHNldC1maXJzdCB7XG4gIG1hcmdpbi10b3A6IDAuNWVtOyB9XG5cbi5mb3JtLWZpZWxkLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG5cbi5mb3JtLWZpZWxkX3dyYXAgc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjNlbTtcbiAgcGFkZGluZzogMC41ZW07IH1cblxuLmZvcm0tZmllbGRfd3JhcCwgLmZvcm1fdGFibGUtY29sIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG4gIC5mb3JtLWZpZWxkX3dyYXAgbGFiZWwsIC5mb3JtX3RhYmxlLWNvbCBsYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtOyB9XG4gIC5mb3JtLWZpZWxkX3dyYXAgaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0pOm5vdChbdHlwZT1idXR0b25dKTpub3QoW3R5cGU9ZmlsZV0pOm5vdChbdHlwZT1yYWRpb10pOm5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1jb2xvcl0pLCAuZm9ybS1maWVsZF93cmFwIHRleHRhcmVhLCAuZm9ybS1maWVsZF93cmFwIHNlbGVjdCwgLmZvcm1fdGFibGUtY29sIGlucHV0Om5vdChbdHlwZT1zdWJtaXRdKTpub3QoW3R5cGU9YnV0dG9uXSk6bm90KFt0eXBlPWZpbGVdKTpub3QoW3R5cGU9cmFkaW9dKTpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9Y29sb3JdKSwgLmZvcm1fdGFibGUtY29sIHRleHRhcmVhLCAuZm9ybV90YWJsZS1jb2wgc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjVlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDMyLCAzNiwgNDEsIDAuMTUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7IH1cbiAgLmZvcm0tZmllbGRfd3JhcCBpbnB1dFt0eXBlPWZpbGVdLCAuZm9ybV90YWJsZS1jb2wgaW5wdXRbdHlwZT1maWxlXSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmZvcm0tZmllbGRfd3JhcC1ub193aWR0aCBpbnB1dDpub3QoW3R5cGU9c3VibWl0XSk6bm90KFt0eXBlPWJ1dHRvbl0pOm5vdChbdHlwZT1maWxlXSk6bm90KFt0eXBlPXJhZGlvXSk6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPWNvbG9yXSksIC5mb3JtLWZpZWxkX3dyYXAtbm9fd2lkdGggdGV4dGFyZWEsIC5mb3JtLWZpZWxkX3dyYXAtbm9fd2lkdGggc2VsZWN0IHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmZvcm0tZmllbGRfd3JhcC1ub19tYXJnaW4ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLWZpZWxkX3dyYXAtdGV4dGFyZWEgdGV4dGFyZWEge1xuICBoZWlnaHQ6IDEwZW07IH1cblxuLmZvcm0tZmllbGRfd3JhcC1jaGVja2JveCBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmZvcm0tZmllbGRfd3JhcC1jaGVja2JveCBsYWJlbDpob3ZlciB7XG4gICAgY29sb3I6ICM3Nzc3Nzc7IH1cblxuLmZvcm0tZmllbGRfd3JhcC1yYWRpb19yb3cgPiBsYWJlbDpmaXJzdC1vZi10eXBlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbTsgfVxuXG4uZm9ybS1maWVsZF93cmFwLXJhZGlvX3JvdyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvcm0tZmllbGRfd3JhcC1mbGV4X2hvcnoge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxZW07IH1cbiAgLmZvcm0tZmllbGRfd3JhcC1mbGV4X2hvcnogPiAuZm9ybS1maWVsZF93cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLWZpZWxkX3dyYXAtZmxleF9mdWxsX3dpZHRoIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM1ZW0pIHtcbiAgICAuZm9ybS1maWVsZF93cmFwLWZsZXhfZnVsbF93aWR0aCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNWVtKSB7XG4gICAgLmZvcm0tZmllbGRfd3JhcC1mbGV4X2Z1bGxfd2lkdGggPiAuZm9ybS1maWVsZF93cmFwIHtcbiAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uZm9ybS1maWVsZF93cmFwLXJpZ2h0X21hcmdpbiB7XG4gIG1hcmdpbi1yaWdodDogMC4yNWVtOyB9XG5cbi5mb3JtLWZpZWxkX3dyYXAtcmVhZG9ubHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZvcm0tZmllbGRfd3JhcC1yZWFkb25seSBpbnB1dDpub3QoW3R5cGU9c3VibWl0XSk6bm90KFt0eXBlPWJ1dHRvbl0pOm5vdChbdHlwZT1maWxlXSk6bm90KFt0eXBlPXJhZGlvXSk6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPWNvbG9yXSksIC5mb3JtLWZpZWxkX3dyYXAtcmVhZG9ubHkgdGV4dGFyZWEsIC5mb3JtLWZpZWxkX3dyYXAtcmVhZG9ubHkgc2VsZWN0IHtcbiAgICBvcGFjaXR5OiAwLjQ7IH1cbiAgLmZvcm0tZmllbGRfd3JhcC1yZWFkb25seTphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC41ZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY29udGVudDogXCJyZWFkLW9ubHlcIjsgfVxuXG4uZm9ybS1maWVsZF93cmFwLWluc2V0IHtcbiAgcGFkZGluZy1sZWZ0OiAyZW07XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgI2E3YTdhNzsgfVxuXG4uZm9ybS12ZXJ0aWNhbF9saXN0ID4gZGl2IGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5mb3JtLXZlcnRpY2FsX2xpc3QgPiBkaXYgbGFiZWw6aG92ZXIge1xuICAgIGNvbG9yOiAjNzc3Nzc3OyB9XG5cbi5mb3JtLWZpZWxkX3ByZWZpeCB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtOyB9XG4gIC5mb3JtLWZpZWxkX3ByZWZpeCBsYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZm9ybS1maWVsZF9zdWZmaXgge1xuICBtYXJnaW4tbGVmdDogMC4yNWVtO1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZm9ybS1maWVsZF9zZXBhcmF0b3Ige1xuICBwYWRkaW5nOiAwIDAuMjVlbTsgfVxuXG4uZm9ybS1maWVsZF9oZWxwIHtcbiAgbWFyZ2luLXRvcDogMC4yZW07XG4gIHBhZGRpbmctbGVmdDogMC4xZW07XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIGNvbG9yOiAjNmY2ZjZmO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLmZvcm0tZmllbGRfaGVscC1idXR0b24ge1xuICBtYXJnaW4tdG9wOiAwLjI1ZW07IH1cblxuLmZvcm0tcm93X2l0ZW1fd3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uZm9ybS1yb3dfaXRlbSB7XG4gIGZsZXg6IDAgMCA1MCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM1ZW0pIHtcbiAgICAuZm9ybS1yb3dfaXRlbSB7XG4gICAgICBmbGV4OiAxIDEgMzMlOyB9IH1cblxuLmZvcm0tYnV0dG9uX3dyYXAgYnV0dG9uLCAuZm9ybS1idXR0b25fd3JhcCAuYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVlbTsgfVxuXG4uZm9ybS1hY3Rpb25fbGluayB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIG1hcmdpbi1yaWdodDogMWVtO1xuICBjb2xvcjogcmdiYSgxOTYsIDkwLCA3NSwgMC42KTsgfVxuICAuZm9ybS1hY3Rpb25fbGluazpob3ZlciB7XG4gICAgY29sb3I6ICNjNDVhNGI7IH1cblxuLmZvcm0tZmllbGRfZXJyb3JzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMC4yNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLmZvcm0tZmllbGRfZXJyb3JzIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG4gICAgcGFkZGluZzogMC41ZW07XG4gICAgYmFja2dyb3VuZDogI2YzZjNmMztcbiAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjZDk1MjRlO1xuICAgIGJvcmRlci13aWR0aDogMCAwIDAgMTBweDsgfVxuXG4udmljaC1maWxlIGxhYmVsIHtcbiAgbWFyZ2luLXRvcDogMC4yNWVtOyB9XG5cbi5mb3JtLWhlYWRpbmdfd2l0aF9saW5rX3dyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4uZm9ybS1oZWFkaW5nX2xpbmtzIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLmZvcm0taGVhZGluZ19saW5rcyBhOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uYWxlcnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiA5MCU7XG4gIG1pbi13aWR0aDogMTByZW07XG4gIG1hcmdpbjogMWVtIGF1dG87XG4gIHBhZGRpbmc6IDAuNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xuICBib3JkZXItbGVmdDogMTBweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hbGVydCB7XG4gICAgICB3aWR0aDogNzAlOyB9IH1cbiAgLmZvcm0tZm9ybV93cmFwIC5hbGVydCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmFsZXJ0LXR5cGUtc3VjY2VzcyB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjNWFiNjVhOyB9XG5cbi5hbGVydC10eXBlLWluZm8ge1xuICBib3JkZXItbGVmdC1jb2xvcjogIzViYzBkZDsgfVxuXG4uYWxlcnQtdHlwZS13YXJuaW5nIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNmMGFkNGU7IH1cblxuLmFsZXJ0LXR5cGUtZGFuZ2VyIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNkOTUyNGU7IH1cblxuLmFsZXJ0LWFjdGlvbi1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAxZW07IH1cblxuLmllOV93YXJuaW5nLXdyYXAge1xuICBiYWNrZ3JvdW5kOiAjZDk1MjRlOyB9XG5cbi5pZTlfd2FybmluZy1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiAzNWVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMC44ZW07XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmllOV93YXJuaW5nLWNvbnRlbnQtYmlnIHtcbiAgZm9udC1zaXplOiAxLjJlbTsgfVxuXG4uaWU5X3dhcm5pbmctbGluayB7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5pZTlfd2FybmluZy1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogI2RkZDsgfVxuXG4uY29udGVudC13cmFwIHtcbiAgbWF4LXdpZHRoOiA3MS4yNWVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMmVtIDFlbTsgfVxuICAuY29udGVudC13cmFwOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3My4yNWVtKSB7XG4gICAgLmNvbnRlbnQtd3JhcCB7XG4gICAgICBwYWRkaW5nOiAyZW0gMDsgfSB9XG4gIC5jb250ZW50LXdyYXAtbWVkaXVtIHtcbiAgICBtYXgtd2lkdGg6IDcxLjI1ZW07IH1cbiAgLmNvbnRlbnQtd3JhcC1uYXJyb3cge1xuICAgIG1heC13aWR0aDogMzNlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jb250ZW50LXdyYXAtZmxleCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAuY29udGVudC13cmFwLWZsZXggPiBkaXYge1xuICAgICAgICB3aWR0aDogNDglOyB9IH1cbiAgLmNvbnRlbnQtd3JhcCBwOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLmNvbnRlbnQtaW1nLWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDFlbSBhdXRvOyB9XG5cbi5jb250ZW50LWltZy1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMWVtIDFlbSAxZW0gMDsgfVxuXG4uY29udGVudC1pbWctcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMWVtIDAgMWVtIDFlbTsgfVxuXG5idXR0b24sIC5idXR0b24ge1xuICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYTVmMzM7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzJhNWYzMztcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4gIGJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhODI0NjsgfVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LWZhbWlseTogJ0NvcnBvcmF0ZSBBIFcwMSc7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuaDIge1xuICBmb250LXNpemU6IDIuNWVtOyB9XG5cbmgzLCBoNCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbTsgfVxuXG4uaGVhZGVyLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNWVtIDJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDczLjI1ZW0pIHtcbiAgICAuaGVhZGVyLXdyYXAge1xuICAgICAgcGFkZGluZzogMWVtIDAgMC41ZW07IH0gfVxuXG4uaGVhZGVyLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDcxLjI1ZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmhlYWRlci1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDczLjI1ZW0pIHtcbiAgICAuaGVhZGVyLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5oZWFkZXItbmF2IHtcbiAgbWFyZ2luLXRvcDogMC42ZW07XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uaGVhZGVyX25hdi1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDJlbTsgfVxuICAuaGVhZGVyX25hdi1pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5oZWFkZXJfbmF2LWl0ZW0gYSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuaGVhZGVyX25hdi1pdGVtOmhvdmVyIHtcbiAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCAwICM3YTdhN2EsIC0xcHggLTFweCAycHggIzdhN2E3YSwgMXB4IC0xcHggMnB4ICM3YTdhN2EsIC0xcHggMXB4IDJweCAjN2E3YTdhLCAxcHggMXB4IDJweCAjN2E3YTdhO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uZm9vdGVyLXdyYXAge1xuICBwYWRkaW5nOiAwIDAgMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xuICBjb2xvcjogIzIwMjQyOTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyYTVmMzM7IH1cbiAgLmZvb3Rlci13cmFwIGEge1xuICAgIGNvbG9yOiAjMmE1ZjMzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5mb290ZXItd3JhcCBhOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5mb290ZXItd3JhcCAuc29jaWFsLXdyYXAgc3ZnIHtcbiAgICBmaWxsOiAjMjAyNDI5OyB9XG5cbi5mb290ZXItY29udGVudCB7XG4gIG1heC13aWR0aDogNzEuMjVlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3My4yNWVtKSB7XG4gICAgLmZvb3Rlci1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uZm9vdGVyLWZsZXgge1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIHBhZGRpbmctdG9wOiAyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5mb290ZXItZmxleCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgLmZvb3Rlci1mbGV4ID4gZGl2IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTsgfVxuICAgICAgICAuZm9vdGVyLWZsZXggPiBkaXY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uZm9vdGVyLXByb2plY3RfbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDA7IH1cbiAgLmZvb3Rlci1wcm9qZWN0X2xpc3QgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTsgfVxuXG4uZm9vdGVyLWxvZ28ge1xuICBtYXgtd2lkdGg6IDE2ZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwLjVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5mb290ZXItbG9nbyB7XG4gICAgICBtYXJnaW46IDA7IH0gfVxuXG4uZm9vdGVyLWNvcHlyaWdodCB7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uaGVyb2JhciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWluLWhlaWdodDogMzBlbTtcbiAgdGV4dC1zaGFkb3c6IDJweCAycHggMCBibGFjaywgLTFweCAtMXB4IDJweCBibGFjaywgMXB4IC0xcHggMnB4IGJsYWNrLCAtMXB4IDFweCAycHggYmxhY2ssIDFweCAxcHggMnB4IGJsYWNrOyB9XG5cbi5oZXJvYmFyLWhwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA5NXZoO1xuICBiYWNrZ3JvdW5kOiAjZjNmM2YzIHVybChcIi9pbWFnZXMvaGVyb2Jhci1ocDEuanBnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBib3gtc2hhZG93OiAxZW0gMWVtIDE0ZW0gcmdiYSgwLCAwLCAwLCAwLjkpIGluc2V0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmhlcm9iYXItaHAge1xuICAgICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3MS4yNWVtKSB7XG4gICAgLmhlcm9iYXItaHAge1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDsgfSB9XG5cbi5oZXJvYmFyLWNvbnRhY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2YzZjNmMyB1cmwoXCIvaW1hZ2VzL2hlcm9iYXItY29udGFjdC5qcGdcIikgbm8tcmVwZWF0O1xuICBib3gtc2hhZG93OiAxZW0gMWVtIDE0ZW0gcmdiYSgwLCAwLCAwLCAwLjkpIGluc2V0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzFlbSB0b3A7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuaGVyb2Jhci1jb250YWN0IHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfSB9XG5cbi5oZXJvYmFyLXByb3BlcnRpZXMge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2YzZjNmMyB1cmwoXCIvaW1hZ2VzL2hlcm9iYXItcHJvcGVydGllcy5qcGdcIikgbm8tcmVwZWF0O1xuICBib3gtc2hhZG93OiAxZW0gMWVtIDE0ZW0gcmdiYSgwLCAwLCAwLCAwLjkpIGluc2V0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmhlcm9iYXItcHJvcGVydGllcyB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tOyB9IH1cblxuLmhlcm9iYXItY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDMwZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxuXG4uaGVyb2Jhci1oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIG1heC13aWR0aDogNDVyZW07XG4gIG1hcmdpbi10b3A6IDQuMjVlbTtcbiAgcGFkZGluZzogMCAxZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5oZXJvYmFyLWhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAzLjI1ZW07XG4gICAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ3ZW0pIHtcbiAgICAuaGVyb2Jhci1oZWFkaW5nIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uaGVyb2Jhci1hcnJvdy13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDFlbTtcbiAgbGVmdDogNDIlO1xuICByaWdodDogNDIlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm9iYXItYXJyb3ctd3JhcCB7XG4gICAgICBsZWZ0OiA0NSU7XG4gICAgICByaWdodDogNDUlOyB9IH1cblxuLmhlcm9iYXItYXJyb3cge1xuICBoZWlnaHQ6IDRlbTtcbiAgd2lkdGg6IDRlbTtcbiAgYW5pbWF0aW9uOiBwdWxzZSA1cyBpbmZpbml0ZTsgfVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIGZpbGw6ICNmM2YzZjM7IH1cbiAgNTAlIHtcbiAgICBmaWxsOiAjYTBhMGEwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjVlbSk7IH1cbiAgMTAwJSB7XG4gICAgZmlsbDogI2YzZjNmMzsgfSB9XG5cbi5zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNiwgNjAsIDMyLCAwLjgpIHVybChcIi9pbWFnZXMvYmtnLnBuZ1wiKSByZXBlYXQ7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIGJveC1zaGFkb3c6IDFlbSAxZW0gMTRlbSByZ2JhKDEyMiwgMTIyLCAxMjIsIDAuNykgaW5zZXQ7IH1cblxuLnNlY3Rpb24tY2FyZHNfd3JhcCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDM3LCA1NSwgMTM2LCAwLjUpOyB9XG5cbi5jYXJkcy13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMmVtIGF1dG87XG4gIHBhZGRpbmc6IDAgMmVtO1xuICBtYXgtd2lkdGg6IDcxLjI1ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2FyZHMtd3JhcCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzMuMjVlbSkge1xuICAgIC5jYXJkcy13cmFwIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4uY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjFlbTtcbiAgbWF4LXdpZHRoOiAyMS41ZW07XG4gIGhlaWdodDogMjRlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGFkYWRhO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcbiAgYm94LXNoYWRvdzogMnB4IDJweCA0cHggcmdiYSgxMjIsIDEyMiwgMTIyLCAwLjMpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM1ZW0pIHtcbiAgICAuY2FyZCB7XG4gICAgICBmbGV4OiAwIDAgNDguNSU7XG4gICAgICB3aWR0aDogNDguNSU7XG4gICAgICBtYXgtd2lkdGg6IDQ4LjUlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cbiAgICAgIC5jYXJkOm50aC1vZi10eXBlKDJuKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNhcmQge1xuICAgICAgZmxleDogMCAwIDMxLjI1JTtcbiAgICAgIHdpZHRoOiAzMS4yNSU7XG4gICAgICBtYXgtd2lkdGg6IDMxLjI1JTsgfVxuICAgICAgLmNhcmQ6bnRoLW9mLXR5cGUoMm4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cbiAgICAgIC5jYXJkOm50aC1vZi10eXBlKDNuKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIC5jYXJkOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICMyNTM3ODg7XG4gICAgYm94LXNoYWRvdzogNHB4IDRweCA4cHggcmdiYSgzNywgNTUsIDEzNiwgMC4zKTsgfVxuICAgIC5jYXJkOmhvdmVyIGgyIHtcbiAgICAgIGNvbG9yOiAjMzA0N2IwOyB9XG5cbi5jYXJkLWhlYWRpbmcge1xuICBmb250LXNpemU6IDEuNGVtOyB9XG5cbi5jYXJkLWNvcHkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA3ZW07XG4gIHBhZGRpbmc6IDFlbTtcbiAgY29sb3I6ICM0NDQ7IH1cbiAgLmNhcmQtY29weSBoMiB7XG4gICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAjMjUzNzg4OyB9XG5cbi5jYXJkLWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMThlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgbWF4LWhlaWdodDogMjBlbTsgfSB9XG5cbi5zb2NpYWwtd3JhcCB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLnNvY2lhbC13cmFwIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07IH1cbiAgLnNvY2lhbC13cmFwIHN2ZyB7XG4gICAgd2lkdGg6IDJlbTtcbiAgICBoZWlnaHQ6IDJlbTtcbiAgICBmaWxsOiAjMjUzNzg4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cbiAgICAuc29jaWFsLXdyYXAgc3ZnOmhvdmVyIHtcbiAgICAgIGZpbGw6ICMzMDQ3YjA7IH1cblxuLnNlY3Rpb25fY29udGVudC1hYm91dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDcxLjI1ZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjb2xvcjogd2hpdGU7IH1cbiAgLnNlY3Rpb25fY29udGVudC1hYm91dCAuYWJvdXQtaW1nX3dyYXAge1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjM1ZW07IH1cblxuLmFib3V0LWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAzZW0gMWVtO1xuICBtYXgtd2lkdGg6IDQyZW07XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFib3V0LWNvbnRlbnQge1xuICAgICAgZm9udC1zaXplOiAxLjNlbTsgfSB9XG5cbi5hYm91dC1jb3B5IHtcbiAgcGFkZGluZzogMmVtO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzIsIDM2LCA0MSwgMC42KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hYm91dC1jb3B5IHtcbiAgICAgIHBhZGRpbmc6IDJlbSA0ZW07IH0gfVxuXG4uYWJvdXQtY29weS1oZWFkaW5nIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxuLmFib3V0LWljb25zX3dyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM1ZW0pIHtcbiAgICAuYWJvdXQtaWNvbnNfd3JhcCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgbWFyZ2luOiAzZW0gYXV0byAwOyB9IH1cblxuLmFib3V0LWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAzMCU7XG4gIG1hcmdpbjogMCAxZW0gMCAwO1xuICBmaWxsOiAjZjNmM2YzO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmFib3V0LWljb246bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM1ZW0pIHtcbiAgICAuYWJvdXQtaWNvbiB7XG4gICAgICB3aWR0aDogNS41ZW07XG4gICAgICBoZWlnaHQ6IDUuNWVtO1xuICAgICAgbWFyZ2luOiAwIDJlbSAwIDA7IH0gfVxuXG4ubG9nb3Mtd3JhcCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA3MS4yNWVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sb2dvcy13cmFwIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubG9nb3Mtd3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtYXV0by1mbG93OiByb3c7XG4gICAgICAgIGdyaWQtZ2FwOiAyZW07XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoNDUlLCBhdXRvKSk7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubG9nb3Mtd3JhcCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjMlLCBhdXRvKSk7IH0gfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3My4yNWVtKSB7XG4gICAgLmxvZ29zLXdyYXAge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubG9nbyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJlbTsgfSB9XG5cbi5sb2dvLXN2ZyB7XG4gIHdpZHRoOiAxNWVtOyB9XG5cbi5jb250YWN0LXdyYXAgaDMge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07IH1cblxuLmNvbnRhY3Qtd3JhcCBwOmZpcnN0LW9mLXR5cGUge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5jb250YWN0LW1hcC13cmFwIHtcbiAgaGVpZ2h0OiAyNWVtOyB9XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9wdWJsaWMuc2NzcyIsIi8vIG1peGlucyArIG5vcm1hbGl6ZSArIGNvbW1vblxuQGltcG9ydCBcImNvbW1vbi92YXJzXCIsXG4gICAgXCJwdWJsaWMvdmFyc1wiLFxuICAgIFwiY29tbW9uL21peGluc1wiLFxuICAgIFwicHVibGljL21peGluc1wiLFxuICAgIFwiY29tbW9uL21lZGlhXCIsXG4gICAgXCJjb21tb24vY29tbW9uXCI7XG5cbi8vIGdsb2JhbCBzdHlsZXMgb24gdGhlIG1vc3QgY29tbW9uIGVsZW1lbnRzXG5odG1sIHtcbiAgICBAaW5jbHVkZSBkZWZhdWx0LWh0bWwtc3R5bGU7XG59XG5cbmEge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2U7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLXB1cnBsZSwgMTAlKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBjb2xvcjogbGlnaHRlbigkY29sb3ItcHVycGxlLCAyMCUpO1xuICAgIH1cbn1cbmFkZHJlc3MgeyBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLy8gbG9hZCBjb21tb24gc3R5bGVzXG5AaW1wb3J0IFwiY29tbW9uL2Zvcm1zXCIsXG4gICAgLy9cImNvbW1vbi9wYWdpbmF0aW9uXCIsXG4gICAgXCJjb21tb24vYWxlcnRzXCIsXG4gICAgLy9cImNvbW1vbi9tb2RhbFwiLFxuICAgIFwiY29tbW9uL2llOV93YXJuaW5nXCI7XG5cbi8vIHB1YmxpYyBvbmx5IHN0eWxlc1xuQGltcG9ydCBcInB1YmxpYy9jb250ZW50XCIsXG4gICAgXCJwdWJsaWMvYnV0dG9uc1wiLFxuICAgIFwicHVibGljL2hlYWRpbmdzXCIsXG4gICAgXCJwdWJsaWMvaGVhZGVyXCIsXG4gICAgXCJwdWJsaWMvZm9vdGVyXCIsXG4gICAgXCJwdWJsaWMvaGVyb2JhclwiLFxuICAgIFwicHVibGljL3NlY3Rpb25cIixcbiAgICBcInB1YmxpYy9jYXJkc1wiLFxuICAgIFwicHVibGljL3NvY2lhbFwiXG4gICAgO1xuXG4vLyBwYWdlIHNwZWNpZmljXG5AaW1wb3J0IFwicHVibGljL3BfaW5kZXhcIiwgXCJwdWJsaWMvcF9jb250YWN0XCI7XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy5zY3NzIiwiLy8gdXNlZCBmb3IgYm90aCB0aGUgcHVibGljIGh0bWwgJiB0aW55bWNlXG5AbWl4aW4gZGVmYXVsdC1odG1sLXN0eWxlIHtcbiAgICBmb250OiAxMDAlLzEgJ0NvcnBvcmF0ZSBTIFcwMScsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX21peGlucy5zY3NzIiwiLy8gZm9yIHRoZSBtYXhpbXVtIHdpZHRoIG9mIHRoZSBlbnRpcmUgY29udGVudCAoaW1hZ2VzICsgdGV4dCArIGV0YylcbiRtYXgtd2lkdGg6IDcxLjI1ZW07XG4vLyBtYXggd2lkdGggZm9yIGNvbnRlbnQgKHRleHQpXG4kbWF4LWNvbnRlbnQtd2lkdGg6IDMzZW07XG5cbiR0ZXh0LWNvbG9yOiAjNDQ0O1xuJHByaW1hcnktY29sb3I6ICRjb2xvci1yZWQ7XG4kbGluay1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cbiRib3JkZXItcmFkaXVzOiAycHg7XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX3ZhcnMuc2NzcyIsIiRmb3JtLWxhYmVsLWNvbG9yLWhvdmVyOiBsaWdodGVuKCR0ZXh0LWNvbG9yLCAyMCUpO1xuJGZvcm0tYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbi8vIGZpeGVzIHNwYWNlIGJlbG93IHRleHRhcmVhcywgbWFraW5nIGl0IGNvbnNpc3RlbnQgYWNyb3NzIGJyb3dzZXJzXG50ZXh0YXJlYSB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmZvcm0taW5wdXQtYWxpZ25fcmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4uZm9ybS1mb3JtX3dyYXAge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWF4LXdpZHRoOiAzMGVtO1xuICAgIG1hcmdpbjogMWVtIGF1dG87XG4gICAgcGFkZGluZzogMWVtO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggJGZvcm0tYm9yZGVyLWNvbG9yO1xuICAgIGgyIHsgbWFyZ2luLXRvcDogMDsgfVxuICAgIGg0IHsgbWFyZ2luLWJvdHRvbTogMC41ZW07IH1cbn1cblxuLmZvcm0tZmllbGRzZXQge1xuICAgIG1hcmdpbjogMS41ZW0gMCAxZW07XG4gICAgcGFkZGluZzogMWVtIDFlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZm9ybS1ib3JkZXItY29sb3I7XG4gICAgPiAuZm9ybS1maWVsZF93cmFwOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgIH1cbn1cbi5mb3JtLWZpZWxkc2V0LWZpcnN0IHtcbiAgICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cblxuQG1peGluIHRleHQtaW5wdXQoKSB7XG4gICAgaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0pOm5vdChbdHlwZT1idXR0b25dKTpub3QoW3R5cGU9ZmlsZV0pOm5vdChbdHlwZT1yYWRpb10pOm5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1jb2xvcl0pLCB0ZXh0YXJlYSwgc2VsZWN0IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4uZm9ybS1maWVsZC1mbGV4IHtcbiAgICBAaW5jbHVkZSBmbGV4LXJvd193cmFwO1xufVxuXG4uZm9ybS1maWVsZF93cmFwIHtcbiAgICBzZWxlY3Qge1xuICAgICAgICBoZWlnaHQ6IDIuM2VtO1xuICAgICAgICBwYWRkaW5nOiAwLjVlbTtcbiAgICB9XG59XG5cbi5mb3JtLWZpZWxkX3dyYXAsIC5mb3JtX3RhYmxlLWNvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNlLXNlcGFyYXRvcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgdGV4dC1pbnB1dCgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRjb2xvci1ncmV5LWRhcmssIDAuMTUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPWZpbGVdIHsgd2lkdGg6IDEwMCU7IH1cbn1cbi5mb3JtLWZpZWxkX3dyYXAtbm9fd2lkdGgge1xuICAgIEBpbmNsdWRlIHRleHQtaW5wdXQoKSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cbi5mb3JtLWZpZWxkX3dyYXAtbm9fbWFyZ2luIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmZvcm0tZmllbGRfd3JhcC10ZXh0YXJlYSB7XG4gICAgdGV4dGFyZWEgeyBoZWlnaHQ6IDEwZW07IH1cbn1cbi5mb3JtLWZpZWxkX3dyYXAtY2hlY2tib3gge1xuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgJjpob3ZlciB7IGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1ob3ZlcjsgfVxuICAgIH1cbn1cbi5mb3JtLWZpZWxkX3dyYXAtcmFkaW9fcm93IHtcbiAgICA+IGxhYmVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2Utc2VwYXJhdG9yO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuLmZvcm0tZmllbGRfd3JhcC1mbGV4X2hvcnoge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgPiAuZm9ybS1maWVsZF93cmFwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5mb3JtLWZpZWxkX3dyYXAtZmxleF9mdWxsX3dpZHRoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBtcSh3aWRlX2hhbmRoZWxkcykge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgfVxuXG4gICAgPiAuZm9ybS1maWVsZF93cmFwIHtcbiAgICAgICAgQGluY2x1ZGUgbXEod2lkZV9oYW5kaGVsZHMpIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3JtLWZpZWxkX3dyYXAtcmlnaHRfbWFyZ2luIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbn1cbi5mb3JtLWZpZWxkX3dyYXAtcmVhZG9ubHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIEBpbmNsdWRlIHRleHQtaW5wdXQge1xuICAgICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwLjVlbTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgY29udGVudDogXCJyZWFkLW9ubHlcIjtcbiAgICB9XG59XG5cbi8vIHNob3dzIGEgXCJzdWJcIiBvZiBwcmV2aW91cyBmaWVsZFxuLmZvcm0tZmllbGRfd3JhcC1pbnNldCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCBkYXJrZW4oJGNvbG9yLWdyZXktbGlnaHQsIDMwJSk7XG59XG5cbi8vIGZvciB1c2UgaW5zaWRlIG9mIGEgZmllbGRfd3JhcCBmb3IgbXVsdGlwbGUgZmllbGRzIHNob3duIHZlcnRpY2FsbHlcbi5mb3JtLXZlcnRpY2FsX2xpc3QgPiBkaXYge1xuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAmOmhvdmVyIHsgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWhvdmVyOyB9XG4gICAgfVxufVxuXG4uZm9ybS1maWVsZF9wcmVmaXgge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgbGFiZWwgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG59XG4uZm9ybS1maWVsZF9zdWZmaXgge1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1zcGFjZS1zZXBhcmF0b3I7XG4gICAgZmxleDogMCAwIGF1dG87XG59XG4uZm9ybS1maWVsZF9zZXBhcmF0b3Ige1xuICAgIHBhZGRpbmc6IDAgMC4yNWVtO1xufVxuXG4uZm9ybS1maWVsZF9oZWxwIHtcbiAgICBtYXJnaW4tdG9wOiAwLjJlbTtcbiAgICAvLyB0aGUgcGFkZGluZyBoZWxwcyBpdCBhbGlnbiBiZXR0ZXIgd2l0aCBmaWVsZCBhYm92ZVxuICAgIHBhZGRpbmctbGVmdDogMC4xZW07XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMTclKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4vLyBmb3IgaGVscCBieSBidXR0b25zXG4uZm9ybS1maWVsZF9oZWxwLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2Utc2VwYXJhdG9yO1xufVxuXG4vLyBmb3IgbGlzdHMgb2YgY2hlY2tib3hlcyBvciByYWRpb3MgKHNob3dzIGFzIHVwIHRvIDMgY29sdW1ucylcbi5mb3JtLXJvd19pdGVtX3dyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG4uZm9ybS1yb3dfaXRlbSB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBAaW5jbHVkZSBtcSh3aWRlX2hhbmRoZWxkcykge1xuICAgICAgICBmbGV4OiAxIDEgMzMlO1xuICAgIH1cbn1cblxuLmZvcm0tYnV0dG9uX3dyYXAge1xuICAgIGJ1dHRvbiwgLmJ1dHRvbiB7IG1hcmdpbi1yaWdodDogMC41ZW07IH1cbn1cblxuLmZvcm0tYWN0aW9uX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gICAgY29sb3I6IHJnYmEoJGxpbmstY29sb3IsIDAuNik7XG4gICAgJjpob3ZlciB7IGNvbG9yOiByZ2JhKCRsaW5rLWNvbG9yLCAxKTsgfVxufVxuXG4uZm9ybS1maWVsZF9lcnJvcnMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2Utc2VwYXJhdG9yO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNlLXNlcGFyYXRvcjtcbiAgICAgICAgcGFkZGluZzogMC41ZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LWxpZ2h0O1xuICAgICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAkc3RhdHVzLXR5cGUtZGFuZ2VyO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgMCAwIDEwcHg7XG4gICAgfVxufVxuXG4vLyBmb3IgdGhlIGxhYmVscyB3aXRoaW4gdGhlIHZpY2ggZmlsZSB1cGxvYWRlciB3aWRnZXRcbi52aWNoLWZpbGUgbGFiZWwge1xuICAgIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNlLXNlcGFyYXRvcjtcbn1cblxuLy8gZm9ybSBoZWFkaW5ncyB3aXRoIGxpbmtzXG4uZm9ybS1oZWFkaW5nX3dpdGhfbGlua193cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLmZvcm0taGVhZGluZ19saW5rcyB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgYTpsYXN0LWNoaWxkIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG59XG5cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL2NvbW1vbi9fZm9ybXMuc2NzcyIsIkBtaXhpbiBmbGV4LXJvd193cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG59XG5cbkBtaXhpbiBmbGV4LWNvbHVtbl93cmFwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG59XG5cbi8vIENsZWFyZml4IGZyb206IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2NsZWFyLWZpeC8gKEF1Z3VzdCAyMDEyKVxuQG1peGluIGNsZWFyZml4IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL2NvbW1vbi9fbWl4aW5zLnNjc3MiLCIvLyBmcm9tIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS91c2luZy1zYXNzLW1hcHMvXG5AbWl4aW4gbXEoJGJyZWFrcG9pbnQpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJG1xcywgJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICN7bWFwLWdldCgkbXFzLCAkYnJlYWtwb2ludCl9KSB7IEBjb250ZW50OyB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50KSB7IEBjb250ZW50IH1cbiAgICB9XG59XG5cbkBtaXhpbiBtcV9tYXgoJGJyZWFrcG9pbnQpIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJG1xcywgJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7bWFwLWdldCgkbXFzLCAkYnJlYWtwb2ludCl9KSB7IEBjb250ZW50OyB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50KSB7IEBjb250ZW50IH1cbiAgICB9XG59XG5cbkBtaXhpbiBtcV9yZXRpbmEoKSB7XG4gICAgQG1lZGlhXG4gICAgICAgICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICAgICAgICAobWluLXJlc29sdXRpb246IDE5MmRwaSkge1xuICAgICAgICAgICAgQGNvbnRlbnRcbiAgICAgICAgfVxufVxuXG4vLyBkZWJ1ZyBmb3Igc2hvd2luZyB0aGUgc2NyZWVuIHdpZHRoIGluIHRoZSBib3R0b20gcmlnaHRcbkBtaXhpbiBzY3JlZW5fd2lkdGhfZGlzcGxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHBhZGRpbmc6IDAuNGVtIDAuNjVlbTtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgY29sb3I6ICMyMGQ4MzI7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xufVxuXG4kc2hvdy1zY3JlZW4td2lkdGg6IGZhbHNlICFkZWZhdWx0O1xuQGlmICRzaG93LXNjcmVlbi13aWR0aCA9PSB0cnVlIHtcbiAgICAkc3RhcnQtYXQ6IDMwMHB4O1xuICAgICRpbmNyZW1lbnQtYnk6IDEwcHg7XG5cbiAgICAkbWluOiBmbG9vcigkc3RhcnQtYXQvJGluY3JlbWVudC1ieSk7XG4gICAgJG1heDogZmxvb3IoKCRtYXgtd2lkdGggKyAxMDApLyRpbmNyZW1lbnQtYnkpO1xuXG4gICAgYm9keSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNjcmVlbl93aWR0aF9kaXNwbGF5O1xuXG4gICAgICAgICAgICBAZm9yICRpIGZyb20gJG1pbiB0aHJvdWdoICRtYXgge1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JGkgKiAkaW5jcmVtZW50LWJ5fSkge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIndpZHRoOiAjeyRpICogJGluY3JlbWVudC1ieX1cIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9jb21tb24vX21lZGlhLnNjc3MiLCIuYWxlcnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWluLXdpZHRoOiAxMHJlbTtcbiAgICBtYXJnaW46IDFlbSBhdXRvO1xuICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWxpZ2h0O1xuICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIG1xKHRhYmxldHMpIHtcbiAgICAgICAgd2lkdGg6IDcwJTtcbiAgICB9XG5cbiAgICAvLyBhbGVydHMgbmVzdGVkIGluc2lkZSBmb3JtcyBzaG91bGQgZ28gdGhlIGZ1bGwgd2lkdGhcbiAgICAuZm9ybS1mb3JtX3dyYXAgJiB7IHdpZHRoOiAxMDAlOyB9XG59XG5cbi5hbGVydC10eXBlLXN1Y2Nlc3Mge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkc3RhdHVzLXR5cGUtc3VjY2Vzcztcbn1cbi5hbGVydC10eXBlLWluZm8ge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkc3RhdHVzLXR5cGUtaW5mbztcbn1cbi5hbGVydC10eXBlLXdhcm5pbmcge1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkc3RhdHVzLXR5cGUtd2FybmluZztcbn1cbi5hbGVydC10eXBlLWRhbmdlciB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRzdGF0dXMtdHlwZS1kYW5nZXI7XG59XG5cbi8vIG5vIGdlbmVyaWMgSlMgaW1wbGVtZW50ZWQgdG8gbWFrZSB0aGUgbWVzc2FnZSBkaXNhcHBlYXJcbi5hbGVydC1hY3Rpb24tcmlnaHQge1xuICAgIC8vIGZvciA8PUlFOVxuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL2NvbW1vbi9fYWxlcnRzLnNjc3MiLCIuaWU5X3dhcm5pbmctd3JhcCB7XG4gICAgYmFja2dyb3VuZDogJHN0YXR1cy10eXBlLWRhbmdlcjtcbn1cbi5pZTlfd2FybmluZy1jb250ZW50IHtcbiAgICAvLyB+NzAgY2hhcnNcbiAgICBtYXgtd2lkdGg6IDM1ZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMC44ZW07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmllOV93YXJuaW5nLWNvbnRlbnQtYmlnIHtcbiAgICBmb250LXNpemU6IDEuMmVtO1xufVxuLmllOV93YXJuaW5nLWxpbmsge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2RkZDtcbiAgICB9XG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9jb21tb24vX2llOV93YXJuaW5nLnNjc3MiLCIuY29udGVudC13cmFwIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMmVtIDFlbTtcblxuICAgIEBpbmNsdWRlIG1xKDczLjI1ZW0pIHtcbiAgICAgICAgcGFkZGluZzogMmVtIDA7XG4gICAgfVxuXG4gICAgJi1tZWRpdW0ge1xuICAgICAgICBtYXgtd2lkdGg6IDcxLjI1ZW07XG4gICAgfVxuXG4gICAgJi1uYXJyb3cge1xuICAgICAgICBtYXgtd2lkdGg6ICRtYXgtY29udGVudC13aWR0aDtcbiAgICB9XG5cbiAgICAmLWZsZXgge1xuICAgICAgICBAaW5jbHVkZSBtcSh0YWJsZXRzKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuXG5AaW1wb3J0ICcuLi9jb21tb24vY29udGVudF9hbGlnbm1lbnQnO1xuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2h0bWwvY3NzL3Nhc3MvcHVibGljL19jb250ZW50LnNjc3MiLCIuY29udGVudC1pbWctY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDFlbSBhdXRvO1xufVxuLmNvbnRlbnQtaW1nLWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMWVtIDFlbSAxZW0gMDtcbn1cbi5jb250ZW50LWltZy1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMWVtIDAgMWVtIDFlbTtcbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL2NvbW1vbi9fY29udGVudF9hbGlnbm1lbnQuc2NzcyIsImJ1dHRvbiwgLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC41ZW0gMWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbi1kYXJrO1xuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JlZW4tZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3ItZ3JlZW4tZGFyaywgMTAlKTtcbiAgICB9XG59XG5cbi5idXR0b24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9fYnV0dG9ucy5zY3NzIiwiaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgZm9udC1mYW1pbHk6ICdDb3Jwb3JhdGUgQSBXMDEnO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG5cbn1cblxuaDIge1xuICAgIGZvbnQtc2l6ZTogMi41ZW07XG59XG5cbmgzLCBoNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2h0bWwvY3NzL3Nhc3MvcHVibGljL19oZWFkaW5ncy5zY3NzIiwiLmhlYWRlci13cmFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuNWVtIDJlbSAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdoaXRlLCAwLjYpO1xuXG4gICAgQGluY2x1ZGUgbXEoNzMuMjVlbSkge1xuICAgICAgICBwYWRkaW5nOiAxZW0gMCAwLjVlbTtcbiAgICB9XG59XG5cbi5oZWFkZXItY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBtcSh0YWJsZXRzKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoNzMuMjVlbSkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLmhlYWRlci1uYXYge1xuICAgIG1hcmdpbi10b3A6IDAuNmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uaGVhZGVyX25hdi1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyZW07XG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICAgIGEge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCAwICRjb2xvci1ncmV5LFxuICAgICAgICAtMXB4IC0xcHggMnB4ICRjb2xvci1ncmV5LFxuICAgICAgICAxcHggLTFweCAycHggJGNvbG9yLWdyZXksXG4gICAgICAgIC0xcHggMXB4IDJweCAkY29sb3ItZ3JleSxcbiAgICAgICAgMXB4IDFweCAycHggJGNvbG9yLWdyZXk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX2hlYWRlci5zY3NzIiwiLmZvb3Rlci13cmFwIHtcbiAgICBwYWRkaW5nOiAwIDAgMWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWxpZ2h0O1xuICAgIGNvbG9yOiAkY29sb3ItZ3JleS1kYXJrO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItZ3JlZW4tZGFyaztcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmVlbi1kYXJrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zb2NpYWwtd3JhcCB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBmaWxsOiAkY29sb3ItZ3JleS1kYXJrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdGVyLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwIDJlbTtcbiAgICBAaW5jbHVkZSBtcSg3My4yNWVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4uZm9vdGVyLWZsZXgge1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgICBwYWRkaW5nLXRvcDogMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1xKHRhYmxldHMpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS41ZW07XG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9vdGVyLXByb2plY3RfbGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG4gICAgfVxufVxuXG4uZm9vdGVyLWxvZ28ge1xuICAgIG1heC13aWR0aDogMTZlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwLjVlbTtcbiAgICBAaW5jbHVkZSBtcSh0YWJsZXRzKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbi5mb290ZXItY29weXJpZ2h0IHtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9fZm9vdGVyLnNjc3MiLCIuaGVyb2JhciB7XG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICBtaW4taGVpZ2h0OiAzMGVtO1xuICAgIHRleHQtc2hhZG93OiAycHggMnB4IDAgJGNvbG9yLWJsYWNrLFxuICAgICAtMXB4IC0xcHggMnB4ICRjb2xvci1ibGFjayxcbiAgICAgIDFweCAtMXB4IDJweCAkY29sb3ItYmxhY2ssXG4gICAgICAtMXB4IDFweCAycHggJGNvbG9yLWJsYWNrLFxuICAgICAgIDFweCAxcHggMnB4ICRjb2xvci1ibGFjaztcbn1cblxuLmhlcm9iYXItaHAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDk1dmg7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXktbGlnaHQgdXJsKCcvaW1hZ2VzL2hlcm9iYXItaHAxLmpwZycpIG5vLXJlcGVhdDtcblxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBib3gtc2hhZG93OiAxZW0gMWVtIDE0ZW0gcmdiYSgkY29sb3ItYmxhY2ssMC45KSBpbnNldDtcblxuICAgIEBpbmNsdWRlIG1xKHRhYmxldHMpIHtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCRtYXgtd2lkdGgpIHtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgfVxufVxuXG4uaGVyb2Jhci1jb250YWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZ3JleS1saWdodCB1cmwoJy9pbWFnZXMvaGVyb2Jhci1jb250YWN0LmpwZycpIG5vLXJlcGVhdDtcbiAgICBib3gtc2hhZG93OiAxZW0gMWVtIDE0ZW0gcmdiYSgkY29sb3ItYmxhY2ssMC45KSBpbnNldDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzFlbSB0b3A7XG5cbiAgICBAaW5jbHVkZSBtcSh0YWJsZXRzKSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5oZXJvYmFyLXByb3BlcnRpZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LWxpZ2h0IHVybCgnL2ltYWdlcy9oZXJvYmFyLXByb3BlcnRpZXMuanBnJykgbm8tcmVwZWF0O1xuICAgIGJveC1zaGFkb3c6IDFlbSAxZW0gMTRlbSByZ2JhKCRjb2xvci1ibGFjaywwLjkpIGluc2V0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG5cbiAgICBAaW5jbHVkZSBtcSh0YWJsZXRzKSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG4gICAgfVxufVxuXG4uaGVyb2Jhci1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDMwZW07XG4gICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3ItYmxhY2ssIDAuNCk7XG59XG5cbi5oZXJvYmFyLWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgbWF4LXdpZHRoOiA0NXJlbTtcbiAgICBtYXJnaW4tdG9wOiA0LjI1ZW07XG4gICAgcGFkZGluZzogMCAxZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbXEodGFibGV0cykge1xuICAgICAgICBmb250LXNpemU6IDMuMjVlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMmVtO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKDQ3ZW0pIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5oZXJvYmFyLWFycm93LXdyYXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDFlbTtcbiAgICBsZWZ0OiA0MiU7XG4gICAgcmlnaHQ6IDQyJTtcblxuICAgIEBpbmNsdWRlIG1xKHdpZGVfdGFibGV0cykge1xuICAgICAgICBsZWZ0OiA0NSU7XG4gICAgICAgIHJpZ2h0OiA0NSU7XG4gICAgfVxufVxuXG4uaGVyb2Jhci1hcnJvdyB7XG4gICAgaGVpZ2h0OiA0ZW07XG4gICAgd2lkdGg6IDRlbTtcbiAgICBhbmltYXRpb246IHB1bHNlIDVzIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIGZpbGw6ICRjb2xvci1ncmV5LWxpZ2h0O1xuICB9XG4gIDUwJSB7XG4gICAgZmlsbDogbGlnaHRlbigkY29sb3ItZ3JleSwgMTUlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC41ZW0pO1xuICB9XG4gIDEwMCUge1xuICAgIGZpbGw6ICRjb2xvci1ncmV5LWxpZ2h0O1xuICB9XG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX2hlcm9iYXIuc2NzcyIsIi5zZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4ocmdiYSgkY29sb3ItZ3JlZW4tZGFyaywwLjgpLDEwJSkgdXJsKCcvaW1hZ2VzL2JrZy5wbmcnKSByZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICBib3gtc2hhZG93OiAxZW0gMWVtIDE0ZW0gcmdiYSgkY29sb3ItZ3JleSwgMC43KSBpbnNldDtcbn1cblxuLnNlY3Rpb24tY2FyZHNfd3JhcCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGNvbG9yLXB1cnBsZSwgMC41KTtcbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9fc2VjdGlvbi5zY3NzIiwiLmNhcmRzLXdyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDJlbSBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMmVtO1xuICAgIG1heC13aWR0aDogNzEuMjVlbTtcblxuICAgIEBpbmNsdWRlIG1xKDQwZW0pIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1xKDczLjI1ZW0pIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5jYXJkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIxZW07XG4gICAgbWF4LXdpZHRoOiAyMS41ZW07XG4gICAgaGVpZ2h0OiAyNGVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGNvbG9yLWdyZXktbGlnaHQsIDEwJSk7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktbGlnaHQ7XG4gICAgYm94LXNoYWRvdzogMnB4IDJweCA0cHggcmdiYSgkY29sb3ItZ3JleSwgMC4zKTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgICBAaW5jbHVkZSBtcSh3aWRlX2hhbmRoZWxkcykge1xuICAgICAgICBmbGV4OiAwIDAgNDguNSU7XG4gICAgICAgIHdpZHRoOiA0OC41JTtcbiAgICAgICAgbWF4LXdpZHRoOiA0OC41JTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMm4pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSh0YWJsZXRzKSB7XG4gICAgICAgIGZsZXg6IDAgMCAzMS4yNSU7XG4gICAgICAgIHdpZHRoOiAzMS4yNSU7XG4gICAgICAgIG1heC13aWR0aDogMzEuMjUlO1xuICAgICAgICAmOm50aC1vZi10eXBlKDJuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1vZi10eXBlKDNuKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcHVycGxlO1xuICAgICAgICBib3gtc2hhZG93OiA0cHggNHB4IDhweCByZ2JhKCRjb2xvci1wdXJwbGUsIDAuMyk7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRjb2xvci1wdXJwbGUsIDEwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXJkLWhlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMS40ZW07XG59XG5cbi5jYXJkLWNvcHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA3ZW07XG4gICAgcGFkZGluZzogMWVtO1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgY29sb3I6ICRjb2xvci1wdXJwbGU7XG4gICAgfVxufVxuXG4uY2FyZC1pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAgMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxOGVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgQGluY2x1ZGUgbXEod2lkZV90YWJsZXRzKSB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDIwZW07XG4gICAgfVxufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2h0bWwvY3NzL3Nhc3MvcHVibGljL19jYXJkcy5zY3NzIiwiLnNvY2lhbC13cmFwIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xuICAgIH1cbiAgICBzdmcge1xuICAgICAgICB3aWR0aDogMmVtO1xuICAgICAgICBoZWlnaHQ6IDJlbTtcbiAgICAgICAgZmlsbDogJGNvbG9yLXB1cnBsZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBmaWxsOiBsaWdodGVuKCRjb2xvci1wdXJwbGUsIDEwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8gV0VCUEFDSyBGT09URVIgLy9cbi8vIC4vaHRtbC9jc3Mvc2Fzcy9wdWJsaWMvX3NvY2lhbC5zY3NzIiwiLnNlY3Rpb25fY29udGVudC1hYm91dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cbiAgICAuYWJvdXQtaW1nX3dyYXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMC4zNWVtO1xuICAgIH1cbn1cblxuLmFib3V0LWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAzZW0gMWVtO1xuICAgIG1heC13aWR0aDogNDJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBAaW5jbHVkZSBtcSh0YWJsZXRzKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgfVxufVxuXG4uYWJvdXQtY29weSB7XG4gICAgcGFkZGluZzogMmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1ncmV5LWRhcmssIDAuNik7XG5cbiAgICBAaW5jbHVkZSBtcSh0YWJsZXRzKSB7XG4gICAgICAgIHBhZGRpbmc6IDJlbSA0ZW07XG4gICAgfVxufVxuXG4uYWJvdXQtY29weS1oZWFkaW5nIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmFib3V0LWljb25zX3dyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIEBpbmNsdWRlIG1xKHdpZGVfaGFuZGhlbGRzKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBtYXJnaW46IDNlbSBhdXRvIDA7XG4gICAgfVxufVxuXG4uYWJvdXQtaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAzMCU7XG4gICAgbWFyZ2luOiAwIDFlbSAwIDA7XG4gICAgZmlsbDogJGNvbG9yLWdyZXktbGlnaHQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcSh3aWRlX2hhbmRoZWxkcykge1xuICAgICAgICB3aWR0aDogNS41ZW07XG4gICAgICAgIGhlaWdodDogNS41ZW07XG4gICAgICAgIG1hcmdpbjogMCAyZW0gMCAwO1xuICAgIH1cbn1cblxuLmxvZ29zLXdyYXAge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMCAyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgICBtYXJnaW46IDAgYXV0bztcblxuICAgIEBpbmNsdWRlIG1xKHRhYmxldHMpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgIEBzdXBwb3J0cyhkaXNwbGF5OmdyaWQpIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoNDBlbSkge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtYXV0by1mbG93OiByb3c7XG4gICAgICAgICAgICBncmlkLWdhcDogMmVtO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCg0NSUsIGF1dG8pKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1xKHdpZGVfdGFibGV0cykge1xuICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjMlLCBhdXRvKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtcSg3My4yNWVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4ubG9nbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1xKHRhYmxldHMpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyZW07XG4gICAgfVxufVxuXG4ubG9nby1zdmcge1xuICAgIHdpZHRoOiAxNWVtO1xufVxuXG5cbi8vIFdFQlBBQ0sgRk9PVEVSIC8vXG4vLyAuL2h0bWwvY3NzL3Nhc3MvcHVibGljL19wX2luZGV4LnNjc3MiLCIuY29udGFjdC13cmFwIHtcbiAgICBoMyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbiAgICB9XG5cbiAgICBwOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cblxuLmNvbnRhY3QtbWFwLXdyYXAge1xuICAgIGhlaWdodDogMjVlbTtcbn1cblxuXG4vLyBXRUJQQUNLIEZPT1RFUiAvL1xuLy8gLi9odG1sL2Nzcy9zYXNzL3B1YmxpYy9fcF9jb250YWN0LnNjc3MiXSwic291cmNlUm9vdCI6IiJ9*/