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

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

/* HTML5 display definitions
     ========================================================================== */
/**
   * Add the correct display in IE 9-.
   * 1. Add the correct display in Edge, IE, and Firefox.
   * 2. Add the correct display in IE.
   */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block; }

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

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

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

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

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

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

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

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

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

/**
   * 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
     ========================================================================== */
/**
   * Remove the border on images inside links in IE 10-.
   */
img {
  border-style: none; }

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

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

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

/* Forms
     ========================================================================== */
/**
   * 1. Change font properties to `inherit` in all browsers (opinionated).
   * 2. Remove the margin in Firefox and Safari.
   */
button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
   * Restore the font weight unset by the previous rule.
   */
optgroup {
  font-weight: bold; }

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

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

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

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

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

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

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

/**
   * 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 OS X.
   */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
   * Correct the text style of placeholders in Chrome, Edge, and Safari.
   */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

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

/*!
   * Slidebars - A jQuery Framework for Off-Canvas Menus and Sidebars
   * Version: 2.0.2
   * Url: http://www.adchsm.com/slidebars/
   * Author: Adam Charles Smith
   * Author url: http://www.adchsm.com/
   * License: MIT
   * License url: http://www.adchsm.com/slidebars/license/
   */
[canvas], [off-canvas*=push] {
  z-index: 1; }

[off-canvas*=reveal], [off-canvas*=shift] {
  z-index: 0; }

[canvas=container], [off-canvas], body, html {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

body, html {
  width: 100%;
  height: 100%; }

[canvas=container] {
  width: 100%;
  height: 100%;
  overflow-y: auto;
  position: relative;
  background-color: #fff;
  -webkit-overflow-scrolling: touch; }

[canvas=container]:after, [canvas=container]:before {
  clear: both;
  content: '';
  display: table; }

[off-canvas] {
  display: none;
  position: fixed;
  overflow: hidden;
  overflow-y: auto;
  background-color: #000;
  color: #fff;
  -webkit-overflow-scrolling: touch; }

[off-canvas*=top] {
  width: 100%;
  height: 255px;
  top: 0; }

[off-canvas*=right] {
  width: 255px;
  height: 100%;
  top: 0;
  right: 0; }

[off-canvas*=bottom] {
  width: 100%;
  height: 255px;
  bottom: 0; }

[off-canvas*=left] {
  width: 255px;
  height: 100%;
  top: 0;
  left: 0; }

[off-canvas*=overlay] {
  z-index: 9999; }

[canvas], [off-canvas] {
  transform: translate(0, 0);
  transition: transform .3s;
  -webkit-backface-visibility: hidden; }

[off-canvas*=shift][off-canvas*=top] {
  transform: translate(0, 50%); }

[off-canvas*=shift][off-canvas*=right] {
  transform: translate(-50%, 0); }

[off-canvas*=shift][off-canvas*=bottom] {
  transform: translate(0, -50%); }

[off-canvas*=shift][off-canvas*=left] {
  transform: translate(50%, 0); }

@media print {
  [canvas] {
    transform: translate(0, 0) !important; }
  [off-canvas] {
    display: none !important; } }

/* Magnific Popup CSS */
button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.sg-element, .styleguide hr, .sg-colors, .pagination ul, .news-list-article, .header-nav-compact, .header-nav-primary div > ol, .clear {
  zoom: 1; }

.sg-element:before, .styleguide hr:before, .sg-colors:before, .pagination ul:before, .news-list-article:before, .header-nav-compact:before, .header-nav-primary div > ol:before, .clear:before, .sg-element:after, .styleguide hr:after, .sg-colors:after, .pagination ul:after, .news-list-article:after, .header-nav-compact:after, .header-nav-primary div > ol:after, .clear:after {
  content: "";
  display: table; }

.sg-element:after, .styleguide hr:after, .sg-colors:after, .pagination ul:after, .news-list-article:after, .header-nav-compact:after, .header-nav-primary div > ol:after, .clear:after {
  clear: both; }

ul, ol, .styleguide hr, .gallery, .block-download-callouts, .block-accordions, .block-blockquote, .block-image.position-full, .video-container {
  margin: 38px 0; }

@media (max-width: 40.615em) {
  ul, ol, .styleguide hr, .gallery, .block-download-callouts, .block-accordions, .block-blockquote, .block-image.position-full, .video-container {
    margin: 30px 0; } }

.container {
  margin: 0 auto;
  position: relative; }

@media (min-width: 64em) {
  .container {
    padding: 0 80px; } }

.container.container-sidebar {
  max-width: 500px; }

.error {
  color: #ec1c2d; }

.uc {
  text-transform: uppercase; }

.is-vishidden {
  position: absolute !important;
  overflow: hidden;
  width: 1px;
  height: 1px;
  padding: 0;
  border: 0;
  clip: rect(1px, 1px, 1px, 1px); }

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

.btn {
  display: inline-block;
  margin-bottom: 0;
  text-align: center;
  vertical-align: middle;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 2px solid transparent;
  white-space: nowrap;
  padding: 10px 10px;
  font-size: 20px;
  font-size: 1.6447368421vw;
  border-radius: 10px;
  font-weight: normal;
  text-transform: uppercase;
  font-weight: 500; }

@media (max-width: 972.8px) {
  .btn {
    font-size: 16px; } }

@media (min-width: 1216px) {
  .btn {
    font-size: 20px; } }

@media (min-width: 43.75em) {
  .btn {
    padding: 10px 40px; } }

.btn:hover, .btn:focus, .btn.focus {
  color: #000;
  text-decoration: none; }

.btn:active, .btn.active {
  outline: 0;
  background-image: none;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }

.btn.disabled, .btn[disabled], fieldset[disabled] .btn {
  cursor: disabled;
  opacity: 0.65;
  box-shadow: non; }

a.btn.disabled, fieldset[disabled] a.btn {
  pointer-events: none; }

.btn,
.btn-default {
  color: #000;
  background-color: #EEE;
  border-color: #000; }

.btn:focus, .btn.focus,
.btn-default:focus,
.btn-default.focus {
  color: #000;
  background-color: #d5d5d5;
  border-color: black; }

.btn:hover,
.btn-default:hover {
  color: #000;
  background-color: #d5d5d5;
  border-color: black; }

.btn:active, .btn.active,
.btn-default:active,
.btn-default.active {
  color: #000;
  background-color: #d5d5d5;
  border-color: black; }

.btn:active:hover, .btn:active:focus, .btn:active.focus, .btn.active:hover, .btn.active:focus, .btn.active.focus,
.btn-default:active:hover,
.btn-default:active:focus,
.btn-default:active.focus,
.btn-default.active:hover,
.btn-default.active:focus,
.btn-default.active.focus {
  color: #000;
  background-color: #c3c3c3;
  border-color: black; }

.btn:active:hover, .btn:active:focus, .btn:active.focus, .btn.active:hover, .btn.active:focus, .btn.active.focus, .btn.disabled:hover, .btn.disabled:focus, .btn.disabled.focus, .btn[disabled]:hover, .btn[disabled]:focus, .btn[disabled].focus, fieldset[disabled] .btn:hover, fieldset[disabled] .btn:focus, fieldset[disabled] .btn.focus,
.btn-default:active:hover,
.btn-default:active:focus,
.btn-default:active.focus,
.btn-default.active:hover,
.btn-default.active:focus,
.btn-default.active.focus,
.btn-default.disabled:hover,
.btn-default.disabled:focus,
.btn-default.disabled.focus,
.btn-default[disabled]:hover,
.btn-default[disabled]:focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default:hover,
fieldset[disabled] .btn-default:focus,
fieldset[disabled] .btn-default.focus {
  background-color: #EEE;
  border-color: #000; }

.btn i,
.btn-default i {
  margin-left: 0px; }

.btn + .btn {
  margin-left: 50px; }

.btn-block {
  display: block;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: 5px; }

input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%; }

/* custom select variables */
/* Container used for styling the custom select, the buttom class below adds the
   * bg gradient, corners, etc. */
.custom-select {
  font-size: 18px;
  font-size: 2.4671052632vw;
  color: #000;
  background-color: #FFF;
  border-radius: 0;
  position: relative;
  /* This is the native select */
  /* Custom arrow sits on top of the select - could be an image, SVG, icon font,
     * etc. or the arrow could just baked into the bg image on the select. */
  /* Firefox focus has odd artifacts around the text, this kills that. See https://developer.mozilla.org/en-US/docs/Web/CSS/:-moz-focusring */
  /* Firefox <= 34 has a false positive on @supports( -moz-appearance: none )
     * @supports ( mask-type: alpha ) is Firefox 35+
     */
  /* IE 10/11+ - This hides native dropdown button arrow so it will have the custom appearance. Targeting media query hack via http://browserhacks.com/#hack-28f493d247a12ab654f6c3637f6978d5 - looking for better ways to achieve this targeting */
  /* The second rule removes the odd blue bg color behind the text in the select button in IE 10/11 and sets the text color to match the focus style's - fix via http://stackoverflow.com/questions/17553300/change-ie-background-color-on-unopened-focused-select-box */ }

@media (max-width: 648.53333px) {
  .custom-select {
    font-size: 16px; } }

@media (min-width: 1216px) {
  .custom-select {
    font-size: 30px; } }

.custom-select select {
  box-shadow: none;
  border-radius: 0;
  border-width: 1px;
  border-color: #9c9c9c;
  border-style: solid;
  width: 100%;
  margin: 0;
  outline: none;
  padding-top: 0.25em;
  padding-right: 2em;
  padding-bottom: 0.25em;
  padding-left: 0.5em;
  background: transparent;
  /* Prefixed box-sizing rules necessary for older browsers */
  box-sizing: border-box; }

.custom-select select:focus {
  border-color: blue;
  box-shadow: none; }

.custom-select:before, .custom-select:after {
  color: #FFF;
  position: absolute;
  display: block;
  z-index: 2;
  /* Arrow positioning */
  font-size: 0.7em;
  width: 2.2em;
  border: 0;
  /* These hacks make the select behind the arrow clickable in some browsers */
  pointer-events: none; }

.custom-select:before {
  background-color: #444;
  border-radius: 0;
  content: "";
  top: 4px;
  right: 4px;
  bottom: 4px; }

.custom-select:after {
  font-family: "FontAwesome";
  content: "\f078";
  text-align: center;
  right: 4px;
  top: 50%;
  margin-top: -0.8em; }

.custom-select select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000; }

@supports (-webkit-appearance: none) or (-moz-appearance: none) or (appearance: none) or ((-moz-appearance: none) and (mask-type: alpha)) {
  .custom-select {
    /* Show custom arrow */
    /* Remove select styling */ }
  .custom-select:before, .custom-select:after {
    display: block; }
  .custom-select select {
    padding-right: 2em;
    /* inside @supports so that iOS <= 8 display the native arrow */
    background: none;
    /* inside @supports so that Android <= 4.3 display the native arrow */
    border-width: 1px;
    border-color: #9c9c9c;
    border-style: solid;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
  .custom-select select:focus {
    border-color: blue; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .custom-select select::-ms-expand {
    display: none; }
  .custom-select select:focus {
    border-width: 1px;
    border-color: blue;
    border-style: solid; }
  .custom-select select:focus::-ms-value {
    color: #000;
    background: transparent; }
  .custom-select select {
    padding-right: 0.5em;
    background: none; }
  .custom-select:before, .custom-select:after {
    display: block; } }

.ie9 .custom-select select {
  padding-right: 0.5em; }

.block-text-callout {
  text-align: center;
  margin: 0 auto;
  padding-top: 0px;
  padding-bottom: 40px;
  display: inline-block;
  width: 100%; }

.block-text-callout h3 {
  color: #444C57; }

.block-text-callout p {
  width: 80%;
  margin: 30px auto 0px auto;
  font-weight: 400; }

.block-text-callout .btn, .block-text-callout .callout-link {
  margin-top: 50px; }

.block-disclaimer {
  font-size: 16px;
  font-style: italic; }

.block-image-callouts {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center; }

.block-image-callouts + .half-text-callouts {
  margin-top: 25px; }

.block-image-callout {
  width: 100%;
  -ms-flex-flow: column;
  flex-flow: column;
  background: #e6e6e6;
  text-align: center;
  padding: 0 35px 25px;
  border-top: 2px solid #444C57;
  border-bottom: 2px solid #444C57;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 40px; }

@media (min-width: 37.5em) and (max-width: 56.25em) {
  .block-image-callout {
    margin-right: 30px;
    width: calc(50% - 16px); }
  .block-image-callout:nth-of-type(2n) {
    margin-right: 0; } }

@media (min-width: 56.25em) {
  .block-image-callout {
    width: calc(33% - 38px);
    margin-right: 20px;
    margin-left: 20px; } }

.featured-image {
  display: block;
  width: 100%;
  height: auto; }

figcaption {
  font-size: 14px;
  padding: 15px 25px; }

/*
   *------------------------------------------------------------------------------
   * Header Primary
   *------------------------------------------------------------------------------
   */
@media (min-width: 1024px) {
  .page-header {
    color: #f1f1f1;
    z-index: 500;
    transition: .7s;
    position: fixed;
    top: 0;
    width: 100%; } }

.page-header.solid-bg {
  background: #444C57; }

.content {
  padding: 16px; }

@media (min-width: 1024px) {
  .sticky {
    position: fixed;
    top: 0;
    width: 100%;
    background: #444C57; } }

@media (min-width: 1024px) {
  .sticky + .page-main.home {
    padding-top: 70px; } }

.header-nav-primary .container {
  padding: 0; }

.header-nav-primary .logo {
  display: inline-block;
  margin-top: -25px;
  font-weight: normal;
  text-transform: uppercase;
  font-size: 20px;
  text-decoration: none; }

.header-nav-primary .logo img {
  width: 220px; }

.header-nav-primary div > ol {
  position: relative;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: space-evenly;
  justify-content: space-evenly; }

@media (min-width: 1216px) {
  .header-nav-primary div > ol {
    -ms-flex-pack: center;
    justify-content: center; } }

@media (max-width: 1216px) {
  .header-nav-primary div > ol {
    font-size: 20px; } }

@media (min-width: 1216px) {
  .header-nav-primary div > ol {
    font-size: 20px; } }

.header-nav-primary div > ol > li {
  line-height: 68px;
  display: block;
  float: left;
  position: relative;
  margin: 0 10px 0 0; }

.header-nav-primary div > ol > li > a {
  font-family: 'PP Mori-Regular';
  font-style: normal;
  font-weight: 600;
  font-size: 16px;
  line-height: 31px;
  text-align: center;
  letter-spacing: 0.05em;
  color: #F1F1DE;
  transition: .3s; }

@media (min-width: 75em) {
  .header-nav-primary div > ol > li > a {
    padding: 30px 30px 26px; } }

.header-nav-primary div > ol > li.nav-item--is-current > a {
  color: #ec1c2d; }

.header-nav-primary div > ol > li:last-child {
  margin-right: 0; }

.header-nav-primary div > ol > li:last-child ol {
  right: 0; }

.header-nav-primary div > ol > li:hover > a {
  color: #444C57;
  text-decoration: none;
  background: #E0DBD0; }

.header-nav-primary div > ol > li:hover > ol {
  display: block; }

.header-nav-primary div > ol > li ol {
  display: none;
  width: 250px;
  position: absolute;
  top: 70px;
  margin: 0;
  padding: 10px 0 15px 0;
  padding-top: 7px;
  z-index: 1000;
  background: #e6e6e6;
  border-radius: 0 0 10px 10px;
  z-index: 500;
  opacity: 1; }

@media (min-width: 64em) and (max-width: 75em) {
  .header-nav-primary div > ol > li ol {
    right: 0; } }

.header-nav-primary div > ol > li ol li {
  display: block;
  float: none;
  padding: 13px 28px;
  line-height: 1;
  margin: 0; }

.header-nav-primary div > ol > li ol li a {
  border-right: 0;
  font-weight: 400;
  color: #2c2c2c;
  font-weight: normal;
  font-size: 16px; }

/*
   *------------------------------------------------------------------------------
   * Compact Header
   *------------------------------------------------------------------------------
   */
.header-nav-compact {
  position: relative;
  height: 60px;
  z-index: 500; }

.header-nav-compact .logo {
  display: inline-block;
  margin-top: 5px;
  margin-bottom: 10px;
  margin-left: 10px;
  font-weight: normal;
  text-transform: uppercase;
  font-size: 16px;
  text-decoration: none;
  z-index: 500; }

.header-nav-compact .logo img {
  width: 125px; }

.header-nav-compact .off-canvas-trigger.active {
  float: right;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 0px;
  background: transparent;
  color: #fff;
  padding: 0px 20px;
  font-size: 27px;
  border: none;
  height: 60px;
  position: fixed;
  right: 0; }

.header-nav-compact .off-canvas-trigger {
  float: right;
  margin-top: 10px;
  margin-bottom: 0px;
  margin-right: 10px;
  background: #444C57;
  color: #fff;
  padding: 10px;
  font-size: 0px;
  border: none;
  position: fixed;
  right: 0; }

.header-nav-compact .off-canvas-trigger .fa-close {
  display: none; }

.header-nav-compact .off-canvas-trigger.active .fa-close {
  display: block;
  color: #F1F1DE; }

.header-nav-compact .off-canvas-trigger.active .fa-bars {
  display: none; }

/*
   *------------------------------------------------------------------------------
   * Footer Primary
   *------------------------------------------------------------------------------
   */
.footer-nav-primary {
  position: relative;
  display: inline-block;
  text-transform: uppercase; }

.footer-nav-primary ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 0; }

@media (max-width: 64em) {
  .footer-nav-primary ol {
    text-align: center; } }

.footer-nav-primary ol li {
  margin: 0 15px 10px;
  padding: 0 0px 0 0;
  display: inline-block; }

@media (min-width: 64em) {
  .footer-nav-primary ol li {
    margin: 0 40px; } }

.footer-nav-primary ol li a {
  font-size: 20px;
  font-size: 1.6447368421vw;
  font-weight: normal;
  color: #2c2c2c; }

@media (max-width: 972.8px) {
  .footer-nav-primary ol li a {
    font-size: 16px; } }

@media (min-width: 1216px) {
  .footer-nav-primary ol li a {
    font-size: 20px; } }

.footer-nav-primary ol li a:hover {
  text-decoration: none;
  color: #ec1c2d; }

@media (min-width: 64em) {
  .footer-nav-primary ol li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: none; }
  .footer-nav-primary ol li:first-child {
    margin-left: 0;
    padding-left: 0; } }

.footer-nav-aux {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
  margin-top: 35px; }

.footer-nav-aux ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: block;
  font-size: 0;
  width: 100%;
  text-align: center; }

.footer-nav-aux ul li {
  margin: 0 15px 0px 0;
  padding: 0 15px 0 0;
  display: inline-block;
  text-align: center;
  border-right: 2px solid #ec1c2d; }

.footer-nav-aux ul li::before {
  display: none; }

@media (max-width: 25em) {
  .footer-nav-aux ul li:nth-of-type(2) {
    border-right: 0;
    margin-right: 0;
    padding-right: 0; }
  .footer-nav-aux ul li:nth-of-type(3) {
    margin-top: 10px; } }

@media (min-width: 64em) {
  .footer-nav-aux ul li {
    margin: 0 25px 0px 0;
    padding: 0 25px 0 0; } }

.footer-nav-aux ul li a,
.footer-nav-aux ul li span {
  font-size: 16px;
  font-size: 1.3157894737vw;
  font-weight: normal;
  color: #444C57;
  text-transform: uppercase;
  font-weight: 500; }

@media (max-width: 1064px) {
  .footer-nav-aux ul li a,
  .footer-nav-aux ul li span {
    font-size: 14px; } }

@media (min-width: 1216px) {
  .footer-nav-aux ul li a,
  .footer-nav-aux ul li span {
    font-size: 16px; } }

.footer-nav-aux ul li a:hover,
.footer-nav-aux ul li span:hover {
  color: #ec1c2d;
  text-decoration: none; }

.footer-nav-aux ul li:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: none; }

.footer-nav-middle {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
  margin-bottom: 25px;
  text-transform: uppercase; }

.footer-nav-middle ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: block;
  font-size: 0;
  width: 100%;
  text-align: center; }

.footer-nav-middle ul li {
  margin: 0 0px 10px 0;
  padding: 0 12px 0 12px;
  display: inline-block;
  text-align: center; }

.footer-nav-middle ul li::before {
  display: none; }

@media (min-width: 64em) {
  .footer-nav-middle ul li {
    margin: 0 25px 0px 0;
    padding: 0 25px 0 0;
    border-right: 1px solid #444C57; } }

.footer-nav-middle ul li a,
.footer-nav-middle ul li span {
  font-size: 14px;
  font-size: 1.1513157895vw;
  font-weight: normal;
  color: #444C57; }

@media (max-width: 1216px) {
  .footer-nav-middle ul li a,
  .footer-nav-middle ul li span {
    font-size: 14px; } }

@media (min-width: 1216px) {
  .footer-nav-middle ul li a,
  .footer-nav-middle ul li span {
    font-size: 14px; } }

.footer-nav-middle ul li a:hover,
.footer-nav-middle ul li span:hover {
  color: #ec1c2d; }

.footer-nav-middle ul li img {
  width: auto;
  height: 18px;
  display: inline-block; }

.footer-nav-middle ul li:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: none; }

/*
   *------------------------------------------------------------------------------
   * Footer Bottom
   *------------------------------------------------------------------------------
   */
.footer-nav-bottom {
  position: relative;
  display: inline-block; }

.footer-nav-bottom ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 0; }

.footer-nav-bottom ul li {
  margin: 0 0px 3px 0;
  padding: 0 0px 0 0;
  display: block;
  text-align: center; }

.footer-nav-bottom ul li::before {
  display: none; }

.footer-nav-bottom ul li a,
.footer-nav-bottom ul li span {
  font-size: 14px;
  font-size: 1.1513157895vw;
  font-weight: normal;
  color: #444C57; }

@media (max-width: 1216px) {
  .footer-nav-bottom ul li a,
  .footer-nav-bottom ul li span {
    font-size: 14px; } }

@media (min-width: 1216px) {
  .footer-nav-bottom ul li a,
  .footer-nav-bottom ul li span {
    font-size: 14px; } }

.footer-nav-bottom ul li img {
  width: auto;
  height: 18px;
  display: inline-block; }

.footer-nav-bottom ul li:last-child {
  margin-right: 0;
  padding-right: 0;
  border-right: none; }

.social-icons li {
  display: inline-block;
  margin-right: 15px;
  border: 2px solid #ec1c2d;
  font-size: 33px;
  color: #ec1c2d;
  background: #ffffff;
  border-radius: 10px;
  width: 55px;
  height: 55px;
  text-align: center;
  line-height: 50px;
  transition: background 0.225s linear, color 0.225s linear, transform 0.225s cubic-bezier(0.25, 1, 0.5, 2); }

@media (min-width: 37.5em) {
  .social-icons li {
    margin-right: 20px; } }

.social-icons li a {
  vertical-align: top; }

.social-icons li:hover {
  background: #ec1c2d;
  transform: scale(1.125); }

.social-icons li:hover a {
  color: #ffffff; }

.nav-breadcrumbs {
  display: inline-block;
  padding: 4px 0px;
  position: relative;
  font-size: 16px;
  background: rgba(255, 255, 255, 0.9);
  height: 35px; }

.nav-breadcrumbs li {
  display: inline-block;
  color: #000000;
  font-weight: 300; }

.nav-breadcrumbs li a {
  color: #ec1c2d;
  padding-right: 2px;
  padding-left: 2px; }

.nav-breadcrumbs li.current-page {
  color: #444C57; }

.custom-checkbox input[type=checkbox],
.custom-radio input[type=radio] {
  display: block;
  position: absolute;
  opacity: 0; }

.custom-checkbox input[type=checkbox] + span,
.custom-radio input[type=radio] + span {
  padding-left: 2em;
  position: relative;
  display: inline-block; }

.custom-checkbox input[type=checkbox] + span:before {
  display: block;
  position: absolute;
  left: 0;
  top: 0.2em;
  width: 1.8em;
  height: 1.8em;
  border: 1px solid #9c9c9c;
  background: #ffffff;
  font-family: fontawesome;
  content: "\f00c";
  color: transparent;
  font-size: 0.7em;
  line-height: 1.6;
  text-align: center;
  vertical-align: middle; }

.custom-checkbox input[type=checkbox]:focus + span:before {
  background: #DDD; }

.custom-checkbox input[type=checkbox]:checked + span:before {
  color: #ffffff;
  background: #333;
  border: 1px solid #333; }

.custom-radio input[type=radio] + span:before {
  display: block;
  position: absolute;
  left: 0;
  top: 0.2em;
  width: 1.65em;
  height: 1.65em;
  border: 1px solid #9c9c9c;
  background: #ffffff;
  color: #ffffff;
  content: "";
  font-size: 0.7em;
  vertical-align: middle;
  text-align: center;
  border-radius: 100%; }

.custom-radio input[type=radio]:focus + span:before {
  border-color: blue; }

.custom-radio input[type=radio]:checked + span:before {
  border: 5px solid #000000; }

.no-webp .hero .container {
  background-image: url("https://wellsenterprisesinc.azureedge.net/content/images/wells-employees.png"); }

.hero {
  background: #e6e6e6;
  overflow: hidden; }

@media (max-width: 64em) {
  .hero {
    border-bottom: 3px solid #444C57; } }

.hero .container {
  position: relative;
  padding: 45px 0 210px;
  background-repeat: no-repeat;
  background-size: 300px;
  background-position: bottom center; }

@media (min-width: 37.5em) {
  .hero .container {
    padding: 65px 0 210px; } }

@media (min-width: 64em) {
  .hero .container {
    background-position: bottom right;
    padding: 115px 0;
    background-size: 500px; } }

@media (min-width: 68.75em) {
  .hero .container {
    background-size: 550px; } }

@media (min-width: 81.25em) {
  .hero .container {
    background-size: 650px; } }

@media (min-width: 93.75em) {
  .hero .container {
    background-size: 750px; } }

.hero .hero-callout {
  text-align: left;
  color: #2c2c2c;
  max-width: 100%;
  text-align: center;
  margin: 0 auto; }

@media (min-width: 28.125em) {
  .hero .hero-callout {
    max-width: 400px; } }

@media (min-width: 40.625em) {
  .hero .hero-callout {
    max-width: 600px; } }

@media (min-width: 64em) {
  .hero .hero-callout {
    width: 400px;
    text-align: left;
    margin: 0; } }

.hero .hero-callout h2 {
  font-size: 48px;
  font-size: 3.9473684211vw;
  color: #ec1c2d;
  text-transform: uppercase; }

@media (max-width: 760px) {
  .hero .hero-callout h2 {
    font-size: 30px; } }

@media (min-width: 1216px) {
  .hero .hero-callout h2 {
    font-size: 48px; } }

.hero .hero-callout p {
  font-weight: normal;
  margin-bottom: 20px; }

@media (min-width: 64em) {
  .hero .hero-callout p {
    margin-bottom: 40px; } }

.homepage-hero {
  background: #e6e6e6;
  overflow: hidden; }

@media (max-width: 63.9375em) {
  .homepage-hero {
    background-image: none !important; } }

@media (min-width: 64em) {
  .homepage-hero {
    margin-top: -40px;
    background: #ffffff;
    background-repeat: no-repeat;
    background-position: top right;
    background-size: cover; } }

.homepage-hero .hero-mobile-image {
  display: block;
  max-width: calc(100% + 50px);
  width: calc(100% + 50px);
  margin-left: -25px;
  margin-bottom: 30px; }

@media (min-width: 64em) {
  .homepage-hero .hero-mobile-image {
    display: none; } }

.homepage-hero .container {
  position: relative;
  padding: 260px 0 220px; }

@media (max-width: 63.9375em) {
  .homepage-hero .container {
    position: relative;
    padding: 0px 0px 15px;
    margin-top: 0px;
    margin-bottom: 15px; } }

.homepage-hero .homepage-hero-callout {
  color: #2c2c2c;
  text-align: center; }

@media (min-width: 64em) {
  .homepage-hero .homepage-hero-callout {
    width: 40%;
    text-align: left; } }

@media (min-width: 64em) and (min-width: 87.5em) {
  .homepage-hero .homepage-hero-callout {
    width: 600px; } }

.homepage-hero .homepage-hero-callout h1 {
  font-size: 58px;
  font-size: 4.7697368421vw;
  color: #ec1c2d;
  text-transform: uppercase; }

@media (max-width: 524.13793px) {
  .homepage-hero .homepage-hero-callout h1 {
    font-size: 25px; } }

@media (min-width: 1216px) {
  .homepage-hero .homepage-hero-callout h1 {
    font-size: 58px; } }

.homepage-hero .homepage-hero-callout p {
  font-weight: normal;
  margin-bottom: 20px;
  line-height: 1.7; }

@media (min-width: 64em) {
  .homepage-hero .homepage-hero-callout p {
    margin-bottom: 40px;
    line-height: 2; } }

.callouts {
  margin-top: 60px;
  margin-top: 4.9342105263vw;
  margin-bottom: 60px;
  margin-bottom: 4.9342105263vw;
  margin-left: -30px;
  margin-right: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap; }

@media (max-width: 810.66667px) {
  .callouts {
    margin-top: 40px; } }

@media (min-width: 1216px) {
  .callouts {
    margin-top: 60px; } }

@media (max-width: 810.66667px) {
  .callouts {
    margin-bottom: 40px; } }

@media (min-width: 1216px) {
  .callouts {
    margin-bottom: 60px; } }

.callout-column {
  padding: 0 0 0 30px;
  -ms-flex: 0 0 100%;
  flex: 0 0 100%; }

.callout-column + .callout-column {
  margin-top: 20px; }

@media (min-width: 50em) {
  .callout-column {
    -ms-flex: 0 0 33.3333%;
    flex: 0 0 33.3333%; }
  .callout-column + .callout-column {
    margin-top: 0; } }

.callout {
  border: 1px solid #333;
  border-radius: 5px;
  padding: 30px;
  height: 100%;
  text-align: center; }

.callout h2 {
  font-size: 30px;
  font-size: 2.4671052632vw; }

@media (max-width: 810.66667px) {
  .callout h2 {
    font-size: 20px; } }

@media (min-width: 1216px) {
  .callout h2 {
    font-size: 30px; } }

.callout-link {
  text-transform: uppercase;
  font-weight: 400;
  transform: perspective(1px) translateZ(0); }

.callout-link i {
  margin-left: 4px;
  transition-duration: 0.2s;
  transform: translateZ(0); }

.callout-link:hover {
  text-decoration: none; }

.callout-link:hover i {
  animation-name: hvr-icon-up;
  animation-duration: 0.75s;
  animation-timing-function: ease-out; }

/* Icon Up */
@keyframes hvr-icon-up {
  0%, 50%, 100% {
    transform: translateX(0); }
  25%, 75% {
    transform: translateX(4px); } }

.hvr-icon-up:hover i, .hvr-icon-up:focus i, .hvr-icon-up:active i {
  animation-name: hvr-icon-up;
  animation-duration: 0.75s;
  animation-timing-function: ease-out; }

.overlay {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 50; }

.off-canvas-slidebar {
  z-index: 100;
  background: #444C57; }

.off-canvas-nav {
  padding-top: 99px; }

.off-canvas-nav > ol {
  list-style: none;
  margin: 0;
  padding: 0; }

.off-canvas-nav > ol > li {
  padding: 0;
  margin: 0;
  position: relative; }

.off-canvas-nav > ol > li.nav-item--has-children span::after {
  content: "\f078";
  font-family: fontAwesome;
  position: absolute;
  right: 16px;
  color: #ec1c2d;
  font-size: 20px;
  top: 10px; }

.off-canvas-nav > ol > li.nav-item--has-children span:hover::after {
  color: #444C57; }

.off-canvas-nav > ol > li.nav-item--has-children span.minus::after {
  content: "\f077"; }

.off-canvas-nav > ol > li a {
  padding: 0px 0px 20px 45px;
  display: block;
  color: #F1F1DE;
  font-weight: 400;
  font-size: 24px;
  line-height: 58px;
  letter-spacing: 0.05em; }

@media (min-width: 1024px) {
  .off-canvas-nav > ol > li a:hover {
    color: #444C57;
    text-decoration: none; } }

.off-canvas-nav > ol > li ol {
  display: none;
  padding-left: 0; }

.off-canvas-nav > ol > li ol li {
  font-size: 14px;
  padding-left: 10px; }

.off-canvas-nav > ol > li ol li a {
  padding: 3px 7px 3px 18px;
  color: #444C57;
  text-transform: none; }

.off-canvas-nav > ol > li ol li a:hover {
  text-decoration: none;
  color: #ec1c2d; }

.off-canvas-nav > ul {
  margin: 15px 15px 0;
  padding: 0; }

.off-canvas-nav > ul li {
  margin: 0 0 10px 0;
  padding: 0; }

.off-canvas-nav > ul li::before {
  display: none; }

.off-canvas-nav > ul li a {
  color: #444C57; }

.off-canvas-nav > ul + ul {
  margin-top: 0; }

html {
  color: #444C57;
  font-weight: 300;
  line-height: 1.7;
  height: 100%;
  font-size: 17px;
  font-size: 1.3980263158vw; }

@media (max-width: 1001.41176px) {
  html {
    font-size: 14px; } }

@media (min-width: 1216px) {
  html {
    font-size: 17px; } }

body {
  padding: 0;
  margin: 0;
  background-color: #444C57;
  position: relative;
  min-height: 100%; }

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

a img {
  border: none; }

body.styleguide {
  padding-bottom: 60px; }

.sg-container {
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding-left: 42px;
  padding-right: 42px; }

@media (max-width: 40.615em) {
  .sg-container {
    padding-left: 20px;
    padding-right: 20px; } }

.sg-colors li {
  display: block;
  float: left;
  margin: 10px; }

.sg-swatch {
  display: block;
  width: 100px;
  height: 100px;
  border: 1px solid #000; }

.styleguide {
  padding-top: 50px;
  /*
    aside {
      width: 250px;
      float: left;
      padding-right: 20px;
    }
  
    main {
      width: calc(100% - 250px);
      float: left;
    }
    */ }

.styleguide main {
  padding-bottom: 50px; }

.styleguide hr {
  display: block; }

.styleguide .nav-primary > ul {
  font-size: 20px; }

.sg-subheading {
  border-bottom: 2px solid #666;
  margin-top: 60px;
  margin-bottom: 30px; }

.sg-dark-bg {
  background-color: #898989; }

.page-header {
  /*
     * In general, avoid styling this element. It serves as a wrapper for
     * .page-header-* components to show/hide them based on the browser width.
     *
     * This allows us to render the .page-header-* components directly regardless
     * of the width of the viewport simply by taking them out of the .page-header
     * element. Useful for the styleguide. Don't hate me. Blame the red-head.
     */
  /* Default, mobile-first page header setup */
  /* Hide .page-header-* components according to the width of viewport */
  /* Print header */ }

.page-header .page-header-full {
  display: none; }

.page-header .page-header-compact {
  display: block; }

.page-header .page-header-print {
  display: none; }

@media (min-width: 64em) {
  .page-header .page-header-full {
    display: block; }
  .page-header .page-header-compact {
    display: none; } }

.page-header html.print .page-header-full {
  display: none; }

.page-header html.print .page-header-compact {
  display: none; }

.page-header html.print .page-header-print {
  display: block; }

@media print {
  .page-header .page-header-full {
    display: none; }
  .page-header .page-header-compact {
    display: none; }
  .page-header .page-header-print {
    display: block; } }

/*
   * Social media icons.
   */
.header-nav-aux ul li.social-media-icon {
  border-right: none;
  margin: 0 15px 0 0;
  padding: 0 15px 0 0;
  font-size: 1.3em; }

.off-canvas-nav ul li.social-media-icon {
  display: inline;
  font-size: 2em;
  margin-right: 1em; }

/*
   * Full desktop version of the header. All the bells and whistles.
   */
.page-header-full .page-header-full-container {
  margin: 0 auto;
  position: relative;
  /* Position the aux nav */ }

.page-header-full .page-header-full-container .header-nav-aux {
  margin-top: -70px;
  z-index: 500; }

/*
   * Compact version of the header. Usually for mobile screens. Use this if adapting
   * the full desktop version to a mobile-friendly version is unreasonable.
   */
.page-header-compact {
  height: 60px; }

.page-header-compact .page-header-compact-container {
  margin: 0 auto;
  position: relative; }

/*
   * Header for printing
   */
.page-footer {
  clear: both;
  /*
     * Avoid styling this element.
     */ }

.page-footer .footer-img {
  margin: 0 auto 20px;
  display: block; }

.page-footer .footer-img img {
  width: 150px;
  height: 80px;
  display: block;
  padding: 0 15px; }

.page-footer .footer-img::before {
  content: "";
  display: inline-block;
  height: 0.7em;
  vertical-align: bottom;
  width: calc(50% - 75px);
  margin-right: 0;
  margin-left: 0%;
  border-top: 2px solid #ec1c2d;
  float: left;
  margin-top: 40px;
  position: relative; }

.page-footer .footer-img::after {
  content: "";
  display: inline-block;
  height: 0.7em;
  vertical-align: bottom;
  width: calc(50% - 75px);
  margin-right: 0%;
  margin-left: 0;
  border-top: 2px solid #ec1c2d;
  float: right;
  margin-top: -40px;
  position: relative; }

/*
   * Full desktop version of the footer. All the bells and whistles.
   */
.page-footer-main {
  background: #e6e6e6; }

@media (max-width: 64em) {
  .page-footer-main {
    display: none; } }

.page-footer-main .page-footer-main-container {
  max-width: 1300px;
  margin: 0 auto;
  position: relative;
  padding-top: 40px;
  padding-bottom: 40px;
  text-align: center; }

/*
   * Bottom of footer
   */
.page-footer-bottom {
  background: #d0d0d0; }

@media (min-width: 64em) {
  .page-footer-bottom .footer-img {
    display: none; } }

.page-footer-bottom .page-footer-bottom-container {
  margin: 0 auto;
  position: relative;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 32px;
  padding-bottom: 32px;
  text-align: center; }

@media (min-width: 64em) {
  .page-footer-bottom .page-footer-bottom-container {
    padding-top: 45px;
    padding-bottom: 45px; } }

.interior-header {
  position: relative; }

.interior-header figure {
  margin: 0;
  width: 100%;
  position: relative;
  line-height: 0.8; }

.interior-header figure img {
  width: 100%;
  max-width: 100%; }

.interior-header figure img.desktop-version {
  display: none; }

@media (min-width: 64em) {
  .interior-header figure img.desktop-version {
    display: block; } }

.interior-header figure img.mobile-version {
  display: block; }

@media (min-width: 64em) {
  .interior-header figure img.mobile-version {
    display: none; } }

.interior-header figure figcaption {
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  text-align: center; }

.interior-header h1 {
  display: inline-block;
  text-transform: uppercase;
  line-height: 1;
  margin: 0 auto;
  text-align: center;
  padding: 20px 40px 15px;
  border-radius: 50px 50px 0 0;
  background: rgba(255, 255, 255, 0.9); }

@media (min-width: 64em) {
  .interior-header h1 {
    padding: 35px 70px 15px;
    border-radius: 80px 80px 0 0; } }

.interior-header .nav-breadcrumbs {
  position: absolute;
  bottom: 0px;
  left: 0;
  right: 0;
  vertical-align: top; }

.interior-content {
  padding: 20px 0; }

@media (min-width: 64em) {
  .interior-content {
    padding: 50px 40px; } }

@media (min-width: 84.375em) {
  .interior-content {
    padding: 50px 130px; } }

.header-nav-aux {
  background: none; }

.header-nav-primary {
  top: 35px;
  z-index: 550; }

h1, h2, h3, h4, h5, h6 {
  margin: 0 0 18px 0;
  line-height: 1.2;
  color: #444C57;
  font-weight: 700; }

h1 {
  font-size: 50px;
  font-size: 4.1118421053vw;
  color: #ec1c2d; }

@media (max-width: 729.6px) {
  h1 {
    font-size: 30px; } }

@media (min-width: 1216px) {
  h1 {
    font-size: 50px; } }

h2 {
  font-size: 36px;
  font-size: 2.9605263158vw; }

@media (max-width: 844.44444px) {
  h2 {
    font-size: 25px; } }

@media (min-width: 1216px) {
  h2 {
    font-size: 36px; } }

h3 {
  font-size: 26px;
  font-size: 2.1381578947vw; }

@media (max-width: 1028.92308px) {
  h3 {
    font-size: 22px; } }

@media (min-width: 1216px) {
  h3 {
    font-size: 26px; } }

h4, h5, h6 {
  font-size: 20px;
  font-size: 1.6447368421vw; }

@media (max-width: 1094.4px) {
  h4, h5, h6 {
    font-size: 18px; } }

@media (min-width: 1216px) {
  h4, h5, h6 {
    font-size: 20px; } }

p + h2, p + h3 {
  margin-top: 30px; }

/* Links */
a {
  color: #ec1c2d;
  text-decoration: none; }

a:hover, a:focus {
  text-decoration: underline; }

strong {
  font-weight: 700; }

/* Blockquotes */
blockquote {
  display: block;
  margin-bottom: 30px; }

blockquote p:first-child {
  margin-top: 0; }

blockquote p:last-child {
  margin-bottom: 0; }

/* Lists */
ul, ol {
  text-align: left;
  margin-left: 20px;
  margin-top: 20px; }

ul ul, ul ol, ol ul, ol ol {
  margin: 0px 0px 0px 0px;
  font-size: 18px; }

ul ul li, ul ol li, ol ul li, ol ol li {
  padding-left: 30px; }

ul {
  list-style: none;
  padding: 0; }

ul.inline {
  display: inline-block; }

ul.inline li {
  display: block;
  float: left;
  margin-right: 5px; }

ul li {
  padding-left: 18px;
  position: relative;
  margin-bottom: 5px; }

ul li::before {
  content: "";
  width: 8px;
  height: 8px;
  background: #ec1c2d;
  border-radius: 50%;
  position: absolute;
  top: 10px;
  left: 0px; }

ul.no-bullets {
  margin: 0; }

ul.no-bullets li {
  padding-left: 0;
  text-indent: 0;
  margin-bottom: 0; }

ul.no-bullets li:before {
  display: none; }

ol li {
  margin-bottom: 10px; }

a[href^=tel] {
  color: inherit;
  text-decoration: none; }

.our-story-section {
  background-color: #E0DBD0;
  padding: 30px 0 50px 0; }
  @media screen and (min-width: 1024px) {
    .our-story-section {
      padding: 50px 0 0; } }
  .our-story-section .container {
    padding: 50px 24px; }
    @media screen and (min-width: 1024px) {
      .our-story-section .container {
        padding: 40px 80px; } }
    @media screen and (min-width: 1024px) {
      .our-story-section .container .content-container .content-container_copy {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: end;
        align-items: flex-end;
        width: 100%; } }
    @media screen and (min-width: 1024px) {
      .our-story-section .container .content-container .content-container_copy .desktop-left {
        width: 57%; } }
    .our-story-section .container .content-container .content-container_copy .desktop-left img {
      width: 100%; }
    @media screen and (min-width: 1024px) {
      .our-story-section .container .content-container .content-container_copy .desktop-right {
        width: 47%;
        margin-left: 60px; } }
    .our-story-section .container .content-container .content-container_copy .desktop-right h2 {
      font-family: 'PPRightSans-TightMedium';
      font-style: normal;
      font-weight: 500;
      font-size: 60px;
      line-height: 60px;
      margin-top: 15px;
      text-transform: uppercase; }
      @media screen and (min-width: 1024px) {
        .our-story-section .container .content-container .content-container_copy .desktop-right h2 {
          font-size: 100px;
          line-height: 85px; } }
    .our-story-section .container .content-container .content-container_copy .desktop-right p {
      font-family: 'PP Mori-Regular';
      font-style: normal;
      font-weight: 400;
      font-size: 18px;
      line-height: 22px;
      color: #25282A; }
      .our-story-section .container .content-container .content-container_copy .desktop-right p.bottom-margin-none {
        margin-bottom: 5px; }
  .our-story-section .container-full img {
    width: 100%;
    min-height: 220px;
    -o-object-fit: cover;
    object-fit: cover; }
  @media screen and (min-width: 1024px) {
    .our-story-section .container-full {
      padding: 0 80px; } }

.the-foyer-section {
  background-color: #E0DBD0;
  margin-top: -1px; }
  .the-foyer-section .container {
    padding: 42px 24px; }
    @media screen and (min-width: 1024px) {
      .the-foyer-section .container {
        padding: 80px 80px 40px; } }
    .the-foyer-section .container .content-container .content-container_copy {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column-reverse;
      flex-direction: column-reverse; }
      @media screen and (min-width: 1024px) {
        .the-foyer-section .container .content-container .content-container_copy {
          -ms-flex-direction: row;
          flex-direction: row;
          -ms-flex-align: center;
          align-items: center;
          width: 100%; } }
      @media screen and (min-width: 1024px) {
        .the-foyer-section .container .content-container .content-container_copy .desktop-left {
          width: 57%; } }
      .the-foyer-section .container .content-container .content-container_copy .desktop-left img {
        width: 100%; }
      @media screen and (min-width: 1024px) {
        .the-foyer-section .container .content-container .content-container_copy .desktop-right {
          width: 47%;
          margin-left: 60px; } }
      .the-foyer-section .container .content-container .content-container_copy img.foyer-logo {
        max-width: 180px;
        width: 100%; }
      .the-foyer-section .container .content-container .content-container_copy h3 {
        font-family: 'PPRightSans-TightMedium';
        font-style: normal;
        font-weight: 500;
        font-size: 40px;
        line-height: 28px;
        text-transform: uppercase;
        color: #4E6D81;
        margin-top: 30px; }
        @media screen and (min-width: 1024px) {
          .the-foyer-section .container .content-container .content-container_copy h3 {
            margin-bottom: 30px;
            font-size: 60px;
            line-height: 45px; } }
      .the-foyer-section .container .content-container .content-container_copy p {
        font-family: 'PP Mori-Regular';
        font-style: normal;
        font-weight: 400;
        font-size: 16px;
        line-height: 20px;
        color: #25282A; }
        @media screen and (min-width: 1024px) {
          .the-foyer-section .container .content-container .content-container_copy p {
            font-size: 18px;
            line-height: 22px;
            max-width: 370px; } }
    .the-foyer-section .container .content-container .image-container img {
      width: 100%; }
    .the-foyer-section .container .content-container .cta-container {
      margin-top: 25px; }
      @media screen and (min-width: 1024px) {
        .the-foyer-section .container .content-container .cta-container {
          margin-top: 61px; } }
      .the-foyer-section .container .content-container .cta-container .btn.btn-primary {
        background: transparent;
        font-family: 'PP Mori-Regular';
        font-style: normal;
        font-weight: 600;
        font-size: 16px;
        line-height: 22px;
        text-transform: uppercase;
        color: #974902;
        padding: 12px 30px;
        border: 1px solid #974902;
        border-radius: 0;
        transition: .3s; }
      .the-foyer-section .container .content-container .cta-container .btn.btn-primary:hover {
        background: #444C57;
        color: #e0dbd0;
        border: 1px solid #444C57; }
      .the-foyer-section .container .content-container .cta-container.desktop {
        display: none; }
        @media screen and (min-width: 1024px) {
          .the-foyer-section .container .content-container .cta-container.desktop {
            display: block; } }
      .the-foyer-section .container .content-container .cta-container.mobile {
        display: block; }
        @media screen and (min-width: 1024px) {
          .the-foyer-section .container .content-container .cta-container.mobile {
            display: none; } }

.amenities-section {
  position: relative;
  z-index: 1;
  margin-top: -2px; }
  .amenities-section:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    background-color: #E0DBD0;
    -webkit-clip-path: polygon(0 20%, 100% 0, 100% 80%, 0 100%);
    clip-path: polygon(0 0%, 100% 0, 100% 90%, 0 100%);
    z-index: -1;
    bottom: 85px; }
    @media screen and (min-width: 1024px) {
      .amenities-section:after {
        -webkit-clip-path: polygon(0 20%, 100% 0, 100% 50%, 0 100%);
        clip-path: polygon(0 0%, 100% 0, 100% 50%, 0 100%); } }
  .amenities-section .container {
    padding: 50px 24px; }
    @media screen and (min-width: 1024px) {
      .amenities-section .container {
        padding: 80px 80px 0; } }
    .amenities-section .container .responsive {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column; }
      @media screen and (min-width: 1024px) {
        .amenities-section .container .responsive {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-direction: row;
          flex-direction: row;
          -ms-flex-align: center;
          align-items: center;
          width: 100%;
          -ms-flex-pack: end;
          justify-content: flex-end; } }
      @media screen and (min-width: 1024px) {
        .amenities-section .container .responsive .content-container_copy {
          width: 50%;
          max-width: 550px;
          margin-right: 60px; } }
      @media screen and (min-width: 1024px) {
        .amenities-section .container .responsive .image-container {
          width: 50%; } }
    .amenities-section .container .content-container h2 {
      font-family: 'PPRightSans-TightMedium';
      font-style: normal;
      font-weight: 500;
      font-size: 60px;
      line-height: 48px;
      text-align: center;
      text-transform: uppercase;
      color: #444C57; }
      @media screen and (min-width: 1024px) {
        .amenities-section .container .content-container h2 {
          font-size: 100px;
          line-height: 85px; } }
    .amenities-section .container .content-container p.description {
      font-family: 'PP Mori-Regular';
      font-style: normal;
      font-weight: 400;
      font-size: 18px;
      line-height: 22px;
      text-align: center;
      color: #25282A;
      margin-bottom: 55px; }
      @media screen and (min-width: 1024px) {
        .amenities-section .container .content-container p.description {
          max-width: 731px;
          margin: 0 auto 34px;
          font-size: 24px;
          line-height: 28px; } }
    .amenities-section .container .content-container .content-container_copy {
      margin-bottom: 30px; }
      .amenities-section .container .content-container .content-container_copy img.zo-logo {
        width: 100%;
        max-width: 180px;
        margin-bottom: 30px; }
        @media screen and (min-width: 1024px) {
          .amenities-section .container .content-container .content-container_copy img.zo-logo {
            max-width: 70%; } }
      .amenities-section .container .content-container .content-container_copy h3 {
        font-family: 'PPRightSans-TightMedium';
        font-style: normal;
        font-weight: 500;
        font-size: 40px;
        line-height: 28px;
        text-transform: uppercase;
        color: #4E6D81; }
        @media screen and (min-width: 1024px) {
          .amenities-section .container .content-container .content-container_copy h3 {
            font-size: 60px;
            line-height: 45px;
            margin-bottom: 30px; } }
      .amenities-section .container .content-container .content-container_copy p {
        font-family: 'PP Mori-Regular';
        font-style: normal;
        font-weight: 400;
        text-align: left;
        color: #25282A;
        margin-bottom: initial;
        font-size: 16px;
        line-height: 20px; }
        @media screen and (min-width: 1024px) {
          .amenities-section .container .content-container .content-container_copy p {
            font-size: 18px;
            line-height: 22px; } }
    .amenities-section .container .content-container .image-container {
      margin-bottom: 30px; }
      .amenities-section .container .content-container .image-container img {
        width: 100%; }
    @media (min-width: 1024px) {
      .amenities-section .container .content-container .slider-container {
        display: -ms-flexbox;
        display: flex; }
        .amenities-section .container .content-container .slider-container img {
          width: 33%;
          margin-right: 5px; }
          .amenities-section .container .content-container .slider-container img:last-child {
            margin-right: 0; } }
    @media (min-width: 1440px) {
      .amenities-section .container .content-container .slider-container {
        display: -ms-flexbox;
        display: flex;
        margin: 0 auto; }
        .amenities-section .container .content-container .slider-container img {
          margin-right: 25px; }
          .amenities-section .container .content-container .slider-container img:last-child {
            margin-right: 0; } }
    .amenities-section .container .content-container .slider-container .slick-dots {
      display: -ms-flexbox !important;
      display: flex !important;
      -ms-flex-pack: distribute;
      justify-content: space-around;
      max-width: 35%;
      margin: 13px auto 0; }
      .amenities-section .container .content-container .slider-container .slick-dots li button {
        display: none; }
      .amenities-section .container .content-container .slider-container .slick-dots li:before {
        background: transparent;
        border: 1px solid #F1F1DE;
        width: 15px;
        height: 15px; }
      .amenities-section .container .content-container .slider-container .slick-dots li.slick-active:before {
        background: #F1F1DE;
        border: 1px solid #F1F1DE; }

.neighborhood-section {
  position: relative;
  z-index: 1;
  background-color: #444C57;
  color: #F1F1DE;
  margin-top: 45px; }
  .neighborhood-section .container {
    padding: 20px 24px 50px; }
    @media screen and (min-width: 1024px) {
      .neighborhood-section .container {
        padding: 80px 80px 40px; } }
    .neighborhood-section .container .content-container h2 {
      font-family: 'PPRightSans-TightMedium';
      font-style: normal;
      font-weight: 500;
      font-size: 60px;
      line-height: 48px;
      text-align: center;
      text-transform: uppercase;
      color: #F1F1DE;
      margin-bottom: 18px; }
      @media screen and (min-width: 1024px) {
        .neighborhood-section .container .content-container h2 {
          font-size: 100px;
          line-height: 85px; } }
    .neighborhood-section .container .content-container p.description {
      margin: 0 0 30px;
      font-family: 'PP Mori-Regular';
      font-style: normal;
      font-weight: 400;
      font-size: 18px;
      line-height: 22px;
      text-align: center;
      color: #F1F1DE; }
      @media screen and (min-width: 1024px) {
        .neighborhood-section .container .content-container p.description {
          max-width: 917px;
          margin: 0 auto 60px;
          font-size: 24px;
          line-height: 28px; } }
    .neighborhood-section .container .content-container h3 {
      color: #F1F1DE; }
    .neighborhood-section .container .content-container .image-container {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column; }
      @media screen and (min-width: 1024px) {
        .neighborhood-section .container .content-container .image-container {
          -ms-flex-direction: row;
          flex-direction: row;
          -ms-flex-pack: justify;
          justify-content: space-between; } }
      .neighborhood-section .container .content-container .image-container .mobile {
        display: block; }
        @media screen and (min-width: 1024px) {
          .neighborhood-section .container .content-container .image-container .mobile {
            display: none; } }
      .neighborhood-section .container .content-container .image-container .desktop {
        display: none; }
        @media screen and (min-width: 1024px) {
          .neighborhood-section .container .content-container .image-container .desktop {
            display: block;
            height: 100%;
            -o-object-fit: cover;
            object-fit: cover; } }
      @media screen and (min-width: 1024px) {
        .neighborhood-section .container .content-container .image-container .col-left {
          width: 75%; } }
      @media screen and (min-width: 1024px) {
        .neighborhood-section .container .content-container .image-container .col-right {
          margin-left: 25px;
          width: 25%; } }
      .neighborhood-section .container .content-container .image-container img {
        width: 100%;
        margin-bottom: 30px; }
  @media screen and (min-width: 1024px) {
    .neighborhood-section .map-container {
      padding: 0 80px; } }
  .neighborhood-section img.map {
    background-color: #F1F1DE;
    width: 100%; }
    .neighborhood-section img.map.mobile {
      display: block; }
      @media screen and (min-width: 1024px) {
        .neighborhood-section img.map.mobile {
          display: none; } }
    .neighborhood-section img.map.desktop {
      display: none; }
      @media screen and (min-width: 1024px) {
        .neighborhood-section img.map.desktop {
          display: block; } }

.opportunities-section {
  position: relative;
  z-index: 1;
  background-color: #E0DBD0;
  color: #E0DBD0; }
  .opportunities-section:after {
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    right: 0;
    width: 100%;
    background-color: #444C57;
    -webkit-clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 90%);
    clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 90%);
    z-index: -1;
    bottom: 0; }
    @media screen and (min-width: 1024px) {
      .opportunities-section:after {
        -webkit-clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 50%);
        clip-path: polygon(0 0%, 100% 0, 100% 100%, 0 50%); } }
  .opportunities-section .container {
    padding: 50px 24px 100px; }
    @media screen and (min-width: 1024px) {
      .opportunities-section .container {
        padding: 80px 80px 200px; } }
    .opportunities-section .container .content-container {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column; }
      @media screen and (min-width: 1024px) {
        .opportunities-section .container .content-container {
          -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
          -ms-flex-align: center;
          align-items: center;
          -ms-flex-pack: end;
          justify-content: flex-end; } }
      .opportunities-section .container .content-container .copy-container {
        padding-bottom: 14px; }
        @media screen and (min-width: 1024px) {
          .opportunities-section .container .content-container .copy-container {
            margin-left: 60px; } }
        .opportunities-section .container .content-container .copy-container h2 {
          font-family: 'PPRightSans-TightMedium';
          font-style: normal;
          font-weight: 500;
          font-size: 60px;
          line-height: 48px;
          text-transform: uppercase;
          color: #F1F1DE; }
          @media screen and (min-width: 1024px) {
            .opportunities-section .container .content-container .copy-container h2 {
              font-size: 100px;
              line-height: 85px; } }
        .opportunities-section .container .content-container .copy-container p {
          font-family: 'PP Mori-Regular';
          font-style: normal;
          font-weight: 400;
          font-size: 16px;
          line-height: 20px;
          color: #F1F1DE; }
          @media screen and (min-width: 1024px) {
            .opportunities-section .container .content-container .copy-container p {
              max-width: 428px;
              font-size: 18px;
              line-height: 22px; } }
      @media screen and (min-width: 1024px) {
        .opportunities-section .container .content-container .image-container {
          width: 50%; } }
      .opportunities-section .container .content-container .image-container img {
        width: 100%; }
      .opportunities-section .container .content-container .cta-container {
        margin-top: 25px; }
        @media (min-width: 600px) {
          .opportunities-section .container .content-container .cta-container {
            margin-bottom: 25px; } }
        .opportunities-section .container .content-container .cta-container .btn.btn-secondary {
          background: transparent;
          font-family: 'PP Mori-Regular';
          font-style: normal;
          font-weight: 600;
          font-size: 16px;
          line-height: 22px;
          text-transform: uppercase;
          color: #F1F1DE;
          padding: 12px 30px;
          border: 1px solid #F1F1DE;
          border-radius: 0;
          transition: .3s; }
        .opportunities-section .container .content-container .cta-container .btn.btn-secondary:hover {
          background: #F1F1DE;
          color: #444C57; }
        .opportunities-section .container .content-container .cta-container.mobile {
          display: block; }
          @media screen and (min-width: 1024px) {
            .opportunities-section .container .content-container .cta-container.mobile {
              display: none; } }
        .opportunities-section .container .content-container .cta-container.desktop {
          display: none; }
          @media screen and (min-width: 1024px) {
            .opportunities-section .container .content-container .cta-container.desktop {
              display: block; } }

.about-us-section {
  position: relative;
  z-index: 1;
  background-color: #E0DBD0;
  margin-top: -1px; }
  .about-us-section .container {
    padding: 50px 24px; }
    .about-us-section .container .content-container h2 {
      font-family: 'PPRightSans-TightMedium';
      font-style: normal;
      font-weight: 500;
      font-size: 60px;
      line-height: 48px;
      text-align: center;
      text-transform: uppercase;
      color: #444C57; }
      @media (min-width: 1024px) {
        .about-us-section .container .content-container h2 {
          font-size: 100px;
          line-height: 85px; } }
    .about-us-section .container .content-container p {
      font-family: 'PP Mori-Regular';
      font-style: normal;
      font-weight: 400;
      font-size: 18px;
      line-height: 22px;
      text-align: center;
      color: #25282A; }
      @media (min-width: 1024px) {
        .about-us-section .container .content-container p {
          font-size: 24px;
          line-height: 28px;
          max-width: 1006px;
          margin: 0 auto; } }
    .about-us-section .container .content-container .content-container_copy img.foyer-logo {
      max-width: 180px;
      width: 100%; }
    .about-us-section .container .content-container .image-container {
      margin-bottom: 30px; }
      .about-us-section .container .content-container .image-container img {
        width: 100%; }
    @media (min-width: 1024px) {
      .about-us-section .container .content-container .slider-container {
        display: -ms-flexbox;
        display: flex; }
        .about-us-section .container .content-container .slider-container img {
          width: 100%;
          margin-right: 25px; }
          .about-us-section .container .content-container .slider-container img:last-child {
            margin-right: 0; } }
    .about-us-section .container .content-container .slider-container .slick-dots {
      display: -ms-flexbox !important;
      display: flex !important;
      -ms-flex-pack: distribute;
      justify-content: space-around;
      max-width: 35%;
      margin: 13px auto 0; }
      .about-us-section .container .content-container .slider-container .slick-dots li button {
        display: none; }
      .about-us-section .container .content-container .slider-container .slick-dots li:before {
        background: transparent;
        border: 1px solid #F1F1DE;
        width: 15px;
        height: 15px; }
      .about-us-section .container .content-container .slider-container .slick-dots li.slick-active:before {
        background: #F1F1DE;
        border: 1px solid #F1F1DE; }

.page-footer .page-footer-top-container {
  background: #4E6D81;
  color: #F1F1DE;
  text-align: center;
  padding: 97px 0 50px; }
  @media (min-width: 1024px) {
    .page-footer .page-footer-top-container {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
      justify-content: center;
      -ms-flex-align: center;
      align-items: center; } }
  .page-footer .page-footer-top-container .content-container {
    position: relative; }
    @media (min-width: 1024px) {
      .page-footer .page-footer-top-container .content-container {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: end;
        justify-content: flex-end; } }
    .page-footer .page-footer-top-container .content-container h3 {
      font-family: 'PPRightSans-TightMedium';
      font-style: normal;
      font-weight: 500;
      font-size: 40px;
      line-height: 28px;
      text-transform: uppercase;
      color: #F1F1DE;
      text-align: center; }
      @media (min-width: 1024px) {
        .page-footer .page-footer-top-container .content-container h3 {
          max-width: 226px;
          font-size: 60px;
          line-height: 45px;
          text-align: left;
          padding-right: 18%;
          margin: 0; } }
    .page-footer .page-footer-top-container .content-container:after {
      content: '';
      display: block;
      border-bottom: 1px solid #F1F1DE;
      text-align: center;
      opacity: 0.25;
      width: 63%;
      margin: 30px auto 0; }
      @media (min-width: 1024px) {
        .page-footer .page-footer-top-container .content-container:after {
          border-bottom: none;
          border-right: 1px solid #F1F1DE;
          margin: 0; } }
    .page-footer .page-footer-top-container .content-container .contact-info {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column; }
      @media (min-width: 1024px) {
        .page-footer .page-footer-top-container .content-container .contact-info {
          text-align: left;
          padding-right: 8%; } }
      @media (min-width: 1200px) {
        .page-footer .page-footer-top-container .content-container .contact-info {
          padding-right: 18%; } }
      .page-footer .page-footer-top-container .content-container .contact-info p,
      .page-footer .page-footer-top-container .content-container .contact-info .email,
      .page-footer .page-footer-top-container .content-container .contact-info .phone {
        font-family: 'PP Mori-Regular';
        font-style: normal;
        font-weight: 300;
        font-size: 18px;
        line-height: 26px;
        color: #F1F1DE;
        margin: 0; }
        @media (min-width: 1024px) {
          .page-footer .page-footer-top-container .content-container .contact-info p,
          .page-footer .page-footer-top-container .content-container .contact-info .email,
          .page-footer .page-footer-top-container .content-container .contact-info .phone {
            font-size: 20px;
            line-height: 26px; } }
        .page-footer .page-footer-top-container .content-container .contact-info p.name,
        .page-footer .page-footer-top-container .content-container .contact-info .email.name,
        .page-footer .page-footer-top-container .content-container .contact-info .phone.name {
          font-weight: 800;
          line-height: 31px;
          letter-spacing: 0.02em;
          margin-bottom: 8px; }
          @media (min-width: 1024px) {
            .page-footer .page-footer-top-container .content-container .contact-info p.name,
            .page-footer .page-footer-top-container .content-container .contact-info .email.name,
            .page-footer .page-footer-top-container .content-container .contact-info .phone.name {
              font-size: 24px;
              line-height: 31px; } }
  .page-footer .page-footer-top-container .img-container {
    padding-top: 30px; }
    @media (min-width: 1024px) {
      .page-footer .page-footer-top-container .img-container {
        padding: 0 0 0 90px; } }
    @media (min-width: 1024px) {
      .page-footer .page-footer-top-container .img-container img {
        width: 264px; } }

.page-footer .page-footer-bottom {
  background: #444C57;
  color: #F1F1DE; }
  .page-footer .page-footer-bottom li a {
    color: #F1F1DE; }
  .page-footer .page-footer-bottom .footer-nav-bottom ul {
    margin: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .page-footer .page-footer-bottom .footer-nav-bottom ul li:last-child {
      padding-left: 27px !important; }
    .page-footer .page-footer-bottom .footer-nav-bottom ul li a {
      text-decoration: underline;
      font-family: 'PP Mori-Regular';
      font-style: normal;
      font-weight: 700;
      font-size: 16px;
      line-height: 26px; }

@media screen and (min-width: 992px) {
  .hero-section {
    height: 100vh; } }

.hero-section .container {
  background-image: url("../img/hero_mobile.png");
  width: 100%;
  padding: 0;
  margin: 0;
  background-size: cover;
  max-width: 100%;
  background-position: center;
  background-repeat: no-repeat;
  padding: 65px 24px 70px;
  margin-top: -70px; }
  @media screen and (min-width: 992px) {
    .hero-section .container {
      background-image: url("../img/hero_desktop.png");
      padding: 160px 90px 80px;
      height: 100%; } }
  @media screen and (min-width: 1024px) {
    .hero-section .container {
      margin-top: 0; } }
  @media screen and (min-width: 1280px) {
    .hero-section .container {
      padding: 240px 90px 200px; } }
  .hero-section .container .hero-section-callout {
    color: #F1F1DE; }
    .hero-section .container .hero-section-callout img {
      max-width: 205px;
      width: 100%;
      margin-bottom: 40px; }
      @media screen and (min-width: 1280px) {
        .hero-section .container .hero-section-callout img {
          width: 100%;
          max-width: 330px;
          margin-bottom: 60px; } }
    .hero-section .container .hero-section-callout h1 {
      font-family: 'PPRightSans-TightMedium';
      font-style: normal;
      font-weight: 500;
      font-size: 60px;
      line-height: 48px;
      max-width: 72%;
      /* or 80% */
      text-transform: uppercase;
      /* Tertiary/Lux Cream */
      color: #F1F1DE; }
      @media screen and (min-width: 1024px) {
        .hero-section .container .hero-section-callout h1 {
          font-weight: 500;
          font-size: 100px;
          line-height: 85px;
          text-transform: uppercase;
          color: #F1F1DE;
          margin-top: 20px; } }
      @media screen and (min-width: 1220px) {
        .hero-section .container .hero-section-callout h1 {
          max-width: 46%; } }
    .hero-section .container .hero-section-callout p {
      font-family: 'PP Mori-Regular';
      font-style: normal;
      font-weight: 400;
      font-size: 18px;
      line-height: 22px;
      color: #F1F1DE;
      margin-bottom: 0;
      max-width: 80%; }
      @media screen and (min-width: 1024px) {
        .hero-section .container .hero-section-callout p {
          font-size: 24px;
          line-height: 28px; } }
      @media screen and (min-width: 1200px) {
        .hero-section .container .hero-section-callout p {
          max-width: 28%; } }

@font-face {
  font-family: "PPRightSans-TightMedium";
  src: url("/fonts/PPRightSans-TightMedium.otf"), url("/fonts/PPRightSans-TightMedium.woff") format("woff"), url("/fonts/PPRightSans-TightMedium.woff2") format("woff2"), url("/fonts/PPRightSans-TightMedium.ttf") format("ttf");
  font-style: normal; }

@font-face {
  font-family: "PP Mori-Regular";
  src: url("/fonts/PPMori-Regular.otf"), url("/fonts/PPMori-Regular.woff") format("woff"), url("/fonts/PPMori-Regular.woff2") format("woff2"), url("/fonts/PPMori-Regular.ttf") format("ttf");
  font-style: normal; }

.fa.fa-bars:before {
  content: url("../img/menu.svg"); }

.anchor-link {
  text-decoration: none; }
  .anchor-link:hover, .anchor-link:focus {
    text-decoration: none; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjAxLW9nLnNjc3MiLCIwMi1vdXItc3Rvcnkuc2NzcyIsIjAzLXRoZS1mb3llci5zY3NzIiwiMDQtYW1lbml0aWVzLnNjc3MiLCIwNS1uZWlnaGJvcmhvb2Quc2NzcyIsIjA2LW9wcG9ydHVuaXRpZXMuc2NzcyIsIjA3LWFib3V0LXNlY3Rpb24uc2NzcyIsIjA4LWZvb3Rlci5zY3NzIiwiMDktaGVyby1zZWN0aW9uLnNjc3MiLCJmb250cy5zY3NzIiwiaGVhZGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEVBQTRFO0FBRTVFOzs7O0dBSUc7QUFFRixJQUFJLENBQUM7RUFDRixXQUFXLEVBQUUsVUFBVTtFQUFFLE9BQU87RUFDaEMsV0FBVyxFQUFFLElBQUk7RUFBRSxPQUFPO0VBQzFCLG9CQUFvQixFQUFFLElBQUk7RUFBRSxPQUFPO0VBQ25DLHdCQUF3QixFQUFFLElBQUk7RUFBRSxPQUFPLEVBQ3hDOztBQUVEOztLQUVHO0FBRUgsSUFBSSxDQUFDO0VBQ0gsTUFBTSxFQUFFLENBQUMsR0FDVjs7QUFFRDtrRkFDZ0Y7QUFFaEY7Ozs7S0FJRztBQUVILE9BQU87QUFDUCxLQUFLO0FBQ0wsT0FBTztBQUNQLFVBQVU7QUFDVixNQUFNO0FBQ04sTUFBTTtBQUNOLE1BQU07QUFDTixJQUFJO0FBQ0osSUFBSTtBQUNKLEdBQUc7QUFDSCxPQUFPO0FBQ1AsT0FBTyxDQUFDO0VBQUUsT0FBTztFQUNmLE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBRUQ7O0tBRUc7QUFFSCxLQUFLO0FBQ0wsTUFBTTtBQUNOLFFBQVE7QUFDUixLQUFLLENBQUM7RUFDSixPQUFPLEVBQUUsWUFBWSxHQUN0Qjs7QUFFRDs7S0FFRztBQUVILEtBQUssSUFBSyxFQUFBLFFBQUMsR0FBVztFQUNwQixPQUFPLEVBQUUsSUFBSTtFQUNiLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBRUQ7O0tBRUc7QUFFSCxRQUFRLENBQUM7RUFDUCxjQUFjLEVBQUUsUUFBUSxHQUN6Qjs7QUFF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S1gsZUFBZSxFQUFFLElBQUksR0FDdEI7RUFORCxBQUNFLFlBRFUsQUFDVCxNQUFNLEVBRFQsWUFBWSxBQUVULE1BQU0sQ0FBQztJQUNOLGVBQWUsRUFBRSxJQUFJLEdBQ3hCIiwiZmlsZSI6InN0eWxlcy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgbm9ybWFsaXplLmNzcyB2NC4xLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBhbmQgaU9TLlxuICovXG5cbiBodG1sIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cbiAgXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBcbiAgLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAqIDIuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgKi9cbiAgXG4gIGFydGljbGUsXG4gIGFzaWRlLFxuICBkZXRhaWxzLCAvKiAxICovXG4gIGZpZ2NhcHRpb24sXG4gIGZpZ3VyZSxcbiAgZm9vdGVyLFxuICBoZWFkZXIsXG4gIG1haW4sIC8qIDIgKi9cbiAgbWVudSxcbiAgbmF2LFxuICBzZWN0aW9uLFxuICBzdW1tYXJ5IHsgLyogMSAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIFxuICAvKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAqL1xuICBcbiAgYXVkaW8sXG4gIGNhbnZhcyxcbiAgcHJvZ3Jlc3MsXG4gIHZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgKi9cbiAgXG4gIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgKi9cbiAgXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgKi9cbiAgXG4gIHRlbXBsYXRlLCAvKiAxICovXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAvKiBMaW5rc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICAgKi9cbiAgXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xuICB9XG4gIFxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKi9cbiAgXG4gIGE6YWN0aXZlLFxuICBhOmhvdmVyIHtcbiAgICBvdXRsaW5lLXdpZHRoOiAwO1xuICB9XG4gIFxuICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICovXG4gIFxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICovXG4gIFxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICB9XG4gIFxuICAvKipcbiAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAgICovXG4gIFxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gICAqL1xuICBcbiAgZGZuIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAqL1xuICBcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAqL1xuICBcbiAgbWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgICBjb2xvcjogIzAwMDtcbiAgfVxuICBcbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cbiAgXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgKiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuICBcbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cbiAgXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG4gIFxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG4gIFxuICAvKiBFbWJlZGRlZCBjb250ZW50XG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gIFxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAqL1xuICBcbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICovXG4gIFxuICBzdmc6bm90KDpyb290KSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICBcbiAgLyogR3JvdXBpbmcgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICovXG4gIFxuICBjb2RlLFxuICBrYmQsXG4gIHByZSxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgfVxuICBcbiAgLyoqXG4gICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICovXG4gIFxuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMWVtIDQwcHg7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICovXG4gIFxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xuICB9XG4gIFxuICAvKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgLyoqXG4gICAqIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAqL1xuICBcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlc3RvcmUgdGhlIGZvbnQgd2VpZ2h0IHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgKi9cbiAgXG4gIG9wdGdyb3VwIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgKi9cbiAgXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgKi9cbiAgXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLyogMSAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIFxuICAvKipcbiAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICovXG4gIFxuICBidXR0b24sXG4gIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgKi9cbiAgXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICovXG4gIFxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG4gIFxuICAvKipcbiAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAqL1xuICBcbiAgZmllbGRzZXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gIH1cbiAgXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuICBcbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgKi9cbiAgXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuICBcbiAgLyoqXG4gICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICovXG4gIFxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xuICB9XG4gIFxuICAvKipcbiAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgKi9cbiAgXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIFxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgKi9cbiAgXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG4gIH1cbiAgXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gICAqL1xuICBcbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cbiAgXG4gIC8qKlxuICAgKiBDb3JyZWN0IHRoZSB0ZXh0IHN0eWxlIG9mIHBsYWNlaG9sZGVycyBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAqL1xuICBcbiAgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBvcGFjaXR5OiAwLjU0O1xuICB9XG4gIFxuICAvKipcbiAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgKi9cbiAgXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICB9XG4gIFxuICAvKiFcbiAgICogU2xpZGViYXJzIC0gQSBqUXVlcnkgRnJhbWV3b3JrIGZvciBPZmYtQ2FudmFzIE1lbnVzIGFuZCBTaWRlYmFyc1xuICAgKiBWZXJzaW9uOiAyLjAuMlxuICAgKiBVcmw6IGh0dHA6Ly93d3cuYWRjaHNtLmNvbS9zbGlkZWJhcnMvXG4gICAqIEF1dGhvcjogQWRhbSBDaGFybGVzIFNtaXRoXG4gICAqIEF1dGhvciB1cmw6IGh0dHA6Ly93d3cuYWRjaHNtLmNvbS9cbiAgICogTGljZW5zZTogTUlUXG4gICAqIExpY2Vuc2UgdXJsOiBodHRwOi8vd3d3LmFkY2hzbS5jb20vc2xpZGViYXJzL2xpY2Vuc2UvXG4gICAqL1xuICBcbiAgW2NhbnZhc10sW29mZi1jYW52YXMqPXB1c2hde3otaW5kZXg6MX1bb2ZmLWNhbnZhcyo9cmV2ZWFsXSxbb2ZmLWNhbnZhcyo9c2hpZnRde3otaW5kZXg6MH1bY2FudmFzPWNvbnRhaW5lcl0sW29mZi1jYW52YXNdLGJvZHksaHRtbHttYXJnaW46MDtwYWRkaW5nOjA7Ym94LXNpemluZzpib3JkZXItYm94fWJvZHksaHRtbHt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO31bY2FudmFzPWNvbnRhaW5lcl17d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvdmVyZmxvdy15OmF1dG87cG9zaXRpb246cmVsYXRpdmU7YmFja2dyb3VuZC1jb2xvcjojZmZmOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofVtjYW52YXM9Y29udGFpbmVyXTphZnRlcixbY2FudmFzPWNvbnRhaW5lcl06YmVmb3Jle2NsZWFyOmJvdGg7Y29udGVudDonJztkaXNwbGF5OnRhYmxlfVtvZmYtY2FudmFzXXtkaXNwbGF5Om5vbmU7cG9zaXRpb246Zml4ZWQ7b3ZlcmZsb3c6aGlkZGVuO292ZXJmbG93LXk6YXV0bztiYWNrZ3JvdW5kLWNvbG9yOiMwMDA7Y29sb3I6I2ZmZjstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaH1bb2ZmLWNhbnZhcyo9dG9wXXt3aWR0aDoxMDAlO2hlaWdodDoyNTVweDt0b3A6MH1bb2ZmLWNhbnZhcyo9cmlnaHRde3dpZHRoOjI1NXB4O2hlaWdodDoxMDAlO3RvcDowO3JpZ2h0OjB9W29mZi1jYW52YXMqPWJvdHRvbV17d2lkdGg6MTAwJTtoZWlnaHQ6MjU1cHg7Ym90dG9tOjB9W29mZi1jYW52YXMqPWxlZnRde3dpZHRoOjI1NXB4O2hlaWdodDoxMDAlO3RvcDowO2xlZnQ6MH1bb2ZmLWNhbnZhcyo9b3ZlcmxheV17ei1pbmRleDo5OTk5fVtjYW52YXNdLFtvZmYtY2FudmFzXXt0cmFuc2Zvcm06dHJhbnNsYXRlKDAsMCk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59W29mZi1jYW52YXMqPXNoaWZ0XVtvZmYtY2FudmFzKj10b3Bde3RyYW5zZm9ybTp0cmFuc2xhdGUoMCw1MCUpfVtvZmYtY2FudmFzKj1zaGlmdF1bb2ZmLWNhbnZhcyo9cmlnaHRde3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwwKX1bb2ZmLWNhbnZhcyo9c2hpZnRdW29mZi1jYW52YXMqPWJvdHRvbV17dHJhbnNmb3JtOnRyYW5zbGF0ZSgwLC01MCUpfVtvZmYtY2FudmFzKj1zaGlmdF1bb2ZmLWNhbnZhcyo9bGVmdF17dHJhbnNmb3JtOnRyYW5zbGF0ZSg1MCUsMCl9QG1lZGlhIHByaW50e1tjYW52YXNde3RyYW5zZm9ybTp0cmFuc2xhdGUoMCwwKSFpbXBvcnRhbnR9W29mZi1jYW52YXNde2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9fVxuICAvKiBNYWduaWZpYyBQb3B1cCBDU1MgKi9cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwOyB9XG5cbiAgXG4gIC5zZy1lbGVtZW50LCAuc3R5bGVndWlkZSBociwgLnNnLWNvbG9ycywgLnBhZ2luYXRpb24gdWwsIC5uZXdzLWxpc3QtYXJ0aWNsZSwgLmhlYWRlci1uYXYtY29tcGFjdCwgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbCwgLmNsZWFyIHtcbiAgICB6b29tOiAxO1xuICB9XG4gIC5zZy1lbGVtZW50OmJlZm9yZSwgLnN0eWxlZ3VpZGUgaHI6YmVmb3JlLCAuc2ctY29sb3JzOmJlZm9yZSwgLnBhZ2luYXRpb24gdWw6YmVmb3JlLCAubmV3cy1saXN0LWFydGljbGU6YmVmb3JlLCAuaGVhZGVyLW5hdi1jb21wYWN0OmJlZm9yZSwgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbDpiZWZvcmUsIC5jbGVhcjpiZWZvcmUsIC5zZy1lbGVtZW50OmFmdGVyLCAuc3R5bGVndWlkZSBocjphZnRlciwgLnNnLWNvbG9yczphZnRlciwgLnBhZ2luYXRpb24gdWw6YWZ0ZXIsIC5uZXdzLWxpc3QtYXJ0aWNsZTphZnRlciwgLmhlYWRlci1uYXYtY29tcGFjdDphZnRlciwgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbDphZnRlciwgLmNsZWFyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG4gIC5zZy1lbGVtZW50OmFmdGVyLCAuc3R5bGVndWlkZSBocjphZnRlciwgLnNnLWNvbG9yczphZnRlciwgLnBhZ2luYXRpb24gdWw6YWZ0ZXIsIC5uZXdzLWxpc3QtYXJ0aWNsZTphZnRlciwgLmhlYWRlci1uYXYtY29tcGFjdDphZnRlciwgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbDphZnRlciwgLmNsZWFyOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICBcbiAgdWwsIG9sLCAuc3R5bGVndWlkZSBociwgLmdhbGxlcnksIC5ibG9jay1kb3dubG9hZC1jYWxsb3V0cywgLmJsb2NrLWFjY29yZGlvbnMsIC5ibG9jay1ibG9ja3F1b3RlLCAuYmxvY2staW1hZ2UucG9zaXRpb24tZnVsbCwgLnZpZGVvLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAzOHB4IDA7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwLjYxNWVtKSB7XG4gICAgdWwsIG9sLCAuc3R5bGVndWlkZSBociwgLmdhbGxlcnksIC5ibG9jay1kb3dubG9hZC1jYWxsb3V0cywgLmJsb2NrLWFjY29yZGlvbnMsIC5ibG9jay1ibG9ja3F1b3RlLCAuYmxvY2staW1hZ2UucG9zaXRpb24tZnVsbCwgLnZpZGVvLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW46IDMwcHggMDtcbiAgICB9XG4gIH1cbiAgXG4gIC5jb250YWluZXIge1xuICAgIC8vIG1heC13aWR0aDogMTMwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgLy8gd2lkdGg6IDkwJTtcbiAgICAgIHBhZGRpbmc6IDAgODBweDtcblxuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAvLyB3aWR0aDogOTAlO1xuICAgIH1cbiAgfVxuICAuY29udGFpbmVyLmNvbnRhaW5lci1zaWRlYmFyIHtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICB9XG4gIFxuICAuZXJyb3Ige1xuICAgIGNvbG9yOiAjZWMxYzJkO1xuICB9XG4gIFxuICAudWMge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICAuaXMtdmlzaGlkZGVuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICB9XG4gIFxuICAudGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBcbiAgLmJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAgICAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjY0NDczNjg0MjF2dztcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5NzIuOHB4KSB7XG4gICAgLmJ0biB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjE2cHgpIHtcbiAgICAuYnRuIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQzLjc1ZW0pIHtcbiAgICAuYnRuIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggNDBweDtcbiAgICB9XG4gIH1cbiAgLmJ0bjpob3ZlciwgLmJ0bjpmb2N1cywgLmJ0bi5mb2N1cyB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIC5idG46YWN0aXZlLCAuYnRuLmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgM3B4IDVweCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbiAgfVxuICAuYnRuLmRpc2FibGVkLCAuYnRuW2Rpc2FibGVkXSwgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4ge1xuICAgIGN1cnNvcjogZGlzYWJsZWQ7XG4gICAgb3BhY2l0eTogMC42NTtcbiAgICBib3gtc2hhZG93OiBub247XG4gIH1cbiAgXG4gIGEuYnRuLmRpc2FibGVkLCBmaWVsZHNldFtkaXNhYmxlZF0gYS5idG4ge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIFxuICAuYnRuLFxuICAuYnRuLWRlZmF1bHQge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUU7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICB9XG4gIC5idG46Zm9jdXMsIC5idG4uZm9jdXMsXG4gIC5idG4tZGVmYXVsdDpmb2N1cyxcbiAgLmJ0bi1kZWZhdWx0LmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDVkNWQ1O1xuICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gIH1cbiAgLmJ0bjpob3ZlcixcbiAgLmJ0bi1kZWZhdWx0OmhvdmVyIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDVkNWQ1O1xuICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gIH1cbiAgLmJ0bjphY3RpdmUsIC5idG4uYWN0aXZlLFxuICAuYnRuLWRlZmF1bHQ6YWN0aXZlLFxuICAuYnRuLWRlZmF1bHQuYWN0aXZlIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDVkNWQ1O1xuICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gIH1cbiAgLmJ0bjphY3RpdmU6aG92ZXIsIC5idG46YWN0aXZlOmZvY3VzLCAuYnRuOmFjdGl2ZS5mb2N1cywgLmJ0bi5hY3RpdmU6aG92ZXIsIC5idG4uYWN0aXZlOmZvY3VzLCAuYnRuLmFjdGl2ZS5mb2N1cyxcbiAgLmJ0bi1kZWZhdWx0OmFjdGl2ZTpob3ZlcixcbiAgLmJ0bi1kZWZhdWx0OmFjdGl2ZTpmb2N1cyxcbiAgLmJ0bi1kZWZhdWx0OmFjdGl2ZS5mb2N1cyxcbiAgLmJ0bi1kZWZhdWx0LmFjdGl2ZTpob3ZlcixcbiAgLmJ0bi1kZWZhdWx0LmFjdGl2ZTpmb2N1cyxcbiAgLmJ0bi1kZWZhdWx0LmFjdGl2ZS5mb2N1cyB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MzYzNjMztcbiAgICBib3JkZXItY29sb3I6IGJsYWNrO1xuICB9XG4gIC5idG46YWN0aXZlOmhvdmVyLCAuYnRuOmFjdGl2ZTpmb2N1cywgLmJ0bjphY3RpdmUuZm9jdXMsIC5idG4uYWN0aXZlOmhvdmVyLCAuYnRuLmFjdGl2ZTpmb2N1cywgLmJ0bi5hY3RpdmUuZm9jdXMsIC5idG4uZGlzYWJsZWQ6aG92ZXIsIC5idG4uZGlzYWJsZWQ6Zm9jdXMsIC5idG4uZGlzYWJsZWQuZm9jdXMsIC5idG5bZGlzYWJsZWRdOmhvdmVyLCAuYnRuW2Rpc2FibGVkXTpmb2N1cywgLmJ0bltkaXNhYmxlZF0uZm9jdXMsIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuOmhvdmVyLCBmaWVsZHNldFtkaXNhYmxlZF0gLmJ0bjpmb2N1cywgZmllbGRzZXRbZGlzYWJsZWRdIC5idG4uZm9jdXMsXG4gIC5idG4tZGVmYXVsdDphY3RpdmU6aG92ZXIsXG4gIC5idG4tZGVmYXVsdDphY3RpdmU6Zm9jdXMsXG4gIC5idG4tZGVmYXVsdDphY3RpdmUuZm9jdXMsXG4gIC5idG4tZGVmYXVsdC5hY3RpdmU6aG92ZXIsXG4gIC5idG4tZGVmYXVsdC5hY3RpdmU6Zm9jdXMsXG4gIC5idG4tZGVmYXVsdC5hY3RpdmUuZm9jdXMsXG4gIC5idG4tZGVmYXVsdC5kaXNhYmxlZDpob3ZlcixcbiAgLmJ0bi1kZWZhdWx0LmRpc2FibGVkOmZvY3VzLFxuICAuYnRuLWRlZmF1bHQuZGlzYWJsZWQuZm9jdXMsXG4gIC5idG4tZGVmYXVsdFtkaXNhYmxlZF06aG92ZXIsXG4gIC5idG4tZGVmYXVsdFtkaXNhYmxlZF06Zm9jdXMsXG4gIC5idG4tZGVmYXVsdFtkaXNhYmxlZF0uZm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRlZmF1bHQ6aG92ZXIsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRlZmF1bHQ6Zm9jdXMsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLWRlZmF1bHQuZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRUU7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICB9XG4gIC5idG4gaSxcbiAgLmJ0bi1kZWZhdWx0IGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIH1cbiBcbiAgXG4gIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgfVxuICBcbiAgLmJ0bi1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIC5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbiAgXG4gIGlucHV0W3R5cGU9c3VibWl0XS5idG4tYmxvY2ssXG4gIGlucHV0W3R5cGU9cmVzZXRdLmJ0bi1ibG9jayxcbiAgaW5wdXRbdHlwZT1idXR0b25dLmJ0bi1ibG9jayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIC8qIGN1c3RvbSBzZWxlY3QgdmFyaWFibGVzICovXG4gIC8qIENvbnRhaW5lciB1c2VkIGZvciBzdHlsaW5nIHRoZSBjdXN0b20gc2VsZWN0LCB0aGUgYnV0dG9tIGNsYXNzIGJlbG93IGFkZHMgdGhlXG4gICAqIGJnIGdyYWRpZW50LCBjb3JuZXJzLCBldGMuICovXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC1zaXplOiAyLjQ2NzEwNTI2MzJ2dztcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8qIFRoaXMgaXMgdGhlIG5hdGl2ZSBzZWxlY3QgKi9cbiAgICAvKiBDdXN0b20gYXJyb3cgc2l0cyBvbiB0b3Agb2YgdGhlIHNlbGVjdCAtIGNvdWxkIGJlIGFuIGltYWdlLCBTVkcsIGljb24gZm9udCxcbiAgICAgKiBldGMuIG9yIHRoZSBhcnJvdyBjb3VsZCBqdXN0IGJha2VkIGludG8gdGhlIGJnIGltYWdlIG9uIHRoZSBzZWxlY3QuICovXG4gICAgLyogRmlyZWZveCBmb2N1cyBoYXMgb2RkIGFydGlmYWN0cyBhcm91bmQgdGhlIHRleHQsIHRoaXMga2lsbHMgdGhhdC4gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy86LW1vei1mb2N1c3JpbmcgKi9cbiAgICAvKiBGaXJlZm94IDw9IDM0IGhhcyBhIGZhbHNlIHBvc2l0aXZlIG9uIEBzdXBwb3J0cyggLW1vei1hcHBlYXJhbmNlOiBub25lIClcbiAgICAgKiBAc3VwcG9ydHMgKCBtYXNrLXR5cGU6IGFscGhhICkgaXMgRmlyZWZveCAzNStcbiAgICAgKi9cbiAgICAvKiBJRSAxMC8xMSsgLSBUaGlzIGhpZGVzIG5hdGl2ZSBkcm9wZG93biBidXR0b24gYXJyb3cgc28gaXQgd2lsbCBoYXZlIHRoZSBjdXN0b20gYXBwZWFyYW5jZS4gVGFyZ2V0aW5nIG1lZGlhIHF1ZXJ5IGhhY2sgdmlhIGh0dHA6Ly9icm93c2VyaGFja3MuY29tLyNoYWNrLTI4ZjQ5M2QyNDdhMTJhYjY1NGY2YzM2MzdmNjk3OGQ1IC0gbG9va2luZyBmb3IgYmV0dGVyIHdheXMgdG8gYWNoaWV2ZSB0aGlzIHRhcmdldGluZyAqL1xuICAgIC8qIFRoZSBzZWNvbmQgcnVsZSByZW1vdmVzIHRoZSBvZGQgYmx1ZSBiZyBjb2xvciBiZWhpbmQgdGhlIHRleHQgaW4gdGhlIHNlbGVjdCBidXR0b24gaW4gSUUgMTAvMTEgYW5kIHNldHMgdGhlIHRleHQgY29sb3IgdG8gbWF0Y2ggdGhlIGZvY3VzIHN0eWxlJ3MgLSBmaXggdmlhIGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTc1NTMzMDAvY2hhbmdlLWllLWJhY2tncm91bmQtY29sb3Itb24tdW5vcGVuZWQtZm9jdXNlZC1zZWxlY3QtYm94ICovXG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY0OC41MzMzMzMzMzMzcHgpIHtcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjE2cHgpIHtcbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgfVxuICB9XG4gIC5jdXN0b20tc2VsZWN0IHNlbGVjdCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci1jb2xvcjogIzljOWM5YztcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBhZGRpbmctdG9wOiAwLjI1ZW07XG4gICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1ZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAvKiBQcmVmaXhlZCBib3gtc2l6aW5nIHJ1bGVzIG5lY2Vzc2FyeSBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG4gIC5jdXN0b20tc2VsZWN0IHNlbGVjdDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiBibHVlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgLmN1c3RvbS1zZWxlY3Q6YmVmb3JlLCAuY3VzdG9tLXNlbGVjdDphZnRlciB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHotaW5kZXg6IDI7XG4gICAgLyogQXJyb3cgcG9zaXRpb25pbmcgKi9cbiAgICBmb250LXNpemU6IDAuN2VtO1xuICAgIHdpZHRoOiAyLjJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgLyogVGhlc2UgaGFja3MgbWFrZSB0aGUgc2VsZWN0IGJlaGluZCB0aGUgYXJyb3cgY2xpY2thYmxlIGluIHNvbWUgYnJvd3NlcnMgKi9cbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuY3VzdG9tLXNlbGVjdDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHRvcDogNHB4O1xuICAgIHJpZ2h0OiA0cHg7XG4gICAgYm90dG9tOiA0cHg7XG4gIH1cbiAgLmN1c3RvbS1zZWxlY3Q6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gICAgY29udGVudDogXCJcXGYwNzhcIjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcmlnaHQ6IDRweDtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMC44ZW07XG4gIH1cbiAgLmN1c3RvbS1zZWxlY3Qgc2VsZWN0Oi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICMwMDA7XG4gIH1cbiAgQHN1cHBvcnRzICgoLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lKSBvciAoLW1vei1hcHBlYXJhbmNlOiBub25lKSBvciAoYXBwZWFyYW5jZTogbm9uZSkpIG9yICgoLW1vei1hcHBlYXJhbmNlOiBub25lKSBhbmQgKG1hc2stdHlwZTogYWxwaGEpKSB7XG4gICAgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgLyogU2hvdyBjdXN0b20gYXJyb3cgKi9cbiAgICAgIC8qIFJlbW92ZSBzZWxlY3Qgc3R5bGluZyAqL1xuICAgIH1cbiAgICAuY3VzdG9tLXNlbGVjdDpiZWZvcmUsIC5jdXN0b20tc2VsZWN0OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAuY3VzdG9tLXNlbGVjdCBzZWxlY3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgICAgLyogaW5zaWRlIEBzdXBwb3J0cyBzbyB0aGF0IGlPUyA8PSA4IGRpc3BsYXkgdGhlIG5hdGl2ZSBhcnJvdyAqL1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIC8qIGluc2lkZSBAc3VwcG9ydHMgc28gdGhhdCBBbmRyb2lkIDw9IDQuMyBkaXNwbGF5IHRoZSBuYXRpdmUgYXJyb3cgKi9cbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOWM5YzljO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgfVxuICAgIC5jdXN0b20tc2VsZWN0IHNlbGVjdDpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGJsdWU7XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gICAgLmN1c3RvbS1zZWxlY3Qgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5jdXN0b20tc2VsZWN0IHNlbGVjdDpmb2N1cyB7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIGJvcmRlci1jb2xvcjogYmx1ZTtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgfVxuICAgIC5jdXN0b20tc2VsZWN0IHNlbGVjdDpmb2N1czo6LW1zLXZhbHVlIHtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC5jdXN0b20tc2VsZWN0IHNlbGVjdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuICAgIC5jdXN0b20tc2VsZWN0OmJlZm9yZSwgLmN1c3RvbS1zZWxlY3Q6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG4gIFxuICAuaWU5IC5jdXN0b20tc2VsZWN0IHNlbGVjdCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41ZW07XG4gIH1cbiAgXG4gIC5ibG9jay10ZXh0LWNhbGxvdXQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYmxvY2stdGV4dC1jYWxsb3V0IGgzIHtcbiAgICBjb2xvcjogIzQ0NEM1NztcbiAgfVxuICAuYmxvY2stdGV4dC1jYWxsb3V0IHAge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgbWFyZ2luOiAzMHB4IGF1dG8gMHB4IGF1dG87XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuICAuYmxvY2stdGV4dC1jYWxsb3V0IC5idG4sIC5ibG9jay10ZXh0LWNhbGxvdXQgLmNhbGxvdXQtbGluayB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxuICBcbiAgLmJsb2NrLWRpc2NsYWltZXIge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbiAgXG4gIC5ibG9jay1pbWFnZS1jYWxsb3V0cyB7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAuYmxvY2staW1hZ2UtY2FsbG91dHMgKyAuaGFsZi10ZXh0LWNhbGxvdXRzIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICB9XG4gIFxuICAuYmxvY2staW1hZ2UtY2FsbG91dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLW1zLWZsZXgtZmxvdzogY29sdW1uO1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwIDM1cHggMjVweDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgIzQ0NEM1NztcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzQ0NEM1NztcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkgYW5kIChtYXgtd2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAuYmxvY2staW1hZ2UtY2FsbG91dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxNnB4KTtcbiAgICB9XG4gICAgLmJsb2NrLWltYWdlLWNhbGxvdXQ6bnRoLW9mLXR5cGUoMm4pIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDU2LjI1ZW0pIHtcbiAgICAuYmxvY2staW1hZ2UtY2FsbG91dCB7XG4gICAgICB3aWR0aDogY2FsYygzMyUgLSAzOHB4KTtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIH1cbiAgfVxuICAuZmVhdHVyZWQtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICBcbiAgZmlnY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDE1cHggMjVweDtcbiAgfVxuICBcbiAgLypcbiAgICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogSGVhZGVyIFByaW1hcnlcbiAgICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICovXG4gICBcbiAgXG4gIFxuICAucGFnZS1oZWFkZXIge1xuXG4gICAgXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGNvbG9yOiAjZjFmMWYxO1xuICAgIHotaW5kZXg6IDUwMDtcbiAgICB0cmFuc2l0aW9uOiAuN3M7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAucGFnZS1oZWFkZXIuc29saWQtYmcge1xuICAgIGJhY2tncm91bmQ6ICM0NDRDNTc7XG4gIH1cbiAgXG4gIC5jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxNnB4O1xuICB9XG4gIFxuICAuc3RpY2t5IHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICM0NDRDNTc7XG4gICAgfVxuICB9XG4gIFxuICAuc3RpY2t5ICsgLnBhZ2UtbWFpbi5ob21lICB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgcGFkZGluZy10b3A6IDcwcHg7XG4gICAgfVxuICB9XG5cbiAgLmhlYWRlci1uYXYtcHJpbWFyeSAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5oZWFkZXItbmF2LXByaW1hcnkgLmxvZ28ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAuaGVhZGVyLW5hdi1wcmltYXJ5IC5sb2dvIGltZyB7XG4gICAgd2lkdGg6IDIyMHB4O1xuICB9XG4gIC5oZWFkZXItbmF2LXByaW1hcnkgZGl2ID4gb2wge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC1tcy1mbGV4LXBhY2s6IHNwYWNlLWV2ZW5seTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMTZweCkge1xuICAgIC5oZWFkZXItbmF2LXByaW1hcnkgZGl2ID4gb2wge1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTIxNnB4KSB7XG4gICAgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjE2cHgpIHtcbiAgICAuaGVhZGVyLW5hdi1wcmltYXJ5IGRpdiA+IG9sIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gIH1cbiAgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbCA+IGxpIHtcbiAgICBsaW5lLWhlaWdodDogNjhweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICAgIFxuICB9XG4gXG4gIC5oZWFkZXItbmF2LXByaW1hcnkgZGl2ID4gb2wgPiBsaSA+IGEge1xuIFxuXG4gICAgZm9udC1mYW1pbHk6ICdQUCBNb3JpLVJlZ3VsYXInO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICBjb2xvcjogI0YxRjFERTtcbiAgICB0cmFuc2l0aW9uOiAuM3M7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaGVhZGVyLW5hdi1wcmltYXJ5IGRpdiA+IG9sID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAyNnB4O1xuICAgIH1cbiAgfVxuICAuaGVhZGVyLW5hdi1wcmltYXJ5IGRpdiA+IG9sID4gbGkubmF2LWl0ZW0tLWlzLWN1cnJlbnQgPiBhIHtcbiAgICBjb2xvcjogI2VjMWMyZDtcbiAgfVxuICAuaGVhZGVyLW5hdi1wcmltYXJ5IGRpdiA+IG9sID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5oZWFkZXItbmF2LXByaW1hcnkgZGl2ID4gb2wgPiBsaTpsYXN0LWNoaWxkIG9sIHtcbiAgICByaWdodDogMDtcbiAgfVxuICAuaGVhZGVyLW5hdi1wcmltYXJ5IGRpdiA+IG9sID4gbGk6aG92ZXIgPiBhIHtcbiAgICBjb2xvcjogIzQ0NEM1NztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI0UwREJEMDtcbiAgfVxuICAuaGVhZGVyLW5hdi1wcmltYXJ5IGRpdiA+IG9sID4gbGk6aG92ZXIgPiBvbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbCA+IGxpIG9sIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA3MHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMTVweCAwO1xuICAgIHBhZGRpbmctdG9wOiA3cHg7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAxMHB4IDEwcHg7XG4gICAgei1pbmRleDogNTAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NWVtKSB7XG4gICAgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbCA+IGxpIG9sIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICAuaGVhZGVyLW5hdi1wcmltYXJ5IGRpdiA+IG9sID4gbGkgb2wgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IDEzcHggMjhweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLmhlYWRlci1uYXYtcHJpbWFyeSBkaXYgPiBvbCA+IGxpIG9sIGxpIGEge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNvbG9yOiAjMmMyYzJjO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG5cbiAgLypcbiAgICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogQ29tcGFjdCBIZWFkZXJcbiAgICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICovXG4gIC5oZWFkZXItbmF2LWNvbXBhY3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBib3gtc2hhZG93OiAzcHggM3B4IDNweCAjYjNiM2IzO1xuICAgIGhlaWdodDogNjBweDtcbiAgICB6LWluZGV4OiA1MDA7XG4gIH1cbiAgLmhlYWRlci1uYXYtY29tcGFjdCAubG9nbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHotaW5kZXg6IDUwMDtcbiAgfVxuICAuaGVhZGVyLW5hdi1jb21wYWN0IC5sb2dvIGltZyB7XG4gICAgd2lkdGg6IDEyNXB4O1xuICB9XG4gIC5oZWFkZXItbmF2LWNvbXBhY3QgLm9mZi1jYW52YXMtdHJpZ2dlci5hY3RpdmUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDBweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgfVxuICAuaGVhZGVyLW5hdi1jb21wYWN0IC5vZmYtY2FudmFzLXRyaWdnZXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogIzQ0NEM1NztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLmhlYWRlci1uYXYtY29tcGFjdCAub2ZmLWNhbnZhcy10cmlnZ2VyIC5mYS1jbG9zZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGVhZGVyLW5hdi1jb21wYWN0IC5vZmYtY2FudmFzLXRyaWdnZXIuYWN0aXZlIC5mYS1jbG9zZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICNGMUYxREU7XG4gIH1cbiAgLmhlYWRlci1uYXYtY29tcGFjdCAub2ZmLWNhbnZhcy10cmlnZ2VyLmFjdGl2ZSAuZmEtYmFycyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBcbiAgLypcbiAgICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICogRm9vdGVyIFByaW1hcnlcbiAgICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICovXG4gIC5mb290ZXItbmF2LXByaW1hcnkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAuZm9vdGVyLW5hdi1wcmltYXJ5IG9sIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDA7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyLW5hdi1wcmltYXJ5IG9sIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbiAgLmZvb3Rlci1uYXYtcHJpbWFyeSBvbCBsaSB7XG4gICAgbWFyZ2luOiAwIDE1cHggMTBweDtcbiAgICBwYWRkaW5nOiAwIDBweCAwIDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlci1uYXYtcHJpbWFyeSBvbCBsaSB7XG4gICAgICBtYXJnaW46IDAgNDBweDtcbiAgICB9XG4gIH1cbiAgLmZvb3Rlci1uYXYtcHJpbWFyeSBvbCBsaSBhIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjY0NDczNjg0MjF2dztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiAjMmMyYzJjO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5NzIuOHB4KSB7XG4gICAgLmZvb3Rlci1uYXYtcHJpbWFyeSBvbCBsaSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMTZweCkge1xuICAgIC5mb290ZXItbmF2LXByaW1hcnkgb2wgbGkgYSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuICB9XG4gIC5mb290ZXItbmF2LXByaW1hcnkgb2wgbGkgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjZWMxYzJkO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlci1uYXYtcHJpbWFyeSBvbCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgfVxuICAgIC5mb290ZXItbmF2LXByaW1hcnkgb2wgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIFxuICAuZm9vdGVyLW5hdi1hdXgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgfVxuICAuZm9vdGVyLW5hdi1hdXggdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuZm9vdGVyLW5hdi1hdXggdWwgbGkge1xuICAgIG1hcmdpbjogMCAxNXB4IDBweCAwO1xuICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjZWMxYzJkO1xuICB9XG4gIC5mb290ZXItbmF2LWF1eCB1bCBsaTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAyNWVtKSB7XG4gICAgLmZvb3Rlci1uYXYtYXV4IHVsIGxpOm50aC1vZi10eXBlKDIpIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5mb290ZXItbmF2LWF1eCB1bCBsaTpudGgtb2YtdHlwZSgzKSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXItbmF2LWF1eCB1bCBsaSB7XG4gICAgICBtYXJnaW46IDAgMjVweCAwcHggMDtcbiAgICAgIHBhZGRpbmc6IDAgMjVweCAwIDA7XG4gICAgfVxuICB9XG4gIC5mb290ZXItbmF2LWF1eCB1bCBsaSBhLFxuICAuZm9vdGVyLW5hdi1hdXggdWwgbGkgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMS4zMTU3ODk0NzM3dnc7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogIzQ0NEM1NztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwNjRweCkge1xuICAgIC5mb290ZXItbmF2LWF1eCB1bCBsaSBhLFxuICAuZm9vdGVyLW5hdi1hdXggdWwgbGkgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjE2cHgpIHtcbiAgICAuZm9vdGVyLW5hdi1hdXggdWwgbGkgYSxcbiAgLmZvb3Rlci1uYXYtYXV4IHVsIGxpIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgfVxuICAuZm9vdGVyLW5hdi1hdXggdWwgbGkgYTpob3ZlcixcbiAgLmZvb3Rlci1uYXYtYXV4IHVsIGxpIHNwYW46aG92ZXIge1xuICAgIGNvbG9yOiAjZWMxYzJkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAuZm9vdGVyLW5hdi1hdXggdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG4gIFxuICAuZm9vdGVyLW5hdi1taWRkbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5mb290ZXItbmF2LW1pZGRsZSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5mb290ZXItbmF2LW1pZGRsZSB1bCBsaSB7XG4gICAgbWFyZ2luOiAwIDBweCAxMHB4IDA7XG4gICAgcGFkZGluZzogMCAxMnB4IDAgMTJweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5mb290ZXItbmF2LW1pZGRsZSB1bCBsaTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlci1uYXYtbWlkZGxlIHVsIGxpIHtcbiAgICAgIG1hcmdpbjogMCAyNXB4IDBweCAwO1xuICAgICAgcGFkZGluZzogMCAyNXB4IDAgMDtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM0NDRDNTc7XG4gICAgfVxuICB9XG4gIC5mb290ZXItbmF2LW1pZGRsZSB1bCBsaSBhLFxuICAuZm9vdGVyLW5hdi1taWRkbGUgdWwgbGkgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xNTEzMTU3ODk1dnc7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogIzQ0NEM1NztcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTIxNnB4KSB7XG4gICAgLmZvb3Rlci1uYXYtbWlkZGxlIHVsIGxpIGEsXG4gIC5mb290ZXItbmF2LW1pZGRsZSB1bCBsaSBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMTZweCkge1xuICAgIC5mb290ZXItbmF2LW1pZGRsZSB1bCBsaSBhLFxuICAuZm9vdGVyLW5hdi1taWRkbGUgdWwgbGkgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICB9XG4gIC5mb290ZXItbmF2LW1pZGRsZSB1bCBsaSBhOmhvdmVyLFxuICAuZm9vdGVyLW5hdi1taWRkbGUgdWwgbGkgc3Bhbjpob3ZlciB7XG4gICAgY29sb3I6ICNlYzFjMmQ7XG4gIH1cbiAgLmZvb3Rlci1uYXYtbWlkZGxlIHVsIGxpIGltZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuZm9vdGVyLW5hdi1taWRkbGUgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG4gIFxuICAvKlxuICAgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgKiBGb290ZXIgQm90dG9tXG4gICAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqL1xuICAuZm9vdGVyLW5hdi1ib3R0b20ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmZvb3Rlci1uYXYtYm90dG9tIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDA7XG4gIH1cbiAgLmZvb3Rlci1uYXYtYm90dG9tIHVsIGxpIHtcbiAgICBtYXJnaW46IDAgMHB4IDNweCAwO1xuICAgIHBhZGRpbmc6IDAgMHB4IDAgMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmZvb3Rlci1uYXYtYm90dG9tIHVsIGxpOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmZvb3Rlci1uYXYtYm90dG9tIHVsIGxpIGEsXG4gIC5mb290ZXItbmF2LWJvdHRvbSB1bCBsaSBzcGFuIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC1zaXplOiAxLjE1MTMxNTc4OTV2dztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiAjNDQ0QzU3O1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMjE2cHgpIHtcbiAgICAuZm9vdGVyLW5hdi1ib3R0b20gdWwgbGkgYSxcbiAgLmZvb3Rlci1uYXYtYm90dG9tIHVsIGxpIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIxNnB4KSB7XG4gICAgLmZvb3Rlci1uYXYtYm90dG9tIHVsIGxpIGEsXG4gIC5mb290ZXItbmF2LWJvdHRvbSB1bCBsaSBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cbiAgLmZvb3Rlci1uYXYtYm90dG9tIHVsIGxpIGltZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuZm9vdGVyLW5hdi1ib3R0b20gdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG4gIFxuICBcbiAgLnNvY2lhbC1pY29ucyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjZWMxYzJkO1xuICAgIGZvbnQtc2l6ZTogMzNweDtcbiAgICBjb2xvcjogI2VjMWMyZDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgd2lkdGg6IDU1cHg7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMjI1cyBsaW5lYXIsIGNvbG9yIDAuMjI1cyBsaW5lYXIsIHRyYW5zZm9ybSAwLjIyNXMgY3ViaWMtYmV6aWVyKDAuMjUsIDEsIDAuNSwgMik7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAgIC5zb2NpYWwtaWNvbnMgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgfVxuICAuc29jaWFsLWljb25zIGxpIGEge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cbiAgLnNvY2lhbC1pY29ucyBsaTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2VjMWMyZDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTI1KTtcbiAgfVxuICAuc29jaWFsLWljb25zIGxpOmhvdmVyIGEge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICB9XG4gIFxuICAubmF2LWJyZWFkY3J1bWJzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNHB4IDBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gIH1cbiAgLm5hdi1icmVhZGNydW1icyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cbiAgLm5hdi1icmVhZGNydW1icyBsaSBhIHtcbiAgICBjb2xvcjogI2VjMWMyZDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gIH1cbiAgLm5hdi1icmVhZGNydW1icyBsaS5jdXJyZW50LXBhZ2Uge1xuICAgIGNvbG9yOiAjNDQ0QzU3O1xuICB9XG4gIFxuICAuY3VzdG9tLWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuICAuY3VzdG9tLXJhZGlvIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAuY3VzdG9tLWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdICsgc3BhbixcbiAgLmN1c3RvbS1yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXSArIHNwYW4ge1xuICAgIHBhZGRpbmctbGVmdDogMmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgXG4gIC5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF0gKyBzcGFuOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwLjJlbTtcbiAgICB3aWR0aDogMS44ZW07XG4gICAgaGVpZ2h0OiAxLjhlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOWM5YzljO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgZm9udC1mYW1pbHk6IGZvbnRhd2Vzb21lO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAuY3VzdG9tLWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdOmZvY3VzICsgc3BhbjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICNEREQ7XG4gIH1cbiAgLmN1c3RvbS1jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgc3BhbjpiZWZvcmUge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcbiAgfVxuICAuY3VzdG9tLXJhZGlvIGlucHV0W3R5cGU9cmFkaW9dICsgc3BhbjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMC4yZW07XG4gICAgd2lkdGg6IDEuNjVlbTtcbiAgICBoZWlnaHQ6IDEuNjVlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOWM5YzljO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBmb250LXNpemU6IDAuN2VtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIH1cbiAgLmN1c3RvbS1yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXTpmb2N1cyArIHNwYW46YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6IGJsdWU7XG4gIH1cbiAgLmN1c3RvbS1yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgc3BhbjpiZWZvcmUge1xuICAgIGJvcmRlcjogNXB4IHNvbGlkICMwMDAwMDA7XG4gIH1cbiAgXG4gIC5uby13ZWJwIC5oZXJvIC5jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImh0dHBzOi8vd2VsbHNlbnRlcnByaXNlc2luYy5henVyZWVkZ2UubmV0L2NvbnRlbnQvaW1hZ2VzL3dlbGxzLWVtcGxveWVlcy5wbmdcIik7XG4gIH1cblxuICBcbiAgLmhlcm8ge1xuICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjNDQ0QzU3O1xuICAgIH1cbiAgfVxuICAuaGVybyAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogNDVweCAwIDIxMHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzMDBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNy41ZW0pIHtcbiAgICAuaGVybyAuY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDY1cHggMCAyMTBweDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVybyAuY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSByaWdodDtcbiAgICAgIHBhZGRpbmc6IDExNXB4IDA7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwMHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjguNzVlbSkge1xuICAgIC5oZXJvIC5jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1NTBweDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDgxLjI1ZW0pIHtcbiAgICAuaGVybyAuY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNjUwcHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5My43NWVtKSB7XG4gICAgLmhlcm8gLmNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDc1MHB4O1xuICAgIH1cbiAgfVxuICAuaGVybyAuaGVyby1jYWxsb3V0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGNvbG9yOiAjMmMyYzJjO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDI4LjEyNWVtKSB7XG4gICAgLmhlcm8gLmhlcm8tY2FsbG91dCB7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuNjI1ZW0pIHtcbiAgICAuaGVybyAuaGVyby1jYWxsb3V0IHtcbiAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8gLmhlcm8tY2FsbG91dCB7XG4gICAgICB3aWR0aDogNDAwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICAuaGVybyAuaGVyby1jYWxsb3V0IGgyIHtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgZm9udC1zaXplOiAzLjk0NzM2ODQyMTF2dztcbiAgICBjb2xvcjogI2VjMWMyZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjBweCkge1xuICAgIC5oZXJvIC5oZXJvLWNhbGxvdXQgaDIge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIxNnB4KSB7XG4gICAgLmhlcm8gLmhlcm8tY2FsbG91dCBoMiB7XG4gICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgfVxuICB9XG4gIC5oZXJvIC5oZXJvLWNhbGxvdXQgcCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8gLmhlcm8tY2FsbG91dCBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuICB9XG5cbiAgXG4gIC5ob21lcGFnZS1oZXJvIHtcbiAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5ob21lcGFnZS1oZXJvIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaG9tZXBhZ2UtaGVybyB7XG4gICAgICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB9XG4gIH1cbiAgLmhvbWVwYWdlLWhlcm8gLmhlcm8tbW9iaWxlLWltYWdlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSArIDUwcHgpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyA1MHB4KTtcbiAgICBtYXJnaW4tbGVmdDogLTI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ob21lcGFnZS1oZXJvIC5oZXJvLW1vYmlsZS1pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAuaG9tZXBhZ2UtaGVybyAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMjYwcHggMCAyMjBweDtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhvbWVwYWdlLWhlcm8gLmNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwcHggMHB4IDE1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cbiAgfVxuICAuaG9tZXBhZ2UtaGVybyAuaG9tZXBhZ2UtaGVyby1jYWxsb3V0IHtcbiAgICBjb2xvcjogIzJjMmMyYztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaG9tZXBhZ2UtaGVybyAuaG9tZXBhZ2UtaGVyby1jYWxsb3V0IHtcbiAgICAgIHdpZHRoOiA0MCU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAgIC5ob21lcGFnZS1oZXJvIC5ob21lcGFnZS1oZXJvLWNhbGxvdXQge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgIH1cbiAgfVxuICAuaG9tZXBhZ2UtaGVybyAuaG9tZXBhZ2UtaGVyby1jYWxsb3V0IGgxIHtcbiAgICBmb250LXNpemU6IDU4cHg7XG4gICAgZm9udC1zaXplOiA0Ljc2OTczNjg0MjF2dztcbiAgICBjb2xvcjogI2VjMWMyZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1MjQuMTM3OTMxMDM0NXB4KSB7XG4gICAgLmhvbWVwYWdlLWhlcm8gLmhvbWVwYWdlLWhlcm8tY2FsbG91dCBoMSB7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjE2cHgpIHtcbiAgICAuaG9tZXBhZ2UtaGVybyAuaG9tZXBhZ2UtaGVyby1jYWxsb3V0IGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogNThweDtcbiAgICB9XG4gIH1cbiAgLmhvbWVwYWdlLWhlcm8gLmhvbWVwYWdlLWhlcm8tY2FsbG91dCBwIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ob21lcGFnZS1oZXJvIC5ob21lcGFnZS1oZXJvLWNhbGxvdXQgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgfVxuICB9XG4gIC5jYWxsb3V0cyB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBtYXJnaW4tdG9wOiA0LjkzNDIxMDUyNjN2dztcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQuOTM0MjEwNTI2M3Z3O1xuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtbXMtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogODEwLjY2NjY2NjY2NjdweCkge1xuICAgIC5jYWxsb3V0cyB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIxNnB4KSB7XG4gICAgLmNhbGxvdXRzIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4MTAuNjY2NjY2NjY2N3B4KSB7XG4gICAgLmNhbGxvdXRzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjE2cHgpIHtcbiAgICAuY2FsbG91dHMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gIH1cbiAgXG4gIC5jYWxsb3V0LWNvbHVtbiB7XG4gICAgcGFkZGluZzogMCAwIDAgMzBweDtcbiAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICB9XG4gIC5jYWxsb3V0LWNvbHVtbiArIC5jYWxsb3V0LWNvbHVtbiB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNTBlbSkge1xuICAgIC5jYWxsb3V0LWNvbHVtbiB7XG4gICAgICAtbXMtZmxleDogMCAwIDMzLjMzMzMlO1xuICAgICAgICAgIGZsZXg6IDAgMCAzMy4zMzMzJTtcbiAgICB9XG4gICAgLmNhbGxvdXQtY29sdW1uICsgLmNhbGxvdXQtY29sdW1uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG4gIFxuICAuY2FsbG91dCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzMzMztcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5jYWxsb3V0IGgyIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgZm9udC1zaXplOiAyLjQ2NzEwNTI2MzJ2dztcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogODEwLjY2NjY2NjY2NjdweCkge1xuICAgIC5jYWxsb3V0IGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMTZweCkge1xuICAgIC5jYWxsb3V0IGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICB9XG4gIH1cbiAgXG4gIC5jYWxsb3V0LWxpbmsge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDFweCkgdHJhbnNsYXRlWigwKTtcbiAgfVxuICAuY2FsbG91dC1saW5rIGkge1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIH1cbiAgLmNhbGxvdXQtbGluazpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIC5jYWxsb3V0LWxpbms6aG92ZXIgaSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXVwO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cbiAgXG4gIC8qIEljb24gVXAgKi9cbiAgQGtleWZyYW1lcyBodnItaWNvbi11cCB7XG4gICAgMCUsIDUwJSwgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuICAgIDI1JSwgNzUlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpO1xuICAgIH1cbiAgfVxuICAuaHZyLWljb24tdXA6aG92ZXIgaSwgLmh2ci1pY29uLXVwOmZvY3VzIGksIC5odnItaWNvbi11cDphY3RpdmUgaSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGh2ci1pY29uLXVwO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC43NXM7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cbiAgXG4gIC5vdmVybGF5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB6LWluZGV4OiA1MDtcbiAgfVxuICBcbiAgLm9mZi1jYW52YXMtc2xpZGViYXIge1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBiYWNrZ3JvdW5kOiAjNDQ0QzU3O1xuICB9XG4gIC5vZmYtY2FudmFzLW5hdiB7XG4gICAgcGFkZGluZy10b3A6IDk5cHg7XG4gIH1cbiAgXG4gIC5vZmYtY2FudmFzLW5hdiA+IG9sIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5vZmYtY2FudmFzLW5hdiA+IG9sID4gbGkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1uYXYgPiBvbCA+IGxpLm5hdi1pdGVtLS1oYXMtY2hpbGRyZW4gc3Bhbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG4gICAgZm9udC1mYW1pbHk6IGZvbnRBd2Vzb21lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTZweDtcbiAgICBjb2xvcjogI2VjMWMyZDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgdG9wOiAxMHB4O1xuICB9XG4gIC5vZmYtY2FudmFzLW5hdiA+IG9sID4gbGkubmF2LWl0ZW0tLWhhcy1jaGlsZHJlbiBzcGFuOmhvdmVyOjphZnRlciB7XG4gICAgY29sb3I6ICM0NDRDNTc7XG4gIH1cbiAgLm9mZi1jYW52YXMtbmF2ID4gb2wgPiBsaS5uYXYtaXRlbS0taGFzLWNoaWxkcmVuIHNwYW4ubWludXM6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjA3N1wiO1xuICB9XG4gIC5vZmYtY2FudmFzLW5hdiA+IG9sID4gbGkgYSB7XG4gICAgcGFkZGluZzogMHB4IDBweCAyMHB4IDQ1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICNGMUYxREU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDU4cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgfVxuICAub2ZmLWNhbnZhcy1uYXYgPiBvbCA+IGxpIGE6aG92ZXIge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIGNvbG9yOiAjNDQ0QzU3O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICAub2ZmLWNhbnZhcy1uYXYgPiBvbCA+IGxpIG9sIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAub2ZmLWNhbnZhcy1uYXYgPiBvbCA+IGxpIG9sIGxpIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG4gIC5vZmYtY2FudmFzLW5hdiA+IG9sID4gbGkgb2wgbGkgYSB7XG4gICAgcGFkZGluZzogM3B4IDdweCAzcHggMThweDtcbiAgICBjb2xvcjogIzQ0NEM1NztcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1uYXYgPiBvbCA+IGxpIG9sIGxpIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogI2VjMWMyZDtcbiAgfVxuICAub2ZmLWNhbnZhcy1uYXYgPiB1bCB7XG4gICAgbWFyZ2luOiAxNXB4IDE1cHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5vZmYtY2FudmFzLW5hdiA+IHVsIGxpIHtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAub2ZmLWNhbnZhcy1uYXYgPiB1bCBsaTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLW5hdiA+IHVsIGxpIGEge1xuICAgIGNvbG9yOiAjNDQ0QzU3O1xuICB9XG4gIC5vZmYtY2FudmFzLW5hdiA+IHVsICsgdWwge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgXG4gXG4gIFxuXG4gIFxuICBodG1sIHtcbiAgICBjb2xvcjogIzQ0NEM1NztcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBmb250LXNpemU6IDEuMzk4MDI2MzE1OHZ3O1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDAxLjQxMTc2NDcwNTlweCkge1xuICAgIGh0bWwge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIxNnB4KSB7XG4gICAgaHRtbCB7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgfVxuICB9XG4gIFxuICBib2R5IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0QzU3O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICB9XG4gIFxuICAqLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICBcbiAgYSBpbWcge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuICBcbiAgYm9keS5zdHlsZWd1aWRlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxuICBcbiAgLnNnLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDQycHg7XG4gICAgcGFkZGluZy1yaWdodDogNDJweDtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNDAuNjE1ZW0pIHtcbiAgICAuc2ctY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG4gIFxuICAuc2ctY29sb3JzIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDEwcHg7XG4gIH1cbiAgXG4gIC5zZy1zd2F0Y2gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gIH1cbiAgXG4gIC5zdHlsZWd1aWRlIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAvKlxuICAgIGFzaWRlIHtcbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB9XG4gIFxuICAgIG1haW4ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI1MHB4KTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgICAqL1xuICB9XG4gIC5zdHlsZWd1aWRlIG1haW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG4gIC5zdHlsZWd1aWRlIGhyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuc3R5bGVndWlkZSAubmF2LXByaW1hcnkgPiB1bCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIFxuICAuc2ctc3ViaGVhZGluZyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM2NjY7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG4gIFxuICAuc2ctZGFyay1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzg5ODk4OTtcbiAgfVxuICBcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICAvKlxuICAgICAqIEluIGdlbmVyYWwsIGF2b2lkIHN0eWxpbmcgdGhpcyBlbGVtZW50LiBJdCBzZXJ2ZXMgYXMgYSB3cmFwcGVyIGZvclxuICAgICAqIC5wYWdlLWhlYWRlci0qIGNvbXBvbmVudHMgdG8gc2hvdy9oaWRlIHRoZW0gYmFzZWQgb24gdGhlIGJyb3dzZXIgd2lkdGguXG4gICAgICpcbiAgICAgKiBUaGlzIGFsbG93cyB1cyB0byByZW5kZXIgdGhlIC5wYWdlLWhlYWRlci0qIGNvbXBvbmVudHMgZGlyZWN0bHkgcmVnYXJkbGVzc1xuICAgICAqIG9mIHRoZSB3aWR0aCBvZiB0aGUgdmlld3BvcnQgc2ltcGx5IGJ5IHRha2luZyB0aGVtIG91dCBvZiB0aGUgLnBhZ2UtaGVhZGVyXG4gICAgICogZWxlbWVudC4gVXNlZnVsIGZvciB0aGUgc3R5bGVndWlkZS4gRG9uJ3QgaGF0ZSBtZS4gQmxhbWUgdGhlIHJlZC1oZWFkLlxuICAgICAqL1xuICAgIC8qIERlZmF1bHQsIG1vYmlsZS1maXJzdCBwYWdlIGhlYWRlciBzZXR1cCAqL1xuICAgIC8qIEhpZGUgLnBhZ2UtaGVhZGVyLSogY29tcG9uZW50cyBhY2NvcmRpbmcgdG8gdGhlIHdpZHRoIG9mIHZpZXdwb3J0ICovXG4gICAgLyogUHJpbnQgaGVhZGVyICovXG4gIH1cbiAgLnBhZ2UtaGVhZGVyIC5wYWdlLWhlYWRlci1mdWxsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5wYWdlLWhlYWRlciAucGFnZS1oZWFkZXItY29tcGFjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnBhZ2UtaGVhZGVyIC5wYWdlLWhlYWRlci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYWdlLWhlYWRlciAucGFnZS1oZWFkZXItZnVsbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLnBhZ2UtaGVhZGVyIC5wYWdlLWhlYWRlci1jb21wYWN0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5wYWdlLWhlYWRlciBodG1sLnByaW50IC5wYWdlLWhlYWRlci1mdWxsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5wYWdlLWhlYWRlciBodG1sLnByaW50IC5wYWdlLWhlYWRlci1jb21wYWN0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5wYWdlLWhlYWRlciBodG1sLnByaW50IC5wYWdlLWhlYWRlci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgQG1lZGlhIHByaW50IHtcbiAgICAucGFnZS1oZWFkZXIgLnBhZ2UtaGVhZGVyLWZ1bGwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLnBhZ2UtaGVhZGVyIC5wYWdlLWhlYWRlci1jb21wYWN0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5wYWdlLWhlYWRlciAucGFnZS1oZWFkZXItcHJpbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG4gIFxuICAvKlxuICAgKiBTb2NpYWwgbWVkaWEgaWNvbnMuXG4gICAqL1xuICAuaGVhZGVyLW5hdi1hdXggdWwgbGkuc29jaWFsLW1lZGlhLWljb24ge1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBtYXJnaW46IDAgMTVweCAwIDA7XG4gICAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgICBmb250LXNpemU6IDEuM2VtO1xuICB9XG4gIFxuICAub2ZmLWNhbnZhcy1uYXYgdWwgbGkuc29jaWFsLW1lZGlhLWljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbiAgfVxuICBcbiAgLypcbiAgICogRnVsbCBkZXNrdG9wIHZlcnNpb24gb2YgdGhlIGhlYWRlci4gQWxsIHRoZSBiZWxscyBhbmQgd2hpc3RsZXMuXG4gICAqL1xuICAucGFnZS1oZWFkZXItZnVsbCAucGFnZS1oZWFkZXItZnVsbC1jb250YWluZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKiBQb3NpdGlvbiB0aGUgYXV4IG5hdiAqL1xuICB9XG4gIC5wYWdlLWhlYWRlci1mdWxsIC5wYWdlLWhlYWRlci1mdWxsLWNvbnRhaW5lciAuaGVhZGVyLW5hdi1hdXgge1xuICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICAgIHotaW5kZXg6IDUwMDtcbiAgfVxuICBcbiAgLypcbiAgICogQ29tcGFjdCB2ZXJzaW9uIG9mIHRoZSBoZWFkZXIuIFVzdWFsbHkgZm9yIG1vYmlsZSBzY3JlZW5zLiBVc2UgdGhpcyBpZiBhZGFwdGluZ1xuICAgKiB0aGUgZnVsbCBkZXNrdG9wIHZlcnNpb24gdG8gYSBtb2JpbGUtZnJpZW5kbHkgdmVyc2lvbiBpcyB1bnJlYXNvbmFibGUuXG4gICAqL1xuICAucGFnZS1oZWFkZXItY29tcGFjdCB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICB9XG4gIC5wYWdlLWhlYWRlci1jb21wYWN0IC5wYWdlLWhlYWRlci1jb21wYWN0LWNvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIFxuICAvKlxuICAgKiBIZWFkZXIgZm9yIHByaW50aW5nXG4gICAqL1xuICAucGFnZS1mb290ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIC8qXG4gICAgICogQXZvaWQgc3R5bGluZyB0aGlzIGVsZW1lbnQuXG4gICAgICovXG4gIH1cbiAgLnBhZ2UtZm9vdGVyIC5mb290ZXItaW1nIHtcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5wYWdlLWZvb3RlciAuZm9vdGVyLWltZyBpbWcge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG4gIC5wYWdlLWZvb3RlciAuZm9vdGVyLWltZzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDAuN2VtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gNzVweCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgI2VjMWMyZDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAucGFnZS1mb290ZXIgLmZvb3Rlci1pbWc6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDAuN2VtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gNzVweCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgI2VjMWMyZDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIFxuICAvKlxuICAgKiBGdWxsIGRlc2t0b3AgdmVyc2lvbiBvZiB0aGUgZm9vdGVyLiBBbGwgdGhlIGJlbGxzIGFuZCB3aGlzdGxlcy5cbiAgICovXG4gIC5wYWdlLWZvb3Rlci1tYWluIHtcbiAgICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtZm9vdGVyLW1haW4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLnBhZ2UtZm9vdGVyLW1haW4gLnBhZ2UtZm9vdGVyLW1haW4tY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEzMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIFxuICAvKlxuICAgKiBCb3R0b20gb2YgZm9vdGVyXG4gICAqL1xuICAucGFnZS1mb290ZXItYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kOiAjZDBkMGQwO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWltZyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAucGFnZS1mb290ZXItYm90dG9tIC5wYWdlLWZvb3Rlci1ib3R0b20tY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDMycHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtZm9vdGVyLWJvdHRvbSAucGFnZS1mb290ZXItYm90dG9tLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogNDVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0NXB4O1xuICAgIH1cbiAgfVxuICBcbiAgLmludGVyaW9yLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5pbnRlcmlvci1oZWFkZXIgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG4gIH1cbiAgLmludGVyaW9yLWhlYWRlciBmaWd1cmUgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmludGVyaW9yLWhlYWRlciBmaWd1cmUgaW1nLmRlc2t0b3AtdmVyc2lvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pbnRlcmlvci1oZWFkZXIgZmlndXJlIGltZy5kZXNrdG9wLXZlcnNpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG4gIC5pbnRlcmlvci1oZWFkZXIgZmlndXJlIGltZy5tb2JpbGUtdmVyc2lvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW50ZXJpb3ItaGVhZGVyIGZpZ3VyZSBpbWcubW9iaWxlLXZlcnNpb24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLmludGVyaW9yLWhlYWRlciBmaWd1cmUgZmlnY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuaW50ZXJpb3ItaGVhZGVyIGgxIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweCA0MHB4IDE1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweCA1MHB4IDAgMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW50ZXJpb3ItaGVhZGVyIGgxIHtcbiAgICAgIHBhZGRpbmc6IDM1cHggNzBweCAxNXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogODBweCA4MHB4IDAgMDtcbiAgICB9XG4gIH1cbiAgLmludGVyaW9yLWhlYWRlciAubmF2LWJyZWFkY3J1bWJzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG4gIFxuICAuaW50ZXJpb3ItY29udGVudCB7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmludGVyaW9yLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogNTBweCA0MHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODQuMzc1ZW0pIHtcbiAgICAuaW50ZXJpb3ItY29udGVudCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDEzMHB4O1xuICAgIH1cbiAgfVxuXG4gLmhlYWRlci1uYXYtYXV4IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG4gIFxuICAuaGVhZGVyLW5hdi1wcmltYXJ5IHtcbiAgICB0b3A6IDM1cHg7XG4gICAgei1pbmRleDogNTUwO1xuICB9XG4gIFxuICBcbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgbWFyZ2luOiAwIDAgMThweCAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgY29sb3I6ICM0NDRDNTc7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuICBcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBmb250LXNpemU6IDQuMTExODQyMTA1M3Z3O1xuICAgIGNvbG9yOiAjZWMxYzJkO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3MjkuNnB4KSB7XG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIxNnB4KSB7XG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgIH1cbiAgfVxuICBcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICBmb250LXNpemU6IDIuOTYwNTI2MzE1OHZ3O1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4NDQuNDQ0NDQ0NDQ0NHB4KSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIxNnB4KSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgIH1cbiAgfVxuICBcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICBmb250LXNpemU6IDIuMTM4MTU3ODk0N3Z3O1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI4LjkyMzA3NjkyMzFweCkge1xuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMTZweCkge1xuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICB9XG4gIH1cbiAgXG4gIGg0LCBoNSwgaDYge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXNpemU6IDEuNjQ0NzM2ODQyMXZ3O1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDk0LjRweCkge1xuICAgIGg0LCBoNSwgaDYge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIxNnB4KSB7XG4gICAgaDQsIGg1LCBoNiB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuICB9XG4gIFxuICBwICsgaDIsIHAgKyBoMyB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuICBcbiAgLyogTGlua3MgKi9cbiAgYSB7XG4gICAgY29sb3I6ICNlYzFjMmQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgXG4gIC8qIEJsb2NrcXVvdGVzICovXG4gIGJsb2NrcXVvdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgYmxvY2txdW90ZSBwOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIGJsb2NrcXVvdGUgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIFxuICAvKiBMaXN0cyAqL1xuICB1bCwgb2wge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuICB1bCB1bCwgdWwgb2wsIG9sIHVsLCBvbCBvbCB7XG4gICAgbWFyZ2luOiAwcHggMHB4IDBweCAwcHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIHVsIHVsIGxpLCB1bCBvbCBsaSwgb2wgdWwgbGksIG9sIG9sIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIH1cbiAgXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgdWwuaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgdWwuaW5saW5lIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuICB1bCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIH1cbiAgdWwgbGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJhY2tncm91bmQ6ICNlYzFjMmQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgbGVmdDogMHB4O1xuICB9XG4gIHVsLm5vLWJ1bGxldHMge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICB1bC5uby1idWxsZXRzIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICB1bC5uby1idWxsZXRzIGxpOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBcbiAgb2wgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgXG4gIGFbaHJlZl49dGVsXSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gICIsIi5vdXItc3Rvcnktc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UwREJEMDtcbiAgICBwYWRkaW5nOiAzMHB4IDAgNTBweCAwO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDAgMDtcbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMjRweDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lcl9jb3B5IHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZGVza3RvcC1sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTclO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZGVza3RvcC1yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ3JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFBSaWdodFNhbnMtVGlnaHRNZWRpdW0nO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQUCBNb3JpLVJlZ3VsYXInO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMyNTI4MkE7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLmJvdHRvbS1tYXJnaW4tbm9uZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jb250YWluZXItZnVsbCB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIyMHB4O1xuICAgICAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgODBweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICB9XG5cbiAgICBcbn1cbiIsIi50aGUtZm95ZXItc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UwREJEMDtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiA0MnB4IDI0cHg7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgcGFkZGluZzogODBweCA4MHB4IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lcl9jb3B5IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5kZXNrdG9wLWxlZnQge1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NyU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5kZXNrdG9wLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDclO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW1nLmZveWVyLWxvZ28ge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE4MHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1BQUmlnaHRTYW5zLVRpZ2h0TWVkaXVtJztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzRFNkQ4MTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFAgTW9yaS1SZWd1bGFyJztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzI1MjgyQTtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzcwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY3RhLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNjFweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJ0bi5idG4tcHJpbWFyeXtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFAgTW9yaS1SZWd1bGFyJztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzk3NDkwMjtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTc0OTAyO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYnRuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzQ0NEM1NztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJnYigyMjQsIDIxOSwgMjA4KTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzQ0NEM1NztcbiAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICYuZGVza3RvcCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5tb2JpbGUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSAgICBcbn1cbiIsIi5hbWVuaXRpZXMtc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFMERCRDA7XG4gICAgICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAgMjAlLCAxMDAlIDAsIDEwMCUgODAlLCAwIDEwMCUpO1xuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwJSwgMTAwJSAwLCAxMDAlIDkwJSwgMCAxMDAlKTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGJvdHRvbTogODVweDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwIDIwJSwgMTAwJSAwLCAxMDAlIDUwJSwgMCAxMDAlKTtcbiAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCUsIDEwMCUgMCwgMTAwJSA1MCUsIDAgMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMjRweDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA4MHB4IDgwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAucmVzcG9uc2l2ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGVuZDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lcl9jb3B5IHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1NTBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29udGVudC1jb250YWluZXIge1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQUFJpZ2h0U2Fucy1UaWdodE1lZGl1bSc7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDQ0QzU3O1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogODVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1BQIE1vcmktUmVndWxhcic7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzI1MjgyQTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDczMXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAzNHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lcl9jb3B5IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIGltZy56by1sb2dvIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTgwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1BQUmlnaHRTYW5zLVRpZ2h0TWVkaXVtJztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzRFNkQ4MTtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFAgTW9yaS1SZWd1bGFyJztcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzI1MjgyQTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAuc2xpZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzNSU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTNweCBhdXRvIDA7XG4gICAgICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0YxRjFERTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjFGMURFO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRjFGMURFO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gIFxuIFxuICAgICBcbn1cbiIsIi5uZWlnaGJvcmhvb2Qtc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ0NEM1NztcbiAgICBjb2xvcjogI0YxRjFERTtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDI0cHggNTBweDtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA4MHB4IDgwcHggNDBweDtcbiAgICAgICAgfVxuICAgICAgICAuY29udGVudC1jb250YWluZXIge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFBSaWdodFNhbnMtVGlnaHRNZWRpdW0nO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0YxRjFERTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogODVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFAgTW9yaS1SZWd1bGFyJztcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRjFGMURFO1xuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkxN3B4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byA2MHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0YxRjFERTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubW9iaWxlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZGVza3RvcCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAtby1vYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jb2wtbGVmdCB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY29sLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG5cbiAgICAgICAgfVxuICAgICAgIFxuICAgIH0gXG4gICAgLm1hcC1jb250YWluZXIge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgODBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbWcubWFwe1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjFGMURFO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgXG4gICAgICAgICYubW9iaWxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmRlc2t0b3Age1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICBcbn1cblxuIiwiLm9wcG9ydHVuaXRpZXMtc2VjdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UwREJEMDtcbiAgICBjb2xvcjogI0UwREJEMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0QzU3O1xuICAgICAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbigwIDAlLCAxMDAlIDAsIDEwMCUgMTAwJSwgMCA5MCUpO1xuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwJSwgMTAwJSAwLCAxMDAlIDEwMCUsIDAgOTAlKTtcbiAgICAgICAgXG4gICAgICAgIFxuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCUsIDEwMCUgMCwgMTAwJSAxMDAlLCAwIDUwJSk7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwJSwgMTAwJSAwLCAxMDAlIDEwMCUsIDAgNTAlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogNTBweCAyNHB4IDEwMHB4O1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDgwcHggODBweCAyMDBweDtcblxuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgLW1zLWZsZXgtcGFjazogZW5kO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvcHktY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTRweDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQUFJpZ2h0U2Fucy1UaWdodE1lZGl1bSc7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGMUYxREU7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQUCBNb3JpLVJlZ3VsYXInO1xuICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRjFGMURFO1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDI4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICBcblxuICAgICAgICAgICAgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jdGEtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYnRuLmJ0bi1zZWNvbmRhcnl7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1BQIE1vcmktUmVndWxhcic7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGMUYxREU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMzBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0YxRjFERTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzO1xuICAgICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgICAgLmJ0bi5idG4tc2Vjb25kYXJ5OmhvdmVye1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjFGMURFO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzQ0NEM1NztcbiAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgICAgICYubW9iaWxlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmRlc2t0b3Age1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9ICBcbiBcbiAgICAgXG59IiwiLmFib3V0LXVzLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMERCRDA7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZzogNTBweCAyNHB4O1xuICAgICAgLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFBSaWdodFNhbnMtVGlnaHRNZWRpdW0nO1xuICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgY29sb3I6ICM0NDRDNTc7XG4gICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4NXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQUCBNb3JpLVJlZ3VsYXInO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICMyNTI4MkE7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwNnB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lcl9jb3B5IHtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgIGltZy5mb3llci1sb2dvIHtcbiAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTgwcHg7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgLnNsaWRlci1jb250YWluZXIge1xuICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlO1xuICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzNSU7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDEzcHggYXV0byAwO1xuICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0YxRjFERTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgJi5zbGljay1hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjFGMURFO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0YxRjFERTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgIH1cbiAgfSAgXG5cbiAgIFxufVxuIiwiLnBhZ2UtZm9vdGVyIHtcbiAgICAucGFnZS1mb290ZXItdG9wLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM0RTZEODE7XG4gICAgICAgIGNvbG9yOiAjRjFGMURFO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDk3cHggMCA1MHB4O1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGVuZDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1BQUmlnaHRTYW5zLVRpZ2h0TWVkaXVtJztcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0YxRjFERTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIyNnB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDYwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxOCU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0YxRjFERTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjMlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMzBweCBhdXRvIDA7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRjFGMURFO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbnRhY3QtaW5mbyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDglO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE4JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcCxcbiAgICAgICAgICAgICAgICAuZW1haWwsXG4gICAgICAgICAgICAgICAgLnBob25lIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdQUCBNb3JpLVJlZ3VsYXInO1xuICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRjFGMURFO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJi5uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmltZy1jb250YWluZXIge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgOTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjY0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5wYWdlLWZvb3Rlci1ib3R0b20ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNDQ0QzU3O1xuICAgICAgICBjb2xvcjogI0YxRjFERTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGMUYxREU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZvb3Rlci1uYXYtYm90dG9tIHtcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyN3B4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnUFAgTW9yaS1SZWd1bGFyJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4iLCIuaGVyby1zZWN0aW9uIHtcbiAgXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxuICAuY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaGVyb19tb2JpbGUucG5nXCIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBhZGRpbmc6IDY1cHggMjRweCA3MHB4O1xuICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaGVyb19kZXNrdG9wLnBuZ1wiKTtcbiAgICAgIHBhZGRpbmc6IDE2MHB4IDkwcHggODBweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIFxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgcGFkZGluZzogMjQwcHggOTBweCAyMDBweDtcbiAgICB9XG4gICAgLmhlcm8tc2VjdGlvbi1jYWxsb3V0IHtcbiAgICAgIGNvbG9yOiAjRjFGMURFO1xuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDVweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMzMwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnUFBSaWdodFNhbnMtVGlnaHRNZWRpdW0nO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgIG1heC13aWR0aDogNzIlO1xuICAgICAgICAvKiBvciA4MCUgKi9cbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgLyogVGVydGlhcnkvTHV4IENyZWFtICovXG4gICAgICAgIGNvbG9yOiAjRjFGMURFO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTAwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDg1cHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBjb2xvcjogI0YxRjFERTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMjBweCkge1xuICAgICAgICAgIG1heC13aWR0aDogNDYlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdQUCBNb3JpLVJlZ3VsYXInO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgIGNvbG9yOiAjRjFGMURFO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgICAgIG1heC13aWR0aDogMjglO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBQUmlnaHRTYW5zLVRpZ2h0TWVkaXVtXCI7XG4gIHNyYzogdXJsKFwiL2ZvbnRzL1BQUmlnaHRTYW5zLVRpZ2h0TWVkaXVtLm90ZlwiKSxcbiAgdXJsKCcvZm9udHMvUFBSaWdodFNhbnMtVGlnaHRNZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoJy9mb250cy9QUFJpZ2h0U2Fucy1UaWdodE1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCcvZm9udHMvUFBSaWdodFNhbnMtVGlnaHRNZWRpdW0udHRmJykgZm9ybWF0KCd0dGYnKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiUFAgTW9yaS1SZWd1bGFyXCI7XG4gIHNyYzogdXJsKFwiL2ZvbnRzL1BQTW9yaS1SZWd1bGFyLm90ZlwiKSxcbiAgdXJsKCcvZm9udHMvUFBNb3JpLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICB1cmwoJy9mb250cy9QUE1vcmktUmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgdXJsKCcvZm9udHMvUFBNb3JpLVJlZ3VsYXIudHRmJykgZm9ybWF0KCd0dGYnKVxuICA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn0iLCIuZmEuZmEtYmFycyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiB1cmwoXCIuLi9pbWcvbWVudS5zdmdcIik7XG4gIH1cbn1cbi5hbmNob3ItbGluayB7XG4gICY6aG92ZXIsIFxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn0iXX0= */
