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

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

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

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 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 {
  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 */
}

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

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

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

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

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

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

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

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

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

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

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

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

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

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

@viewport {
  width: device-width;
}
html {
  overflow-x: auto;
  overflow-y: scroll;
  scroll-behavior: smooth;
}

body {
  box-sizing: border-box;
  background: #fff;
  color: #231F20;
  font-size: calc(
    14px + 3 *
      (
         (100vw - 420px) / 480
      )
  );
  font-family: "Work Sans", sans-serif;
  line-height: 1.65;
  scroll-behavior: smooth;
}
@media screen and (max-width: 420px) {
  body {
    font-size: 14px;
  }
}
@media screen and (min-width: 900px) {
  body {
    font-size: 17px;
  }
}

h1 {
  margin: 0 0 1.1rem;
  color: #323239;
  font-size: 2.5em;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 1px;
}

h2 {
  margin: 0.25em 0 0.5em;
  color: #323239;
  font-size: 1.7em;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  line-height: 1.25;
}

h3 {
  margin: 0.25em 0 0.5em;
  color: #5AB400;
  font-size: 1.25em;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
  line-height: 1.25;
}

h4 {
  margin: 0 0 0.5rem;
  color: #231F20;
  font-size: 1em;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
  line-height: 1.1;
}

h5 {
  margin: 0 0 1.5rem;
  color: #231F20;
  font-size: 0.8rem;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
  line-height: 1.1;
}

h6 {
  margin: 0 0 1.25rem;
  color: #15bc88;
  font-size: 0.9em;
  font-family: "Work Sans", sans-serif;
  font-weight: 500;
  line-height: 1.1;
}

blockquote {
  font-family: inherit;
  font-size: 0.95em;
  line-height: 1.4;
}

b,
strong {
  font-weight: 600;
}

table {
  border-collapse: collapse;
}

sup,
sub {
  font-size: 80%;
}

p {
  margin: 0;
  padding: 0 0 1.25em;
}

ul,
ol {
  margin: 0;
  padding: 0 0 1.5em;
}

ul ul,
ol ol {
  padding: 0;
}

ul li {
  margin: 0 0 0.75em 2em;
  padding: 0;
}

ul li * {
  margin-top: 0;
}

ul li p {
  margin: 0;
  padding: 0;
}

ol li {
  margin: 0 0 0.5rem 2rem;
}

a,
a:link,
a:visited {
  color: #005591;
  font-weight: 500;
  text-decoration: underline;
  outline: none;
  cursor: pointer;
  transition: color 0.2s ease-out, background 0.2s ease-in, opacity 0.2s ease-out, text-decoration 0.2s ease-out, border 0.2s ease-out, box-shadow 0.2s ease-out;
}

a:hover,
a:active,
a:focus {
  color: #273aaa;
}

a:active, a:focus {
  outline: #5e9ed7 auto 5px;
}

img {
  width: auto;
  max-width: 100%;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #e5e5e5;
  margin: 1em 0;
  padding: 0;
  clear: both;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

textarea {
  resize: vertical;
}

input,
textarea,
select {
  font-family: "Work Sans", sans-serif;
  font-size: 1em;
}

figure {
  margin: 0;
}

figcaption {
  display: block;
}

::-moz-selection {
  background: rgba(0, 85, 145, 0.2);
  text-shadow: none;
}

::selection {
  background: rgba(0, 85, 145, 0.2);
  text-shadow: none;
}

.container {
  width: 90%;
  max-width: 72.5rem;
  margin: 0 auto;
}
.container.min-width {
  max-width: 46.25rem;
}

.hideTop {
  visibility: hidden;
  position: absolute;
  top: 0;
  height: 1px;
  font-size: 1px;
  line-height: 1px;
}

.hidden {
  display: none !important;
}

.Hidden {
  display: none !important;
}

.no-margin {
  margin: 0;
}

.nospacing {
  margin: 0px;
  padding: 0px;
}

.shadow-spacing {
  padding: 4px 4px 1em;
}

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

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

.invisible {
  visibility: hidden;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}

.cursorOn {
  cursor: pointer !important;
}

.edit {
  position: fixed;
  top: calc(50% - 60px);
  left: 0;
  background: black;
  border: 1px solid white;
  width: 28px;
  height: 120px;
  z-index: 10000;
  margin: 0;
  padding-right: 8px;
  text-align: center;
  writing-mode: vertical-rl;
}
.edit a {
  display: block;
  color: white;
  font-size: 13px;
  font-family: sans-serif;
  line-height: 1;
}
.edit a:hover {
  opacity: 0.75;
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes scale-in {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@-webkit-keyframes scale-in {
  0% {
    opacity: 0;
    transform: scale(0.5);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.accordion {
  width: 100%;
  margin-bottom: 40px;
}
.accordion p:last-child,
.accordion ul:last-child {
  margin: 0;
  padding: 0;
}
.accordion__button {
  position: relative;
  display: block;
  margin: 0px 0 0;
  border: 1px solid #e5e5e5;
  padding: 18px 16px;
  text-align: left;
  color: #000;
  background: #f4f4f4;
  font-size: 16px;
  width: 100%;
  transition: 0.2s;
  cursor: pointer;
}
.accordion__button:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}
.accordion__button:last-child {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
.accordion__button:hover {
  background: #f4f4f4;
  outline: none;
  border: 1px solid #000;
  cursor: pointer;
  box-shadow: 0 1px 12px 0 rgba(0, 0, 0, 0.1);
}
.accordion__button::after {
  display: inline-block;
  content: " ";
  background: url("/images/icon-chevron-down.svg");
  background-size: 12px 16px;
  height: 16px;
  width: 12px;
  position: absolute;
  right: 20px;
  top: calc(50% - 6px);
  transform: rotate(0);
  z-index: 10;
}
.accordion__button:focus, .accordion__button:active {
  background: #f4f4f4;
  outline: none;
  border: 1px solid #000;
  cursor: pointer;
  box-shadow: 0 1px 12px 0 rgba(0, 0, 0, 0.1);
}
.accordion__button.expanded {
  background: #e5e5e5;
}
.accordion__button.expanded::after {
  transform: rotate(180deg);
}
.accordion__section {
  border-left: 1px solid #e5e5e5;
  border-right: 1px solid #e5e5e5;
  background: #fff;
  max-height: 0vh;
  overflow: hidden;
  padding: 0;
  opacity: 1;
}
.accordion__section.open {
  max-height: 100vh;
  overflow: auto;
  padding: 18px;
  visibility: visible;
  border-bottom: 1px solid #e5e5e5;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
  animation: appear 0.25s linear;
}
@keyframes appear {
  0% {
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
  }
  100% {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}

.button p {
  padding: 0;
}

a.button, a.button:link, a.button:visited, .button a, .button a:link, .button a:visited,
input.button,
input.button:link,
input.button:visited, button.button, button.button:link, button.button:visited,
.freeform-column button,
.freeform-column button:link,
.freeform-column button:visited {
  display: inline-block;
  outline: none;
  padding: 1em 2.5em;
  margin: 0px;
  background: #FFC300;
  border: 0px;
  border-radius: 4px;
  text-transform: capitalize;
  transition: transform 0.2s;
  text-align: center;
  color: #000;
  font-family: "Work Sans", sans-serif;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.1;
  text-decoration: none !important;
  text-shadow: none;
}
a.button:hover, a.button:active, a.button:focus, .button a:hover, .button a:active, .button a:focus,
input.button:hover,
input.button:active,
input.button:focus, button.button:hover, button.button:active, button.button:focus,
.freeform-column button:hover,
.freeform-column button:active,
.freeform-column button:focus {
  background: #E8792D;
  transition: 0.2s all;
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.15), 0px 2px 30px rgba(0, 0, 0, 0.08);
}
a.button:hover, .button a:hover,
input.button:hover, button.button:hover,
.freeform-column button:hover {
  box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.15), 0px 2px 30px rgba(0, 0, 0, 0.08);
}
a.button:active, a.button:focus, .button a:active, .button a:focus,
input.button:active,
input.button:focus, button.button:active, button.button:focus,
.freeform-column button:active,
.freeform-column button:focus {
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), 0px 2px 15px rgba(0, 0, 0, 0.1);
}

a.button.rounded, .button.rounded a,
input.button.rounded, button.button.rounded {
  border-radius: 3px;
}

a.button.white-btn, .button.white-btn a,
input.button.white-btn, button.button.white-btn {
  background-color: #fff;
  color: #323239;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.15), 0px 2px 15px rgba(0, 0, 0, 0.08);
}
a.button.white-btn:hover, a.button.white-btn:active, a.button.white-btn:focus, .button.white-btn a:hover, .button.white-btn a:active, .button.white-btn a:focus,
input.button.white-btn:hover,
input.button.white-btn:active,
input.button.white-btn:focus, button.button.white-btn:hover, button.button.white-btn:active, button.button.white-btn:focus {
  color: #005591 !important;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.4), 0px 2px 15px rgba(0, 0, 0, 0.2);
}

.text-button p {
  padding: 0;
}

a.text-button, a.text-button:link, a.text-button:visited, .text-button a, .text-button a:link, .text-button a:visited,
input.text-button,
input.text-button:link,
input.text-button:visited, button.text-button, button.text-button:link, button.text-button:visited {
  display: inline-block;
  font-size: 1.05em;
  text-decoration: none;
  border-bottom: 2px solid #005591;
}
a.text-button:hover, a.text-button:active, a.text-button:focus, .text-button a:hover, .text-button a:active, .text-button a:focus,
input.text-button:hover,
input.text-button:active,
input.text-button:focus, button.text-button:hover, button.text-button:active, button.text-button:focus {
  border-color: #273aaa;
}
.dark a.text-button, .dark a.text-button:link, .dark a.text-button:visited, .dark .text-button a, .dark .text-button a:link, .dark .text-button a:visited,
.dark input.text-button,
.dark input.text-button:link,
.dark input.text-button:visited, .dark button.text-button, .dark button.text-button:link, .dark button.text-button:visited {
  color: inherit;
  border-color: inherit;
}
.dark a.text-button:hover, .dark a.text-button:active, .dark a.text-button:focus, .dark .text-button a:hover, .dark .text-button a:active, .dark .text-button a:focus,
.dark input.text-button:hover,
.dark input.text-button:active,
.dark input.text-button:focus, .dark button.text-button:hover, .dark button.text-button:active, .dark button.text-button:focus {
  color: #00996d;
  border-color: #15bc88;
}

a.arrow-link {
  text-decoration: none;
}

.arrow-link {
  font-size: 0.9em;
  font-family: "Poppins", sans-serif;
  font-weight: normal;
  text-decoration: none;
}
.arrow-link:before {
  content: "";
  background: url("../images/icon-chevron-right.svg") no-repeat;
  background-size: 6px 12px;
  height: 12px;
  width: 6px;
  display: inline-block;
  transition: transform 0.2s;
  margin-right: 8px;
  margin-bottom: -1px;
}
.arrow-link:hover:before, .arrow-link:active:before, .arrow-link:focus:before {
  transform: translateX(2px);
}

.callout {
  display: block;
  padding: 2em 1.5em;
  margin: 1em 0 2.5em;
  background: #FFC300;
  border-radius: 4px;
  text-align: center;
  color: #231F20;
  font-size: 1.3em;
  line-height: 1.25;
  font-family: "Poppins", sans-serif;
}
.callout p:last-child {
  padding: 0;
}
.callout a, .callout a:link, .callout a:visited {
  color: inherit;
  text-decoration: none;
}
.callout a:hover, .callout a:active, .callout a:focus {
  color: #00996d;
  text-decoration: underline;
}

@media (min-width: 43.75em) {
  .column-text {
    display: flex;
    flex-wrap: wrap;
  }
  .column-text h3 {
    display: block;
    width: 100%;
  }
  .column-text .left-column {
    width: 50%;
  }
  .column-text .right-column {
    width: 50%;
  }
}

.footnote {
  font-size: 75%;
  border-top: 1px solid #e5e5e5;
  margin: 2em 0 0;
  padding: 2em 0 0;
}

blockquote {
  display: block;
  margin: 1.5rem 0 3rem;
  padding: 1.75rem 0;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  text-align: center;
  color: #5AB400;
  font-size: 1.35em;
  font-weight: 600;
  line-height: 1.2;
}
blockquote p {
  padding: 0 0 0.75em;
}
blockquote p:last-child {
  padding: 0;
}

.video {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 25px;
  height: 0;
  margin: 1em 0;
}
.video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.embed {
  margin: 1em 0;
}

.two-column {
  margin: 3em 0;
}
@media all and (min-width: 59.375em) {
  .two-column .container {
    display: flex;
    justify-content: space-between;
  }
}

.column-card {
  flex: 0 1 48%;
  margin-bottom: 2em;
  display: flex;
  flex-direction: row-reverse;
  background: #f4f4f4;
  color: #323239;
  font-size: 0.9em;
  line-height: 1.5;
}

.card-image {
  flex: 0 1 50%;
}
.card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.card-text {
  flex: 0 1 50%;
  align-self: center;
  padding: 2em;
}
.card-text h2 {
  color: inherit;
  font-size: 1.33em;
  font-family: "Work Sans", sans-serif;
}

.card-list {
  padding: 4em 0 3.5em;
}

.card-grid {
  margin: 0 -0.875em;
}
@media all and (min-width: 43.75em) {
  .card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 47.75%));
    grid-gap: 25px;
    gap: 25px;
    align-items: start;
  }
}
@media all and (min-width: 59.375em) {
  .card-grid {
    grid-template-columns: repeat(auto-fill, minmax(300px, 30%));
  }
}
@media all and (min-width: 75em) {
  .card-grid {
    grid-template-columns: repeat(auto-fill, minmax(350px, 31.75%));
  }
}

a.card, a.card:link, a.card:visited {
  display: flex;
  padding: 1em;
  color: #323239;
  text-decoration: none;
}
@media all and (min-width: 43.75em) {
  a.card, a.card:link, a.card:visited {
    flex-direction: column;
  }
}
a.card:hover, a.card:active, a.card:focus {
  box-shadow: 0px 3px 30px rgba(0, 0, 0, 0.05), 0px 1px 8px rgba(0, 0, 0, 0.08);
}
a.card figure {
  margin: 0;
  position: relative;
  height: 200px;
  overflow: hidden;
}
a.card figure img {
  width: 100%;
  object-fit: cover;
  min-height: 100%;
  transition: transform 0.2s linear;
}
@media all and (max-width: 43.75em) {
  a.card figure {
    flex: 0 1 45%;
    height: auto;
    align-self: center;
  }
  a.card figure img {
    min-height: initial;
  }
}
a.card figure .videoIcon {
  position: absolute;
  background: rgba(0, 85, 145, 0.9);
  top: calc(50% - 25px);
  left: calc(50% - 35px);
  width: 70px;
  height: 50px;
  border-radius: 3px;
  transition: transform 0.2s linear;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media all and (max-width: 43.75em) {
  a.card figure .videoIcon {
    width: 50px;
    height: 42px;
    top: calc(50% - 21px);
    left: calc(50% - 25px);
  }
}
a.card figure .videoIcon img {
  width: 24px;
  height: 24px;
  min-height: auto;
  object-fit: auto;
}

.card-content {
  padding: 0.5em 0;
}
@media all and (max-width: 43.75em) {
  .card-content {
    flex: 0 1 55%;
    margin-left: 2em;
  }
}
.card-content span, .card-content strong {
  display: block;
}
.card-content .small-text {
  margin: 0.5em 0 -0.25em;
  color: #5AB400;
  font-size: 0.8em;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.5px;
}
.card-content strong {
  margin: 0.5em 0;
  font-size: 1.25em;
  line-height: 1.25;
}

.feature-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #005591;
}
@media all and (min-width: 59.375em) {
  .feature-row {
    flex-direction: row;
  }
}
.feature-row .feature-image {
  flex: 0 1 50%;
  width: 100%;
  height: 500px;
  margin: 0;
  overflow: hidden;
}
@media all and (max-width: 59.375em) {
  .feature-row .feature-image {
    height: 400px;
  }
}
@media all and (max-width: 43.75em) {
  .feature-row .feature-image {
    height: 300px;
  }
}
@media all and (max-width: 31.25em) {
  .feature-row .feature-image {
    height: 250px;
  }
}
.feature-row .feature-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.feature-row .feature-text {
  flex: 0 1 50%;
  max-width: 560px;
  line-height: 1.5;
  padding: 1em;
  color: #fff;
}
@media all and (max-width: 59.375em) {
  .feature-row .feature-text {
    width: 90%;
    padding: 40px 5%;
    max-width: 100%;
  }
}
.feature-row .section {
  color: inherit;
  opacity: 0.85;
}
.feature-row h2 {
  color: inherit;
}
.feature-row.orange {
  background: #E8792D;
  color: #fff;
}
.feature-row.teal {
  background: #007A84;
  color: #fff;
}
.feature-row.blue {
  background: #005591;
  color: #fff;
}
.feature-row.lime {
  background: #5AB400;
  color: #e5e5e5;
}
@media all and (min-width: 59.375em) {
  .feature-row.left .feature-text {
    padding-left: 80px;
  }
}
@media all and (min-width: 59.375em) {
  .feature-row.right {
    flex-direction: row-reverse;
  }
  .feature-row.right .feature-text {
    padding-right: 80px;
  }
}

.caption {
  margin: 0 0 1.5em;
  color: rgba(35, 31, 32, 0.9);
  font-size: 0.825em;
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  line-height: 1.5;
}
.caption .caption-text {
  display: block;
  padding: 1em 0;
}
@media (min-width: 31.25em) {
  .caption {
    max-width: 33%;
  }
  .caption.left {
    float: left;
    clear: left;
    margin: 0 4% 1em 0;
  }
  .caption.right {
    float: right;
    clear: right;
    margin: 0 0 1em 4%;
  }
  .caption.full {
    max-width: 100%;
    margin: 0 0 1em;
  }
}

figure {
  margin: 2.5em 0;
}
figure figcaption {
  font-size: 13px;
  line-height: 1.2;
  padding: 12px 0;
  font-family: "Poppins", sans-serif;
  border-bottom: 1px solid #e5e5e5;
}

figure.image-right {
  width: 290px;
  float: right;
  margin: 0.375em 0 2em 2em;
}
@media (max-width: 31.25em) {
  figure.image-right {
    width: 100%;
    float: none;
    max-width: 100%;
    margin: 2em 0;
  }
}

figure.image-left {
  width: 290px;
  float: left;
  margin: 0.375em 2em 2em 0;
}
@media (max-width: 31.25em) {
  figure.image-left {
    width: 100%;
    float: none;
    max-width: 100%;
    margin: 2em 0;
  }
}

figure.image-center {
  width: 100%;
  margin: 0 auto 2em auto;
}
@media (max-width: 31.25em) {
  figure.image-center {
    width: 100%;
    float: none;
    max-width: 100%;
    margin: 2em 0;
  }
}

.image-block {
  margin: 4.5em 0;
}
.image-block .block-image {
  margin-bottom: 2em;
}
@media all and (min-width: 43.75em) {
  .image-block .container {
    display: flex;
    justify-content: space-between;
  }
  .image-block .container .block-image {
    flex-basis: 48%;
    max-width: 500px;
    margin-bottom: 0;
    margin-right: 2%;
    position: relative;
  }
  .image-block .container .block-image span.videoIcon {
    position: absolute;
    top: calc(50% - 45px);
    left: calc(50% - 45px);
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    width: 88px;
    height: 88px;
    border: solid 1px #fff;
    border-radius: 50%;
    background: rgba(0, 122, 132, 0.7);
    transition: background 0.3s ease-in;
    cursor: pointer;
  }
  .image-block .container .block-image span.videoIcon:hover {
    background: rgba(0, 122, 132, 0.9);
  }
  .image-block .container .block-image span.videoIcon img {
    width: 45%;
    margin-left: 10px;
  }
  .image-block .container .block-text {
    flex-basis: 48%;
    align-self: center;
  }
  .image-block.right .container {
    flex-direction: row-reverse;
  }
  .image-block.right .block-image {
    margin-left: 2%;
  }
}

.link-list {
  padding-bottom: 3.75em;
  padding-top: 1.25em;
}
.link-list .container {
  max-width: 100%;
  width: 100%;
}
@media (min-width: 59.375em) {
  .link-list {
    margin-top: -7.5%;
    padding-top: 0;
    padding-bottom: 6.25em;
  }
}
.link-list ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 5;
  max-width: 90%;
  margin: 0 auto;
}
.link-list ul > li:first-child {
  border-top-left-radius: 12px;
}
.link-list ul > li:nth-of-type(2) {
  border-top-right-radius: 12px;
}
.link-list ul > li:nth-last-child(2) {
  border-bottom-left-radius: 12px;
}
.link-list ul > li:last-child {
  border-bottom-right-radius: 12px;
}
@media (min-width: 59.375em) {
  .link-list ul {
    margin-top: -3%;
    max-width: 70%;
  }
}
@media (min-width: 59.375em) {
  .link-list ul > li:first-child {
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
  }
  .link-list ul > li:last-child {
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
  }
  .link-list ul > li:nth-of-type(2) {
    border-top-right-radius: 0px;
  }
  .link-list ul > li:nth-of-type(3) {
    border-bottom-left-radius: 0px;
  }
}
.link-list li {
  flex: 0 1 50%;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
@media (min-width: 43.75em) {
  .link-list li {
    flex: 0 1 50%;
  }
}
@media (min-width: 59.375em) {
  .link-list li {
    flex: 1;
  }
}
.link-list li:nth-child(1) {
  background: #E8792D;
}
.link-list li:nth-child(2) {
  background: #005591;
}
.link-list li:nth-child(3) {
  background: #007A84;
}
.link-list li:nth-child(4) {
  background: #5AB400;
}
.link-list li:nth-child(5) {
  background: #E8792D;
}
.link-list li:nth-child(6) {
  background: #005591;
}
.link-list a, .link-list a:link, .link-list a:visited {
  display: flex;
  flex-direction: column;
  justify-content: stretch;
  align-items: center;
  height: 100%;
  width: 100%;
  padding: 2em 1.5em;
  border-top: none;
  border-left: none;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  color: #fff;
  font-weight: 600;
  line-height: 1.2;
}
.link-list a:hover, .link-list a:active, .link-list a:focus {
  box-shadow: 0px 4px 40px 0px rgba(0, 0, 0, 0.05), 0px 2px 20px 0px rgba(0, 0, 0, 0.08);
}
.link-list a:hover .link-icon img, .link-list a:active .link-icon img, .link-list a:focus .link-icon img {
  transform: scale(1.04);
}
.link-list .link-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  margin-bottom: 1em;
}
@media (min-width: 43.75em) {
  .link-list .link-icon {
    height: 80px;
    width: 80px;
  }
}
.link-list img {
  min-width: 100px;
  max-height: 75px;
  transition: 0.2s all;
}

#hero-rotator ul {
  margin: 0;
  padding: 0;
}
#hero-rotator ul li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
#hero-rotator .slide {
  display: none;
  visibility: hidden;
  width: 100%;
}
#hero-rotator .slide.current {
  visibility: visible;
  display: block;
}
#hero-rotator .slidenav {
  position: absolute;
  bottom: 1em;
  left: 5vw;
  max-width: 33%;
  display: flex;
  justify-content: flex-start;
}
#hero-rotator .slidenav li {
  padding: 0.25em;
}
#hero-rotator .slidenav button {
  cursor: pointer;
  display: block;
  height: 18px;
  width: 18px;
  border: 1px solid #fff;
  border-radius: 50%;
  background: #fff;
  color: #fff;
  font-size: 1px;
  line-height: 1px;
}
#hero-rotator .slidenav button.current {
  border-color: #005591;
  background: #005591;
  color: #005591;
  opacity: 1;
}
#hero-rotator .slidenav button:hover, #hero-rotator .slidenav button:focus, #hero-rotator .slidenav button:active {
  border-color: #273aaa;
  background: #273aaa;
  color: #273aaa;
}
#hero-rotator .controls {
  position: absolute;
  bottom: 1em;
  right: 5vw;
  max-width: 33%;
  display: flex;
  justify-content: flex-end;
}
#hero-rotator .controls button {
  -webkit-appearance: none !important;
  cursor: pointer;
  height: 40px;
  width: 40px;
  margin: 0 5px;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 50%;
  font-size: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#hero-rotator .controls button:before {
  display: block;
  content: "";
  background-repeat: no-repeat;
  background-size: 18px 18px;
  width: 18px;
  height: 18px;
}
#hero-rotator .controls button.btn-prev:before {
  background-image: url("../images/icon-previous.svg");
}
#hero-rotator .controls button.btn-next:before {
  background-image: url("../images/icon-next.svg");
}
#hero-rotator .controls button[data-start=true]:before {
  background-image: url("../images/icon-play.svg");
  margin-left: 2px;
  background-size: 16px 16px;
  width: 16px;
  height: 16px;
}
#hero-rotator .controls button[data-stop=true]:before {
  background-image: url("../images/icon-stop.svg");
}

.side-block {
  margin: 0 0 3.5em;
  font-size: 0.8em;
  border-radius: 4px;
}
.side-block img {
  width: 100%;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.side-block .side-text {
  padding: 2.5em 1.5em;
  text-align: center;
}
.side-block h2 {
  margin: 0 0 0.5em;
  color: inherit;
  font-size: 1.35em;
  font-family: "Work Sans", sans-serif;
}
.side-block.light {
  background: #f4f4f4;
  color: #231F20;
}
.side-block.dark {
  background: #007A84;
  color: #fff;
}

table {
  width: 100%;
  margin-bottom: 3em;
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 4px 20px 0 rgba(0, 0, 0, 0.15);
}
table tr {
  background: white;
}
table tr:nth-child(even) {
  background: rgba(0, 85, 145, 0.05);
}
table tr th {
  background: #005591;
  color: white;
  padding: 10px 12px;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 15px;
  text-align: left;
}
table tr th:first-child {
  width: 33%;
}
@media (min-width: 43.75em) {
  table tr th:first-child {
    padding-left: 32px;
  }
}
@media (min-width: 43.75em) {
  table tr th:last-child {
    padding-right: 32px;
  }
}
@media (max-width: 767px) {
  table tr th {
    padding: 7px 8px;
    font-size: 11px;
  }
}
table tr td {
  border-bottom: 1px solid rgba(0, 85, 145, 0.06);
  padding: 10px 12px;
  font-size: 14px;
  line-height: 20px;
  color: #231F20;
}
@media (min-width: 43.75em) {
  table tr td:first-child {
    padding-left: 32px;
  }
}
@media (min-width: 43.75em) {
  table tr td:last-child {
    padding-right: 32px;
  }
}
table tr td h3 {
  font-size: 16px;
  line-height: 23px;
  margin: 0 0 2px;
}
@media (max-width: 43.75em) {
  table tr td h3 {
    font-size: 13px;
    line-height: 18px;
  }
}
table tr td span.purpose, table tr td span.purpose p, table tr td p span {
  font-size: 12px;
  line-height: 18px;
  margin-bottom: none;
}
@media (max-width: 43.75em) {
  table tr td span.purpose, table tr td span.purpose p, table tr td p span {
    display: none;
  }
}
table tr td strong {
  font-weight: bold;
}
@media (max-width: 43.75em) {
  table tr td {
    padding: 5px 8px;
    font-size: 12px;
    line-height: 17px;
  }
}
table tr td p, table tr td ul, table tr td ol {
  font-size: 14px;
  color: #231F20;
}
@media (max-width: 767px) {
  table tr td p, table tr td ul, table tr td ol {
    font-size: 12px;
  }
}

table.grant-table tr th:nth-child(3) {
  min-width: 200px;
}
@media (max-width: 59.375em) {
  table.grant-table tr th:nth-child(3) {
    min-width: auto;
  }
}
table.grant-table tr th:nth-child(4) {
  min-width: 120px;
}
@media (max-width: 59.375em) {
  table.grant-table tr th:nth-child(4) {
    min-width: auto;
  }
}
table.grant-table tr th:nth-child(5) {
  min-width: 120px;
}
@media (max-width: 59.375em) {
  table.grant-table tr th:nth-child(5) {
    min-width: auto;
  }
}
@media (max-width: 43.75em) {
  table.grant-table tr th:nth-child(3) {
    display: none;
  }
}
@media (max-width: 43.75em) {
  table.grant-table tr td:nth-child(3) {
    display: none;
  }
}

.largetext {
  font-size: 1.3em;
  line-height: 1.65;
  font-weight: 300;
  opacity: 0.9;
}

.attribution {
  display: block;
  color: #323239;
  font-size: 0.8rem;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
}

.date {
  font-size: 0.8em;
}

.small-text {
  color: #15bc88;
  font-size: 1em;
}

.section {
  color: #5AB400;
  font-size: 0.8em;
  text-transform: uppercase;
}

p.small-text,
p.section {
  margin: 0 0 0.25em !important;
  padding: 0 !important;
}

.dropcap p:first-of-type::first-letter {
  float: left;
  padding: 5px 10px 5px 0;
  color: #323239;
  font-size: 2.5em;
  font-family: "Poppins", sans-serif;
  line-height: 1;
}

#skip-link {
  position: relative;
  z-index: 5;
  float: left;
}
#skip-link a, #skip-link a:link, #skip-link a:visited {
  position: absolute;
  z-index: 5;
  top: -999em;
  left: 0px;
  display: block;
  width: 150px;
  padding: 7px 10px;
  border: 1px solid #CCC;
  outline: 0;
  background: #FFF;
  color: #333;
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
  text-decoration: none;
}
#skip-link a:focus, #skip-link a:active {
  top: 0px;
  *zoom: 1;
}
#skip-link a:hover, #skip-link a:active, #skip-link a:focus {
  background: #005591;
  color: #fff;
}

.main-nav {
  display: none;
  flex: 1;
}
@media screen and (min-width: 59.375em) {
  .main-nav {
    display: block;
  }
}
.main-nav .mobile-search {
  display: none !important;
}
.main-nav ul.root-group {
  margin: 0 auto;
  padding: 0 2em;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: wrap;
}
.main-nav ul.root-group > li {
  margin: 0 3%;
  padding: 0;
  list-style-type: none;
  list-style-image: none;
  position: relative;
}
.main-nav ul.root-group > li:first-child {
  margin-left: 0;
}
.main-nav ul.root-group > li:last-child {
  margin-right: 0;
}
.main-nav ul.root-group > li > a, .main-nav ul.root-group > li > a:link, .main-nav ul.root-group > li > a:visited {
  display: block;
  margin: 0;
  padding: 0.5em 0 0.4em;
  border-bottom: 3px solid transparent;
  text-align: center;
  color: #fff;
  font-size: 1em;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
}
@media (max-width: 75em) {
  .main-nav ul.root-group > li > a, .main-nav ul.root-group > li > a:link, .main-nav ul.root-group > li > a:visited {
    font-size: 0.85em;
  }
}
.not-at-top .main-nav ul.root-group > li > a, .dark-nav .main-nav ul.root-group > li > a, .not-at-top .main-nav ul.root-group > li > a:link, .dark-nav .main-nav ul.root-group > li > a:link, .not-at-top .main-nav ul.root-group > li > a:visited, .dark-nav .main-nav ul.root-group > li > a:visited {
  color: #000;
}
.main-nav ul.root-group > li > a:hover, .main-nav ul.root-group > li > a:active, .main-nav ul.root-group > li > a:focus {
  color: #FFC300;
  text-decoration: none;
}
.not-at-top .main-nav ul.root-group > li > a:hover, .dark-nav .main-nav ul.root-group > li > a:hover, .not-at-top .main-nav ul.root-group > li > a:active, .dark-nav .main-nav ul.root-group > li > a:active, .not-at-top .main-nav ul.root-group > li > a:focus, .dark-nav .main-nav ul.root-group > li > a:focus {
  color: #005591;
}
.main-nav ul.root-group > li.active a, .main-nav ul.root-group > li.active a:link, .main-nav ul.root-group > li.active a:visited {
  border-color: #005591;
}
.main-nav ul.root-group > li .mobile-search {
  display: none;
}
.main-nav ul.root-group > li button.searchBtn, .main-nav ul.root-group > li button.searchBtn:link, .main-nav ul.root-group > li button.searchBtn:visited {
  -webkit-appearance: none;
  display: inline-block;
  outline: none;
  cursor: pointer;
  padding: 0px;
  margin: 0px;
  border: 0px;
  background: none;
}
.main-nav ul.root-group > li button.searchBtn svg, .main-nav ul.root-group > li button.searchBtn:link svg, .main-nav ul.root-group > li button.searchBtn:visited svg {
  pointer-events: none;
  width: 28px;
  max-width: initial;
}
.main-nav ul.root-group > li button.searchBtn svg path.search-icon, .main-nav ul.root-group > li button.searchBtn:link svg path.search-icon, .main-nav ul.root-group > li button.searchBtn:visited svg path.search-icon {
  fill: #fff;
  transition: 0.2s ease;
}
.not-at-top .main-nav ul.root-group > li button.searchBtn svg path.search-icon, .not-at-top .main-nav ul.root-group > li button.searchBtn:link svg path.search-icon, .not-at-top .main-nav ul.root-group > li button.searchBtn:visited svg path.search-icon {
  fill: #000;
}
.dark-nav .main-nav ul.root-group > li button.searchBtn svg path.search-icon, .dark-nav .main-nav ul.root-group > li button.searchBtn:link svg path.search-icon, .dark-nav .main-nav ul.root-group > li button.searchBtn:visited svg path.search-icon {
  fill: #000;
}
.main-nav ul.root-group > li button.searchBtn:hover svg path.search-icon, .main-nav ul.root-group > li button.searchBtn:active svg path.search-icon, .main-nav ul.root-group > li button.searchBtn:focus svg path.search-icon {
  fill: #FFC300;
}
.not-at-top .main-nav ul.root-group > li button.searchBtn:hover svg path.search-icon, .not-at-top .main-nav ul.root-group > li button.searchBtn:active svg path.search-icon, .not-at-top .main-nav ul.root-group > li button.searchBtn:focus svg path.search-icon {
  fill: #005591;
}
.dark-nav .main-nav ul.root-group > li button.searchBtn:hover svg path.search-icon, .dark-nav .main-nav ul.root-group > li button.searchBtn:active svg path.search-icon, .dark-nav .main-nav ul.root-group > li button.searchBtn:focus svg path.search-icon {
  fill: #005591;
}
.main-nav ul.root-group > li button.searchBtn:active, .main-nav ul.root-group > li button.searchBtn:focus {
  outline: #5e9ed7 auto 5px;
}
.main-nav .mobile-only {
  display: none;
}
@media screen and (min-width: 59.375em) {
  .main-nav .level1 {
    position: absolute;
    top: 100%;
    left: auto;
    right: auto;
    z-index: 1000;
    transform: translate(-1.25em, 0);
    display: none;
    flex-direction: column;
    justify-content: stretch;
    align-items: stretch;
    float: none;
    min-width: 250px;
    text-align: left;
    background: #fff;
    border: 0;
    border-radius: 4px;
    border-top: 4px solid #005591;
    box-shadow: 0px 5px 12px rgba(0, 0, 0, 0.2), 0px 10px 36px rgba(0, 0, 0, 0.1);
    padding: 0.75em 1.25em 1em 1.25em !important;
    animation: dropdown 0.3s ease;
  }
}
.main-nav .level1 li {
  display: block;
  margin: 0;
  padding: 0;
  list-style-type: none;
  list-style-image: none;
}
.main-nav .level1 a, .main-nav .level1 a:link, .main-nav .level1 a:visited {
  display: block;
  background: none;
  border: 0;
  text-align: left;
  height: auto;
  padding: 1em 0;
  color: #231F20;
  font-weight: normal;
  border-bottom: 1px solid #e5e5e5;
  line-height: 1.25;
  text-decoration: none;
  text-transform: none;
  white-space: normal;
}
.main-nav .level1 a:hover, .main-nav .level1 a:active, .main-nav .level1 a:focus {
  color: #273aaa;
}
.main-nav .level1 li:last-child a {
  border-bottom: 0px;
}
.main-nav .level1 .level2 {
  display: none !important;
}
@media screen and (min-width: 59.375em) {
  .main-nav .level1 .level2 li a, .main-nav .level1 .level2 li a:link, .main-nav .level1 .level2 li a:visited {
    color: #005591;
    font-weight: 500;
    padding: 0.5em 0;
    font-size: 1rem;
    margin: 0;
    text-decoration: none;
    border-bottom: none;
    cursor: pointer;
  }
  .main-nav .level1 .level2 li a:hover, .main-nav .level1 .level2 li a:active, .main-nav .level1 .level2 li a:focus {
    color: #273aaa;
  }
}
.main-nav .level1 > li > a {
  padding: 0.25em 0;
  margin-top: 0;
  color: #231F20;
  font-size: 0.85em;
}
@keyframes dropdown {
  0% {
    opacity: 0;
    visibility: hidden;
    transform: translate(-1.25em, 20px);
  }
  100% {
    opacity: 1;
    visibility: visible;
    transform: translate(-1.25em, 0);
  }
}
.main-nav .level1 .expandable > a span {
  display: inline-block;
  height: 30px;
  width: 30px;
  flex: 0 0 30px;
}
.main-nav .level1 .expandable > a span:after {
  font-family: "icomoon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  content: "\e903";
  margin-left: 5px;
  color: #e5e5e5;
  font-size: 10px;
}
.main-nav .level1 .expandable > ul {
  display: none;
}
.main-nav .level1 .expandable.expanded > a span:after {
  transform: rotate(180deg);
}
.main-nav .level1 .expandable.expanded > ul {
  display: block;
}
@media screen and (min-width: 59.375em) {
  .main-nav nav > ul > li:hover .dropdown-menu {
    display: block;
    z-index: 1001;
  }
  .main-nav nav > ul > li:hover .dropdown-menu .expandable span {
    display: none;
  }
}
@media screen and (max-width: 59.375em) {
  .main-nav {
    width: 100%;
  }
  .main-nav .mobile-only {
    display: block;
  }
  .main-nav .root-group {
    display: none;
  }
  .main-nav .root-group > li {
    margin: -1px 0;
    padding: 0.5em 1em;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
  }
  .main-nav .root-group > li > a {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.25em;
  }
  .main-nav li.mobile-buttons {
    border-top: 0px;
    padding: 1em 0 1.5em;
    display: flex;
    justify-content: space-between;
  }
  .main-nav li.mobile-buttons a {
    flex: 0 1 48%;
    padding: 0.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #e5e5e5;
    background: #fff;
  }
  .main-nav li.search > a {
    justify-content: flex-start;
  }
  .main-nav li.search > a:after {
    display: inline-block;
    content: "Search";
    margin-left: 15px;
  }
  .main-nav .dropdown-menu {
    display: none;
  }
  .main-nav .expanded .dropdown-menu {
    display: block;
  }
}

.mast {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99;
  transition: all 0.2s linear;
}
.mast ul {
  display: flex;
  margin: 0;
  padding: 0;
}
.mast ul li {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.mast .container {
  width: 90%;
  max-width: inherit;
  padding: 1em 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.mast .logo {
  flex: 0 1 192px;
}
.mast .logo svg {
  width: auto;
  height: 80px;
}
@media (max-width: 59.375em) {
  .mast .logo svg {
    height: 68px;
  }
}
.mast .logo a, .mast .logo a:link, .mast .logo a:visited {
  border: 0;
}
.mast .logo a.logo-color {
  display: none;
}
@media screen and (min-width: 59.375em) {
  .mast.not-at-top {
    position: fixed;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 2px 12px rgba(0, 0, 0, 0.07);
    transition: 0.3s ease-in-out;
  }
  .mast.not-at-top .container {
    padding: 0.375em 0;
    transition: 0.3s ease-in-out;
  }
  .mast.not-at-top .admin-btns a, .mast.not-at-top .admin-btns a:link, .mast.not-at-top .admin-btns a:visited {
    padding: 0.5em 1em;
  }
  .mast.not-at-top .admin-btns li a, .mast.not-at-top .admin-btns li a:link, .mast.not-at-top .admin-btns li a:visited {
    color: #000;
    border: solid 1px #ffc300;
  }
  .mast.not-at-top .admin-btns li a:hover, .mast.not-at-top .admin-btns li a:active, .mast.not-at-top .admin-btns li a:focus {
    color: #E8792D;
    border: solid 1px #e8792d;
    box-shadow: none;
  }
  .mast.not-at-top a.logo-color {
    display: flex;
  }
  .mast.not-at-top a.logo-color svg {
    width: auto;
    height: 56px;
  }
  .mast.not-at-top a.logo-white {
    display: none;
  }
}
@media (max-width: 59.375em) {
  .mast.dark-nav a.logo-color {
    display: flex;
  }
  .mast.dark-nav a.logo-color svg {
    width: auto;
  }
  .mast.dark-nav a.logo-white {
    display: none;
  }
}
@media screen and (min-width: 59.375em) {
  .mast.dark-nav {
    position: fixed;
    background: rgba(255, 255, 255, 0.95);
    border-bottom: 1px solid #e5e5e5;
    transition: 0.3s ease-in-out;
  }
  .mast.dark-nav .container {
    padding: 0.75em 0;
    transition: 0.3s ease-in-out;
  }
  .mast.dark-nav .admin-btns a, .mast.dark-nav .admin-btns a:link, .mast.dark-nav .admin-btns a:visited {
    padding: 0.5em 1em;
  }
  .mast.dark-nav .admin-btns li a, .mast.dark-nav .admin-btns li a:link, .mast.dark-nav .admin-btns li a:visited {
    color: #000;
    border: solid 1px #ffc300;
  }
  .mast.dark-nav .admin-btns li a:hover, .mast.dark-nav .admin-btns li a:active, .mast.dark-nav .admin-btns li a:focus {
    color: #E8792D;
    border: solid 1px #e8792d;
    box-shadow: none;
  }
  .mast.dark-nav a.logo-color {
    display: flex;
  }
  .mast.dark-nav a.logo-color svg {
    width: auto;
    height: 56px;
  }
  .mast.dark-nav a.logo-white {
    display: none;
  }
}
.mast .admin-btns {
  flex: 0 1 200px;
  display: none;
}
@media screen and (min-width: 59.375em) {
  .mast .admin-btns {
    display: block;
  }
}
.mast .admin-btns a, .mast .admin-btns a:link, .mast .admin-btns a:visited {
  padding: 0.75em 1em;
  font-size: 0.8em;
  border-radius: 4px;
}
.mast .admin-btns li {
  margin-right: 10px;
}
.mast .admin-btns li a, .mast .admin-btns li a:link, .mast .admin-btns li a:visited {
  background: transparent;
  color: #fff;
  border: solid 2px rgba(255, 195, 0, 0.3);
  transition: 0.2s ease;
}
.mast .admin-btns li a:hover, .mast .admin-btns li a:active, .mast .admin-btns li a:focus {
  color: #FFC300;
  border: solid 2px #ffc300;
}
.mast .admin-btns li:last-child a, .mast .admin-btns li:last-child a:link, .mast .admin-btns li:last-child a:visited {
  background: #FFC300;
  color: #000 !important;
  border: solid 2px #FFC300;
}
.mast .admin-btns li:last-child a:hover, .mast .admin-btns li:last-child a:active, .mast .admin-btns li:last-child a:focus {
  background: #E8792D;
  border: solid 2px #E8792D;
}

body.modal-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

.menu {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 100%;
  margin-left: 1em;
  padding: 5px 10px;
  border-radius: 4px;
  background: #FFC300;
  border: none;
  outline: none;
  cursor: pointer;
  transition: all 0.2s ease-out;
  color: #000;
  font-size: 14px;
  font-family: "Work Sans", sans-serif;
  text-transform: uppercase;
}
@media all and (min-width: 59.375em) {
  .menu {
    display: none;
  }
}
.menu .strokes {
  width: 39px;
  margin: 0 0 0px 0;
}
.menu .strokes .stroke {
  display: block;
  height: 3px;
  margin: 8px 0;
  background: #000;
  transition: transform 0.3s, opacity 0.1s;
}
.menu:hover, .menu:focus, .menu:active {
  cursor: pointer;
  color: #000;
  background: #E8792D;
}
.menu:hover .stroke, .menu:focus .stroke, .menu:active .stroke {
  background: #000;
}
.hide {
  opacity: 0;
}

.animate0 {
  transform: rotate(45deg) translateY(8px) translateX(8px);
}

.animate2 {
  transform: rotate(-45deg) translateY(-8px) translateX(8px);
}

.fullScreenMenu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 100%;
  background-color: #FFC300;
  opacity: 0;
  transition: all 0.5s ease-in-out, opacity 0.5s;
  z-index: -1;
}
.fullScreenMenu .menuContainer {
  display: inherit;
  opacity: 1;
  transform: translateY(0);
  animation: menufade 0.25s linear;
  padding: 5em 40px 1em;
}
@keyframes menufade {
  0% {
    opacity: 0;
    visibility: hidden;
    transform: translateY(48px);
  }
  100% {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}

.fullScreenMenu.show {
  opacity: 1;
  background-color: white;
  transition: all 0.5s ease-in-out, visibility 0.5s;
  z-index: 100;
  display: block;
}
.fullScreenMenu.show .menuContainer {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  color: #fff;
}
.fullScreenMenu.show .mobile-btns ul {
  margin: 3em 0 1em;
  padding: 0;
  display: flex;
  justify-content: space-between;
}
.fullScreenMenu.show .mobile-btns ul li {
  margin: 0 0 0;
  padding: 0;
  list-style-type: none;
  width: 32%;
}
.fullScreenMenu.show .mobile-btns ul li a {
  display: grid;
  place-content: center;
  text-align: center;
  height: 60px;
  padding: 0 8px;
}
.fullScreenMenu.show .mobile-btns ul li a, .fullScreenMenu.show .mobile-btns ul li a:link, .fullScreenMenu.show .mobile-btns ul li a:visited {
  background: transparent;
  color: #000;
  border: solid 1px #FFC300;
}
.fullScreenMenu.show .mobile-btns ul li a:hover, .fullScreenMenu.show .mobile-btns ul li a:active, .fullScreenMenu.show .mobile-btns ul li a:focus {
  background: #E8792D;
  border: solid 1px #E8792D;
  box-shadow: none;
}
.fullScreenMenu.show .mobile-btns ul li:last-child a, .fullScreenMenu.show .mobile-btns ul li:last-child a:link, .fullScreenMenu.show .mobile-btns ul li:last-child a:visited {
  background: #FFC300;
  border: solid 1px #FFC300;
}
.fullScreenMenu.show .mobile-btns ul li:last-child a:hover, .fullScreenMenu.show .mobile-btns ul li:last-child a:active, .fullScreenMenu.show .mobile-btns ul li:last-child a:focus {
  background: #E8792D;
  border: solid 1px #E8792D;
}
.fullScreenMenu.show .mobile-menu .desk-search {
  display: none !important;
}
.fullScreenMenu.show .mobile-menu .root-group > li {
  display: block;
}
.fullScreenMenu.show .mobile-menu .root-group > li > a {
  font-size: 1.5em;
}
.fullScreenMenu.show .mobile-menu ul {
  margin: 0;
  padding: 0;
  position: relative;
}
.fullScreenMenu.show .mobile-menu ul li {
  margin: 0;
  padding: 1em 0;
  list-style-type: none;
  line-height: 1.25;
  border-bottom: 1px solid #e5e5e5;
}
.fullScreenMenu.show .mobile-menu ul a, .fullScreenMenu.show .mobile-menu ul a:link, .fullScreenMenu.show .mobile-menu ul a:visited {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #231F20;
  text-decoration: none;
}
.fullScreenMenu.show .mobile-menu ul a:hover, .fullScreenMenu.show .mobile-menu ul a:active, .fullScreenMenu.show .mobile-menu ul a:focus {
  color: #00996d;
}
.fullScreenMenu.show .mobile-menu ul .dropdown-menu {
  padding: 0.5em 0 0 1em;
}
.fullScreenMenu.show .mobile-menu ul .dropdown-menu li {
  border-bottom: none;
  margin: 0;
}
.fullScreenMenu.show .mobile-menu ul .dropdown-menu a, .fullScreenMenu.show .mobile-menu ul .dropdown-menu a:link, .fullScreenMenu.show .mobile-menu ul .dropdown-menu a:visited {
  font-size: 1em;
  font-weight: normal;
}
.fullScreenMenu.show .mobile-menu ul .expandable > a span {
  height: 30px;
  width: 30px;
  flex: 0 0 30px;
  margin-left: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #f4f4f4;
  border-radius: 50%;
}
.fullScreenMenu.show .mobile-menu ul .expandable > a span:after {
  display: block;
  content: "";
  height: 25px;
  width: 25px;
  background-image: url("../images/icon-chevron-left.svg");
  background-repeat: no-repeat;
  background-size: 25px;
  background-position: center;
  transform: rotate(-90deg);
}
.fullScreenMenu.show .mobile-menu ul .expandable > ul {
  display: none;
}
.fullScreenMenu.show .mobile-menu ul .expandable.expanded > a span:after {
  transform: rotate(90deg);
}
.fullScreenMenu.show .mobile-menu ul .expandable.expanded > ul {
  display: block;
}

.contact-btns ul {
  margin: 0;
  padding: 0.5em 0 1.5em;
  display: flex;
  justify-content: space-between;
}
.contact-btns ul li {
  flex: 1;
  margin: 0 1.5%;
  padding: 0;
  list-style-type: none;
}
.contact-btns ul li:first-child {
  margin-left: 0;
}
.contact-btns ul li:last-child {
  margin-right: 0;
}
.contact-btns ul li a, .contact-btns ul li a:link, .contact-btns ul li a:visited {
  display: block;
  padding: 0.5em 0;
  background: #f4f4f4;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  text-align: center;
  color: #323239;
  text-decoration: none;
}
.contact-btns ul li a svg, .contact-btns ul li a:link svg, .contact-btns ul li a:visited svg {
  pointer-events: none;
  height: 16px;
  width: 16px;
  transform: translate(3px, -1px);
}
.contact-btns ul li a svg path, .contact-btns ul li a:link svg path, .contact-btns ul li a:visited svg path {
  fill: #005591;
}
.contact-btns ul li a:hover, .contact-btns ul li a:active, .contact-btns ul li a:focus {
  background-color: #273aaa;
  color: #fff;
}
.contact-btns ul li a:hover svg path, .contact-btns ul li a:active svg path, .contact-btns ul li a:focus svg path {
  fill: #fff;
}

.close-menu {
  position: absolute;
  top: 1em;
  right: 5vw;
  width: 80px;
  height: 70px;
  border-radius: 4px;
  border: none;
  background: #E8792D;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.2s ease-in-out;
  z-index: 6;
  cursor: pointer;
}
.close-menu:hover, .close-menu:active, .close-menu:focus {
  box-shadow: 0 1px 12px 0 rgba(0, 0, 0, 0.1);
}
.close-menu img {
  margin: 0;
}
.close-menu * {
  pointer-events: none;
}

.banner {
  background-color: #f4f4f4;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  opacity: 0;
  animation: fade-in 0.3s linear;
  animation-delay: 0.3s;
  animation-fill-mode: forwards;
}
.banner .container {
  max-width: 90rem;
}
.banner .container p {
  margin: 0;
  padding: 0;
}
.banner.belowNav {
  margin-top: 0;
}
@media screen and (max-width: 59.375em) {
  .banner.belowNav {
    margin-top: 77px;
  }
}
.banner.withBkgd .banner-mask {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.66) 0%, rgba(0, 0, 0, 0) 100%), linear-gradient(to bottom, rgba(0, 0, 0, 0.66) 0%, rgba(0, 0, 0, 0) 100%);
  height: 30vw;
  min-height: 250px;
  display: flex;
  align-items: flex-end;
  opacity: 0;
  animation: fade-in 0.5s linear;
  animation-delay: 0.5s;
  animation-fill-mode: forwards;
}
@media screen and (min-width: 59.375em) {
  .banner.withBkgd .banner-mask {
    height: 30vw;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.66) 0%, rgba(0, 0, 0, 0) 40%), linear-gradient(to bottom, rgba(0, 0, 0, 0.66) 0%, rgba(0, 0, 0, 0) 40%);
  }
}
.banner.withBkgd .banner-mask.no-image {
  background: linear-gradient(to top, #00192b, black);
  height: 20vw;
  min-height: 250px;
}
.banner.withBkgd .container {
  padding: 0 0 2.5em 0;
  max-width: 72.5rem;
  text-align: center;
  color: #fff;
  text-shadow: 0px 4px 48px rgba(0, 0, 0, 0.6), 0px 1px 4px rgba(0, 0, 0, 0.8);
}
.banner.withBkgd span.sectionName {
  font-size: 0.875em;
  text-transform: uppercase;
}
.banner.withBkgd p.section {
  color: white;
}
.banner.withBkgd h1 {
  margin: 0;
  color: inherit;
}
.banner.noBkgd .container {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 100px 0 3em 0;
}
@media screen and (min-width: 59.375em) {
  .banner.noBkgd .container {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
}
.banner.noBkgd .container .banner-image {
  flex: 0 1 50%;
  margin-bottom: 2em;
}
@media screen and (min-width: 59.375em) {
  .banner.noBkgd .container .banner-image {
    margin-bottom: 0;
  }
}
.banner.noBkgd .container .banner-text {
  flex: 0 1 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
@media screen and (min-width: 59.375em) {
  .banner.noBkgd .container .banner-text-content {
    max-width: 31.25rem;
  }
}

.text-banner {
  padding-top: 0;
  text-align: center;
}
.text-banner .container {
  padding: 3em 0;
}
.article-detail .text-banner .container {
  width: 100%;
  max-width: initial;
  border-bottom: 1px solid #e5e5e5;
}

.hero {
  background-color: #005591;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
}
.hero .hero-mask {
  position: relative;
  height: 25vh;
  min-height: 500px;
  display: flex;
  flex-direction: column;
  background: linear-gradient(to right, black 0%, rgba(0, 0, 0, 0.25) 100%), linear-gradient(to bottom, rgba(0, 0, 0, 0.66) 0%, rgba(0, 0, 0, 0) 50%);
}
@media screen and (min-width: 59.375em) {
  .hero .hero-mask {
    height: calc(100vh - 115px);
    background: linear-gradient(to right, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 70%), linear-gradient(to bottom, rgba(0, 0, 0, 0.66) 0%, rgba(0, 0, 0, 0) 50%);
  }
}
@media screen and (min-width: 43.75em) {
  .hero .hero-mask {
    height: calc(100vh - 90px);
  }
}
@media screen and (max-width: 31.25em) {
  .hero .hero-mask {
    height: auto;
  }
}
.hero .hero-text {
  width: 90%;
  margin: 0 auto;
  padding: 5em 0 1.5em 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
  text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.5);
}
@media screen and (min-width: 75em) {
  .hero .hero-text {
    transform: translateY(-3em);
  }
  .hero .hero-text .slide {
    width: 50% !important;
  }
}
.hero .hero-text .hero-img {
  display: none;
}
.hero .hero-text h1 {
  margin: 0 0 0.8rem;
  color: inherit;
  line-height: 1.1;
  font-size: 3.875em;
}
.hero .hero-text .hero-desc {
  font-size: 1.25em;
}
.hero .roundedBtm {
  position: absolute;
  bottom: -0.5px;
  left: 0;
  right: 0;
}

.main-content {
  padding: 4em 0;
}

.sub-content {
  padding: 4em 0;
}

.sub-nav {
  display: none;
  margin-top: -2em;
  margin-bottom: 2em;
  background: #fff;
  box-shadow: 0px 3px 30px 0px rgba(0, 0, 0, 0.05), 0px 1px 8px 0px rgba(0, 0, 0, 0.08);
}
@media screen and (min-width: 59.375em) {
  .sub-nav {
    display: block;
    position: relative;
    z-index: 1;
  }
}
.sub-nav ul.sub-top {
  margin: 0;
  padding: 0;
}
.sub-nav ul.sub-top li {
  margin: 0;
  padding: 0;
  list-style-type: none;
  list-style-image: none;
}
.sub-nav ul.sub-top > li > a {
  padding: 0.5em 1em;
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
  text-align: center;
  font-size: 0.9em;
  font-weight: 600;
}
.sub-nav ul.sub-top ul {
  padding: 1em 0.5em;
}
.sub-nav ul.sub-top ul li {
  margin: 0.5em 0;
  font-size: 0.9em;
}
.sub-nav ul.sub-top ul li ul {
  padding: 0.5em 0.5em 0 0.5em;
}
.sub-nav ul.sub-top ul li ul li {
  margin: 0 0 0.25em 0;
  font-size: 0.875em;
}
.sub-nav ul.sub-top ul li ul li a {
  font-weight: 400;
}
.sub-nav ul.sub-top ul ul {
  display: none;
}
.sub-nav a, .sub-nav a:link, .sub-nav a:visited {
  display: block;
  padding: 0.66em 1em;
  color: #231F20;
  font-size: 0.9em;
  line-height: 1.25;
  text-decoration: none;
}
.sub-nav a:hover, .sub-nav a:active, .sub-nav a:focus {
  color: #273aaa;
}
.sub-nav .active > a, .sub-nav .expanded > a {
  background: #f4f4f4;
}
.sub-nav .active > ul, .sub-nav .expanded > ul {
  display: block !important;
}
.sub-nav .active > a {
  color: #273aaa;
  cursor: default;
}

.share {
  padding: 1em 0;
  text-align: center;
}
.share p {
  font-weight: 500;
  font-size: 0.8em;
  padding: 0 0 0.75em;
}
.share ul {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.share ul li {
  margin: 0 5px;
  padding: 0;
  list-style-type: none;
}
.share a, .share a:link, .share a:visited {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 36px;
  width: 36px;
  background: transparent;
  border: 1px solid #e5e5e5;
  border-radius: 50%;
  line-height: 1;
  transition: all 0.2s ease-in-out;
}
.share a:hover, .share a:active, .share a:focus {
  background: #f4f4f4;
}
.share a:hover svg path, .share a:active svg path, .share a:focus svg path {
  fill: #273aaa;
  transition: 0.2s ease;
}
.share a svg path {
  fill: #005591;
}
.share img {
  height: 16px;
  width: 16px;
}

.related {
  border-top: 1px solid #e5e5e5;
  padding: 1.5em 0 3em;
  position: relative;
}
.related h2 {
  margin: 0 0 1em;
}
.related .viewall {
  position: absolute;
  top: 1.5em;
  right: 0;
}
.related .viewall a, .related .viewall a:link, .related .viewall a:visited {
  display: inline-block;
  font-size: 0.95em;
  text-decoration: none;
  border-bottom: 2px solid #005591;
}
.related .viewall a:hover, .related .viewall a:active, .related .viewall a:focus {
  border-color: #273aaa;
}

.global-cta {
  background: #273aaa;
  border-top: 1px solid white;
}
.global-cta a, .global-cta a:link, .global-cta a:visited {
  color: inherit;
}
.global-cta a:hover, .global-cta a:active, .global-cta a:focus {
  color: #00996d;
}
.global-cta .container {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1em 0;
}
.global-cta .cta-text {
  margin: 0 1em;
  color: #fff;
  font-size: 1.25em;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}
.global-cta .cta-btn {
  margin: 0 1em;
}

.footer {
  background: #fff;
  border-top: 1px solid #e5e5e5;
  font-size: 0.9em;
}
.footer .divider {
  display: inline-block;
  margin: 0 3px;
  color: #fff;
}
.footer p {
  margin: 0;
  padding: 0 0 0.5em;
}
.footer ul li {
  margin: 0;
  padding: 0 0 0.5em;
  list-style-type: none;
}
.footer a, .footer a:link, .footer a:visited {
  color: inherit;
  text-decoration: none;
}
.footer a:hover, .footer a:active, .footer a:focus {
  color: #273aaa;
  text-decoration: underline;
}

.footer-top {
  padding: 4em 0 1em 0;
}
.footer-top .container {
  text-align: center;
}
@media screen and (min-width: 43.75em) and (max-width: 59.375em) {
  .footer-top .container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 2em;
    gap: 2em;
    text-align: left;
  }
  .footer-top .container .footer-logo {
    grid-row: 1;
    grid-column: 2;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .footer-top .container .social {
    grid-row: 2;
    grid-column: 2;
  }
}
@media screen and (min-width: 59.375em) {
  .footer-top .container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 2em;
    gap: 2em;
    text-align: left;
  }
}

.footer-col {
  margin-bottom: 2em;
}
.footer-col h6 {
  color: #5AB400;
}

.footer-logo img {
  max-width: 240px;
}

.social {
  text-align: left;
}
.social p {
  padding: 0 0 1em;
}
.social ul {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.social ul li {
  margin: 0 8px;
}
.social ul li:first-child {
  margin-left: 0;
}
.social ul li:last-child {
  margin-right: 0;
}
.social img {
  height: 20px;
  width: 20px;
}

.footer-btm {
  border-top: 1px solid #e5e5e5;
}
.footer-btm .container {
  display: flex;
  justify-content: space-between;
  padding: 2em 0;
  font-size: 0.9em;
}

.content {
  display: grid;
  grid-template-columns: minmax(5%, auto) 90% minmax(5%, auto);
  grid-template-areas: "banner banner banner" ".  content ." ".  sidebar ." ".  sideNav ." "feature feature feature" "globalCTA globalCTA globalCTA";
}
@media screen and (min-width: 59.375em) {
  .content {
    grid-template-columns: minmax(5%, auto) minmax(200px, 400px) minmax(2.5em, 10em) minmax(620px, 740px) minmax(5%, auto);
    grid-template-rows: auto max-content;
    grid-template-areas: "banner banner banner banner banner" ".  sideNav . content ." ".  sidebar . content ." "feature feature feature feature feature" "globalCTA globalCTA globalCTA globalCTA globalCTA";
  }
}
@media screen and (min-width: 72.5rem) {
  .content {
    grid-template-columns: minmax(5%, auto) minmax(180px, 280px) minmax(2.5em, 10em) minmax(600px, 740px) minmax(2.5em, 10em) minmax(180px, 280px) minmax(5%, auto);
    grid-template-areas: "banner banner banner banner banner banner banner" ".  sideNav . content . sidebar ." "feature feature feature feature feature feature feature" "globalCTA globalCTA globalCTA globalCTA globalCTA globalCTA globalCTA";
  }
}
.content .banner {
  grid-area: banner;
}
.content .main-content {
  grid-area: content;
}
.content .side-nav {
  grid-area: sideNav;
}
.content .sub-content {
  grid-area: sidebar;
}
.content .feature {
  grid-area: feature;
}
.content .global-cta {
  grid-area: globalCTA;
}

.landing .main-content {
  padding: 0;
}
.landing section.banner p.section {
  color: #FFC300;
}

.article-detail {
  margin-top: 6em;
  display: grid;
  grid-template-columns: minmax(5%, auto) auto minmax(5%, auto);
  grid-template-areas: ". banner ." ". content ." ". sidebar ." ". sideNav ." ". related ." "globalCTA globalCTA globalCTA";
}
@media screen and (min-width: 59.375em) {
  .article-detail {
    grid-template-columns: minmax(5%, auto) minmax(200px, 400px) minmax(2.5em, 8em) minmax(620px, 740px) minmax(5%, auto);
    grid-template-rows: auto max-content;
    grid-template-areas: ". banner banner banner ." ". sideNav . content ." ". sidebar . content ." ". related related related ." "globalCTA globalCTA globalCTA globalCTA globalCTA";
  }
}
@media screen and (min-width: 72.5rem) {
  .article-detail {
    grid-template-columns: minmax(5%, auto) minmax(180px, 280px) minmax(2.5em, 8em) minmax(600px, 740px) minmax(2.5em, 8em) minmax(180px, 280px) minmax(5%, auto);
    grid-template-areas: ". banner banner banner banner banner ." ". sideNav . content . sidebar ." ". related related related related related ." "globalCTA globalCTA globalCTA globalCTA globalCTA globalCTA globalCTA";
  }
}
.article-detail .text-banner {
  grid-area: banner;
}
.article-detail .text-banner p.date {
  display: block;
  font-weight: 500;
  text-transform: none;
}
.article-detail .main-content {
  grid-area: content;
}
.article-detail .article-info {
  grid-area: sideNav;
}
.article-detail .sub-content {
  grid-area: sidebar;
}
.article-detail .related {
  grid-area: related;
}
.article-detail .global-cta {
  grid-area: globalCTA;
}

.staff-listing {
  display: grid;
  grid-template-columns: minmax(5%, auto) minmax(auto, 72.5rem) minmax(5%, auto);
  grid-template-areas: "banner banner banner" ". content ." "feature feature feature" "globalCTA globalCTA globalCTA";
}
.staff-listing .banner {
  grid-area: banner;
}
.staff-listing .main-content {
  grid-area: content;
}
.staff-listing .feature {
  grid-area: feature;
}
.staff-listing .global-cta {
  grid-area: globalCTA;
}

.staff-detail {
  display: grid;
  grid-template-columns: minmax(5%, auto) auto minmax(5%, auto);
  grid-template-areas: "banner banner banner" ". subinfo ." ". content ." ". related ." "globalCTA globalCTA globalCTA";
}
@media screen and (min-width: 59.375em) {
  .staff-detail {
    grid-template-columns: minmax(5%, auto) minmax(200px, 400px) minmax(3em, 6em) auto minmax(5%, auto);
    grid-template-rows: auto max-content;
    grid-template-areas: "banner banner banner banner banner" ".  subinfo . content ." ". related related related ." "globalCTA globalCTA globalCTA globalCTA globalCTA";
  }
}
.staff-detail .banner {
  grid-area: banner;
}
.staff-detail .staff-image {
  grid-area: subinfo;
}
.staff-detail .staff-content {
  grid-area: content;
}
.staff-detail .related {
  grid-area: related;
}
.staff-detail .global-cta {
  grid-area: globalCTA;
}

.article-info {
  padding: 4em 0;
}
@media all and (max-width: 59.375em) {
  .article-info {
    padding: 2em 0;
  }
}

@media all and (min-width: 75em) {
  .article-detail h1 {
    max-width: 72.5rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media all and (max-width: 59.375em) {
  .article-detail .main-content {
    padding: 2em 0;
  }
  .article-detail .main-content .share {
    display: none;
  }
}

.author {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 2em;
  margin-bottom: 1em;
  font-size: 0.85em;
  text-align: center;
}
.author img {
  margin: 0 auto 1em;
  border-radius: 50%;
  max-width: 180px;
}
@media all and (min-width: 75em) {
  .author img {
    transform: scale(0.75);
    margin: 0 auto -0.5em;
  }
}
@media all and (max-width: 59.375em) {
  .author img {
    margin: 0 2em 0 0;
  }
}
.author p {
  margin: 0;
  padding: 0;
}
.author strong {
  font-size: 1.25em;
}
@media all and (max-width: 59.375em) {
  .author {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-align: left;
  }
  .author img {
    flex: 0 1 25%;
    max-width: 25%;
  }
  .author .author-text {
    flex: 0 1 70%;
  }
}

.filters {
  border-radius: 8px;
  box-shadow: 0px 3px 30px rgba(0, 0, 0, 0.05), 0px 1px 8px rgba(0, 0, 0, 0.08);
  padding: 1em;
  margin-bottom: 2em;
}
.filters .directorySearch {
  display: flex;
  justify-content: center;
  align-self: center;
  text-align: center;
}
@media (max-width: 59.375em) {
  .filters .directorySearch {
    flex-wrap: wrap;
  }
}
.filters select {
  display: block;
  width: 240px;
  height: 44px;
  margin: 0 12px;
  padding: 0 2em 0 1em;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: #fff url("../images/icon-dropdown.svg") no-repeat;
  background-position: calc(100% - 12px) 50%;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  box-shadow: 0 1px 6px 0 rgba(0, 85, 145, 0.1);
}
@media (max-width: 59.375em) {
  .filters select {
    width: 48%;
    margin: 0 0 12px 0;
  }
}
.filters .keywordSearch {
  width: 240px;
  margin: 0 12px 0 0;
}
@media (max-width: 59.375em) {
  .filters .keywordSearch {
    width: 90%;
    margin: 0 0 12px 0;
  }
}
.filters .keywordSearch input[type=text], .filters .keywordSearch input[type=search] {
  -webkit-appearance: none;
  width: calc(100% - 14px);
  height: 44px;
  padding: 0 0 0 12px;
  margin: 0;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  transition: all 0.1s ease-out;
}
.filters .keywordSearch input[type=text]::placeholder, .filters .keywordSearch input[type=search]::placeholder {
  color: rgba(0, 0, 0, 0.33);
}
.filters .keywordSearch input[type=text]:focus, .filters .keywordSearch input[type=text]:active, .filters .keywordSearch input[type=search]:focus, .filters .keywordSearch input[type=search]:active {
  outline: none;
  border: 1px solid #000;
  box-shadow: 0 1px 12px 0 rgba(0, 85, 145, 0.1);
}
.filters button.applyFilter, .filters button.applyFilter:link, .filters button.applyFilter:focus {
  background: #005591;
  color: #fff !important;
  display: flex;
  align-items: center;
  padding: 0 12px;
  height: 42px;
  border: 1px solid transparent;
  border-radius: 3px;
  outline: 0;
  transition: all 0.2s;
}
@media (max-width: 59.375em) {
  .filters button.applyFilter, .filters button.applyFilter:link, .filters button.applyFilter:focus {
    margin: 0 auto;
    padding: 0 24px;
    width: 50%;
    text-align: center;
    justify-content: center;
  }
}
.filters button.applyFilter:hover, .filters button.applyFilter:focus, .filters button.applyFilter:active {
  cursor: pointer;
  background: #273aaa;
  box-shadow: 0 1px 12px 0 rgba(0, 85, 145, 0.1);
}
.filters a.clearButton {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 0 12px;
  padding: 0 1em;
  height: 42px;
  border: 1px solid transparent;
  border-radius: 3px;
  color: #005591;
  white-space: nowrap;
  transition: all 0.2s;
  text-decoration: none;
}
.filters a.clearButton:hover, .filters a.clearButton:focus, .filters a.clearButton:active {
  border: 1px solid #000;
  color: #005591;
  box-shadow: 0 1px 12px 0 rgba(0, 85, 145, 0.1);
}
@media (max-width: 59.375em) {
  .filters a.clearButton {
    width: 90%;
    margin: 0;
  }
  .filters a.clearButton:hover, .filters a.clearButton:focus, .filters a.clearButton:active {
    border: 1px solid transparent;
    color: #273aaa;
    box-shadow: none;
  }
}

.listing-results {
  margin-bottom: 2em;
}

.pagination {
  padding: 1em 0;
  margin-bottom: 2em;
  border-top: 1px solid #e5e5e5;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 59.375em) {
  .pagination {
    flex-wrap: wrap;
    justify-content: center;
  }
}
.pagination .firstPage a, .pagination .firstPage a:link, .pagination .firstPage a:visited, .pagination .lastPage a, .pagination .lastPage a:link, .pagination .lastPage a:visited {
  background: #005591;
  color: #fff;
  border-radius: 3px;
  padding: 0.5em 1em;
  text-decoration: none;
}
.pagination .firstPage a:hover, .pagination .firstPage a:active, .pagination .firstPage a:focus, .pagination .lastPage a:hover, .pagination .lastPage a:active, .pagination .lastPage a:focus {
  background: #273aaa;
}
.pagination .middlePages {
  align-self: center;
  width: calc(100% - 122px);
  text-align: center;
}
@media (max-width: 59.375em) {
  .pagination .middlePages {
    order: 1;
    margin-bottom: 12px;
    width: 100%;
  }
}
.pagination .middlePages a, .pagination .middlePages a:link, .pagination .middlePages a:visited {
  padding: 0 4px;
  text-decoration: none;
}
.pagination .middlePages a img, .pagination .middlePages a:link img, .pagination .middlePages a:visited img {
  height: 18px;
}
.pagination .middlePages a:hover img, .pagination .middlePages a:active img, .pagination .middlePages a:focus img {
  opacity: 0.75;
}
@media (max-width: 59.375em) {
  .pagination .firstPage {
    order: 2;
    margin-right: 6px;
  }
}
.pagination .lastPage {
  align-self: flex-end;
}
@media (max-width: 59.375em) {
  .pagination .lastPage {
    order: 3;
    margin-left: 6px;
  }
}

.form {
  margin: 1em 0;
  background: white;
  box-shadow: 0px 1px 28px rgba(0, 0, 0, 0.07), 0px 1px 2px rgba(0, 0, 0, 0.13);
  border-radius: 8px;
  padding: 36px;
  margin: 0 0 3em;
}
.form h2 {
  border-bottom: 1px solid #e5e5e5;
  padding: 0 0 10px;
  margin: 0 0 30px;
}

.fui-page {
  text-align: left;
}
.fui-page .fui-label, .fui-page .fui-legend {
  display: block;
  margin: 0 0 10px;
  padding: 0;
  color: #000;
  font-size: 0.875em;
  font-weight: 500;
  line-height: 1.2;
}
.fui-page .fui-legend {
  padding: 0;
}
.fui-page input, .fui-page textarea, .fui-page select {
  border-radius: 0px;
  border-style: none;
  background: #f4f4f4;
  box-shadow: inset 0px 1px 2px rgba(0, 0, 0, 0.07);
  border: 1px solid transparent;
}
.fui-page input:focus, .fui-page textarea:focus, .fui-page select:focus {
  outline: none;
  border: 1px solid #005591;
}
.fui-page select[multiple]:focus option:checked {
  background: #f4f4f4;
}
.fui-page select[multiple]:focus {
  background: white;
}

.fui-i .fui-alert {
  padding: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  font-size: 1em;
  font-family: "Work Sans", sans-serif;
  font-weight: 500;
  line-height: 1.25rem;
}
.whitepaper .fui-i .fui-alert.fui-alert-success {
  padding: 0;
  background-color: #fff;
  color: #000;
}

.fui-btn-container {
  margin: 25px 0 0;
}
.fui-btn-container button {
  min-width: 300px;
  background: #005591;
}
.fui-btn-container button:hover {
  background: #273aaa;
}

#alert-success {
  display: none;
}
#alert-success.show {
  display: block;
}

.scholarship-directory h2 {
  margin: 0 0 10px;
  font-size: 1.5em;
}
.scholarship-directory p {
  padding: 0 0 0.75em;
}
.scholarship-directory ul {
  margin: 0;
  padding: 0;
}

.scholarship-table th:nth-child(1) {
  width: auto;
}
.scholarship-table th:nth-child(2) {
  width: 25%;
}
.scholarship-table th:nth-child(3) {
  width: 150px;
}
.scholarship-table th:nth-child(4) {
  width: 100px;
}
.scholarship-table td {
  padding: 15px 12px;
}
.scholarship-table td:nth-child(3) {
  text-align: center;
}

.overlay {
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: -1;
  background-color: rgba(255, 255, 255, 0.95);
}
.modal-open .overlay {
  opacity: 1;
  z-index: 999;
}
.overlay .closebtn {
  position: absolute;
  top: 35px;
  right: calc(3vw + 108px);
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  width: 40px;
  height: 40px;
  margin-right: 8px;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.2s ease-in-out;
  background: white;
  z-index: 6;
  cursor: pointer;
}
.overlay .closebtn img {
  pointer-events: none;
}
.overlay .closebtn:hover, .overlay .closebtn:active, .overlay .closebtn:focus {
  border: 1px solid #000;
  box-shadow: 0 1px 12px 0 rgba(0, 0, 0, 0.1);
}

.overlayContent {
  position: absolute;
  top: 50%;
  width: 60%;
  left: 20%;
  transform: translateY(-50%);
}

.header-search {
  display: flex;
  justify-content: center;
}
.header-search input[type=search] {
  -webkit-appearance: none;
  border: 1px solid #000;
  border-radius: 3px;
  width: 100%;
  height: 72px;
  margin: 0;
  padding: 4px 72px 0;
  transition: all 0.1s ease-out;
  font-size: 24px;
  font-family: "Work Sans", sans-serif;
  line-height: 30px;
  font-weight: 400;
}
.header-search input[type=search]::placeholder {
  padding: 4px 0 0 0;
  color: #515657;
}
.header-search input[type=search]:focus, .header-search input[type=search]:active {
  outline: none;
  border: 1px solid #000;
  box-shadow: 0 1px 12px 0 rgba(0, 0, 0, 0.1);
}
.header-search button.submitSearch {
  -webkit-appearance: none;
  border: none;
  background: none;
  cursor: pointer;
  position: absolute;
  left: 16px;
  top: 22px;
}
.header-search button.submitSearch img {
  pointer-events: none;
  height: 30px;
}

.search-form {
  display: flex;
}
.search-form input, .search-form button {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-right: 0px;
  padding: 0.5em 1.5em;
  color: #323239;
}
.search-form input {
  flex: 1;
}
.search-form input::placeholder {
  color: rgba(255, 255, 255, 0.9);
}
.search-form button {
  flex: 0 0 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #005591;
  padding: 0;
  cursor: pointer;
  transition: 0.2s all ease-in;
}
.search-form button img {
  height: 20px;
  width: 20px;
}
.search-form button:hover, .search-form button:active, .search-form button:focus {
  background: #273aaa;
}

.search-results li {
  margin: 0;
  padding: 1em 0;
  list-style-type: none;
  border-bottom: 1px solid #e5e5e5;
}
.search-results a, .search-results a:link, .search-results a:visited {
  font-weight: 600;
}

.staff-image,
.staff-content {
  padding: 4em 0;
}

.staff-image img {
  border-radius: 50%;
}

.staff-filter {
  display: flex;
  border: 1px solid #e5e5e5;
  box-shadow: 0px 3px 30px rgba(0, 0, 0, 0.05), 0px 1px 8px rgba(0, 0, 0, 0.08);
}
.staff-filter .staff-filter-header {
  flex: 0 1 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1em;
  border-right: 1px solid #e5e5e5;
}
.staff-filter .staff-filter-list {
  flex: 1;
  padding: 1em 0.5em;
}
.staff-filter h2 {
  margin: 0;
  font-size: 1.1em;
  font-family: "Work Sans", sans-serif;
}
.staff-filter ul {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.staff-filter ul li {
  margin: 5px 8px;
  padding: 0;
  list-style-type: none;
}
.staff-filter a, .staff-filter a:link, .staff-filter a:visited {
  display: inline-block;
  background: #f4f4f4;
  border-radius: 30px;
  padding: 0.5em 1em;
  color: #231F20;
  line-height: 1.1;
  text-decoration: none;
}
.staff-filter a:hover, .staff-filter a:active, .staff-filter a:focus {
  background: #273aaa;
  color: #fff;
}

.staff-department {
  padding: 2em 0;
}

.staff-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(265px, 1fr));
  grid-gap: 25px;
  gap: 25px;
  align-items: stretch;
}

.staff-block {
  border: 1px solid #e5e5e5;
  padding: 1em 1em 0.125em 1em;
}
.staff-block .staff-text {
  padding: 2em 1em;
  text-align: center;
  font-size: 1em;
}
.staff-block .staff-name {
  font-size: 1.25em;
}
.staff-block .staff-name a, .staff-block .staff-name a:link, .staff-block .staff-name a:visited {
  color: inherit;
  text-decoration: none;
}
.staff-block .staff-name a:after, .staff-block .staff-name a:link:after, .staff-block .staff-name a:visited:after {
  display: inline-block;
  content: "";
  background: url("../images/icon-chevron-right.svg") no-repeat;
  background-size: 20px;
  height: 16px;
  width: 16px;
}
.staff-block .staff-name a:hover, .staff-block .staff-name a:active, .staff-block .staff-name a:focus {
  color: #273aaa;
}
.staff-block p {
  margin: 0;
  padding: 0;
}

.sitemap .desk-search {
  display: none !important;
}
.sitemap ul li {
  margin: 0 0 0 2em;
  padding: 0;
  list-style-type: disc;
}
.sitemap ul.root-group > li {
  border-bottom: 1px solid #007A84;
  margin-bottom: 1em;
  padding-bottom: 1em;
  list-style-type: none;
  list-style-image: none;
}
.sitemap ul.root-group > li > a {
  font-size: 1.25em;
  font-weight: 600;
  color: #007A84;
}
.sitemap ul.root-group > li > ul li a {
  color: #007A84;
}

@media print {
  @page {
    size: 330mm 427mm;
    margin: 14mm;
  }
  .container {
    width: 1170px;
  }

  .main-nav,
.admin-btns,
.banner-image,
.side-nav,
.global-cta,
.footer {
    display: none;
  }

  .mast .container {
    display: block;
    max-width: 100%;
    margin-bottom: 2em;
  }
  .mast .logo {
    margin: 0;
    transform: none;
  }

  .main-content {
    padding: 0;
  }

  .sub-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 20px;
    gap: 20px;
  }

  .side-block {
    border: 1px solid #515657;
    color: #323239 !important;
  }

  a.button, a.button:link, a.button:visited,
.button a, .button a:link, .button a:visited,
input.button, button.button {
    border: 2px solid #005591 !important;
    color: #005591 !important;
  }

  .hero-text {
    color: #000;
    font-size: 1.1em;
    text-shadow: none;
  }

  .link-list {
    display: none;
  }

  .image-block {
    margin: 1.5em 0;
  }

  .banner {
    margin-top: 0px;
  }
  .banner.withBkgd .banner-mask {
    height: auto !important;
    min-height: initial;
  }

  .two-column .container {
    display: flex;
    justify-content: space-between;
  }
  .two-column .column-card {
    flex: 0 1 48%;
  }
  .two-column .column-card .card-text {
    flex: 1;
  }
  .two-column .column-card .card-image {
    display: none;
  }

  .feature-row {
    flex-direction: row;
    border-top: 1px solid #000;
    color: #000 !important;
  }
  .feature-row .feature-text {
    text-align: left !important;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX25vcm1hbGl6ZS5zY3NzIiwiYmFzZS9fYmFzZS5zY3NzIiwiYWJzdHJhY3RzL192YXJpYWJsZXMuc2NzcyIsImFic3RyYWN0cy9fbWl4aW5zLnNjc3MiLCJiYXNlL191dGlsaXRpZXMuc2NzcyIsImJhc2UvX2FuaW1hdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCJjb21wb25lbnRzL19jYWxsb3V0cy5zY3NzIiwiY29tcG9uZW50cy9fY29sdW1ucy5zY3NzIiwiY29tcG9uZW50cy9fY2FyZHMuc2NzcyIsImNvbXBvbmVudHMvX2ZlYXR1cmUuc2NzcyIsImNvbXBvbmVudHMvX2ltYWdlcy5zY3NzIiwiY29tcG9uZW50cy9faW1hZ2UtYmxvY2suc2NzcyIsImNvbXBvbmVudHMvX2xpc3RzLnNjc3MiLCJjb21wb25lbnRzL19yb3RhdG9yLnNjc3MiLCJjb21wb25lbnRzL19zaWRlYmFyLnNjc3MiLCJjb21wb25lbnRzL190YWJsZS5zY3NzIiwiY29tcG9uZW50cy9fdHlwb2dyYXBoeS5zY3NzIiwibGF5b3V0L19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJsYXlvdXQvX21haW4tbmF2LnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19tb2JpbGUtbmF2LnNjc3MiLCJsYXlvdXQvX2Jhbm5lci5zY3NzIiwibGF5b3V0L19oZXJvLnNjc3MiLCJsYXlvdXQvX21haW4tY29udGVudC5zY3NzIiwibGF5b3V0L19zaWRlLW5hdi5zY3NzIiwibGF5b3V0L19zaGFyZS5zY3NzIiwibGF5b3V0L19yZWxhdGVkLnNjc3MiLCJsYXlvdXQvX2NhbGwtdG8tYWN0aW9uLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwicGFnZXMvX2NvbnRlbnQuc2NzcyIsInBhZ2VzL19sYW5kaW5nLnNjc3MiLCJwYWdlcy9fYXJ0aWNsZXMuc2NzcyIsInBhZ2VzL19zdGFmZi5zY3NzIiwibW9kdWxlcy9fYXJ0aWNsZXMuc2NzcyIsIm1vZHVsZXMvX2RpcmVjdG9yaWVzLnNjc3MiLCJtb2R1bGVzL19mb3Jtcy5zY3NzIiwibW9kdWxlcy9fc2Nob2xhcnNoaXBzLnNjc3MiLCJtb2R1bGVzL19zZWFyY2guc2NzcyIsIm1vZHVsZXMvX3N0YWZmLnNjc3MiLCJtb2R1bGVzL19zaXRlbWFwLnNjc3MiLCJwYWdlcy9fcHJpbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUVBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUM7RUFDQztBQUFtQjtFQUNuQjtBQUE0QjtFQUM1QjtBQUFnQzs7O0FBR2xDO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNRTs7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0VBQ0E7OztBQUdGO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUVPO0VBQ0w7OztBQUdGO0FBQUE7QUFBQTtBQUlBO0VBQ0U7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7RUFDRTtBQUF5QjtFQUN6QjtBQUFXO0VBQ1g7QUFBbUI7OztBQUdyQjtBQUFBO0FBQUE7QUFBQTtBQUtBO0VBQ0U7QUFBbUM7RUFDbkM7QUFBZ0I7OztBQUdsQjtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0FBQStCO0VBQy9CO0FBQXVDOzs7QUFHekM7QUFBQTtBQUFBO0FBQUE7QUFLQTtFQUNFO0FBQXFCO0VBQ3JCO0FBQTRCO0VBQzVCO0FBQW1DOzs7QUFHckM7QUFBQTtBQUFBO0FBSUE7QUFBQTtFQUVFOzs7QUFHRjtBQUFBO0FBQUE7QUFJQTtBQUFBO0VBRUU7OztBQUdGO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0VBR0U7QUFBbUM7RUFDbkM7QUFBZ0I7OztBQUdsQjtBQUFBO0FBQUE7QUFJQTtFQUNFOzs7QUFHRjtB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RUFFRjtJQUNFO0lBQ0E7OztFQUdGO0FBQUE7QUFBQTtJQUdFO0lBQ0E7OztFQUtGO0lBQ0UsT3hDOUJVO0l3QytCVjtJQUNBOzs7RUFFRjtJQUNFOzs7RUFFRjtJQUNFOzs7RUFHRjtJQUNFOztFQUdFO0lBQ0U7SUFDQTs7O0VBS0o7SUFDRTtJQUNBOztFQUVGO0lBQ0U7O0VBQ0E7SUFDRTs7RUFFRjtJQUNFOzs7RUFJTjtJQUNFO0lBQ0E7SUFDQTs7RUFFQTtJQUNFIiwiZmlsZSI6InNjcmVlbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbm9ybWFsaXplLmNzcyB2Ny4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuXG4gaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5maWdjYXB0aW9uLFxuZmlndXJlLFxubWFpbiB7IC8qIDEgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMsIC8qIDEgKi9cbm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBTY3JpcHRpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSGlkZGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKioqKioqKioqKioqKiBIVE1MIFN0eWxlcyAqKioqKioqKioqKioqL1xuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHsgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5Admlld3BvcnQgeyB3aWR0aDpkZXZpY2Utd2lkdGg7IH1cblxuaHRtbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5ib2R5IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAvLyBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAkYmtnZC1ib2R5O1xuXG4gIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgQGluY2x1ZGUgZmx1aWQtdHlwZSgkbWluLWZvbnQsICRtYXgtZm9udCk7XG4gIGZvbnQtZmFtaWx5OiAkbWFpbi1mb250O1xuICBsaW5lLWhlaWdodDogJG1haW4tbGluZWhlaWdodDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbmgxIHtcbiAgbWFyZ2luOiAwIDAgMS4xcmVtO1xuXG4gIGNvbG9yOiAkY29sb3ItZ3JleS1kYXJrO1xuICBmb250LXNpemU6IDIuNWVtO1xuICBmb250LWZhbWlseTogJGFjY2VudC1mb250O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuXG5oMiB7XG4gIG1hcmdpbjogLjI1ZW0gMCAuNWVtO1xuXG4gIGNvbG9yOiAkY29sb3ItZ3JleS1kYXJrO1xuICBmb250LXNpemU6IDEuN2VtO1xuICBmb250LWZhbWlseTogJGFjY2VudC1mb250O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cblxuaDMge1xuICBtYXJnaW46IC4yNWVtIDAgLjVlbTtcblxuICBjb2xvcjogJGNvbG9yLWxpbWU7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LWZhbWlseTogJG1haW4tZm9udDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG5cbmg0IHtcbiAgbWFyZ2luOiAwIDAgMC41cmVtO1xuXG4gIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtZmFtaWx5OiAkbWFpbi1mb250O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuXG5oNSB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbTtcblxuICBjb2xvcjogJGZvbnQtY29sb3I7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LWZhbWlseTogJG1haW4tZm9udDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbn1cblxuaDYge1xuICBtYXJnaW46IDAgMCAxLjI1cmVtO1xuXG4gIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICBmb250LXNpemU6IC45ZW07XG4gIGZvbnQtZmFtaWx5OiAkbWFpbi1mb250O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45NWVtO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cbnN1cCxcbnN1YiB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxucCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwIDEuMjVlbTtcbn1cbnVsLFxub2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMCAxLjVlbTtcbn1cblxudWwgdWwsXG5vbCBvbCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnVsIGxpIHtcbiAgbWFyZ2luOiAwIDAgMC43NWVtIDJlbTtcbiAgcGFkZGluZzogMDtcbn1cblxudWwgbGkgKiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG51bCBsaSBwIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxub2wgbGkge1xuICBtYXJnaW46IDAgMCAwLjVyZW0gMnJlbTtcbn1cbmEsXG5hOmxpbmssXG5hOnZpc2l0ZWQge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBvdXRsaW5lOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLW91dCxcbiAgICAgICAgICAgIGJhY2tncm91bmQgMC4ycyBlYXNlLWluLFxuICAgICAgICAgICAgb3BhY2l0eSAwLjJzIGVhc2Utb3V0LFxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uIDAuMnMgZWFzZS1vdXQsXG4gICAgICAgICAgICBib3JkZXIgMC4ycyBlYXNlLW91dCxcbiAgICAgICAgICAgIGJveC1zaGFkb3cgMC4ycyBlYXNlLW91dDtcbn1cbmE6aG92ZXIsXG5hOmFjdGl2ZSxcbmE6Zm9jdXMge1xuICBjb2xvcjogJGhvdmVyLWNvbG9yO1xufVxuYTphY3RpdmUsIGE6Zm9jdXMge1xuICBvdXRsaW5lOiByZ2IoOTQsIDE1OCwgMjE1KSBhdXRvIDVweDtcbn1cblxuaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuaHIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoci1jb2xvcjtcbiAgbWFyZ2luOiAxZW0gMDtcbiAgcGFkZGluZzogMDtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbmF1ZGlvLFxuY2FudmFzLFxuaWZyYW1lLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuZmllbGRzZXQge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5pbnB1dCxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5maWdjYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAkaGlnaGxpZ2h0LWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogJGhpZ2hsaWdodC1jb2xvcjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4iLCIvLyBCUkVBS1BPSU5UU1xuJHhzbWFsbC1zY3JlZW46IGVtKDUwMCk7XG4kc21hbGwtc2NyZWVuOiBlbSg3MDApO1xuJG1lZGl1bS1zY3JlZW46IGVtKDk1MCk7XG4kbGFyZ2Utc2NyZWVuOiBlbSgxMjAwKTtcbiR4bGFyZ2Utc2NyZWVuOiBlbSgxNjAwKTtcblxuLy8gV0lEVEhTXG4kc21hbGwtd2lkdGg6IHJlbSg1MDApO1xuJGxpbWl0ZWQtd2lkdGg6IHJlbSg3NDApO1xuJG1heC13aWR0aDogcmVtKDExNjApO1xuJGV4dGVuZGVkLXdpZHRoOiByZW0oMTQ0MCk7XG5cbi8vIFBBVEhTXG4kaW1hZ2UtcGF0aDogXCIuLi9pbWFnZXMvXCI7XG4kZm9udC1wYXRoOiBcImZvbnRzL2ZvbnRzL1wiO1xuXG4vLyBDT0xPUlNcblxuJGNvbG9yLWdyZXktbGlnaHQ6ICNlNWU1ZTU7XG4kY29sb3ItZ3JleTogIzUxNTY1NztcbiRjb2xvci1ncmV5LWRhcms6ICMzMjMyMzk7XG5cbiRjb2xvci1vZmZ3aGl0ZTogI2Y0ZjRmNDtcbiRjb2xvci13aGl0ZTogI2ZmZjtcbiRjb2xvci1ibGFjazogIzAwMDtcblxuLy8gVGVtcGxhdGUgMVxuLy8gJGNvbG9yLXllbGxvdzogI2MzNzkxZTtcbi8vICRjb2xvci15ZWxsb3ctbGlnaHQ6ICNmZmU1YWI7XG4vL1xuLy8gJGNvbG9yLWJsdWU6ICMxYzZhYjk7XG4vLyAkY29sb3ItYmx1ZS1saWdodDogIzE4ODdhZjtcbi8vXG4vLyAkcHJpbWFyeS1jb2xvcjogJGNvbG9yLWJsdWU7XG4vLyAkcHJpbWFyeS1jb2xvci1saWdodDogJGNvbG9yLWJsdWUtbGlnaHQ7XG4vL1xuLy8gJHNlY29uZGFyeS1jb2xvcjogJGNvbG9yLXllbGxvdztcbi8vICRzZWNvbmRhcnktY29sb3ItbGlnaHQ6ICRjb2xvci15ZWxsb3ctbGlnaHQ7XG5cbi8vIFRlbXBsYXRlIDJcbiRjb2xvci1ibHVlOiAjMDA1NTkxO1xuJGNvbG9yLWJsdWUtbGlnaHQ6ICMyNzNhYWE7XG5cbiRjb2xvci1ncmVlbjogIzE1YmM4ODtcbiRjb2xvci1ncmVlbi1saWdodDogIzAwOTk2ZDtcblxuJHByaW1hcnktY29sb3I6ICRjb2xvci1ibHVlO1xuJHByaW1hcnktY29sb3ItbGlnaHQ6ICRjb2xvci1ibHVlLWxpZ2h0O1xuXG4kc2Vjb25kYXJ5LWNvbG9yOiAkY29sb3ItZ3JlZW47XG4kc2Vjb25kYXJ5LWNvbG9yLWxpZ2h0OiAkY29sb3ItZ3JlZW4tbGlnaHQ7XG5cbi8vIENGIEthbGFtYXpvbyBjb2xvcnNcbiRjb2xvci15ZWxsb3c6ICNGRkMzMDA7XG4kY29sb3ItbGltZTogIzVBQjQwMDtcbiRjb2xvci10ZWFsOiAjMDA3QTg0O1xuJGNvbG9yLW9yYW5nZTogI0U4NzkyRDtcblxuLy8gQkFDS0dST1VORFNcbiRia2dkLWJvZHk6ICRjb2xvci13aGl0ZTtcblxuLy8gQ09SRSBGT05UU1xuJG1haW4tZm9udDogJ1dvcmsgU2FucycsIHNhbnMtc2VyaWY7XG4kYWNjZW50LWZvbnQ6ICdQb3BwaW5zJywgc2Fucy1zZXJpZjtcblxuLy8gRk9OVCBTVFlMRVNcbiRmb250LWNvbG9yOiAjMjMxRjIwO1xuXG4kZm9udC1zaXplOiAxZW07XG4kbWluLWZvbnQ6IDE0cHg7XG4kbWF4LWZvbnQ6IDE3cHg7XG4kbWFpbi1saW5laGVpZ2h0OiAxLjY1O1xuXG4kbGluay1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kaG92ZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yLWxpZ2h0O1xuXG4kaHItY29sb3I6ICRjb2xvci1ncmV5LWxpZ2h0O1xuJGJvcmRlci1jb2xvcjogJGhyLWNvbG9yO1xuXG4kaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjIpO1xuIiwiQG1peGluIGljb01vb24tZm9udCB7XG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cblxuQG1peGluIGZsdWlkLXR5cGUoXG5cdCRtaW4tZm9udC1zaXplOiAxMnB4LCAkbWF4LWZvbnQtc2l6ZTogMjFweCxcblx0JGxvd2VyLXJhbmdlOiA0MjBweCwgJHVwcGVyLXJhbmdlOiA5MDBweCApIHtcbiAgZm9udC1zaXplOiBjYWxjKFxuICAgICN7JG1pbi1mb250LXNpemV9ICsgI3soXG4gICAgICAgICgkbWF4LWZvbnQtc2l6ZSAvICgkbWF4LWZvbnQtc2l6ZSAqIDAgKyAxKSkgLSAoJG1pbi1mb250LXNpemUgLyAoJG1pbi1mb250LXNpemUgKlxuICAgICAgICAgICAgICAgICAgMCArIDEpKVxuICAgICAgKX0gKlxuICAgICAgKFxuICAgICAgICAgKDEwMHZ3IC0gI3skbG93ZXItcmFuZ2V9KSAvICN7KFxuICAgICAgICAgICAgKCR1cHBlci1yYW5nZSAvICgkdXBwZXItcmFuZ2UgKiAwICsgMSkpIC0gKCRsb3dlci1yYW5nZSAvICgkbG93ZXItcmFuZ2UgKlxuICAgICAgICAgICAgICAgICAgICAgIDAgKyAxKSlcbiAgICAgICAgICApfVxuICAgICAgKVxuICApO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1yYW5nZSkge1xuICAgIGZvbnQtc2l6ZTogJG1pbi1mb250LXNpemU7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLXJhbmdlKSB7XG4gICAgZm9udC1zaXplOiAkbWF4LWZvbnQtc2l6ZTtcbiAgfVxufVxuQG1peGluIHRyYW5zZm9ybSgkdHJhbnNmb3JtKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiAkdHJhbnNmb3JtO1xuICAtbXMtdHJhbnNmb3JtOiAkdHJhbnNmb3JtO1xuICB0cmFuc2Zvcm06ICR0cmFuc2Zvcm07XG59XG4iLCIuY29udGFpbmVyIHtcbiAgd2lkdGg6IDkwJTtcbiAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICBtYXJnaW46IDAgYXV0bztcblxuICAmLm1pbi13aWR0aCB7XG4gICAgbWF4LXdpZHRoOiAkbGltaXRlZC13aWR0aDtcbiAgfVxufVxuXG4uaGlkZVRvcCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG5cbiAgaGVpZ2h0OiAxcHg7XG4gIGZvbnQtc2l6ZTogMXB4O1xuICBsaW5lLWhlaWdodDogMXB4O1xufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLkhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm5vLW1hcmdpbiB7XG4gIG1hcmdpbjogMDtcbn1cbi5ub3NwYWNpbmcge1xuXHRtYXJnaW46IDBweDtcblx0cGFkZGluZzogMHB4O1xufVxuLnNoYWRvdy1zcGFjaW5nIHtcbiAgcGFkZGluZzogNHB4IDRweCAxZW07XG59XG4udmlzdWFsbHloaWRkZW4ge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTphY3RpdmUsXG4udmlzdWFsbHloaWRkZW4uZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmNsZWFyZml4OmJlZm9yZSxcbi5jbGVhcmZpeDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiOyAvKiAxICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAyICovXG59XG5cbi5jbGVhcmZpeDphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5cbi5jdXJzb3JPbiB7XG4gIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xufVxuXG4vLyBFZGl0IHBhZ2Ugc2Nzc1xuLmVkaXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogY2FsYyg1MCUgLSA2MHB4KTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAxMjBweDtcbiAgei1pbmRleDogMTAwMDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdyaXRpbmctbW9kZTogdmVydGljYWwtcmw7XG5cbiAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuIiwiQGtleWZyYW1lcyBmYWRlLWluIHtcclxuICAgIDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzY2FsZS1pbiB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNmb3JtOiBzY2FsZSguNSk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICB0cmFuc2Zvcm06ICBzY2FsZSgxKTs7XHJcbiAgICB9XHJcbiAgfVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2NhbGUtaW4ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjUpO1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgdHJhbnNmb3JtOiAgc2NhbGUoMSk7O1xyXG4gICAgfVxyXG59XHJcbiIsIi5hY2NvcmRpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICBwLFxuICB1bCB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwcHggMCAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRoci1jb2xvcjtcbiAgICBwYWRkaW5nOiAxOHB4IDE2cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1vZmZ3aGl0ZTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzcHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb2Zmd2hpdGU7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsYWNrO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggMTJweCAwIHJnYmEoJGNvbG9yLWJsYWNrLCAwLjEpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbnRlbnQ6ICcgJztcblx0XHRcdGJhY2tncm91bmQ6IHVybCgnL2ltYWdlcy9pY29uLWNoZXZyb24tZG93bi5zdmcnKTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTJweCAxNnB4O1xuXHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdFx0d2lkdGg6IDEycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSA2cHgpO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1vZmZ3aGl0ZTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmxhY2s7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBib3gtc2hhZG93OiAwIDFweCAxMnB4IDAgcmdiYSgkY29sb3ItYmxhY2ssIDAuMSk7XG4gICAgfVxuICB9XG5cbiAgJl9fYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZ3JleS1saWdodDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuICB9XG5cbiAgJl9fc2VjdGlvbiB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkaHItY29sb3I7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGhyLWNvbG9yO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcbiAgICBtYXgtaGVpZ2h0OiAwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmX19zZWN0aW9uLm9wZW4ge1xuICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHBhZGRpbmc6IDE4cHg7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhyLWNvbG9yO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xuICAgIGFuaW1hdGlvbjogYXBwZWFyIDAuMjVzIGxpbmVhcjtcbiAgfVxuICBAa2V5ZnJhbWVzIGFwcGVhciB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbiAgfVxufVxuIiwiLmJ1dHRvbiBwIHtcbiAgcGFkZGluZzogMDtcbn1cbmEuYnV0dG9uLCAuYnV0dG9uIGEsXG5pbnB1dC5idXR0b24sIGJ1dHRvbi5idXR0b24sXG4uZnJlZWZvcm0tY29sdW1uIGJ1dHRvbiAge1xuICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICBwYWRkaW5nOiAxZW0gMi41ZW07XG4gICAgbWFyZ2luOiAwcHg7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3IteWVsbG93O1xuICAgIGJvcmRlcjogMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC8vIGJveC1zaGFkb3c6IDBweCAzcHggNnB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuMTIpLFxuICAgIC8vICAgICAgICAgICAgIDBweCAycHggNDBweCByZ2JhKCRjb2xvci1ibGFjaywgLjA4KTtcblxuICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb3JhbmdlO1xuICAgIHRyYW5zaXRpb246IC4ycyBhbGw7XG4gICAgYm94LXNoYWRvdzogMHB4IDFweCA1cHggcmdiYSgkY29sb3ItYmxhY2ssIC4xNSksXG4gICAgICAgICAgICAgICAgMHB4IDJweCAzMHB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuMDgpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggNXB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuMTUpLFxuICAgICAgICAgICAgICAgIDBweCAycHggMzBweCByZ2JhKCRjb2xvci1ibGFjaywgLjA4KTtcbiAgfVxuICAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMHB4IDFweCAycHggcmdiYSgkY29sb3ItYmxhY2ssIC4zKSxcbiAgICAgICAgICAgICAgICAwcHggMnB4IDE1cHggcmdiYSgkY29sb3ItYmxhY2ssIC4xKTtcbiAgfVxufVxuYS5idXR0b24ucm91bmRlZCwgLmJ1dHRvbi5yb3VuZGVkIGEsXG5pbnB1dC5idXR0b24ucm91bmRlZCwgYnV0dG9uLmJ1dHRvbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuYS5idXR0b24ud2hpdGUtYnRuLCAuYnV0dG9uLndoaXRlLWJ0biBhLFxuaW5wdXQuYnV0dG9uLndoaXRlLWJ0biwgYnV0dG9uLmJ1dHRvbi53aGl0ZS1idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG4gIGNvbG9yOiAkY29sb3ItZ3JleS1kYXJrO1xuXG4gIGJveC1zaGFkb3c6IDBweCAxcHggM3B4IHJnYmEoJGNvbG9yLWJsYWNrLCAuMTUpLFxuICAgICAgICAgICAgICAwcHggMnB4IDE1cHggcmdiYSgkY29sb3ItYmxhY2ssIC4wOCk7XG5cbiAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1jb2xvciAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IDBweCAxcHggM3B4IHJnYmEoJGNvbG9yLWJsYWNrLCAuNCksXG4gICAgICAgICAgICAgICAgMHB4IDJweCAxNXB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuMik7XG4gIH1cbn1cbi50ZXh0LWJ1dHRvbiBwIHtcbiAgcGFkZGluZzogMDtcbn1cbmEudGV4dC1idXR0b24sIC50ZXh0LWJ1dHRvbiBhLFxuaW5wdXQudGV4dC1idXR0b24sIGJ1dHRvbi50ZXh0LWJ1dHRvbiB7XG4gICYsICY6bGluaywgJjp2aXNpdGVkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjA1ZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkbGluay1jb2xvcjtcbiAgfVxuICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItY29sb3I7XG4gIH1cblxuICAuZGFyayAmIHtcbiAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3ItbGlnaHQ7XG4gICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbmEuYXJyb3ctbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5hcnJvdy1saW5rIHtcbiAgZm9udC1zaXplOiAuOWVtO1xuICBmb250LWZhbWlseTogJGFjY2VudC1mb250O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6IHVybCgkaW1hZ2UtcGF0aCArICdpY29uLWNoZXZyb24tcmlnaHQuc3ZnJykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNnB4IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIHdpZHRoOiA2cHg7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycztcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICB9XG5cbiAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpO1xuICAgIH1cbiAgfVxufVxuIiwiLmNhbGxvdXQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDJlbSAxLjVlbTtcclxuICBtYXJnaW46IDFlbSAwIDIuNWVtO1xyXG5cclxuICBiYWNrZ3JvdW5kOiAkY29sb3IteWVsbG93O1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGNvbG9yOiAkZm9udC1jb2xvcjtcclxuICBmb250LXNpemU6IDEuM2VtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG5cclxuICBmb250LWZhbWlseTogJGFjY2VudC1mb250O1xyXG5cclxuICBwOmxhc3QtY2hpbGQge1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcbiAgYSB7XHJcbiAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XHJcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yLWxpZ2h0O1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5jb2x1bW4tdGV4dCB7XHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgaDMge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmxlZnQtY29sdW1uIHtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuICAgIH1cclxuICAgIC5yaWdodC1jb2x1bW4ge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmZvb3Rub3RlIHtcclxuICBmb250LXNpemU6IDc1JTtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgJGhyLWNvbG9yO1xyXG4gIG1hcmdpbjogMmVtIDAgMDtcclxuICBwYWRkaW5nOiAyZW0gMCAwO1xyXG59XHJcblxyXG5ibG9ja3F1b3RlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXJnaW46IDEuNXJlbSAwIDNyZW07XHJcbiAgcGFkZGluZzogMS43NXJlbSAwO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItY29sb3I7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRoci1jb2xvcjtcclxuXHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGNvbG9yOiAkY29sb3ItbGltZTtcclxuICBmb250LXNpemU6IDEuMzVlbTtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcblxyXG4gIHAge1xyXG4gICAgcGFkZGluZzogMCAwIC43NWVtO1xyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4udmlkZW8ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyAvKiAxNjo5ICovXHJcblx0cGFkZGluZy10b3A6IDI1cHg7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdG1hcmdpbjogMWVtIDA7XHJcblxyXG5cdGlmcmFtZSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0fVxyXG59XHJcbi5lbWJlZCB7XHJcblx0bWFyZ2luOiAxZW0gMDtcclxufVxyXG4iLCIudHdvLWNvbHVtbiB7XHJcbiAgbWFyZ2luOiAzZW0gMDtcclxuICBcclxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbil7ICBcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5jb2x1bW4tY2FyZCB7XHJcbiAgZmxleDogMCAxIDQ4JTtcclxuICBtYXJnaW4tYm90dG9tOiAyZW07XHJcblxyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG5cclxuICBiYWNrZ3JvdW5kOiAkY29sb3Itb2Zmd2hpdGU7XHJcblxyXG4gIGNvbG9yOiAkY29sb3ItZ3JleS1kYXJrO1xyXG4gIGZvbnQtc2l6ZTogLjllbTtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG59XHJcbi5jYXJkLWltYWdlIHtcclxuICBmbGV4OiAwIDEgNTAlO1xyXG5cclxuICBpbWcge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICB9XHJcbn1cclxuLmNhcmQtdGV4dCB7XHJcbiAgZmxleDogMCAxIDUwJTtcclxuICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgcGFkZGluZzogMmVtO1xyXG5cclxuICBoMiB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGZvbnQtc2l6ZTogMS4zM2VtO1xyXG4gICAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XHJcbiAgfVxyXG59XHJcbi8vLmNhcmQtYnRuIHt9IiwiLmNhcmQtbGlzdCB7XG4gIHBhZGRpbmc6IDRlbSAwIDMuNWVtO1xufVxuLmNhcmQtZ3JpZCB7XG4gIG1hcmdpbjogMCAtLjg3NWVtO1xuXG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMwMHB4LCA0Ny43NSUpKTtcbiAgICBncmlkLWdhcDogMjVweDtcbiAgICBnYXA6IDI1cHg7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICB9XG5cbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMDBweCwgMzAlKSk7XG4gIH1cblxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMzUwcHgsIDMxLjc1JSkpO1xuXG4gIH1cbn1cblxuYS5jYXJkIHtcbiAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMWVtO1xuXG4gICAgY29sb3I6ICRjb2xvci1ncmV5LWRhcms7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbikge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cbiAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDBweCAzcHggMzBweCByZ2JhKCRjb2xvci1ibGFjaywgLjA1KSxcbiAgICAgICAgICAgICAgICAwcHggMXB4IDhweCByZ2JhKCRjb2xvci1ibGFjaywgLjA4KTtcbiAgfVxuXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBsaW5lYXI7XG4gICAgfVxuXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJHNtYWxsLXNjcmVlbikge1xuICAgICAgZmxleDogMCAxIDQ1JTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgbWluLWhlaWdodDogaW5pdGlhbDtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC52aWRlb0ljb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkbGluay1jb2xvciwgLjkpO1xuICAgICAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xuICAgICAgbGVmdDogY2FsYyg1MCUgLSAzNXB4KTtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgbGluZWFyO1xuXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkc21hbGwtc2NyZWVuKSB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDQycHg7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAyMXB4KTtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgICAgIH1cblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgb2JqZWN0LWZpdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5jYXJkLWNvbnRlbnQge1xuICBwYWRkaW5nOiAuNWVtIDA7XG5cbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJHNtYWxsLXNjcmVlbikge1xuICAgIGZsZXg6IDAgMSA1NSU7XG4gICAgbWFyZ2luLWxlZnQ6IDJlbTtcbiAgfVxuXG4gIHNwYW4sIHN0cm9uZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnNtYWxsLXRleHQge1xuICAgIG1hcmdpbjogLjVlbSAwIC0uMjVlbTtcbiAgICBjb2xvcjogJGNvbG9yLWxpbWU7XG4gICAgZm9udC1zaXplOiAuOGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgfVxuICBzdHJvbmcge1xuICAgIG1hcmdpbjogLjVlbSAwO1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICB9XG59XG4iLCIuZmVhdHVyZS1yb3cge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG5cclxuXHRAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHR9XHJcblxyXG5cdC5mZWF0dXJlLWltYWdlIHtcclxuXHRcdGZsZXg6IDAgMSA1MCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDUwMHB4O1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcclxuICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkeHNtYWxsLXNjcmVlbikge1xyXG4gICAgICBoZWlnaHQ6IDI1MHB4O1xyXG4gICAgfVxyXG5cclxuXHRcdGltZyB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xyXG5cdFx0fVxyXG4gIH1cclxuXHJcblx0LmZlYXR1cmUtdGV4dCB7XHJcblx0XHRmbGV4OiAwIDEgNTAlO1xyXG5cdFx0bWF4LXdpZHRoOiA1NjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcblxyXG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcclxuICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgcGFkZGluZzogNDBweCA1JTtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZlYXR1cmUtYnV0dG9uIHtcclxuXHJcbiAgfVxyXG4gIC5zZWN0aW9uIHtcclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgb3BhY2l0eTogLjg1O1xyXG4gIH1cclxuICBoMiB7IGNvbG9yOiBpbmhlcml0OyB9XHJcblxyXG4gICYub3JhbmdlIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1vcmFuZ2U7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIH1cclxuICAmLnRlYWwge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXRlYWw7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIH1cclxuICAmLmJsdWUge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWU7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIH1cclxuICAmLmxpbWUge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWxpbWU7XHJcbiAgICBjb2xvcjogJGhyLWNvbG9yO1xyXG4gIH1cclxuXHJcblx0Ji5sZWZ0IHtcclxuICAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XHJcbiAgICAgIC5mZWF0dXJlLXRleHQge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogODBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cdH1cclxuXHQmLnJpZ2h0IHtcclxuXHRcdEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgICAgLmZlYXR1cmUtdGV4dCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogODBweDtcclxuICAgICAgfVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCJcbi5jYXB0aW9uIHtcblx0bWFyZ2luOiAwIDAgMS41ZW07XG5cblx0Y29sb3I6IHJnYmEoJGZvbnQtY29sb3IsIC45KTtcblx0Zm9udC1zaXplOiAuODI1ZW07XG5cdGZvbnQtZmFtaWx5OiAkYWNjZW50LWZvbnQ7XG5cdGZvbnQtd2VpZ2h0OiAyMDA7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cblx0LmNhcHRpb24tdGV4dCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZzogMWVtIDA7XG5cdH1cblxuXHRAbWVkaWEgKG1pbi13aWR0aDogJHhzbWFsbC1zY3JlZW4pIHtcblx0XHRtYXgtd2lkdGg6IDMzJTtcblxuXHRcdCYubGVmdFx0e1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRjbGVhcjogbGVmdDtcblx0XHRcdG1hcmdpbjogMCA0JSAxZW0gMDtcblx0XHR9XG5cdFx0Ji5yaWdodFx0e1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0Y2xlYXI6IHJpZ2h0O1xuXHRcdFx0bWFyZ2luOiAwIDAgMWVtIDQlO1xuXHRcdH1cblx0XHQmLmZ1bGwge1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luOiAwIDAgMWVtO1xuXHRcdH1cblx0fVxufVxuXG4vLyBTdHlsZXMgZm9yIHJlZGFjdG9yXG5maWd1cmUge1xuXHRtYXJnaW46IDIuNWVtIDA7XG5cblx0ZmlnY2FwdGlvbiB7XG5cdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0cGFkZGluZzogMTJweCAwO1xuXHRcdGZvbnQtZmFtaWx5OiAkYWNjZW50LWZvbnQ7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRoci1jb2xvcjtcblx0fVxufVxuXG5maWd1cmUuaW1hZ2UtcmlnaHQge1xuXHR3aWR0aDogMjkwcHg7XG5cdGZsb2F0OiByaWdodDtcblx0bWFyZ2luOiAuMzc1ZW0gMCAyZW0gMmVtO1xuXG5cdEBtZWRpYShtYXgtd2lkdGg6ICR4c21hbGwtc2NyZWVuKSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbjogMmVtIDA7XG5cdH1cbn1cblxuZmlndXJlLmltYWdlLWxlZnQge1xuXHR3aWR0aDogMjkwcHg7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW46IC4zNzVlbSAyZW0gMmVtIDA7XG5cblx0QG1lZGlhKG1heC13aWR0aDogJHhzbWFsbC1zY3JlZW4pIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRmbG9hdDogbm9uZTtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0bWFyZ2luOiAyZW0gMDtcblx0fVxufVxuXG5maWd1cmUuaW1hZ2UtY2VudGVyIHtcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbjogMCBhdXRvIDJlbSBhdXRvO1xuXG5cdEBtZWRpYShtYXgtd2lkdGg6ICR4c21hbGwtc2NyZWVuKSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbjogMmVtIDA7XG5cdH1cbn1cbiIsIi5pbWFnZS1ibG9jayB7XHJcbiAgbWFyZ2luOiA0LjVlbSAwO1xyXG5cclxuICAuYmxvY2staW1hZ2Uge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG4gIH1cclxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuKSB7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuICAgICAgLmJsb2NrLWltYWdlIHtcclxuICAgICAgICBmbGV4LWJhc2lzOiA0OCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMiU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBzcGFuLnZpZGVvSWNvbiB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNDVweCk7XHJcbiAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDQ1cHgpO1xyXG5cclxuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgd2lkdGg6IDg4cHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDg4cHg7XHJcbiAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcblxyXG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3ItdGVhbCwgLjcpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZS1pbjtcclxuXHJcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLXRlYWwsIC45KTtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogNDUlO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmJsb2NrLXRleHQge1xyXG4gICAgICAgIGZsZXgtYmFzaXM6IDQ4JTtcclxuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLnJpZ2h0IHtcclxuICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuYmxvY2staW1hZ2Uge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIubGluay1saXN0IHtcclxuICBwYWRkaW5nLWJvdHRvbTogZW0oNjBweCk7XHJcbiAgcGFkZGluZy10b3A6IGVtKDIwcHgpO1xyXG5cclxuICAuY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XHJcbiAgICBtYXJnaW4tdG9wOiAtNy41JTtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IGVtKDEwMHB4KTtcclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgbWF4LXdpZHRoOiA5MCU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICA+IGxpOmZpcnN0LWNoaWxkIHtcclxuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTJweDtcclxuICAgIH1cclxuICAgID4gbGk6bnRoLW9mLXR5cGUoMikge1xyXG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcclxuICAgIH1cclxuICAgID5saTpudGgtbGFzdC1jaGlsZCgyKSB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEycHg7XHJcbiAgICB9XHJcbiAgICA+bGk6bGFzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMyU7XHJcbiAgICAgIG1heC13aWR0aDogNzAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgICA+IGxpOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxMnB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDEycHg7XHJcbiAgICAgIH1cclxuICAgICAgPiBsaTpsYXN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTJweDtcclxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTJweDtcclxuICAgICAgfVxyXG4gICAgICA+IGxpOm50aC1vZi10eXBlKDIpIHtcclxuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMHB4O1xyXG4gICAgICB9XHJcbiAgICAgID5saTpudGgtb2YtdHlwZSgzKSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBsaSB7XHJcbiAgICBmbGV4OiAwIDEgNTAlO1xyXG5cclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcclxuICAgICAgZmxleDogMCAxIDUwJTtcclxuICAgIH1cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgICBmbGV4OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuICBsaTpudGgtY2hpbGQoMSkge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLW9yYW5nZTtcclxuICB9XHJcbiAgbGk6bnRoLWNoaWxkKDIpIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlO1xyXG4gIH1cclxuICBsaTpudGgtY2hpbGQoMykge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXRlYWw7XHJcbiAgfVxyXG4gIGxpOm50aC1jaGlsZCg0KSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItbGltZTtcclxuICB9XHJcbiAgbGk6bnRoLWNoaWxkKDUpIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1vcmFuZ2U7XHJcbiAgfVxyXG4gIGxpOm50aC1jaGlsZCg2KSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZTtcclxuICB9XHJcbiAgYSB7XHJcbiAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgIHBhZGRpbmc6IDJlbSAxLjVlbTtcclxuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuXHJcbiAgICB9XHJcbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XHJcbiAgICAgIGJveC1zaGFkb3c6IDBweCA0cHggNDBweCAwcHggcmdiYSgkY29sb3ItYmxhY2ssIC4wNSksIDBweCAycHggMjBweCAwcHggcmdiYSgkY29sb3ItYmxhY2ssIC4wOCk7XHJcblxyXG4gICAgICAubGluay1pY29uIHtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmxpbmstaWNvbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcclxuICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICB3aWR0aDogODBweDtcclxuICAgIH1cclxuICB9XHJcbiAgaW1nIHtcclxuICAgIG1pbi13aWR0aDogMTAwcHg7XHJcbiAgICBtYXgtaGVpZ2h0OiA3NXB4O1xyXG4gICAgdHJhbnNpdGlvbjogLjJzIGFsbDtcclxuICB9XHJcbn1cclxuIiwiI2hlcm8tcm90YXRvciB7XG4gIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgLnNsaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5jdXJyZW50IHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgLnNsaWRlbmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxZW07XG4gICAgbGVmdDogNXZ3O1xuICAgIG1heC13aWR0aDogMzMlO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAvL3BhZGRpbmc6IDEuMjVlbSAwO1xuXG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMC4yNWVtO1xuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICB3aWR0aDogMThweDtcblxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDFweDtcblxuICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpbmstY29sb3I7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6ICRob3Zlci1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRob3Zlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29udHJvbHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDFlbTtcbiAgICByaWdodDogNXZ3O1xuICAgIG1heC13aWR0aDogMzMlO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG5cbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRoci1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMThweCAxOHB4O1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgfVxuXG4gICAgICAmLmJ0bi1wcmV2OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArICdpY29uLXByZXZpb3VzLnN2ZycpO1xuICAgICAgfVxuXG4gICAgICAmLmJ0bi1uZXh0OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArICdpY29uLW5leHQuc3ZnJyk7XG4gICAgICB9XG4gICAgICAmW2RhdGEtc3RhcnQ9XCJ0cnVlXCJdOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArICdpY29uLXBsYXkuc3ZnJyk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4O1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgfVxuICAgICAgJltkYXRhLXN0b3A9XCJ0cnVlXCJdOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArICdpY29uLXN0b3Auc3ZnJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2lkZS1ibG9jayB7XHJcbiAgbWFyZ2luOiAwIDAgMy41ZW07XHJcbiAgZm9udC1zaXplOiAuOGVtO1xyXG4gIGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHJcbiAgaW1nIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcclxuICB9XHJcblxyXG4gIC5zaWRlLXRleHQge1xyXG4gICAgcGFkZGluZzogMi41ZW0gMS41ZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICBoMiB7XHJcbiAgICBtYXJnaW46IDAgMCAuNWVtO1xyXG5cclxuICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgZm9udC1zaXplOiAxLjM1ZW07XHJcbiAgICBmb250LWZhbWlseTogJG1haW4tZm9udDtcclxuICB9XHJcbiAgLy8uc2lkZS1idG4ge31cclxuXHJcbiAgJi5saWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb2Zmd2hpdGU7XHJcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XHJcbiAgfVxyXG4gICYuZGFyayB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItdGVhbDtcclxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgfVxyXG59XHJcbiIsInRhYmxlIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW4tYm90dG9tOiAzZW07XHJcbiAgYm94LXNoYWRvdzogMCAxcHggM3B4IDAgcmdiYSgkY29sb3ItYmxhY2ssIC4xKSxcclxuICAgICAgICAgICAgICAwIDRweCAyMHB4IDAgcmdiYSgkY29sb3ItYmxhY2ssIC4xNSk7XHJcblxyXG4gIHRyIHtcclxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG5cclxuICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgICAgYmFja2dyb3VuZDogcmdiYSgkcHJpbWFyeS1jb2xvciwgLjA1KTtcclxuICAgIH1cclxuXHJcbiAgICB0aCB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgICBjb2xvcjogd2hpdGU7XHJcblx0XHRcdHBhZGRpbmc6IDEwcHggMTJweDtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG5cdFx0XHRmb250LXdlaWdodDogNTAwO1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMTVweDtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHdpZHRoOiAzMyU7XHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbikge1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAkc21hbGwtc2NyZWVuKSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuXHRcdFx0XHRwYWRkaW5nOiA3cHggOHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICB0ZCB7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAuMDYpO1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcblx0XHRcdGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcclxuXHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIEBtZWRpYShtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbikge1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIzcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMnB4O1xyXG5cclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc21hbGwtc2NyZWVuKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHNwYW4ucHVycG9zZSwgc3Bhbi5wdXJwb3NlIHAsIHAgc3BhbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IG5vbmU7XHJcblxyXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcclxuICBcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICBzdHJvbmcge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAkc21hbGwtc2NyZWVuKSB7XHJcblx0XHRcdFx0cGFkZGluZzogNXB4IDhweDtcclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XHJcbiAgICAgIH1cclxuXHJcblx0XHRcdHAsIHVsLCBvbCB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcclxuXHJcblx0XHRcdFx0QG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuXHQgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuXHQgICAgICB9XHJcblx0XHRcdH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEFkanVzdCBjb2x1bW5zIGZvciBzbWFsbGVyIHNjcmVlbiBzaXplc1xyXG5cclxuXHJcbnRhYmxlLmdyYW50LXRhYmxlIHRyIHtcclxuXHJcbiAgdGgge1xyXG5cclxuICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgbWluLXdpZHRoOiAyMDBweDtcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcclxuICAgICAgICBtaW4td2lkdGg6IGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCg0KSB7XHJcbiAgICAgIG1pbi13aWR0aDogMTIwcHg7XHJcbiAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XHJcbiAgICAgICAgbWluLXdpZHRoOiBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpudGgtY2hpbGQoNSkge1xyXG4gICAgICBtaW4td2lkdGg6IDEyMHB4O1xyXG4gICAgICBAbWVkaWEobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgICAgIG1pbi13aWR0aDogYXV0bztcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNtYWxsLXNjcmVlbikge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRkIHtcclxuICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgQG1lZGlhKG1heC13aWR0aDogJHNtYWxsLXNjcmVlbikge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyB0YWJsZS5zY2hvbGFyc2hpcC10YWJsZSB0ciB7XHJcblxyXG4vLyAgIHRoIHtcclxuXHJcbi8vICAgICAmOm50aC1jaGlsZCgxKSB7XHJcbi8vICAgICAgIHdpZHRoOiAzMCU7XHJcbi8vICAgICB9XHJcbi8vICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbi8vICAgICAgIHdpZHRoOiAxMiU7XHJcbi8vICAgICB9XHJcbi8vICAgICAmOm50aC1jaGlsZCgzKSB7XHJcbi8vICAgICAgIHdpZHRoOiA4JTtcclxuLy8gICAgIH1cclxuXHJcbi8vICAgICAmOm50aC1jaGlsZCg0KSB7XHJcbi8vICAgICAgIHdpZHRoOiAzMCU7XHJcbi8vICAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcclxuLy8gICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4vLyAgICAgICB9XHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgJjpudGgtY2hpbGQoNSkge1xyXG4vLyAgICAgICAvL21pbi13aWR0aDogMTUwcHg7XHJcbi8vICAgICAgIHdpZHRoOiAxMiU7XHJcblxyXG4vLyAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4vLyAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4vLyAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vICAgfVxyXG5cclxuLy8gICB0ZCB7XHJcbi8vICAgICAmOm50aC1jaGlsZCg0KSB7XHJcbi8vICAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRzbWFsbC1zY3JlZW4pIHtcclxuLy8gICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4vLyAgICAgICB9XHJcbi8vICAgICB9XHJcblxyXG4vLyAgICAgJjpudGgtY2hpbGQoNSkge1xyXG4vLyAgICAgICAvL21pbi13aWR0aDogMTUwcHg7XHJcbi8vICAgICAgIEBtZWRpYShtYXgtd2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XHJcbi8vICAgICAgICAgd2lkdGg6IGF1dG87XHJcbi8vICAgICAgIH1cclxuLy8gICAgIH1cclxuLy8gICB9XHJcbi8vIH1cclxuIiwiLmxhcmdldGV4dCB7XHJcbiAgZm9udC1zaXplOiAxLjNlbTtcclxuICBsaW5lLWhlaWdodDogMS42NTtcclxuICBmb250LXdlaWdodDogMzAwO1xyXG4gIG9wYWNpdHk6IC45O1xyXG59XHJcblxyXG4uYXR0cmlidXRpb24ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICBjb2xvcjogJGNvbG9yLWdyZXktZGFyaztcclxuICBmb250LXNpemU6IC44cmVtO1xyXG4gIGZvbnQtZmFtaWx5OiAkbWFpbi1mb250O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLmRhdGUge1xyXG4gIGZvbnQtc2l6ZTogLjhlbTtcclxufVxyXG4uc21hbGwtdGV4dCB7XHJcbiAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbn1cclxuLnNlY3Rpb24ge1xyXG4gIGNvbG9yOiAkY29sb3ItbGltZTtcclxuICBmb250LXNpemU6IC44ZW07XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5wLnNtYWxsLXRleHQsXHJcbnAuc2VjdGlvbiB7XHJcbiAgbWFyZ2luOiAwIDAgLjI1ZW0gIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuLmRyb3BjYXAge1xyXG4gIHA6Zmlyc3Qtb2YtdHlwZTo6Zmlyc3QtbGV0dGVyIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcGFkZGluZzogNXB4IDEwcHggNXB4IDA7XHJcblxyXG4gICAgY29sb3I6ICRjb2xvci1ncmV5LWRhcms7XHJcbiAgICBmb250LXNpemU6IDIuNWVtO1xyXG4gICAgZm9udC1mYW1pbHk6ICRhY2NlbnQtZm9udDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIH1cclxufVxyXG4iLCIjc2tpcC1saW5rIHtcclxuXHRwb3NpdGlvbjpyZWxhdGl2ZTtcclxuXHR6LWluZGV4OjU7XHJcblx0ZmxvYXQ6bGVmdDtcclxuXHRcclxuXHRhLCBhOmxpbmssIGE6dmlzaXRlZCB7XHJcblx0XHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHRcdHotaW5kZXg6NTtcclxuXHRcdHRvcDotOTk5ZW07XHRcclxuXHRcdGxlZnQ6MHB4O1xyXG5cdFx0XHJcblx0XHRkaXNwbGF5OmJsb2NrO1xyXG5cdFx0d2lkdGg6MTUwcHg7XHJcblx0XHRwYWRkaW5nOjdweCAxMHB4O1xyXG5cdFx0Ym9yZGVyOjFweCBzb2xpZCAjQ0NDO1xyXG5cdFx0b3V0bGluZTowO1xyXG5cdFx0YmFja2dyb3VuZDojRkZGO1xyXG5cdFxyXG4gICAgY29sb3I6IzMzMztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuXHRcdGxpbmUtaGVpZ2h0OjEuMjtcclxuXHRcdGZvbnQtd2VpZ2h0OmJvbGQ7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246bm9uZTtcclxuXHR9XHJcblx0YTpmb2N1cywgYTphY3RpdmUge1xyXG5cdFx0dG9wOiAwcHg7XHJcblx0XHQqem9vbToxXHJcblx0fVxyXG5cdGE6aG92ZXIsIGE6YWN0aXZlLCBhOmZvY3VzIHtcclxuXHRcdGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xyXG5cdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHR9XHJcbn0iLCIubWFpbi1uYXYge1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4OiAxO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1vYmlsZS1zZWFyY2ggeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdWwucm9vdC1ncm91cCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAyZW07XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICA+IGxpIHtcbiAgICAgIG1hcmdpbjogMCAzJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBsaXN0LXN0eWxlLWltYWdlOiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAgID4gYSB7XG5cbiAgICAgICAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAuNWVtIDAgLjRlbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRsYXJnZS1zY3JlZW4pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg1ZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmxpZ2h0LW5hdiAmIHtcbiAgICAgICAgICAgIC8vIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5vdC1hdC10b3AgJiwgLmRhcmstbmF2ICYge1xuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmRyb3Bkb3duIHtcbiAgICAgICAgICAgIC8vIGhhcyBjaGlsZHJlblxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci15ZWxsb3c7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgLmxpZ2h0LW5hdiAmIHtcbiAgICAgICAgICAgIC8vIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubm90LWF0LXRvcCAmLCAuZGFyay1uYXYgJiB7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYSwgYTpsaW5rLCBhOnZpc2l0ZWQge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tb2JpbGUtc2VhcmNoIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgYnV0dG9uLnNlYXJjaEJ0biB7XG4gICAgICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcbiAgICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgIGJvcmRlcjogMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMjhweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcblxuICAgICAgICAgICAgcGF0aC5zZWFyY2gtaWNvbiB7XG4gICAgICAgICAgICAgIGZpbGw6ICRjb2xvci13aGl0ZTtcblxuICAgICAgICAgICAgICAvLyAubGlnaHQtbmF2ICYgeyBmaWxsOiAkY29sb3ItYmxhY2s7IH1cbiAgICAgICAgICAgICAgLm5vdC1hdC10b3AgJiB7IGZpbGw6ICRjb2xvci1ibGFjazsgfVxuICAgICAgICAgICAgICAuZGFyay1uYXYgJiB7IGZpbGw6ICRjb2xvci1ibGFjazsgfVxuXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgcGF0aC5zZWFyY2gtaWNvbiB7XG4gICAgICAgICAgICAgIGZpbGw6ICRjb2xvci15ZWxsb3c7XG5cbiAgICAgICAgICAgICAgLy8gLmxpZ2h0LW5hdiAmIHsgZmlsbDogJGxpbmstY29sb3I7IH1cbiAgICAgICAgICAgICAgLm5vdC1hdC10b3AgJiB7IGZpbGw6ICRsaW5rLWNvbG9yOyB9XG4gICAgICAgICAgICAgIC5kYXJrLW5hdiAmIHsgZmlsbDogJGxpbmstY29sb3I7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgICAgIG91dGxpbmU6IHJnYig5NCwgMTU4LCAyMTUpIGF1dG8gNXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuICAubW9iaWxlLW9ubHkgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgLmxldmVsMSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMS4yNWVtLCAwKTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0cmV0Y2g7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRsaW5rLWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMHB4IDVweCAxMnB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuMiksXG4gICAgICAgICAgICAgICAgICAwcHggMTBweCAzNnB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuMSk7XG4gICAgICBwYWRkaW5nOiAuNzVlbSAxLjI1ZW0gMWVtIDEuMjVlbSAhaW1wb3J0YW50O1xuICAgICAgYW5pbWF0aW9uOiBkcm9wZG93biAuM3MgZWFzZTtcbiAgICAgIC8vXG4gICAgICAvLyAmOmJlZm9yZSB7XG4gICAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vICAgdG9wOiAtMjBweDtcbiAgICAgIC8vICAgbGVmdDogNTAlO1xuICAgICAgLy8gICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgLy8gICBjb250ZW50OiBcIiBcIjtcbiAgICAgIC8vICAgaGVpZ2h0OiAwO1xuICAgICAgLy8gICB3aWR0aDogMDtcbiAgICAgIC8vICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAvLyAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAvLyAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICAgLy8gICBib3JkZXItd2lkdGg6IDEwcHg7XG4gICAgICAvLyAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgICAgIC8vIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBsaXN0LXN0eWxlLWltYWdlOiBub25lO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMWVtIDA7XG5cbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhyLWNvbG9yO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgIGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgICBib3JkZXItYm90dG9tOiAwcHg7XG4gICAgfVxuXG4gICAgLmxldmVsMiB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogLjVlbSAwO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG5cbiAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDAuMjVlbSAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAuODVlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGRyb3Bkb3duIHtcbiAgICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMS4yNWVtLCAyMHB4KTtcbiAgICAgIH1cbiAgICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMS4yNWVtLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZXhwYW5kYWJsZSB7XG4gICAgICA+IGEgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgZmxleDogMCAwIDMwcHg7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgaWNvTW9vbi1mb250O1xuXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGNvbnRlbnQ6IHVuaWNvZGUoXCJlOTAzXCIpO1xuXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICBjb2xvcjogJGhyLWNvbG9yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiB1bCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgID4gYSBzcGFuOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG4gICAgICAgID4gdWwgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICBuYXYgPiB1bCA+IGxpOmhvdmVyIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgei1pbmRleDogMTAwMTtcblxuICAgICAgJi5sZXZlbDIsICYubGV2ZWwzLCAmLmxldmVsNCB7XG4gICAgICAgIC8vIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5leHBhbmRhYmxlIHNwYW4geyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW9iaWxlIFN0eWxlc1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLm1vYmlsZS1vbmx5IHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAucm9vdC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAucm9vdC1ncm91cCA+IGxpIHtcbiAgICAgIG1hcmdpbjogLTFweCAwO1xuICAgICAgcGFkZGluZzogLjVlbSAxZW07XG5cbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItY29sb3I7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhyLWNvbG9yO1xuXG4gICAgICA+IGEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgbGkubW9iaWxlLWJ1dHRvbnMge1xuICAgICAgYm9yZGVyLXRvcDogMHB4O1xuICAgICAgcGFkZGluZzogMWVtIDAgMS41ZW07XG5cbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgIGEge1xuICAgICAgICBmbGV4OiAwIDEgNDglO1xuICAgICAgICBwYWRkaW5nOiAuNWVtO1xuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRoci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuXG4gICAgICB9XG4gICAgfVxuXG5cblxuICAgIGxpLnNlYXJjaCB7XG4gICAgICA+IGEgIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBjb250ZW50OiAnU2VhcmNoJztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5leHBhbmRlZCAuZHJvcGRvd24tbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi5tYXN0IHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgei1pbmRleDogOTk7XHJcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBsaW5lYXI7XHJcblxyXG4gIHVsIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiA5MCU7XHJcbiAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XHJcbiAgICBwYWRkaW5nOiAxZW0gMDtcclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICB9XHJcbiAgLmxvZ28ge1xyXG4gICAgZmxleDogMCAxIDE5MnB4O1xyXG5cclxuICAgIHN2ZyB7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBoZWlnaHQ6IDgwcHg7XHJcblxyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcclxuICAgICAgICBoZWlnaHQ6IDY4cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGEsIGE6bGluaywgYTp2aXNpdGVkIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGEubG9nby1jb2xvciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgJi5ub3QtYXQtdG9wIHtcclxuICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKHdoaXRlLCAuOTUpO1xyXG4gICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYShibGFjaywuMSksIDAgMnB4IDEycHggcmdiYShibGFjaywgLjA3KTtcclxuXHJcbiAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDtcclxuXHJcbiAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IC4zNzVlbSAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmFkbWluLWJ0bnMge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAuNWVtIDFlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcclxuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHJnYmEoJGNvbG9yLXllbGxvdywgMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itb3JhbmdlO1xyXG4gICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHJnYmEoJGNvbG9yLW9yYW5nZSwgMSk7XHJcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBhLmxvZ28tY29sb3Ige1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgIGhlaWdodDogNTZweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgYS5sb2dvLXdoaXRlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcclxuXHJcbiAgICAmLmRhcmstbmF2IHtcclxuICAgICAgYS5sb2dvLWNvbG9yIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICBzdmcge1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGEubG9nby13aGl0ZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcclxuICAgICYuZGFyay1uYXYge1xyXG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEod2hpdGUsIC45NSk7XHJcbiAgICAgIC8vIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKGJsYWNrLC4xKSwgMCAycHggMTJweCByZ2JhKGJsYWNrLCAuMDcpO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhyLWNvbG9yO1xyXG4gICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQ7XHJcblxyXG4gICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAuNzVlbSAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmFkbWluLWJ0bnMge1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAuNWVtIDFlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcclxuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHJnYmEoJGNvbG9yLXllbGxvdywgMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itb3JhbmdlO1xyXG4gICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHJnYmEoJGNvbG9yLW9yYW5nZSwgMSk7XHJcbiAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBhLmxvZ28tY29sb3Ige1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIHN2ZyB7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgIGhlaWdodDogNTZweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgYS5sb2dvLXdoaXRlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYWRtaW4tYnRucyB7XHJcbiAgICBmbGV4OiAwIDEgMjAwcHg7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcclxuICAgICAgICBwYWRkaW5nOiAuNzVlbSAxZW07XHJcbiAgICAgICAgZm9udC1zaXplOiAuOGVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgbGkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCByZ2JhKCRjb2xvci15ZWxsb3csIC4zKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3IteWVsbG93O1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCByZ2JhKCRjb2xvci15ZWxsb3csIDEpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXllbGxvdztcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMnB4ICRjb2xvci15ZWxsb3c7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1vcmFuZ2U7XHJcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMnB4ICRjb2xvci1vcmFuZ2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsImJvZHkubW9kYWwtb3BlbiB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tZW51IHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMWVtO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gIGJhY2tncm91bmQ6ICRjb2xvci15ZWxsb3c7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0O1xuXG4gIGNvbG9yOiAkY29sb3ItYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnN0cm9rZXMge1xuICAgIHdpZHRoOiAzOXB4O1xuICAgIG1hcmdpbjogMCAwIDBweCAwO1xuXG4gICAgLnN0cm9rZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogM3B4O1xuICAgICAgbWFyZ2luOiA4cHggMDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcbiAgICAgIHRyYW5zaXRpb246ICB0cmFuc2Zvcm0gMC4zcywgb3BhY2l0eSAwLjFzO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ibGFjaztcblx0XHRiYWNrZ3JvdW5kOiAkY29sb3Itb3JhbmdlO1xuXG4gICAgLnN0cm9rZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmxhY2s7XG4gICAgfVxuICB9XG4gIC5vcGVuTWVudSAmIHtcbiAgICAvLyBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG4gIH1cbn1cbi8vIGFuaW1hdGUgdGhlIGhhbWJ1cmdlclxuLmhpZGUge1xuICBvcGFjaXR5OiAwO1xufVxuLmFuaW1hdGUwIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoOHB4KSB0cmFuc2xhdGVYKDhweCk7XG59XG4uYW5pbWF0ZTIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoLThweCkgdHJhbnNsYXRlWCg4cHgpO1xufVxuXG5cblxuLmZ1bGxTY3JlZW5NZW51IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuXHRtaW4taGVpZ2h0OiAxMDAlO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci15ZWxsb3c7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IDAuNXM7XG5cdHotaW5kZXg6IC0xO1xuICAvL2Rpc3BsYXk6IG5vbmU7XG5cbiAgLm1lbnVDb250YWluZXIge1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgYW5pbWF0aW9uOiBtZW51ZmFkZSAuMjVzIGxpbmVhcjtcblx0XHRwYWRkaW5nOiA1ZW0gNDBweCAxZW07XG4gIH1cblxuXHRAa2V5ZnJhbWVzIG1lbnVmYWRlIHtcblx0ICAwJSB7XG5cdCAgICBvcGFjaXR5OiAwO1xuXHQgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDQ4cHgpO1xuXHQgIH1cblx0ICAxMDAlIHtcblx0ICAgIG9wYWNpdHk6IDE7XG5cdCAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHQgIH1cblx0fVxufVxuXG4uZnVsbFNjcmVlbk1lbnUuc2hvdyB7XG4gIG9wYWNpdHk6IDE7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLXdoaXRlLCAxKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMC41cztcbiAgei1pbmRleDogMTAwO1xuICBkaXNwbGF5OiBibG9jaztcblxuXHQubWVudUNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRvdmVyZmxvdy15OiBzY3JvbGw7XG5cdFx0LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgfVxuXG4gIC5tb2JpbGUtYnRucyB7XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAzZW0gMCAxZW07XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblx0XHRcdFx0d2lkdGg6IDMyJTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRcdHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRcdFx0aGVpZ2h0OiA2MHB4O1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGNvbG9yLXllbGxvdztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLW9yYW5nZTtcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRjb2xvci1vcmFuZ2U7XG5cdFx0XHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci15ZWxsb3c7XG4gICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRjb2xvci15ZWxsb3c7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1vcmFuZ2U7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogc29saWQgMXB4ICRjb2xvci1vcmFuZ2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tb2JpbGUtbWVudSB7XG4gICAgLmRlc2stc2VhcmNoIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgLnJvb3QtZ3JvdXAge1xuICAgICAgPiBsaSAge1xuICAgICAgICAvLyB0b3AgbGV2ZWxcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXHRcdHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAxZW0gMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS4yNTtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRoci1jb2xvclxuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvci1saWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICBwYWRkaW5nOiAuNWVtIDAgMCAxZW07XG5cblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHR9XG4gICAgICAgIGEge1xuICAgICAgICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge31cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmV4cGFuZGFibGUge1xuICAgICAgICA+IGEgc3BhbiB7XG4gICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgIGZsZXg6IDAgMCAzMHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb2Zmd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG5cbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkaW1hZ2UtcGF0aCArIFwiaWNvbi1jaGV2cm9uLWxlZnQuc3ZnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblxuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiB1bCB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgICA+IGEgc3BhbjphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdWwgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb250YWN0LWJ0bnMge1xuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IC41ZW0gMCAxLjVlbTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgbGkge1xuICAgICAgZmxleDogMTtcbiAgICAgIG1hcmdpbjogMCAxLjUlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7IG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuICAgICAgYSB7XG4gICAgICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRwYWRkaW5nOiAuNWVtIDA7XG5cbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb2Zmd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhyLWNvbG9yO1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblxuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktZGFyaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB3aWR0aDogMTZweDtcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKDNweCwgLTFweCk7XG5cbiAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICBmaWxsOiAkbGluay1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgZmlsbDogJGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY2xvc2UtbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxZW07XG4gIHJpZ2h0OiA1dnc7XG5cbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogNzBweDtcblxuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiAkY29sb3Itb3JhbmdlO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gIHotaW5kZXg6IDY7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBhbmltYXRpb246IHNsb3dmYWRlIC41cyBsaW5lYXI7XG5cbiAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDEycHggMCByZ2JhKCRjb2xvci1ibGFjaywgLjEpLFxuICB9XG5cbiAgaW1nIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgKiB7IHBvaW50ZXItZXZlbnRzOiBub25lO31cbn1cbiIsIiRuYXYtaGVpZ2h0OiAwO1xyXG5cclxuLmJhbm5lciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLW9mZndoaXRlO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cclxuICBvcGFjaXR5OiAwO1xyXG4gIGFuaW1hdGlvbjogZmFkZS1pbiAuM3MgbGluZWFyO1xyXG4gIGFuaW1hdGlvbi1kZWxheTogLjNzO1xyXG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xyXG5cclxuICAuY29udGFpbmVyIHtcclxuICAgIG1heC13aWR0aDogJGV4dGVuZGVkLXdpZHRoO1xyXG5cclxuICAgIHAge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYmVsb3dOYXYge1xyXG4gICAgbWFyZ2luLXRvcDogJG5hdi1oZWlnaHQ7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcclxuICAgICAgbWFyZ2luLXRvcDogNzdweDtcclxuICAgIH1cclxuICB9XHJcbiAgJi53aXRoQmtnZCB7XHJcbiAgICAuYmFubmVyLW1hc2sge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKGJsYWNrLC42NikgMCUsIHJnYmEoYmxhY2ssMCkgMTAwJSksXHJcbiAgICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoYmxhY2ssLjY2KSAwJSwgcmdiYShibGFjaywwKSAxMDAlKTtcclxuXHJcbiAgICAgIGhlaWdodDogMzB2dztcclxuICAgICAgbWluLWhlaWdodDogMjUwcHg7XHJcblxyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcblxyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICBhbmltYXRpb246IGZhZGUtaW4gLjVzIGxpbmVhcjtcclxuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAuNXM7XHJcbiAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xyXG5cclxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcclxuICAgICAgICBoZWlnaHQ6IDMwdnc7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYShibGFjaywuNjYpIDAlLCByZ2JhKGJsYWNrLDApIDQwJSksXHJcbiAgICAgICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYShibGFjaywuNjYpIDAlLCByZ2JhKGJsYWNrLDApIDQwJSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYubm8taW1hZ2Uge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIGRhcmtlbigkcHJpbWFyeS1jb2xvciwgMjAlKSwgZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAzNSUpKTtcclxuICAgICAgICBoZWlnaHQ6IDIwdnc7XHJcbiAgICAgICAgbWluLWhlaWdodDogMjUwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgcGFkZGluZzogJG5hdi1oZWlnaHQgMCAyLjVlbSAwO1xyXG4gICAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XHJcblxyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgIHRleHQtc2hhZG93OiAwcHggNHB4IDQ4cHggcmdiYSgkY29sb3ItYmxhY2ssIC42KSxcclxuICAgICAgICAgICAgICAgICAgIDBweCAxcHggNHB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuOCk7XHJcbiAgICB9XHJcblxyXG4gICAgc3Bhbi5zZWN0aW9uTmFtZSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG5cclxuICAgIHAuc2VjdGlvbiB7XHJcbiAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICBoMSB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLm5vQmtnZCB7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgIHBhZGRpbmc6IDEwMHB4IDAgM2VtIDA7XHJcblxyXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5iYW5uZXItaW1hZ2Uge1xyXG4gICAgICAgIGZsZXg6IDAgMSA1MCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMmVtO1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuYmFubmVyLXRleHQge1xyXG4gICAgICAgIGZsZXg6IDAgMSA1MCU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICB9XHJcbiAgICAgIC5iYW5uZXItdGV4dC1jb250ZW50IHtcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAkc21hbGwtd2lkdGg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLnRleHQtYmFubmVyIHtcclxuICBwYWRkaW5nLXRvcDogJG5hdi1oZWlnaHQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAuY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmc6IDNlbSAwO1xyXG5cclxuICAgIC5hcnRpY2xlLWRldGFpbCAmIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRoci1jb2xvcjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiJG5hdi1oZWlnaHQ6IDVlbTtcbi5oZXJvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuaGVyby1tYXNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAyNXZoO1xuICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKCRjb2xvci1ibGFjaywgMSkgMCUsIHJnYmEoJGNvbG9yLWJsYWNrLCAuMjUpIDEwMCUpLFxuICAgICAgICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoYmxhY2ssLjY2KSAwJSwgcmdiYShibGFjaywwKSA1MCUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDExNXB4KTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgkY29sb3ItYmxhY2ssIC40KSAwJSwgcmdiYSgkY29sb3ItYmxhY2ssIC4wKSA3MCUpLFxuICAgICAgICAgICAgICAgICAgbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYShibGFjaywuNjYpIDAlLCByZ2JhKGJsYWNrLDApIDUwJSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsLXNjcmVlbikge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gOTBweCk7XG4gICAgfVxuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHhzbWFsbC1zY3JlZW4pIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAuaGVyby10ZXh0IHtcbiAgICB3aWR0aDogOTAlO1xuICAgIC8vIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAkbmF2LWhlaWdodCAwIDEuNWVtIDA7XG5cbiAgICBmbGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XG4gICAgdGV4dC1zaGFkb3c6IDBweCAycHggNHB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuNSk7XG5cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRsYXJnZS1zY3JlZW4pIHtcbiAgICAgIC5zbGlkZSB7XG4gICAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM2VtKTtcbiAgICB9XG5cbiAgICAuaGVyby1pbWcgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICBoMSB7XG4gICAgICBtYXJnaW46IDAgMCAuOHJlbTtcblxuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgZm9udC1zaXplOiBlbSg2MnB4KTtcbiAgICB9XG4gICAgLmhlcm8tZGVzYyB7XG4gICAgICBmb250LXNpemU6IGVtKDIwcHgpO1xuICAgIH1cbiAgICAuYnV0dG9uIHtcblxuICAgIH1cbiAgfVxuICAucm91bmRlZEJ0bSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLS41cHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgfVxufVxuIiwiLm1haW4tY29udGVudCB7XG4gIHBhZGRpbmc6IDRlbSAwO1xufVxuLnN1Yi1jb250ZW50IHtcbiAgcGFkZGluZzogNGVtIDA7XG59IiwiLnN1Yi1uYXYge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgbWFyZ2luLXRvcDogLTJlbTtcclxuICBtYXJnaW4tYm90dG9tOiAyZW07XHJcbiAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gIGJveC1zaGFkb3c6IDBweCAzcHggMzBweCAwcHggcmdiYSgkY29sb3ItYmxhY2ssIC4wNSksXHJcbiAgICAgICAgICAgICAgMHB4IDFweCA4cHggMHB4IHJnYmEoJGNvbG9yLWJsYWNrLCAuMDgpO1xyXG5cclxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gIH1cclxuXHJcbiAgdWwuc3ViLXRvcCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XHJcbiAgICB9XHJcbiAgICA+IGxpIHtcclxuXHJcbiAgICAgID4gYSB7XHJcbiAgICAgICAgcGFkZGluZzogLjVlbSAxZW07XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaHItY29sb3I7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBwYWRkaW5nOiAxZW0gLjVlbTtcclxuXHJcbiAgICAgIGxpIHtcclxuICAgICAgICBtYXJnaW46IC41ZW0gMDtcclxuICAgICAgICBmb250LXNpemU6IC45ZW07XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgIHBhZGRpbmc6IC41ZW0gLjVlbSAwIC41ZW07XHJcblxyXG4gICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAuMjVlbSAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHVsIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBhLCBhOmxpbmssIGE6dmlzaXRlZCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICBwYWRkaW5nOiAwLjY2ZW0gMWVtO1xyXG5cclxuICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxuICBhOmhvdmVyLCBhOmFjdGl2ZSwgYTpmb2N1cyB7XHJcbiAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xyXG4gIH1cclxuICAuYWN0aXZlLCAuZXhwYW5kZWQge1xyXG4gICAgPiBhIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLW9mZndoaXRlO1xyXG4gICAgfVxyXG4gICAgPiB1bCB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYWN0aXZlIHtcclxuICAgID4gYSB7XHJcbiAgICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XHJcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLnNoYXJlIHtcbiAgcGFkZGluZzogMWVtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBwIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICBwYWRkaW5nOiAwIDAgLjc1ZW07XG4gIH1cblxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICB9XG4gIH1cbiAgYSB7XG4gICAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgaGVpZ2h0OiAzNnB4O1xuICAgICAgd2lkdGg6IDM2cHg7XG5cbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itb2Zmd2hpdGU7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHBhdGgge1xuICAgICAgICAgIGZpbGw6ICRwcmltYXJ5LWNvbG9yLWxpZ2h0O1xuICAgICAgICAgIHRyYW5zaXRpb246IC4ycyBlYXNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgIHBhdGgge1xuICAgICAgICBmaWxsOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgaW1nIHtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gIH1cbn1cbiIsIi5yZWxhdGVkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRoci1jb2xvcjtcbiAgcGFkZGluZzogMS41ZW0gMCAzZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgXG4gIGgyIHtcbiAgICBtYXJnaW46IDAgMCAxZW07XG4gIH1cbiAgLnZpZXdhbGwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEuNWVtO1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgYSB7XG4gICAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAuOTVlbTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGxpbmstY29sb3I7XG4gICAgICB9XG4gICAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5nbG9iYWwtY3RhIHtcbiAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3ItbGlnaHQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB3aGl0ZTtcblxuICBhIHtcbiAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3ItbGlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgcGFkZGluZzogMWVtIDA7XG4gIH1cbiAgLmN0YS10ZXh0IHtcbiAgICBtYXJnaW46IDAgMWVtO1xuXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcbiAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICBmb250LWZhbWlseTogJGFjY2VudC1mb250O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgLmN0YS1idG4ge1xuICAgIG1hcmdpbjogMCAxZW07XG4gIH1cbn1cbiIsIlxuJGZvb3Rlci1ia2dkOiAkY29sb3Itd2hpdGU7XG5cbi5mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAkZm9vdGVyLWJrZ2Q7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItY29sb3I7XG5cbiAgZm9udC1zaXplOiAuOWVtO1xuXG4gIC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDNweDtcbiAgICBjb2xvcjogJGZvb3Rlci1ia2dkO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgLjVlbTtcbiAgfVxuICB1bCB7XG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAwIC41ZW07XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxuICB9XG4gIGEge1xuICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG4uZm9vdGVyLXRvcCB7XG4gIHBhZGRpbmc6IDRlbSAwIDFlbSAwO1xuXG4gIC5jb250YWluZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbC1zY3JlZW4pIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG5cbiAgICAgIGdyaWQtZ2FwOiAyZW07XG4gICAgICBnYXA6IDJlbTtcblxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgLmZvb3Rlci1sb2dvIHtcbiAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyO1xuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnNvY2lhbCB7XG4gICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG5cbiAgICAgIGdyaWQtZ2FwOiAyZW07XG4gICAgICBnYXA6IDJlbTtcblxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxufVxuLmZvb3Rlci1jb2wgIHtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuXG4gIGg2IHtcbiAgICBjb2xvcjogJGNvbG9yLWxpbWU7XG4gIH1cbn1cbi5mb290ZXItbG9nbyB7XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgfVxufVxuLnNvY2lhbCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHAge1xuICAgIHBhZGRpbmc6IDAgMCAxZW07XG4gIH1cbiAgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW46IDAgOHB4O1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1yaWdodDogMDsgfVxuICAgIH1cbiAgfVxuICBpbWcge1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgfVxufVxuXG4uZm9vdGVyLWJ0bSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItZ3JleS1saWdodDtcblxuICAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiAyZW0gMDtcblxuICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgfVxufVxuIiwiJHNpZGVtYXJnaW46IG1pbm1heCg1JSwgYXV0byk7XG4kZ2FwOiBtaW5tYXgoMi41ZW0sIDEwZW0pO1xuXG4uY29udGVudCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogJHNpZGVtYXJnaW4gOTAlICRzaWRlbWFyZ2luO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgIFwiYmFubmVyIGJhbm5lciBiYW5uZXJcIlxuICAgIFwiLiAgY29udGVudCAuXCJcbiAgICBcIi4gIHNpZGViYXIgLlwiXG4gICAgXCIuICBzaWRlTmF2IC5cIlxuICAgIFwiZmVhdHVyZSBmZWF0dXJlIGZlYXR1cmVcIlxuICAgIFwiZ2xvYmFsQ1RBIGdsb2JhbENUQSBnbG9iYWxDVEFcIjtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogJHNpZGVtYXJnaW4gbWlubWF4KDIwMHB4LCA0MDBweCkgJGdhcCBtaW5tYXgoNjIwcHgsIDc0MHB4KSAkc2lkZW1hcmdpbjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gbWF4LWNvbnRlbnQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgIFwiYmFubmVyIGJhbm5lciBiYW5uZXIgYmFubmVyIGJhbm5lclwiXG4gICAgICBcIi4gIHNpZGVOYXYgLiBjb250ZW50IC5cIlxuICAgICAgXCIuICBzaWRlYmFyIC4gY29udGVudCAuXCJcbiAgICAgIFwiZmVhdHVyZSBmZWF0dXJlIGZlYXR1cmUgZmVhdHVyZSBmZWF0dXJlXCJcbiAgICAgIFwiZ2xvYmFsQ1RBIGdsb2JhbENUQSBnbG9iYWxDVEEgZ2xvYmFsQ1RBIGdsb2JhbENUQVwiO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1heC13aWR0aCkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogJHNpZGVtYXJnaW4gbWlubWF4KDE4MHB4LCAyODBweCkgJGdhcCBtaW5tYXgoNjAwcHgsIDc0MHB4KSAkZ2FwIG1pbm1heCgxODBweCwgMjgwcHgpICRzaWRlbWFyZ2luO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICBcImJhbm5lciBiYW5uZXIgYmFubmVyIGJhbm5lciBiYW5uZXIgYmFubmVyIGJhbm5lclwiXG4gICAgICBcIi4gIHNpZGVOYXYgLiBjb250ZW50IC4gc2lkZWJhciAuXCJcbiAgICAgIFwiZmVhdHVyZSBmZWF0dXJlIGZlYXR1cmUgZmVhdHVyZSBmZWF0dXJlIGZlYXR1cmUgZmVhdHVyZVwiXG4gICAgICBcImdsb2JhbENUQSBnbG9iYWxDVEEgZ2xvYmFsQ1RBIGdsb2JhbENUQSBnbG9iYWxDVEEgZ2xvYmFsQ1RBIGdsb2JhbENUQVwiO1xuICB9XG5cblxuICAuYmFubmVyIHtcbiAgICBncmlkLWFyZWE6IGJhbm5lcjtcbiAgfVxuICAubWFpbi1jb250ZW50IHtcbiAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gIH1cbiAgLnNpZGUtbmF2IHtcbiAgICBncmlkLWFyZWE6IHNpZGVOYXY7XG4gIH1cbiAgLnN1Yi1jb250ZW50IHtcbiAgICBncmlkLWFyZWE6IHNpZGViYXI7XG4gIH1cbiAgLmZlYXR1cmUge1xuICAgIGdyaWQtYXJlYTogZmVhdHVyZTtcbiAgfVxuICAuZ2xvYmFsLWN0YSB7XG4gICAgZ3JpZC1hcmVhOiBnbG9iYWxDVEE7XG4gIH1cbn1cbiIsIi5sYW5kaW5nIHtcclxuICAubWFpbi1jb250ZW50IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICBzZWN0aW9uLmJhbm5lciB7XHJcbiAgICBwLnNlY3Rpb24ge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXllbGxvdztcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIiRzaWRlbWFyZ2luOiAgbWlubWF4KDUlLCBhdXRvKTtcbiRnYXA6IG1pbm1heCgyLjVlbSwgOGVtKTtcblxuLmFydGljbGUtZGV0YWlsIHtcbiAgbWFyZ2luLXRvcDogNmVtO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICRzaWRlbWFyZ2luIGF1dG8gJHNpZGVtYXJnaW47XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgXCIuIGJhbm5lciAuXCJcbiAgICBcIi4gY29udGVudCAuXCJcbiAgICBcIi4gc2lkZWJhciAuXCJcbiAgICBcIi4gc2lkZU5hdiAuXCJcbiAgICBcIi4gcmVsYXRlZCAuXCJcbiAgICBcImdsb2JhbENUQSBnbG9iYWxDVEEgZ2xvYmFsQ1RBXCI7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICRzaWRlbWFyZ2luIG1pbm1heCgyMDBweCwgNDAwcHgpICRnYXAgbWlubWF4KDYyMHB4LCA3NDBweCkgJHNpZGVtYXJnaW47XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1heC1jb250ZW50O1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICBcIi4gYmFubmVyIGJhbm5lciBiYW5uZXIgLlwiXG4gICAgICBcIi4gc2lkZU5hdiAuIGNvbnRlbnQgLlwiXG4gICAgICBcIi4gc2lkZWJhciAuIGNvbnRlbnQgLlwiXG4gICAgICBcIi4gcmVsYXRlZCByZWxhdGVkIHJlbGF0ZWQgLlwiXG4gICAgICBcImdsb2JhbENUQSBnbG9iYWxDVEEgZ2xvYmFsQ1RBIGdsb2JhbENUQSBnbG9iYWxDVEFcIjtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtYXgtd2lkdGgpIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICRzaWRlbWFyZ2luIG1pbm1heCgxODBweCwgMjgwcHgpICRnYXAgbWlubWF4KDYwMHB4LCA3NDBweCkgJGdhcCBtaW5tYXgoMTgwcHgsIDI4MHB4KSAkc2lkZW1hcmdpbjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCIuIGJhbm5lciBiYW5uZXIgYmFubmVyIGJhbm5lciBiYW5uZXIgLlwiXG4gICAgICBcIi4gc2lkZU5hdiAuIGNvbnRlbnQgLiBzaWRlYmFyIC5cIlxuICAgICAgXCIuIHJlbGF0ZWQgcmVsYXRlZCByZWxhdGVkIHJlbGF0ZWQgcmVsYXRlZCAuXCJcbiAgICAgIFwiZ2xvYmFsQ1RBIGdsb2JhbENUQSBnbG9iYWxDVEEgZ2xvYmFsQ1RBIGdsb2JhbENUQSBnbG9iYWxDVEEgZ2xvYmFsQ1RBXCI7XG4gIH1cblxuXG4gIC50ZXh0LWJhbm5lciB7XG4gICAgZ3JpZC1hcmVhOiBiYW5uZXI7XG4gICAgcC5kYXRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgfVxuICAubWFpbi1jb250ZW50IHtcbiAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gIH1cbiAgLmFydGljbGUtaW5mbyB7XG4gICAgZ3JpZC1hcmVhOiBzaWRlTmF2O1xuICB9XG4gIC5zdWItY29udGVudCB7XG4gICAgZ3JpZC1hcmVhOiBzaWRlYmFyO1xuICB9XG4gIC5yZWxhdGVkIHtcbiAgICBncmlkLWFyZWE6IHJlbGF0ZWQ7XG4gIH1cbiAgLmdsb2JhbC1jdGEge1xuICAgIGdyaWQtYXJlYTogZ2xvYmFsQ1RBO1xuICB9XG59XG4iLCIkc2lkZW1hcmdpbjogIG1pbm1heCg1JSwgYXV0byk7XG4kZ2FwOiBtaW5tYXgoM2VtLCA2ZW0pO1xuXG4uc3RhZmYtbGlzdGluZyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogJHNpZGVtYXJnaW4gbWlubWF4KGF1dG8sICRtYXgtd2lkdGgpICRzaWRlbWFyZ2luO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiAgIFxuICAgIFwiYmFubmVyIGJhbm5lciBiYW5uZXJcIlxuICAgIFwiLiBjb250ZW50IC5cIlxuICAgIFwiZmVhdHVyZSBmZWF0dXJlIGZlYXR1cmVcIlxuICAgIFwiZ2xvYmFsQ1RBIGdsb2JhbENUQSBnbG9iYWxDVEFcIjtcbiAgICBcbiAgLmJhbm5lciB7XG4gICAgZ3JpZC1hcmVhOiBiYW5uZXI7XG4gIH1cbiAgLm1haW4tY29udGVudCB7XG4gICAgZ3JpZC1hcmVhOiBjb250ZW50O1xuICB9XG4gIC5mZWF0dXJlIHtcbiAgICBncmlkLWFyZWE6IGZlYXR1cmU7XG4gIH1cbiAgLmdsb2JhbC1jdGEge1xuICAgIGdyaWQtYXJlYTogZ2xvYmFsQ1RBO1xuICB9XG59XG5cbi5zdGFmZi1kZXRhaWwge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6ICRzaWRlbWFyZ2luIGF1dG8gJHNpZGVtYXJnaW47XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICAgXG4gICAgXCJiYW5uZXIgYmFubmVyIGJhbm5lclwiXG4gICAgXCIuIHN1YmluZm8gLlwiXG4gICAgXCIuIGNvbnRlbnQgLlwiXG4gICAgXCIuIHJlbGF0ZWQgLlwiXG4gICAgXCJnbG9iYWxDVEEgZ2xvYmFsQ1RBIGdsb2JhbENUQVwiO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAkc2lkZW1hcmdpbiBtaW5tYXgoMjAwcHgsIDQwMHB4KSAkZ2FwIGF1dG8gJHNpZGVtYXJnaW47XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1heC1jb250ZW50O1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICAgXG4gICAgICBcImJhbm5lciBiYW5uZXIgYmFubmVyIGJhbm5lciBiYW5uZXJcIlxuICAgICAgXCIuICBzdWJpbmZvIC4gY29udGVudCAuXCJcbiAgICAgIFwiLiByZWxhdGVkIHJlbGF0ZWQgcmVsYXRlZCAuXCJcbiAgICAgIFwiZ2xvYmFsQ1RBIGdsb2JhbENUQSBnbG9iYWxDVEEgZ2xvYmFsQ1RBIGdsb2JhbENUQVwiO1xuICB9XG4gICAgXG4gIC5iYW5uZXIge1xuICAgIGdyaWQtYXJlYTogYmFubmVyO1xuICB9XG4gIC5zdGFmZi1pbWFnZSB7XG4gICAgZ3JpZC1hcmVhOiBzdWJpbmZvO1xuICB9XG4gIC5zdGFmZi1jb250ZW50IHtcbiAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gIH1cbiAgLnJlbGF0ZWQge1xuICAgIGdyaWQtYXJlYTogcmVsYXRlZDtcbiAgfVxuICAuZ2xvYmFsLWN0YSB7XG4gICAgZ3JpZC1hcmVhOiBnbG9iYWxDVEE7XG4gIH1cbn1cbiIsIi5hcnRpY2xlLWluZm8ge1xuICBwYWRkaW5nOiA0ZW0gMDtcblxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgIHBhZGRpbmc6IDJlbSAwO1xuICB9XG59XG5cbi5hcnRpY2xlLWRldGFpbCB7XG4gIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6ICRsYXJnZS1zY3JlZW4pIHtcblxuICAgIGgxIHtcbiAgICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5tYWluLWNvbnRlbnQge1xuICAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XG4gICAgICBwYWRkaW5nOiAyZW0gMDtcbiAgICAgIC5zaGFyZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG4gIH1cbn1cblxuLmF1dGhvciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaHItY29sb3I7XG4gIHBhZGRpbmctYm90dG9tOiAyZW07XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcblxuICBmb250LXNpemU6IC44NWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgaW1nIHtcbiAgICBtYXJnaW46IDAgYXV0byAxZW07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1heC13aWR0aDogMTgwcHg7XG5cbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiAkbGFyZ2Utc2NyZWVuKSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKC43NSk7XG4gICAgICBtYXJnaW46IDAgYXV0byAtLjVlbTtcbiAgICB9XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICAgIG1hcmdpbjogMCAyZW0gMCAwO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICB9XG5cbiAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIGltZyB7XG4gICAgICBmbGV4OiAwIDEgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgfVxuICAgIC5hdXRob3ItdGV4dCB7XG4gICAgICBmbGV4OiAwIDEgNzAlO1xuICAgIH1cbiAgfVxufVxuIiwiLmZpbHRlcnMge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGJveC1zaGFkb3c6IDBweCAzcHggMzBweCByZ2JhKCRjb2xvci1ibGFjaywgLjA1KSwgMHB4IDFweCA4cHggcmdiYSgkY29sb3ItYmxhY2ssIC4wOCk7XG4gIHBhZGRpbmc6IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuXG4gIC5kaXJlY3RvcnlTZWFyY2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDI0MHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBtYXJnaW46IDAgMTJweDtcbiAgICBwYWRkaW5nOiAwIDJlbSAwIDFlbTtcblxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlIHVybCgkaW1hZ2UtcGF0aCArICdpY29uLWRyb3Bkb3duLnN2ZycpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxMnB4KSA1MCU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGhyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBib3gtc2hhZG93OiAwIDFweCA2cHggMCByZ2JhKCRsaW5rLWNvbG9yLCAuMSk7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgfVxuICB9XG5cbiAgLmtleXdvcmRTZWFyY2gge1xuICAgIHdpZHRoOiAyNDBweDtcbiAgICBtYXJnaW46IDAgMTJweCAwIDA7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTpub25lO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE0cHgpO1xuICAgICAgaGVpZ2h0OiA0NHB4O1xuICAgICAgcGFkZGluZzogMCAwIDAgMTJweDtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGhyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjFzIGVhc2Utb3V0O1xuXG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiByZ2JhKCRjb2xvci1ibGFjaywgLjMzKTtcbiAgICAgIH1cbiAgICAgICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsYWNrO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAxMnB4IDAgcmdiYSgkbGluay1jb2xvciwgLjEpLFxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGJ1dHRvbi5hcHBseUZpbHRlciB7XG4gICAgJiwgJjpsaW5rLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgIGhlaWdodDogNDJweDtcblxuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcblxuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAgMjRweDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZDogJGhvdmVyLWNvbG9yO1xuICAgICAgYm94LXNoYWRvdzogMCAxcHggMTJweCAwIHJnYmEoJGxpbmstY29sb3IsIC4xKTtcbiAgICB9XG4gIH1cblxuXHRhLmNsZWFyQnV0dG9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBtYXJnaW46IDAgMCAwIDEycHg7XG4gICAgcGFkZGluZzogMCAxZW07XG5cbiAgICBoZWlnaHQ6IDQycHg7XG5cbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibGFjaztcbiAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IDAgMXB4IDEycHggMCByZ2JhKCRsaW5rLWNvbG9yLCAuMSk7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgIH1cblx0fVxufVxuLmxpc3RpbmctcmVzdWx0cyB7XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbn1cblxuLnBhZ2luYXRpb24ge1xuICBwYWRkaW5nOiAxZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGhyLWNvbG9yO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuXHRAbWVkaWEgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdH1cblxuXG5cdC5maXJzdFBhZ2UsIC5sYXN0UGFnZSB7XG5cdFx0YSB7XG4gICAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5rLWNvbG9yO1xuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIHBhZGRpbmc6IC41ZW0gMWVtO1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG5cblx0XHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcblx0XHRcdFx0YmFja2dyb3VuZDogJGhvdmVyLWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5taWRkbGVQYWdlcyB7XG5cdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAxMjJweCk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6ICRtZWRpdW0tc2NyZWVuKSB7XG5cdFx0XHRvcmRlcjogMTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDEycHg7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cblx0XHRhIHtcbiAgICAgICYsICY6bGluaywgJjp2aXNpdGVkIHtcbiAgICAgICAgcGFkZGluZzogMCA0cHg7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cblx0XHRcdCY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIH1cbiAgICAgIH1cblx0XHR9XG5cdH1cblxuXHQuZmlyc3RQYWdlIHtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogJG1lZGl1bS1zY3JlZW4pIHtcblx0XHRcdG9yZGVyOiAyO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA2cHg7XG5cdFx0fVxuXHR9XG5cblx0Lmxhc3RQYWdlIHtcblx0XHRhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblxuXHRcdEBtZWRpYSAobWF4LXdpZHRoOiAkbWVkaXVtLXNjcmVlbikge1xuXHRcdFx0b3JkZXI6IDM7XG5cdFx0XHRtYXJnaW4tbGVmdDogNnB4O1xuXHRcdH1cblx0fVxufVxuIiwiLmZvcm0ge1xuXHRtYXJnaW46IDFlbSAwO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAyOHB4IHJnYmEoMCwgMCwgMCwgMC4wNyksIDBweCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xMyk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogMzZweDtcbiAgbWFyZ2luOiAwIDAgM2VtO1xuXG4gIGgyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhyLWNvbG9yO1xuICAgIHBhZGRpbmc6IDAgMCAxMHB4O1xuICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gIH1cbn1cblxuLmZ1aS1wYWdlIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAuZnVpLWxhYmVsLCAuZnVpLWxlZ2VuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgY29sb3I6ICRjb2xvci1ibGFjaztcbiAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbiAgLmZ1aS1sZWdlbmQge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgaW5wdXQsIHRleHRhcmVhLCBzZWxlY3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcblx0XHRib3JkZXItc3R5bGU6IG5vbmU7XG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLW9mZndoaXRlO1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDBweCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wNyk7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cblx0XHQmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuXHRzZWxlY3RbbXVsdGlwbGVdOmZvY3VzIG9wdGlvbjpjaGVja2VkIHtcblx0ICBiYWNrZ3JvdW5kOiAkY29sb3Itb2Zmd2hpdGU7XG5cdH1cblx0c2VsZWN0W211bHRpcGxlXTpmb2N1cyB7XG5cdCAgYmFja2dyb3VuZDogd2hpdGU7XG5cdH1cbn1cbi5mdWktaSB7XG4gIC5mdWktYWxlcnQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LWZhbWlseTogJG1haW4tZm9udDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuXG4gICAgLndoaXRlcGFwZXIgJi5mdWktYWxlcnQtc3VjY2VzcyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xuICAgICAgY29sb3I6ICRjb2xvci1ibGFja1xuICAgIH1cbiAgfVxufVxuXG4uZnVpLWJ0bi1jb250YWluZXIge1xuICBtYXJnaW46IDI1cHggMCAwO1xuXG4gIGJ1dHRvbiB7XG4gICAgbWluLXdpZHRoOiAzMDBweDtcblx0XHRiYWNrZ3JvdW5kOiAkbGluay1jb2xvcjtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZDogJGhvdmVyLWNvbG9yO1xuXHRcdH1cbiAgfVxufVxuXG4jYWxlcnQtc3VjY2VzcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiLnNjaG9sYXJzaGlwLWRpcmVjdG9yeSB7XG4gIGgyIHtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gIH1cbiAgXG4gIHAge1xuICAgIHBhZGRpbmc6IDAgMCAuNzVlbTtcbiAgfVxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5zY2hvbGFyc2hpcC10YWJsZSB7XG4gIHRoe1xuICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICB3aWR0aDogMjUlO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICB3aWR0aDogMTUwcHg7XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICB9XG4gIH1cbiAgdGQge1xuICAgIHBhZGRpbmc6IDE1cHggMTJweDtcblxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn0iLCIvLyBIZWFkZXIgU2VhcmNoXHJcbi5vdmVybGF5IHtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuXHJcbiAgb3BhY2l0eTogMDtcclxuXHR6LWluZGV4OiAtMTtcclxuXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh3aGl0ZSwgLjk1KTtcclxuXHJcbiAgLm1vZGFsLW9wZW4gJiB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgei1pbmRleDogOTk5O1xyXG4gIH1cclxuXHJcbiAgLmNsb3NlYnRuIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMzVweDtcclxuICAgIHJpZ2h0OiBjYWxjKDN2dyArIDEwOHB4KTtcclxuXHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkaHItY29sb3I7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcclxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgei1pbmRleDogNjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICBpbWcgeyBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxyXG5cclxuICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsYWNrO1xyXG4gICAgICBib3gtc2hhZG93OiAwIDFweCAxMnB4IDAgcmdiYSgkY29sb3ItYmxhY2ssIC4xKSxcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5vdmVybGF5Q29udGVudCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG5cdHdpZHRoOiA2MCU7XHJcblx0bGVmdDogMjAlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuXHJcbi5oZWFkZXItc2VhcmNoIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICBpbnB1dFt0eXBlPXNlYXJjaF0ge1xyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsYWNrO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDcycHg7XHJcblxyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdFx0cGFkZGluZzogNHB4IDcycHggMDtcclxuXHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjFzIGVhc2Utb3V0O1xyXG5cclxuXHRcdGZvbnQtc2l6ZTogMjRweDtcclxuXHRcdGZvbnQtZmFtaWx5OiAkbWFpbi1mb250O1xyXG5cdCAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG5cclxuICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgcGFkZGluZzogNHB4IDAgMCAwO1xyXG4gICAgICBjb2xvcjogJGNvbG9yLWdyZXk7XHJcbiAgICB9XHJcbiAgICAmOmZvY3VzLCAmOmFjdGl2ZSB7XHJcbiAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibGFjaztcclxuXHRcdFx0Ym94LXNoYWRvdzogMCAxcHggMTJweCAwIHJnYmEoJGNvbG9yLWJsYWNrLCAuMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBidXR0b24uc3VibWl0U2VhcmNoIHtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAxNnB4O1xyXG4gICAgdG9wOiAyMnB4O1xyXG5cclxuICAgIGltZyB7IFxyXG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRcdFx0aGVpZ2h0OiAzMHB4O1xyXG5cdFx0fVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIENvbnRlbnQgU2VhcmNoXHJcbi5zZWFyY2gtZm9ybSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgaW5wdXQsIGJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkaHItY29sb3I7XHJcbiAgICBib3JkZXItcmlnaHQ6IDBweDtcclxuICAgIHBhZGRpbmc6IC41ZW0gMS41ZW07XHJcblxyXG4gICAgY29sb3I6ICRjb2xvci1ncmV5LWRhcms7XHJcbiAgfVxyXG4gIGlucHV0IHtcclxuICAgIGZsZXg6IDE7XHJcblxyXG4gICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICBjb2xvcjogcmdiYSgkY29sb3Itd2hpdGUsIC45KTtcclxuICAgIH1cclxuICB9XHJcbiAgYnV0dG9uIHtcclxuICAgIGZsZXg6IDAgMCAxMDBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgYmFja2dyb3VuZDogJGxpbmstY29sb3I7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IC4ycyBhbGwgZWFzZS1pbjtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZDogJGhvdmVyLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNlYXJjaC1yZXN1bHRzIHtcclxuICBsaSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAxZW0gMDtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaHItY29sb3I7XHJcblxyXG4gIH1cclxuICBhLCBhOmxpbmssIGE6dmlzaXRlZCB7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gIH1cclxufVxyXG4iLCIuc3RhZmYtaW1hZ2UsXHJcbi5zdGFmZi1jb250ZW50IHtcclxuICBwYWRkaW5nOiA0ZW0gMDtcclxufVxyXG4uc3RhZmYtaW1hZ2Uge1xyXG4gIGltZyB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgfVxyXG59XHJcbi5zdGFmZi1maWx0ZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgJGhyLWNvbG9yO1xyXG4gIGJveC1zaGFkb3c6IDBweCAzcHggMzBweCByZ2JhKCRjb2xvci1ibGFjaywgLjA1KSxcclxuICAgICAgICAgICAgICAwcHggMXB4IDhweCByZ2JhKCRjb2xvci1ibGFjaywgLjA4KTtcclxuXHJcbiAgLnN0YWZmLWZpbHRlci1oZWFkZXIge1xyXG4gICAgZmxleDogMCAxIDE1MHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICBwYWRkaW5nOiAxZW07XHJcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkaHItY29sb3I7XHJcbiAgfVxyXG4gIC5zdGFmZi1maWx0ZXItbGlzdCB7XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgcGFkZGluZzogMWVtIC41ZW07XHJcbiAgfVxyXG5cclxuICBoMiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gICAgZm9udC1mYW1pbHk6ICRtYWluLWZvbnQ7XHJcbiAgfVxyXG5cclxuICB1bCB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBtYXJnaW46IDVweCA4cHg7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgYSB7XHJcbiAgICAmLCAmOmxpbmssICY6dmlzaXRlZCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLW9mZndoaXRlO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICBwYWRkaW5nOiAuNWVtIDFlbTtcclxuXHJcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcclxuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gICAgJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItY29sb3I7XHJcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zdGFmZi1kZXBhcnRtZW50IHtcclxuICBwYWRkaW5nOiAyZW0gMDtcclxufVxyXG4uc3RhZmYtZ3JpZCB7XHJcbiAgZGlzcGxheTogZ3JpZDtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyNjVweCwgMWZyKSk7XHJcbiAgZ3JpZC1nYXA6IDI1cHg7XHJcbiAgZ2FwOiAyNXB4O1xyXG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG59XHJcblxyXG4uc3RhZmYtYmxvY2sge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICRoci1jb2xvcjtcclxuICBwYWRkaW5nOiAxZW0gMWVtIC4xMjVlbSAxZW07XHJcblxyXG4gIC5zdGFmZi10ZXh0IHtcclxuICAgIHBhZGRpbmc6IDJlbSAxZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxuICB9XHJcbiAgLnN0YWZmLW5hbWUge1xyXG4gICAgZm9udC1zaXplOiAxLjI1ZW07XHJcbiAgICBhIHtcclxuICAgICAgJiwgJjpsaW5rLCAmOnZpc2l0ZWQge1xyXG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgkaW1hZ2UtcGF0aCArICdpY29uLWNoZXZyb24tcmlnaHQuc3ZnJykgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICY6aG92ZXIsICY6YWN0aXZlLCAmOmZvY3VzIHtcclxuICAgICAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHAge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICB9XHJcbn1cclxuIiwiLnNpdGVtYXAge1xuICAuZGVzay1zZWFyY2ggeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gXG5cbiAgdWwge1xuICAgIGxpIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgMmVtO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgICB9XG5cbiAgICAmLnJvb3QtZ3JvdXAge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItdGVhbDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIGxpc3Qtc3R5bGUtaW1hZ2U6IG5vbmU7XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItdGVhbDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gdWwge1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXRlYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQG1lZGlhIHByaW50IHtcbiAgLy8gVG8gZ2V0IENocm9tZSB0byBzaG93IGRlc2t0b3AgbWVkaWEgcXVlcmllcy4gT3RoZXJ3aXNlIHNldCB0byA1NjhweFxuICBAcGFnZSB7XG4gICAgc2l6ZTogMzMwbW0gNDI3bW07XG4gICAgbWFyZ2luOiAxNG1tO1xuICB9XG4gIC5jb250YWluZXIge1xuICAgIHdpZHRoOiAxMTcwcHg7XG4gIH1cblxuICAubWFpbi1uYXYsXG4gIC5hZG1pbi1idG5zLFxuICAuYmFubmVyLWltYWdlLFxuICAuc2lkZS1uYXYsXG4gIC5nbG9iYWwtY3RhLFxuICAuZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm1hc3Qge1xuICAgIC5jb250YWluZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgfVxuICAgIC5sb2dvIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAubWFpbi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5zdWItY29udGVudCB7IFxuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBncmlkLWdhcDogMjBweDtcbiAgICBnYXA6IDIwcHg7XG4gIH1cbiAgLnNpZGUtYmxvY2sge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmV5O1xuICAgIGNvbG9yOiAkY29sb3ItZ3JleS1kYXJrICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhLmJ1dHRvbiwgYS5idXR0b246bGluaywgYS5idXR0b246dmlzaXRlZCxcbiAgLmJ1dHRvbiBhLCAuYnV0dG9uIGE6bGluaywgLmJ1dHRvbiBhOnZpc2l0ZWQsXG4gIGlucHV0LmJ1dHRvbiwgYnV0dG9uLmJ1dHRvbiB7XG4gICAgYm9yZGVyOiAycHggc29saWQgJGxpbmstY29sb3IgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGxpbmstY29sb3IgIWltcG9ydGFudDsgXG4gIH1cbiAgXG5cbiAgLy8gSG9tZVxuICAuaGVyby10ZXh0IHtcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xuICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLmxpbmstbGlzdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaW1hZ2UtYmxvY2sge1xuICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgfVxuXG4gIC5iYW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDBweDtcblxuICAgICYud2l0aEJrZ2QgeyAgXG4gICAgICAuYmFubmVyLW1hc2sge1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogaW5pdGlhbDtcbiAgICAgIH1cbiAgICB9XG4gIH0gIFxuICAudHdvLWNvbHVtbiB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICAuY29sdW1uLWNhcmQge1xuICAgICAgZmxleDogMCAxIDQ4JTtcbiAgICAgIC5jYXJkLXRleHQge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgfVxuICAgICAgLmNhcmQtaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZmVhdHVyZS1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ibGFjaztcbiAgICBjb2xvcjogJGNvbG9yLWJsYWNrICFpbXBvcnRhbnQ7XG5cbiAgICAuZmVhdHVyZS10ZXh0IHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICB9XG4gIH0gIFxufVxuIl19 */
