 /**
 *
 * Gillen Brewer School - default
 * @link https://gillenbrewercom.finalsite.com
 * Built By: David Decker
 * Project Manager: Ralph Purificato
 * Designer: 
 *
 */

@charset "UTF-8";
/** 
 * Html5 Placeholder Polyfill - v2.0.9 - 2014-01-21 
 * web: http://blog.ginader.de/dev/jquery/HTML5-placeholder-polyfill/ 
 * issues: https://github.com/ginader/HTML5-placeholder-polyfill/issues 
 * Copyright (c) 2014 Dirk Ginader; Licensed MIT, GPL 
 */
span.placeholder {
  position: absolute;
  font-size: 75%;
  color: #999;
  font-family: sans-serif;
  padding: 4px 3px;
  z-index: 1;
  cursor: text;
}

span.placeholder-hide-except-screenreader {
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

span.placeholder-hide {
  display: none;
}

label.visuallyhidden-with-placeholder {
  height: auto !important;
  overflow: visible !important;
  position: absolute !important;
  left: -999em;
}

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

.fsAccordion.fsPanelIconBefore .fsPanel.fsStateOpen > header h2::before,
.fsAccordion.fsPanelIconAfter .fsPanel.fsStateOpen > header h2::after,
.fsAccordion.fsPanelIconAfter .fsPanel > header h2::after,
.fsAccordion.fsPanelIconBefore .fsPanel > header h2::before, .fsCalendarMonthBrowser .fsCalendarPrevMonth:before, .fsCalendarMonthBrowser .fsCalendarNextMonth:before, #fsPageBodyWrapper .navigation.tier > header .fsElementHeaderContent:after, section.off-canvas .button.off-canvas-trigger:after, .navigation.social a[href*='facebook']:after, .navigation.social a[href*='google']:after, .navigation.social a[href*='instagram']:after, .navigation.social a[href*='linkedin']:after, .navigation.social a[href*='blog']:after, .navigation.social a[href*='twitter']:after, .navigation.social a[href*='youtube']:after, form.gsc-search-box-tools td.gsc-search-button:after, #fsHeader .utilities .button.search-trigger:after,
#fsHeader .utilities .button.off-canvas-trigger:after, #fsHeader .navigation.container .button.search-trigger:after, .sub-navigation > header .fsElementHeaderContent:after, .home .fsPlayer.masthead .fsElementContent:after, .home .cluster button:after {
  font-family: "IcoMoon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
}

@keyframes animate-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
/*! structure - layouts v0.0.1 */
* {
  box-sizing: border-box;
}

*:before,
*:after {
  box-sizing: border-box;
  pointer-events: none;
}

html {
  font-family: "open-sans", sans-serif;
  background: #273446;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -moz-font-feature-settings: 'liga';
  font-feature-settings: 'liga';
}

body {
  font-size: 16px;
  line-height: 1.5;
  color: #1d1d1d;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  font-weight: normal;
}

h1, .home .fsPlayer.masthead .slide .details .title, .h1 {
  font-size: 3.4375em;
  line-height: 1.0909090909;
  margin-bottom: 13px;
  color: #273446;
  font-family: "garamond-premier-pro", Times, serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: 500;
}

h2, .h2 {
  font-size: 2.25em;
  line-height: 1.1111111111;
  margin-bottom: 7px;
  color: #273446;
  font-family: "garamond-premier-pro", Times, serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: normal;
}

h3, .fsCalendar > header .fsElementTitle, .content-block > header .fsElementTitle, .fsPostElement > header .fsElementTitle,
.fsNews > header .fsElementTitle, #fsFooter > .fsBanner header .fsElementTitle, .h3 {
  font-size: 1.25em;
  line-height: 1.5;
  margin-bottom: 0;
  color: #1d1d1d;
  font-family: "open-sans", sans-serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: 600;
}

h4, .h4 {
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 0;
  color: #1d1d1d;
  font-family: "open-sans", sans-serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: 600;
}

h5, .h5 {
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 0;
  color: #1d1d1d;
  font-family: "open-sans", sans-serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: 600;
  text-transform: uppercase;
}

h6, .fsCalendar .fsTitle, .fsPostElement .fsTitle,
.fsNews .fsTitle, .h6 {
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 0;
  color: #1d1d1d;
  font-family: "open-sans", sans-serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: 600;
}

p {
  margin-top: 0;
  margin-bottom: 15px;
}

a {
  text-decoration: none;
  color: #007737;
  transition: background .3s, color .3s;
}
a:hover {
  color: #0072b0;
}

ul,
ol {
  padding-left: 20px;
  margin-top: 15px;
  margin-bottom: 15px;
}

.fs_style_23,
table.styled, .fs_style_24,
table.styled.header-row {
  margin-top: 20px;
  margin-bottom: 20px;
  width: 100%;
  overflow: hidden;
  border-spacing: 0;
}
.fs_style_23 tr:first-child th,
table.styled tr:first-child th, .fs_style_24 tr:first-child th, .fs_style_23 tr:first-child td,
table.styled tr:first-child td, .fs_style_24 tr:first-child td {
  border-top: 1px solid #bebebe;
  overflow: hidden;
}
.fs_style_23 tr:last-child,
table.styled tr:last-child, .fs_style_24 tr:last-child {
  border-bottom: 1px solid #bebebe;
}
.fs_style_23 tr:last-child th,
table.styled tr:last-child th, .fs_style_24 tr:last-child th, .fs_style_23 tr:last-child td,
table.styled tr:last-child td, .fs_style_24 tr:last-child td {
  overflow: hidden;
}
.fs_style_23 th,
table.styled th, .fs_style_24 th,
table.styled.header-row th,
.fs_style_23 td,
table.styled td,
.fs_style_24 td,
table.styled.header-row td {
  padding: 12px 15px;
  vertical-align: top;
  background-color: transparent;
}
.fs_style_23 th:first-child,
table.styled th:first-child, .fs_style_24 th:first-child,
.fs_style_23 td:first-child,
table.styled td:first-child,
.fs_style_24 td:first-child {
  border-left: 1px solid #bebebe;
}
.fs_style_23 th:last-child,
table.styled th:last-child, .fs_style_24 th:last-child,
.fs_style_23 td:last-child,
table.styled td:last-child,
.fs_style_24 td:last-child {
  border-right: 1px solid #bebebe;
}
.fs_style_23 th,
table.styled th, .fs_style_24 th,
table.styled.header-row th {
  text-align: left;
  font-weight: 700;
}
.fs_style_23 tr:nth-of-type(odd) td,
table.styled tr:nth-of-type(odd) td, .fs_style_24 tr:nth-of-type(odd) td {
  background-color: #dedede;
}

.fs_style_24 > tr:first-child td, .fs_style_24 > tbody tr:first-child td,
table.styled.header-row > tr:first-child td,
table.styled.header-row > tbody tr:first-child td {
  padding: 12px 15px;
  background-color: #273446;
  color: #fff;
  font-family: "open-sans", sans-serif;
  letter-spacing: normal;
  font-style: normal;
  font-size: 16px;
  line-height: 24px;
  border: 1px solid #273446;
  font-weight: 600;
  text-transform: uppercase;
  text-align: center;
}

img,
canvas,
video,
svg {
  height: auto;
  max-width: 100%;
}

iframe {
  border: 0;
  max-width: 100%;
}

.fs_style_27,
blockquote {
  display: block;
  position: relative;
  margin: 30px 0;
  padding-left: 50px;
  font-size: 30px;
  line-height: 1.2;
  color: #007737;
  font-family: "garamond-premier-pro", Times, serif;
  letter-spacing: normal;
  font-style: italic;
  font-weight: normal;
}
.fs_style_27:before,
blockquote:before {
  /*
      position: absolute;
      right: 100%;
      top: 0;
      content: '\201C';
  */
}
.fs_style_27 > .fs_style_28, .fs_style_27 > cite,
blockquote > .fs_style_28,
blockquote > cite {
  margin-top: 4px;
}
.fs_style_27 + .fs_style_28, .fs_style_27 + cite,
blockquote + .fs_style_28,
blockquote + cite {
  margin-left: 50px;
  margin-top: -26px;
  margin-bottom: 30px;
}

.fs_style_28,
cite {
  display: block;
  margin: 20px 0;
  font-size: 16px;
  line-height: 1.5;
  color: #8f8f8f;
  font-family: "open-sans", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.fs_style_28:before,
cite:before {
  content: '~ ';
}

@font-face {
  font-family: "IcoMoon";
  src: url("/uploaded/themes/default/fonts//icomoon/torrington.eot?1180torrington");
  src: url("/uploaded/themes/default/fonts//icomoon/torrington.eot?#iefix?1180torrington") format("embedded-opentype"), url("/uploaded/themes/default/fonts//icomoon/torrington.woff2?1180torrington") format("woff2"), url("/uploaded/themes/default/fonts//icomoon/torrington.ttf?1180torrington") format("truetype"), url("/uploaded/themes/default/fonts//icomoon/torrington.woff?1180torrington") format("woff"), url("/uploaded/themes/default/fonts//icomoon/torrington.svg?1180#torrington") format("svg");
  font-weight: 400;
  font-style: normal;
}
[class^="icon-"], [class*=" icon-"] {
  font-family: "IcoMoon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-plus:before {
  content: "";
}

.icon-minus:before {
  content: "";
}

.icon-close:before {
  content: "";
}

.icon-chevron-left:before {
  content: "";
}

.icon-chevron-right:before {
  content: "";
}

.icon-chevron-up:before {
  content: "";
}

.icon-chevron-down:before {
  content: "";
}

.icon-angle-left:before {
  content: "";
}

.icon-angle-right:before {
  content: "";
}

.icon-angle-up:before {
  content: "";
}

.icon-angle-down:before {
  content: "";
}

.icon-facebook:before {
  content: "";
}

.icon-twitter:before {
  content: "";
}

.icon-linkedin:before {
  content: "";
}

.icon-youtube-play:before {
  content: "";
}

.icon-feed:before {
  content: "";
}

.icon-google-plus:before {
  content: "";
}

.icon-instagram:before {
  content: "";
}

.icon-search:before {
  content: "";
}

.icon-bars:before {
  content: "";
}

.icon-spinner:before {
  content: "";
}

#fsPageBodyWrapper {
  padding-right: 20px;
  padding-left: 20px;
  padding-top: 40px;
  padding-bottom: 40px;
  background: #fff;
  overflow: hidden;
  position: relative;
  z-index: 0;
}
.has-tier-navigation #fsPageBodyWrapper {
  padding-top: 0px;
  padding-bottom: 0px;
}
@media (min-width: 600px) {
  .has-tier-navigation #fsPageBodyWrapper {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

#fsPageBody {
  position: relative;
  margin: 0 auto;
  max-width: 1180px;
}
.home #fsPageBody {
  margin: 0;
  max-width: none;
}

#fsBannerLeft {
  float: none;
  margin-bottom: 20px;
  width: 100%;
  width: auto;
}
@media (min-width: 600px) {
  #fsBannerLeft {
    float: left;
  }
}
@media (min-width: 600px) {
  #fsBannerLeft {
    padding-right: 40px;
    display: block;
    width: 31.4285714286%;
  }
  .fsOverrideLeftBanner #fsBannerLeft {
    display: none !important;
  }
}
@media (min-width: 900px) {
  #fsBannerLeft {
    width: 23.7288135593%;
  }
}

.fsBannerLeft.mobile {
  display: block;
}
@media (min-width: 600px) {
  .fsBannerLeft.mobile {
    display: none;
  }
}

#fsPageContent {
  float: none;
  margin-bottom: 20px;
  width: 100% !important;
  margin: 0;
}
@media (min-width: 600px) {
  #fsPageContent {
    float: left;
  }
}
@media (min-width: 600px) {
  .fsHasRightBanner #fsPageContent {
    width: 68.6440677966% !important;
  }
}
@media (min-width: 600px) {
  .fsHasLeftBanner #fsPageContent {
    width: 68.5714285714% !important;
  }
}
@media (min-width: 600px) {
  .fsHasLeftBanner.fsOverrideLeftBanner #fsPageContent {
    width: 100% !important;
  }
}
.fsHasLeftBanner.fsHasRightBanner #fsPageContent {
  zoom: 1;
}
.fsHasLeftBanner.fsHasRightBanner #fsPageContent:after {
  display: table;
  clear: both;
  content: '';
}
@media (min-width: 600px) {
  .fsHasLeftBanner.fsHasRightBanner #fsPageContent {
    width: 68.5714285714% !important;
  }
}
@media (min-width: 900px) {
  .fsHasLeftBanner.fsHasRightBanner #fsPageContent {
    width: 44.9152542373% !important;
  }
}
@media (min-width: 600px) {
  .fsOverrideLeftBanner .fsHasLeftBanner.fsHasRightBanner.fsOverrideLeftBanner #fsPageContent {
    width: 100% !important;
  }
}

#fsBannerRight {
  float: none;
  margin-bottom: 20px;
  width: 100%;
  overflow: hidden;
}
@media (min-width: 600px) {
  #fsBannerRight {
    float: left;
  }
}
@media (min-width: 600px) {
  #fsBannerRight {
    padding-left: 70px;
    width: 31.3559322034%;
  }
}
@media (min-width: 600px) {
  .fsHasLeftBanner #fsBannerRight {
    width: 68.5714285714%;
    margin-left: 31.4285714286%;
    padding-left: 0;
  }
}
@media (min-width: 900px) {
  .fsHasLeftBanner #fsBannerRight {
    padding-left: 70px;
    width: 31.3559322034%;
    margin: 0;
  }
}
@media (min-width: 600px) {
  .fsHasLeftBanner.fsOverrideLeftBanner #fsBannerRight {
    width: 100% !important;
    margin-left: 0;
  }
}

@media (min-width: 600px) {
  .fsLayout {
    margin-right: -20px;
    margin-left: -20px;
  }
}
.fsLayout .fsDiv {
  float: none;
  margin-bottom: 20px;
  width: 100%;
}
@media (min-width: 600px) {
  .fsLayout .fsDiv {
    float: left;
  }
}
@media (min-width: 600px) {
  .fsLayout .fsDiv {
    padding-right: 20px;
    padding-left: 20px;
  }
}

@media (min-width: 600px) {
  .fsTwoColumnLayout .fsDiv {
    width: 50%;
  }
}

@media (min-width: 900px) {
  .fsThreeColumnLayout .fsDiv {
    width: 33.3333333333%;
  }
}

@media (min-width: 600px) {
  .fsFourColumnLayout .fsDiv {
    width: 50%;
  }
}
@media (min-width: 1180px) {
  .fsFourColumnLayout .fsDiv {
    width: 25%;
  }
}

.fsLayout .fsStyleTwoThirds {
  width: 100%;
}
@media (min-width: 1180px) {
  .fsLayout .fsStyleTwoThirds {
    width: 66.6666666667%;
  }
}
.fsLayout .fsStyleOneThird {
  width: 100%;
}
@media (min-width: 1180px) {
  .fsLayout .fsStyleOneThird {
    width: 33.3333333333%;
  }
}

.fsAccordion {
  margin-bottom: 20px;
}
.fsAccordion .fsPanel {
  margin-bottom: 1px;
}
.fsAccordion .fsPanel > header {
  transition: all 0.333s;
  cursor: pointer;
  background: #273446;
  border: 1px solid transparent;
}
.fsAccordion .fsPanel > header h2 {
  transition: all 0.333s;
  margin-bottom: 0;
  display: block;
  font-size: 16px;
  line-height: 24px;
  padding: 12px 15px;
  color: #fff;
  font-family: "open-sans", sans-serif;
  text-transform: uppercase;
  font-weight: 600;
}
.fsAccordion .fsPanel > header h2:before {
  font-family: "IcoMoon";
}
.fsAccordion .fsPanel > header:hover {
  background: #0072b0;
  border-color: transparent;
}
.fsAccordion .fsPanel > header:hover h2 {
  color: #fff;
}
.fsAccordion .fsPanel > .fsElementContent {
  border: 1px solid #bebebe;
  border-top: none;
}
.fsAccordion .fsPanel.fsStateOpen > header {
  background: #fff;
  border-color: #bebebe;
  border-bottom-color: transparent;
}
.fsAccordion .fsPanel.fsStateOpen > header h2 {
  color: #273446;
}
.fsAccordion .fsPanel.fsStateOpen > header h2:before {
  content: "";
}

.fsAccordion.fsPanelIconBefore .fsPanel.fsStateOpen > header h2::before,
.fsAccordion.fsPanelIconAfter .fsPanel.fsStateOpen > header h2::after,
.fsAccordion.fsPanelIconAfter .fsPanel > header h2::after,
.fsAccordion.fsPanelIconBefore .fsPanel > header h2::before {
  content: "";
  font-size: 24px;
  border: none;
  width: auto;
  height: auto;
}

.fsAccordion.fsPanelIconBefore .fsPanel.fsStateOpen > header h2::before,
.fsAccordion.fsPanelIconAfter .fsPanel.fsStateOpen > header h2::after {
  content: "";
}

.fsAccordion.fsPanelIconAfter .fsPanel > header h2::after,
.fsAccordion.fsPanelIconBefore .fsPanel > header h2::before {
  content: "";
}

.fsAccordion.fsPanelIconBefore .fsPanel > header h2::before {
  margin: -3px 20px 0 0;
}

.fsAccordion.fsPanelIconAfter .fsPanel > header h2:before {
  display: none;
}
.fsAccordion.fsPanelIconAfter .fsPanel > header h2:after {
  margin: 0 0 0 20px;
  float: right;
}

/*! elements - calendar v0.0.1 */
.fsCalendar {
  margin-top: 20px;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.fsCalendar > header {
  border-top: 5px solid #000;
  padding-top: 15px;
}
.fsCalendar > header .fsElementTitle {
  margin-bottom: 15px;
}
.fsCalendar:first-child {
  margin-top: 0;
}
.fsCalendar:last-child {
  margin-bottom: 0;
}
.fsCalendar img {
  border-bottom: 5px solid #007737;
}
.fsCalendar article {
  margin-top: 20px;
  margin-bottom: 20px;
}
.fsCalendar article:first-child {
  margin-top: 0;
}
.fsCalendar .fsTitle, .fsCalendar .fsTitle a {
  color: #1d1d1d;
}
.fsCalendar .fsTitle a:hover {
  color: #007737;
}
.fsCalendar .fsDate {
  margin: 0;
  padding: 0;
  font-size: 14px;
  line-height: 1.1428571429;
  color: #007737;
  letter-spacing: normal;
  font-style: normal;
  font-weight: normal;
}
.fsCalendar .fsTimeRange {
  font-size: 14px;
  line-height: 1.4285714286;
  letter-spacing: normal;
  font-style: normal;
  font-weight: normal;
}
.fsCalendar .fsLocation {
  font-size: 14px;
  line-height: 1.4285714286;
  letter-spacing: normal;
  font-style: normal;
  font-weight: normal;
}

.fsCalendarMonthBrowser .fsCalendarPrevMonth, .fsCalendarMonthBrowser .fsCalendarNextMonth {
  color: transparent;
  background-color: transparent;
  border: none;
  position: relative;
  line-height: 0;
  outline: 0;
}
.fsCalendarMonthBrowser .fsCalendarPrevMonth:before, .fsCalendarMonthBrowser .fsCalendarNextMonth:before {
  content: "";
  display: block;
  font-size: 18px;
  color: #273446;
  line-height: 1;
}
.fsCalendarMonthBrowser .fsCalendarNextMonth:before {
  content: "";
}

@media screen and (max-width: 899px) {
  .fsCalendar.fsGrid .fsCalendarEventGrid {
    width: 100%;
    margin: 0 auto;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarMonthBrowser {
    margin: 20px 0;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarDaybox,
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarOutOfRange {
    display: block;
    width: 14.2857142857% !important;
    height: 50px !important;
    float: left;
    overflow: hidden !important;
    cursor: pointer;
    min-height: 0;
    position: relative;
    padding: 0;
    margin: 0;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarDaybox.fsCalendarWeekendDayBox,
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarOutOfRange.fsCalendarWeekendDayBox {
    border: none;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarDaybox.fsCalendarWeekendDayBox > div,
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarOutOfRange.fsCalendarWeekendDayBox > div {
    position: relative;
    min-height: 0;
    height: 24px;
    border: 1px solid #dedede;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarDaybox.fsCalendarWeekendDayBox > div:first-child,
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarOutOfRange.fsCalendarWeekendDayBox > div:first-child {
    margin-bottom: 1px;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarDaybox.fsCalendarWeekendDayBox > div.selected,
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarOutOfRange.fsCalendarWeekendDayBox > div.selected {
    background-color: #273446;
    color: #fff;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarDaybox.selected,
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarOutOfRange.selected {
    background: #7d8590;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarDaybox.selected .fsCalendarDate,
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarOutOfRange.selected .fsCalendarDate {
    color: #fff;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarDaybox .fsCalendarDate,
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarOutOfRange .fsCalendarDate {
    position: absolute;
    right: 10px;
    top: 5px;
    line-height: 1;
    font-size: 15px;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarRow {
    width: auto;
    display: inline;
  }
  .fsCalendar.fsGrid .fsCalendarEventGrid .fsCalendarInfo {
    display: none;
  }
}
#event-view {
  padding: 20px;
  margin: 20px auto 0;
}
#event-view .fsCalendarDaybox {
  height: auto !important;
}
@media (min-width: 900px) {
  #event-view {
    display: none;
  }
}

.scroll-up {
  text-align: center;
  cursor: pointer;
  font-weight: bold;
  font-size: 14px;
}
@media (min-width: 900px) {
  .scroll-up {
    display: none;
  }
}

.fsCalendarWeekendDayBoxfsCalendarOutOfRange > div:last-child .fsCalendarDate {
  top: auto !important;
  bottom: 0;
}

.fsCalendarEventGrid .fsCalendarWeekdays span {
  transition: all 0.333s;
  font-size: 14px;
}
@media (min-width: 1180px) {
  .fsCalendarEventGrid .fsCalendarWeekdays span {
    font-size: 18px;
  }
}

.fsCalendarDaybox {
  transition: all 0.333s;
}
.fsCalendarRow .fsCalendarDaybox.has-info {
  background: #b3d5e7;
}
@media (min-width: 900px) {
  .fsCalendarRow .fsCalendarDaybox.has-info {
    background: none;
  }
}
.fsCalendarEventGrid .fsCalendarRow .fsCalendarToday {
  background: #f9f0d7;
}

.fsElementEventColorIcon {
  display: inline-block;
  width: 10px;
  height: 10px;
}

.fsCalendarLegend {
  margin: 20px 0;
  padding: 0;
}
.fsCalendarLegend ul,
.fsCalendarLegend ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.fsCalendarLegend a {
  display: block;
}
@media (min-width: 600px) {
  .fsCalendarLegend > ul {
    -moz-column-count: 2;
    column-count: 2;
  }
}
@media (min-width: 800px) {
  .fsCalendarLegend > ul {
    -moz-column-count: 3;
    column-count: 3;
  }
}
.fsCalendarLegend > ul ul {
  margin-left: 20px;
}

/*! elements - constituent v0.0.1 */
.fsConstituent .fsElementPagination {
  margin-bottom: 20px;
}
.fsConstituentItem {
  float: none;
  max-width: 300px;
  width: 100% !important;
  margin: 0 auto 20px;
  padding-bottom: 20px;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
}
@media (min-width: 600px) {
  .fsConstituentItem {
    display: inline-block;
    vertical-align: top;
    max-width: 100%;
  }
}
.fsConstituentItem > * {
  padding-right: 20px;
  padding-left: 20px;
}
.fsConstituent .fsPhoto {
  display: block;
  padding-right: 0;
  padding-left: 0;
  width: auto;
  padding-bottom: 100%;
  margin: 10px auto;
  overflow: hidden;
  position: relative;
}
@media (min-width: 500px) {
  .fsConstituent .fsPhoto {
    width: 150px;
    height: 150px;
    padding-bottom: 0;
    margin-left: 20px;
  }
}
.fsConstituent .fsPhoto img {
  float: none;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
}
.fsConstituent .fsFullName {
  padding-top: 20px;
}
.fsConstituent .fsEmail {
  word-break: break-all;
}

@media (min-width: 600px) {
  [class^='fsConstituentColumnLayout'] {
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
}

@media (min-width: 600px) {
  .fsConstituentColumnLayout_2 {
    -moz-column-count: 2;
    column-count: 2;
  }
}

@media (min-width: 600px) {
  .fsConstituentColumnLayout_3 {
    -moz-column-count: 2;
    column-count: 2;
  }
}
@media (min-width: 900px) {
  .fsConstituentColumnLayout_3 {
    -moz-column-count: 3;
    column-count: 3;
  }
}

@media (min-width: 600px) {
  .fsConstituentColumnLayout_4 {
    -moz-column-count: 2;
    column-count: 2;
  }
}
@media (min-width: 900px) {
  .fsConstituentColumnLayout_4 {
    -moz-column-count: 3;
    column-count: 3;
  }
}
@media (min-width: 1180px) {
  .fsConstituentColumnLayout_4 {
    -moz-column-count: 4;
    column-count: 4;
  }
}

.fsProfileSection {
  margin-bottom: 1.25em;
}
.fsProfileSection .fsProfileSectionSpecialData > div {
  display: block;
  width: auto;
  float: none;
}
@media (min-width: 600px) {
  .fsProfileSection .fsProfileSectionSpecialData > div {
    display: inline-block;
    vertical-align: middle;
    width: 25%;
    margin-right: -0.24em;
  }
  .fsProfileSection .fsProfileSectionSpecialData > div + div {
    margin-right: 0;
    width: 74%;
  }
}

.fsConstituent.fsSearch {
  margin: 0 0 30px;
  padding-bottom: 30px;
  border-bottom: solid 1px #dedede;
}
.fsConstituent.fsSearch > .fsElementContent {
  margin: 0 -10px;
}
.fsConstituent.fsSearch label {
  display: block;
  margin-bottom: 1.25em;
}
@media (min-width: 600px) {
  .fsConstituent.fsSearch label {
    display: inline-block;
    vertical-align: top;
    width: 49.5%;
    padding: 0 10px;
  }
}
@media (min-width: 900px) {
  .fsConstituent.fsSearch label {
    width: 32.8333333333%;
  }
}
.fsConstituent.fsSearch input,
.fsConstituent.fsSearch select {
  display: block;
  width: 100%;
}
.fsConstituent.fsSearch [type*='submit'] {
  width: auto;
}
@media (min-width: 600px) {
  .fsConstituent.fsSearch [type*='submit'] {
    margin-left: 0.625em;
  }
}
.fsConstituent.fsSearch .fsConstituentSearchButton {
  font-family: "open-sans", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 24px;
  display: inline-block;
  border: 0;
  margin: 0 0 20px;
  padding: 12px 20px;
  background: #0072b0;
  color: #fff;
  outline: 0;
  text-align: center;
  margin: 0 10px;
  padding: 10px 30px;
  font-size: inherit;
}
.fsConstituent.fsSearch .fsConstituentSearchButton:hover {
  background-color: #8f8f8f;
  color: #000;
}
.fsConstituent.fsSearch .fsConstituentSearchButton em {
  display: block;
  font-style: normal;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.1;
}

.fsElementPagination {
  margin: 20px 0;
}

.caption {
  font-size: 0.8em;
  line-height: 1.2;
  margin-bottom: 7.68px;
  color: #373737;
  font-family: "garamond-premier-pro", Times, serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: normal;
}

.fs_style_29,
.lead-in {
  font-size: 1.25em;
  line-height: 1.5;
  margin-bottom: 7px;
  color: #0072b0;
  font-family: "open-sans", sans-serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: 600;
}

.fs_style_30,
.callout:not(.button) {
  display: block;
  margin: 20px 0;
  background: transparent;
  font-size: 26px;
  line-height: 1.2307692308;
  color: #007737;
  font-family: "garamond-premier-pro", Times, serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: 500;
  /*  &.left {
      float: left;
      margin-left: $gutter;
  
      @include breakpoint($bp-phablet) {
        width: 50%;
      }
  
    }
  
    &.right {
      float: right;
      margin-right: $gutter;
  
      @include breakpoint($bp-phablet) {
        width: 50%;
      }
  
    }*/
}

.content-block {
  margin-top: 20px;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.content-block > header {
  border-top: 5px solid #000;
  padding-top: 15px;
}
.content-block > header .fsElementTitle {
  margin-bottom: 15px;
}
.content-block:first-child {
  margin-top: 0;
}
.content-block:last-child {
  margin-bottom: 0;
}
.content-block img {
  border-bottom: 5px solid #007737;
}

.fs_style_25,
.button {
  font-family: "open-sans", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 24px;
  font-family: "open-sans", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 24px;
  display: inline-block;
  border: 0;
  margin: 0 0 20px;
  padding: 12px 20px;
  background: #007737;
  color: #fff;
  outline: 0;
  text-align: center;
  border: 1px solid transparent;
}
.fs_style_25:hover,
.button:hover {
  background-color: #fff;
  color: #bebebe;
}
.fs_style_25 em,
.button em {
  display: block;
  font-style: normal;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.1;
}
.fs_style_25:hover,
.button:hover {
  border: 1px solid #bebebe;
}

.fs_style_26, .button.callout {
  font-family: "open-sans", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 24px;
  font-family: "open-sans", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 16px;
  line-height: 24px;
  display: inline-block;
  border: 0;
  margin: 0 0 20px;
  padding: 12px 20px;
  background: #007737;
  color: #fff;
  outline: 0;
  text-align: center;
  padding: 27px 30px;
  letter-spacing: normal;
  font-size: 1em;
  line-height: 24px;
  border: 1px solid transparent;
}
.fs_style_26:hover,
.button.callout:hover {
  background-color: #fff;
  color: #bebebe;
}
.fs_style_26 em,
.button.callout em {
  display: block;
  font-style: normal;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.1;
}
.fs_style_26:hover,
.button.callout:hover {
  border: 1px solid #bebebe;
}
#fsBannerLeft .fs_style_26, #fsBannerRight .fs_style_26,
#fsBannerLeft .button.callout, #fsBannerRight .button.callout {
  display: block;
}

.fs_style_15,
.fs_style_16,
.fs_style_17 {
  display: block;
  width: 100%;
  border: none;
  box-shadow: none;
  margin: 20px auto;
}

@media (min-width: 600px) {
  .fs_style_15,
  .fs_style_16 {
    width: 50%;
  }
}
@media (min-width: 900px) {
  .fs_style_15,
  .fs_style_16 {
    width: 37.5%;
  }
}

@media (min-width: 600px) {
  .fs_style_15 {
    float: left;
    margin-right: 20px;
    margin-left: 0;
  }
}

@media (min-width: 600px) {
  .fs_style_16 {
    float: right;
    margin-right: 0;
    margin-left: 20px;
  }
}

.navigation.main ul,
.navigation.main ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.navigation.main a {
  display: block;
}
.navigation.main nav ul,
.navigation.main nav ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.navigation.main nav a {
  display: block;
}
.navigation.main nav ul.fsNavLevel1 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.navigation.main nav ul.fsNavLevel1 > li {
  -ms-flex: 1 auto;
  flex: 1 auto;
}
.no-flexbox .navigation.main nav ul.fsNavLevel1 > li {
  display: inline-block;
}
.navigation.main nav ul.fsNavLevel1 > li > a {
  margin-right: 2px;
  margin-left: 2px;
  font-weight: 400;
  text-align: center;
  color: #fff;
  padding: 24.5px 8px;
  background: none;
  display: block;
}
@media (min-width: 1180px) {
  .navigation.main nav ul.fsNavLevel1 > li > a {
    padding-top: 23px;
    padding-bottom: 23px;
    font-size: 1.125em;
  }
}
.navigation.main nav ul.fsNavLevel1 > li > a:hover {
  border-top-color: #fff;
  border-top-color: rgba(255, 255, 255, 0.9);
}
.navigation.main nav ul.fsNavLevel1 > li > a:hover, .navigation.main nav ul.fsNavLevel1 > li > a.active {
  color: #ebce7b;
}
.navigation.main nav ul.fsNavLevel1 > li.fsNavCurrentPage > a, .navigation.main nav ul.fsNavLevel1 > li.fsNavCurrentPageAncestor > a {
  color: #ebce7b;
}
.navigation.main .fsNavPageInfo {
  position: absolute;
  top: 99.5%;
  z-index: 10;
  display: none;
  width: 100%;
  left: 50%;
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  padding: 40px;
  background: #273446;
  text-align: left;
  border-top: 1px solid #fff;
  border-top-color: rgba(255, 255, 255, 0.2);
}
.navigation.main .fsNavPageInfo .fsNavPageDescription {
  display: inline-block;
  vertical-align: top;
  margin-right: -0.22em;
  width: 36.5853658537%;
  font-size: 14px;
  line-height: 1.5714285714;
  color: #fff;
}
.navigation.main .fsNavPageInfo .fsNavPageDescription h3,
.navigation.main .fsNavPageInfo .fsNavPageDescription a {
  display: block;
  margin: 1.5 0 0;
  padding: 0;
  font-size: 1.5em;
  line-height: 1.25;
  color: #0072b0;
  font-family: "garamond-premier-pro", Times, serif;
}
.navigation.main .fsNavPageInfo .fsNavPageDescription h3, .navigation.main .fsNavPageInfo .fsNavPageDescription h3:hover,
.navigation.main .fsNavPageInfo .fsNavPageDescription a,
.navigation.main .fsNavPageInfo .fsNavPageDescription a:hover {
  background: none;
}
.navigation.main .fsNavPageInfo .fsNavPageDescription h3:first-child,
.navigation.main .fsNavPageInfo .fsNavPageDescription a:first-child {
  margin-top: 0;
}
.navigation.main .fsNavPageInfo ul.fsNavLevel2 {
  display: inline-block;
  vertical-align: top;
  margin-right: -0.22em;
  width: 26.8292682927%;
  padding-left: 20px;
}
.navigation.main .fsNavPageInfo ul.fsNavLevel2 > li {
  margin-right: -10px;
  margin-left: -10px;
  position: relative;
}
.navigation.main .fsNavPageInfo ul.fsNavLevel2 > li:after {
  margin-right: 10px;
  margin-left: 10px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 1px;
}
.navigation.main .fsNavPageInfo ul.fsNavLevel2 > li:first-child:after {
  content: normal;
}
.navigation.main .fsNavPageInfo a {
  font-size: 14px;
  line-height: 1.5714285714;
  font-weight: 400;
  text-align: left;
  color: #fff;
  padding: 10px 10px;
}
.navigation.main .fsNavPageInfo a:hover {
  color: #ebce7b;
}
.navigation.main li:hover .fsNavPageInfo {
  display: block;
}

#fsPageBodyWrapper .navigation.tier {
  margin-right: -20px;
  margin-left: -20px;
  transition: all 0.333s;
  max-height: 0;
  overflow: hidden;
  display: none;
  /*
    Home: N/A
    Tier 1 (AKA: "Landing Page"): Show T3 (immediate children WITH immediate children expanded ONLY of current page)
    Tier 2: Show T3 (immediate children)
    Tier 3: Show T3 (siblings, with current page in 'active' state), Show T4 (immediate children ONLY of current page)
    Tier 4: Show T3 (immediate parent & parent's siblings, with current page ancestor in 'active' state), Show T4 (siblings ONLY of current page)
    Tier 5: ?? Show link back to immediate parent?
  */
}
#fsPageBodyWrapper .navigation.tier ul,
#fsPageBodyWrapper .navigation.tier ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
#fsPageBodyWrapper .navigation.tier a {
  display: block;
}
.has-tier-navigation #fsPageBodyWrapper .navigation.tier {
  max-height: 1000px;
}
@media (min-width: 600px) {
  #fsPageBodyWrapper .navigation.tier {
    margin-right: 0;
    margin-left: 0;
    display: block;
  }
}
#fsPageBodyWrapper .navigation.tier.mobile {
  display: block;
}
@media (min-width: 600px) {
  #fsPageBodyWrapper .navigation.tier.mobile {
    display: none;
  }
}
#fsPageBodyWrapper .navigation.tier > header .fsElementHeaderContent {
  background-color: #0072b0;
  padding: 20px 20px;
  cursor: pointer;
  text-align: center;
  color: #fff;
  font-family: "open-sans", sans-serif;
  font-size: 16px;
  line-height: 1.375;
  font-weight: 600;
  text-transform: uppercase;
  position: relative;
  display: none;
}
@media (min-width: 600px) {
  #fsPageBodyWrapper .navigation.tier > header .fsElementHeaderContent {
    display: none;
  }
}
#fsPageBodyWrapper .navigation.tier > header .fsElementHeaderContent:after {
  content: "";
  padding: 0 20px;
  position: absolute;
  top: 50%;
  right: 0;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
#fsPageBodyWrapper .navigation.tier > .fsElementContent {
  transition: all 0.333s;
}
#fsPageBodyWrapper .navigation.tier li {
  margin: 1px 0;
}
#fsPageBodyWrapper .navigation.tier .fsNavCurrentPage > a,
#fsPageBodyWrapper .navigation.tier .fsNavCurrentPageAncestor > a {
  color: #273446 !important;
  font-weight: 600;
}
#fsPageBodyWrapper .navigation.tier [class*="fsNavLevel"] {
  margin: 0;
}
[class*="hierarchy-tier"] #fsPageBodyWrapper .navigation.tier .fsNavLevel1 > li {
  display: none;
}
[class*="hierarchy-tier"] #fsPageBodyWrapper .navigation.tier .fsNavLevel1 > li > a {
  display: none;
}
[class*="hierarchy-tier"] #fsPageBodyWrapper .navigation.tier .fsNavLevel1 > li.fsNavCurrentPage,
[class*="hierarchy-tier"] #fsPageBodyWrapper .navigation.tier .fsNavLevel1 > li.fsNavCurrentPageAncestor {
  display: block;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li {
  display: none;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li > a, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li > a, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li > a, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li > a {
  display: none;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li.fsNavCurrentPage,
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li.fsNavCurrentPageAncestor, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li.fsNavCurrentPage,
.hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li.fsNavCurrentPageAncestor, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li.fsNavCurrentPage,
.hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li.fsNavCurrentPageAncestor, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li.fsNavCurrentPage,
.hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li.fsNavCurrentPageAncestor {
  display: block;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel4, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel4, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel4, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 {
  display: none;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a {
  display: block;
  padding: 14px 20px;
  font-size: 1em;
  line-height: 1.375;
  color: #fff;
  background-color: #0072b0;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a:hover, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a:hover, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a:hover, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a:hover {
  color: #ebce7b;
  background-color: #0072b0;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel4, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel4, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel4, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 {
  margin: 0 10px 10px;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li {
  margin: 0;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a {
  display: block;
  padding: 14px 20px;
  font-size: 1em;
  line-height: 1.375;
  color: #fff;
  background-color: #0072b0;
  padding-top: 4.998px;
  padding-bottom: 4.998px;
  font-size: 0.875em;
  line-height: 1.4285714286;
}
.hierarchy-tier-2 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a:hover, .hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a:hover, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a:hover, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a:hover {
  color: #ebce7b;
  background-color: #0072b0;
}
.hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPage,
.hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPageAncestor, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPage,
.hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPageAncestor, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPage,
.hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPageAncestor {
  background: #0072b0;
  overflow: hidden;
}
.hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPage .fsNavLevel4,
.hierarchy-tier-3 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPageAncestor .fsNavLevel4, .hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPage .fsNavLevel4,
.hierarchy-tier-4 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPageAncestor .fsNavLevel4, .hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPage .fsNavLevel4,
.hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li.fsNavCurrentPageAncestor .fsNavLevel4 {
  display: block;
}
.hierarchy-tier-1 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li > a {
  display: block;
  padding: 14px 20px;
  font-size: 1em;
  line-height: 1.375;
  color: #fff;
  background-color: #0072b0;
}
.hierarchy-tier-1 #fsPageBodyWrapper .navigation.tier .fsNavLevel2 > li > a:hover {
  color: #ebce7b;
  background-color: #0072b0;
}
.hierarchy-tier-1 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 {
  margin: 0 10px 10px;
}
.hierarchy-tier-1 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li {
  margin: 0;
}
.hierarchy-tier-1 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a {
  display: block;
  padding: 14px 20px;
  font-size: 1em;
  line-height: 1.375;
  color: #fff;
  background-color: #0072b0;
  padding-top: 4.998px;
  padding-bottom: 4.998px;
  font-size: 0.875em;
  line-height: 1.4285714286;
}
.hierarchy-tier-1 #fsPageBodyWrapper .navigation.tier .fsNavLevel3 > li > a:hover {
  color: #ebce7b;
  background-color: #0072b0;
}
.hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li > a {
  display: none;
}
.hierarchy-tier-5 #fsPageBodyWrapper .navigation.tier .fsNavLevel4 > li.fsNavCurrentPageAncestor > a {
  display: block;
}

section.off-canvas {
  transition: all 0.333s;
  width: 100%;
  padding: 0 20px;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  height: 0;
  background: #273446;
}
@media (min-width: 900px) {
  section.off-canvas {
    height: 0 !important;
  }
}
.off-canvas-menu-open section.off-canvas {
  height: 900px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.off-canvas-menu-open html,
.off-canvas-menu-open body {
  overflow: hidden;
  -webkit-overflow-scrolling: auto;
}
.off-canvas-menu-open #fsPageWrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow: hidden;
  -webkit-overflow-scrolling: auto;
}
section.off-canvas header .fsElementTitle {
  display: none;
}
section.off-canvas header .fsElementHeaderContent {
  display: none;
}
section.off-canvas .button.off-canvas-trigger {
  background: none;
  position: absolute;
  top: 5px;
  left: 5px;
  color: #ebce7b;
  margin: 0;
  width: 45px;
  height: 36px;
}
section.off-canvas .button.off-canvas-trigger, section.off-canvas .button.off-canvas-trigger:hover {
  border-color: transparent;
}
section.off-canvas .button.off-canvas-trigger:hover {
  color: #fff;
}
section.off-canvas .button.off-canvas-trigger span {
  display: none;
}
section.off-canvas .button.off-canvas-trigger:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  text-indent: 0;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
section.off-canvas .navigation.main {
  margin-top: 20px;
  padding-top: 20px;
  padding-bottom: 10px;
}
section.off-canvas .navigation.main ul.fsNavLevel1 {
  display: block;
}
section.off-canvas .navigation.main ul.fsNavLevel1 li {
  display: block;
}
section.off-canvas .navigation.main ul.fsNavLevel1 li a {
  border: none;
}
section.off-canvas .navigation.main .fsNavPageInfo {
  display: none !important;
}
section.off-canvas .navigation.utility {
  margin-bottom: 40px;
}
section.off-canvas .navigation.utility ul,
section.off-canvas .navigation.utility ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
section.off-canvas .navigation.utility a {
  display: block;
}
section.off-canvas .navigation.utility ul.fsNavLevel1 {
  margin-right: -20px;
  margin-left: -20px;
  padding: 10px 20px;
  display: block;
  background-color: #141a23;
}
section.off-canvas .navigation.utility ul.fsNavLevel1 li {
  display: block;
}
section.off-canvas .navigation.utility ul.fsNavLevel1 li a {
  margin-right: 2px;
  margin-left: 2px;
  font-size: 16px;
  line-height: 1.5;
  color: #8f8f8f;
  font-family: "garamond-premier-pro", Times, serif;
  font-weight: 500;
  text-align: center;
  padding: 6px 20px;
  background-color: #141a23;
  padding: 10.5px 20px;
}
section.off-canvas .navigation.utility ul.fsNavLevel1 li a:hover {
  color: #fff;
  background-color: #0072b0;
}

.navigation.social ul,
.navigation.social ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.navigation.social a {
  display: block;
}
.navigation.social nav {
  padding-right: 50px;
  padding-left: 50px;
}
@media (min-width: 600px) {
  .navigation.social nav {
    padding-right: 0;
    padding-left: 0;
  }
}
.navigation.social ul {
  margin-right: -2.5px;
  margin-left: -2.5px;
  text-align: center;
}
.navigation.social ul li {
  padding-right: 2.5px;
  padding-left: 2.5px;
  display: inline-block;
  vertical-align: middle;
  margin-right: -0.22em;
  margin-bottom: 2.5px;
}
.navigation.social a {
  transition: all 0.333s;
  display: block;
  width: 38px;
  height: 38px;
  border-radius: 60%;
  text-indent: -999em;
  overflow: hidden;
  position: relative;
}
.navigation.social a:hover {
  background-color: #fff;
}
.navigation.social a:after {
  position: absolute;
  text-indent: 0;
  text-align: center;
  top: 50%;
  right: 0;
  width: 100%;
  font-size: 22px;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.navigation.social a[href*='facebook']:after {
  content: "";
}
.navigation.social a[href*='google']:after {
  content: "";
}
.navigation.social a[href*='instagram']:after {
  content: "";
}
.navigation.social a[href*='linkedin']:after {
  content: "";
}
.navigation.social a[href*='blog']:after {
  content: "";
}
.navigation.social a[href*='twitter']:after {
  content: "";
}
.navigation.social a[href*='youtube']:after {
  content: "";
}

.fsPostElement,
.fsNews {
  margin-top: 20px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  overflow: hidden;
  /*Slideshow*/
}
.fsPostElement > header,
.fsNews > header {
  border-top: 5px solid #000;
  padding-top: 15px;
}
.fsPostElement > header .fsElementTitle,
.fsNews > header .fsElementTitle {
  margin-bottom: 15px;
}
.fsPostElement:first-child,
.fsNews:first-child {
  margin-top: 0;
}
.fsPostElement:last-child,
.fsNews:last-child {
  margin-bottom: 0;
}
.fsPostElement img,
.fsNews img {
  border-bottom: 5px solid #007737;
}
.fsPostElement article,
.fsNews article {
  margin-top: 20px;
  margin-bottom: 20px;
}
.fsPostElement article:first-child,
.fsNews article:first-child {
  margin-top: 0;
}
.fsPostElement .fsThumbnail,
.fsNews .fsThumbnail {
  display: block;
  margin-bottom: 20px;
}
.fsPostElement .fsThumbnail img,
.fsNews .fsThumbnail img {
  display: block;
}
.fsPostElement .fsTitle, .fsPostElement .fsTitle a,
.fsNews .fsTitle,
.fsNews .fsTitle a {
  color: #1d1d1d;
}
.fsPostElement .fsTitle a:hover,
.fsNews .fsTitle a:hover {
  color: #007737;
}
.fsPostElement .fsAuthor,
.fsNews .fsAuthor {
  display: block;
}
.fsPostElement .fsDate,
.fsNews .fsDate {
  margin: 0;
  padding: 0;
  font-size: 14px;
  line-height: 1.1428571429;
  color: #007737;
  letter-spacing: normal;
  font-style: normal;
  font-weight: normal;
  color: #1d1d1d;
}
.fsPostElement .fsSummary,
.fsNews .fsSummary {
  font-size: 14px;
  line-height: 1.4285714286;
  letter-spacing: normal;
  font-style: normal;
  font-weight: normal;
}
.fsPostElement .fsSummary :first-child,
.fsNews .fsSummary :first-child {
  margin-top: 0;
}
.fsPostElement.fsSlideshow .fsElementContent,
.fsNews.fsSlideshow .fsElementContent {
  margin: 0;
}
.fsPostElement.fsSlideshow article,
.fsNews.fsSlideshow article {
  padding: 20px;
}
.fsPostElement.fsSlideshow .fsPager span,
.fsNews.fsSlideshow .fsPager span {
  color: inherit;
  opacity: 0.5;
  transition: color 100ms, opacity 100ms;
}
.fsPostElement.fsSlideshow .fsPager span.fsStateActive,
.fsNews.fsSlideshow .fsPager span.fsStateActive {
  color: inherit;
  opacity: 1;
}
.fsPostElement.fsGrid .fsNewsGrid,
.fsNews.fsGrid .fsNewsGrid {
  zoom: 1;
}
.fsPostElement.fsGrid .fsNewsGrid:after,
.fsNews.fsGrid .fsNewsGrid:after {
  display: table;
  clear: both;
  content: '';
}
.fsPostElement.fsGrid article,
.fsNews.fsGrid article {
  clear: none;
  margin-bottom: 20px !important;
  margin-top: 0 !important;
  padding: 0;
  width: auto;
}
@media (min-width: 600px) {
  .fsPostElement.fsGrid .fsStyleTwoColumns article,
  .fsNews.fsGrid .fsStyleTwoColumns article {
    width: 49%;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(3n-1),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(3n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(3n+1),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(3n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(4n-2),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(4n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(4n-1),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(4n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(4n+1),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(4n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(5n-3),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(5n-3) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(5n-2),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(5n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(5n-1),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(5n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(5n+1),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(5n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(odd),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(odd) {
    margin-right: 1%;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(even),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(even) {
    margin-left: 1%;
  }
  .fsPostElement.fsGrid .fsStyleTwoColumns article:nth-child(2n+1),
  .fsNews.fsGrid .fsStyleTwoColumns article:nth-child(2n+1) {
    clear: both;
  }
}
@media (min-width: 600px) {
  .fsPostElement.fsGrid .fsStyleThreeColumns article,
  .fsNews.fsGrid .fsStyleThreeColumns article {
    width: 49%;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(3n-1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(3n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(3n+1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(3n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(4n-2),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(4n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(4n-1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(4n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(4n+1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(4n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(5n-3),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(5n-3) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(5n-2),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(5n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(5n-1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(5n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(5n+1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(5n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(odd),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(odd) {
    margin-right: 1%;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(even),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(even) {
    margin-left: 1%;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(2n+1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(2n+1) {
    clear: both;
  }
}
@media (min-width: 900px) {
  .fsPostElement.fsGrid .fsStyleThreeColumns article,
  .fsNews.fsGrid .fsStyleThreeColumns article {
    width: 32%;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(odd),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(odd) {
    margin-right: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(even),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(even) {
    margin-left: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(2n+1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(2n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(4n-2),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(4n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(4n-1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(4n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(4n+1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(4n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(5n-3),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(5n-3) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(5n-2),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(5n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(5n-1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(5n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(5n+1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(5n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(3n-1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(3n-1) {
    margin: 0 2%;
  }
  .fsPostElement.fsGrid .fsStyleThreeColumns article:nth-child(3n+1),
  .fsNews.fsGrid .fsStyleThreeColumns article:nth-child(3n+1) {
    clear: both;
  }
}
@media (min-width: 600px) {
  .fsPostElement.fsGrid .fsStyleFourColumns article,
  .fsNews.fsGrid .fsStyleFourColumns article {
    width: 49%;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(3n-1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(3n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(3n+1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(3n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(4n-2),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(4n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(4n-1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(4n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(4n+1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(4n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(5n-3),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(5n-3) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(5n-2),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(5n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(5n-1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(5n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(5n+1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(5n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(odd),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(odd) {
    margin-right: 1%;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(even),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(even) {
    margin-left: 1%;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(2n+1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(2n+1) {
    clear: both;
  }
}
@media (min-width: 900px) {
  .fsPostElement.fsGrid .fsStyleFourColumns article,
  .fsNews.fsGrid .fsStyleFourColumns article {
    width: 23.5%;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(odd),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(odd) {
    margin-right: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(even),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(even) {
    margin-left: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(2n+1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(2n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(3n-1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(3n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(3n+1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(3n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(5n-3),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(5n-3) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(5n-2),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(5n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(5n-1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(5n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(5n+1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(5n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(4n-2),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(4n-2) {
    margin: 0 1% 0 2%;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(4n-1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(4n-1) {
    margin: 0 2% 0 1%;
  }
  .fsPostElement.fsGrid .fsStyleFourColumns article:nth-child(4n+1),
  .fsNews.fsGrid .fsStyleFourColumns article:nth-child(4n+1) {
    clear: both;
  }
}
@media (min-width: 600px) {
  .fsPostElement.fsGrid .fsStyleFiveColumns article,
  .fsNews.fsGrid .fsStyleFiveColumns article {
    width: 49%;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(3n-1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(3n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(3n+1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(3n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(4n-2),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(4n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(4n-1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(4n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(4n+1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(4n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(5n-3),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(5n-3) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(5n-2),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(5n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(5n-1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(5n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(5n+1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(5n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(odd),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(odd) {
    margin-right: 1%;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(even),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(even) {
    margin-left: 1%;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(2n+1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(2n+1) {
    clear: both;
  }
}
@media (min-width: 900px) {
  .fsPostElement.fsGrid .fsStyleFiveColumns article,
  .fsNews.fsGrid .fsStyleFiveColumns article {
    width: 18.4%;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(odd),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(odd) {
    margin-right: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(even),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(even) {
    margin-left: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(2n+1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(2n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(3n-1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(3n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(3n+1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(3n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(4n-2),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(4n-2) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(4n-1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(4n-1) {
    margin: auto;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(4n+1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(4n+1) {
    clear: none;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(5n-3),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(5n-3) {
    margin: 0 1% 0 2%;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(5n-2),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(5n-2) {
    margin: 0 1%;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(5n-1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(5n-1) {
    margin: 0 2% 0 1%;
  }
  .fsPostElement.fsGrid .fsStyleFiveColumns article:nth-child(5n+1),
  .fsNews.fsGrid .fsStyleFiveColumns article:nth-child(5n+1) {
    clear: both;
  }
}
.fsPostElement.fsGrid .fsThumbnail,
.fsNews.fsGrid .fsThumbnail {
  display: block;
  float: none;
  width: 100%;
  margin: 0 0 15px 0;
  max-width: inherit;
}
.fsPostElement .fsListItems,
.fsNews .fsListItems {
  margin: 0;
}

/*=======================*/
/* Search Variables      */
/*=======================*/
/*=================================================================*/
/* Normalize Search                                                */
/*=================================================================*/
form.gsc-search-box-tools {
  margin-bottom: 0 !important;
  overflow: hidden;
}
form.gsc-search-box-tools table {
  border: 0;
}
form.gsc-search-box-tools table,
form.gsc-search-box-tools tbody,
form.gsc-search-box-tools tr,
form.gsc-search-box-tools td {
  display: block;
}
form.gsc-search-box-tools td.gsc-input {
  padding: 0 !important;
  display: block;
  float: left;
}
form.gsc-search-box-tools table.gsc-search-box {
  display: table;
  margin-bottom: 0;
  position: relative;
}
form.gsc-search-box-tools div.gsc-input-box {
  min-width: 140px;
  border: 0;
  height: 66px;
}
form.gsc-search-box-tools div.gsc-input-box.gsc-input-box-focus {
  box-shadow: none;
}
form.gsc-search-box-tools div.gsc-input-box table,
form.gsc-search-box-tools div.gsc-input-box tbody,
form.gsc-search-box-tools div.gsc-input-box tr,
form.gsc-search-box-tools div.gsc-input-box td {
  overflow: hidden;
  display: block;
  width: 100%;
  border: 0;
  height: 66px;
}
form.gsc-search-box-tools td.gsib_a {
  padding: 0;
  display: inline-block;
}
form.gsc-search-box-tools td.gsib_b {
  padding: 0;
  display: none !important;
}
form.gsc-search-box-tools td.gsc-input {
  float: none;
}
form.gsc-search-box-tools input.gsc-input {
  background: transparent !important;
  background-image: none !important;
  width: 100%;
  height: 66px !important;
  color: #ebce7b;
  font-size: 20px;
  line-height: 1.2;
  font-family: "garamond-premier-pro", Times, serif;
  font-style: italic;
  padding-left: 66px !important;
  padding-right: 20px !important;
  margin: 0 !important;
  overflow: hidden;
  -webkit-appearance: none;
}
form.gsc-search-box-tools table.gsc-branding {
  display: none;
}
form.gsc-search-box-tools td.gsc-search-button {
  transition: all 0.333s;
  display: block;
  padding: 0 12.5px;
  overflow: hidden;
  height: 66px;
  width: 66px;
  background: transparent;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  color: #fff;
}
form.gsc-search-box-tools td.gsc-search-button:after {
  content: "";
  content: "";
  opacity: 1;
  font-size: 20px;
  display: block;
  position: relative;
  left: 0;
  right: 0;
  text-align: center;
  top: 50%;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
form.gsc-search-box-tools td.gsc-search-button:hover {
  background: transparent;
  color: #0072b0;
}
form.gsc-search-box-tools input.gsc-search-button {
  border: 0;
  height: 66px;
  width: 100%;
  color: transparent;
  opacity: 0;
  padding: 0;
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
}

::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: #ebce7b;
}

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #ebce7b;
  opacity: 1;
}

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #ebce7b;
  opacity: 1;
}

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #ebce7b;
}

/*=======================*/
/* Custom Styles         */
/*=======================*/
form.gsc-search-box-tools div.gsc-input-box {
  background-color: transparent !important;
}

.fsTabs {
  padding: 0;
  background: none;
  border: 0;
  margin-bottom: 20px;
}
.fsTabs .fsTabsNav {
  margin: 0;
  padding: 0;
  display: none;
}
@media (min-width: 600px) {
  .fsTabs .fsTabsNav {
    display: block;
  }
}
.fsTabs .fsTabsNav li {
  margin-right: 2px;
}
.fsTabs .fsTabsNav li a {
  display: block;
  margin: 0;
  padding: 12px 15px;
  background: #273446;
  font-size: 16px;
  line-height: 24px;
  color: #fff;
  font-family: "open-sans", sans-serif;
  letter-spacing: normal;
  font-style: normal;
  font-weight: 600;
  text-transform: uppercase;
  border: 1px solid transparent;
}
.fsTabs .fsTabsNav li a:hover {
  background: #0072b0;
  color: #fff;
  border-color: transparent;
}
.fsTabs .fsTabsNav li.fsStateSelected a {
  background: #fff;
  color: #273446;
  border-color: #bebebe;
}
.fsTabs .fsElementContent {
  padding-right: 0;
  padding-left: 0;
}
.fsTabs .fsPanel {
  margin-bottom: 1px;
}
.fsTabs .fsPanel > header {
  transition: all 0.333s;
  cursor: pointer;
  background: #273446;
  border: 1px solid transparent;
}
.fsTabs .fsPanel > header h2 {
  transition: all 0.333s;
  margin-bottom: 0;
  display: block;
  font-size: 16px;
  line-height: 24px;
  padding: 12px 15px;
  color: #fff;
  font-family: "open-sans", sans-serif;
  text-transform: uppercase;
  font-weight: 600;
}
.fsTabs .fsPanel > header h2:before {
  font-family: "IcoMoon";
}
.fsTabs .fsPanel > header h2:before {
  content: "";
  margin-right: 40px;
}
.fsTabs .fsPanel > header:hover {
  background: #0072b0;
  border-color: transparent;
}
.fsTabs .fsPanel > header:hover h2 {
  color: #fff;
}
.fsTabs .fsPanel > .fsElementContent {
  border: 1px solid #bebebe;
  border-top: none;
}
@media (min-width: 500px) {
  .fsTabs .fsPanel > .fsElementContent {
    border: none;
  }
}
.fsTabs .fsPanel.fsStateOpen > header {
  background: #fff;
  border-color: #bebebe;
  border-bottom-color: transparent;
}
.fsTabs .fsPanel.fsStateOpen > header h2 {
  color: #273446;
}
.fsTabs .fsPanel.fsStateOpen > header h2:before {
  content: "";
}
.fsTabs .fsPanel.fsStateOpen > .fsElementContent {
  display: block;
}

.fsPanelGroup.fsTabs > .fsElementContent > .fsPanel > .fsElementActionButtonContainer,
.fsPanelGroup.fsTabs > .fsElementContent > .fsPanel > header, .fsPanelGroup.fsTabs > .fsElementContent > .fsPanel:not(.fsStateOpen) {
  display: block;
}
@media (min-width: 600px) {
  .fsPanelGroup.fsTabs > .fsElementContent > .fsPanel > .fsElementActionButtonContainer,
  .fsPanelGroup.fsTabs > .fsElementContent > .fsPanel > header, .fsPanelGroup.fsTabs > .fsElementContent > .fsPanel:not(.fsStateOpen) {
    display: none;
  }
}

.fsComposerFormEmbed {
  background-color: #fff !important;
}
.fsComposerFormEmbed form {
  overflow: hidden;
}
.fsComposerFormEmbed form .mainGroupSub {
  width: auto !important;
}

.thermometer {
  position: relative;
  margin: 30px 0;
}
.thermometer .track {
  height: 300px;
  width: 100px;
  border: 0;
  position: relative;
  margin: 0 auto;
  background: #0072b0;
}
.thermometer .amount, .thermometer .amountCash {
  margin: 0;
  padding: 0;
  position: absolute;
  left: 50%;
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: auto;
  min-width: 100px;
  text-align: center;
}
.thermometer .goal {
  position: absolute;
  top: -30px;
  width: 100%;
}
.thermometer .goal .amount, .thermometer .goal .amountCash {
  color: #273446;
}
.thermometer .progress {
  height: 0%;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #273446;
}
.thermometer .progress .amount, .thermometer .progress .amountCash {
  color: #ebce7b;
}

#fsHeader {
  padding: 20px;
  background-color: #273446;
  position: relative;
}
@media (min-width: 900px) {
  #fsHeader {
    padding-bottom: 0;
  }
}
@media (min-width: 900px) {
  .has-masthead #fsHeader {
    background-color: #273446;
    background-color: rgba(39, 52, 70, 0.9);
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
  }
}
.has-masthead .fsComposeMode #fsHeader {
  position: relative !important;
  top: auto;
  left: auto;
  z-index: auto;
}
.fsComposeMode #fsHeader {
  overflow: hidden;
}
#fsHeader > .fsBanner {
  position: static;
}
@media (min-width: 600px) {
  #fsHeader > .fsBanner {
    position: relative;
    margin: 0 auto;
    max-width: 700px;
    position: static;
  }
}
@media (min-width: 900px) {
  #fsHeader > .fsBanner {
    position: relative;
    margin: 0 auto;
    max-width: 940px;
    padding-left: 300px;
  }
}
@media (min-width: 1180px) {
  #fsHeader > .fsBanner {
    position: relative;
    margin: 0 auto;
    max-width: 1180px;
    padding-left: 340px;
  }
}
#fsHeader header .fsElementTitle {
  display: none;
}
#fsHeader header .fsElementHeaderContent {
  display: none;
}

@media (min-width: 900px) {
  #fsHeader .branding {
    width: 280px;
    position: absolute;
    top: 0;
    left: 0;
  }
}
#fsHeader .branding .fsElementContent {
  text-align: center;
}
#fsHeader .branding .fsElementContent a {
  display: block;
}
#fsHeader .branding .fsElementContent img {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  height: 100%;
  max-height: 170px;
}

@media (min-width: 900px) {
  #fsHeader .utilities {
    margin-bottom: 40px;
  }
}
@media (min-width: 1180px) {
  #fsHeader .utilities {
    margin-bottom: 60px;
  }
}
#fsHeader .utilities .fsElementContent {
  text-align: right;
}
@media (min-width: 900px) {
  #fsHeader .utilities section {
    display: inline-block;
    vertical-align: top;
  }
}
#fsHeader .utilities .navigation.utility {
  display: none;
}
#fsHeader .utilities .navigation.utility ul,
#fsHeader .utilities .navigation.utility ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
#fsHeader .utilities .navigation.utility a {
  display: block;
}
@media (min-width: 900px) {
  #fsHeader .utilities .navigation.utility {
    display: inline-block;
    vertical-align: top;
    margin-right: -0.22em;
  }
}
#fsHeader .utilities .navigation.utility ul {
  margin: 0;
}
#fsHeader .utilities .navigation.utility ul li {
  display: inline-block;
  vertical-align: middle;
  margin-right: -0.22em;
}
#fsHeader .utilities .navigation.utility a {
  margin-right: 2px;
  margin-left: 2px;
  font-size: 16px;
  line-height: 1.5;
  color: #8f8f8f;
  font-family: "garamond-premier-pro", Times, serif;
  font-weight: 500;
  text-align: center;
  padding: 6px 20px;
  background-color: #141a23;
}
#fsHeader .utilities .navigation.utility a:hover {
  color: #fff;
  background-color: #0072b0;
}
#fsHeader .utilities .button.search-trigger,
#fsHeader .utilities .button.off-canvas-trigger {
  display: block;
  background: #141a23;
  color: #0072b0;
  width: 45px;
  height: 36px;
  text-indent: -999em;
  text-align: left;
  overflow: hidden;
  position: absolute;
  border: none;
}
@media (min-width: 900px) {
  #fsHeader .utilities .button.search-trigger,
  #fsHeader .utilities .button.off-canvas-trigger {
    position: relative;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    margin-left: 2px;
  }
}
#fsHeader .utilities .button.search-trigger:after,
#fsHeader .utilities .button.off-canvas-trigger:after {
  content: "";
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  text-indent: 0;
  text-align: center;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
#fsHeader .utilities .button.search-trigger {
  top: 5px;
  right: 5px;
}
.page-search-open #fsHeader .utilities .button.search-trigger {
  color: #ebce7b;
}
#fsHeader .utilities .button.search-trigger:after {
  content: "";
}
@media (min-width: 1180px) {
  #fsHeader .utilities .button.search-trigger {
    display: none;
  }
}
#fsHeader .utilities .button.off-canvas-trigger {
  top: 5px;
  left: 5px;
}
#fsHeader .utilities .button.off-canvas-trigger:after {
  content: "";
}
@media (min-width: 900px) {
  #fsHeader .utilities .button.off-canvas-trigger {
    display: none;
  }
}

#fsHeader .navigation.container {
  display: none;
}
@media (min-width: 900px) {
  #fsHeader .navigation.container {
    display: block;
  }
}
@media (min-width: 1180px) {
  #fsHeader .navigation.container > .fsElementContent {
    position: relative;
  }
}
@media (min-width: 1180px) {
  #fsHeader .navigation.container .navigation.main {
    margin-right: 40px;
  }
}
#fsHeader .navigation.container .button.search-trigger {
  display: none;
  background: none;
  border: none;
  padding: 20px;
  color: #0072b0;
  text-indent: -999em;
  text-align: left;
  overflow: hidden;
  position: absolute;
  top: 50%;
  right: -10px;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.page-search-open #fsHeader .navigation.container .button.search-trigger {
  color: #ebce7b;
}
#fsHeader .navigation.container .button.search-trigger:after {
  content: "";
  font-size: 22px;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  text-indent: 0;
  text-align: center;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
@media (min-width: 1180px) {
  #fsHeader .navigation.container .button.search-trigger {
    display: block;
  }
}

.sub-navigation {
  display: none;
  background: #0072b0;
}
.has-sub-navigation .sub-navigation {
  display: block;
}
.has-sub-navigation .sub-navigation.masthead-alternate {
  display: none;
}
@media (min-width: 900px) {
  .has-masthead.has-sub-navigation .sub-navigation {
    display: none;
  }
  .has-masthead.has-sub-navigation .sub-navigation.masthead-alternate {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    z-index: 1;
  }
}
.sub-navigation > header .fsElementTitle {
  display: none;
}
.sub-navigation > header .fsElementHeaderContent {
  background-color: #0072b0;
  padding: 20px 20px;
  cursor: pointer;
  text-align: center;
  color: #fff;
  font-family: "open-sans", sans-serif;
  font-size: 16px;
  line-height: 1.375;
  font-weight: 600;
  text-transform: uppercase;
  position: relative;
}
@media (min-width: 900px) {
  .sub-navigation > header .fsElementHeaderContent {
    display: none;
  }
}
.sub-navigation > header .fsElementHeaderContent:after {
  content: "";
  padding: 0 20px;
  position: absolute;
  top: 50%;
  right: 0;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.sub-navigation > .fsElementContent {
  transition: all 0.333s;
  max-height: 0;
  overflow: hidden;
}
@media (min-width: 900px) {
  .sub-navigation > .fsElementContent {
    max-height: none;
  }
}
.sub-navigation-open .sub-navigation > header .fsElementHeaderContent:after {
  content: "";
}
.sub-navigation-open .sub-navigation > .fsElementContent {
  max-height: 1000px;
  overflow-y: auto;
}
.sub-navigation nav {
  position: relative;
  margin: 0 auto;
  max-width: 1180px;
}
.sub-navigation nav ul,
.sub-navigation nav ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.sub-navigation nav a {
  display: block;
}
.sub-navigation nav ul.fsNavLevel1 {
  margin: 0;
}
@media (min-width: 900px) {
  .sub-navigation nav ul.fsNavLevel1 {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
.sub-navigation nav ul.fsNavLevel1 > li {
  border-top: 1px solid #fff;
}
@media (min-width: 900px) {
  .sub-navigation nav ul.fsNavLevel1 > li {
    display: inline-block;
    vertical-align: middle;
    margin-right: -0.22em;
    border-top: none;
  }
}
.sub-navigation nav ul.fsNavLevel1 > li > a {
  display: block;
  padding: 14px 20px;
  font-size: 1em;
  line-height: 1.375;
  color: #fff;
  background-color: #0072b0;
}
.sub-navigation nav ul.fsNavLevel1 > li > a:hover {
  color: #ebce7b;
  background-color: #0072b0;
}
@media (min-width: 900px) {
  .sub-navigation nav ul.fsNavLevel1 > li > a {
    margin-right: 2px;
    margin-left: 2px;
    font-weight: 400;
    text-align: center;
    color: #fff;
    padding: 24.5px 8px;
    background: none;
    font-size: 16px;
    line-height: 3.25;
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 0;
    padding-bottom: 0;
  }
}
@media (min-width: 900px) and (min-width: 1180px) {
  .sub-navigation nav ul.fsNavLevel1 > li > a {
    padding-top: 23px;
    padding-bottom: 23px;
    font-size: 1.125em;
  }
}
@media (min-width: 900px) {
  .sub-navigation nav ul.fsNavLevel1 > li > a:hover {
    border-top-color: #fff;
    border-top-color: rgba(255, 255, 255, 0.9);
  }
  .sub-navigation nav ul.fsNavLevel1 > li > a:hover, .sub-navigation nav ul.fsNavLevel1 > li > a.active {
    color: #ebce7b;
  }
}
@media (min-width: 900px) and (min-width: 1180px) {
  .sub-navigation nav ul.fsNavLevel1 > li > a {
    padding-top: 0;
    padding-bottom: 0;
    font-size: 1em;
  }
}

.sub-navigation nav ul.fsNavLevel1 > li.fsNavCurrentPage > a, .sub-navigation nav ul.fsNavLevel1 > li.fsNavCurrentPageAncestor > a {
  color: #273446;
  font-weight: 600;
}

#fsHeader .fsSearch.search {
  transition: all 0.333s;
  background-color: #273446;
  background-color: rgba(39, 52, 70, 0.95);
  position: absolute;
  top: 99.9%;
  left: 0;
  z-index: 2;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  border-top: 1px solid transparent;
}
.page-search-open #fsHeader .fsSearch.search {
  max-height: 66px;
  border-top-color: #fff;
  border-top-color: rgba(255, 255, 255, 0.2);
}
#fsHeader .fsSearch.search .fsElementContent td.gsc-search-button {
  transition: all 0.333s;
}
@media (min-width: 500px) {
  #fsHeader .fsSearch.search .fsElementContent td.gsc-search-button {
    background-color: #0072b0;
  }
}
#fsHeader .fsSearch.search .fsElementContent input.gsc-input {
  transition: all 0.333s;
}
@media (min-width: 500px) {
  #fsHeader .fsSearch.search .fsElementContent input.gsc-input {
    padding-left: 86px !important;
  }
}

#fsBannerLeft > .fsBanner > *:not(.fsNavigation) {
  display: none;
}
@media (min-width: 600px) {
  #fsBannerLeft > .fsBanner > *:not(.fsNavigation) {
    display: inherit;
  }
}

#fsFooter {
  padding: 20px;
}
#fsFooter > .fsBanner {
  text-align: center;
  color: #fff;
  color: rgba(255, 255, 255, 0.6);
  font-size: 14px;
  line-height: 1.7142857143;
  margin-right: -10px;
  margin-left: -10px;
}
@media (min-width: 600px) {
  #fsFooter > .fsBanner {
    position: relative;
    margin: 0 auto;
    max-width: 700px;
  }
}
@media (min-width: 900px) {
  #fsFooter > .fsBanner {
    position: relative;
    margin: 0 auto;
    max-width: 940px;
  }
}
@media (min-width: 1180px) {
  #fsFooter > .fsBanner {
    position: relative;
    margin: 0 auto;
    max-width: 1180px;
  }
}
#fsFooter > .fsBanner header .fsElementTitle {
  color: #0072b0;
  font-family: "garamond-premier-pro", Times, serif;
  font-style: italic;
  margin-bottom: 5px;
}
@media (min-width: 1180px) {
  #fsFooter > .fsBanner header .fsElementTitle {
    text-align: left;
  }
}
#fsFooter > .fsBanner a {
  color: #fff;
  color: rgba(255, 255, 255, 0.6);
}
#fsFooter > .fsBanner a:hover {
  color: #fff;
}

#fsFooter .contact {
  margin-top: 30px;
  margin-bottom: 30px;
}
@media (min-width: 1180px) {
  #fsFooter .contact {
    display: inline-block;
    vertical-align: top;
    margin-right: -0.22em;
    width: 33.3333333333%;
  }
}
@media (min-width: 1180px) {
  #fsFooter .contact .fsElementContent {
    text-align: left;
  }
}
#fsFooter .contact [itemprop='name'] {
  display: block;
}
#fsFooter .contact [itemprop='address'] {
  display: block;
}
#fsFooter .contact [itemprop='streetAddress'] {
  display: block;
}
@media (min-width: 900px) {
  #fsFooter .contact [itemprop='streetAddress'] {
    display: inline-block;
  }
  #fsFooter .contact [itemprop='streetAddress']:after {
    content: ',';
  }
}
@media (min-width: 1180px) {
  #fsFooter .contact [itemprop='streetAddress'] {
    display: block;
  }
  #fsFooter .contact [itemprop='streetAddress']:after {
    content: normal;
  }
}
#fsFooter .contact [itemprop='telephone'] {
  margin-right: 0.75em;
}
#fsFooter .contact [itemprop='telephone'],
#fsFooter .contact [itemprop='fax'] {
  text-transform: uppercase;
}

#fsFooter .footer-links {
  margin-top: 30px;
  margin-bottom: 30px;
}
#fsFooter .footer-links ul,
#fsFooter .footer-links ol {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
#fsFooter .footer-links a {
  display: block;
}
@media (min-width: 900px) {
  #fsFooter .footer-links {
    display: inline-block;
    vertical-align: top;
    margin-right: -0.22em;
    width: 50%;
  }
}
@media (min-width: 1180px) {
  #fsFooter .footer-links {
    width: 33.3333333333%;
  }
}
#fsFooter .footer-links .fsElementContent {
  overflow: hidden;
}
#fsFooter .footer-links .fsElementContent nav {
  text-align: center;
}
@media (min-width: 900px) {
  #fsFooter .footer-links .fsElementContent nav {
    margin-right: -10px;
    margin-left: -10px;
  }
}
@media (min-width: 1180px) {
  #fsFooter .footer-links .fsElementContent nav {
    margin-right: 0;
    margin-left: 0;
    text-align: left;
  }
}
#fsFooter .footer-links .fsElementContent ul.fsNavLevel1 {
  margin-top: 0;
}
@media (min-width: 900px) {
  #fsFooter .footer-links .fsElementContent ul.fsNavLevel1 {
    margin-right: 10px;
    margin-left: 10px;
    display: inline-block;
    vertical-align: top;
  }
}
@media (min-width: 1180px) {
  #fsFooter .footer-links .fsElementContent ul.fsNavLevel1 {
    margin-right: 0;
    margin-left: 0;
    margin-left: 40px;
    text-align: left;
  }
  #fsFooter .footer-links .fsElementContent ul.fsNavLevel1:first-child {
    margin-left: 0;
  }
}

#fsFooter .social {
  margin-top: 30px;
  margin-bottom: 30px;
}
@media (min-width: 900px) {
  #fsFooter .social {
    display: inline-block;
    vertical-align: top;
    margin-right: -0.22em;
    width: 50%;
  }
}
@media (min-width: 1180px) {
  #fsFooter .social {
    width: 33.3333333333%;
  }
}
@media (min-width: 1180px) {
  #fsFooter .social .fsElementContent ul.fsNavLevel1 {
    text-align: left;
  }
}
#fsFooter .social .fsElementContent ul.fsNavLevel1 > .break {
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
  text-indent: -999em;
  padding: 0;
  margin: 0;
}
@media (min-width: 600px) {
  #fsFooter .social .fsElementContent ul.fsNavLevel1 > .break {
    display: none;
  }
}
#fsFooter .social .fsElementContent a {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.6);
}
#fsFooter .social .fsElementContent a:after {
  color: #273446;
}
#fsFooter .social .fsElementContent a:hover {
  background-color: #fff;
}

#fsFooter .navigation.hierarchy {
  display: none;
}

#fsFooter .powered-by-finalsite {
  text-align: center;
}
@media (min-width: 600px) {
  #fsFooter .powered-by-finalsite {
    text-align: left;
  }
}
#fsFooter .powered-by-finalsite > .inner {
  display: inline-block;
}
#fsFooter .powered-by-finalsite #fsPoweredByFinalsite {
  display: block;
}

.container.masthead {
  position: relative;
}
.fsComposeMode .container.masthead {
  display: none;
}
.container.masthead .image {
  transition: all 0.333s;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-bottom: 78.125%;
}
@media (min-width: 600px) {
  .container.masthead .image {
    padding-bottom: 75%;
  }
}
@media (min-width: 900px) {
  .container.masthead .image {
    padding-bottom: 62.5%;
  }
}
@media (min-width: 1180px) {
  .container.masthead .image {
    padding-bottom: 750px;
  }
}

.masthead.container .description {
  padding: 0 20px;
  background-color: #fff;
  text-align: center;
}
@media (min-width: 900px) {
  .masthead.container .description {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: transparent;
  }
}
.masthead.container .description > .inner {
  padding: 20px 0;
}
@media (min-width: 900px) {
  .masthead.container .description > .inner {
    position: relative;
    margin: 0 auto;
    max-width: 74.5762711864%;
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.7);
  }
}
@media (min-width: 1180px) {
  .masthead.container .description > .inner {
    position: relative;
    margin: 0 auto;
    max-width: 880px;
  }
}
.masthead.container .description h1 {
  margin-bottom: 0;
}
.masthead.container .description p {
  margin: 0;
}

#fsPageContent > .fsLayout .fsContent.masthead {
  display: none;
}
.fsComposeMode #fsPageContent > .fsLayout .fsContent.masthead {
  display: block;
}
.has-description #fsPageContent > .fsLayout .fsContent.description {
  display: none;
}

.foo {
  color: #f00;
}

.home #fsBannerLeft,
.home #fsBannerRight {
  display: none;
}
.home #fsPageBodyWrapper {
  padding-right: 0;
  padding-left: 0;
  padding-top: 0;
  padding-bottom: 0;
  background: #fff;
}
.home #fsPageContent > .fsLayout {
  margin: 0;
  padding: 0;
}
.home #fsPageContent > .fsLayout > .fsDiv {
  margin: 0;
  padding: 0;
  float: none;
}

.home .fsPlayer.masthead {
  clear: both;
  margin: 0;
  padding: 0;
  position: relative;
}
.home .fsPlayer.masthead > header {
  display: none;
}
.fsComposeMode.home .fsPlayer.masthead header {
  display: block;
}
.home .fsPlayer.masthead .fsElementContent {
  transition: all 0.333s;
  background-color: #80b9d8;
  padding-bottom: 78.125%;
  position: relative;
}
@media (min-width: 600px) {
  .home .fsPlayer.masthead .fsElementContent {
    padding-bottom: 75%;
  }
}
@media (min-width: 900px) {
  .home .fsPlayer.masthead .fsElementContent {
    padding-bottom: 66.6666666667%;
  }
}
@media (min-width: 1180px) {
  .home .fsPlayer.masthead .fsElementContent {
    padding-bottom: 800px;
  }
}
.home .fsPlayer.masthead .fsElementContent:after {
  content: "";
  animation: animate-spin 2s infinite linear;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  text-align: center;
  color: #4d9cc8;
  font-size: 60px;
  text-transform: uppercase;
  font-weight: 700;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.has-masthead .home .fsPlayer.masthead .fsElementContent {
  padding-bottom: 0;
}
.has-masthead .home .fsPlayer.masthead .fsElementContent:after {
  content: normal;
}
.home .fsPlayer.masthead > footer {
  display: none;
}
.home .fsPlayer.masthead .cluster {
  position: absolute;
  bottom: 0;
  z-index: 1000;
  width: 100%;
}
.home .fsPlayer.masthead .cluster > .inner {
  margin-right: 0;
  margin-left: 0;
}
@media (min-width: 600px) {
  .home .fsPlayer.masthead .cluster > .inner {
    margin-right: auto;
    margin-left: auto;
  }
}
.home .fsPlayer.masthead .slide .image {
  position: relative;
}
.home .fsPlayer.masthead .slide .image > .inner {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
.home .fsPlayer.masthead .slide .details {
  display: none;
  padding: 0 20px 110px;
  text-align: center;
  color: #fff;
}
@media (min-width: 600px) {
  .home .fsPlayer.masthead .slide .details {
    display: block;
    position: relative;
    margin: 0 auto;
    max-width: 700px;
  }
}
@media (min-width: 900px) {
  .home .fsPlayer.masthead .slide .details {
    position: relative;
    margin: 0 auto;
    max-width: 960px;
  }
}
@media (min-width: 1180px) {
  .home .fsPlayer.masthead .slide .details {
    position: relative;
    margin: 0 auto;
    max-width: 1180px;
  }
}
.home .fsPlayer.masthead .slide .details .title {
  color: #fff;
}
.home .fsPlayer.masthead .slide .details .copy {
  font-family: "open-sans", sans-serif;
  font-size: 16px;
  line-height: 1.5;
}
.home .fsPlayer.masthead .container.masthead {
  transition: all 0.333s;
  max-height: 0;
  overflow: hidden;
}
.has-masthead .home .fsPlayer.masthead .container.masthead {
  max-height: 850px;
}

.home section.fsPostElement,
.home section.fsNews {
  padding: 40px 20px 0;
  clear: both;
  margin: 0;
}
@media (min-width: 600px) {
  .home section.fsPostElement,
  .home section.fsNews {
    padding-top: 60px;
  }
}
@media (min-width: 600px) {
  .home section.fsPostElement > header,
  .home section.fsPostElement .fsElementContent,
  .home section.fsNews > header,
  .home section.fsNews .fsElementContent {
    position: relative;
    margin: 0 auto;
    max-width: 700px;
  }
}
@media (min-width: 900px) {
  .home section.fsPostElement > header,
  .home section.fsPostElement .fsElementContent,
  .home section.fsNews > header,
  .home section.fsNews .fsElementContent {
    position: relative;
    margin: 0 auto;
    max-width: 960px;
  }
}
@media (min-width: 1180px) {
  .home section.fsPostElement > header,
  .home section.fsPostElement .fsElementContent,
  .home section.fsNews > header,
  .home section.fsNews .fsElementContent {
    position: relative;
    margin: 0 auto;
    max-width: 1180px;
  }
}
.home section.fsPostElement > header,
.home section.fsNews > header {
  display: none;
  border: none;
  padding: 0;
}
.home section.fsPostElement .fsElementContent .fsListItems,
.home section.fsNews .fsElementContent .fsListItems {
  margin-right: -10px;
  margin-left: -10px;
}
.home section.fsPostElement .fsElementContent .fsListItems article, .home section.fsNews .fsElementContent .fsListItems article {
  transition: all 0.333s;
  padding: 0 10px;
  margin: 0;
  width: 33.3333333333%;
  height: 1px;
  overflow: hidden;
  opacity: 0.1;
  visibility: hidden;
}
.home section.fsPostElement .fsElementContent .fsListItems article:first-child,
.home section.fsNews .fsElementContent .fsListItems article:first-child {
  visibility: visible;
  height: auto;
}
.home section.fsPostElement .fsElementContent .fsListItems article .fsTitle,
.home section.fsNews .fsElementContent .fsListItems article .fsTitle {
  font-size: 1.125em;
  line-height: 1.3333333333;
  margin-bottom: 0;
}
.home section.fsPostElement .fsElementContent .fsListItems article .fsDate,
.home section.fsNews .fsElementContent .fsListItems article .fsDate {
  color: #656565;
}
.home-news-ready .home section.fsPostElement .fsElementContent .fsListItems article,
.home-news-ready .home section.fsNews .fsElementContent .fsListItems article {
  width: auto;
  opacity: 1;
  visibility: visible;
  height: auto;
}
.home section.fsPostElement .fsElementContent .fsListItems article img, .home section.fsNews .fsElementContent .fsListItems article img {
  width: 100%;
}

.home section.spotlight {
  clear: both;
}
@media (min-width: 600px) {
  .home section.spotlight > header,
  .home section.spotlight .fsElementContent,
  .home section.spotlight .spotlight.container > .inner {
    position: relative;
    margin: 0 auto;
    max-width: 700px;
  }
}
@media (min-width: 900px) {
  .home section.spotlight > header,
  .home section.spotlight .fsElementContent,
  .home section.spotlight .spotlight.container > .inner {
    position: relative;
    margin: 0 auto;
    max-width: 960px;
  }
}
@media (min-width: 1180px) {
  .home section.spotlight > header,
  .home section.spotlight .fsElementContent,
  .home section.spotlight .spotlight.container > .inner {
    position: relative;
    margin: 0 auto;
    max-width: 1180px;
  }
}
.home section.spotlight > header {
  display: none;
}
.home section.spotlight .fsElementContent {
  display: none;
}
.home section.spotlight .fsElementContent dl dt,
.home section.spotlight .fsElementContent dl dd {
  margin: 0;
  padding: 0;
}
.home section.spotlight .fsElementContent dl dt {
  font-weight: 700;
}
.home section.spotlight .fsElementContent dl dd {
  margin-bottom: 10px;
}
.home section.spotlight > footer {
  display: none;
}
.home section.spotlight .spotlight.container {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  background-image: none;
}
.home section.spotlight .spotlight.container:before {
  transition: all 0.333s;
  background-color: #fff;
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
}
@media (min-width: 600px) {
  .home section.spotlight .spotlight.container:before {
    background-color: #273446;
    background-color: rgba(39, 52, 70, 0.8);
  }
}
.home section.spotlight .spotlight.container > .inner {
  padding: 40px 20px 0;
  position: relative;
  z-index: 1;
}
@media (min-width: 600px) {
  .home section.spotlight .spotlight.container > .inner {
    padding-top: 60px;
  }
}
@media (min-width: 600px) {
  .home section.spotlight .spotlight.container > .inner {
    padding-top: 70px;
  }
}
.home section.spotlight .spotlight.container > .inner h2 {
  transition: all 0.333s;
  color: #1d1d1d;
  text-align: center;
}
@media (min-width: 600px) {
  .home section.spotlight .spotlight.container > .inner h2 {
    color: #fff;
  }
}
.home section.spotlight .spotlight.container .carousel .slide > .inner {
  text-align: center;
  padding: 10px;
}
.home section.spotlight .spotlight.container .carousel .slide .number {
  transition: all 0.333s;
  display: inline-block;
  color: #ebce7b;
  font-family: "garamond-premier-pro", Times, serif;
  letter-spacing: normal;
  font-style: normal;
  font-size: 50px;
  line-height: 1.2;
  width: 160px;
  height: 160px;
  border-radius: 100%;
  position: relative;
  border: 1px solid #bebebe;
}
@media (min-width: 600px) {
  .home section.spotlight .spotlight.container .carousel .slide .number {
    border-color: #fff;
    border-color: rgba(255, 255, 255, 0.5);
  }
}
.home section.spotlight .spotlight.container .carousel .slide .number > span {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  text-align: center;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.home section.spotlight .spotlight.container .carousel .slide .label {
  transition: all 0.333s;
  color: #1d1d1d;
  margin-top: 30px;
}
@media (min-width: 600px) {
  .home section.spotlight .spotlight.container .carousel .slide .label {
    color: #fff;
  }
}

.home .cluster > .inner {
  margin-right: -20px;
  margin-left: -20px;
  margin-top: 40px;
  display: block;
  padding: 0 50px;
  position: relative;
}
@media (min-width: 600px) {
  .home .cluster > .inner {
    margin-right: auto;
    margin-left: auto;
    margin-top: 60px;
    width: 340px;
  }
}
.home .cluster button {
  border: 0;
  background: none;
  outline: 0;
  margin: 0;
  padding: 0;
  transition: all 0.333s;
  width: 50px;
  height: 50px;
  color: #fff;
  position: absolute;
  bottom: 0;
  z-index: 2;
  overflow: hidden;
  text-indent: -666em;
  background-color: #338ec0;
}
@media (min-width: 600px) {
  .home .cluster button {
    background-color: #0072b0;
    background-color: rgba(0, 114, 176, 0.8);
  }
}
.home .cluster button:hover {
  background-color: #ebce7b;
}
.home .cluster button:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  text-align: center;
  text-indent: 0;
  font-size: 26px;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.home .cluster button.previous {
  left: 0;
  right: auto;
}
.home .cluster button.previous:after {
  content: "";
}
.home .cluster button.next {
  left: auto;
  right: 0;
}
.home .cluster button.next:after {
  content: "";
}
.home .cluster .link {
  display: block;
}
.home .cluster .link a {
  display: block;
  text-align: center;
  color: #fff;
  font-family: "open-sans", sans-serif;
  font-size: 14px;
  line-height: 1.5;
  padding: 14.5px 10px;
  text-transform: uppercase;
  font-weight: 600;
  background-color: #0072b0;
}
.home .cluster .link a:hover {
  background-color: #ebce7b;
}

.colors ol {
  zoom: 1;
  margin-bottom: 20px;
  padding: 0;
  list-style: none;
}
.colors ol:after {
  display: table;
  clear: both;
  content: '';
}
.colors ol li {
  position: relative;
  float: left;
  margin-bottom: 2em;
  height: 4em;
  width: 40%;
}
@media (min-width: 600px) {
  .colors ol li {
    width: 30%;
  }
}
@media (min-width: 1180px) {
  .colors ol li {
    width: 20%;
  }
}
.colors ol li:after {
  position: absolute;
  width: 100%;
  top: 100%;
  left: 0;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  color: #656565;
}
.colors ol li:nth-of-type(1) {
  background: #1d1d1d;
  color: #1d1d1d;
}
.colors ol li:nth-of-type(1):after {
  content: "#1d1d1d";
}
.colors ol li:nth-of-type(2) {
  background: #273446;
  color: #273446;
}
.colors ol li:nth-of-type(2):after {
  content: "#273446";
}
.colors ol li:nth-of-type(3) {
  background: #0072b0;
  color: #0072b0;
}
.colors ol li:nth-of-type(3):after {
  content: "#0072b0";
}
.colors ol li:nth-of-type(4) {
  background: #ebce7b;
  color: #ebce7b;
}
.colors ol li:nth-of-type(4):after {
  content: "#ebce7b";
}
.colors ol li:nth-of-type(5) {
  background: #007737;
  color: #007737;
}
.colors ol li:nth-of-type(5):after {
  content: "#007737";
}
.colors ol li:nth-of-type(6) {
  background: #bebebe;
  color: #bebebe;
}
.colors ol li:nth-of-type(6):after {
  content: "#bebebe";
}
.colors ol li:nth-of-type(7) {
  background: #8f8f8f;
  color: #8f8f8f;
}
.colors ol li:nth-of-type(7):after {
  content: "#8f8f8f";
}
.colors ol li:nth-of-type(8) {
  background: #656565;
  color: #656565;
}
.colors ol li:nth-of-type(8):after {
  content: "#656565";
}
.colors ol li:nth-of-type(9) {
  background: #424242;
  color: #424242;
}
.colors ol li:nth-of-type(9):after {
  content: "#424242";
}
.colors ol li:nth-of-type(1) {
  background: #1d1d1d;
  color: #1d1d1d;
}
.colors ol li:nth-of-type(1):after {
  content: "#1d1d1d";
}

.headers h1:after {
  content: " size: 55px / line: 60px";
}
.headers h2:after {
  content: " size: 36px / line: 40px";
}
.headers h3:after {
  content: " size: 20px / line: 30px";
}
.headers h4:after {
  content: " size: 16px / line: 24px";
}
.headers h5:after {
  content: " size: 16px / line: 24px";
}
.headers h6:after {
  content: " size: 16px / line: 24px";
}



/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwidmVuZG9yL3BsYWNlaG9sZGVyX3BvbHlmaWxsLm1pbi5zY3NzIiwidXRpbGl0eS9fbm9ybWFsaXplLnNjc3MiLCJ1dGlsaXR5L19leHRlbmRzLnNjc3MiLCJfY29uZmlnLnNjc3MiLCJ1dGlsaXR5L19taXhpbnMuc2NzcyIsIl9odG1sLnNjc3MiLCJ0eXBlL19pY29uLWZvbnQuc2NzcyIsImxheW91dHMvX2xheW91dHMuc2NzcyIsImVsZW1lbnRzL19hY2NvcmRpb25zLnNjc3MiLCJlbGVtZW50cy9fY2FsZW5kYXJzLnNjc3MiLCJlbGVtZW50cy9fY29uc3RpdHVlbnRzLnNjc3MiLCJlbGVtZW50cy9fY3VzdG9tLWVsZW1lbnRzLnNjc3MiLCJlbGVtZW50cy9uYXZpZ2F0aW9uL19tYWluLnNjc3MiLCJlbGVtZW50cy9uYXZpZ2F0aW9uL190aWVyLnNjc3MiLCJlbGVtZW50cy9uYXZpZ2F0aW9uL19vZmYtY2FudmFzLnNjc3MiLCJlbGVtZW50cy9uYXZpZ2F0aW9uL19zb2NpYWwuc2NzcyIsImVsZW1lbnRzL19uZXdzLnNjc3MiLCJlbGVtZW50cy9fc2VhcmNoLnNjc3MiLCJlbGVtZW50cy9fdGFicy5zY3NzIiwiZWxlbWVudHMvX2Zvcm1zLnNjc3MiLCJlbGVtZW50cy9fdGhlcm1vbWV0ZXIuc2NzcyIsImJhbm5lcnMvX2hlYWRlci5zY3NzIiwiYmFubmVycy9fbGVmdC5zY3NzIiwiYmFubmVycy9fZm9vdGVyLnNjc3MiLCJwYWdlcy9fdGllci5zY3NzIiwicGFnZXMvX2hvbWUuc2NzcyIsInBhZ2VzL19zdHlsZS1ndWlkZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7R0FLRztBQUVIO0VBQWlCLG1CQUFpQjtFQUFDLGVBQWE7RUFBQyxZQUFVO0VBQUMsd0JBQXNCO0VBQUMsaUJBQWU7RUFBQyxXQUFTO0VBQUMsYUFBVztDRFF2SDs7QUNSd0g7RUFBMEMsNEJBQTBCO0VBQUMsK0JBQTBC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TjRiakI7O0FNemJEO0VEaUlFLGtCQUFzQjtFQUN0QiwwQkFBbUQ7RUFFbkQsbUJEc0JhO0VFeEpiLGVGNllnQztFRTVZaEMsa0RGd05xQjtFRXZOckIsdUJBQXNCO0VBQ3RCLG1CQUFrQjtFQUNsQixvQkFBbUI7Q044YnBCOztBTTNiRDs7RUR3SEUsa0JBQXNCO0VBQ3RCLGlCQUFtRDtFQUVuRCxpQkQyQlc7RUVwSlgsZUZtU3VCO0VFbFN2QixxQ0ZrWnVDO0VFalp2Qyx1QkFBc0I7RUFDdEIsbUJBQWtCO0VBQ2xCLGlCQUFnQjtDTmljakI7O0FNOWJEO0VEK0dFLGVBQXNCO0VBQ3RCLGlCQUFtRDtFQUVuRCxpQkRnQ1c7RUVoSlgsZUYwUnVCO0VFelJ2QixxQ0Z5WXVDO0VFeFl2Qyx1QkFBc0I7RUFDdEIsbUJBQWtCO0VBQ2xCLGlCQUFnQjtDTm1jakI7O0FNaGNEO0VEc0dFLGVBQXNCO0VBQ3RCLGlCQUFtRDtFQUVuRCxpQkRxQ1c7RUU1SVgsZUZpUnVCO0VFaFJ2QixxQ0ZnWXVDO0VFL1h2Qyx1QkFBc0I7RUFDdEIsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQiwwQkFBeUI7Q05xYzFCOztBTWxjRDs7RUQ0RkUsZUFBc0I7RUFDdEIsaUJBQW1EO0VBRW5ELGlCRDBDVztFRXZJWCxlRnVRdUI7RUV0UXZCLHFDRnNYdUM7RUVyWHZDLHVCQUFzQjtFQUN0QixtQkFBa0I7RUFDbEIsaUJBQWdCO0NOd2NqQjs7QU1yY0Q7RUFDRSxjQUFhO0VBQ2Isb0JGd0ZhO0NKZ1hkOztBTWhjRDtFQUNFLHNCQUFxQjtFQUNyQixlRjZOMEQ7RUU1TjFELHNDQUVTO0NOaWNWO0FNL2JDO0VBQ0UsZUYyVXlDO0NKc0g1Qzs7QU12YkQ7O0VBRUUsbUJGekhXO0VFMEhYLGlCRjJEYTtFRTFEYixvQkYwRGE7Q0pnWWQ7O0FNcmFEOzs7RURxRkUsaUJEck9XO0VDc09YLG9CRHRPVztFRW1KWCxZQUFXO0VBQ1gsaUJBQWdCO0VBQ2hCLGtCQUFpQjtDTjBhbEI7QU1yYUs7OztFQUNFLDhCQUF1RTtFQUV2RSxpQkFBZ0I7Q053YXZCO0FNN1pHOztFQUNFLGlDQUEwRTtDTmdhL0U7QU0vWks7OztFQUNFLGlCQUFnQjtDTm1hdkI7QU14WkM7Ozs7Ozs7RUFFRSxtQkFBMEQ7RUFDMUQsb0JBQW1CO0VBQ25CLDhCRjhKZ0M7Q0ppUW5DO0FNN1pHOzs7OztFQUNFLCtCQUF3RTtDTm1hN0U7QU1oYUc7Ozs7O0VBQ0UsZ0NBQXlFO0NOc2E5RTtBTWxhQzs7O0VBQ0UsaUJBQWdCO0VBQ2hCLGlCQUFnQjtDTnNhbkI7QU03WkM7O0VBQ0UsMEJGd0krQjtDSndSbEM7O0FNaFpHOzs7RUFDRSxtQkFBd0U7RUFDeEUsMEJGeU40QjtFRXhONUIsWUZzTjhCO0VFck45QixxQ0ZzT21DO0VFck9uQyx1QkFBc0I7RUFDdEIsbUJBQWtCO0VBQ2xCLGdCRjJHc0I7RUUxR3RCLGtCRjJHb0M7RUUxR3BDLDBCQUE4RTtFQUU5RSxpQkFBZ0I7RUFDaEIsMEJBQXlCO0VBQ3pCLG1CQUFrQjtDTm9adkI7O0FNdllEOzs7O0VBSUUsYUFBWTtFQUNaLGdCQUFlO0NOMFloQjs7QU12WUQ7RUFDRSxVQUFTO0VBQ1QsZ0JBQWU7Q04wWWhCOztBTXBZRDs7RUFFRSxlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLGVBQWlFO0VBQ2pFLG1CRjNCc0I7RUU0QnRCLGdCRmhDb0I7RUVpQ3BCLGlCRmhDNkI7RUVpQzdCLGVGaUQwRDtFRWhEMUQsa0RGWnFCO0VFYXJCLHVCQUFzQjtFQUN0QixtQkFBa0I7RUFDbEIsb0JBQW1CO0NOdVlwQjtBTXJZQzs7RUFDRjs7Ozs7SUFLRTtDTndZRDtBTXJZQzs7O0VBR0UsZ0JGdkNxQjtDSjhheEI7QU1wWUM7OztFQUVFLGtCRnJEb0I7RUVzRHBCLGtCQUF3RTtFQUN4RSxvQkZyRHdDO0NKNGIzQzs7QU0vWEQ7O0VBRUUsZUFBYztFQUNkLGVBQWlCO0VBQ2pCLGdCRjlENkI7RUUrRDdCLGlCRm9DbUM7RUVuQ25DLGVGOURrQjtFRStEbEIscUNGZ0p1QztFRS9JdkMsaUJBQWdCO0VBQ2hCLG1CQUFrQjtDTmtZbkI7QU1oWUM7O0VBQ0UsY0FBYTtDTm1ZaEI7O0FPanRCRDtFQUNFLHVCSHdKbUI7RUd0Sm5CLGtGQUFtRztFQUNuRyxpZkFJK0c7RUFDL0csaUJBQWdCO0VBQ2hCLG1CQUFrQjtDUCtzQm5CO0FPNXNCRDtFQUNFLHVCSDJJbUI7RUcxSW5CLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsb0JBQW1CO0VBQ25CLHFCQUFvQjtFQUNwQixxQkFBb0I7RUFDcEIsZUFBYztFQUVkLHVDQUF1QztFQUN2QyxvQ0FBbUM7RUFDbkMsbUNBQWtDO0NQNnNCbkM7O0FPdnNCRDtFQUFvQixhSCtIQTtDSjRrQm5COztBTzFzQkQ7RUFBcUIsYUgrSEE7Q0ora0JwQjs7QU83c0JEO0VBQXFCLGFIK0hBO0NKa2xCcEI7O0FPaHRCRDtFQUE0QixhSCtIQTtDSnFsQjNCOztBT250QkQ7RUFBNkIsYUgrSEE7Q0p3bEI1Qjs7QU90dEJEO0VBQTBCLGFIK0hBO0NKMmxCekI7O0FPenRCRDtFQUE0QixhSCtIQTtDSjhsQjNCOztBTzV0QkQ7RUFBMEIsYUgrSEE7Q0ppbUJ6Qjs7QU8vdEJEO0VBQTJCLGFIc2JtQjtDSjZTN0M7O0FPbHVCRDtFQUF3QixhSCtIQTtDSnVtQnZCOztBT3J1QkQ7RUFBMEIsYUhxYm9CO0NKb1Q3Qzs7QU94dUJEO0VBQXdCLGFIK0hBO0NKNm1CdkI7O0FPM3VCRDtFQUF1QixhSCtIQTtDSmduQnRCOztBTzl1QkQ7RUFBd0IsYUgrSEE7Q0ptbkJ2Qjs7QU9qdkJEO0VBQTRCLGFIK0hBO0NKc25CM0I7O0FPcHZCRDtFQUFvQixhSCtIQTtDSnluQm5COztBT3Z2QkQ7RUFBMkIsYUgrSEE7Q0o0bkIxQjs7QU8xdkJEO0VBQXlCLGFIK0hBO0NKK25CeEI7O0FPN3ZCRDtFQUFzQixhSCtIQTtDSmtvQnJCOztBT2h3QkQ7RUFBb0IsYUgrSEE7Q0pxb0JuQjs7QU9ud0JEO0VBQXVCLGFIK0hBO0NKd29CdEI7O0FRcnpCRDtFSG9QRSxvQkQxT1c7RUMyT1gsbUJEM09XO0VDK09YLGtCQUFvQjtFQUNwQixxQkFBdUI7RUd2UHZCLGlCSmlja0M7RUloY2xDLGlCQUFnQjtFQUNoQixtQkFBa0I7RUFDbEIsV0FBVTtDUjB6Qlg7QVF4ekJDO0VIaVBBLGlCQUFvQjtFQUNwQixvQkFBdUI7Q0wwa0J4QjtBS2x1Qkc7RUcxRkY7SUhpUEEsa0JBQW9CO0lBQ3BCLHFCQUF1QjtHTCtrQnRCO0NBQ0Y7O0FRenpCRDtFSGlDRSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLGtCQUFpQjtDTDR4QmxCO0FRNXpCQztFQUNFLFVBQVM7RUFDVCxnQkFBZTtDUjh6QmxCOztBUWx6QkQ7RUgyQkUsWUFBVztFQUNYLG9CRHBEVztFQzBEVCxZQUFXO0VHL0JiLFlBQVc7Q1JzekJaO0FLenZCRztFR2hFSjtJSHNDSSxZQUFXO0dMdXhCWjtDQUNGO0FLOXZCRztFR2hFSjtJQU1JLG9CSjNCbUI7SUk0Qm5CLGVBQWM7SUFDZCxzQkFBNEI7R1I0ekI3QjtFUTF6QkM7SUFDRSx5QkFBd0I7R1I0ekIzQjtDQUNGO0FLeHdCRztFR2hFSjtJQWlCSSxzQkpsQ3FFO0dKNjFCdEU7Q0FDRjs7QVF0ekJDO0VBQ0UsZUFBYztDUnl6QmpCO0FLanhCRztFR3pDRjtJQUdJLGNBQWE7R1IyekJoQjtDQUNGOztBUXZ6QkQ7RUhKRSxZQUFXO0VBQ1gsb0JEcERXO0VDdURULHVCQUFzQjtFR0V4QixVQUFTO0NSNHpCVjtBSzd4Qkc7RUdqQ0o7SUhPSSxZQUFXO0dMMnpCWjtDQUNGO0FLbHlCRztFRzlCRjtJQUdJLGlDQUFrQztHUmkwQnJDO0NBQ0Y7QUt2eUJHO0VHdEJGO0lBR0ksaUNBQThDO0dSOHpCakQ7Q0FDRjtBSzV5Qkc7RUdkRjtJQUVJLHVCQUFzQjtHUjR6QnpCO0NBQ0Y7QVF6ekJDO0VINFNBLFFBQU87Q0xnaEJSO0FLOWdCQztFQUNFLGVBQWM7RUFDZCxZQUFXO0VBQ1gsWUFBVztDTGdoQmQ7QUt6ekJHO0VHUkY7SUFJSSxpQ0FBOEM7R1JpMEJqRDtDQUNGO0FLOXpCRztFR1JGO0lBUUksaUNBQTBEO0dSazBCN0Q7Q0FDRjtBS24wQkc7RUdPRTtJQUNFLHVCQUFzQjtHUit6QjNCO0NBQ0Y7O0FRMXpCRDtFSG5ERSxZQUFXO0VBQ1gsb0JEcERXO0VDMERULFlBQVc7RUc4Q2IsaUJBQWdCO0NSK3pCakI7QUsvMEJHO0VHY0o7SUh4Q0ksWUFBVztHTDYyQlo7Q0FDRjtBS3AxQkc7RUdjSjtJQUtJLG1CSnZHa0I7SUl3R2xCLHNCSnBHb0U7R0p5NkJyRTtDQUNGO0FLMTFCRztFR3VCRjtJQUlJLHNCQUFtQztJQUNuQyw0QkFBbUM7SUFDbkMsZ0JBQWU7R1JtMEJsQjtDQUNGO0FLajJCRztFR3VCRjtJQVdJLG1CSnRIZ0I7SUl1SGhCLHNCSm5Ia0U7SUlvSGxFLFVBQVM7R1JtMEJaO0NBQ0Y7QUt4MkJHO0VHeUNGO0lBRUksdUJBQXNCO0lBQ3RCLGVBQWM7R1JpMEJqQjtDQUNGOztBSzkyQkc7RUd1REo7SUhpRkUsb0JBQXFCO0lBQ3JCLG1CQUFvQjtHTDJ1Qm5CO0NBQ0Y7QVF4ekJDO0VIbEdBLFlBQVc7RUFDWCxvQkRwRFc7RUMwRFQsWUFBVztDTHc1QmQ7QUsxM0JHO0VHNkRGO0lIdkZFLFlBQVc7R0x3NUJaO0NBQ0Y7QUsvM0JHO0VHNkRGO0lIcUZBLG9CRDFPVztJQzJPWCxtQkQzT1c7R0o0OUJWO0NBQ0Y7O0FLcjRCRztFR3FGRjtJQUdJLFdBQWU7R1JrekJsQjtDQUNGOztBSzM0Qkc7RUdzR0Y7SUFHSSxzQkFBZTtHUnV5QmxCO0NBQ0Y7O0FLajVCRztFR3VIRjtJQUdJLFdBQWU7R1I0eEJsQjtDQUNGO0FLdjVCRztFR3VIRjtJQU9JLFdBQWU7R1I2eEJsQjtDQUNGOztBUXR1QkM7RUFDRSxZQUFXO0NSeXVCZDtBS2g2Qkc7RUdzTEY7SUFJSSxzQkFBZTtHUjB1QmxCO0NBQ0Y7QVF0dUJDO0VBQ0UsWUFBVztDUnd1QmQ7QUt4NkJHO0VHK0xGO0lBSUksc0JBQWU7R1J5dUJsQjtDQUNGOztBU3RoQ0Q7RUFDRSxvQkxnQlc7Q0p5Z0NaO0FLcGRDO0VBQ0UsbUJEbks0QjtDSnluQi9CO0FLcGRHO0VBaktGLHVCQUErQjtFQW1LM0IsZ0JBQWU7RUFDZixvQkQvSDRCO0VDZ0k1Qiw4QkFBa0Y7Q0wwZHZGO0FLeGRLO0VBdktKLHVCQUErQjtFQWpPL0IsaUJBQWdCO0VBQ2hCLGVBQWM7RUFDZCxnQkQ4TndCO0VDN054QixrQkQ4TnNDO0VDN050QyxtQkFBb0U7RUFDcEUsWUQrUGtDO0VDOVBsQyxxQ0QrUXVDO0VDOVF2QywwQkFBeUI7RUFDekIsaUJEME5xQjtDSjhvQnRCO0FLcGVPO0VBQVcsdUJEdmJFO0NKODVCcEI7QUs1ZEs7RUFDRSxvQkR0SnFDO0VDdUpyQywwQkR6TjZCO0NKdXJCcEM7QUs1ZE87RUFDRSxZRHhKMEI7Q0pzbkJuQztBS3pkRztFQUNFLDBCQUF5RjtFQUN6RixpQkFBZ0I7Q0wyZHJCO0FLaGRLO0VBQ0UsaUJEM0s0QjtFQzRLNUIsc0JEcEtpQztFQ3FLakMsaUNBQWdDO0NMa2R2QztBS2hkTztFQUNFLGVEOUt3QjtDSmdvQmpDO0FLaGRTO0VBQ0UsYUQ5SmtDO0NKZ25CN0M7O0FTeGtDRDs7OztFSmlPRSxhRHZFbUI7RUtySm5CLGdCTCtaeUI7RUs5WnpCLGFBQVk7RUFDWixZQUFXO0VBQ1gsYUFBWTtDVDJrQ2I7O0FTeGtDRDs7RUFFRSxhTDJjNEM7Q0pnb0I3Qzs7QVN4a0NEOztFQUVFLGFMcWM0QztDSnNvQjdDOztBU3hrQ0Q7RUFDRSxzQkFBd0I7Q1Qya0N6Qjs7QVN2a0NDO0VBQ0UsY0FBYTtDVDBrQ2hCO0FTeGtDQztFQUNFLG1CQUFxQjtFQUNyQixhQUFZO0NUMGtDZjs7QVVqbkNELGlDQUFpQztBQU9qQztFTCtPRSxpQkRyT1c7RUNzT1gsb0JEdE9XO0VDdW9CWCxxQkR2b0JXO0NKdW1DWjtBS3I2QkM7RUFDRSwyQkFBa0M7RUFDbEMsa0JBQTZEO0NMdTZCaEU7QUt0NkJHO0VBR0Usb0JBQStEO0NMczZCcEU7QUtyZUM7RUFDRSxjQUFhO0NMdWVoQjtBS3JlQztFQUNFLGlCQUFnQjtDTHVlbkI7QUtyZUM7RUFmQSxpQ0FBNEI7Q0x1ZjdCO0FVOW5DQztFTDRPQSxpQkRyT1c7RUNzT1gsb0JEdE9XO0NKMm5DWjtBS2hlQztFQUNFLGNBQWE7Q0xrZWhCO0FLL2NDO0VB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LGlCUnlRMkM7RVF4UTNDLHNCQUEyRDtFQUMzRCxlUnlReUM7RVF4UXpDLGtEUjZRcUI7RVE1UXJCLHVCQUFzQjtFQUN0QixtQkFBa0I7RUFDbEIsb0JBQW1CO0NaNGlEcEI7O0FZcmlERDs7RUFHRSxrQkFBNEI7RUFDNUIsaUJBQTZEO0VBQzdELG1CUm1PeUI7RVFsT3pCLGVSNmEyQztFUTVhM0MscUNSK2J1QztFUTlidkMsdUJBQXNCO0VBQ3RCLG1CQUFrQjtFQUNsQixpQkFBZ0I7Q1p1aURqQjs7QVloaUREOztFQUVFLGVBQWM7RUFDZCxlQUFpQjtFQUNqQix3QlIrT29DO0VROU9wQyxnQlIwT2lCO0VRek9qQiwwQlIwTzBCO0VRek8xQixlUnVTMEQ7RVF0UzFELGtEUjBPcUI7RVF6T3JCLHVCQUFzQjtFQUN0QixtQkFBa0I7RUFDbEIsaUJBQWdCO0VBR2xCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FrQks7Q1ppaURKOztBWTFoREQ7RVB3S0UsaUJEck9XO0VDc09YLG9CRHRPVztFQ3VvQlgscUJEdm9CVztDSjZsRFo7QUszNUNDO0VBQ0UsMkJBQWtDO0VBQ2xDLGtCQUE2RDtDTDY1Q2hFO0FLNTVDRztFQUdFLG9CQUErRDtDTDQ1Q3BFO0FLMzlCQztFQUNFLGNBQWE7Q0w2OUJoQjtBSzM5QkM7RUFDRSxpQkFBZ0I7Q0w2OUJuQjtBSzM5QkM7RUFmQSxpQ0FBNEI7Q0w2K0I3Qjs7QVl6aUREOztFUGdDRSxxQ0R1V3VDO0VDdFd2QyxpQkQ4TWtCO0VDN01sQiwwQkFBeUI7RUFDekIsZ0JEd05rQztFQ3ZObEMsa0JEd05nRDtFQzVOaEQscUNEdVd1QztFQ3RXdkMsaUJEOE1rQjtFQzdNbEIsMEJBQXlCO0VBQ3pCLGdCRHdOa0M7RUN2TmxDLGtCRHdOZ0Q7RUNuTmhELHNCQUFxQjtFQUNyQixVQUFTO0VBQ1QsaUJBQW1CO0VBQ25CLG1CQUE0RTtFQUM1RSxvQkRtTjBEO0VDbE4xRCxZRHdVa0M7RUN2VWxDLFdBQVU7RUFDVixtQkFBa0I7RU81Q2xCLDhCQUErRDtDWjRqRGhFO0FLOWdEQzs7RUFDRSx1QkRt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ckJGLDBCRHpSMkM7RUMwUjNDLG1CQUEwRjtFQUMxRixnQkFBZTtFQUNmLG1CQUFrQjtFQUVsQixZRDVSa0M7RUM2UmxDLHFDRDVRdUM7RUM2UXZDLGdCRDVTMkM7RUM2UzNDLG1CRDVTMkQ7RUM2UzNELGlCRDNTaUM7RUM0U2pDLDBCQUF5QjtFQUV6QixtQkFBa0I7RVN0c0JkLGNBQWE7Q2RnNkRsQjtBSy8xREc7RVNwRUE7SVQwckJBLGNBQWE7R0w2dUNkO0NBQ0Y7QUs5dENDO0VBdGdCQSxhRHJFMkI7RUM2a0J6QixnQkFBa0I7RUFDbEIsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixTQUFRO0VBSVIsZ0NBQStCO0VBRS9CLDRCQUEyQjtDTCt0QzlCO0FjNzZEQztFVDRYQSx1QkFBK0I7Q0x3akRoQztBYzk1REM7RUFDRSxjQUEyRTtDZGc2RDlFO0FjLzREQzs7RUFFRSwwQkFBcUI7RUFDckIsaUJBQWdCO0NkaTVEbkI7QWM3NERDO0VBQ0UsVUFBUztDZCs0RFo7QWN6NERHO0VBQW9CLGNBQWE7Q2Q0NERwQztBY3o0REc7RUFBd0IsY0FBYTtDZDQ0RHhDO0FjejRERzs7RUFFRSxlQUFjO0NkMjREbkI7QWMvM0RHO0VBQW9CLGNBQWE7Q2RrNERwQztBYy8zREc7RUFBd0IsY0FBYTtDZGs0RHhDO0FjLzNERzs7Ozs7RUFFRSxlQUFjO0NkbzREbkI7QWNoNERHO0VBQWUsY0FBYTtDZG00RC9CO0FLdnVDQztFQTlCQSxlQUFjO0VBQ2QsbUJBQThFO0VBQzlFLGVBQXNDO0VBQ3RDLG1CRHhTMEQ7RUM2UzFELFlEN1RrQztFQzhUbEMsMEJEaFUyQztDSm9rRDVDO0FLbHdDQztFQUNFLGVEaFU2QjtFQ2lVN0IsMEJEcFV5QztDSndrRDVDO0FjdjRERztFVDBwQkYsb0JBQXFHO0NMZ3ZDdEc7QUsvdUNDO0VBQ0UsVUFBUztDTGl2Q1o7QUsvdUNDO0VBeENBLGVBQWM7RUFDZCxtQkFBOEU7RUFDOUUsZUFBc0M7RUFDdEMsbUJEeFMwRDtFQzZTMUQsWUQ3VGtDO0VDOFRsQywwQkRoVTJDO0VDek0zQyxxQkFBb0I7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QUEyRTtFQUMzRSwwQkRuTjREO0VXL0pwRCxxQkFBMkU7Q2ZnbUVwRjtBSzV1REM7RUFDRSxZRDFDZ0M7RUMyQ2hDLDBCRDdDeUM7Q0oyeEQ1Qzs7QUtwM0RDOztFQUVFLGlCQUFnQjtFQUNoQixnQkFBZTtFQUNmLGlCQUFnQjtDTHUzRG5CO0FLLzJEQztFQUNFLGVBQWM7Q0xpM0RqQjtBZ0IxdUVDO0VYdVBBLG9CV3RQMEI7RVh1UDFCLG1CV3ZQMEI7Q2hCNnVFM0I7QUt6b0VHO0VXckdGO0lYdVBBLGlCV3BQeUI7SVhxUHpCLGdCV3JQeUI7R2hCZ3ZFeEI7Q0FDRjtBZ0I3dUVDO0VYc09BLHFCQUFxQjtFQUNyQixvQkFBb0I7RVdyT2xCLG1CQUFrQjtDaEJndkVyQjtBZ0I5dUVHO0VYNE9GLHFCQUFzQjtFQUN0QixvQkFBcUI7RUE4TnJCLHNCQUFxQjtFQUNyQix1QlcxY21DO0VYMmNuQyxzQkFBcUI7RVcxY2pCLHFCQUFrQztDaEJtdkV2QztBZ0IvdUVDO0VYa1pBLHVCQUErQjtFVy9ZN0IsZUFBYztFQUNkLFlBQVc7RUFDWCxhQUFZO0VBR1osbUJBQWtCO0VBR2xCLG9CQUFtQjtFQUNuQixpQkFBZ0I7RUFDaEIsbUJBQWtCO0NoQmt2RXJCO0FnQmh2RUc7RUFBVSx1QlpzYXNCO0NKNjBEbkM7QWdCanZFRztFQUNFLG1CQUFrQjtFQUNsQixlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixTQUFRO0VBQ1IsWUFBVztFQUNYLGdCQUFlO0VBR2YsZ0NBQStCO0VBRS9CLDRCQUEyQjtDaEJtdkVoQztBZ0JodkVHO0VYbUxGLGFEOURzQjtDSjhuRXZCO0FnQmh2RUc7RVhnTEYsYUR6RHlCO0NKNG5FMUI7QWdCaHZFRztFWDZLRixhRHhEdUI7Q0o4bkV4QjtBZ0JodkVHO0VYMEtGLGFENURzQjtDSnFvRXZCO0FnQmh2RUc7RVh1S0YsYUQxRGtCO0NKc29FbkI7QWdCL3VFRztFWG1LRixhRDdEcUI7Q0o0b0V0QjtBZ0IvdUVHO0VYZ0tGLGFEM0QwQjtDSjZvRTNCOztBaUJ4ekVEOztFWm1QRSxp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R0x5dUQ3QjtFS3Z1REQ7O0lBQW1CLGFBQVk7R0wydUQ5QjtFSzF1REQ7O0lBQW1CLGFBQVk7R0w4dUQ5QjtFSzd1REQ7O0lBQW1CLFlBQVc7R0xpdkQ3QjtFSy91REQ7O0lBQW1CLGFBQVk7R0xtdkQ5QjtFS2x2REQ7O0lBQW1CLGFBQVk7R0xzdkQ5QjtFS3J2REQ7O0lBQW1CLGFBQVk7R0x5dkQ5QjtFS3h2REQ7O0lBQW1CLFlBQVc7R0w0dkQ3QjtFS3p2REQ7O0lBQW1CLGFBQVk7R0w2dkQ5QjtFSzV2REQ7O0lBQW1CLFlBQVc7R0xnd0Q3QjtDQUNGO0FLOStFRztFWXNCRTs7SVppc0JKLFdBQVU7R0w0eERUO0VLeHlERDs7SUFBbUIsYUFBWTtHTDR5RDlCO0VLM3lERDs7SUFBbUIsWUFBVztHTCt5RDdCO0VLN3lERDs7SUFBbUIsYUFBWTtHTGl6RDlCO0VLaHpERDs7SUFBbUIsYUFBWTtHTG96RDlCO0VLbnpERDs7SUFBbUIsWUFBVztHTHV6RDdCO0VLcnpERDs7SUFBbUIsYUFBWTtHTHl6RDlCO0VLeHpERDs7SUFBbUIsYUFBWTtHTDR6RDlCO0VLM3pERDs7SUFBbUIsYUFBWTtHTCt6RDlCO0VLOXpERDs7SUFBbUIsWUFBVztHTGswRDdCO0VLL3pERDs7SUFBa0IsaUJBQWdCO0dMbTBEakM7RUtsMEREOztJQUFtQixnQkFBZTtHTHMwRGpDO0VLcjBERDs7SUFBbUIsWUFBVztHTHkwRDdCO0NBQ0Y7QUtwaUZHO0VZc0JFOztJWnd1QkosYUFBWTtHTDJ5RFg7RUt2ekREOztJQUFrQixtQkFBa0I7R0wyekRuQztFSzF6REQ7O0lBQW1CLGtCQUFpQjtHTDh6RG5DO0VLN3pERDs7SUFBbUIsWUFBVztHTGkwRDdCO0VLL3pERDs7SUFBbUIsYUFBWTtHTG0wRDlCO0VLbDBERDs7SUFBbUIsWUFBVztHTHMwRDdCO0VLcDBERDs7SUFBbUIsYUFBWTtHTHcwRDlCO0VLdjBERDs7SUFBbUIsYUFBWTtHTDIwRDlCO0VLMTBERDs7SUFBbUIsYUFBWTtHTDgwRDlCO0VLNzBERDs7SUFBbUIsWUFBVztHTGkxRDdC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cFhaLGtCZnFYMEI7RWVwWDFCLFlEYndCO0VDY3hCLHFDZmdjaUM7RWUvYmpDLHVCQUFzQjtFQUN0QixtQkFBa0I7RUFDbEIsaUJmaVhTO0VlaFhULDBCQUF5QjtFQUV6Qiw4QkFBZ0U7Q25CMDlGdkU7QW1CdjlGTztFQUNFLG9CRHJCYztFQ3NCZCxZRHpCc0I7RUMwQnRCLDBCZitWMkI7Q0owbkZwQztBbUJwOUZPO0VBQ0UsaUJEaENzQjtFQ2lDdEIsZWY4WndCO0VlN1p4QixzQmZtYStCO0NKbWpGeEM7QW1COThGQztFZG1NQSxpQmNsTXVCO0VkbU12QixnQmNuTXVCO0NuQmk5RnhCO0FLcDhFQztFQUNFLG1CRG5LNEI7Q0p5bUYvQjtBS3A4RUc7RUFqS0YsdUJBQStCO0VBbUszQixnQkFBZTtFQUNmLG9CRC9INEI7RUNnSTVCLDhCQUFrRjtDTDA4RXZGO0FLeDhFSztFQXZLSix1QkFBK0I7RUFqTy9CLGlCQUFnQjtFQUNoQixlQUFjO0VBQ2QsZ0JEOE53QjtFQzdOeEIsa0JEOE5zQztFQzdOdEMsbUJBQW9FO0VBQ3BFLFlhOUw4QjtFYitMOUIscUNEK1F1QztFQzlRdkMsMEJBQXlCO0VBQ3pCLGlCRDBOcUI7Q0o4bkZ0QjtBS3A5RU87RUFBVyx1QmF2a0JLO0NsQjhoR3ZCO0FLcDlFUztFQUNFLGFEeEhrQztFQ3lIbEMsbUJEM0tpQjtDSmlvRjVCO0FLaDlFSztFQUNFLG9CYTlrQmdCO0ViK2tCaEIsMEJEek42QjtDSjJxRnBDO0FLaDlFTztFQUNFLFlhcmxCc0I7Q2xCdWlHL0I7QUs3OEVHO0VBQ0UsMEJBQXlGO0VBQ3pGLGlCQUFnQjtDTCs4RXJCO0FLaDlGRztFQStmQTtJQU1NLGFBQVk7R0wrOEVuQjtDQUNGO0FLejhFSztFQUNFLGlCYXhtQndCO0VieW1CeEIsc0JEcEtpQztFQ3FLakMsaUNBQWdDO0NMMjhFdkM7QUt6OEVPO0VBQ0UsZUQ5S3dCO0NKeW5GakM7QUt6OEVTO0VBQ0UsYUQ5SmtDO0NKeW1GN0M7QUtyOEVPO0VBQ0UsZUFBYztDTHU4RXZCOztBbUJyZ0dEOztFQUVFLGVBQWM7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LFVBQVM7RUFDVCxjQUFhO0VBQ2IsWUFBVztDMUIwNkhkO0EwQng2SEc7RXJCeUhGLGdCcUJ4SHVCO0VyQnlIdkIsZXFCekh1QjtDMUIyNkh4QjtBSzM3SEc7RXFCZUE7SXJCeUhGLG1CcUJ0SDZCO0lyQnVIN0Isa0JxQnZINkI7RzFCODZINUI7Q0FDRjtBMEJ0NkhHO0VBQ0UsbUJBQWtCO0MxQnc2SHZCO0EwQnQ2SEs7RUFDRSxtQkFBa0I7RUFDbEIsVUFBUztFQUNULFFBQU87RUFDUCxZQUFXO0MxQnc2SGxCO0EwQm42SEc7RUFDRSxjQUFhO0VBQ2Isc0JBQW9GO0VBQ3BGLG1CQUFrQjtFQUNsQixZUnRJMEI7Q2xCMmlJL0I7QUtoOUhHO0VxQnVDQTtJQU9JLGVBQWM7SXJCOUZwQixtQkFBa0I7SUFDbEIsZUFBYztJQUNkLGlCcUI2RmlDO0cxQnc2SGhDO0NBQ0Y7QUt4OUhHO0VxQnVDQTtJckJ2RkYsbUJBQWtCO0lBQ2xCLGVBQWM7SUFDZCxpQnFCZ0dpQztHMUI0NkhoQztDQUNGO0FLLzlIRztFcUJ1Q0E7SXJCdkZGLG1CQUFrQjtJQUNsQixlQUFjO0lBQ2Qsa0JBQWlCO0dMbWhJaEI7Q0FDRjtBMEI5NkhLO0VBRUUsWVJySndCO0NsQm9rSS9CO0EwQjc2SEs7RUFDRSxxQ3RCc1RpQztFc0JyVGpDLGdCdEI0SXdDO0VzQjNJeEMsaUJ0QnNNNkI7Q0p5dUhwQztBMEIxNkhDO0VyQjJQQSx1QkFBK0I7RXFCelA3QixjQUFhO0VBQ2IsaUJBQWdCO0MxQmc3SG5CO0EwQjk2SEc7RUFDRSxrQkFBaUI7QzFCZzdIdEI7O0EwQnY2SEQ7O0VyQndoQkUscUJBQXFEO0VxQnJoQnJELFlBQVc7RUFDWCxVQUFTO0MxQjA2SFY7QUtqZ0lHO0VxQm1GSjs7SXJCMGhCSSxrQkQ1WjZCO0dKcXpIOUI7Q0FDRjtBS3ZnSUc7RXFCeUZGOzs7O0lyQnpJQSxtQkFBa0I7SUFDbEIsZUFBYztJQUNkLGlCcUIwSStCO0cxQm83SDlCO0NBQ0Y7QUtqaElHO0VxQnlGRjs7OztJckJ6SUEsbUJBQWtCO0lBQ2xCLGVBQWM7SUFD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Q0Ysb0J2QnVjbUM7RXVCdGNuQyxldkJzY21DO0NKOGpJeEM7QTJCNTlJUztFQUNFLG1CQUE4QjtDM0I4OUl6QztBMkJsK0lPO0VBdENGLG9CdkJpUWM7RXVCaFFkLGV2QmdRYztDSjJ3SW5CO0EyQm4rSVM7RUFDRSxtQkFBOEI7QzNCcStJekM7QTJCeitJTztFQXRDRixvQnZCbUdzQjtFdUJsR3RCLGV2QmtHc0I7Q0pnN0kzQjtBMkIxK0lTO0VBQ0UsbUJBQThCO0MzQjQrSXpDO0EyQmgvSU87RUF0Q0Ysb0J2Qm9Hb0I7RXVCbkdwQixldkJtR29CO0NKczdJekI7QTJCai9JUztFQUNFLG1CQUE4QjtDM0JtL0l6QztBMkJ2L0lPO0VBdENGLG9CdkJnV21CO0V1Qi9WbkIsZXZCK1ZtQjtDSmlzSXhCO0EyQngvSVM7RUFDRSxtQkFBOEI7QzNCMC9JekM7O0EyQjU5SUc7RUFDRSxvQ0FBd0Q7QzNCKzlJN0Q7QTJCeDlJRztFQUNFLG9DQUF3RDtDM0IwOUk3RDtBMkJuOUlHO0VBQ0Usb0NBQXdEO0MzQnE5STdEO0EyQjk4SUc7RUFDRSxvQ0FBd0Q7QzNCZzlJN0Q7QTJCejhJRztFQUNFLG9DQUF3RDtDM0IyOEk3RDtBMkJwOElHO0VBQ0Usb0NBQXdEO0MzQnM4STdEIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG4vKiogXHJcbiAqIEh0bWw1IFBsYWNlaG9sZGVyIFBvbHlmaWxsIC0gdjIuMC45IC0gMjAxNC0wMS0yMSBcclxuICogd2ViOiBodHRwOi8vYmxvZy5naW5hZGVyLmRlL2Rldi9qcXVlcnkvSFRNTDUtcGxhY2Vob2xkZXItcG9seWZpbGwvIFxyXG4gKiBpc3N1ZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9naW5hZGVyL0hUTUw1LXBsYWNlaG9sZGVyLXBvbHlmaWxsL2lzc3VlcyBcclxuICogQ29weXJpZ2h0IChjKSAyMDE0IERpcmsgR2luYWRlcjsgTGljZW5zZWQgTUlULCBHUEwgXHJcbiAqL1xyXG5zcGFuLnBsYWNlaG9sZGVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgZm9udC1zaXplOiA3NSU7XHJcbiAgY29sb3I6ICM5OTk7XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XHJcbiAgcGFkZGluZzogNHB4IDNweDtcclxuICB6LWluZGV4OiAxO1xyXG4gIGN1cnNvcjogdGV4dDtcclxufVxyXG5cclxuc3Bhbi5wbGFjZWhvbGRlci1oaWRlLWV4Y2VwdC1zY3JlZW5yZWFkZXIge1xyXG4gIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTtcclxuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XHJcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XHJcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbnNwYW4ucGxhY2Vob2xkZXItaGlkZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxubGFiZWwudmlzdWFsbHloaWRkZW4td2l0aC1wbGFjZWhvbGRlciB7XHJcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuICBsZWZ0OiAtOTk5ZW07XHJcbn1cclxuXHJcbi8qISBub3JtYWxpemUuY3NzIHYzLjAuMiB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xyXG4vKipcclxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cclxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXHJcbiAqICAgIHVzZXIgem9vbS5cclxuICovXHJcbmh0bWwge1xyXG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xyXG4gIC8qIDEgKi9cclxuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcclxuICAvKiAyICovXHJcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xyXG4gIC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cclxuICovXHJcbmJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKipcclxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cclxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcclxuICogYW5kIEZpcmVmb3guXHJcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXHJcbiAqL1xyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZGV0YWlscyxcclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tYWluLFxyXG5tZW51LFxyXG5uYXYsXHJcbnNlY3Rpb24sXHJcbnN1bW1hcnkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cclxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxyXG4gKi9cclxuYXVkaW8sXHJcbmNhbnZhcyxcclxucHJvZ3Jlc3MsXHJcbnZpZGVvIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgLyogMSAqL1xyXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxyXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxyXG4gKi9cclxuYXVkaW86bm90KFtjb250cm9sc10pIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cclxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxyXG4gKi9cclxuW2hpZGRlbl0sXHJcbnRlbXBsYXRlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBMaW5rc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKipcclxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXHJcbiAqL1xyXG5hIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuYTphY3RpdmUsXHJcbmE6aG92ZXIge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5hYmJyW3RpdGxlXSB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcbmIsXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5kZm4ge1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcclxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4gKi9cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIG1hcmdpbjogMC42N2VtIDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxyXG4gKi9cclxubWFyayB7XHJcbiAgYmFja2dyb3VuZDogI2ZmMDtcclxuICBjb2xvcjogIzAwMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuc21hbGwge1xyXG4gIGZvbnQtc2l6ZTogODAlO1xyXG59XHJcblxyXG4vKipcclxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1cCB7XHJcbiAgdG9wOiAtMC41ZW07XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG4vKiBFbWJlZGRlZCBjb250ZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qKlxyXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cclxuICovXHJcbmltZyB7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4vKipcclxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXHJcbiAqL1xyXG5zdmc6bm90KDpyb290KSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLyogR3JvdXBpbmcgY29udGVudFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKipcclxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXHJcbiAqL1xyXG5maWd1cmUge1xyXG4gIG1hcmdpbjogMWVtIDQwcHg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXHJcbiAqL1xyXG5ociB7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cclxuICovXHJcbnByZSB7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5jb2RlLFxyXG5rYmQsXHJcbnByZSxcclxuc2FtcCB7XHJcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xyXG4gIGZvbnQtc2l6ZTogMWVtO1xyXG59XHJcblxyXG4vKiBGb3Jtc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKipcclxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcclxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxyXG4gKi9cclxuLyoqXHJcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cclxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXHJcbiAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXHJcbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxyXG4gKi9cclxuYnV0dG9uLFxyXG5pbnB1dCxcclxub3B0Z3JvdXAsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG4gIC8qIDEgKi9cclxuICBmb250OiBpbmhlcml0O1xyXG4gIC8qIDIgKi9cclxuICBtYXJnaW46IDA7XHJcbiAgLyogMyAqL1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqL1xyXG5idXR0b24ge1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxyXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxyXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxyXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXHJcbiAqL1xyXG5idXR0b24sXHJcbnNlbGVjdCB7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxyXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cclxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxyXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxyXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXHJcbiAqL1xyXG5idXR0b24sXHJcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcclxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcclxuICAvKiAyICovXHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIC8qIDMgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXHJcbiAqL1xyXG5idXR0b25bZGlzYWJsZWRdLFxyXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XHJcbiAgY3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxyXG4gKi9cclxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxyXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXHJcbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxyXG4gKi9cclxuaW5wdXQge1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXHJcbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXHJcbiAqXHJcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXHJcbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXHJcbiAqL1xyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXHJcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAvKiAxICovXHJcbiAgcGFkZGluZzogMDtcclxuICAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxyXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxyXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXHJcbiAqL1xyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZVxyXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cclxuICovXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xyXG4gIC8qIDEgKi9cclxuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgLyogMiAqL1xyXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXHJcbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcclxuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxyXG4gKi9cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG4vKipcclxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxyXG4gKi9cclxuZmllbGRzZXQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XHJcbiAgbWFyZ2luOiAwIDJweDtcclxuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuICovXHJcbmxlZ2VuZCB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIC8qIDEgKi9cclxuICBwYWRkaW5nOiAwO1xyXG4gIC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqL1xyXG50ZXh0YXJlYSB7XHJcbiAgb3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXHJcbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxyXG4gKi9cclxub3B0Z3JvdXAge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vKiBUYWJsZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyoqXHJcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cclxuICovXHJcbnRhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG59XHJcblxyXG50ZCxcclxudGgge1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5mc0FjY29yZGlvbi5mc1BhbmVsSWNvbkJlZm9yZSAuZnNQYW5lbC5mc1N0YXRlT3BlbiA+IGhlYWRlciBoMjo6YmVmb3JlLFxyXG4uZnNBY2NvcmRpb24uZnNQYW5lbEljb25BZnRlciAuZnNQYW5lbC5mc1N0YXRlT3BlbiA+IGhlYWRlciBoMjo6YWZ0ZXIsXHJcbi5mc0FjY29yZGlvbi5mc1BhbmVsSWNvbkFmdGVyIC5mc1BhbmVsID4gaGVhZGVyIGgyOjphZnRlcixcclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQmVmb3JlIC5mc1BhbmVsID4gaGVhZGVyIGgyOjpiZWZvcmUsIC5mc0NhbGVuZGFyTW9udGhCcm93c2VyIC5mc0NhbGVuZGFyUHJldk1vbnRoOmJlZm9yZSwgLmZzQ2FsZW5kYXJNb250aEJyb3dzZXIgLmZzQ2FsZW5kYXJOZXh0TW9udGg6YmVmb3JlLCAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciA+IGhlYWRlciAuZnNFbGVtZW50SGVhZGVyQ29udGVudDphZnRlciwgc2VjdGlvbi5vZmYtY2FudmFzIC5idXR0b24ub2ZmLWNhbnZhcy10cmlnZ2VyOmFmdGVyLCAubmF2aWdhdGlvbi5zb2NpYWwgYVtocmVmKj0nZmFjZWJvb2snXTphZnRlciwgLm5hdmlnYXRpb24uc29jaWFsIGFbaHJlZio9J2dvb2dsZSddOmFmdGVyLCAubmF2aWdhdGlvbi5zb2NpYWwgYVtocmVmKj0naW5zdGFncmFtJ106YWZ0ZXIsIC5uYXZpZ2F0aW9uLnNvY2lhbCBhW2hyZWYqPSdsaW5rZWRpbiddOmFmdGVyLCAubmF2aWdhdGlvbi5zb2NpYWwgYVtocmVmKj0nYmxvZyddOmFmdGVyLCAubmF2aWdhdGlvbi5zb2NpYWwgYVtocmVmKj0ndHdpdHRlciddOmFmdGVyLCAubmF2aWdhdGlvbi5zb2NpYWwgYVtocmVmKj0neW91dHViZSddOmFmdGVyLCBmb3JtLmdzYy1zZWFyY2gtYm94LXRvb2xzIHRkLmdzYy1zZWFyY2gtYnV0dG9uOmFmdGVyLCAjZnNIZWFkZXIgLnV0aWxpdGllcyAuYnV0dG9uLnNlYXJjaC10cmlnZ2VyOmFmdGVyLFxyXG4jZnNIZWFkZXIgLnV0aWxpdGllcyAuYnV0dG9uLm9mZi1jYW52YXMtdHJpZ2dlcjphZnRlciwgI2ZzSGVhZGVyIC5uYXZpZ2F0aW9uLmNvbnRhaW5lciAuYnV0dG9uLnNlYXJjaC10cmlnZ2VyOmFmdGVyLCAuc3ViLW5hdmlnYXRpb24gPiBoZWFkZXIgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQ6YWZ0ZXIsIC5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuZnNFbGVtZW50Q29udGVudDphZnRlciwgLmhvbWUgLmNsdXN0ZXIgYnV0dG9uOmFmdGVyIHtcclxuICBmb250LWZhbWlseTogXCJJY29Nb29uXCI7XHJcbiAgc3BlYWs6IG5vbmU7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICBmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYW5pbWF0ZS1zcGluIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgfVxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcclxuICB9XHJcbn1cclxuLyohIHN0cnVjdHVyZSAtIGxheW91dHMgdjAuMC4xICovXHJcbioge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbio6YmVmb3JlLFxyXG4qOmFmdGVyIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG5odG1sIHtcclxuICBmb250LWZhbWlseTogXCJvcGVuLXNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICBiYWNrZ3JvdW5kOiAjMjczNDQ2O1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIGNvbG9yOiAjMWQxZDFkO1xyXG59XHJcblxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbmgxLCAuaG9tZSAuZnNQbGF5ZXIubWFzdGhlYWQgLnNsaWRlIC5kZXRhaWxzIC50aXRsZSwgLmgxIHtcclxuICBmb250LXNpemU6IDMuNDM3NWVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjA5MDkwOTA5MDk7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTNweDtcclxuICBjb2xvcjogIzI3MzQ0NjtcclxuICBmb250LWZhbWlseTogXCJnYXJhbW9uZC1wcmVtaWVyLXByb1wiLCBUaW1lcywgc2VyaWY7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuaDIsIC5oMiB7XHJcbiAgZm9udC1zaXplOiAyLjI1ZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuMTExMTExMTExMTtcclxuICBtYXJnaW4tYm90dG9tOiA3cHg7XHJcbiAgY29sb3I6ICMyNzM0NDY7XHJcbiAgZm9udC1mYW1pbHk6IFwiZ2FyYW1vbmQtcHJlbWllci1wcm9cIiwgVGltZXMsIHNlcmlmO1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbmgzLCAuZnNDYWxlbmRhciA+IGhlYWRlciAuZnNFbGVtZW50VGl0bGUsIC5jb250ZW50LWJsb2NrID4gaGVhZGVyIC5mc0VsZW1lbnRUaXRsZSwgLmZzUG9zdEVsZW1lbnQgPiBoZWFkZXIgLmZzRWxlbWVudFRpdGxlLFxyXG4uZnNOZXdzID4gaGVhZGVyIC5mc0VsZW1lbnRUaXRsZSwgI2ZzRm9vdGVyID4gLmZzQmFubmVyIGhlYWRlciAuZnNFbGVtZW50VGl0bGUsIC5oMyB7XHJcbiAgZm9udC1zaXplOiAxLjI1ZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIGNvbG9yOiAjMWQxZDFkO1xyXG4gIGZvbnQtZmFtaWx5OiBcIm9wZW4tc2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbmg0LCAuaDQge1xyXG4gIGZvbnQtc2l6ZTogMWVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBjb2xvcjogIzFkMWQxZDtcclxuICBmb250LWZhbWlseTogXCJvcGVuLXNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG5oNSwgLmg1IHtcclxuICBmb250LXNpemU6IDFlbTtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgY29sb3I6ICMxZDFkMWQ7XHJcbiAgZm9udC1mYW1pbHk6IFwib3Blbi1zYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG5oNiwgLmZzQ2FsZW5kYXIgLmZzVGl0bGUsIC5mc1Bvc3RFbGVtZW50IC5mc1RpdGxlLFxyXG4uZnNOZXdzIC5mc1RpdGxlLCAuaDYge1xyXG4gIGZvbnQtc2l6ZTogMWVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBjb2xvcjogIzFkMWQxZDtcclxuICBmb250LWZhbWlseTogXCJvcGVuLXNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG5wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbmEge1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBjb2xvcjogIzAwNzczNztcclxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcywgY29sb3IgLjNzO1xyXG59XHJcbmE6aG92ZXIge1xyXG4gIGNvbG9yOiAjMDA3MmIwO1xyXG59XHJcblxyXG51bCxcclxub2wge1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxuICBtYXJnaW4tdG9wOiAxNXB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbi5mc19zdHlsZV8yMyxcclxudGFibGUuc3R5bGVkLCAuZnNfc3R5bGVfMjQsXHJcbnRhYmxlLnN0eWxlZC5oZWFkZXItcm93IHtcclxuICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG4uZnNfc3R5bGVfMjMgdHI6Zmlyc3QtY2hpbGQgdGgsXHJcbnRhYmxlLnN0eWxlZCB0cjpmaXJzdC1jaGlsZCB0aCwgLmZzX3N0eWxlXzI0IHRyOmZpcnN0LWNoaWxkIHRoLCAuZnNfc3R5bGVfMjMgdHI6Zmlyc3QtY2hpbGQgdGQsXHJcbnRhYmxlLnN0eWxlZCB0cjpmaXJzdC1jaGlsZCB0ZCwgLmZzX3N0eWxlXzI0IHRyOmZpcnN0LWNoaWxkIHRkIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2JlYmViZTtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi5mc19zdHlsZV8yMyB0cjpsYXN0LWNoaWxkLFxyXG50YWJsZS5zdHlsZWQgdHI6bGFzdC1jaGlsZCwgLmZzX3N0eWxlXzI0IHRyOmxhc3QtY2hpbGQge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmViZWJlO1xyXG59XHJcbi5mc19zdHlsZV8yMyB0cjpsYXN0LWNoaWxkIHRoLFxyXG50YWJsZS5zdHlsZWQgdHI6bGFzdC1jaGlsZCB0aCwgLmZzX3N0eWxlXzI0IHRyOmxhc3QtY2hpbGQgdGgsIC5mc19zdHlsZV8yMyB0cjpsYXN0LWNoaWxkIHRkLFxyXG50YWJsZS5zdHlsZWQgdHI6bGFzdC1jaGlsZCB0ZCwgLmZzX3N0eWxlXzI0IHRyOmxhc3QtY2hpbGQgdGQge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuLmZzX3N0eWxlXzIzIHRoLFxyXG50YWJsZS5zdHlsZWQgdGgsIC5mc19zdHlsZV8yNCB0aCxcclxudGFibGUuc3R5bGVkLmhlYWRlci1yb3cgdGgsXHJcbi5mc19zdHlsZV8yMyB0ZCxcclxudGFibGUuc3R5bGVkIHRkLFxyXG4uZnNfc3R5bGVfMjQgdGQsXHJcbnRhYmxlLnN0eWxlZC5oZWFkZXItcm93IHRkIHtcclxuICBwYWRkaW5nOiAxMnB4IDE1cHg7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG4uZnNfc3R5bGVfMjMgdGg6Zmlyc3QtY2hpbGQsXHJcbnRhYmxlLnN0eWxlZCB0aDpmaXJzdC1jaGlsZCwgLmZzX3N0eWxlXzI0IHRoOmZpcnN0LWNoaWxkLFxyXG4uZnNfc3R5bGVfMjMgdGQ6Zmlyc3QtY2hpbGQsXHJcbnRhYmxlLnN0eWxlZCB0ZDpmaXJzdC1jaGlsZCxcclxuLmZzX3N0eWxlXzI0IHRkOmZpcnN0LWNoaWxkIHtcclxuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNiZWJlYmU7XHJcbn1cclxuLmZzX3N0eWxlXzIzIHRoOmxhc3QtY2hpbGQsXHJcbnRhYmxlLnN0eWxlZCB0aDpsYXN0LWNoaWxkLCAuZnNfc3R5bGVfMjQgdGg6bGFzdC1jaGlsZCxcclxuLmZzX3N0eWxlXzIzIHRkOmxhc3QtY2hpbGQsXHJcbnRhYmxlLnN0eWxlZCB0ZDpsYXN0LWNoaWxkLFxyXG4uZnNfc3R5bGVfMjQgdGQ6bGFzdC1jaGlsZCB7XHJcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2JlYmViZTtcclxufVxyXG4uZnNfc3R5bGVfMjMgdGgsXHJcbnRhYmxlLnN0eWxlZCB0aCwgLmZzX3N0eWxlXzI0IHRoLFxyXG50YWJsZS5zdHlsZWQuaGVhZGVyLXJvdyB0aCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcbi5mc19zdHlsZV8yMyB0cjpudGgtb2YtdHlwZShvZGQpIHRkLFxyXG50YWJsZS5zdHlsZWQgdHI6bnRoLW9mLXR5cGUob2RkKSB0ZCwgLmZzX3N0eWxlXzI0IHRyOm50aC1vZi10eXBlKG9kZCkgdGQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNkZWRlZGU7XHJcbn1cclxuXHJcbi5mc19zdHlsZV8yNCA+IHRyOmZpcnN0LWNoaWxkIHRkLCAuZnNfc3R5bGVfMjQgPiB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCxcclxudGFibGUuc3R5bGVkLmhlYWRlci1yb3cgPiB0cjpmaXJzdC1jaGlsZCB0ZCxcclxudGFibGUuc3R5bGVkLmhlYWRlci1yb3cgPiB0Ym9keSB0cjpmaXJzdC1jaGlsZCB0ZCB7XHJcbiAgcGFkZGluZzogMTJweCAxNXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMyNzM0NDY7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZm9udC1mYW1pbHk6IFwib3Blbi1zYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICMyNzM0NDY7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuaW1nLFxyXG5jYW52YXMsXHJcbnZpZGVvLFxyXG5zdmcge1xyXG4gIGhlaWdodDogYXV0bztcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmlmcmFtZSB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZzX3N0eWxlXzI3LFxyXG5ibG9ja3F1b3RlIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAzMHB4IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gIGZvbnQtc2l6ZTogMzBweDtcclxuICBsaW5lLWhlaWdodDogMS4yO1xyXG4gIGNvbG9yOiAjMDA3NzM3O1xyXG4gIGZvbnQtZmFtaWx5OiBcImdhcmFtb25kLXByZW1pZXItcHJvXCIsIFRpbWVzLCBzZXJpZjtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcbi5mc19zdHlsZV8yNzpiZWZvcmUsXHJcbmJsb2NrcXVvdGU6YmVmb3JlIHtcclxuICAvKlxyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMUMnO1xyXG4gICovXHJcbn1cclxuLmZzX3N0eWxlXzI3ID4gLmZzX3N0eWxlXzI4LCAuZnNfc3R5bGVfMjcgPiBjaXRlLFxyXG5ibG9ja3F1b3RlID4gLmZzX3N0eWxlXzI4LFxyXG5ibG9ja3F1b3RlID4gY2l0ZSB7XHJcbiAgbWFyZ2luLXRvcDogNHB4O1xyXG59XHJcbi5mc19zdHlsZV8yNyArIC5mc19zdHlsZV8yOCwgLmZzX3N0eWxlXzI3ICsgY2l0ZSxcclxuYmxvY2txdW90ZSArIC5mc19zdHlsZV8yOCxcclxuYmxvY2txdW90ZSArIGNpdGUge1xyXG4gIG1hcmdpbi1sZWZ0OiA1MHB4O1xyXG4gIG1hcmdpbi10b3A6IC0yNnB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5mc19zdHlsZV8yOCxcclxuY2l0ZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgY29sb3I6ICM4ZjhmOGY7XHJcbiAgZm9udC1mYW1pbHk6IFwib3Blbi1zYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuLmZzX3N0eWxlXzI4OmJlZm9yZSxcclxuY2l0ZTpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6ICd+ICc7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiBcIkljb01vb25cIjtcclxuICBzcmM6IHVybChcIi91cGxvYWRlZC90aGVtZXMvZGVmYXVsdC9mb250cy8vaWNvbW9vbi90b3JyaW5ndG9uLmVvdD8xMTgwdG9ycmluZ3RvblwiKTtcclxuICBzcmM6IHVybChcIi91cGxvYWRlZC90aGVtZXMvZGVmYXVsdC9mb250cy8vaWNvbW9vbi90b3JyaW5ndG9uLmVvdD8jaWVmaXg/MTE4MHRvcnJpbmd0b25cIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi91cGxvYWRlZC90aGVtZXMvZGVmYXVsdC9mb250cy8vaWNvbW9vbi90b3JyaW5ndG9uLndvZmYyPzExODB0b3JyaW5ndG9uXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvdXBsb2FkZWQvdGhlbWVzL2RlZmF1bHQvZm9udHMvL2ljb21vb24vdG9ycmluZ3Rvbi50dGY/MTE4MHRvcnJpbmd0b25cIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi91cGxvYWRlZC90aGVtZXMvZGVmYXVsdC9mb250cy8vaWNvbW9vbi90b3JyaW5ndG9uLndvZmY/MTE4MHRvcnJpbmd0b25cIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL3VwbG9hZGVkL3RoZW1lcy9kZWZhdWx0L2ZvbnRzLy9pY29tb29uL3RvcnJpbmd0b24uc3ZnPzExODAjdG9ycmluZ3RvblwiKSBmb3JtYXQoXCJzdmdcIik7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcclxuICBmb250LWZhbWlseTogXCJJY29Nb29uXCI7XHJcbiAgc3BlYWs6IG5vbmU7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxufVxyXG5cclxuLmljb24tcGx1czpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74GnXCI7XHJcbn1cclxuXHJcbi5pY29uLW1pbnVzOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvgahcIjtcclxufVxyXG5cclxuLmljb24tY2xvc2U6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIu+AjVwiO1xyXG59XHJcblxyXG4uaWNvbi1jaGV2cm9uLWxlZnQ6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIu+Bk1wiO1xyXG59XHJcblxyXG4uaWNvbi1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvgZRcIjtcclxufVxyXG5cclxuLmljb24tY2hldnJvbi11cDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74G3XCI7XHJcbn1cclxuXHJcbi5pY29uLWNoZXZyb24tZG93bjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74G4XCI7XHJcbn1cclxuXHJcbi5pY29uLWFuZ2xlLWxlZnQ6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIu+EhFwiO1xyXG59XHJcblxyXG4uaWNvbi1hbmdsZS1yaWdodDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74SFXCI7XHJcbn1cclxuXHJcbi5pY29uLWFuZ2xlLXVwOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvhIZcIjtcclxufVxyXG5cclxuLmljb24tYW5nbGUtZG93bjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74SHXCI7XHJcbn1cclxuXHJcbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvgppcIjtcclxufVxyXG5cclxuLmljb24tdHdpdHRlcjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74KZXCI7XHJcbn1cclxuXHJcbi5pY29uLWxpbmtlZGluOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvg6FcIjtcclxufVxyXG5cclxuLmljb24teW91dHViZS1wbGF5OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvhapcIjtcclxufVxyXG5cclxuLmljb24tZmVlZDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74KeXCI7XHJcbn1cclxuXHJcbi5pY29uLWdvb2dsZS1wbHVzOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvg5VcIjtcclxufVxyXG5cclxuLmljb24taW5zdGFncmFtOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvha1cIjtcclxufVxyXG5cclxuLmljb24tc2VhcmNoOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvgIJcIjtcclxufVxyXG5cclxuLmljb24tYmFyczpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74OJXCI7XHJcbn1cclxuXHJcbi5pY29uLXNwaW5uZXI6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIu+EkFwiO1xyXG59XHJcblxyXG4jZnNQYWdlQm9keVdyYXBwZXIge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMDtcclxufVxyXG4uaGFzLXRpZXItbmF2aWdhdGlvbiAjZnNQYWdlQm9keVdyYXBwZXIge1xyXG4gIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDBweDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuaGFzLXRpZXItbmF2aWdhdGlvbiAjZnNQYWdlQm9keVdyYXBwZXIge1xyXG4gICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICB9XHJcbn1cclxuXHJcbiNmc1BhZ2VCb2R5IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgbWF4LXdpZHRoOiAxMTgwcHg7XHJcbn1cclxuLmhvbWUgI2ZzUGFnZUJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxuICBtYXgtd2lkdGg6IG5vbmU7XHJcbn1cclxuXHJcbiNmc0Jhbm5lckxlZnQge1xyXG4gIGZsb2F0OiBub25lO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgd2lkdGg6IGF1dG87XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgI2ZzQmFubmVyTGVmdCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgI2ZzQmFubmVyTGVmdCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMzEuNDI4NTcxNDI4NiU7XHJcbiAgfVxyXG4gIC5mc092ZXJyaWRlTGVmdEJhbm5lciAjZnNCYW5uZXJMZWZ0IHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgI2ZzQmFubmVyTGVmdCB7XHJcbiAgICB3aWR0aDogMjMuNzI4ODEzNTU5MyU7XHJcbiAgfVxyXG59XHJcblxyXG4uZnNCYW5uZXJMZWZ0Lm1vYmlsZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzQmFubmVyTGVmdC5tb2JpbGUge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbiNmc1BhZ2VDb250ZW50IHtcclxuICBmbG9hdDogbm9uZTtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gICNmc1BhZ2VDb250ZW50IHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuZnNIYXNSaWdodEJhbm5lciAjZnNQYWdlQ29udGVudCB7XHJcbiAgICB3aWR0aDogNjguNjQ0MDY3Nzk2NiUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzSGFzTGVmdEJhbm5lciAjZnNQYWdlQ29udGVudCB7XHJcbiAgICB3aWR0aDogNjguNTcxNDI4NTcxNCUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzSGFzTGVmdEJhbm5lci5mc092ZXJyaWRlTGVmdEJhbm5lciAjZnNQYWdlQ29udGVudCB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4uZnNIYXNMZWZ0QmFubmVyLmZzSGFzUmlnaHRCYW5uZXIgI2ZzUGFnZUNvbnRlbnQge1xyXG4gIHpvb206IDE7XHJcbn1cclxuLmZzSGFzTGVmdEJhbm5lci5mc0hhc1JpZ2h0QmFubmVyICNmc1BhZ2VDb250ZW50OmFmdGVyIHtcclxuICBkaXNwbGF5OiB0YWJsZTtcclxuICBjbGVhcjogYm90aDtcclxuICBjb250ZW50OiAnJztcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuZnNIYXNMZWZ0QmFubmVyLmZzSGFzUmlnaHRCYW5uZXIgI2ZzUGFnZUNvbnRlbnQge1xyXG4gICAgd2lkdGg6IDY4LjU3MTQyODU3MTQlICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gIC5mc0hhc0xlZnRCYW5uZXIuZnNIYXNSaWdodEJhbm5lciAjZnNQYWdlQ29udGVudCB7XHJcbiAgICB3aWR0aDogNDQuOTE1MjU0MjM3MyUgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzT3ZlcnJpZGVMZWZ0QmFubmVyIC5mc0hhc0xlZnRCYW5uZXIuZnNIYXNSaWdodEJhbm5lci5mc092ZXJyaWRlTGVmdEJhbm5lciAjZnNQYWdlQ29udGVudCB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuI2ZzQmFubmVyUmlnaHQge1xyXG4gIGZsb2F0OiBub25lO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAjZnNCYW5uZXJSaWdodCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgI2ZzQmFubmVyUmlnaHQge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA3MHB4O1xyXG4gICAgd2lkdGg6IDMxLjM1NTkzMjIwMzQlO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuZnNIYXNMZWZ0QmFubmVyICNmc0Jhbm5lclJpZ2h0IHtcclxuICAgIHdpZHRoOiA2OC41NzE0Mjg1NzE0JTtcclxuICAgIG1hcmdpbi1sZWZ0OiAzMS40Mjg1NzE0Mjg2JTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgLmZzSGFzTGVmdEJhbm5lciAjZnNCYW5uZXJSaWdodCB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDcwcHg7XHJcbiAgICB3aWR0aDogMzEuMzU1OTMyMjAzNCU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc0hhc0xlZnRCYW5uZXIuZnNPdmVycmlkZUxlZnRCYW5uZXIgI2ZzQmFubmVyUmlnaHQge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzTGF5b3V0IHtcclxuICAgIG1hcmdpbi1yaWdodDogLTIwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbiAgfVxyXG59XHJcbi5mc0xheW91dCAuZnNEaXYge1xyXG4gIGZsb2F0OiBub25lO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzTGF5b3V0IC5mc0RpdiB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzTGF5b3V0IC5mc0RpdiB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzVHdvQ29sdW1uTGF5b3V0IC5mc0RpdiB7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgLmZzVGhyZWVDb2x1bW5MYXlvdXQgLmZzRGl2IHtcclxuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc0ZvdXJDb2x1bW5MYXlvdXQgLmZzRGl2IHtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAuZnNGb3VyQ29sdW1uTGF5b3V0IC5mc0RpdiB7XHJcbiAgICB3aWR0aDogMjUlO1xyXG4gIH1cclxufVxyXG5cclxuLmZzTGF5b3V0IC5mc1N0eWxlVHdvVGhpcmRzIHtcclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTE4MHB4KSB7XHJcbiAgLmZzTGF5b3V0IC5mc1N0eWxlVHdvVGhpcmRzIHtcclxuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcclxuICB9XHJcbn1cclxuLmZzTGF5b3V0IC5mc1N0eWxlT25lVGhpcmQge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAuZnNMYXlvdXQgLmZzU3R5bGVPbmVUaGlyZCB7XHJcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XHJcbiAgfVxyXG59XHJcblxyXG4uZnNBY2NvcmRpb24ge1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuLmZzQWNjb3JkaW9uIC5mc1BhbmVsIHtcclxuICBtYXJnaW4tYm90dG9tOiAxcHg7XHJcbn1cclxuLmZzQWNjb3JkaW9uIC5mc1BhbmVsID4gaGVhZGVyIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZDogIzI3MzQ0NjtcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxufVxyXG4uZnNBY2NvcmRpb24gLmZzUGFuZWwgPiBoZWFkZXIgaDIge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gIHBhZGRpbmc6IDEycHggMTVweDtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LWZhbWlseTogXCJvcGVuLXNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuLmZzQWNjb3JkaW9uIC5mc1BhbmVsID4gaGVhZGVyIGgyOmJlZm9yZSB7XHJcbiAgZm9udC1mYW1pbHk6IFwiSWNvTW9vblwiO1xyXG59XHJcbi5mc0FjY29yZGlvbiAuZnNQYW5lbCA+IGhlYWRlcjpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogIzAwNzJiMDtcclxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbi5mc0FjY29yZGlvbiAuZnNQYW5lbCA+IGhlYWRlcjpob3ZlciBoMiB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuLmZzQWNjb3JkaW9uIC5mc1BhbmVsID4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZWJlYmU7XHJcbiAgYm9yZGVyLXRvcDogbm9uZTtcclxufVxyXG4uZnNBY2NvcmRpb24gLmZzUGFuZWwuZnNTdGF0ZU9wZW4gPiBoZWFkZXIge1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgYm9yZGVyLWNvbG9yOiAjYmViZWJlO1xyXG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbi5mc0FjY29yZGlvbiAuZnNQYW5lbC5mc1N0YXRlT3BlbiA+IGhlYWRlciBoMiB7XHJcbiAgY29sb3I6ICMyNzM0NDY7XHJcbn1cclxuLmZzQWNjb3JkaW9uIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gaGVhZGVyIGgyOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvhIdcIjtcclxufVxyXG5cclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQmVmb3JlIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gaGVhZGVyIGgyOjpiZWZvcmUsXHJcbi5mc0FjY29yZGlvbi5mc1BhbmVsSWNvbkFmdGVyIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gaGVhZGVyIGgyOjphZnRlcixcclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQWZ0ZXIgLmZzUGFuZWwgPiBoZWFkZXIgaDI6OmFmdGVyLFxyXG4uZnNBY2NvcmRpb24uZnNQYW5lbEljb25CZWZvcmUgLmZzUGFuZWwgPiBoZWFkZXIgaDI6OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvgI1cIjtcclxuICBmb250LXNpemU6IDI0cHg7XHJcbiAgYm9yZGVyOiBub25lO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQmVmb3JlIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gaGVhZGVyIGgyOjpiZWZvcmUsXHJcbi5mc0FjY29yZGlvbi5mc1BhbmVsSWNvbkFmdGVyIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gaGVhZGVyIGgyOjphZnRlciB7XHJcbiAgY29udGVudDogXCLvhIdcIjtcclxufVxyXG5cclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQWZ0ZXIgLmZzUGFuZWwgPiBoZWFkZXIgaDI6OmFmdGVyLFxyXG4uZnNBY2NvcmRpb24uZnNQYW5lbEljb25CZWZvcmUgLmZzUGFuZWwgPiBoZWFkZXIgaDI6OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvhIVcIjtcclxufVxyXG5cclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQmVmb3JlIC5mc1BhbmVsID4gaGVhZGVyIGgyOjpiZWZvcmUge1xyXG4gIG1hcmdpbjogLTNweCAyMHB4IDAgMDtcclxufVxyXG5cclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQWZ0ZXIgLmZzUGFuZWwgPiBoZWFkZXIgaDI6YmVmb3JlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbi5mc0FjY29yZGlvbi5mc1BhbmVsSWNvbkFmdGVyIC5mc1BhbmVsID4gaGVhZGVyIGgyOmFmdGVyIHtcclxuICBtYXJnaW46IDAgMCAwIDIwcHg7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG59XHJcblxyXG4vKiEgZWxlbWVudHMgLSBjYWxlbmRhciB2MC4wLjEgKi9cclxuLmZzQ2FsZW5kYXIge1xyXG4gIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxufVxyXG4uZnNDYWxlbmRhciA+IGhlYWRlciB7XHJcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICMwMDA7XHJcbiAgcGFkZGluZy10b3A6IDE1cHg7XHJcbn1cclxuLmZzQ2FsZW5kYXIgPiBoZWFkZXIgLmZzRWxlbWVudFRpdGxlIHtcclxuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG59XHJcbi5mc0NhbGVuZGFyOmZpcnN0LWNoaWxkIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcbi5mc0NhbGVuZGFyOmxhc3QtY2hpbGQge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuLmZzQ2FsZW5kYXIgaW1nIHtcclxuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgIzAwNzczNztcclxufVxyXG4uZnNDYWxlbmRhciBhcnRpY2xlIHtcclxuICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuLmZzQ2FsZW5kYXIgYXJ0aWNsZTpmaXJzdC1jaGlsZCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxufVxyXG4uZnNDYWxlbmRhciAuZnNUaXRsZSwgLmZzQ2FsZW5kYXIgLmZzVGl0bGUgYSB7XHJcbiAgY29sb3I6ICMxZDFkMWQ7XHJcbn1cclxuLmZzQ2FsZW5kYXIgLmZzVGl0bGUgYTpob3ZlciB7XHJcbiAgY29sb3I6ICMwMDc3Mzc7XHJcbn1cclxuLmZzQ2FsZW5kYXIgLmZzRGF0ZSB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE0Mjg1NzE0Mjk7XHJcbiAgY29sb3I6ICMwMDc3Mzc7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG4uZnNDYWxlbmRhciAuZnNUaW1lUmFuZ2Uge1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjg2O1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuLmZzQ2FsZW5kYXIgLmZzTG9jYXRpb24ge1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjg2O1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi5mc0NhbGVuZGFyTW9udGhCcm93c2VyIC5mc0NhbGVuZGFyUHJldk1vbnRoLCAuZnNDYWxlbmRhck1vbnRoQnJvd3NlciAuZnNDYWxlbmRhck5leHRNb250aCB7XHJcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgb3V0bGluZTogMDtcclxufVxyXG4uZnNDYWxlbmRhck1vbnRoQnJvd3NlciAuZnNDYWxlbmRhclByZXZNb250aDpiZWZvcmUsIC5mc0NhbGVuZGFyTW9udGhCcm93c2VyIC5mc0NhbGVuZGFyTmV4dE1vbnRoOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvhIRcIjtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LXNpemU6IDE4cHg7XHJcbiAgY29sb3I6ICMyNzM0NDY7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuLmZzQ2FsZW5kYXJNb250aEJyb3dzZXIgLmZzQ2FsZW5kYXJOZXh0TW9udGg6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIu+EhVwiO1xyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xyXG4gIC5mc0NhbGVuZGFyLmZzR3JpZCAuZnNDYWxlbmRhckV2ZW50R3JpZCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIH1cclxuICAuZnNDYWxlbmRhci5mc0dyaWQgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJNb250aEJyb3dzZXIge1xyXG4gICAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgfVxyXG4gIC5mc0NhbGVuZGFyLmZzR3JpZCAuZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhckRheWJveCxcclxuICAuZnNDYWxlbmRhci5mc0dyaWQgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJPdXRPZlJhbmdlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDE0LjI4NTcxNDI4NTclICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgbWluLWhlaWdodDogMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG4gIC5mc0NhbGVuZGFyLmZzR3JpZCAuZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhckRheWJveC5mc0NhbGVuZGFyV2Vla2VuZERheUJveCxcclxuICAuZnNDYWxlbmRhci5mc0dyaWQgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJPdXRPZlJhbmdlLmZzQ2FsZW5kYXJXZWVrZW5kRGF5Qm94IHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICB9XHJcbiAgLmZzQ2FsZW5kYXIuZnNHcmlkIC5mc0NhbGVuZGFyRXZlbnRHcmlkIC5mc0NhbGVuZGFyRGF5Ym94LmZzQ2FsZW5kYXJXZWVrZW5kRGF5Qm94ID4gZGl2LFxyXG4gIC5mc0NhbGVuZGFyLmZzR3JpZCAuZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhck91dE9mUmFuZ2UuZnNDYWxlbmRhcldlZWtlbmREYXlCb3ggPiBkaXYge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWluLWhlaWdodDogMDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZWRlZGU7XHJcbiAgfVxyXG4gIC5mc0NhbGVuZGFyLmZzR3JpZCAuZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhckRheWJveC5mc0NhbGVuZGFyV2Vla2VuZERheUJveCA+IGRpdjpmaXJzdC1jaGlsZCxcclxuICAuZnNDYWxlbmRhci5mc0dyaWQgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJPdXRPZlJhbmdlLmZzQ2FsZW5kYXJXZWVrZW5kRGF5Qm94ID4gZGl2OmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDFweDtcclxuICB9XHJcbiAgLmZzQ2FsZW5kYXIuZnNHcmlkIC5mc0NhbGVuZGFyRXZlbnRHcmlkIC5mc0NhbGVuZGFyRGF5Ym94LmZzQ2FsZW5kYXJXZWVrZW5kRGF5Qm94ID4gZGl2LnNlbGVjdGVkLFxyXG4gIC5mc0NhbGVuZGFyLmZzR3JpZCAuZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhck91dE9mUmFuZ2UuZnNDYWxlbmRhcldlZWtlbmREYXlCb3ggPiBkaXYuc2VsZWN0ZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzQ0NjtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICAuZnNDYWxlbmRhci5mc0dyaWQgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJEYXlib3guc2VsZWN0ZWQsXHJcbiAgLmZzQ2FsZW5kYXIuZnNHcmlkIC5mc0NhbGVuZGFyRXZlbnRHcmlkIC5mc0NhbGVuZGFyT3V0T2ZSYW5nZS5zZWxlY3RlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjN2Q4NTkwO1xyXG4gIH1cclxuICAuZnNDYWxlbmRhci5mc0dyaWQgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJEYXlib3guc2VsZWN0ZWQgLmZzQ2FsZW5kYXJEYXRlLFxyXG4gIC5mc0NhbGVuZGFyLmZzR3JpZCAuZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhck91dE9mUmFuZ2Uuc2VsZWN0ZWQgLmZzQ2FsZW5kYXJEYXRlIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICAuZnNDYWxlbmRhci5mc0dyaWQgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJEYXlib3ggLmZzQ2FsZW5kYXJEYXRlLFxyXG4gIC5mc0NhbGVuZGFyLmZzR3JpZCAuZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhck91dE9mUmFuZ2UgLmZzQ2FsZW5kYXJEYXRlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgdG9wOiA1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICB9XHJcbiAgLmZzQ2FsZW5kYXIuZnNHcmlkIC5mc0NhbGVuZGFyRXZlbnRHcmlkIC5mc0NhbGVuZGFyUm93IHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgZGlzcGxheTogaW5saW5lO1xyXG4gIH1cclxuICAuZnNDYWxlbmRhci5mc0dyaWQgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJJbmZvIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcbiNldmVudC12aWV3IHtcclxuICBwYWRkaW5nOiAyMHB4O1xyXG4gIG1hcmdpbjogMjBweCBhdXRvIDA7XHJcbn1cclxuI2V2ZW50LXZpZXcgLmZzQ2FsZW5kYXJEYXlib3gge1xyXG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICNldmVudC12aWV3IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uc2Nyb2xsLXVwIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuc2Nyb2xsLXVwIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZnNDYWxlbmRhcldlZWtlbmREYXlCb3hmc0NhbGVuZGFyT3V0T2ZSYW5nZSA+IGRpdjpsYXN0LWNoaWxkIC5mc0NhbGVuZGFyRGF0ZSB7XHJcbiAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgYm90dG9tOiAwO1xyXG59XHJcblxyXG4uZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhcldlZWtkYXlzIHNwYW4ge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTE4MHB4KSB7XHJcbiAgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJXZWVrZGF5cyBzcGFuIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICB9XHJcbn1cclxuXHJcbi5mc0NhbGVuZGFyRGF5Ym94IHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxufVxyXG4uZnNDYWxlbmRhclJvdyAuZnNDYWxlbmRhckRheWJveC5oYXMtaW5mbyB7XHJcbiAgYmFja2dyb3VuZDogI2IzZDVlNztcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuZnNDYWxlbmRhclJvdyAuZnNDYWxlbmRhckRheWJveC5oYXMtaW5mbyB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIH1cclxufVxyXG4uZnNDYWxlbmRhckV2ZW50R3JpZCAuZnNDYWxlbmRhclJvdyAuZnNDYWxlbmRhclRvZGF5IHtcclxuICBiYWNrZ3JvdW5kOiAjZjlmMGQ3O1xyXG59XHJcblxyXG4uZnNFbGVtZW50RXZlbnRDb2xvckljb24ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB3aWR0aDogMTBweDtcclxuICBoZWlnaHQ6IDEwcHg7XHJcbn1cclxuXHJcbi5mc0NhbGVuZGFyTGVnZW5kIHtcclxuICBtYXJnaW46IDIwcHggMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcbi5mc0NhbGVuZGFyTGVnZW5kIHVsLFxyXG4uZnNDYWxlbmRhckxlZ2VuZCBvbCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG4uZnNDYWxlbmRhckxlZ2VuZCBhIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuZnNDYWxlbmRhckxlZ2VuZCA+IHVsIHtcclxuICAgIGNvbHVtbi1jb3VudDogMjtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDgwMHB4KSB7XHJcbiAgLmZzQ2FsZW5kYXJMZWdlbmQgPiB1bCB7XHJcbiAgICBjb2x1bW4tY291bnQ6IDM7XHJcbiAgfVxyXG59XHJcbi5mc0NhbGVuZGFyTGVnZW5kID4gdWwgdWwge1xyXG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG59XHJcblxyXG4vKiEgZWxlbWVudHMgLSBjb25zdGl0dWVudCB2MC4wLjEgKi9cclxuLmZzQ29uc3RpdHVlbnQgLmZzRWxlbWVudFBhZ2luYXRpb24ge1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuLmZzQ29uc3RpdHVlbnRJdGVtIHtcclxuICBmbG9hdDogbm9uZTtcclxuICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc0NvbnN0aXR1ZW50SXRlbSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIH1cclxufVxyXG4uZnNDb25zdGl0dWVudEl0ZW0gPiAqIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxufVxyXG4uZnNDb25zdGl0dWVudCAuZnNQaG90byB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZy1yaWdodDogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XHJcbiAgbWFyZ2luOiAxMHB4IGF1dG87XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDUwMHB4KSB7XHJcbiAgLmZzQ29uc3RpdHVlbnQgLmZzUGhvdG8ge1xyXG4gICAgd2lkdGg6IDE1MHB4O1xyXG4gICAgaGVpZ2h0OiAxNTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgfVxyXG59XHJcbi5mc0NvbnN0aXR1ZW50IC5mc1Bob3RvIGltZyB7XHJcbiAgZmxvYXQ6IG5vbmU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5mc0NvbnN0aXR1ZW50IC5mc0Z1bGxOYW1lIHtcclxuICBwYWRkaW5nLXRvcDogMjBweDtcclxufVxyXG4uZnNDb25zdGl0dWVudCAuZnNFbWFpbCB7XHJcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICBbY2xhc3NePSdmc0NvbnN0aXR1ZW50Q29sdW1uTGF5b3V0J10ge1xyXG4gICAgY29sdW1uLWdhcDogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc0NvbnN0aXR1ZW50Q29sdW1uTGF5b3V0XzIge1xyXG4gICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XHJcbiAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcclxuICAgIGNvbHVtbi1jb3VudDogMjtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc0NvbnN0aXR1ZW50Q29sdW1uTGF5b3V0XzMge1xyXG4gICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XHJcbiAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcclxuICAgIGNvbHVtbi1jb3VudDogMjtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgLmZzQ29uc3RpdHVlbnRDb2x1bW5MYXlvdXRfMyB7XHJcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcclxuICAgIC1tb3otY29sdW1uLWNvdW50OiAzO1xyXG4gICAgY29sdW1uLWNvdW50OiAzO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzQ29uc3RpdHVlbnRDb2x1bW5MYXlvdXRfNCB7XHJcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcclxuICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xyXG4gICAgY29sdW1uLWNvdW50OiAyO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuZnNDb25zdGl0dWVudENvbHVtbkxheW91dF80IHtcclxuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzO1xyXG4gICAgLW1vei1jb2x1bW4tY291bnQ6IDM7XHJcbiAgICBjb2x1bW4tY291bnQ6IDM7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAuZnNDb25zdGl0dWVudENvbHVtbkxheW91dF80IHtcclxuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiA0O1xyXG4gICAgLW1vei1jb2x1bW4tY291bnQ6IDQ7XHJcbiAgICBjb2x1bW4tY291bnQ6IDQ7XHJcbiAgfVxyXG59XHJcblxyXG4uZnNQcm9maWxlU2VjdGlvbiB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xyXG59XHJcbi5mc1Byb2ZpbGVTZWN0aW9uIC5mc1Byb2ZpbGVTZWN0aW9uU3BlY2lhbERhdGEgPiBkaXYge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIGZsb2F0OiBub25lO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc1Byb2ZpbGVTZWN0aW9uIC5mc1Byb2ZpbGVTZWN0aW9uU3BlY2lhbERhdGEgPiBkaXYge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHdpZHRoOiAyNSU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjI0ZW07XHJcbiAgfVxyXG4gIC5mc1Byb2ZpbGVTZWN0aW9uIC5mc1Byb2ZpbGVTZWN0aW9uU3BlY2lhbERhdGEgPiBkaXYgKyBkaXYge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDc0JTtcclxuICB9XHJcbn1cclxuXHJcbi5mc0NvbnN0aXR1ZW50LmZzU2VhcmNoIHtcclxuICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZGVkZWRlO1xyXG59XHJcbi5mc0NvbnN0aXR1ZW50LmZzU2VhcmNoID4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIG1hcmdpbjogMCAtMTBweDtcclxufVxyXG4uZnNDb25zdGl0dWVudC5mc1NlYXJjaCBsYWJlbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc0NvbnN0aXR1ZW50LmZzU2VhcmNoIGxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICB3aWR0aDogNDkuNSU7XHJcbiAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gIC5mc0NvbnN0aXR1ZW50LmZzU2VhcmNoIGxhYmVsIHtcclxuICAgIHdpZHRoOiAzMi44MzMzMzMzMzMzJTtcclxuICB9XHJcbn1cclxuLmZzQ29uc3RpdHVlbnQuZnNTZWFyY2ggaW5wdXQsXHJcbi5mc0NvbnN0aXR1ZW50LmZzU2VhcmNoIHNlbGVjdCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLmZzQ29uc3RpdHVlbnQuZnNTZWFyY2ggW3R5cGUqPSdzdWJtaXQnXSB7XHJcbiAgd2lkdGg6IGF1dG87XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzQ29uc3RpdHVlbnQuZnNTZWFyY2ggW3R5cGUqPSdzdWJtaXQnXSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMC42MjVlbTtcclxuICB9XHJcbn1cclxuLmZzQ29uc3RpdHVlbnQuZnNTZWFyY2ggLmZzQ29uc3RpdHVlbnRTZWFyY2hCdXR0b24ge1xyXG4gIGZvbnQtZmFtaWx5OiBcIm9wZW4tc2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGJvcmRlcjogMDtcclxuICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gIHBhZGRpbmc6IDEycHggMjBweDtcclxuICBiYWNrZ3JvdW5kOiAjMDA3MmIwO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIG91dGxpbmU6IDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIG1hcmdpbjogMCAxMHB4O1xyXG4gIHBhZGRpbmc6IDEwcHggMzBweDtcclxuICBmb250LXNpemU6IGluaGVyaXQ7XHJcbn1cclxuLmZzQ29uc3RpdHVlbnQuZnNTZWFyY2ggLmZzQ29uc3RpdHVlbnRTZWFyY2hCdXR0b246aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICM4ZjhmOGY7XHJcbiAgY29sb3I6ICMwMDA7XHJcbn1cclxuLmZzQ29uc3RpdHVlbnQuZnNTZWFyY2ggLmZzQ29uc3RpdHVlbnRTZWFyY2hCdXR0b24gZW0ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICBsaW5lLWhlaWdodDogMS4xO1xyXG59XHJcblxyXG4uZnNFbGVtZW50UGFnaW5hdGlvbiB7XHJcbiAgbWFyZ2luOiAyMHB4IDA7XHJcbn1cclxuXHJcbi5jYXB0aW9uIHtcclxuICBmb250LXNpemU6IDAuOGVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgbWFyZ2luLWJvdHRvbTogNy42OHB4O1xyXG4gIGNvbG9yOiAjMzczNzM3O1xyXG4gIGZvbnQtZmFtaWx5OiBcImdhcmFtb25kLXByZW1pZXItcHJvXCIsIFRpbWVzLCBzZXJpZjtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4uZnNfc3R5bGVfMjksXHJcbi5sZWFkLWluIHtcclxuICBmb250LXNpemU6IDEuMjVlbTtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIG1hcmdpbi1ib3R0b206IDdweDtcclxuICBjb2xvcjogIzAwNzJiMDtcclxuICBmb250LWZhbWlseTogXCJvcGVuLXNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uZnNfc3R5bGVfMzAsXHJcbi5jYWxsb3V0Om5vdCguYnV0dG9uKSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgZm9udC1zaXplOiAyNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjIzMDc2OTIzMDg7XHJcbiAgY29sb3I6ICMwMDc3Mzc7XHJcbiAgZm9udC1mYW1pbHk6IFwiZ2FyYW1vbmQtcHJlbWllci1wcm9cIiwgVGltZXMsIHNlcmlmO1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgLyogICYubGVmdCB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICBtYXJnaW4tbGVmdDogJGd1dHRlcjtcclxuICBcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcGhhYmxldCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgIH1cclxuICBcclxuICAgIH1cclxuICBcclxuICAgICYucmlnaHQge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogJGd1dHRlcjtcclxuICBcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcGhhYmxldCkge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgIH1cclxuICBcclxuICAgIH0qL1xyXG59XHJcblxyXG4uY29udGVudC1ibG9jayB7XHJcbiAgbWFyZ2luLXRvcDogMjBweDtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG59XHJcbi5jb250ZW50LWJsb2NrID4gaGVhZGVyIHtcclxuICBib3JkZXItdG9wOiA1cHggc29saWQgIzAwMDtcclxuICBwYWRkaW5nLXRvcDogMTVweDtcclxufVxyXG4uY29udGVudC1ibG9jayA+IGhlYWRlciAuZnNFbGVtZW50VGl0bGUge1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuLmNvbnRlbnQtYmxvY2s6Zmlyc3QtY2hpbGQge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbn1cclxuLmNvbnRlbnQtYmxvY2s6bGFzdC1jaGlsZCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG4uY29udGVudC1ibG9jayBpbWcge1xyXG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjMDA3NzM3O1xyXG59XHJcblxyXG4uZnNfc3R5bGVfMjUsXHJcbi5idXR0b24ge1xyXG4gIGZvbnQtZmFtaWx5OiBcIm9wZW4tc2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgZm9udC1mYW1pbHk6IFwib3Blbi1zYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMjRweDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgcGFkZGluZzogMTJweCAyMHB4O1xyXG4gIGJhY2tncm91bmQ6ICMwMDc3Mzc7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgb3V0bGluZTogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbn1cclxuLmZzX3N0eWxlXzI1OmhvdmVyLFxyXG4uYnV0dG9uOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIGNvbG9yOiAjYmViZWJlO1xyXG59XHJcbi5mc19zdHlsZV8yNSBlbSxcclxuLmJ1dHRvbiBlbSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1zaXplOiAxM3B4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbn1cclxuLmZzX3N0eWxlXzI1OmhvdmVyLFxyXG4uYnV0dG9uOmhvdmVyIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjYmViZWJlO1xyXG59XHJcblxyXG4uZnNfc3R5bGVfMjYsIC5idXR0b24uY2FsbG91dCB7XHJcbiAgZm9udC1mYW1pbHk6IFwib3Blbi1zYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMjRweDtcclxuICBmb250LWZhbWlseTogXCJvcGVuLXNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBib3JkZXI6IDA7XHJcbiAgbWFyZ2luOiAwIDAgMjBweDtcclxuICBwYWRkaW5nOiAxMnB4IDIwcHg7XHJcbiAgYmFja2dyb3VuZDogIzAwNzczNztcclxuICBjb2xvcjogI2ZmZjtcclxuICBvdXRsaW5lOiAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBwYWRkaW5nOiAyN3B4IDMwcHg7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXNpemU6IDFlbTtcclxuICBsaW5lLWhlaWdodDogMjRweDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxufVxyXG4uZnNfc3R5bGVfMjY6aG92ZXIsXHJcbi5idXR0b24uY2FsbG91dDpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICBjb2xvcjogI2JlYmViZTtcclxufVxyXG4uZnNfc3R5bGVfMjYgZW0sXHJcbi5idXR0b24uY2FsbG91dCBlbSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1zaXplOiAxM3B4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbn1cclxuLmZzX3N0eWxlXzI2OmhvdmVyLFxyXG4uYnV0dG9uLmNhbGxvdXQ6aG92ZXIge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZWJlYmU7XHJcbn1cclxuI2ZzQmFubmVyTGVmdCAuZnNfc3R5bGVfMjYsICNmc0Jhbm5lclJpZ2h0IC5mc19zdHlsZV8yNixcclxuI2ZzQmFubmVyTGVmdCAuYnV0dG9uLmNhbGxvdXQsICNmc0Jhbm5lclJpZ2h0IC5idXR0b24uY2FsbG91dCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5mc19zdHlsZV8xNSxcclxuLmZzX3N0eWxlXzE2LFxyXG4uZnNfc3R5bGVfMTcge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XHJcbiAgLW1vei1ib3gtc2hhZG93OiBub25lO1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgbWFyZ2luOiAyMHB4IGF1dG87XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc19zdHlsZV8xNSxcclxuICAuZnNfc3R5bGVfMTYge1xyXG4gICAgd2lkdGg6IDUwJTtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgLmZzX3N0eWxlXzE1LFxyXG4gIC5mc19zdHlsZV8xNiB7XHJcbiAgICB3aWR0aDogMzcuNSU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuZnNfc3R5bGVfMTUge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc19zdHlsZV8xNiB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi5uYXZpZ2F0aW9uLm1haW4gdWwsXHJcbi5uYXZpZ2F0aW9uLm1haW4gb2wge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiBhIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4ubmF2aWdhdGlvbi5tYWluIG5hdiB1bCxcclxuLm5hdmlnYXRpb24ubWFpbiBuYXYgb2wge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiBuYXYgYSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiBuYXYgdWwuZnNOYXZMZXZlbDEge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcbi5uYXZpZ2F0aW9uLm1haW4gbmF2IHVsLmZzTmF2TGV2ZWwxID4gbGkge1xyXG4gIGZsZXg6IDEgYXV0bztcclxufVxyXG4ubm8tZmxleGJveCAubmF2aWdhdGlvbi5tYWluIG5hdiB1bC5mc05hdkxldmVsMSA+IGxpIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiBuYXYgdWwuZnNOYXZMZXZlbDEgPiBsaSA+IGEge1xyXG4gIG1hcmdpbi1yaWdodDogMnB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgcGFkZGluZzogMjQuNXB4IDhweDtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAubmF2aWdhdGlvbi5tYWluIG5hdiB1bC5mc05hdkxldmVsMSA+IGxpID4gYSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMjNweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAyM3B4O1xyXG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xyXG4gIH1cclxufVxyXG4ubmF2aWdhdGlvbi5tYWluIG5hdiB1bC5mc05hdkxldmVsMSA+IGxpID4gYTpob3ZlciB7XHJcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcclxuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiBuYXYgdWwuZnNOYXZMZXZlbDEgPiBsaSA+IGE6aG92ZXIsIC5uYXZpZ2F0aW9uLm1haW4gbmF2IHVsLmZzTmF2TGV2ZWwxID4gbGkgPiBhLmFjdGl2ZSB7XHJcbiAgY29sb3I6ICNlYmNlN2I7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiBuYXYgdWwuZnNOYXZMZXZlbDEgPiBsaS5mc05hdkN1cnJlbnRQYWdlID4gYSwgLm5hdmlnYXRpb24ubWFpbiBuYXYgdWwuZnNOYXZMZXZlbDEgPiBsaS5mc05hdkN1cnJlbnRQYWdlQW5jZXN0b3IgPiBhIHtcclxuICBjb2xvcjogI2ViY2U3YjtcclxufVxyXG4ubmF2aWdhdGlvbi5tYWluIC5mc05hdlBhZ2VJbmZvIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA5OS41JTtcclxuICB6LWluZGV4OiAxMDtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcclxuICBwYWRkaW5nOiA0MHB4O1xyXG4gIGJhY2tncm91bmQ6ICMyNzM0NDY7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZjtcclxuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiAuZnNOYXZQYWdlSW5mbyAuZnNOYXZQYWdlRGVzY3JpcHRpb24ge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIG1hcmdpbi1yaWdodDogLTAuMjJlbTtcclxuICB3aWR0aDogMzYuNTg1MzY1ODUzNyU7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU3MTQyODU3MTQ7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiAuZnNOYXZQYWdlSW5mbyAuZnNOYXZQYWdlRGVzY3JpcHRpb24gaDMsXHJcbi5uYXZpZ2F0aW9uLm1haW4gLmZzTmF2UGFnZUluZm8gLmZzTmF2UGFnZURlc2NyaXB0aW9uIGEge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbjogMS41IDAgMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbiAgY29sb3I6ICMwMDcyYjA7XHJcbiAgZm9udC1mYW1pbHk6IFwiZ2FyYW1vbmQtcHJlbWllci1wcm9cIiwgVGltZXMsIHNlcmlmO1xyXG59XHJcbi5uYXZpZ2F0aW9uLm1haW4gLmZzTmF2UGFnZUluZm8gLmZzTmF2UGFnZURlc2NyaXB0aW9uIGgzLCAubmF2aWdhdGlvbi5tYWluIC5mc05hdlBhZ2VJbmZvIC5mc05hdlBhZ2VEZXNjcmlwdGlvbiBoMzpob3ZlcixcclxuLm5hdmlnYXRpb24ubWFpbiAuZnNOYXZQYWdlSW5mbyAuZnNOYXZQYWdlRGVzY3JpcHRpb24gYSxcclxuLm5hdmlnYXRpb24ubWFpbiAuZnNOYXZQYWdlSW5mbyAuZnNOYXZQYWdlRGVzY3JpcHRpb24gYTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxufVxyXG4ubmF2aWdhdGlvbi5tYWluIC5mc05hdlBhZ2VJbmZvIC5mc05hdlBhZ2VEZXNjcmlwdGlvbiBoMzpmaXJzdC1jaGlsZCxcclxuLm5hdmlnYXRpb24ubWFpbiAuZnNOYXZQYWdlSW5mbyAuZnNOYXZQYWdlRGVzY3JpcHRpb24gYTpmaXJzdC1jaGlsZCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxufVxyXG4ubmF2aWdhdGlvbi5tYWluIC5mc05hdlBhZ2VJbmZvIHVsLmZzTmF2TGV2ZWwyIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICBtYXJnaW4tcmlnaHQ6IC0wLjIyZW07XHJcbiAgd2lkdGg6IDI2LjgyOTI2ODI5MjclO1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxufVxyXG4ubmF2aWdhdGlvbi5tYWluIC5mc05hdlBhZ2VJbmZvIHVsLmZzTmF2TGV2ZWwyID4gbGkge1xyXG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4ubmF2aWdhdGlvbi5tYWluIC5mc05hdlBhZ2VJbmZvIHVsLmZzTmF2TGV2ZWwyID4gbGk6YWZ0ZXIge1xyXG4gIG1hcmdpbi1yaWdodDogMTBweDtcclxuICBtYXJnaW4tbGVmdDogMTBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuICBjb250ZW50OiAnJztcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiAuZnNOYXZQYWdlSW5mbyB1bC5mc05hdkxldmVsMiA+IGxpOmZpcnN0LWNoaWxkOmFmdGVyIHtcclxuICBjb250ZW50OiBub3JtYWw7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiAuZnNOYXZQYWdlSW5mbyBhIHtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTcxNDI4NTcxNDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgcGFkZGluZzogMTBweCAxMHB4O1xyXG59XHJcbi5uYXZpZ2F0aW9uLm1haW4gLmZzTmF2UGFnZUluZm8gYTpob3ZlciB7XHJcbiAgY29sb3I6ICNlYmNlN2I7XHJcbn1cclxuLm5hdmlnYXRpb24ubWFpbiBsaTpob3ZlciAuZnNOYXZQYWdlSW5mbyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbiNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIHtcclxuICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICBtYXgtaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICAvKlxyXG4gICAgSG9tZTogTi9BXHJcbiAgICBUaWVyIDEgKEFLQTogXCJMYW5kaW5nIFBhZ2VcIik6IFNob3cgVDMgKGltbWVkaWF0ZSBjaGlsZHJlbiBXSVRIIGltbWVkaWF0ZSBjaGlsZHJlbiBleHBhbmRlZCBPTkxZIG9mIGN1cnJlbnQgcGFnZSlcclxuICAgIFRpZXIgMjogU2hvdyBUMyAoaW1tZWRpYXRlIGNoaWxkcmVuKVxyXG4gICAgVGllciAzOiBTaG93IFQzIChzaWJsaW5ncywgd2l0aCBjdXJyZW50IHBhZ2UgaW4gJ2FjdGl2ZScgc3RhdGUpLCBTaG93IFQ0IChpbW1lZGlhdGUgY2hpbGRyZW4gT05MWSBvZiBjdXJyZW50IHBhZ2UpXHJcbiAgICBUaWVyIDQ6IFNob3cgVDMgKGltbWVkaWF0ZSBwYXJlbnQgJiBwYXJlbnQncyBzaWJsaW5ncywgd2l0aCBjdXJyZW50IHBhZ2UgYW5jZXN0b3IgaW4gJ2FjdGl2ZScgc3RhdGUpLCBTaG93IFQ0IChzaWJsaW5ncyBPTkxZIG9mIGN1cnJlbnQgcGFnZSlcclxuICAgIFRpZXIgNTogPz8gU2hvdyBsaW5rIGJhY2sgdG8gaW1tZWRpYXRlIHBhcmVudD9cclxuICAqL1xyXG59XHJcbiNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIHVsLFxyXG4jZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciBvbCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG4jZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciBhIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4uaGFzLXRpZXItbmF2aWdhdGlvbiAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciB7XHJcbiAgbWF4LWhlaWdodDogMTAwMHB4O1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIHtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcbiNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyLm1vYmlsZSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIubW9iaWxlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcbiNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyID4gaGVhZGVyIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MmIwO1xyXG4gIHBhZGRpbmc6IDIwcHggMjBweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGZvbnQtZmFtaWx5OiBcIm9wZW4tc2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMS4zNzU7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyID4gaGVhZGVyIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50IHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcbiNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyID4gaGVhZGVyIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50OmFmdGVyIHtcclxuICBjb250ZW50OiBcIu+BlFwiO1xyXG4gIHBhZGRpbmc6IDAgMjBweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG59XHJcbiNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyID4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG59XHJcbiNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIGxpIHtcclxuICBtYXJnaW46IDFweCAwO1xyXG59XHJcbiNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkN1cnJlbnRQYWdlID4gYSxcclxuI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2Q3VycmVudFBhZ2VBbmNlc3RvciA+IGEge1xyXG4gIGNvbG9yOiAjMjczNDQ2ICFpbXBvcnRhbnQ7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG4jZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciBbY2xhc3MqPVwiZnNOYXZMZXZlbFwiXSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcbltjbGFzcyo9XCJoaWVyYXJjaHktdGllclwiXSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDEgPiBsaSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5bY2xhc3MqPVwiaGllcmFyY2h5LXRpZXJcIl0gI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwxID4gbGkgPiBhIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbltjbGFzcyo9XCJoaWVyYXJjaHktdGllclwiXSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDEgPiBsaS5mc05hdkN1cnJlbnRQYWdlLFxyXG5bY2xhc3MqPVwiaGllcmFyY2h5LXRpZXJcIl0gI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwxID4gbGkuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4uaGllcmFyY2h5LXRpZXItMiAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDIgPiBsaSwgLmhpZXJhcmNoeS10aWVyLTMgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwyID4gbGksIC5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMiA+IGxpLCAuaGllcmFyY2h5LXRpZXItNSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDIgPiBsaSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uaGllcmFyY2h5LXRpZXItMiAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDIgPiBsaSA+IGEsIC5oaWVyYXJjaHktdGllci0zICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMiA+IGxpID4gYSwgLmhpZXJhcmNoeS10aWVyLTQgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwyID4gbGkgPiBhLCAuaGllcmFyY2h5LXRpZXItNSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDIgPiBsaSA+IGEge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmhpZXJhcmNoeS10aWVyLTIgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwyID4gbGkuZnNOYXZDdXJyZW50UGFnZSxcclxuLmhpZXJhcmNoeS10aWVyLTIgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwyID4gbGkuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yLCAuaGllcmFyY2h5LXRpZXItMyAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDIgPiBsaS5mc05hdkN1cnJlbnRQYWdlLFxyXG4uaGllcmFyY2h5LXRpZXItMyAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDIgPiBsaS5mc05hdkN1cnJlbnRQYWdlQW5jZXN0b3IsIC5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMiA+IGxpLmZzTmF2Q3VycmVudFBhZ2UsXHJcbi5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMiA+IGxpLmZzTmF2Q3VycmVudFBhZ2VBbmNlc3RvciwgLmhpZXJhcmNoeS10aWVyLTUgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwyID4gbGkuZnNOYXZDdXJyZW50UGFnZSxcclxuLmhpZXJhcmNoeS10aWVyLTUgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwyID4gbGkuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4uaGllcmFyY2h5LXRpZXItMiAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDQsIC5oaWVyYXJjaHktdGllci0zICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsNCwgLmhpZXJhcmNoeS10aWVyLTQgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWw0LCAuaGllcmFyY2h5LXRpZXItNSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDQge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmhpZXJhcmNoeS10aWVyLTIgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwzID4gbGkgPiBhLCAuaGllcmFyY2h5LXRpZXItMyAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDMgPiBsaSA+IGEsIC5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyA+IGxpID4gYSwgLmhpZXJhcmNoeS10aWVyLTUgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwzID4gbGkgPiBhIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAxNHB4IDIwcHg7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuMzc1O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDcyYjA7XHJcbn1cclxuLmhpZXJhcmNoeS10aWVyLTIgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwzID4gbGkgPiBhOmhvdmVyLCAuaGllcmFyY2h5LXRpZXItMyAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDMgPiBsaSA+IGE6aG92ZXIsIC5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyA+IGxpID4gYTpob3ZlciwgLmhpZXJhcmNoeS10aWVyLTUgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwzID4gbGkgPiBhOmhvdmVyIHtcclxuICBjb2xvcjogI2ViY2U3YjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MmIwO1xyXG59XHJcbi5oaWVyYXJjaHktdGllci0yICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsNCwgLmhpZXJhcmNoeS10aWVyLTMgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWw0LCAuaGllcmFyY2h5LXRpZXItNCAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDQsIC5oaWVyYXJjaHktdGllci01ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsNCB7XHJcbiAgbWFyZ2luOiAwIDEwcHggMTBweDtcclxufVxyXG4uaGllcmFyY2h5LXRpZXItMiAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDQgPiBsaSwgLmhpZXJhcmNoeS10aWVyLTMgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWw0ID4gbGksIC5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsNCA+IGxpLCAuaGllcmFyY2h5LXRpZXItNSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDQgPiBsaSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcbi5oaWVyYXJjaHktdGllci0yICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsNCA+IGxpID4gYSwgLmhpZXJhcmNoeS10aWVyLTMgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWw0ID4gbGkgPiBhLCAuaGllcmFyY2h5LXRpZXItNCAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDQgPiBsaSA+IGEsIC5oaWVyYXJjaHktdGllci01ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsNCA+IGxpID4gYSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogMTRweCAyMHB4O1xyXG4gIGZvbnQtc2l6ZTogMWVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjM3NTtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MmIwO1xyXG4gIHBhZGRpbmctdG9wOiA0Ljk5OHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiA0Ljk5OHB4O1xyXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcclxuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjg2O1xyXG59XHJcbi5oaWVyYXJjaHktdGllci0yICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsNCA+IGxpID4gYTpob3ZlciwgLmhpZXJhcmNoeS10aWVyLTMgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWw0ID4gbGkgPiBhOmhvdmVyLCAuaGllcmFyY2h5LXRpZXItNCAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDQgPiBsaSA+IGE6aG92ZXIsIC5oaWVyYXJjaHktdGllci01ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsNCA+IGxpID4gYTpob3ZlciB7XHJcbiAgY29sb3I6ICNlYmNlN2I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzJiMDtcclxufVxyXG4uaGllcmFyY2h5LXRpZXItMyAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDMgPiBsaS5mc05hdkN1cnJlbnRQYWdlLFxyXG4uaGllcmFyY2h5LXRpZXItMyAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDMgPiBsaS5mc05hdkN1cnJlbnRQYWdlQW5jZXN0b3IsIC5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyA+IGxpLmZzTmF2Q3VycmVudFBhZ2UsXHJcbi5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyA+IGxpLmZzTmF2Q3VycmVudFBhZ2VBbmNlc3RvciwgLmhpZXJhcmNoeS10aWVyLTUgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwzID4gbGkuZnNOYXZDdXJyZW50UGFnZSxcclxuLmhpZXJhcmNoeS10aWVyLTUgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwzID4gbGkuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yIHtcclxuICBiYWNrZ3JvdW5kOiAjMDA3MmIwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuLmhpZXJhcmNoeS10aWVyLTMgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwzID4gbGkuZnNOYXZDdXJyZW50UGFnZSAuZnNOYXZMZXZlbDQsXHJcbi5oaWVyYXJjaHktdGllci0zICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyA+IGxpLmZzTmF2Q3VycmVudFBhZ2VBbmNlc3RvciAuZnNOYXZMZXZlbDQsIC5oaWVyYXJjaHktdGllci00ICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyA+IGxpLmZzTmF2Q3VycmVudFBhZ2UgLmZzTmF2TGV2ZWw0LFxyXG4uaGllcmFyY2h5LXRpZXItNCAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDMgPiBsaS5mc05hdkN1cnJlbnRQYWdlQW5jZXN0b3IgLmZzTmF2TGV2ZWw0LCAuaGllcmFyY2h5LXRpZXItNSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDMgPiBsaS5mc05hdkN1cnJlbnRQYWdlIC5mc05hdkxldmVsNCxcclxuLmhpZXJhcmNoeS10aWVyLTUgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwzID4gbGkuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yIC5mc05hdkxldmVsNCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmhpZXJhcmNoeS10aWVyLTEgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwyID4gbGkgPiBhIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAxNHB4IDIwcHg7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuMzc1O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDcyYjA7XHJcbn1cclxuLmhpZXJhcmNoeS10aWVyLTEgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWwyID4gbGkgPiBhOmhvdmVyIHtcclxuICBjb2xvcjogI2ViY2U3YjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MmIwO1xyXG59XHJcbi5oaWVyYXJjaHktdGllci0xICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyB7XHJcbiAgbWFyZ2luOiAwIDEwcHggMTBweDtcclxufVxyXG4uaGllcmFyY2h5LXRpZXItMSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDMgPiBsaSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcbi5oaWVyYXJjaHktdGllci0xICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyA+IGxpID4gYSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogMTRweCAyMHB4O1xyXG4gIGZvbnQtc2l6ZTogMWVtO1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjM3NTtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MmIwO1xyXG4gIHBhZGRpbmctdG9wOiA0Ljk5OHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiA0Ljk5OHB4O1xyXG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcclxuICBsaW5lLWhlaWdodDogMS40Mjg1NzE0Mjg2O1xyXG59XHJcbi5oaWVyYXJjaHktdGllci0xICNmc1BhZ2VCb2R5V3JhcHBlciAubmF2aWdhdGlvbi50aWVyIC5mc05hdkxldmVsMyA+IGxpID4gYTpob3ZlciB7XHJcbiAgY29sb3I6ICNlYmNlN2I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzJiMDtcclxufVxyXG4uaGllcmFyY2h5LXRpZXItNSAjZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciAuZnNOYXZMZXZlbDQgPiBsaSA+IGEge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmhpZXJhcmNoeS10aWVyLTUgI2ZzUGFnZUJvZHlXcmFwcGVyIC5uYXZpZ2F0aW9uLnRpZXIgLmZzTmF2TGV2ZWw0ID4gbGkuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yID4gYSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbnNlY3Rpb24ub2ZmLWNhbnZhcyB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZzogMCAyMHB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6IDI7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJhY2tncm91bmQ6ICMyNzM0NDY7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgc2VjdGlvbi5vZmYtY2FudmFzIHtcclxuICAgIGhlaWdodDogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4ub2ZmLWNhbnZhcy1tZW51LW9wZW4gc2VjdGlvbi5vZmYtY2FudmFzIHtcclxuICBoZWlnaHQ6IDkwMHB4O1xyXG4gIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG59XHJcbi5vZmYtY2FudmFzLW1lbnUtb3BlbiBodG1sLFxyXG4ub2ZmLWNhbnZhcy1tZW51LW9wZW4gYm9keSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogYXV0bztcclxufVxyXG4ub2ZmLWNhbnZhcy1tZW51LW9wZW4gI2ZzUGFnZVdyYXBwZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogYXV0bztcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgaGVhZGVyIC5mc0VsZW1lbnRUaXRsZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgaGVhZGVyIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50IHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbnNlY3Rpb24ub2ZmLWNhbnZhcyAuYnV0dG9uLm9mZi1jYW52YXMtdHJpZ2dlciB7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1cHg7XHJcbiAgbGVmdDogNXB4O1xyXG4gIGNvbG9yOiAjZWJjZTdiO1xyXG4gIG1hcmdpbjogMDtcclxuICB3aWR0aDogNDVweDtcclxuICBoZWlnaHQ6IDM2cHg7XHJcbn1cclxuc2VjdGlvbi5vZmYtY2FudmFzIC5idXR0b24ub2ZmLWNhbnZhcy10cmlnZ2VyLCBzZWN0aW9uLm9mZi1jYW52YXMgLmJ1dHRvbi5vZmYtY2FudmFzLXRyaWdnZXI6aG92ZXIge1xyXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuc2VjdGlvbi5vZmYtY2FudmFzIC5idXR0b24ub2ZmLWNhbnZhcy10cmlnZ2VyOmhvdmVyIHtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgLmJ1dHRvbi5vZmYtY2FudmFzLXRyaWdnZXIgc3BhbiB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgLmJ1dHRvbi5vZmYtY2FudmFzLXRyaWdnZXI6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74CNXCI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtaW5kZW50OiAwO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgLm5hdmlnYXRpb24ubWFpbiB7XHJcbiAgbWFyZ2luLXRvcDogMjBweDtcclxuICBwYWRkaW5nLXRvcDogMjBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgLm5hdmlnYXRpb24ubWFpbiB1bC5mc05hdkxldmVsMSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuc2VjdGlvbi5vZmYtY2FudmFzIC5uYXZpZ2F0aW9uLm1haW4gdWwuZnNOYXZMZXZlbDEgbGkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbnNlY3Rpb24ub2ZmLWNhbnZhcyAubmF2aWdhdGlvbi5tYWluIHVsLmZzTmF2TGV2ZWwxIGxpIGEge1xyXG4gIGJvcmRlcjogbm9uZTtcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgLm5hdmlnYXRpb24ubWFpbiAuZnNOYXZQYWdlSW5mbyB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbnNlY3Rpb24ub2ZmLWNhbnZhcyAubmF2aWdhdGlvbi51dGlsaXR5IHtcclxuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG59XHJcbnNlY3Rpb24ub2ZmLWNhbnZhcyAubmF2aWdhdGlvbi51dGlsaXR5IHVsLFxyXG5zZWN0aW9uLm9mZi1jYW52YXMgLm5hdmlnYXRpb24udXRpbGl0eSBvbCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgLm5hdmlnYXRpb24udXRpbGl0eSBhIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5zZWN0aW9uLm9mZi1jYW52YXMgLm5hdmlnYXRpb24udXRpbGl0eSB1bC5mc05hdkxldmVsMSB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtMjBweDtcclxuICBtYXJnaW4tbGVmdDogLTIwcHg7XHJcbiAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDFhMjM7XHJcbn1cclxuc2VjdGlvbi5vZmYtY2FudmFzIC5uYXZpZ2F0aW9uLnV0aWxpdHkgdWwuZnNOYXZMZXZlbDEgbGkge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbnNlY3Rpb24ub2ZmLWNhbnZhcyAubmF2aWdhdGlvbi51dGlsaXR5IHVsLmZzTmF2TGV2ZWwxIGxpIGEge1xyXG4gIG1hcmdpbi1yaWdodDogMnB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgY29sb3I6ICM4ZjhmOGY7XHJcbiAgZm9udC1mYW1pbHk6IFwiZ2FyYW1vbmQtcHJlbWllci1wcm9cIiwgVGltZXMsIHNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBhZGRpbmc6IDZweCAyMHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDFhMjM7XHJcbiAgcGFkZGluZzogMTAuNXB4IDIwcHg7XHJcbn1cclxuc2VjdGlvbi5vZmYtY2FudmFzIC5uYXZpZ2F0aW9uLnV0aWxpdHkgdWwuZnNOYXZMZXZlbDEgbGkgYTpob3ZlciB7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzJiMDtcclxufVxyXG5cclxuLm5hdmlnYXRpb24uc29jaWFsIHVsLFxyXG4ubmF2aWdhdGlvbi5zb2NpYWwgb2wge1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuLm5hdmlnYXRpb24uc29jaWFsIGEge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi5uYXZpZ2F0aW9uLnNvY2lhbCBuYXYge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5uYXZpZ2F0aW9uLnNvY2lhbCBuYXYge1xyXG4gICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICB9XHJcbn1cclxuLm5hdmlnYXRpb24uc29jaWFsIHVsIHtcclxuICBtYXJnaW4tcmlnaHQ6IC0yLjVweDtcclxuICBtYXJnaW4tbGVmdDogLTIuNXB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4ubmF2aWdhdGlvbi5zb2NpYWwgdWwgbGkge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDIuNXB4O1xyXG4gIHBhZGRpbmctbGVmdDogMi41cHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtMC4yMmVtO1xyXG4gIG1hcmdpbi1ib3R0b206IDIuNXB4O1xyXG59XHJcbi5uYXZpZ2F0aW9uLnNvY2lhbCBhIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB3aWR0aDogMzhweDtcclxuICBoZWlnaHQ6IDM4cHg7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA2MCU7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA2MCU7XHJcbiAgYm9yZGVyLXJhZGl1czogNjAlO1xyXG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLm5hdmlnYXRpb24uc29jaWFsIGE6aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbn1cclxuLm5hdmlnYXRpb24uc29jaWFsIGE6YWZ0ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0ZXh0LWluZGVudDogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdG9wOiA1MCU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZm9udC1zaXplOiAyMnB4O1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG4ubmF2aWdhdGlvbi5zb2NpYWwgYVtocmVmKj0nZmFjZWJvb2snXTphZnRlciB7XHJcbiAgY29udGVudDogXCLvgppcIjtcclxufVxyXG4ubmF2aWdhdGlvbi5zb2NpYWwgYVtocmVmKj0nZ29vZ2xlJ106YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74OVXCI7XHJcbn1cclxuLm5hdmlnYXRpb24uc29jaWFsIGFbaHJlZio9J2luc3RhZ3JhbSddOmFmdGVyIHtcclxuICBjb250ZW50OiBcIu+FrVwiO1xyXG59XHJcbi5uYXZpZ2F0aW9uLnNvY2lhbCBhW2hyZWYqPSdsaW5rZWRpbiddOmFmdGVyIHtcclxuICBjb250ZW50OiBcIu+DoVwiO1xyXG59XHJcbi5uYXZpZ2F0aW9uLnNvY2lhbCBhW2hyZWYqPSdibG9nJ106YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74KeXCI7XHJcbn1cclxuLm5hdmlnYXRpb24uc29jaWFsIGFbaHJlZio9J3R3aXR0ZXInXTphZnRlciB7XHJcbiAgY29udGVudDogXCLvgplcIjtcclxufVxyXG4ubmF2aWdhdGlvbi5zb2NpYWwgYVtocmVmKj0neW91dHViZSddOmFmdGVyIHtcclxuICBjb250ZW50OiBcIu+FqlwiO1xyXG59XHJcblxyXG4uZnNQb3N0RWxlbWVudCxcclxuLmZzTmV3cyB7XHJcbiAgbWFyZ2luLXRvcDogMjBweDtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgLypTbGlkZXNob3cqL1xyXG59XHJcbi5mc1Bvc3RFbGVtZW50ID4gaGVhZGVyLFxyXG4uZnNOZXdzID4gaGVhZGVyIHtcclxuICBib3JkZXItdG9wOiA1cHggc29saWQgIzAwMDtcclxuICBwYWRkaW5nLXRvcDogMTVweDtcclxufVxyXG4uZnNQb3N0RWxlbWVudCA+IGhlYWRlciAuZnNFbGVtZW50VGl0bGUsXHJcbi5mc05ld3MgPiBoZWFkZXIgLmZzRWxlbWVudFRpdGxlIHtcclxuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG59XHJcbi5mc1Bvc3RFbGVtZW50OmZpcnN0LWNoaWxkLFxyXG4uZnNOZXdzOmZpcnN0LWNoaWxkIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcbi5mc1Bvc3RFbGVtZW50Omxhc3QtY2hpbGQsXHJcbi5mc05ld3M6bGFzdC1jaGlsZCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG4uZnNQb3N0RWxlbWVudCBpbWcsXHJcbi5mc05ld3MgaW1nIHtcclxuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgIzAwNzczNztcclxufVxyXG4uZnNQb3N0RWxlbWVudCBhcnRpY2xlLFxyXG4uZnNOZXdzIGFydGljbGUge1xyXG4gIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG4uZnNQb3N0RWxlbWVudCBhcnRpY2xlOmZpcnN0LWNoaWxkLFxyXG4uZnNOZXdzIGFydGljbGU6Zmlyc3QtY2hpbGQge1xyXG4gIG1hcmdpbi10b3A6IDA7XHJcbn1cclxuLmZzUG9zdEVsZW1lbnQgLmZzVGh1bWJuYWlsLFxyXG4uZnNOZXdzIC5mc1RodW1ibmFpbCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG4uZnNQb3N0RWxlbWVudCAuZnNUaHVtYm5haWwgaW1nLFxyXG4uZnNOZXdzIC5mc1RodW1ibmFpbCBpbWcge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi5mc1Bvc3RFbGVtZW50IC5mc1RpdGxlLCAuZnNQb3N0RWxlbWVudCAuZnNUaXRsZSBhLFxyXG4uZnNOZXdzIC5mc1RpdGxlLFxyXG4uZnNOZXdzIC5mc1RpdGxlIGEge1xyXG4gIGNvbG9yOiAjMWQxZDFkO1xyXG59XHJcbi5mc1Bvc3RFbGVtZW50IC5mc1RpdGxlIGE6aG92ZXIsXHJcbi5mc05ld3MgLmZzVGl0bGUgYTpob3ZlciB7XHJcbiAgY29sb3I6ICMwMDc3Mzc7XHJcbn1cclxuLmZzUG9zdEVsZW1lbnQgLmZzQXV0aG9yLFxyXG4uZnNOZXdzIC5mc0F1dGhvciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmZzUG9zdEVsZW1lbnQgLmZzRGF0ZSxcclxuLmZzTmV3cyAuZnNEYXRlIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMTQyODU3MTQyOTtcclxuICBjb2xvcjogIzAwNzczNztcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGNvbG9yOiAjMWQxZDFkO1xyXG59XHJcbi5mc1Bvc3RFbGVtZW50IC5mc1N1bW1hcnksXHJcbi5mc05ld3MgLmZzU3VtbWFyeSB7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQyODY7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG4uZnNQb3N0RWxlbWVudCAuZnNTdW1tYXJ5IDpmaXJzdC1jaGlsZCxcclxuLmZzTmV3cyAuZnNTdW1tYXJ5IDpmaXJzdC1jaGlsZCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxufVxyXG4uZnNQb3N0RWxlbWVudC5mc1NsaWRlc2hvdyAuZnNFbGVtZW50Q29udGVudCxcclxuLmZzTmV3cy5mc1NsaWRlc2hvdyAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcbi5mc1Bvc3RFbGVtZW50LmZzU2xpZGVzaG93IGFydGljbGUsXHJcbi5mc05ld3MuZnNTbGlkZXNob3cgYXJ0aWNsZSB7XHJcbiAgcGFkZGluZzogMjBweDtcclxufVxyXG4uZnNQb3N0RWxlbWVudC5mc1NsaWRlc2hvdyAuZnNQYWdlciBzcGFuLFxyXG4uZnNOZXdzLmZzU2xpZGVzaG93IC5mc1BhZ2VyIHNwYW4ge1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG4gIG9wYWNpdHk6IDAuNTtcclxuICB0cmFuc2l0aW9uOiBjb2xvciAxMDBtcywgb3BhY2l0eSAxMDBtcztcclxufVxyXG4uZnNQb3N0RWxlbWVudC5mc1NsaWRlc2hvdyAuZnNQYWdlciBzcGFuLmZzU3RhdGVBY3RpdmUsXHJcbi5mc05ld3MuZnNTbGlkZXNob3cgLmZzUGFnZXIgc3Bhbi5mc1N0YXRlQWN0aXZlIHtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuICBvcGFjaXR5OiAxO1xyXG59XHJcbi5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNOZXdzR3JpZCxcclxuLmZzTmV3cy5mc0dyaWQgLmZzTmV3c0dyaWQge1xyXG4gIHpvb206IDE7XHJcbn1cclxuLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc05ld3NHcmlkOmFmdGVyLFxyXG4uZnNOZXdzLmZzR3JpZCAuZnNOZXdzR3JpZDphZnRlciB7XHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgY29udGVudDogJyc7XHJcbn1cclxuLmZzUG9zdEVsZW1lbnQuZnNHcmlkIGFydGljbGUsXHJcbi5mc05ld3MuZnNHcmlkIGFydGljbGUge1xyXG4gIGNsZWFyOiBub25lO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcclxuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogMDtcclxuICB3aWR0aDogYXV0bztcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGUsXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGUge1xyXG4gICAgd2lkdGg6IDQ5JTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgzbi0xKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVR3b0NvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoM24tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuKzEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgzbisxKSB7XHJcbiAgICBjbGVhcjogbm9uZTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bi0yKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVR3b0NvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMikge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bi0xKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVR3b0NvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4rMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTMpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0zKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVR3b0NvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTIpIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0xKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVR3b0NvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuKzEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSB7XHJcbiAgICBjbGVhcjogbm9uZTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChvZGQpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChvZGQpIHtcclxuICAgIG1hcmdpbi1yaWdodDogMSU7XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVR3b0NvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoZXZlbiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUd29Db2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAxJTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVHdvQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgybisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVR3b0NvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGUge1xyXG4gICAgd2lkdGg6IDQ5JTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuLTEpIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuKzEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMikge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4rMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4rMSkge1xyXG4gICAgY2xlYXI6IG5vbmU7XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0zKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0zKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0yKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0yKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0xKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0xKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSB7XHJcbiAgICBjbGVhcjogbm9uZTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKG9kZCksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQob2RkKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDElO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoZXZlbiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDElO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoMm4rMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGUge1xyXG4gICAgd2lkdGg6IDMyJTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKG9kZCksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQob2RkKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChldmVuKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDJuKzEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDJuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMikge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4rMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVUaHJlZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4rMSkge1xyXG4gICAgY2xlYXI6IG5vbmU7XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0zKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0zKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0yKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0yKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0xKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0xKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZVRocmVlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSB7XHJcbiAgICBjbGVhcjogbm9uZTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuLTEpIHtcclxuICAgIG1hcmdpbjogMCAyJTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuKzEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlVGhyZWVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZSB7XHJcbiAgICB3aWR0aDogNDklO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgzbi0xKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuLTEpIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoM24rMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgzbisxKSB7XHJcbiAgICBjbGVhcjogbm9uZTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bi0yKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0zKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTMpIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0yKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChvZGQpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQob2RkKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDElO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChldmVuKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAxJTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoMm4rMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgybisxKSB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGUge1xyXG4gICAgd2lkdGg6IDIzLjUlO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChvZGQpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQob2RkKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKGV2ZW4pLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDJuKzEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgY2xlYXI6IG5vbmU7XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoM24tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgzbisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0zKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTMpIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0yKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRm91ckNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bi0yKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuLTIpIHtcclxuICAgIG1hcmdpbjogMCAxJSAwIDIlO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bi0xKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuLTEpIHtcclxuICAgIG1hcmdpbjogMCAyJSAwIDElO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGb3VyQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZvdXJDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuKzEpIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZSB7XHJcbiAgICB3aWR0aDogNDklO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgzbi0xKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuLTEpIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoM24rMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgzbisxKSB7XHJcbiAgICBjbGVhcjogbm9uZTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bi0yKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0zKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTMpIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMiksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0yKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChvZGQpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQob2RkKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDElO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChldmVuKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAxJTtcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoMm4rMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgybisxKSB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGUge1xyXG4gICAgd2lkdGg6IDE4LjQlO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZChvZGQpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQob2RkKSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKGV2ZW4pLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDJuKzEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgY2xlYXI6IG5vbmU7XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuLTEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoM24tMSkge1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCgzbisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgIGNsZWFyOiBub25lO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bi0yKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuLTIpIHtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICB9XHJcbiAgLmZzUG9zdEVsZW1lbnQuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4tMSksXHJcbiAgLmZzTmV3cy5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg0bi0xKSB7XHJcbiAgICBtYXJnaW46IGF1dG87XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDRuKzEpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNG4rMSkge1xyXG4gICAgY2xlYXI6IG5vbmU7XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTMpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMykge1xyXG4gICAgbWFyZ2luOiAwIDElIDAgMiU7XHJcbiAgfVxyXG4gIC5mc1Bvc3RFbGVtZW50LmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTIpLFxyXG4gIC5mc05ld3MuZnNHcmlkIC5mc1N0eWxlRml2ZUNvbHVtbnMgYXJ0aWNsZTpudGgtY2hpbGQoNW4tMikge1xyXG4gICAgbWFyZ2luOiAwIDElO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bi0xKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuLTEpIHtcclxuICAgIG1hcmdpbjogMCAyJSAwIDElO1xyXG4gIH1cclxuICAuZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzU3R5bGVGaXZlQ29sdW1ucyBhcnRpY2xlOm50aC1jaGlsZCg1bisxKSxcclxuICAuZnNOZXdzLmZzR3JpZCAuZnNTdHlsZUZpdmVDb2x1bW5zIGFydGljbGU6bnRoLWNoaWxkKDVuKzEpIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG4uZnNQb3N0RWxlbWVudC5mc0dyaWQgLmZzVGh1bWJuYWlsLFxyXG4uZnNOZXdzLmZzR3JpZCAuZnNUaHVtYm5haWwge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZsb2F0OiBub25lO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1hcmdpbjogMCAwIDE1cHggMDtcclxuICBtYXgtd2lkdGg6IGluaGVyaXQ7XHJcbn1cclxuLmZzUG9zdEVsZW1lbnQgLmZzTGlzdEl0ZW1zLFxyXG4uZnNOZXdzIC5mc0xpc3RJdGVtcyB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuLyogU2VhcmNoIFZhcmlhYmxlcyAgICAgICovXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuLyogTm9ybWFsaXplIFNlYXJjaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5mb3JtLmdzYy1zZWFyY2gtYm94LXRvb2xzIHtcclxuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5mb3JtLmdzYy1zZWFyY2gtYm94LXRvb2xzIHRhYmxlIHtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0YWJsZSxcclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0Ym9keSxcclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0cixcclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0ZCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0ZC5nc2MtaW5wdXQge1xyXG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmbG9hdDogbGVmdDtcclxufVxyXG5mb3JtLmdzYy1zZWFyY2gtYm94LXRvb2xzIHRhYmxlLmdzYy1zZWFyY2gtYm94IHtcclxuICBkaXNwbGF5OiB0YWJsZTtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5mb3JtLmdzYy1zZWFyY2gtYm94LXRvb2xzIGRpdi5nc2MtaW5wdXQtYm94IHtcclxuICBtaW4td2lkdGg6IDE0MHB4O1xyXG4gIGJvcmRlcjogMDtcclxuICBoZWlnaHQ6IDY2cHg7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyBkaXYuZ3NjLWlucHV0LWJveC5nc2MtaW5wdXQtYm94LWZvY3VzIHtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG59XHJcbmZvcm0uZ3NjLXNlYXJjaC1ib3gtdG9vbHMgZGl2LmdzYy1pbnB1dC1ib3ggdGFibGUsXHJcbmZvcm0uZ3NjLXNlYXJjaC1ib3gtdG9vbHMgZGl2LmdzYy1pbnB1dC1ib3ggdGJvZHksXHJcbmZvcm0uZ3NjLXNlYXJjaC1ib3gtdG9vbHMgZGl2LmdzYy1pbnB1dC1ib3ggdHIsXHJcbmZvcm0uZ3NjLXNlYXJjaC1ib3gtdG9vbHMgZGl2LmdzYy1pbnB1dC1ib3ggdGQge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGhlaWdodDogNjZweDtcclxufVxyXG5mb3JtLmdzYy1zZWFyY2gtYm94LXRvb2xzIHRkLmdzaWJfYSB7XHJcbiAgcGFkZGluZzogMDtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0ZC5nc2liX2Ige1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbmZvcm0uZ3NjLXNlYXJjaC1ib3gtdG9vbHMgdGQuZ3NjLWlucHV0IHtcclxuICBmbG9hdDogbm9uZTtcclxufVxyXG5mb3JtLmdzYy1zZWFyY2gtYm94LXRvb2xzIGlucHV0LmdzYy1pbnB1dCB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiA2NnB4ICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICNlYmNlN2I7XHJcbiAgZm9udC1zaXplOiAyMHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgZm9udC1mYW1pbHk6IFwiZ2FyYW1vbmQtcHJlbWllci1wcm9cIiwgVGltZXMsIHNlcmlmO1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICBwYWRkaW5nLWxlZnQ6IDY2cHggIWltcG9ydGFudDtcclxuICBwYWRkaW5nLXJpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0YWJsZS5nc2MtYnJhbmRpbmcge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbiB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgcGFkZGluZzogMCAxMi41cHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBoZWlnaHQ6IDY2cHg7XHJcbiAgd2lkdGg6IDY2cHg7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHotaW5kZXg6IDU7XHJcbiAgY29sb3I6ICNmZmY7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbjphZnRlciB7XHJcbiAgY29udGVudDogXCLvgI1cIjtcclxuICBjb250ZW50OiBcIu+AglwiO1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgZm9udC1zaXplOiAyMHB4O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB0b3A6IDUwJTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbjpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgY29sb3I6ICMwMDcyYjA7XHJcbn1cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyBpbnB1dC5nc2Mtc2VhcmNoLWJ1dHRvbiB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGhlaWdodDogNjZweDtcclxuICB3aWR0aDogMTAwJTtcclxuICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgb3BhY2l0eTogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgLyogV2ViS2l0LCBCbGluaywgRWRnZSAqL1xyXG4gIGNvbG9yOiAjZWJjZTdiO1xyXG59XHJcblxyXG46LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgLyogTW96aWxsYSBGaXJlZm94IDQgdG8gMTggKi9cclxuICBjb2xvcjogI2ViY2U3YjtcclxuICBvcGFjaXR5OiAxO1xyXG59XHJcblxyXG46Oi1tb3otcGxhY2Vob2xkZXIge1xyXG4gIC8qIE1vemlsbGEgRmlyZWZveCAxOSsgKi9cclxuICBjb2xvcjogI2ViY2U3YjtcclxuICBvcGFjaXR5OiAxO1xyXG59XHJcblxyXG46LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMC0xMSAqL1xyXG4gIGNvbG9yOiAjZWJjZTdiO1xyXG59XHJcblxyXG4vKj09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuLyogQ3VzdG9tIFN0eWxlcyAgICAgICAgICovXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG5mb3JtLmdzYy1zZWFyY2gtYm94LXRvb2xzIGRpdi5nc2MtaW5wdXQtYm94IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZnNUYWJzIHtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuLmZzVGFicyAuZnNUYWJzTmF2IHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5mc1RhYnMgLmZzVGFic05hdiB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuLmZzVGFicyAuZnNUYWJzTmF2IGxpIHtcclxuICBtYXJnaW4tcmlnaHQ6IDJweDtcclxufVxyXG4uZnNUYWJzIC5mc1RhYnNOYXYgbGkgYSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDEycHggMTVweDtcclxuICBiYWNrZ3JvdW5kOiAjMjczNDQ2O1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMjRweDtcclxuICBjb2xvcjogI2ZmZjtcclxuICBmb250LWZhbWlseTogXCJvcGVuLXNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbn1cclxuLmZzVGFicyAuZnNUYWJzTmF2IGxpIGE6aG92ZXIge1xyXG4gIGJhY2tncm91bmQ6ICMwMDcyYjA7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG4uZnNUYWJzIC5mc1RhYnNOYXYgbGkuZnNTdGF0ZVNlbGVjdGVkIGEge1xyXG4gIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgY29sb3I6ICMyNzM0NDY7XHJcbiAgYm9yZGVyLWNvbG9yOiAjYmViZWJlO1xyXG59XHJcbi5mc1RhYnMgLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgcGFkZGluZy1sZWZ0OiAwO1xyXG59XHJcbi5mc1RhYnMgLmZzUGFuZWwge1xyXG4gIG1hcmdpbi1ib3R0b206IDFweDtcclxufVxyXG4uZnNUYWJzIC5mc1BhbmVsID4gaGVhZGVyIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZDogIzI3MzQ0NjtcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxufVxyXG4uZnNUYWJzIC5mc1BhbmVsID4gaGVhZGVyIGgyIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMjRweDtcclxuICBwYWRkaW5nOiAxMnB4IDE1cHg7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZm9udC1mYW1pbHk6IFwib3Blbi1zYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcbi5mc1RhYnMgLmZzUGFuZWwgPiBoZWFkZXIgaDI6YmVmb3JlIHtcclxuICBmb250LWZhbWlseTogXCJJY29Nb29uXCI7XHJcbn1cclxuLmZzVGFicyAuZnNQYW5lbCA+IGhlYWRlciBoMjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwi74SFXCI7XHJcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xyXG59XHJcbi5mc1RhYnMgLmZzUGFuZWwgPiBoZWFkZXI6aG92ZXIge1xyXG4gIGJhY2tncm91bmQ6ICMwMDcyYjA7XHJcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG4uZnNUYWJzIC5mc1BhbmVsID4gaGVhZGVyOmhvdmVyIGgyIHtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG4uZnNUYWJzIC5mc1BhbmVsID4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZWJlYmU7XHJcbiAgYm9yZGVyLXRvcDogbm9uZTtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNTAwcHgpIHtcclxuICAuZnNUYWJzIC5mc1BhbmVsID4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gIH1cclxufVxyXG4uZnNUYWJzIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gaGVhZGVyIHtcclxuICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gIGJvcmRlci1jb2xvcjogI2JlYmViZTtcclxuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG4uZnNUYWJzIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gaGVhZGVyIGgyIHtcclxuICBjb2xvcjogIzI3MzQ0NjtcclxufVxyXG4uZnNUYWJzIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gaGVhZGVyIGgyOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCLvhIdcIjtcclxufVxyXG4uZnNUYWJzIC5mc1BhbmVsLmZzU3RhdGVPcGVuID4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uZnNQYW5lbEdyb3VwLmZzVGFicyA+IC5mc0VsZW1lbnRDb250ZW50ID4gLmZzUGFuZWwgPiAuZnNFbGVtZW50QWN0aW9uQnV0dG9uQ29udGFpbmVyLFxyXG4uZnNQYW5lbEdyb3VwLmZzVGFicyA+IC5mc0VsZW1lbnRDb250ZW50ID4gLmZzUGFuZWwgPiBoZWFkZXIsIC5mc1BhbmVsR3JvdXAuZnNUYWJzID4gLmZzRWxlbWVudENvbnRlbnQgPiAuZnNQYW5lbDpub3QoLmZzU3RhdGVPcGVuKSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmZzUGFuZWxHcm91cC5mc1RhYnMgPiAuZnNFbGVtZW50Q29udGVudCA+IC5mc1BhbmVsID4gLmZzRWxlbWVudEFjdGlvbkJ1dHRvbkNvbnRhaW5lcixcclxuICAuZnNQYW5lbEdyb3VwLmZzVGFicyA+IC5mc0VsZW1lbnRDb250ZW50ID4gLmZzUGFuZWwgPiBoZWFkZXIsIC5mc1BhbmVsR3JvdXAuZnNUYWJzID4gLmZzRWxlbWVudENvbnRlbnQgPiAuZnNQYW5lbDpub3QoLmZzU3RhdGVPcGVuKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZzQ29tcG9zZXJGb3JtRW1iZWQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxufVxyXG4uZnNDb21wb3NlckZvcm1FbWJlZCBmb3JtIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbi5mc0NvbXBvc2VyRm9ybUVtYmVkIGZvcm0gLm1haW5Hcm91cFN1YiB7XHJcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRoZXJtb21ldGVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAzMHB4IDA7XHJcbn1cclxuLnRoZXJtb21ldGVyIC50cmFjayB7XHJcbiAgaGVpZ2h0OiAzMDBweDtcclxuICB3aWR0aDogMTAwcHg7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBiYWNrZ3JvdW5kOiAjMDA3MmIwO1xyXG59XHJcbi50aGVybW9tZXRlciAuYW1vdW50LCAudGhlcm1vbWV0ZXIgLmFtb3VudENhc2gge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIG1pbi13aWR0aDogMTAwcHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi50aGVybW9tZXRlciAuZ29hbCB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogLTMwcHg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuLnRoZXJtb21ldGVyIC5nb2FsIC5hbW91bnQsIC50aGVybW9tZXRlciAuZ29hbCAuYW1vdW50Q2FzaCB7XHJcbiAgY29sb3I6ICMyNzM0NDY7XHJcbn1cclxuLnRoZXJtb21ldGVyIC5wcm9ncmVzcyB7XHJcbiAgaGVpZ2h0OiAwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgYmFja2dyb3VuZDogIzI3MzQ0NjtcclxufVxyXG4udGhlcm1vbWV0ZXIgLnByb2dyZXNzIC5hbW91bnQsIC50aGVybW9tZXRlciAucHJvZ3Jlc3MgLmFtb3VudENhc2gge1xyXG4gIGNvbG9yOiAjZWJjZTdiO1xyXG59XHJcblxyXG4jZnNIZWFkZXIge1xyXG4gIHBhZGRpbmc6IDIwcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MzQ0NjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgI2ZzSGVhZGVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuaGFzLW1hc3RoZWFkICNmc0hlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjczNDQ2O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzOSwgNTIsIDcwLCAwLjkpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogNTtcclxuICB9XHJcbn1cclxuLmhhcy1tYXN0aGVhZCAuZnNDb21wb3NlTW9kZSAjZnNIZWFkZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xyXG4gIHRvcDogYXV0bztcclxuICBsZWZ0OiBhdXRvO1xyXG4gIHotaW5kZXg6IGF1dG87XHJcbn1cclxuLmZzQ29tcG9zZU1vZGUgI2ZzSGVhZGVyIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbiNmc0hlYWRlciA+IC5mc0Jhbm5lciB7XHJcbiAgcG9zaXRpb246IHN0YXRpYztcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAjZnNIZWFkZXIgPiAuZnNCYW5uZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgcG9zaXRpb246IHN0YXRpYztcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgI2ZzSGVhZGVyID4gLmZzQmFubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA5NDBweDtcclxuICAgIHBhZGRpbmctbGVmdDogMzAwcHg7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAjZnNIZWFkZXIgPiAuZnNCYW5uZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDExODBweDtcclxuICAgIHBhZGRpbmctbGVmdDogMzQwcHg7XHJcbiAgfVxyXG59XHJcbiNmc0hlYWRlciBoZWFkZXIgLmZzRWxlbWVudFRpdGxlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbiNmc0hlYWRlciBoZWFkZXIgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICNmc0hlYWRlciAuYnJhbmRpbmcge1xyXG4gICAgd2lkdGg6IDI4MHB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICB9XHJcbn1cclxuI2ZzSGVhZGVyIC5icmFuZGluZyAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbiNmc0hlYWRlciAuYnJhbmRpbmcgLmZzRWxlbWVudENvbnRlbnQgYSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuI2ZzSGVhZGVyIC5icmFuZGluZyAuZnNFbGVtZW50Q29udGVudCBpbWcge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBtYXgtaGVpZ2h0OiAxNzBweDtcclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgI2ZzSGVhZGVyIC51dGlsaXRpZXMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gICNmc0hlYWRlciAudXRpbGl0aWVzIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgfVxyXG59XHJcbiNmc0hlYWRlciAudXRpbGl0aWVzIC5mc0VsZW1lbnRDb250ZW50IHtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAjZnNIZWFkZXIgLnV0aWxpdGllcyBzZWN0aW9uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgfVxyXG59XHJcbiNmc0hlYWRlciAudXRpbGl0aWVzIC5uYXZpZ2F0aW9uLnV0aWxpdHkge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuI2ZzSGVhZGVyIC51dGlsaXRpZXMgLm5hdmlnYXRpb24udXRpbGl0eSB1bCxcclxuI2ZzSGVhZGVyIC51dGlsaXRpZXMgLm5hdmlnYXRpb24udXRpbGl0eSBvbCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG4jZnNIZWFkZXIgLnV0aWxpdGllcyAubmF2aWdhdGlvbi51dGlsaXR5IGEge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICNmc0hlYWRlciAudXRpbGl0aWVzIC5uYXZpZ2F0aW9uLnV0aWxpdHkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIG1hcmdpbi1yaWdodDogLTAuMjJlbTtcclxuICB9XHJcbn1cclxuI2ZzSGVhZGVyIC51dGlsaXRpZXMgLm5hdmlnYXRpb24udXRpbGl0eSB1bCB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcbiNmc0hlYWRlciAudXRpbGl0aWVzIC5uYXZpZ2F0aW9uLnV0aWxpdHkgdWwgbGkge1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gIG1hcmdpbi1yaWdodDogLTAuMjJlbTtcclxufVxyXG4jZnNIZWFkZXIgLnV0aWxpdGllcyAubmF2aWdhdGlvbi51dGlsaXR5IGEge1xyXG4gIG1hcmdpbi1yaWdodDogMnB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgY29sb3I6ICM4ZjhmOGY7XHJcbiAgZm9udC1mYW1pbHk6IFwiZ2FyYW1vbmQtcHJlbWllci1wcm9cIiwgVGltZXMsIHNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBhZGRpbmc6IDZweCAyMHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDFhMjM7XHJcbn1cclxuI2ZzSGVhZGVyIC51dGlsaXRpZXMgLm5hdmlnYXRpb24udXRpbGl0eSBhOmhvdmVyIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MmIwO1xyXG59XHJcbiNmc0hlYWRlciAudXRpbGl0aWVzIC5idXR0b24uc2VhcmNoLXRyaWdnZXIsXHJcbiNmc0hlYWRlciAudXRpbGl0aWVzIC5idXR0b24ub2ZmLWNhbnZhcy10cmlnZ2VyIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBiYWNrZ3JvdW5kOiAjMTQxYTIzO1xyXG4gIGNvbG9yOiAjMDA3MmIwO1xyXG4gIHdpZHRoOiA0NXB4O1xyXG4gIGhlaWdodDogMzZweDtcclxuICB0ZXh0LWluZGVudDogLTk5OWVtO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYm9yZGVyOiBub25lO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICNmc0hlYWRlciAudXRpbGl0aWVzIC5idXR0b24uc2VhcmNoLXRyaWdnZXIsXHJcbiAgI2ZzSGVhZGVyIC51dGlsaXRpZXMgLmJ1dHRvbi5vZmYtY2FudmFzLXRyaWdnZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICB9XHJcbn1cclxuI2ZzSGVhZGVyIC51dGlsaXRpZXMgLmJ1dHRvbi5zZWFyY2gtdHJpZ2dlcjphZnRlcixcclxuI2ZzSGVhZGVyIC51dGlsaXRpZXMgLmJ1dHRvbi5vZmYtY2FudmFzLXRyaWdnZXI6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74CNXCI7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdGV4dC1pbmRlbnQ6IDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG4jZnNIZWFkZXIgLnV0aWxpdGllcyAuYnV0dG9uLnNlYXJjaC10cmlnZ2VyIHtcclxuICB0b3A6IDVweDtcclxuICByaWdodDogNXB4O1xyXG59XHJcbi5wYWdlLXNlYXJjaC1vcGVuICNmc0hlYWRlciAudXRpbGl0aWVzIC5idXR0b24uc2VhcmNoLXRyaWdnZXIge1xyXG4gIGNvbG9yOiAjZWJjZTdiO1xyXG59XHJcbiNmc0hlYWRlciAudXRpbGl0aWVzIC5idXR0b24uc2VhcmNoLXRyaWdnZXI6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74CCXCI7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gICNmc0hlYWRlciAudXRpbGl0aWVzIC5idXR0b24uc2VhcmNoLXRyaWdnZXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuI2ZzSGVhZGVyIC51dGlsaXRpZXMgLmJ1dHRvbi5vZmYtY2FudmFzLXRyaWdnZXIge1xyXG4gIHRvcDogNXB4O1xyXG4gIGxlZnQ6IDVweDtcclxufVxyXG4jZnNIZWFkZXIgLnV0aWxpdGllcyAuYnV0dG9uLm9mZi1jYW52YXMtdHJpZ2dlcjphZnRlciB7XHJcbiAgY29udGVudDogXCLvg4lcIjtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAjZnNIZWFkZXIgLnV0aWxpdGllcyAuYnV0dG9uLm9mZi1jYW52YXMtdHJpZ2dlciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuI2ZzSGVhZGVyIC5uYXZpZ2F0aW9uLmNvbnRhaW5lciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAjZnNIZWFkZXIgLm5hdmlnYXRpb24uY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTE4MHB4KSB7XHJcbiAgI2ZzSGVhZGVyIC5uYXZpZ2F0aW9uLmNvbnRhaW5lciA+IC5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gICNmc0hlYWRlciAubmF2aWdhdGlvbi5jb250YWluZXIgLm5hdmlnYXRpb24ubWFpbiB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcbiAgfVxyXG59XHJcbiNmc0hlYWRlciAubmF2aWdhdGlvbi5jb250YWluZXIgLmJ1dHRvbi5zZWFyY2gtdHJpZ2dlciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBwYWRkaW5nOiAyMHB4O1xyXG4gIGNvbG9yOiAjMDA3MmIwO1xyXG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICByaWdodDogLTEwcHg7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG59XHJcbi5wYWdlLXNlYXJjaC1vcGVuICNmc0hlYWRlciAubmF2aWdhdGlvbi5jb250YWluZXIgLmJ1dHRvbi5zZWFyY2gtdHJpZ2dlciB7XHJcbiAgY29sb3I6ICNlYmNlN2I7XHJcbn1cclxuI2ZzSGVhZGVyIC5uYXZpZ2F0aW9uLmNvbnRhaW5lciAuYnV0dG9uLnNlYXJjaC10cmlnZ2VyOmFmdGVyIHtcclxuICBjb250ZW50OiBcIu+AglwiO1xyXG4gIGZvbnQtc2l6ZTogMjJweDtcclxuICB3aWR0aDogMTAwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbGVmdDogMDtcclxuICB0ZXh0LWluZGVudDogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAjZnNIZWFkZXIgLm5hdmlnYXRpb24uY29udGFpbmVyIC5idXR0b24uc2VhcmNoLXRyaWdnZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4uc3ViLW5hdmlnYXRpb24ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgYmFja2dyb3VuZDogIzAwNzJiMDtcclxufVxyXG4uaGFzLXN1Yi1uYXZpZ2F0aW9uIC5zdWItbmF2aWdhdGlvbiB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmhhcy1zdWItbmF2aWdhdGlvbiAuc3ViLW5hdmlnYXRpb24ubWFzdGhlYWQtYWx0ZXJuYXRlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gIC5oYXMtbWFzdGhlYWQuaGFzLXN1Yi1uYXZpZ2F0aW9uIC5zdWItbmF2aWdhdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAuaGFzLW1hc3RoZWFkLmhhcy1zdWItbmF2aWdhdGlvbiAuc3ViLW5hdmlnYXRpb24ubWFzdGhlYWQtYWx0ZXJuYXRlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAxMDAlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgei1pbmRleDogMTtcclxuICB9XHJcbn1cclxuLnN1Yi1uYXZpZ2F0aW9uID4gaGVhZGVyIC5mc0VsZW1lbnRUaXRsZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uc3ViLW5hdmlnYXRpb24gPiBoZWFkZXIgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDcyYjA7XHJcbiAgcGFkZGluZzogMjBweCAyMHB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZm9udC1mYW1pbHk6IFwib3Blbi1zYW5zXCIsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjM3NTtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gIC5zdWItbmF2aWdhdGlvbiA+IGhlYWRlciAuZnNFbGVtZW50SGVhZGVyQ29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG4uc3ViLW5hdmlnYXRpb24gPiBoZWFkZXIgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQ6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74GUXCI7XHJcbiAgcGFkZGluZzogMCAyMHB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDUwJTtcclxuICByaWdodDogMDtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuLnN1Yi1uYXZpZ2F0aW9uID4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIG1heC1oZWlnaHQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuc3ViLW5hdmlnYXRpb24gPiAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gIH1cclxufVxyXG4uc3ViLW5hdmlnYXRpb24tb3BlbiAuc3ViLW5hdmlnYXRpb24gPiBoZWFkZXIgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQ6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74G4XCI7XHJcbn1cclxuLnN1Yi1uYXZpZ2F0aW9uLW9wZW4gLnN1Yi1uYXZpZ2F0aW9uID4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIG1heC1oZWlnaHQ6IDEwMDBweDtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcbi5zdWItbmF2aWdhdGlvbiBuYXYge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBtYXgtd2lkdGg6IDExODBweDtcclxufVxyXG4uc3ViLW5hdmlnYXRpb24gbmF2IHVsLFxyXG4uc3ViLW5hdmlnYXRpb24gbmF2IG9sIHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbi5zdWItbmF2aWdhdGlvbiBuYXYgYSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLnN1Yi1uYXZpZ2F0aW9uIG5hdiB1bC5mc05hdkxldmVsMSB7XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gIC5zdWItbmF2aWdhdGlvbiBuYXYgdWwuZnNOYXZMZXZlbDEge1xyXG4gICAgcGFkZGluZy10b3A6IDZweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XHJcbiAgfVxyXG59XHJcbi5zdWItbmF2aWdhdGlvbiBuYXYgdWwuZnNOYXZMZXZlbDEgPiBsaSB7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZmY7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgLnN1Yi1uYXZpZ2F0aW9uIG5hdiB1bC5mc05hdkxldmVsMSA+IGxpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjIyZW07XHJcbiAgICBib3JkZXItdG9wOiBub25lO1xyXG4gIH1cclxufVxyXG4uc3ViLW5hdmlnYXRpb24gbmF2IHVsLmZzTmF2TGV2ZWwxID4gbGkgPiBhIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAxNHB4IDIwcHg7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuMzc1O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDcyYjA7XHJcbn1cclxuLnN1Yi1uYXZpZ2F0aW9uIG5hdiB1bC5mc05hdkxldmVsMSA+IGxpID4gYTpob3ZlciB7XHJcbiAgY29sb3I6ICNlYmNlN2I7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzJiMDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuc3ViLW5hdmlnYXRpb24gbmF2IHVsLmZzTmF2TGV2ZWwxID4gbGkgPiBhIHtcclxuICAgIG1hcmdpbi1yaWdodDogMnB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIHBhZGRpbmc6IDI0LjVweCA4cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDMuMjU7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1pbi13aWR0aDogMTE4MHB4KSB7XHJcbiAgLnN1Yi1uYXZpZ2F0aW9uIG5hdiB1bC5mc05hdkxldmVsMSA+IGxpID4gYSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMjNweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAyM3B4O1xyXG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuc3ViLW5hdmlnYXRpb24gbmF2IHVsLmZzTmF2TGV2ZWwxID4gbGkgPiBhOmhvdmVyIHtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcbiAgfVxyXG4gIC5zdWItbmF2aWdhdGlvbiBuYXYgdWwuZnNOYXZMZXZlbDEgPiBsaSA+IGE6aG92ZXIsIC5zdWItbmF2aWdhdGlvbiBuYXYgdWwuZnNOYXZMZXZlbDEgPiBsaSA+IGEuYWN0aXZlIHtcclxuICAgIGNvbG9yOiAjZWJjZTdiO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIGFuZCAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAuc3ViLW5hdmlnYXRpb24gbmF2IHVsLmZzTmF2TGV2ZWwxID4gbGkgPiBhIHtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBmb250LXNpemU6IDFlbTtcclxuICB9XHJcbn1cclxuXHJcbi5zdWItbmF2aWdhdGlvbiBuYXYgdWwuZnNOYXZMZXZlbDEgPiBsaS5mc05hdkN1cnJlbnRQYWdlID4gYSwgLnN1Yi1uYXZpZ2F0aW9uIG5hdiB1bC5mc05hdkxldmVsMSA+IGxpLmZzTmF2Q3VycmVudFBhZ2VBbmNlc3RvciA+IGEge1xyXG4gIGNvbG9yOiAjMjczNDQ2O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbiNmc0hlYWRlciAuZnNTZWFyY2guc2VhcmNoIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjczNDQ2O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzksIDUyLCA3MCwgMC45NSk7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogOTkuOSU7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC1oZWlnaHQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbn1cclxuLnBhZ2Utc2VhcmNoLW9wZW4gI2ZzSGVhZGVyIC5mc1NlYXJjaC5zZWFyY2gge1xyXG4gIG1heC1oZWlnaHQ6IDY2cHg7XHJcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcclxuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbn1cclxuI2ZzSGVhZGVyIC5mc1NlYXJjaC5zZWFyY2ggLmZzRWxlbWVudENvbnRlbnQgdGQuZ3NjLXNlYXJjaC1idXR0b24ge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA1MDBweCkge1xyXG4gICNmc0hlYWRlciAuZnNTZWFyY2guc2VhcmNoIC5mc0VsZW1lbnRDb250ZW50IHRkLmdzYy1zZWFyY2gtYnV0dG9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDcyYjA7XHJcbiAgfVxyXG59XHJcbiNmc0hlYWRlciAuZnNTZWFyY2guc2VhcmNoIC5mc0VsZW1lbnRDb250ZW50IGlucHV0LmdzYy1pbnB1dCB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDUwMHB4KSB7XHJcbiAgI2ZzSGVhZGVyIC5mc1NlYXJjaC5zZWFyY2ggLmZzRWxlbWVudENvbnRlbnQgaW5wdXQuZ3NjLWlucHV0IHtcclxuICAgIHBhZGRpbmctbGVmdDogODZweCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuI2ZzQmFubmVyTGVmdCA+IC5mc0Jhbm5lciA+ICo6bm90KC5mc05hdmlnYXRpb24pIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gICNmc0Jhbm5lckxlZnQgPiAuZnNCYW5uZXIgPiAqOm5vdCguZnNOYXZpZ2F0aW9uKSB7XHJcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xyXG4gIH1cclxufVxyXG5cclxuI2ZzRm9vdGVyIHtcclxuICBwYWRkaW5nOiAyMHB4O1xyXG59XHJcbiNmc0Zvb3RlciA+IC5mc0Jhbm5lciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjcxNDI4NTcxNDM7XHJcbiAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgI2ZzRm9vdGVyID4gLmZzQmFubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA3MDBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgI2ZzRm9vdGVyID4gLmZzQmFubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA5NDBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gICNmc0Zvb3RlciA+IC5mc0Jhbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogMTE4MHB4O1xyXG4gIH1cclxufVxyXG4jZnNGb290ZXIgPiAuZnNCYW5uZXIgaGVhZGVyIC5mc0VsZW1lbnRUaXRsZSB7XHJcbiAgY29sb3I6ICMwMDcyYjA7XHJcbiAgZm9udC1mYW1pbHk6IFwiZ2FyYW1vbmQtcHJlbWllci1wcm9cIiwgVGltZXMsIHNlcmlmO1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gICNmc0Zvb3RlciA+IC5mc0Jhbm5lciBoZWFkZXIgLmZzRWxlbWVudFRpdGxlIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG59XHJcbiNmc0Zvb3RlciA+IC5mc0Jhbm5lciBhIHtcclxuICBjb2xvcjogI2ZmZjtcclxuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xyXG59XHJcbiNmc0Zvb3RlciA+IC5mc0Jhbm5lciBhOmhvdmVyIHtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuI2ZzRm9vdGVyIC5jb250YWN0IHtcclxuICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gICNmc0Zvb3RlciAuY29udGFjdCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4yMmVtO1xyXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTE4MHB4KSB7XHJcbiAgI2ZzRm9vdGVyIC5jb250YWN0IC5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG59XHJcbiNmc0Zvb3RlciAuY29udGFjdCBbaXRlbXByb3A9J25hbWUnXSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuI2ZzRm9vdGVyIC5jb250YWN0IFtpdGVtcHJvcD0nYWRkcmVzcyddIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4jZnNGb290ZXIgLmNvbnRhY3QgW2l0ZW1wcm9wPSdzdHJlZXRBZGRyZXNzJ10ge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICNmc0Zvb3RlciAuY29udGFjdCBbaXRlbXByb3A9J3N0cmVldEFkZHJlc3MnXSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG4gICNmc0Zvb3RlciAuY29udGFjdCBbaXRlbXByb3A9J3N0cmVldEFkZHJlc3MnXTphZnRlciB7XHJcbiAgICBjb250ZW50OiAnLCc7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAjZnNGb290ZXIgLmNvbnRhY3QgW2l0ZW1wcm9wPSdzdHJlZXRBZGRyZXNzJ10ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gICNmc0Zvb3RlciAuY29udGFjdCBbaXRlbXByb3A9J3N0cmVldEFkZHJlc3MnXTphZnRlciB7XHJcbiAgICBjb250ZW50OiBub3JtYWw7XHJcbiAgfVxyXG59XHJcbiNmc0Zvb3RlciAuY29udGFjdCBbaXRlbXByb3A9J3RlbGVwaG9uZSddIHtcclxuICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTtcclxufVxyXG4jZnNGb290ZXIgLmNvbnRhY3QgW2l0ZW1wcm9wPSd0ZWxlcGhvbmUnXSxcclxuI2ZzRm9vdGVyIC5jb250YWN0IFtpdGVtcHJvcD0nZmF4J10ge1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbiNmc0Zvb3RlciAuZm9vdGVyLWxpbmtzIHtcclxuICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuI2ZzRm9vdGVyIC5mb290ZXItbGlua3MgdWwsXHJcbiNmc0Zvb3RlciAuZm9vdGVyLWxpbmtzIG9sIHtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcbiNmc0Zvb3RlciAuZm9vdGVyLWxpbmtzIGEge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICNmc0Zvb3RlciAuZm9vdGVyLWxpbmtzIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjIyZW07XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTE4MHB4KSB7XHJcbiAgI2ZzRm9vdGVyIC5mb290ZXItbGlua3Mge1xyXG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xyXG4gIH1cclxufVxyXG4jZnNGb290ZXIgLmZvb3Rlci1saW5rcyAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4jZnNGb290ZXIgLmZvb3Rlci1saW5rcyAuZnNFbGVtZW50Q29udGVudCBuYXYge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAjZnNGb290ZXIgLmZvb3Rlci1saW5rcyAuZnNFbGVtZW50Q29udGVudCBuYXYge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gICNmc0Zvb3RlciAuZm9vdGVyLWxpbmtzIC5mc0VsZW1lbnRDb250ZW50IG5hdiB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG59XHJcbiNmc0Zvb3RlciAuZm9vdGVyLWxpbmtzIC5mc0VsZW1lbnRDb250ZW50IHVsLmZzTmF2TGV2ZWwxIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gICNmc0Zvb3RlciAuZm9vdGVyLWxpbmtzIC5mc0VsZW1lbnRDb250ZW50IHVsLmZzTmF2TGV2ZWwxIHtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gICNmc0Zvb3RlciAuZm9vdGVyLWxpbmtzIC5mc0VsZW1lbnRDb250ZW50IHVsLmZzTmF2TGV2ZWwxIHtcclxuICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxuICAjZnNGb290ZXIgLmZvb3Rlci1saW5rcyAuZnNFbGVtZW50Q29udGVudCB1bC5mc05hdkxldmVsMTpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICB9XHJcbn1cclxuXHJcbiNmc0Zvb3RlciAuc29jaWFsIHtcclxuICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgI2ZzRm9vdGVyIC5zb2NpYWwge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIG1hcmdpbi1yaWdodDogLTAuMjJlbTtcclxuICAgIHdpZHRoOiA1MCU7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAjZnNGb290ZXIgLnNvY2lhbCB7XHJcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAjZnNGb290ZXIgLnNvY2lhbCAuZnNFbGVtZW50Q29udGVudCB1bC5mc05hdkxldmVsMSB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxufVxyXG4jZnNGb290ZXIgLnNvY2lhbCAuZnNFbGVtZW50Q29udGVudCB1bC5mc05hdkxldmVsMSA+IC5icmVhayB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1pbmRlbnQ6IC05OTllbTtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAjZnNGb290ZXIgLnNvY2lhbCAuZnNFbGVtZW50Q29udGVudCB1bC5mc05hdkxldmVsMSA+IC5icmVhayB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG4jZnNGb290ZXIgLnNvY2lhbCAuZnNFbGVtZW50Q29udGVudCBhIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcclxufVxyXG4jZnNGb290ZXIgLnNvY2lhbCAuZnNFbGVtZW50Q29udGVudCBhOmFmdGVyIHtcclxuICBjb2xvcjogIzI3MzQ0NjtcclxufVxyXG4jZnNGb290ZXIgLnNvY2lhbCAuZnNFbGVtZW50Q29udGVudCBhOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4jZnNGb290ZXIgLm5hdmlnYXRpb24uaGllcmFyY2h5IHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4jZnNGb290ZXIgLnBvd2VyZWQtYnktZmluYWxzaXRlIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgI2ZzRm9vdGVyIC5wb3dlcmVkLWJ5LWZpbmFsc2l0ZSB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxufVxyXG4jZnNGb290ZXIgLnBvd2VyZWQtYnktZmluYWxzaXRlID4gLmlubmVyIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuI2ZzRm9vdGVyIC5wb3dlcmVkLWJ5LWZpbmFsc2l0ZSAjZnNQb3dlcmVkQnlGaW5hbHNpdGUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uY29udGFpbmVyLm1hc3RoZWFkIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuLmZzQ29tcG9zZU1vZGUgLmNvbnRhaW5lci5tYXN0aGVhZCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uY29udGFpbmVyLm1hc3RoZWFkIC5pbWFnZSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgcGFkZGluZy1ib3R0b206IDc4LjEyNSU7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmNvbnRhaW5lci5tYXN0aGVhZCAuaW1hZ2Uge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDc1JTtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XHJcbiAgLmNvbnRhaW5lci5tYXN0aGVhZCAuaW1hZ2Uge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDYyLjUlO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTE4MHB4KSB7XHJcbiAgLmNvbnRhaW5lci5tYXN0aGVhZCAuaW1hZ2Uge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDc1MHB4O1xyXG4gIH1cclxufVxyXG5cclxuLm1hc3RoZWFkLmNvbnRhaW5lciAuZGVzY3JpcHRpb24ge1xyXG4gIHBhZGRpbmc6IDAgMjBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAubWFzdGhlYWQuY29udGFpbmVyIC5kZXNjcmlwdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICB9XHJcbn1cclxuLm1hc3RoZWFkLmNvbnRhaW5lciAuZGVzY3JpcHRpb24gPiAuaW5uZXIge1xyXG4gIHBhZGRpbmc6IDIwcHggMDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAubWFzdGhlYWQuY29udGFpbmVyIC5kZXNjcmlwdGlvbiA+IC5pbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogNzQuNTc2MjcxMTg2NCU7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTE4MHB4KSB7XHJcbiAgLm1hc3RoZWFkLmNvbnRhaW5lciAuZGVzY3JpcHRpb24gPiAuaW5uZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDg4MHB4O1xyXG4gIH1cclxufVxyXG4ubWFzdGhlYWQuY29udGFpbmVyIC5kZXNjcmlwdGlvbiBoMSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG4ubWFzdGhlYWQuY29udGFpbmVyIC5kZXNjcmlwdGlvbiBwIHtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbiNmc1BhZ2VDb250ZW50ID4gLmZzTGF5b3V0IC5mc0NvbnRlbnQubWFzdGhlYWQge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmZzQ29tcG9zZU1vZGUgI2ZzUGFnZUNvbnRlbnQgPiAuZnNMYXlvdXQgLmZzQ29udGVudC5tYXN0aGVhZCB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmhhcy1kZXNjcmlwdGlvbiAjZnNQYWdlQ29udGVudCA+IC5mc0xheW91dCAuZnNDb250ZW50LmRlc2NyaXB0aW9uIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uZm9vIHtcclxuICBjb2xvcjogI2YwMDtcclxufVxyXG5cclxuLmhvbWUgI2ZzQmFubmVyTGVmdCxcclxuLmhvbWUgI2ZzQmFubmVyUmlnaHQge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLmhvbWUgI2ZzUGFnZUJvZHlXcmFwcGVyIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxuICBwYWRkaW5nLXRvcDogMDtcclxuICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG59XHJcbi5ob21lICNmc1BhZ2VDb250ZW50ID4gLmZzTGF5b3V0IHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG4uaG9tZSAjZnNQYWdlQ29udGVudCA+IC5mc0xheW91dCA+IC5mc0RpdiB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZmxvYXQ6IG5vbmU7XHJcbn1cclxuXHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCB7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCA+IGhlYWRlciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uZnNDb21wb3NlTW9kZS5ob21lIC5mc1BsYXllci5tYXN0aGVhZCBoZWFkZXIge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgwYjlkODtcclxuICBwYWRkaW5nLWJvdHRvbTogNzguMTI1JTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmhvbWUgLmZzUGxheWVyLm1hc3RoZWFkIC5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xyXG4gIC5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNjYuNjY2NjY2NjY2NyU7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAuaG9tZSAuZnNQbGF5ZXIubWFzdGhlYWQgLmZzRWxlbWVudENvbnRlbnQge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDgwMHB4O1xyXG4gIH1cclxufVxyXG4uaG9tZSAuZnNQbGF5ZXIubWFzdGhlYWQgLmZzRWxlbWVudENvbnRlbnQ6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74SQXCI7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGFuaW1hdGUtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7XHJcbiAgLW8tYW5pbWF0aW9uOiBhbmltYXRlLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xyXG4gIGFuaW1hdGlvbjogYW5pbWF0ZS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcclxuICB3aWR0aDogMTAwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbGVmdDogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICM0ZDljYzg7XHJcbiAgZm9udC1zaXplOiA2MHB4O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuLmhhcy1tYXN0aGVhZCAuaG9tZSAuZnNQbGF5ZXIubWFzdGhlYWQgLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIHBhZGRpbmctYm90dG9tOiAwO1xyXG59XHJcbi5oYXMtbWFzdGhlYWQgLmhvbWUgLmZzUGxheWVyLm1hc3RoZWFkIC5mc0VsZW1lbnRDb250ZW50OmFmdGVyIHtcclxuICBjb250ZW50OiBub3JtYWw7XHJcbn1cclxuLmhvbWUgLmZzUGxheWVyLm1hc3RoZWFkID4gZm9vdGVyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuY2x1c3RlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogMDtcclxuICB6LWluZGV4OiAxMDAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuY2x1c3RlciA+IC5pbm5lciB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIG1hcmdpbi1sZWZ0OiAwO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuY2x1c3RlciA+IC5pbm5lciB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICB9XHJcbn1cclxuLmhvbWUgLmZzUGxheWVyLm1hc3RoZWFkIC5zbGlkZSAuaW1hZ2Uge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4uaG9tZSAuZnNQbGF5ZXIubWFzdGhlYWQgLnNsaWRlIC5pbWFnZSA+IC5pbm5lciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGJvdHRvbTogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuc2xpZGUgLmRldGFpbHMge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgcGFkZGluZzogMCAyMHB4IDExMHB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuaG9tZSAuZnNQbGF5ZXIubWFzdGhlYWQgLnNsaWRlIC5kZXRhaWxzIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuaG9tZSAuZnNQbGF5ZXIubWFzdGhlYWQgLnNsaWRlIC5kZXRhaWxzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA5NjBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gIC5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuc2xpZGUgLmRldGFpbHMge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDExODBweDtcclxuICB9XHJcbn1cclxuLmhvbWUgLmZzUGxheWVyLm1hc3RoZWFkIC5zbGlkZSAuZGV0YWlscyAudGl0bGUge1xyXG4gIGNvbG9yOiAjZmZmO1xyXG59XHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuc2xpZGUgLmRldGFpbHMgLmNvcHkge1xyXG4gIGZvbnQtZmFtaWx5OiBcIm9wZW4tc2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG59XHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCAuY29udGFpbmVyLm1hc3RoZWFkIHtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICBtYXgtaGVpZ2h0OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuLmhhcy1tYXN0aGVhZCAuaG9tZSAuZnNQbGF5ZXIubWFzdGhlYWQgLmNvbnRhaW5lci5tYXN0aGVhZCB7XHJcbiAgbWF4LWhlaWdodDogODUwcHg7XHJcbn1cclxuXHJcbi5ob21lIHNlY3Rpb24uZnNQb3N0RWxlbWVudCxcclxuLmhvbWUgc2VjdGlvbi5mc05ld3Mge1xyXG4gIHBhZGRpbmc6IDQwcHggMjBweCAwO1xyXG4gIGNsZWFyOiBib3RoO1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQsXHJcbiAgLmhvbWUgc2VjdGlvbi5mc05ld3Mge1xyXG4gICAgcGFkZGluZy10b3A6IDYwcHg7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5ob21lIHNlY3Rpb24uZnNQb3N0RWxlbWVudCA+IGhlYWRlcixcclxuICAuaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQgLmZzRWxlbWVudENvbnRlbnQsXHJcbiAgLmhvbWUgc2VjdGlvbi5mc05ld3MgPiBoZWFkZXIsXHJcbiAgLmhvbWUgc2VjdGlvbi5mc05ld3MgLmZzRWxlbWVudENvbnRlbnQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQgPiBoZWFkZXIsXHJcbiAgLmhvbWUgc2VjdGlvbi5mc1Bvc3RFbGVtZW50IC5mc0VsZW1lbnRDb250ZW50LFxyXG4gIC5ob21lIHNlY3Rpb24uZnNOZXdzID4gaGVhZGVyLFxyXG4gIC5ob21lIHNlY3Rpb24uZnNOZXdzIC5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA5NjBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gIC5ob21lIHNlY3Rpb24uZnNQb3N0RWxlbWVudCA+IGhlYWRlcixcclxuICAuaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQgLmZzRWxlbWVudENvbnRlbnQsXHJcbiAgLmhvbWUgc2VjdGlvbi5mc05ld3MgPiBoZWFkZXIsXHJcbiAgLmhvbWUgc2VjdGlvbi5mc05ld3MgLmZzRWxlbWVudENvbnRlbnQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDExODBweDtcclxuICB9XHJcbn1cclxuLmhvbWUgc2VjdGlvbi5mc1Bvc3RFbGVtZW50ID4gaGVhZGVyLFxyXG4uaG9tZSBzZWN0aW9uLmZzTmV3cyA+IGhlYWRlciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG4uaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQgLmZzRWxlbWVudENvbnRlbnQgLmZzTGlzdEl0ZW1zLFxyXG4uaG9tZSBzZWN0aW9uLmZzTmV3cyAuZnNFbGVtZW50Q29udGVudCAuZnNMaXN0SXRlbXMge1xyXG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG59XHJcbi5ob21lIHNlY3Rpb24uZnNQb3N0RWxlbWVudCAuZnNFbGVtZW50Q29udGVudCAuZnNMaXN0SXRlbXMgYXJ0aWNsZSwgLmhvbWUgc2VjdGlvbi5mc05ld3MgLmZzRWxlbWVudENvbnRlbnQgLmZzTGlzdEl0ZW1zIGFydGljbGUge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHBhZGRpbmc6IDAgMTBweDtcclxuICBtYXJnaW46IDA7XHJcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgb3BhY2l0eTogMC4xO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxufVxyXG4uaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQgLmZzRWxlbWVudENvbnRlbnQgLmZzTGlzdEl0ZW1zIGFydGljbGU6Zmlyc3QtY2hpbGQsXHJcbi5ob21lIHNlY3Rpb24uZnNOZXdzIC5mc0VsZW1lbnRDb250ZW50IC5mc0xpc3RJdGVtcyBhcnRpY2xlOmZpcnN0LWNoaWxkIHtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG4uaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQgLmZzRWxlbWVudENvbnRlbnQgLmZzTGlzdEl0ZW1zIGFydGljbGUgLmZzVGl0bGUsXHJcbi5ob21lIHNlY3Rpb24uZnNOZXdzIC5mc0VsZW1lbnRDb250ZW50IC5mc0xpc3RJdGVtcyBhcnRpY2xlIC5mc1RpdGxlIHtcclxuICBmb250LXNpemU6IDEuMTI1ZW07XHJcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzMzMzMzMztcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcbi5ob21lIHNlY3Rpb24uZnNQb3N0RWxlbWVudCAuZnNFbGVtZW50Q29udGVudCAuZnNMaXN0SXRlbXMgYXJ0aWNsZSAuZnNEYXRlLFxyXG4uaG9tZSBzZWN0aW9uLmZzTmV3cyAuZnNFbGVtZW50Q29udGVudCAuZnNMaXN0SXRlbXMgYXJ0aWNsZSAuZnNEYXRlIHtcclxuICBjb2xvcjogIzY1NjU2NTtcclxufVxyXG4uaG9tZS1uZXdzLXJlYWR5IC5ob21lIHNlY3Rpb24uZnNQb3N0RWxlbWVudCAuZnNFbGVtZW50Q29udGVudCAuZnNMaXN0SXRlbXMgYXJ0aWNsZSxcclxuLmhvbWUtbmV3cy1yZWFkeSAuaG9tZSBzZWN0aW9uLmZzTmV3cyAuZnNFbGVtZW50Q29udGVudCAuZnNMaXN0SXRlbXMgYXJ0aWNsZSB7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgb3BhY2l0eTogMTtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG4uaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQgLmZzRWxlbWVudENvbnRlbnQgLmZzTGlzdEl0ZW1zIGFydGljbGUgaW1nLCAuaG9tZSBzZWN0aW9uLmZzTmV3cyAuZnNFbGVtZW50Q29udGVudCAuZnNMaXN0SXRlbXMgYXJ0aWNsZSBpbWcge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCB7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmhvbWUgc2VjdGlvbi5zcG90bGlnaHQgPiBoZWFkZXIsXHJcbiAgLmhvbWUgc2VjdGlvbi5zcG90bGlnaHQgLmZzRWxlbWVudENvbnRlbnQsXHJcbiAgLmhvbWUgc2VjdGlvbi5zcG90bGlnaHQgLnNwb3RsaWdodC5jb250YWluZXIgPiAuaW5uZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAuaG9tZSBzZWN0aW9uLnNwb3RsaWdodCA+IGhlYWRlcixcclxuICAuaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuZnNFbGVtZW50Q29udGVudCxcclxuICAuaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lciA+IC5pbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogOTYwcHg7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiAxMTgwcHgpIHtcclxuICAuaG9tZSBzZWN0aW9uLnNwb3RsaWdodCA+IGhlYWRlcixcclxuICAuaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuZnNFbGVtZW50Q29udGVudCxcclxuICAuaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lciA+IC5pbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIG1heC13aWR0aDogMTE4MHB4O1xyXG4gIH1cclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCA+IGhlYWRlciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuZnNFbGVtZW50Q29udGVudCBkbCBkdCxcclxuLmhvbWUgc2VjdGlvbi5zcG90bGlnaHQgLmZzRWxlbWVudENvbnRlbnQgZGwgZGQge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcbi5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0IC5mc0VsZW1lbnRDb250ZW50IGRsIGR0IHtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcbi5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0IC5mc0VsZW1lbnRDb250ZW50IGRsIGRkIHtcclxuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcbi5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0ID4gZm9vdGVyIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcbi5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0IC5zcG90bGlnaHQuY29udGFpbmVyIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lcjpiZWZvcmUge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgY29udGVudDogJyc7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBib3R0b206IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAwO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0IC5zcG90bGlnaHQuY29udGFpbmVyOmJlZm9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjczNDQ2O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzOSwgNTIsIDcwLCAwLjgpO1xyXG4gIH1cclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lciA+IC5pbm5lciB7XHJcbiAgcGFkZGluZzogNDBweCAyMHB4IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDE7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmhvbWUgc2VjdGlvbi5zcG90bGlnaHQgLnNwb3RsaWdodC5jb250YWluZXIgPiAuaW5uZXIge1xyXG4gICAgcGFkZGluZy10b3A6IDYwcHg7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0IC5zcG90bGlnaHQuY29udGFpbmVyID4gLmlubmVyIHtcclxuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xyXG4gIH1cclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lciA+IC5pbm5lciBoMiB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgY29sb3I6ICMxZDFkMWQ7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0IC5zcG90bGlnaHQuY29udGFpbmVyID4gLmlubmVyIGgyIHtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lciAuY2Fyb3VzZWwgLnNsaWRlID4gLmlubmVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgcGFkZGluZzogMTBweDtcclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lciAuY2Fyb3VzZWwgLnNsaWRlIC5udW1iZXIge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBjb2xvcjogI2ViY2U3YjtcclxuICBmb250LWZhbWlseTogXCJnYXJhbW9uZC1wcmVtaWVyLXByb1wiLCBUaW1lcywgc2VyaWY7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC1zaXplOiA1MHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgd2lkdGg6IDE2MHB4O1xyXG4gIGhlaWdodDogMTYwcHg7XHJcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjYmViZWJlO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0IC5zcG90bGlnaHQuY29udGFpbmVyIC5jYXJvdXNlbCAuc2xpZGUgLm51bWJlciB7XHJcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcclxuICB9XHJcbn1cclxuLmhvbWUgc2VjdGlvbi5zcG90bGlnaHQgLnNwb3RsaWdodC5jb250YWluZXIgLmNhcm91c2VsIC5zbGlkZSAubnVtYmVyID4gc3BhbiB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG4uaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lciAuY2Fyb3VzZWwgLnNsaWRlIC5sYWJlbCB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgY29sb3I6ICMxZDFkMWQ7XHJcbiAgbWFyZ2luLXRvcDogMzBweDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuaG9tZSBzZWN0aW9uLnNwb3RsaWdodCAuc3BvdGxpZ2h0LmNvbnRhaW5lciAuY2Fyb3VzZWwgLnNsaWRlIC5sYWJlbCB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbn1cclxuXHJcbi5ob21lIC5jbHVzdGVyID4gLmlubmVyIHtcclxuICBtYXJnaW4tcmlnaHQ6IC0yMHB4O1xyXG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcclxuICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBhZGRpbmc6IDAgNTBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgLmhvbWUgLmNsdXN0ZXIgPiAuaW5uZXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgd2lkdGg6IDM0MHB4O1xyXG4gIH1cclxufVxyXG4uaG9tZSAuY2x1c3RlciBidXR0b24ge1xyXG4gIGJvcmRlcjogMDtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIG91dGxpbmU6IDA7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuMzMzcztcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zMzNzO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjMzM3M7XHJcbiAgd2lkdGg6IDUwcHg7XHJcbiAgaGVpZ2h0OiA1MHB4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBib3R0b206IDA7XHJcbiAgei1pbmRleDogMjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtaW5kZW50OiAtNjY2ZW07XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzOGVjMDtcclxufVxyXG5AbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIHtcclxuICAuaG9tZSAuY2x1c3RlciBidXR0b24ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzJiMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTE0LCAxNzYsIDAuOCk7XHJcbiAgfVxyXG59XHJcbi5ob21lIC5jbHVzdGVyIGJ1dHRvbjpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViY2U3YjtcclxufVxyXG4uaG9tZSAuY2x1c3RlciBidXR0b246YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwi74CNXCI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHRleHQtaW5kZW50OiAwO1xyXG4gIGZvbnQtc2l6ZTogMjZweDtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuLmhvbWUgLmNsdXN0ZXIgYnV0dG9uLnByZXZpb3VzIHtcclxuICBsZWZ0OiAwO1xyXG4gIHJpZ2h0OiBhdXRvO1xyXG59XHJcbi5ob21lIC5jbHVzdGVyIGJ1dHRvbi5wcmV2aW91czphZnRlciB7XHJcbiAgY29udGVudDogXCLvhIRcIjtcclxufVxyXG4uaG9tZSAuY2x1c3RlciBidXR0b24ubmV4dCB7XHJcbiAgbGVmdDogYXV0bztcclxuICByaWdodDogMDtcclxufVxyXG4uaG9tZSAuY2x1c3RlciBidXR0b24ubmV4dDphZnRlciB7XHJcbiAgY29udGVudDogXCLvhIVcIjtcclxufVxyXG4uaG9tZSAuY2x1c3RlciAubGluayB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmhvbWUgLmNsdXN0ZXIgLmxpbmsgYSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGZvbnQtZmFtaWx5OiBcIm9wZW4tc2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBsaW5lLWhlaWdodDogMS41O1xyXG4gIHBhZGRpbmc6IDE0LjVweCAxMHB4O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MmIwO1xyXG59XHJcbi5ob21lIC5jbHVzdGVyIC5saW5rIGE6aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmNlN2I7XHJcbn1cclxuXHJcbi5jb2xvcnMgb2wge1xyXG4gIHpvb206IDE7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuLmNvbG9ycyBvbDphZnRlciB7XHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgY29udGVudDogJyc7XHJcbn1cclxuLmNvbG9ycyBvbCBsaSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIG1hcmdpbi1ib3R0b206IDJlbTtcclxuICBoZWlnaHQ6IDRlbTtcclxuICB3aWR0aDogNDAlO1xyXG59XHJcbkBtZWRpYSAobWluLXdpZHRoOiA2MDBweCkge1xyXG4gIC5jb2xvcnMgb2wgbGkge1xyXG4gICAgd2lkdGg6IDMwJTtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtaW4td2lkdGg6IDExODBweCkge1xyXG4gIC5jb2xvcnMgb2wgbGkge1xyXG4gICAgd2lkdGg6IDIwJTtcclxuICB9XHJcbn1cclxuLmNvbG9ycyBvbCBsaTphZnRlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHRvcDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBsaW5lLWhlaWdodDogMTZweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICM2NTY1NjU7XHJcbn1cclxuLmNvbG9ycyBvbCBsaTpudGgtb2YtdHlwZSgxKSB7XHJcbiAgYmFja2dyb3VuZDogIzFkMWQxZDtcclxuICBjb2xvcjogIzFkMWQxZDtcclxufVxyXG4uY29sb3JzIG9sIGxpOm50aC1vZi10eXBlKDEpOmFmdGVyIHtcclxuICBjb250ZW50OiBcIiMxZDFkMWRcIjtcclxufVxyXG4uY29sb3JzIG9sIGxpOm50aC1vZi10eXBlKDIpIHtcclxuICBiYWNrZ3JvdW5kOiAjMjczNDQ2O1xyXG4gIGNvbG9yOiAjMjczNDQ2O1xyXG59XHJcbi5jb2xvcnMgb2wgbGk6bnRoLW9mLXR5cGUoMik6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIzI3MzQ0NlwiO1xyXG59XHJcbi5jb2xvcnMgb2wgbGk6bnRoLW9mLXR5cGUoMykge1xyXG4gIGJhY2tncm91bmQ6ICMwMDcyYjA7XHJcbiAgY29sb3I6ICMwMDcyYjA7XHJcbn1cclxuLmNvbG9ycyBvbCBsaTpudGgtb2YtdHlwZSgzKTphZnRlciB7XHJcbiAgY29udGVudDogXCIjMDA3MmIwXCI7XHJcbn1cclxuLmNvbG9ycyBvbCBsaTpudGgtb2YtdHlwZSg0KSB7XHJcbiAgYmFja2dyb3VuZDogI2ViY2U3YjtcclxuICBjb2xvcjogI2ViY2U3YjtcclxufVxyXG4uY29sb3JzIG9sIGxpOm50aC1vZi10eXBlKDQpOmFmdGVyIHtcclxuICBjb250ZW50OiBcIiNlYmNlN2JcIjtcclxufVxyXG4uY29sb3JzIG9sIGxpOm50aC1vZi10eXBlKDUpIHtcclxuICBiYWNrZ3JvdW5kOiAjMDA3NzM3O1xyXG4gIGNvbG9yOiAjMDA3NzM3O1xyXG59XHJcbi5jb2xvcnMgb2wgbGk6bnRoLW9mLXR5cGUoNSk6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIzAwNzczN1wiO1xyXG59XHJcbi5jb2xvcnMgb2wgbGk6bnRoLW9mLXR5cGUoNikge1xyXG4gIGJhY2tncm91bmQ6ICNiZWJlYmU7XHJcbiAgY29sb3I6ICNiZWJlYmU7XHJcbn1cclxuLmNvbG9ycyBvbCBsaTpudGgtb2YtdHlwZSg2KTphZnRlciB7XHJcbiAgY29udGVudDogXCIjYmViZWJlXCI7XHJcbn1cclxuLmNvbG9ycyBvbCBsaTpudGgtb2YtdHlwZSg3KSB7XHJcbiAgYmFja2dyb3VuZDogIzhmOGY4ZjtcclxuICBjb2xvcjogIzhmOGY4ZjtcclxufVxyXG4uY29sb3JzIG9sIGxpOm50aC1vZi10eXBlKDcpOmFmdGVyIHtcclxuICBjb250ZW50OiBcIiM4ZjhmOGZcIjtcclxufVxyXG4uY29sb3JzIG9sIGxpOm50aC1vZi10eXBlKDgpIHtcclxuICBiYWNrZ3JvdW5kOiAjNjU2NTY1O1xyXG4gIGNvbG9yOiAjNjU2NTY1O1xyXG59XHJcbi5jb2xvcnMgb2wgbGk6bnRoLW9mLXR5cGUoOCk6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIzY1NjU2NVwiO1xyXG59XHJcbi5jb2xvcnMgb2wgbGk6bnRoLW9mLXR5cGUoOSkge1xyXG4gIGJhY2tncm91bmQ6ICM0MjQyNDI7XHJcbiAgY29sb3I6ICM0MjQyNDI7XHJcbn1cclxuLmNvbG9ycyBvbCBsaTpudGgtb2YtdHlwZSg5KTphZnRlciB7XHJcbiAgY29udGVudDogXCIjNDI0MjQyXCI7XHJcbn1cclxuLmNvbG9ycyBvbCBsaTpudGgtb2YtdHlwZSgxKSB7XHJcbiAgYmFja2dyb3VuZDogIzFkMWQxZDtcclxuICBjb2xvcjogIzFkMWQxZDtcclxufVxyXG4uY29sb3JzIG9sIGxpOm50aC1vZi10eXBlKDEpOmFmdGVyIHtcclxuICBjb250ZW50OiBcIiMxZDFkMWRcIjtcclxufVxyXG5cclxuLmhlYWRlcnMgaDE6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIHNpemU6IDU1cHggLyBsaW5lOiA2MHB4XCI7XHJcbn1cclxuLmhlYWRlcnMgaDI6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIHNpemU6IDM2cHggLyBsaW5lOiA0MHB4XCI7XHJcbn1cclxuLmhlYWRlcnMgaDM6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIHNpemU6IDIwcHggLyBsaW5lOiAzMHB4XCI7XHJcbn1cclxuLmhlYWRlcnMgaDQ6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIHNpemU6IDE2cHggLyBsaW5lOiAyNHB4XCI7XHJcbn1cclxuLmhlYWRlcnMgaDU6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIHNpemU6IDE2cHggLyBsaW5lOiAyNHB4XCI7XHJcbn1cclxuLmhlYWRlcnMgaDY6YWZ0ZXIge1xyXG4gIGNvbnRlbnQ6IFwiIHNpemU6IDE2cHggLyBsaW5lOiAyNHB4XCI7XHJcbn1cclxuXHJcblxyXG4iLCIvKiogXHJcbiAqIEh0bWw1IFBsYWNlaG9sZGVyIFBvbHlmaWxsIC0gdjIuMC45IC0gMjAxNC0wMS0yMSBcclxuICogd2ViOiBodHRwOi8vYmxvZy5naW5hZGVyLmRlL2Rldi9qcXVlcnkvSFRNTDUtcGxhY2Vob2xkZXItcG9seWZpbGwvIFxyXG4gKiBpc3N1ZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9naW5hZGVyL0hUTUw1LXBsYWNlaG9sZGVyLXBvbHlmaWxsL2lzc3VlcyBcclxuICogQ29weXJpZ2h0IChjKSAyMDE0IERpcmsgR2luYWRlcjsgTGljZW5zZWQgTUlULCBHUEwgXHJcbiAqL1xyXG5cclxuc3Bhbi5wbGFjZWhvbGRlcntwb3NpdGlvbjphYnNvbHV0ZTtmb250LXNpemU6NzUlO2NvbG9yOiM5OTk7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjtwYWRkaW5nOjRweCAzcHg7ei1pbmRleDoxO2N1cnNvcjp0ZXh0fXNwYW4ucGxhY2Vob2xkZXItaGlkZS1leGNlcHQtc2NyZWVucmVhZGVye2NsaXA6cmVjdCgxcHggMXB4IDFweCAxcHgpO2NsaXA6cmVjdCgxcHgsMXB4LDFweCwxcHgpO3BhZGRpbmc6MCFpbXBvcnRhbnQ7Ym9yZGVyOjAhaW1wb3J0YW50O2hlaWdodDoxcHghaW1wb3J0YW50O3dpZHRoOjFweCFpbXBvcnRhbnQ7b3ZlcmZsb3c6aGlkZGVufXNwYW4ucGxhY2Vob2xkZXItaGlkZXtkaXNwbGF5Om5vbmV9bGFiZWwudmlzdWFsbHloaWRkZW4td2l0aC1wbGFjZWhvbGRlcntoZWlnaHQ6YXV0byFpbXBvcnRhbnQ7b3ZlcmZsb3c6dmlzaWJsZSFpbXBvcnRhbnQ7cG9zaXRpb246YWJzb2x1dGUhaW1wb3J0YW50O2xlZnQ6LTk5OWVtfSIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMiB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZSAqL1xyXG5cclxuLyoqXHJcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXHJcbiAqIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xyXG4gKiAgICB1c2VyIHpvb20uXHJcbiAqL1xyXG5cclxuaHRtbCB7XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cclxuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxyXG4gKi9cclxuXHJcbmJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXHJcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXHJcbiAqIGFuZCBGaXJlZm94LlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxyXG4gKi9cclxuXHJcbmFydGljbGUsXHJcbmFzaWRlLFxyXG5kZXRhaWxzLFxyXG5maWdjYXB0aW9uLFxyXG5maWd1cmUsXHJcbmZvb3RlcixcclxuaGVhZGVyLFxyXG5oZ3JvdXAsXHJcbm1haW4sXHJcbm1lbnUsXHJcbm5hdixcclxuc2VjdGlvbixcclxuc3VtbWFyeSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxyXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXHJcbiAqL1xyXG5cclxuYXVkaW8sXHJcbmNhbnZhcyxcclxucHJvZ3Jlc3MsXHJcbnZpZGVvIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXHJcbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXHJcbiAqL1xyXG5cclxuYXVkaW86bm90KFtjb250cm9sc10pIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cclxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxyXG4gKi9cclxuXHJcbltoaWRkZW5dLFxyXG50ZW1wbGF0ZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogTGlua3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuICovXHJcblxyXG5hIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuXHJcbmE6YWN0aXZlLFxyXG5hOmhvdmVyIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5hYmJyW3RpdGxlXSB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5iLFxyXG5zdHJvbmcge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKi9cclxuXHJcbmRmbiB7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxyXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIG1hcmdpbjogMC42N2VtIDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxyXG4gKi9cclxuXHJcbm1hcmsge1xyXG4gIGJhY2tncm91bmQ6ICNmZjA7XHJcbiAgY29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiA4MCU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1cCB7XHJcbiAgdG9wOiAtMC41ZW07XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG4vKiBFbWJlZGRlZCBjb250ZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXHJcbiAqL1xyXG5cclxuaW1nIHtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cclxuICovXHJcblxyXG5zdmc6bm90KDpyb290KSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLyogR3JvdXBpbmcgY29udGVudFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAxZW0gNDBweDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cclxuICovXHJcblxyXG5ociB7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5wcmUge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuXHJcbmNvZGUsXHJcbmtiZCxcclxucHJlLFxyXG5zYW1wIHtcclxuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbn1cclxuXHJcbi8qIEZvcm1zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcclxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXHJcbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4gKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5idXR0b24sXHJcbmlucHV0LFxyXG5vcHRncm91cCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cclxuICBmb250OiBpbmhlcml0OyAvKiAyICovXHJcbiAgbWFyZ2luOiAwOyAvKiAzICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cclxuICovXHJcblxyXG5idXR0b24ge1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxyXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxyXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxyXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXHJcbiAqL1xyXG5cclxuYnV0dG9uLFxyXG5zZWxlY3Qge1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcclxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXHJcbiAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cclxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcclxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxyXG4gKi9cclxuXHJcbmJ1dHRvbixcclxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXHJcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cclxuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXHJcbiAqL1xyXG5cclxuYnV0dG9uW2Rpc2FibGVkXSxcclxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cclxuICovXHJcblxyXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXHJcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcclxuICBib3JkZXI6IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cclxuICogdGhlIFVBIHN0eWxlc2hlZXQuXHJcbiAqL1xyXG5cclxuaW5wdXQge1xyXG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXHJcbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXHJcbiAqXHJcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXHJcbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXHJcbiAqL1xyXG5cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICBwYWRkaW5nOiAwOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxyXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxyXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXHJcbiAqL1xyXG5cclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4vKipcclxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXHJcbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWVcclxuICogICAgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXHJcbiAqL1xyXG5cclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cclxuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxyXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXHJcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cclxuICovXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbiAqL1xyXG5cclxuZmllbGRzZXQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XHJcbiAgbWFyZ2luOiAwIDJweDtcclxuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuICovXHJcblxyXG5sZWdlbmQge1xyXG4gIGJvcmRlcjogMDsgLyogMSAqL1xyXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqL1xyXG5cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKipcclxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxyXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cclxuICovXHJcblxyXG5vcHRncm91cCB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8qIFRhYmxlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cclxuICovXHJcblxyXG50YWJsZSB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxudGQsXHJcbnRoIHtcclxuICBwYWRkaW5nOiAwO1xyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gRm9udCBJY29uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuJWZvbnQtaWNvbiB7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWljb247XHJcbiAgc3BlYWs6IG5vbmU7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcblxyXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG59XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEFzc2V0IFBhdGhzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyBFeGFtcGxlIFVzYWdlOlxyXG4vLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGltYWdlLWRpciArICdsb2dvLnN2ZycpO1xyXG5cclxuJGxheW91dC1kaXI6ICcvdXBsb2FkZWQvdGhlbWVzL2RlZmF1bHQvJztcclxuJGltYWdlLWRpcjogJGxheW91dC1kaXIgKyAnaW1hZ2VzLyc7XHJcbiRmb250LWRpcjogJGxheW91dC1kaXIgKyAnZm9udHMvJztcclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBDb2x1bW5zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4kYm91bmRyeTogMTE4MDtcclxuJGd1dHRlcjogMjBweDtcclxuXHJcbi8vIExlZnQgQmFubmVyLCBSaWdodCBCYW5uZXIgcGFkZGluZ1xyXG4kbGItcGFkZGluZy1yaWdodDogNDBweDtcclxuJHJiLXBhZGRpbmctbGVmdDogNzBweDtcclxuXHJcbi8vIExlZnQgQmFubmVyLCBSaWdodCBCYW5uZXIgd2lkdGhcclxuJGxiLXdpZHRoOiBwZXJjZW50YWdlKCAoIDI0MCArICggJGxiLXBhZGRpbmctcmlnaHQgLyAxcHggKSApIC8gJGJvdW5kcnkgKTtcclxuJHJiLXdpZHRoOiBwZXJjZW50YWdlKCAoIDMwMCArICggJHJiLXBhZGRpbmctbGVmdCAvIDFweCApICkgLyAkYm91bmRyeSApO1xyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEJyZWFrcG9pbnRzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyBFeGFtcGxlIHVzYWdlOlxyXG4vLyBAaW5jbHVkZSBicmVha3BvaW50KCRicC1tZWRpdW0pIHt9XHJcblxyXG4kYnAtbWljcm86IDMwMHB4O1xyXG4kYnAtdGlueTogNDAwcHg7XHJcbiRicC1zbWFsbDogNTAwcHg7XHJcbiRicC1tZWRpdW06IDYwMHB4O1xyXG4kYnAtYmlnOiA3MDBweDtcclxuJGJwLWxhcmdlOiA4MDBweDtcclxuJGJwLWh1Z2U6IDkwMHB4O1xyXG4kYnAtYm91bmRyeTogJGJvdW5kcnkgKiAxcHg7XHJcbiRicC1ib3VuZHJ5LXBsdXM6ICgkYm91bmRyeSArICgkZ3V0dGVyICogMikpICogMXB4O1xyXG4kYnAtdGl0YW46IDEwMDBweDtcclxuJGJwLXdvcmxkOiAxMTAwcHg7XHJcbiRicC1zb2xhcjogMTIwMHB4O1xyXG4kYnAtZ2FsYXh5OiAxMzAwcHg7XHJcbiRicC11bml2ZXJzZTogMTQwMHB4O1xyXG5cclxuLy8gRGV2aWNlIEJyZWFrcG9pbnRzXHJcbi8vIEFzc3VtZXMgTW9iaWxlIEZpcnN0XHJcbiRicC1waGFibGV0OiAkYnAtc21hbGw7Ly81MDBcclxuJGJwLXBvcnRyYWl0OiAkYnAtbWVkaXVtOy8vNjAwXHJcbiRicC1sYW5kc2NhcGU6ICRicC1odWdlOy8vOTAwXHJcbiRicC1kZXNrdG9wOiAkYnAtYm91bmRyeTsvLzExODBcclxuXHJcbiRsZWdhY3ktYnJvd3NlcjogZmFsc2UgIWRlZmF1bHQ7XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gU2l0dWF0aW9uYWwgRmxleHBvaW50c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuJGJwLWNyZWF0ZS1jb2x1bW5zOiAkYnAtcG9ydHJhaXQ7Ly83MDBweDtcclxuJGJwLW1haW4tbmF2LWlubGluZTogJGJwLWxhbmRzY2FwZTsvLzkwMHB4O1xyXG4kYnAtc2hvdy1tYWluLWRyb3Bkb3duczogJGJwLWxhbmRzY2FwZTtcclxuJGJwLWhpZGUtb2ZmLWNhbnZhczogJGJwLWxhbmRzY2FwZTsvLzkwMHB4O1xyXG5cclxuLy8gQWxsIENvbHVtbiBmbGV4cG9pbnRzICptdXN0KiBiZSBhYm92ZSAkYnAtY3JlYXRlLWNvbHVtbnMgZmxleHBvaW50XHJcbiRicC0yLWNvbHVtbjogJGJwLXBvcnRyYWl0Oy8vNzAwcHg7XHJcbiRicC0zLWNvbHVtbjogJGJwLWxhbmRzY2FwZTsvLzkwMHB4O1xyXG4kYnAtMi0yLWNvbHVtbjogJGJwLXBvcnRyYWl0Oy8vNzAwcHg7XHJcbiRicC00LWNvbHVtbjogJGJwLWRlc2t0b3A7Ly8xMDAwcHg7XHJcbiRicC1lbGVwaGFudC1jb2x1bW46ICRicC1kZXNrdG9wOy8vMTAwMHB4O1xyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIENvbG9yc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuJGNvbG9yLWJ1c2gtYXBwcm94OiAjMGQyZjIxOy8vMDcwYTA5XHJcbiRjb2xvci12aXJpZGlhbi1hcHByb3g6ICM0YThhNjk7Ly80YThhNjlcclxuJGNvbG9yLXJvYi1yb3ktYXBwcm94OiAjZWJjZTdiO1xyXG4kY29sb3ItZGlzY28tYXBwcm94OiAjOGIxNzQ4O1xyXG4kY29sb3ItYmxhY2s6ICMwMDA7XHJcbiRjb2xvci1jb2QtZ3JheS1hcHByb3g6ICMxZDFkMWQ7XHJcbiRjb2xvci10dW5kb3JhLWFwcHJveDogIzQyNDI0MjtcclxuJGNvbG9yLWRvdmUtZ3JheS1hcHByb3g6ICM2NTY1NjU7Ly82NTY1NjVcclxuJGNvbG9yLWdyYXktYXBwcm94OiAjOGY4ZjhmO1xyXG4kY29sb3Itc2lsdmVyLWFwcHJveDogI2JlYmViZTtcclxuJGNvbG9yLWFsdG8tYXBwcm94OiAjZGVkZWRlO1xyXG4kY29sb3Itd2hpdGU6ICNmZmY7XHJcblxyXG4vLyBEZWZhdWx0IENvbG9yXHJcbiRkMTogJGNvbG9yLWNvZC1ncmF5LWFwcHJveDtcclxuXHJcbi8vIE1haW4gQ29sb3JzXHJcbiRtMTogIzI3MzQ0NjtcclxuJG0yOiAjMDA3MmIwO1xyXG4kbTM6ICNlYmNlN2I7XHJcbiRtNDogIzAwNzczNztcclxuXHJcbi8vIFNoYWRlIENvbG9yc1xyXG4kczE6ICNlZWU7XHJcbiRzMjogIzMzMztcclxuXHJcbi8vIEdyYXlzXHJcbiRnMDogJGNvbG9yLWFsdG8tYXBwcm94O1xyXG4kZzE6ICRjb2xvci1zaWx2ZXItYXBwcm94O1xyXG4kZzI6ICRjb2xvci1ncmF5LWFwcHJveDtcclxuJGczOiAkY29sb3ItZG92ZS1ncmF5LWFwcHJveDtcclxuJGc0OiAkY29sb3ItdHVuZG9yYS1hcHByb3g7XHJcbiRnNTogJGNvbG9yLWNvZC1ncmF5LWFwcHJveDtcclxuXHJcbi8vIFJlaXRlcmF0aW9uIG9mIGNvbG9ycyBmb3IgdGhlIHN0eWxlIGd1aWRlXHJcbi8vIER1cGxpY2F0ZWQgb2YgcHJlZXhpc3RpbmcgY29sb3JzIGVudGVyZWQgaW50byBhIGNvbW1hIHNlcGFyYXRlZCBsaXN0XHJcbiRjb2xvcnM6XHJcbiRkMSxcclxuJG0xLFxyXG4kbTIsXHJcbiRtMyxcclxuJG00LFxyXG4kZzEsXHJcbiRnMixcclxuJGczLFxyXG4kZzQsXHJcbiRnNVxyXG47XHJcblxyXG4vLyBTcGVjaWFsdHkgQ29sb3JzXHJcbiRwbGFjZWhvbGRlcjogcmdiYSgjZmZmLCAuNSk7XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBUZXh0IFByb3BlcnRpZXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIEVudGVyIHRoZSB2YWx1ZXMgZm91bmQgZnJvbSBib2R5IGNvcHlcclxuXHJcbiRib2R5LWZvbnQtc2l6ZTogMTZweDtcclxuJGJvZHktbGluZS1oZWlnaHQ6ICggMjQgLyAxNiApO1xyXG4kYm9keS1jb2xvcjogJGQxO1xyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEZvbnQgVHlwZXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbiRzZXJpZjogXCJnYXJhbW9uZC1wcmVtaWVyLXByb1wiLCBUaW1lcywgc2VyaWY7XHJcbiRzZXJpZi0yOiBudWxsO1xyXG5cclxuJHNhbnMtc2VyaWY6ICdvcGVuLXNhbnMnLCBzYW5zLXNlcmlmO1xyXG4kc2Fucy1zZXJpZi0yOiBudWxsO1xyXG5cclxuJG1vbm9zcGFjZTogTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTtcclxuXHJcbiRmb250LWljb246ICdJY29Nb29uJztcclxuJGZvbnQtaWNvbW9vbi1maWxlbmFtZTogJ3RvcnJpbmd0b24nO1xyXG5cclxuLy8gR2x5cGhzXHJcbiRnbHlwaC1wbHVzOiBcIlxcZjA2N1wiO1xyXG4kZ2x5cGgtbWludXM6IFwiXFxmMDY4XCI7XHJcbiRnbHlwaC1jbG9zZTogXCJcXGYwMGRcIjtcclxuJGdseXBoLWNoZXZyb24tbGVmdDogXCJcXGYwNTNcIjtcclxuJGdseXBoLWNoZXZyb24tcmlnaHQ6IFwiXFxmMDU0XCI7XHJcbiRnbHlwaC1jaGV2cm9uLXVwOiBcIlxcZjA3N1wiO1xyXG4kZ2x5cGgtY2hldnJvbi1kb3duOiBcIlxcZjA3OFwiO1xyXG4kZ2x5cGgtYW5nbGUtbGVmdDogXCJcXGYxMDRcIjtcclxuJGdseXBoLWFuZ2xlLXJpZ2h0OiBcIlxcZjEwNVwiO1xyXG4kZ2x5cGgtYW5nbGUtdXA6IFwiXFxmMTA2XCI7XHJcbiRnbHlwaC1hbmdsZS1kb3duOiBcIlxcZjEwN1wiO1xyXG4kZ2x5cGgtZmFjZWJvb2s6IFwiXFxmMDlhXCI7XHJcbiRnbHlwaC10d2l0dGVyOiBcIlxcZjA5OVwiO1xyXG4kZ2x5cGgtbGlua2VkaW46IFwiXFxmMGUxXCI7XHJcbiRnbHlwaC15b3V0dWJlLXBsYXk6IFwiXFxmMTZhXCI7XHJcbiRnbHlwaC1mZWVkOiBcIlxcZjA5ZVwiO1xyXG4kZ2x5cGgtZ29vZ2xlLXBsdXM6IFwiXFxmMGQ1XCI7XHJcbiRnbHlwaC1pbnN0YWdyYW06IFwiXFxmMTZkXCI7XHJcbiRnbHlwaC1zZWFyY2g6IFwiXFxmMDAyXCI7XHJcbiRnbHlwaC1iYXJzOiBcIlxcZjBjOVwiO1xyXG4kZ2x5cGgtc3Bpbm5lcjogXCJcXGYxMTBcIjtcclxuXHJcblxyXG5cclxuLy8gUmVpdGVyYXRpb24gb2YgZm9udHMgZm9yIHRoZSBzdHlsZSBndWlkZVxyXG4kZm9udHM6XHJcbiRzZXJpZixcclxuJHNlcmlmLTIsXHJcbiRzYW5zLXNlcmlmLFxyXG4kc2Fucy1zZXJpZi0yLFxyXG4kZm9udC1pY29uLFxyXG4kbW9ub3NwYWNlO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gKEJhc2ljKSBQYXJhZ3JhcGhcclxuLy8gTk9URTogZm9udC1zaXplL2xpbmUtaGVpZ2h0L2NvbG9yXHJcbi8vIGFyZSBpbmhlcml0ZWQgZnJvbSB0aGUgYm9keVxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4kcC1tYXJnaW46IDE1cHg7IC8vIEFkanVzdGVkIGZvciBDU1MgbGluZS1oZWlnaHQvYmFzZWxpbmUgbW9kZWwsIDMwcHggaW4gY29tcFxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEhlYWRpbmdzXHJcbi8vIE5PVEU6IHRoZSBAbWl4aW4gaGVhZGluZygpXHJcbi8vIGNhbGN1bGF0ZXMgdGhlIGhlYWRpbmcgc2l6ZSBhc1xyXG4vLyBhIHBlcmNlbnRhZ2Ugb2YgdGhlXHJcbi8vICRib2R5LWZvbnQtc2l6ZVxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuJGgxLXNpemU6IDU1cHg7XHJcbiRoMS1saW5lLWhlaWdodDogNjBweDtcclxuJGgxLW1hcmdpbjogMTNweDsgLy8gQWRqdXN0ZWQgZm9yIENTUyBsaW5lLWhlaWdodC9iYXNlbGluZSBtb2RlbCwgMjBweCBpbiBjb21wXHJcbiRoMS1jb2xvcjogJG0xO1xyXG5cclxuJGgyLXNpemU6IDM2cHg7XHJcbiRoMi1saW5lLWhlaWdodDogNDBweDtcclxuJGgyLW1hcmdpbjogN3B4OyAvLyBBZGp1c3RlZCBmb3IgQ1NTIGxpbmUtaGVpZ2h0L2Jhc2VsaW5lIG1vZGVsLCAxNnB4IGluIGNvbXBcclxuJGgyLWNvbG9yOiAkbTE7XHJcblxyXG4kaDMtc2l6ZTogMjBweDtcclxuJGgzLWxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4kaDMtbWFyZ2luOiAwO1xyXG4kaDMtY29sb3I6ICRib2R5LWNvbG9yO1xyXG5cclxuJGg0LXNpemU6IDE2cHg7XHJcbiRoNC1saW5lLWhlaWdodDogMjRweDtcclxuJGg0LW1hcmdpbjogMDtcclxuJGg0LWNvbG9yOiAkYm9keS1jb2xvcjtcclxuXHJcbiRoNS1zaXplOiAxNnB4O1xyXG4kaDUtbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiRoNS1tYXJnaW46IDA7XHJcbiRoNS1jb2xvcjogJGJvZHktY29sb3I7XHJcblxyXG4kaDYtc2l6ZTogMTZweDtcclxuJGg2LWxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4kaDYtbWFyZ2luOiAwO1xyXG4kaDYtY29sb3I6ICRib2R5LWNvbG9yO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gaHRtbCBTdHlsZXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuJGh0bWwtYmFja2dyb3VuZC1jb2xvcjogJG0xO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gUGFnZSBDb250ZW50IFN0eWxlc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4kcGFnZS1jb250ZW50LWJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEN1c3RvbSBUeXBlIFN0eWxlc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4kbGVhZC1pbi1zaXplOiAyMHB4O1xyXG4kbGVhZC1pbi1saW5lLWhlaWdodDogMzBweDtcclxuJGxlYWQtaW4tbWFyZ2luOiAkaDItbWFyZ2luO1xyXG4kbGVhZC1pbi1jb2xvcjogJG0yO1xyXG4kbGVhZC1pbi1mYW1pbHk6ICRzYW5zLXNlcmlmO1xyXG5cclxuJGJsb2NrcXVvdGUtc2l6ZTogMzBweDtcclxuJGJsb2NrcXVvdGUtbGluZS1oZWlnaHQ6ICgzNi8zMCk7XHJcbiRibG9ja3F1b3RlLWNvbG9yOiAkbTQ7XHJcbiRibG9ja3F1b3RlLWZhbWlseTogJHNlcmlmO1xyXG4kYmxvY2txdW90ZS1vZmZzZXQ6IDUwcHg7XHJcbiRibG9ja3F1b3RlLWhvcml6b250YWwtbWFyZ2luOiAwO1xyXG4kYmxvY2txdW90ZS12ZXJ0aWNhbC1tYXJnaW46ICggJHAtbWFyZ2luICogMiApO1xyXG5cclxuXHJcbiRjaXRhdGlvbi1zaXplOiAkYm9keS1mb250LXNpemU7XHJcbiRjaXRhdGlvbi1saW5lLWhlaWdodDogJGJvZHktbGluZS1oZWlnaHQ7XHJcbiRjaXRhdGlvbi1jb2xvcjogJGcyO1xyXG4kY2l0YXRpb24tZmFtaWx5OiAkc2Fucy1zZXJpZjtcclxuJGNpdGF0aW9uLXRvcC1vZmZzZXQ6IDRweDsvLyBBZGp1c3RlZCBmb3IgQ1NTIGxpbmUtaGVpZ2h0L2Jhc2VsaW5lIG1vZGVsLCA4cHggaW4gY29tcFxyXG5cclxuJGNhcHRpb24tc2l6ZTogJGJvZHktZm9udC1zaXplICogMC44OyAvLyBhcyBnb29kIGEgc3RhcnRpbmcgcG9pbnQgYXMgYW55XHJcbiRjYXB0aW9uLWxpbmUtaGVpZ2h0OiAkYm9keS1saW5lLWhlaWdodCAqIDAuODsgLy8gYXMgZ29vZCBhIHN0YXJ0aW5nIHBvaW50IGFzIGFueVxyXG4kY2FwdGlvbi1tYXJnaW46ICggJGNhcHRpb24tc2l6ZSAqICRjYXB0aW9uLWxpbmUtaGVpZ2h0ICkgLyAyOyAvLyBhcyBnb29kIGEgc3RhcnRpbmcgcG9pbnQgYXMgYW55XHJcbiRjYXB0aW9uLWNvbG9yOiBsaWdodGVuKCAkYm9keS1jb2xvciwgMTAlICk7XHJcblxyXG4kY2FsbG91dC1zaXplOiAyNnB4O1xyXG4kY2FsbG91dC1saW5lLWhlaWdodDogKDMyLzI2KTtcclxuJGNhbGxvdXQtY29sb3I6ICRtNDtcclxuJGNhbGxvdXQtZmFtaWx5OiAkc2VyaWY7XHJcbiRjYWxsb3V0LWJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gSGVhZGVyXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiRoZWFkZXItdXRpbGl0eS1saW5rLWJhY2tncm91bmQ6IG1peCggJG0xLCAkY29sb3ItYmxhY2ssIDUwJSApO1xyXG4kaGVhZGVyLW1pc2NlbGxhbmVvdXMtYnV0dG9uLXdpZHRoOiA0NXB4O1xyXG4kaGVhZGVyLW1pc2NlbGxhbmVvdXMtYnV0dG9uLWhlaWdodDogMzZweDtcclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEhlYWRlcjogU3ViLW5hdmlnYXRpb25cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuJHN1Yi1uYXZpZ2F0aW9uLWJhY2tncm91bmQtY29sb3I6ICRtMjtcclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBIb21lXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE1hc3RoZWFkXHJcblxyXG4kaG9tZS1tYXN0aGVhZC1ob3Jpem9udGFsLXBhZGRpbmc6ICRndXR0ZXI7XHJcbiRob21lLW1hc3RoZWFkLXZlcnRpY2FsLXBhZGRpbmc6IDFweDtcclxuXHJcbiRob21lLW1hc3RoZWFkLWRldGFpbC1jb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4kaG9tZS1tYXN0aGVhZC1kZXRhaWwtY29weS1mYW1pbHk6ICRzYW5zLXNlcmlmO1xyXG4kaG9tZS1tYXN0aGVhZC1kZXRhaWwtY29weS1zaXplOiAkYm9keS1mb250LXNpemU7XHJcbiRob21lLW1hc3RoZWFkLWRldGFpbC1jb3B5LWxpbmUtaGVpZ2h0OiAkYm9keS1saW5lLWhlaWdodDtcclxuXHJcbiRob21lLWNhcm91c2VsLWFycm93LWRpbWVuc2lvbnM6IDUwcHg7XHJcblxyXG4vLyBcIkJsb2Nrc1wiXHJcbiRob21lLWJsb2NrLXZlcnRpY2FsLW9mZnNldC1tb2JpbGU6IDQwcHg7XHJcbiRob21lLWJsb2NrLXZlcnRpY2FsLW9mZnNldDogNjBweDtcclxuXHJcblxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEVsZW1lbnRzOiBCdXR0b25zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiRidXR0b25zLXNpemU6ICRoNS1zaXplO1xyXG4kYnV0dG9ucy1saW5lLWhlaWdodDogJGg1LWxpbmUtaGVpZ2h0O1xyXG4kYnV0dG9ucy13ZWlnaHQ6IDYwMDtcclxuJGJ1dHRvbnMtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuJGJ1dHRvbnMtY29sb3ItaG92ZXI6ICRnMTtcclxuJGJ1dHRvbnMtYmFja2dyb3VuZC1jb2xvcjogJG00O1xyXG4kYnV0dG9ucy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkY29sb3Itd2hpdGU7XHJcbiRidXR0b25zLWhlYWRlci1ob3Jpem9udGFsLXBhZGRpbmc6ICRndXR0ZXI7XHJcbiRidXR0b25zLWhlYWRlci12ZXJ0aWNhbC1wYWRkaW5nOiAxMnB4O1xyXG5cclxuJGJ1dHRvbnMtYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiRidXR0b25zLWJvcmRlci1zdHlsZTogc29saWQ7XHJcbiRidXR0b25zLWJvcmRlci1jb2xvcjogJGcxO1xyXG5cclxuJGJ1dHRvbnMtY2FsbG91dC1zaXplOiAkYnV0dG9ucy1zaXplO1xyXG4kYnV0dG9ucy1jYWxsb3V0LWxpbmUtaGVpZ2h0OiAkYnV0dG9ucy1saW5lLWhlaWdodDtcclxuJGJ1dHRvbnMtY2FsbG91dC13ZWlnaHQ6ICRidXR0b25zLXdlaWdodDtcclxuJGJ1dHRvbnMtY2FsbG91dC1jb2xvcjogJGJ1dHRvbnMtY29sb3I7XHJcbiRidXR0b25zLWNhbGxvdXQtY29sb3ItaG92ZXI6ICRidXR0b25zLWNvbG9yLWhvdmVyO1xyXG4kYnV0dG9ucy1jYWxsb3V0LWJhY2tncm91bmQtY29sb3I6ICRidXR0b25zLWJhY2tncm91bmQtY29sb3I7XHJcbiRidXR0b25zLWNhbGxvdXQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGJ1dHRvbnMtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjtcclxuJGJ1dHRvbnMtY2FsbG91dC1oZWFkZXItaG9yaXpvbnRhbC1wYWRkaW5nOiAzMHB4O1xyXG4kYnV0dG9ucy1jYWxsb3V0LWhlYWRlci12ZXJ0aWNhbC1wYWRkaW5nOiAyN3B4O1xyXG5cclxuJGJ1dHRvbnMtY2FsbG91dC1ib3JkZXItd2lkdGg6ICRidXR0b25zLWJvcmRlci13aWR0aDtcclxuJGJ1dHRvbnMtY2FsbG91dC1ib3JkZXItc3R5bGU6ICRidXR0b25zLWJvcmRlci1zdHlsZTtcclxuJGJ1dHRvbnMtY2FsbG91dC1ib3JkZXItY29sb3I6ICRidXR0b25zLWJvcmRlci1jb2xvcjtcclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBFbGVtZW50czogVGFibGVzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiR0YWJsZS1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogJG0xO1xyXG4kdGFibGUtaGVhZGVyLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiR0YWJsZS1oZWFkZXItc2l6ZTogJGg1LXNpemU7XHJcbiR0YWJsZS1oZWFkZXItbGluZS1oZWlnaHQ6ICRoNS1saW5lLWhlaWdodDtcclxuJHRhYmxlLWhlYWRlci1ob3Jpem9udGFsLXBhZGRpbmc6IDE1cHg7XHJcbiR0YWJsZS1oZWFkZXItdmVydGljYWwtcGFkZGluZzogMTJweDtcclxuXHJcbiR0YWJsZS1iYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuJHRhYmxlLWJhY2tncm91bmQtc3RyaXBlLWNvbG9yOiAkZzA7XHJcblxyXG4kdGFibGUtY29sb3I6ICRib2R5LWNvbG9yO1xyXG4kdGFibGUtc2l6ZTogJGJvZHktZm9udC1zaXplO1xyXG4kdGFibGUtbGluZS1oZWlnaHQ6ICRib2R5LWxpbmUtaGVpZ2h0O1xyXG4kdGFibGUtaG9yaXpvbnRhbC1wYWRkaW5nOiAxNXB4O1xyXG4kdGFibGUtdmVydGljYWwtcGFkZGluZzogMTJweDtcclxuXHJcblxyXG4kdGFibGUtYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiR0YWJsZS1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAkZzE7XHJcblxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEVsZW1lbnRzOiBUYWJzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiR0YWJzLWJhY2tncm91bmQtY29sb3I6ICRtMTtcclxuJHRhYnMtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJG0yO1xyXG4kdGFicy1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGNvbG9yLXdoaXRlO1xyXG5cclxuJHRhYnMtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuJHRhYnMtY29sb3ItaG92ZXI6ICRjb2xvci13aGl0ZTtcclxuJHRhYnMtY29sb3ItYWN0aXZlOiAkbTE7XHJcblxyXG4kdGFicy1ib3JkZXItd2lkdGg6IDFweDtcclxuJHRhYnMtYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuJHRhYnMtYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuJHRhYnMtYm9yZGVyLWNvbG9yLWhvdmVyOiB0cmFuc3BhcmVudDtcclxuJHRhYnMtYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGcxO1xyXG5cclxuJHRhYnMtaG9yaXpvbnRhbC1tYXJnaW46IDJweDtcclxuLy8kdGFicy12ZXJ0aWNhbC1tYXJnaW46ICRndXR0ZXI7XHJcbiR0YWJzLWhvcml6b250YWwtcGFkZGluZzogMTVweDtcclxuJHRhYnMtdmVydGljYWwtcGFkZGluZzogMTJweDtcclxuJHRhYnMtc2l6ZTogJGg1LXNpemU7XHJcbiR0YWJzLWxpbmUtaGVpZ2h0OiAkaDUtbGluZS1oZWlnaHQ7XHJcbiR0YWJzLXdlaWdodDogNjAwO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gRWxlbWVudHM6IEFjY29yZGlvbnNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuJGFjY29yZGlvbnMtYmFja2dyb3VuZC1jb2xvcjogJG0xO1xyXG4kYWNjb3JkaW9ucy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkbTI7XHJcbiRhY2NvcmRpb25zLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiAkY29sb3Itd2hpdGU7XHJcblxyXG4kYWNjb3JkaW9ucy1jb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4kYWNjb3JkaW9ucy1jb2xvci1ob3ZlcjogJGNvbG9yLXdoaXRlO1xyXG4kYWNjb3JkaW9ucy1jb2xvci1hY3RpdmU6ICRtMTtcclxuXHJcbiRhY2NvcmRpb25zLWJvcmRlci13aWR0aDogMXB4O1xyXG4kYWNjb3JkaW9ucy1ib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4kYWNjb3JkaW9ucy1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4kYWNjb3JkaW9ucy1ib3JkZXItY29sb3ItaG92ZXI6IHRyYW5zcGFyZW50O1xyXG4kYWNjb3JkaW9ucy1ib3JkZXItY29sb3ItYWN0aXZlOiAkZzE7XHJcblxyXG4kYWNjb3JkaW9ucy1ob3Jpem9udGFsLW1hcmdpbjogJGd1dHRlcjtcclxuJGFjY29yZGlvbnMtdmVydGljYWwtbWFyZ2luOiAxcHg7XHJcbiRhY2NvcmRpb25zLWhvcml6b250YWwtcGFkZGluZzogMTVweDtcclxuJGFjY29yZGlvbnMtdmVydGljYWwtcGFkZGluZzogMTJweDtcclxuJGFjY29yZGlvbnMtc2l6ZTogJGg1LXNpemU7XHJcbiRhY2NvcmRpb25zLWxpbmUtaGVpZ2h0OiAkaDUtbGluZS1oZWlnaHQ7XHJcbiRhY2NvcmRpb25zLXdlaWdodDogNjAwO1xyXG4kYWNjb3JkaW9ucy1pY29uLW9wZW46ICRnbHlwaC1hbmdsZS1yaWdodDtcclxuJGFjY29yZGlvbnMtaWNvbi1jbG9zZTogJGdseXBoLWFuZ2xlLWRvd247XHJcbiRhY2NvcmRpb25zLWljb24tc2l6ZTogMjRweDtcclxuJGFjY29yZGlvbnMtaWNvbi1vZmZzZXQ6IDQwcHg7XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBFbGVtZW50czogTmV3c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gRWxlbWVudHM6IENhbGVuZGFyc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gRWxlbWVudHM6IFRpZXIgTmF2aWdhdGlvblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBUaWVyIFRvZ2dsZVxyXG5cclxuJG5hdmlnYXRpb24tdGllci10b2dnbGUtYmFja2dyb3VuZC1jb2xvcjogJG0yO1xyXG4kbmF2aWdhdGlvbi10aWVyLXRvZ2dsZS1zaXplOiAkYm9keS1mb250LXNpemU7XHJcbiRuYXZpZ2F0aW9uLXRpZXItdG9nZ2xlLWxpbmUtaGVpZ2h0OiAoIDIycHggLyAkYm9keS1mb250LXNpemUgKTtcclxuJG5hdmlnYXRpb24tdGllci10b2dnbGUtZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xyXG4kbmF2aWdhdGlvbi10aWVyLXRvZ2dsZS13ZWlnaHQ6IDYwMDtcclxuJG5hdmlnYXRpb24tdGllci10b2dnbGUtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbiRuYXZpZ2F0aW9uLXRpZXItdG9nZ2xlLWhvcml6b250YWwtbWFyZ2luOiAkZ3V0dGVyO1xyXG4kbmF2aWdhdGlvbi10aWVyLXRvZ2dsZS12ZXJ0aWNhbC1tYXJnaW46ICRndXR0ZXI7XHJcblxyXG4vLyBUaWVyIExpbmtzXHJcbiRuYXZpZ2F0aW9uLXRpZXItYmFja2dyb3VuZC1jb2xvcjogJG0yO1xyXG4kbmF2aWdhdGlvbi10aWVyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRtMjtcclxuJG5hdmlnYXRpb24tdGllci1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJG0yO1xyXG5cclxuJG5hdmlnYXRpb24tdGllci1jb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4kbmF2aWdhdGlvbi10aWVyLWNvbG9yLWhvdmVyOiAkbTM7XHJcbiRuYXZpZ2F0aW9uLXRpZXItY29sb3ItYWN0aXZlOiAkbTE7XHJcblxyXG4kbmF2aWdhdGlvbi10aWVyLWJvcmRlci13aWR0aDogMXB4O1xyXG4kbmF2aWdhdGlvbi10aWVyLWJvcmRlci1zdHlsZTogc29saWQ7XHJcbiRuYXZpZ2F0aW9uLXRpZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuJG5hdmlnYXRpb24tdGllci1ib3JkZXItY29sb3ItaG92ZXI6IHRyYW5zcGFyZW50O1xyXG4kbmF2aWdhdGlvbi10aWVyLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnMTtcclxuXHJcbiRuYXZpZ2F0aW9uLXRpZXItaG9yaXpvbnRhbC1tYXJnaW46IDA7XHJcbiRuYXZpZ2F0aW9uLXRpZXItdmVydGljYWwtbWFyZ2luOiAxcHg7XHJcblxyXG4kbmF2aWdhdGlvbi10aWVyLWhvcml6b250YWwtcGFkZGluZzogMjBweDtcclxuJG5hdmlnYXRpb24tdGllci12ZXJ0aWNhbC1wYWRkaW5nOiAxNHB4O1xyXG4kbmF2aWdhdGlvbi10aWVyLXNpemU6ICRib2R5LWZvbnQtc2l6ZTtcclxuJG5hdmlnYXRpb24tdGllci1saW5lLWhlaWdodDogKCAyMnB4IC8gJG5hdmlnYXRpb24tdGllci1zaXplICk7XHJcbiRuYXZpZ2F0aW9uLXRpZXItZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xyXG4kbmF2aWdhdGlvbi10aWVyLXdlaWdodDogNDAwO1xyXG5cclxuJG5hdmlnYXRpb24tdGllci1pY29uLW9wZW46ICRnbHlwaC1hbmdsZS1yaWdodDtcclxuJG5hdmlnYXRpb24tdGllci1pY29uLWNsb3NlOiAkZ2x5cGgtYW5nbGUtZG93bjtcclxuJG5hdmlnYXRpb24tdGllci1pY29uLXNpemU6IDI0cHg7XHJcbiRuYXZpZ2F0aW9uLXRpZXItaWNvbi1vZmZzZXQ6IDQwcHg7XHJcblxyXG4kbmF2aWdhdGlvbi10aWVyLWluZGVudC1vZmZzZXQ6ICRndXR0ZXI7XHJcblxyXG4vLyBTdWItbmF2aWdhdGlvbiBUaWVyIExpbmtzXHJcblxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFNwZWNpYWwgU2l0ZSBDb25kaXRpb25zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyBDb25maWd1cmUgYnJlYWtwb2ludHMgdG8gYmUgaW4gZW1zXHJcbiRicC1pbi1lbXM6IGZhbHNlO1xyXG5cclxuLy8gRWxlbWVudHMgPj4gQ2FsZW5kYXJcclxuLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIHRvIGluY2x1ZGUgZmxvYXRpbmcgZGF0ZXNcclxuJGZsb2F0aW5nLWRhdGU6IGZhbHNlO1xyXG4vLyBEZXRlcm1pbmVzIHdoZXRoZXIgbGl0dGxlIGljb25zIHNob3cgdXAgbmV4dCB0byBldmVudCBkZXRhaWxzXHJcbiRldmVudC1pY29uczogZmFsc2U7XHJcblxyXG4vLyBFbGVtZW50cyA+PiBDb25zdGl0dWVudFxyXG4vLyBmYWxzZSBpbmRpY2F0ZXMgZGlzcGxheTogaW5saW5lLWJsb2NrIHJhdGhlciB0aGFuIGNvbHVtbi1jb3VudFxyXG4kcGludGVyZXN0LWRpcmVjdG9yeTogdHJ1ZTtcclxuXHJcbi8vIEVsZW1lbnRzID4+IFVuaXF1ZVxyXG4vLyBEZXRlcm1pbmVzIHRoZSByYW5nZSBhdCB3aGljaCB0aGUgaGVybyBiYWNrZ3JvdW5kIGltYWdlIHNjYWxlc1xyXG4kaGVyby1mbGV4LWhlaWdodDogMzB2dztcclxuJGhlcm8tbWluLWhlaWdodDogMjgwO1xyXG4kaGVyby1tYXgtaGVpZ2h0OiA2MDA7XHJcblxyXG4vLyBFbGVtZW50cyA+PiBDb25zdGl0dWVudFxyXG4vLyAnYXJyb3cnLCAnZG90cycsICdwbHVzJ1xyXG4kbmF2LXN1Yi1pY29uOiAnZG90cyc7XHJcbi8vIERlY2lkZSB3aGV0aGVyIHRoZSBzdWIgbmF2IGhhcyBjb2xsYXBzZSBmdW5jdGlvbmFsaXR5XHJcbiRuYXYtc3ViLWNvbGxhcHNlczogdHJ1ZTtcclxuXHJcblxyXG4kdHJhbnNpdC1zcGVlZDogMC4zMzNzO1xyXG5cclxuXHJcblxyXG5cclxuXHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE1vZGVybml6clxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy93d3cuc2l0ZXBvaW50LmNvbS9zY2FsaW5nLXZhbHVlcy1hY3Jvc3MtYnJlYWtwb2ludHMtdXNpbmctc2Fzcy9cclxuXHJcbi8vIE1vZGVybml6ciBmYWxsYmFja3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIE1vZGVybml6ciBtaXhpbiB0byBjcmVhdGUgLm1vZGVybml6ciBzZWxlY3RvcjpcclxuLy8gY29kZXBlbi5pby9zdHVyb2Jzb24vcGVuL3hjZGhhXHJcblxyXG4vLyBFeGFtcGxlIHVzYWdlOlxyXG4vLyAuc2VsZWN0b3Ige1xyXG4vLyAgIEBpbmNsdWRlIG1vZGVybml6cihjc3NhbmltYXRpb25zKSB7XHJcbi8vICAgICBsZWZ0OiA0MGVtO1xyXG4vLyAgIH1cclxuLy8gICBAaW5jbHVkZSBtb2Rlcm5penIoY3NzYW5pbWF0aW9ucywgZmFsc2UpIHtcclxuLy8gICAgIGJhY2tncm91bmQ6IHJlZDtcclxuLy8gICB9XHJcbi8vIH1cclxuXHJcbkBtaXhpbiBtb2Rlcm5penIoJHByb3BlcnR5LCAkc3VwcG9ydDogdHJ1ZSkge1xyXG5cclxuICBAaWYgJHN1cHBvcnQgPT0gdHJ1ZSB7XHJcblxyXG4gICAgLiN7JHByb3BlcnR5fSAmIHtcclxuXHJcbiAgICAgIEBjb250ZW50O1xyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBAZWxzZSB7XHJcblxyXG4gICAgLm5vLSN7JHByb3BlcnR5fSAmIHtcclxuXHJcbiAgICAgIEBjb250ZW50O1xyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIENvbXBhcnRtZW50XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyBFeGFtcGxlIHVzYWdlOlxyXG4vLyAuc2VjdGlvbmVkLWNvbnRhaW5lciB7XHJcbi8vICAgQGluY2x1ZGUgY29tcGFydG1lbnQ7XHJcbi8vIH1cclxuXHJcbkBtaXhpbiBjb21wYXJ0bWVudCgkdmFsdWU6ICRib3VuZHJ5ICogMXB4KSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIG1heC13aWR0aDogJHZhbHVlO1xyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQ29tbW9uIENvbHVtbnNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbkBtaXhpbiBsYXlvdXQtY29sdW1uKCRpbXBvcnRhbmNlOiBmYWxzZSkge1xyXG4gIGZsb2F0OiBub25lO1xyXG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XHJcblxyXG4gIEBpZiAkaW1wb3J0YW5jZSB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBAZWxzZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWNyZWF0ZS1jb2x1bW5zKSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQnJlYWtwb2ludFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gaHR0cDovL2pha2VhcmNoaWJhbGQuZ2l0aHViLmlvL3Nhc3MtaWUvXHJcblxyXG4vLyBFeGFtcGxlIFVzYWdlOlxyXG4vLyAuZWxlbWVudCB7XHJcbi8vICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWVkaXVtKSB7fVxyXG4vLyB9XHJcblxyXG5AbWl4aW4gYnJlYWtwb2ludCgkZmxleC1waXZvdCkge1xyXG5cclxuICBAaWYgJGxlZ2FjeS1icm93c2VyIHtcclxuXHJcbiAgICBAY29udGVudDtcclxuXHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGZsZXgtcGl2b3QpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIENvbW1vbiBCdXR0b25cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQG1peGluIGRlZmF1bHQtYnV0dG9uLXR5cGUoKXtcclxuICBmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XHJcbiAgZm9udC13ZWlnaHQ6ICRidXR0b25zLXdlaWdodDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtc2l6ZTogJGJ1dHRvbnMtc2l6ZTtcclxuICBsaW5lLWhlaWdodDogJGJ1dHRvbnMtbGluZS1oZWlnaHQ7XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24oJGJhY2tncm91bmQ6ICRkMSwgJGhvdmVyLWJhY2tncm91bmQ6ICRnMiwgJGNvbG9yOiAkY29sb3Itd2hpdGUsICRob3Zlci1jb2xvcjogJGNvbG9yLWJsYWNrKSB7XHJcbiAgQGluY2x1ZGUgZGVmYXVsdC1idXR0b24tdHlwZSgpO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBib3JkZXI6IDA7XHJcbiAgbWFyZ2luOiAwIDAgJGd1dHRlcjtcclxuICBwYWRkaW5nOiAkYnV0dG9ucy1oZWFkZXItdmVydGljYWwtcGFkZGluZyAkYnV0dG9ucy1oZWFkZXItaG9yaXpvbnRhbC1wYWRkaW5nO1xyXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xyXG4gIGNvbG9yOiAkY29sb3I7XHJcbiAgb3V0bGluZTogMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XHJcbiAgICBjb2xvcjogJGhvdmVyLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgZW0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICB9XHJcblxyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uLWNhbGxvdXQoJGJhY2tncm91bmQ6ICRkMSwgJGhvdmVyLWJhY2tncm91bmQ6ICRnMiwgJGNvbG9yOiAkY29sb3Itd2hpdGUsICRob3Zlci1jb2xvcjogJGNvbG9yLWJsYWNrKXtcclxuICBAaW5jbHVkZSBidXR0b24oJGJhY2tncm91bmQsICRob3Zlci1iYWNrZ3JvdW5kLCAkY29sb3IsICRob3Zlci1jb2xvcik7XHJcbiAgcGFkZGluZzogJGJ1dHRvbnMtY2FsbG91dC1oZWFkZXItdmVydGljYWwtcGFkZGluZyAkYnV0dG9ucy1jYWxsb3V0LWhlYWRlci1ob3Jpem9udGFsLXBhZGRpbmc7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXNpemU6IGNlKCAkYnV0dG9ucy1jYWxsb3V0LXNpemUgKTtcclxuICBsaW5lLWhlaWdodDogJGJ1dHRvbnMtY2FsbG91dC1saW5lLWhlaWdodDtcclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEJ1dHRvbiBSZXNldFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gRXhhbXBsZSB1c2FnZTpcclxuLy8gLnRyaWdnZXIge1xyXG4vLyAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldDtcclxuLy8gfVxyXG5cclxuQG1peGluIGJ1dHRvbi1yZXNldCgkY29tcGxldGU6IHRydWUpIHtcclxuICBib3JkZXI6IDA7XHJcbiAgYmFja2dyb3VuZDogbm9uZTtcclxuICBvdXRsaW5lOiAwO1xyXG5cclxuICBAaWYgJGNvbXBsZXRlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBIZWFkaW5nc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gZGVmYXVsdC1oZWFkaW5nIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbkBtaXhpbiBoZWFkaW5nKCAkc2l6ZTogJGJvZHktZm9udC1zaXplLCAkbGluZS1oZWlnaHQ6ICRib2R5LWxpbmUtaGVpZ2h0LCAkbWFyZ2luOiAkZ3V0dGVyICl7XHJcbiAgZm9udC1zaXplOiBjZSggJHNpemUgKTtcclxuICBsaW5lLWhlaWdodDogKCAgc3UoICRsaW5lLWhlaWdodCApIC8gIHN1KCAkc2l6ZSApICk7XHJcbiAgLy8gb3B0aW5nIGZvciB1bml0bGVzcyBsaW5lIGhlaWdodCBodHRwczovL2Nzcy10cmlja3MuY29tL2FsbWFuYWMvcHJvcGVydGllcy9sL2xpbmUtaGVpZ2h0L1xyXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XHJcbn1cclxuXHJcbkBtaXhpbiBhY2NvcmRpb24taGVhZGluZygpe1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGZvbnQtc2l6ZTogJGFjY29yZGlvbnMtc2l6ZTtcclxuICBsaW5lLWhlaWdodDogJGFjY29yZGlvbnMtbGluZS1oZWlnaHQ7XHJcbiAgcGFkZGluZzogJGFjY29yZGlvbnMtdmVydGljYWwtcGFkZGluZyAkYWNjb3JkaW9ucy1ob3Jpem9udGFsLXBhZGRpbmc7XHJcbiAgY29sb3I6ICRhY2NvcmRpb25zLWNvbG9yO1xyXG4gIGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGZvbnQtd2VpZ2h0OiAkYWNjb3JkaW9ucy13ZWlnaHQ7XHJcbn1cclxuXHJcbkBtaXhpbiBzaGFyZWQtYmFubmVyLWJsb2NrLWhlYWRlcigpe1xyXG4gICY+IGhlYWRlciB7XHJcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgJGNvbG9yLWJsYWNrO1xyXG4gICAgcGFkZGluZy10b3A6ICRndXR0ZXIgLSAoICggJGgzLWxpbmUtaGVpZ2h0IC0gJGgzLXNpemUgKSAvIDIgKTtcclxuICAgIC5mc0VsZW1lbnRUaXRsZSB7XHJcbiAgICAgIEBleHRlbmQgJWgzO1xyXG4gICAgICAvL0BpbmNsdWRlIG1hcmdpbi15KCAkZ3V0dGVyIC0gKCAoICggKCAkaDMtc2l6ZSAvIDFweCApICogJGgzLWxpbmUtaGVpZ2h0ICkgLSAoICggJGgzLXNpemUgLyAxcHggKSApICkgLyAyICkgKTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlciAtICggKCAkaDMtbGluZS1oZWlnaHQgLSAkaDMtc2l6ZSApIC8gMiApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gRm9udCBJY29uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gRXhhbXBsZSB1c2FnZTpcclxuLy8gLmxhYmVsOmJlZm9yZSB7XHJcbi8vICAgQGluY2x1ZGUgZm9udC1pY29uKCdcXGYwZDInKTtcclxuLy8gfVxyXG5cclxuQG1peGluIGZvbnQtaWNvbigkZ2x5cGgpIHtcclxuICBAZXh0ZW5kICVmb250LWljb247XHJcbiAgY29udGVudDogJGdseXBoO1xyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gTWFyZ2luICYgUGFkZGluZ1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gbWFyZ2luLXgoJGxlbmd0aDogJGd1dHRlcikge1xyXG4gIG1hcmdpbi1yaWdodDogJGxlbmd0aDtcclxuICBtYXJnaW4tbGVmdDogJGxlbmd0aDtcclxufVxyXG5cclxuQG1peGluIG1hcmdpbi15KCRsZW5ndGg6ICRndXR0ZXIpIHtcclxuICBtYXJnaW4tdG9wOiAkbGVuZ3RoO1xyXG4gIG1hcmdpbi1ib3R0b206ICRsZW5ndGg7XHJcbn1cclxuXHJcbkBtaXhpbiBwYWRkaW5nLXgoJGxlbmd0aDogJGd1dHRlcikge1xyXG4gIHBhZGRpbmctcmlnaHQ6ICRsZW5ndGg7XHJcbiAgcGFkZGluZy1sZWZ0OiAkbGVuZ3RoO1xyXG59XHJcblxyXG5AbWl4aW4gcGFkZGluZy15KCRsZW5ndGg6ICRndXR0ZXIpIHtcclxuICBwYWRkaW5nLXRvcDogJGxlbmd0aDtcclxuICBwYWRkaW5nLWJvdHRvbTogJGxlbmd0aDtcclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQmFja2dyb3VuZHNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIEV4YW1wbGUgdXNhZ2U6XHJcbi8vIC5jb3Zlci1waG90byB7XHJcbi8vICAgQGluY2x1ZGUgYmctY292ZXI7XHJcbi8vIH1cclxuXHJcbkBtaXhpbiBiZy1jb3ZlcigkcG9zaXRpb246IDUwJSA1MCUpIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcG9zaXRpb247XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBPZmYgQ2FudmFzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5AbWl4aW4gb2ZmLWNhbnZhcygkZGlyZWN0aW9uLCAkdHJhbnNmb3JtLXZhbHVlOiAyMCUpIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgei1pbmRleDogJGZvcmVncm91bmQtaW5kZXg7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgb3BhY2l0eTogMDtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgdHJhbnNpdGlvbjpcclxuICBvcGFjaXR5IC4zcyxcclxuICB2aXNpYmlsaXR5IC4zcyxcclxuICB0cmFuc2Zvcm0gLjNzO1xyXG5cclxuICAvLyBGcm9tIG9mZi1sZWZ0IHRvIHJpZ2h0XHJcbiAgQGlmICRkaXJlY3Rpb24gPT0gbHRyIHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0cmFuc2Zvcm0tdmFsdWUgKiAtMSwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkdHJhbnNmb3JtLXZhbHVlICogLTEsIDApO1xyXG4gIH1cclxuICAgIC8vIEZyb20gb2ZmLXJpZ2h0IHRvIGxlZnRcclxuICBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHJ0bCB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHRyYW5zZm9ybS12YWx1ZSAqIC0xLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR0cmFuc2Zvcm0tdmFsdWUgKiAtMSwgMCk7XHJcbiAgfVxyXG4gICAgLy8gRnJvbSBvZmYtdG9wIHRvIGJvdHRvbVxyXG4gIEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gdHRiIHtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR0cmFuc2Zvcm0tdmFsdWUgKiAtMSwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAkdHJhbnNmb3JtLXZhbHVlICogLTEpO1xyXG4gIH1cclxuICAgIC8vIEZyb20gb2ZmLWJvdHRvbSB0byB0b3BcclxuICBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGJ0dCB7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkdHJhbnNmb3JtLXZhbHVlICogLTEsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgJHRyYW5zZm9ybS12YWx1ZSAqIC0xKTtcclxuICB9XHJcbiAgQGVsc2Uge31cclxuXHJcbn1cclxuXHJcbkBtaXhpbiBvZmYtY2FudmFzLWFjdGl2ZSgkZGVmYXVsdC10cmFuc2Zvcm06IHRydWUpIHtcclxuICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICBvcGFjaXR5OiAxO1xyXG4gIHZpc2liaWxpdHk6IHZpc2libGU7XHJcblxyXG4gIEBpZiAkZGVmYXVsdC10cmFuc2Zvcm0ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIERyb3Bkb3duXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5AbWl4aW4gZHJvcGRvd24oJHdpZHRoLCAkcG9zaXRpb246IGNlbnRlcikge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDk5LjUlO1xyXG4gIHotaW5kZXg6IDEwO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgd2lkdGg6ICR3aWR0aDtcclxuXHJcbiAgQGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XHJcbiAgfVxyXG4gIEBlbHNlIHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIExpc3QgUmVzZXRcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIEV4YW1wbGUgdXNhZ2U6XHJcbi8vIG5hdiB7XHJcbi8vICAgQGluY2x1ZGUgbGlzdC1yZXNldDtcclxuLy8gfVxyXG5cclxuQG1peGluIGxpc3QtcmVzZXQge1xyXG5cclxuICB1bCxcclxuICBvbCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICB9XHJcblxyXG4gIGxpIHtcclxuICAgIC8vIG1hcmdpbjogMDtcclxuICAgIC8vIHBhZGRpbmc6IDA7XHJcbiAgfVxyXG5cclxuICBhIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBDbGVhcmZpeFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gRXhhbXBsZSBVc2FnZTpcclxuLy8gLmNvbnRhaW5zLWZsb2F0cyB7XHJcbi8vICAgQGluY2x1ZGUgY2xlYXI7XHJcbi8vIH1cclxuXHJcbkBtaXhpbiBjbGVhciB7XHJcbiAgem9vbTogMTtcclxuXHJcbiAgJjphZnRlciB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIERldmVsb3BlciBUb29sc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gZGV2LWNvbG9yKCRib3JkZXItY29sb3I6ICNmMDApe1xyXG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlci1jb2xvcjsvL3JldHVyblJHQkEoJGJvcmRlci1jb2xvciwgMC40KTtcclxuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBUcmFuc2l0aW9uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gdHJhbnNpdGlvbigkcHJvcGVydHk6IGFsbCwgJGR1cmF0aW9uOiAkdHJhbnNpdC1zcGVlZCl7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uO1xyXG4gIC1tb3otdHJhbnNpdGlvbjogJHByb3BlcnR5ICRkdXJhdGlvbjtcclxuICAtbXMtdHJhbnNpdGlvbjogJHByb3BlcnR5ICRkdXJhdGlvbjtcclxuICAtby10cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uO1xyXG4gIHRyYW5zaXRpb246ICRwcm9wZXJ0eSAkZHVyYXRpb247O1xyXG59XHJcblxyXG5cclxuQG1peGluIGJhY2tncm91bmQtY29sb3ItYWxwaGEoJGNvbG9yLCRhbHBoYTowLjUpe1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZXR1cm5SR0JBKCRjb2xvciwkYWxwaGEpO1xyXG59XHJcblxyXG5AbWl4aW4gdGV4dC1jb2xvci1hbHBoYSgkY29sb3IsJGFscGhhOjAuNSl7XHJcbiAgY29sb3I6ICRjb2xvcjtcclxuICBjb2xvcjogcmV0dXJuUkdCQSgkY29sb3IsJGFscGhhKTtcclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQW5pbWF0aW9uXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBhbmltYXRpb24tc3Bpbigpe1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBhbmltYXRlLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xyXG4gIC1vLWFuaW1hdGlvbjogYW5pbWF0ZS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcclxuICBhbmltYXRpb246IGFuaW1hdGUtc3BpbiAycyBpbmZpbml0ZSBsaW5lYXI7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYW5pbWF0ZS1zcGluIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgfVxyXG4gIDEwMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcclxuICB9XHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE5vIFNlbGVjdFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gbm9zZWxlY3QoKSB7XHJcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lOy8vcmVhbGx5P1xyXG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gIHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBJbmxpbmUgRWxlbWVudFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gaW5saW5lLWVsZW1lbnQoICRhbGlnbjogdG9wICl7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiAkYWxpZ247XHJcbiAgbWFyZ2luLXJpZ2h0OiAtMC4yMmVtO1xyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gSGVhZGVyIExheW91dFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gSGVhZGVyIFV0aWxpdGllcyBMaW5rc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gaGVhZGVyLXV0aWxpdHktbGlua3MoICl7XHJcbiAgQGluY2x1ZGUgbWFyZ2luLXgoIDJweCApO1xyXG4gIGZvbnQtc2l6ZTogJGJvZHktZm9udC1zaXplOy8vIG92ZXJraWxsXHJcbiAgbGluZS1oZWlnaHQ6ICRib2R5LWxpbmUtaGVpZ2h0Oy8vIG92ZXJraWxsXHJcbiAgY29sb3I6ICRnMjtcclxuICBmb250LWZhbWlseTogJHNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHJcbiAgcGFkZGluZzogKCAoIDM2cHggLSAoICRib2R5LWZvbnQtc2l6ZSAqICRib2R5LWxpbmUtaGVpZ2h0ICkgKSAvIDIgKSAkZ3V0dGVyO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItdXRpbGl0eS1saW5rLWJhY2tncm91bmQ7XHJcblxyXG4gICY6aG92ZXIge1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRtMjtcclxuICB9XHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEhlYWRlciBNYWluIE5hdmlnYXRpb24gTGlua3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQG1peGluIGhlYWRlci1uYXZpZ2F0aW9uLWxpbmtzLWhvdmVyKCApe1xyXG4gIGNvbG9yOiAkbTM7XHJcbn1cclxuQG1peGluIGhlYWRlci1uYXZpZ2F0aW9uLWxpbmtzKCApe1xyXG4gIEBpbmNsdWRlIG1hcmdpbi14KCAycHggKTtcclxuXHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICBwYWRkaW5nOiAoICggNzNweCAtICggJGJvZHktZm9udC1zaXplICogJGJvZHktbGluZS1oZWlnaHQgKSApIC8gMiApIDhweDtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wKSB7XHJcbiAgICAkbG9jYWwtZm9udC1zaXplOiAxOHB4O1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZy15KCAoIDczcHggLSAoICRsb2NhbC1mb250LXNpemUgKiAkYm9keS1saW5lLWhlaWdodCApICkgLyAyICk7XHJcbiAgICBmb250LXNpemU6IGNlKCRsb2NhbC1mb250LXNpemUpO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiByZXR1cm5SR0JBKCAkY29sb3Itd2hpdGUsIDAuOSApO1xyXG4gIH1cclxuXHJcbiAgJjpob3ZlcixcclxuICAmLmFjdGl2ZSB7XHJcbiAgICBAaW5jbHVkZSBoZWFkZXItbmF2aWdhdGlvbi1saW5rcy1ob3ZlciggKTtcclxuICB9XHJcblxyXG59XHJcbkBtaXhpbiBoZWFkZXItbmF2aWdhdGlvbi1saW5rcy1hY3RpdmUoICl7XHJcbiAgY29sb3I6ICRtMTtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcbkBtaXhpbiBoZWFkZXItc3ViLW5hdmlnYXRpb24tbGlua3MoICl7XHJcbiAgQGluY2x1ZGUgaGVhZGVyLW5hdmlnYXRpb24tbGlua3MoICk7XHJcblxyXG4gIC8vIGhhY2tpbmcgaW4gc2VydmljZSBvZiBEZXNpZ24gUUFcclxuICAkbG9jYWwtbGluZS1oZWlnaHQ6ICggNTIgLyBzdSggJGJvZHktZm9udC1zaXplICkgKTtcclxuICBmb250LXNpemU6ICRib2R5LWZvbnQtc2l6ZTtcclxuICBsaW5lLWhlaWdodDogJGxvY2FsLWxpbmUtaGVpZ2h0O1xyXG5cclxuICBAaW5jbHVkZSBwYWRkaW5nLXgoICRndXR0ZXIgKTtcclxuICBAaW5jbHVkZSBwYWRkaW5nLXkoIDAgKTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wKSB7XHJcbiAgICAkbG9jYWwtZm9udC1zaXplOiAkYm9keS1mb250LXNpemU7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXkoIDAgKTtcclxuICAgIGZvbnQtc2l6ZTogY2UoJGxvY2FsLWZvbnQtc2l6ZSk7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gSGVhZGVyIE1haW4gTmF2aWdhdGlvbiBEcm9wLWRvd24gTGlua3NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuQG1peGluIGhlYWRlci1uYXZpZ2F0aW9uLWRyb3Bkb3duLWxpbmtzKCApe1xyXG4gIGZvbnQtc2l6ZTogMTRweDsvLyBvdmVya2lsbFxyXG4gIGxpbmUtaGVpZ2h0OiAoIDIyIC8gMTQgKTsvLyBvdmVya2lsbFxyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gIHBhZGRpbmc6ICggKCA0MnB4IC0gMjIgKSAvIDIgKSAoICRndXR0ZXIgKiAwLjUgKTtcclxuICAmOmhvdmVyIHtcclxuICAgIGNvbG9yOiAkbTM7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBBY2NvcmRpb24vVGFiIFBhbmVsXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBzaGFyZWQtYWNjb3JkaW9uLWZzUGFuZWwoICRpcy10YWI6IGZhbHNlICl7XHJcbiAgLmZzUGFuZWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGFjY29yZGlvbnMtdmVydGljYWwtbWFyZ2luO1xyXG5cclxuICAgID4gaGVhZGVyIHtcclxuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25zLWJhY2tncm91bmQtY29sb3I7XHJcbiAgICAgIGJvcmRlcjogJGFjY29yZGlvbnMtYm9yZGVyLXdpZHRoICRhY2NvcmRpb25zLWJvcmRlci1zdHlsZSAkYWNjb3JkaW9ucy1ib3JkZXItY29sb3I7XHJcblxyXG4gICAgICBoMiB7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGFjY29yZGlvbi1oZWFkaW5nKCk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHsgZm9udC1mYW1pbHk6ICRmb250LWljb247IH1cclxuXHJcbiAgICAgICAgQGlmICRpcy10YWIge1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiAkYWNjb3JkaW9ucy1pY29uLW9wZW47XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGFjY29yZGlvbnMtaWNvbi1vZmZzZXQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbnMtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjtcclxuICAgICAgICBib3JkZXItY29sb3I6ICR0YWJzLWJvcmRlci1jb2xvci1ob3ZlcjtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgY29sb3I6ICRhY2NvcmRpb25zLWNvbG9yLWhvdmVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfS8vZW5kIGhlYWRlclxyXG5cclxuICAgICY+LmZzRWxlbWVudENvbnRlbnQge1xyXG4gICAgICBib3JkZXI6ICRhY2NvcmRpb25zLWJvcmRlci13aWR0aCAkYWNjb3JkaW9ucy1ib3JkZXItc3R5bGUgJGFjY29yZGlvbnMtYm9yZGVyLWNvbG9yLWFjdGl2ZTtcclxuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuXHJcbiAgICAgIEBpZiAkaXMtdGFiIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1waGFibGV0KSB7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgICYuZnNTdGF0ZU9wZW4ge1xyXG4gICAgICA+IGhlYWRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbnMtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYWNjb3JkaW9ucy1ib3JkZXItY29sb3ItYWN0aXZlO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICBjb2xvcjogJGFjY29yZGlvbnMtY29sb3ItYWN0aXZlO1xyXG5cclxuICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJGFjY29yZGlvbnMtaWNvbi1jbG9zZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBpZiAkaXMtdGFiIHtcclxuICAgICAgICA+LmZzRWxlbWVudENvbnRlbnQge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG4gIH0vL2VuZCBhY2NvcmRpb24gY29udGVudCBzZWN0aW9uXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIENvbnRlbnQgKEJsb2NrcywgSW1hZ2Vz4oCmKVxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AbWl4aW4gY29udGVudC1pbWFnZS1ydWxlKCl7XHJcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRtNDtcclxufVxyXG5cclxuQG1peGluIHNoYXJlZC1jb250ZW50LWJsb2NrKCl7XHJcblxyXG4gIEBpbmNsdWRlIHNoYXJlZC1iYW5uZXItYmxvY2staGVhZGVyKCk7XHJcbiAgQGluY2x1ZGUgbWFyZ2luLXkoICRndXR0ZXIgKTtcclxuICBwYWRkaW5nLWJvdHRvbTogJGd1dHRlcjtcclxuXHJcbiAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxuICAmOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbiAgaW1nIHtcclxuICAgIEBpbmNsdWRlIGNvbnRlbnQtaW1hZ2UtcnVsZSgpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIENhbGVuZGFyLCBOZXdzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBzaGFyZWQtY2FsZW5kYXItbmV3cy1ibG9jaygpe1xyXG4gIEBpbmNsdWRlIG1hcmdpbi15KCAkZ3V0dGVyICk7XHJcblxyXG4gICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzaGFyZWQtY2FsZW5kYXItbmV3cy1kYXRlLXN0eWxlKCl7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcblxyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBsaW5lLWhlaWdodDogKDE2LzE0KTtcclxuICBjb2xvcjogJG00O1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblxyXG59XHJcblxyXG5AbWl4aW4gc2hhcmVkLWNhbGVuZGFyLW5ld3MtdGl0bGUtc3R5bGUoKXtcclxuICBAZXh0ZW5kICVoNjtcclxuICAmLCBhIHtcclxuICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcclxuICB9XHJcblxyXG4gIGE6aG92ZXIgeyBjb2xvcjogJG00OyB9XHJcblxyXG59XHJcblxyXG5AbWl4aW4gc2hhcmVkLWNhbGVuZGFyLW5ld3MtdGV4dC1zdHlsZSgpe1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBsaW5lLWhlaWdodDogKDIwLzE0KTtcclxuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBIb21lXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiBzaGFyZWQtaG9tZS1zZWN0aW9uLXBhZGRpbmcoKXtcclxuICBwYWRkaW5nOiAkaG9tZS1ibG9jay12ZXJ0aWNhbC1vZmZzZXQtbW9iaWxlICRndXR0ZXIgMDsvL2JvdHRvbSBhY2NvbW1vZGF0ZXMgYnV0dG9uKHMpXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgIHBhZGRpbmctdG9wOiAkaG9tZS1ibG9jay12ZXJ0aWNhbC1vZmZzZXQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBUaWVyIE5hdmlnYXRpb24gTUFBQUFERERERE5FU1NTU1NTXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbkBtaXhpbiB0aWVyLW5hdmlnYXRpb24taGVhZGVyLXRvZ2dsZSggJGJyZWFrcG9pbnQ6ICRicC1wb3J0cmFpdCApe1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2aWdhdGlvbi10aWVyLXRvZ2dsZS1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gIHBhZGRpbmc6ICRuYXZpZ2F0aW9uLXRpZXItdG9nZ2xlLXZlcnRpY2FsLW1hcmdpbiAkbmF2aWdhdGlvbi10aWVyLXRvZ2dsZS1ob3Jpem9udGFsLW1hcmdpbjtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICBjb2xvcjogJG5hdmlnYXRpb24tdGllci10b2dnbGUtY29sb3I7XHJcbiAgZm9udC1mYW1pbHk6ICRuYXZpZ2F0aW9uLXRpZXItdG9nZ2xlLWZvbnQtZmFtaWx5O1xyXG4gIGZvbnQtc2l6ZTogJG5hdmlnYXRpb24tdGllci10b2dnbGUtc2l6ZTtcclxuICBsaW5lLWhlaWdodDogJG5hdmlnYXRpb24tdGllci10b2dnbGUtbGluZS1oZWlnaHQ7XHJcbiAgZm9udC13ZWlnaHQ6ICRuYXZpZ2F0aW9uLXRpZXItdG9nZ2xlLXdlaWdodDtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgJjphZnRlciB7XHJcbiAgICBAaW5jbHVkZSBmb250LWljb24oICRnbHlwaC1jaGV2cm9uLXJpZ2h0ICk7XHJcbiAgICBwYWRkaW5nOiAwICRndXR0ZXI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHJpZ2h0OiAwO1xyXG5cclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbkBtaXhpbiB0aWVyLW5hdmlnYXRpb24tbGluay1wYXJlbnQoKXtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBwYWRkaW5nOiAkbmF2aWdhdGlvbi10aWVyLXZlcnRpY2FsLXBhZGRpbmcgJG5hdmlnYXRpb24tdGllci1ob3Jpem9udGFsLXBhZGRpbmc7XHJcbiAgZm9udC1zaXplOiBjZSggJG5hdmlnYXRpb24tdGllci1zaXplKSA7XHJcbiAgbGluZS1oZWlnaHQ6ICRuYXZpZ2F0aW9uLXRpZXItbGluZS1oZWlnaHQ7XHJcbiAgLy9mb250LWZhbWlseTogJG5hdmlnYXRpb24tdGllci1mb250LWZhbWlseTtcclxuICAvL2xldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgLy9mb250LXdlaWdodDogJG5hdmlnYXRpb24tdGllci13ZWlnaHQ7XHJcblxyXG4gIGNvbG9yOiAkbmF2aWdhdGlvbi10aWVyLWNvbG9yO1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLXRpZXItYmFja2dyb3VuZC1jb2xvcjtcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBjb2xvcjogJG5hdmlnYXRpb24tdGllci1jb2xvci1ob3ZlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZpZ2F0aW9uLXRpZXItYmFja2dyb3VuZC1jb2xvci1ob3ZlcjtcclxuICB9XHJcblxyXG59XHJcblxyXG5AbWl4aW4gdGllci1uYXZpZ2F0aW9uLWxpbmstY2hpbGQoKXtcclxuICBAaW5jbHVkZSB0aWVyLW5hdmlnYXRpb24tbGluay1wYXJlbnQoKTtcclxuICBAaW5jbHVkZSBwYWRkaW5nLXkoICRuYXZpZ2F0aW9uLXRpZXItdmVydGljYWwtcGFkZGluZyAqIDAuMzU3ICk7XHJcbiAgLy9wYWRkaW5nOiAoICRuYXZpZ2F0aW9uLXRpZXItdmVydGljYWwtcGFkZGluZyApICggJG5hdmlnYXRpb24tdGllci1ob3Jpem9udGFsLXBhZGRpbmcgKiAxLjUgKTtcclxuICBmb250LXNpemU6IGNlKCAkbmF2aWdhdGlvbi10aWVyLXNpemUgKiAwLjg3NSApIDtcclxuICBsaW5lLWhlaWdodDogKCAyMHB4IC8gKCAkbmF2aWdhdGlvbi10aWVyLXNpemUgKiAwLjg3NSApICk7XHJcbn1cclxuXHJcbkBtaXhpbiB0aWVyLW5hdmlnYXRpb24tY3VycmVudC1saXN0KCl7XHJcbiAgJj4gbGkge1xyXG5cclxuICB9XHJcbiAgJj4gbGkgPiBhIHtcclxuICAgIEBpbmNsdWRlIHRpZXItbmF2aWdhdGlvbi1saW5rLXBhcmVudCgpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHRpZXItbmF2aWdhdGlvbi1leHBhbmRlZC1saXN0KCl7XHJcbiAgbWFyZ2luOiAwICggJG5hdmlnYXRpb24tdGllci1ob3Jpem9udGFsLXBhZGRpbmcgKiAwLjUgKSAoICRuYXZpZ2F0aW9uLXRpZXItaG9yaXpvbnRhbC1wYWRkaW5nICogMC41ICk7IC8vMHB4O1xyXG4gICY+IGxpIHtcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbiAgJj4gbGkgPiBhIHtcclxuICAgIEBpbmNsdWRlIHRpZXItbmF2aWdhdGlvbi1saW5rLWNoaWxkKCk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gTmV3cyBHcmlkIFNoZW5hbmlnYW5zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5AbWl4aW4gbmV3cy1ncmlkLTItY29sKCl7XHJcblxyXG4gICY6bnRoLWNoaWxkKDNuLTEpeyBtYXJnaW46IGF1dG87IH1cclxuICAmOm50aC1jaGlsZCgzbisxKXsgY2xlYXI6IG5vbmU7IH1cclxuXHJcbiAgJjpudGgtY2hpbGQoNG4tMil7IG1hcmdpbjogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKDRuLTEpeyBtYXJnaW46IGF1dG87IH1cclxuICAmOm50aC1jaGlsZCg0bisxKXsgY2xlYXI6IG5vbmU7IH1cclxuXHJcbiAgJjpudGgtY2hpbGQoNW4tMyl7IG1hcmdpbjogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKDVuLTIpeyBtYXJnaW46IGF1dG87IH1cclxuICAmOm50aC1jaGlsZCg1bi0xKXsgbWFyZ2luOiBhdXRvOyB9XHJcbiAgJjpudGgtY2hpbGQoNW4rMSl7IGNsZWFyOiBub25lOyB9XHJcblxyXG4gIHdpZHRoOiA0OSU7XHJcbiAgJjpudGgtY2hpbGQob2RkKXsgbWFyZ2luLXJpZ2h0OiAxJTsgfVxyXG4gICY6bnRoLWNoaWxkKGV2ZW4peyBtYXJnaW4tbGVmdDogMSU7IH1cclxuICAmOm50aC1jaGlsZCgybisxKXsgY2xlYXI6IGJvdGg7IH1cclxufVxyXG5AbWl4aW4gbmV3cy1ncmlkLTMtY29sKCl7XHJcblxyXG4gICY6bnRoLWNoaWxkKG9kZCl7IG1hcmdpbi1yaWdodDogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKGV2ZW4peyBtYXJnaW4tbGVmdDogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKDJuKzEpeyBjbGVhcjogbm9uZTsgfVxyXG5cclxuICAmOm50aC1jaGlsZCg0bi0yKXsgbWFyZ2luOiBhdXRvOyB9XHJcbiAgJjpudGgtY2hpbGQoNG4tMSl7IG1hcmdpbjogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKDRuKzEpeyBjbGVhcjogbm9uZTsgfVxyXG5cclxuICAmOm50aC1jaGlsZCg1bi0zKXsgbWFyZ2luOiBhdXRvOyB9XHJcbiAgJjpudGgtY2hpbGQoNW4tMil7IG1hcmdpbjogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKDVuLTEpeyBtYXJnaW46IGF1dG87IH1cclxuICAmOm50aC1jaGlsZCg1bisxKXsgY2xlYXI6IG5vbmU7IH1cclxuXHJcbiAgd2lkdGg6IDMyJTtcclxuICAmOm50aC1jaGlsZCgzbi0xKXsgbWFyZ2luOiAwIDIlOyB9XHJcbiAgJjpudGgtY2hpbGQoM24rMSl7IGNsZWFyOiBib3RoOyB9XHJcblxyXG59XHJcbkBtaXhpbiBuZXdzLWdyaWQtNC1jb2woKXtcclxuXHJcbiAgJjpudGgtY2hpbGQob2RkKXsgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XHJcbiAgJjpudGgtY2hpbGQoZXZlbil7IG1hcmdpbi1sZWZ0OiBhdXRvOyB9XHJcbiAgJjpudGgtY2hpbGQoMm4rMSl7IGNsZWFyOiBub25lOyB9XHJcblxyXG4gICY6bnRoLWNoaWxkKDNuLTEpeyBtYXJnaW46IGF1dG87IH1cclxuICAmOm50aC1jaGlsZCgzbisxKXsgY2xlYXI6IG5vbmU7IH1cclxuXHJcbiAgJjpudGgtY2hpbGQoNW4tMyl7IG1hcmdpbjogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKDVuLTIpeyBtYXJnaW46IGF1dG87IH1cclxuICAmOm50aC1jaGlsZCg1bi0xKXsgbWFyZ2luOiBhdXRvOyB9XHJcbiAgJjpudGgtY2hpbGQoNW4rMSl7IGNsZWFyOiBub25lOyB9XHJcblxyXG4gIHdpZHRoOiAyMy41JTtcclxuICAmOm50aC1jaGlsZCg0bi0yKXsgbWFyZ2luOiAwIDElIDAgMiU7IH1cclxuICAmOm50aC1jaGlsZCg0bi0xKXsgbWFyZ2luOiAwIDIlIDAgMSU7IH1cclxuICAmOm50aC1jaGlsZCg0bisxKXsgY2xlYXI6IGJvdGg7IH1cclxuXHJcbn1cclxuQG1peGluIG5ld3MtZ3JpZC01LWNvbCgpe1xyXG5cclxuICAmOm50aC1jaGlsZChvZGQpeyBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cclxuICAmOm50aC1jaGlsZChldmVuKXsgbWFyZ2luLWxlZnQ6IGF1dG87IH1cclxuICAmOm50aC1jaGlsZCgybisxKXsgY2xlYXI6IG5vbmU7IH1cclxuXHJcbiAgJjpudGgtY2hpbGQoM24tMSl7IG1hcmdpbjogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKDNuKzEpeyBjbGVhcjogbm9uZTsgfVxyXG5cclxuICAmOm50aC1jaGlsZCg0bi0yKXsgbWFyZ2luOiBhdXRvOyB9XHJcbiAgJjpudGgtY2hpbGQoNG4tMSl7IG1hcmdpbjogYXV0bzsgfVxyXG4gICY6bnRoLWNoaWxkKDRuKzEpeyBjbGVhcjogbm9uZTsgfVxyXG5cclxuICB3aWR0aDogMTguNCU7XHJcbiAgJjpudGgtY2hpbGQoNW4tMyl7IG1hcmdpbjogMCAxJSAwIDIlOyB9XHJcbiAgJjpudGgtY2hpbGQoNW4tMil7IG1hcmdpbjogMCAxJTsgfVxyXG4gICY6bnRoLWNoaWxkKDVuLTEpeyBtYXJnaW46IDAgMiUgMCAxJTsgfVxyXG4gICY6bnRoLWNoaWxkKDVuKzEpeyBjbGVhcjogYm90aDsgfVxyXG59IiwiLyohIHN0cnVjdHVyZSAtIGxheW91dHMgdjAuMC4xICovXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBHbG9iYWxcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIDEuIEFwcGx5IGEgbmF0dXJhbCBib3ggbGF5b3V0IG1vZGVsIHRvIGFsbCBlbGVtZW50czpcclxuLy8gcGF1bGlyaXNoLmNvbS8yMDEyL2JveC1zaXppbmctYm9yZGVyLWJveC1mdHdcclxuXHJcbioge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbi8vIFNlcGFyYXRlIHVuaXZlcnNhbCBwc3VlZG8gc2VsZWN0b3JzIGZvciBwZXJmb3JtYW5jZVxyXG4vLyBSZW1vdmUgcG9pbnRlci1ldmVudHMgdG8gcHJldmVudCBvdmVybGF5cyBmcm9tIGJlaW5nIGNsaWNrYWJsZVxyXG5cclxuKjpiZWZvcmUsXHJcbio6YWZ0ZXIge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gIGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcclxuICBiYWNrZ3JvdW5kOiAkaHRtbC1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBhbGwgd2Via2l0XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gZmlyZWZveFxyXG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnOyAvLyBpZVxyXG59XHJcblxyXG5ib2R5IHtcclxuICBmb250LXNpemU6ICRib2R5LWZvbnQtc2l6ZTtcclxuICBsaW5lLWhlaWdodDogJGJvZHktbGluZS1oZWlnaHQ7XHJcbiAgY29sb3I6ICRkMTtcclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gVHlwZVxyXG5cclxuLy8gTm90ZTogXCJkZWZhdWx0LWhlYWRpbmcoKVwiIHRha2VzIGNhcmUgb2Y6XHJcbi8vIGZvbnQtd2VpZ2h0LFxyXG4vLyBhbmQgbWFyZ2luLXRvcFxyXG5cclxuLy8gTm90ZTogXCJoZWFkaW5nKClcIiB0YWtlcyBjYXJlIG9mOlxyXG4vLyBmb250LXNpemUsIGxpbmUtaGVpZ2h0LFxyXG4vLyBhbmQgbWFyZ2luLWJvdHRvbVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gIEBpbmNsdWRlIGRlZmF1bHQtaGVhZGluZygpO1xyXG59XHJcblxyXG5oMSwgJWgxLCAuaDEge1xyXG4gIEBpbmNsdWRlIGhlYWRpbmcoICRoMS1zaXplLCAkaDEtbGluZS1oZWlnaHQsICRoMS1tYXJnaW4gKTtcclxuICBjb2xvcjogJGgxLWNvbG9yO1xyXG4gIGZvbnQtZmFtaWx5OiAkc2VyaWY7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuaDIsICVoMiwgLmgyIHtcclxuICBAaW5jbHVkZSBoZWFkaW5nKCAkaDItc2l6ZSwgJGgyLWxpbmUtaGVpZ2h0LCAkaDItbWFyZ2luICk7XHJcbiAgY29sb3I6ICRoMi1jb2xvcjtcclxuICBmb250LWZhbWlseTogJHNlcmlmO1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbmgzLCAlaDMsIC5oMyB7XHJcbiAgQGluY2x1ZGUgaGVhZGluZyggJGgzLXNpemUsICRoMy1saW5lLWhlaWdodCwgJGgzLW1hcmdpbiApO1xyXG4gIGNvbG9yOiAkaDMtY29sb3I7XHJcbiAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbmg0LCAlaDQsIC5oNCB7XHJcbiAgQGluY2x1ZGUgaGVhZGluZyggJGg0LXNpemUsICRoNC1saW5lLWhlaWdodCwgJGg0LW1hcmdpbiApO1xyXG4gIGNvbG9yOiAkaDQtY29sb3I7XHJcbiAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbmg1LCAlaDUsIC5oNSB7XHJcbiAgQGluY2x1ZGUgaGVhZGluZyggJGg1LXNpemUsICRoNS1saW5lLWhlaWdodCwgJGg1LW1hcmdpbiApO1xyXG4gIGNvbG9yOiAkaDUtY29sb3I7XHJcbiAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuaDYsICVoNiwgLmg2IHtcclxuICBAaW5jbHVkZSBoZWFkaW5nKCAkaDYtc2l6ZSwgJGg2LWxpbmUtaGVpZ2h0LCAkaDYtbWFyZ2luICk7XHJcbiAgY29sb3I6ICRoNi1jb2xvcjtcclxuICBmb250LWZhbWlseTogJHNhbnMtc2VyaWY7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxucCB7XHJcbiAgbWFyZ2luLXRvcDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAkcC1tYXJnaW47XHJcbn1cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBBbmNob3JzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG5hIHtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgY29sb3I6ICRtNDtcclxuICB0cmFuc2l0aW9uOlxyXG4gIGJhY2tncm91bmQgLjNzLFxyXG4gIGNvbG9yIC4zcztcclxuXHJcbiAgJjpob3ZlciB7XHJcbiAgICBjb2xvcjogJG0yO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBMaXN0c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxudWwsXHJcbm9sIHtcclxuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXI7XHJcbiAgbWFyZ2luLXRvcDogJHAtbWFyZ2luOyAvLyB1bnRpbCB0b2xkIGRpZmZlcmVudFxyXG4gIG1hcmdpbi1ib3R0b206ICRwLW1hcmdpbjsgLy8gdW50aWwgdG9sZCBkaWZmZXJlbnRcclxufVxyXG5cclxuLy8gSWYgdGhlIGRlc2lnbiBoYXMgcHJldHR5IGxpdHRsZSBpY29ucywgdXNlIG9sIHRvIHN0eWxlIHRoZW0gdXBcclxub2wge1xyXG5cclxuICBsaSB7XHJcblxyXG4gICAgJjpiZWZvcmUge31cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFRhYmxlc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gVGFibGVzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiV0YWJsZS1zdHlsZSB7XHJcbiAgLy9kaXNwbGF5OiBibG9jaztcclxuICBAaW5jbHVkZSBtYXJnaW4teSggJGd1dHRlciApO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcblxyXG4gIHRyIHtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG5cclxuICAgICAgdGgsIHRkIHtcclxuICAgICAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLXdpZHRoICR0YWJsZS1ib3JkZXItc3R5bGUgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuXHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyLXdpZHRoICR0YWJsZS1ib3JkZXItc3R5bGUgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICAgICAgdGgsIHRkIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHt9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7fVxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHRoLFxyXG4gIHRkIHtcclxuICAgIHBhZGRpbmc6ICR0YWJsZS12ZXJ0aWNhbC1wYWRkaW5nICR0YWJsZS1ob3Jpem9udGFsLXBhZGRpbmc7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQtY29sb3I7XHJcblxyXG4gICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAkdGFibGUtYm9yZGVyLXdpZHRoICR0YWJsZS1ib3JkZXItc3R5bGUgJHRhYmxlLWJvcmRlci1jb2xvcjtcclxuICAgIH1cclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBib3JkZXItcmlnaHQ6ICR0YWJsZS1ib3JkZXItd2lkdGggJHRhYmxlLWJvcmRlci1zdHlsZSAkdGFibGUtYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGgge1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG5cclxuICB0ZCB7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHt9XHJcblxyXG4gIH1cclxuXHJcbiAgLy8gWmVicmEgU3RyaXBlXHJcbiAgdHI6bnRoLW9mLXR5cGUob2RkKSB0ZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZC1zdHJpcGUtY29sb3I7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLmZzX3N0eWxlXzIzLFxyXG50YWJsZS5zdHlsZWQge1xyXG4gIEBleHRlbmQgJXRhYmxlLXN0eWxlO1xyXG59XHJcblxyXG4uZnNfc3R5bGVfMjQsXHJcbnRhYmxlLnN0eWxlZC5oZWFkZXItcm93IHtcclxuICBAZXh0ZW5kICV0YWJsZS1zdHlsZTtcclxuXHJcbiAgJj4gdHI6Zmlyc3QtY2hpbGQsXHJcbiAgJj4gdGJvZHkgdHI6Zmlyc3QtY2hpbGQge1xyXG4gICAgdGQge1xyXG4gICAgICBwYWRkaW5nOiAkdGFibGUtaGVhZGVyLXZlcnRpY2FsLXBhZGRpbmcgJHRhYmxlLWhlYWRlci1ob3Jpem9udGFsLXBhZGRpbmc7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgY29sb3I6ICR0YWJsZS1oZWFkZXItY29sb3I7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcclxuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICBmb250LXNpemU6ICR0YWJsZS1oZWFkZXItc2l6ZTtcclxuICAgICAgbGluZS1oZWlnaHQ6ICR0YWJsZS1oZWFkZXItbGluZS1oZWlnaHQ7XHJcbiAgICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCAkdGFibGUtYm9yZGVyLXN0eWxlICR0YWJsZS1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjtcclxuXHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBNZWRpYVxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuaW1nLFxyXG5jYW52YXMsXHJcbnZpZGVvLFxyXG5zdmcge1xyXG4gIGhlaWdodDogYXV0bztcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmlmcmFtZSB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQmxvY2txdW90ZVxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4uZnNfc3R5bGVfMjcsXHJcbmJsb2NrcXVvdGUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46ICRibG9ja3F1b3RlLXZlcnRpY2FsLW1hcmdpbiAkYmxvY2txdW90ZS1ob3Jpem9udGFsLW1hcmdpbjtcclxuICBwYWRkaW5nLWxlZnQ6ICRibG9ja3F1b3RlLW9mZnNldDtcclxuICBmb250LXNpemU6ICRibG9ja3F1b3RlLXNpemU7XHJcbiAgbGluZS1oZWlnaHQ6ICRibG9ja3F1b3RlLWxpbmUtaGVpZ2h0O1xyXG4gIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcclxuICBmb250LWZhbWlseTogJGJsb2NrcXVvdGUtZmFtaWx5O1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblxyXG4gICY6YmVmb3JlIHtcclxuLypcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgY29udGVudDogJ1xcMjAxQyc7XHJcbiovXHJcbiAgfVxyXG5cclxuICAmPiAuZnNfc3R5bGVfMjgsXHJcbiAgJj4gY2l0ZSB7XHJcbiAgICAvL21hcmdpbi1sZWZ0OiAkYmxvY2txdW90ZS1vZmZzZXQ7XHJcbiAgICBtYXJnaW4tdG9wOiAkY2l0YXRpb24tdG9wLW9mZnNldDtcclxuICB9XHJcblxyXG4gICYrIC5mc19zdHlsZV8yOCxcclxuICAmKyBjaXRlIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAkYmxvY2txdW90ZS1vZmZzZXQ7XHJcbiAgICBtYXJnaW4tdG9wOiAoICRibG9ja3F1b3RlLXZlcnRpY2FsLW1hcmdpbiAtICRjaXRhdGlvbi10b3Atb2Zmc2V0ICkgKiAtMSA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS12ZXJ0aWNhbC1tYXJnaW47XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQ2l0ZVxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4uZnNfc3R5bGVfMjgsXHJcbmNpdGUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG1hcmdpbjogJGd1dHRlciAwO1xyXG4gIGZvbnQtc2l6ZTogJGNpdGF0aW9uLXNpemU7XHJcbiAgbGluZS1oZWlnaHQ6ICRjaXRhdGlvbi1saW5lLWhlaWdodDtcclxuICBjb2xvcjogJGNpdGF0aW9uLWNvbG9yO1xyXG4gIGZvbnQtZmFtaWx5OiAkY2l0YXRpb24tZmFtaWx5O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG5cclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnfiAnO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gRm9udCBJbmNsdWRlc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJGZvbnQtaWNvbjtcclxuXHJcbiAgc3JjOiB1cmwoJyN7JGZvbnQtZGlyfS9pY29tb29uLyN7JGZvbnQtaWNvbW9vbi1maWxlbmFtZX0uZW90PyN7JGJvdW5kcnl9I3skZm9udC1pY29tb29uLWZpbGVuYW1lfScpO1xyXG4gIHNyYzogdXJsKCcjeyRmb250LWRpcn0vaWNvbW9vbi8jeyRmb250LWljb21vb24tZmlsZW5hbWV9LmVvdD8jaWVmaXg/I3skYm91bmRyeX0jeyRmb250LWljb21vb24tZmlsZW5hbWV9JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgdXJsKCcjeyRmb250LWRpcn0vaWNvbW9vbi8jeyRmb250LWljb21vb24tZmlsZW5hbWV9LndvZmYyPyN7JGJvdW5kcnl9I3skZm9udC1pY29tb29uLWZpbGVuYW1lfScpIGZvcm1hdCgnd29mZjInKSxcclxuICAgIHVybCgnI3skZm9udC1kaXJ9L2ljb21vb24vI3skZm9udC1pY29tb29uLWZpbGVuYW1lfS50dGY/I3skYm91bmRyeX0jeyRmb250LWljb21vb24tZmlsZW5hbWV9JykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgdXJsKCcjeyRmb250LWRpcn0vaWNvbW9vbi8jeyRmb250LWljb21vb24tZmlsZW5hbWV9LndvZmY/I3skYm91bmRyeX0jeyRmb250LWljb21vb24tZmlsZW5hbWV9JykgZm9ybWF0KCd3b2ZmJyksXHJcbiAgICB1cmwoJyN7JGZvbnQtZGlyfS9pY29tb29uLyN7JGZvbnQtaWNvbW9vbi1maWxlbmFtZX0uc3ZnPyN7JGJvdW5kcnl9IyN7JGZvbnQtaWNvbW9vbi1maWxlbmFtZX0nKSBmb3JtYXQoJ3N2ZycpO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5bY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udC1pY29uO1xyXG4gIHNwZWFrOiBub25lO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG5cclxuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBJY29uIENsYXNzZXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLmljb24tcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtcGx1czsgfVxyXG4uaWNvbi1taW51czpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtbWludXM7IH1cclxuLmljb24tY2xvc2U6YmVmb3JlIHsgY29udGVudDogJGdseXBoLWNsb3NlOyB9XHJcbi5pY29uLWNoZXZyb24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtY2hldnJvbi1sZWZ0OyB9XHJcbi5pY29uLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGdseXBoLWNoZXZyb24tcmlnaHQ7IH1cclxuLmljb24tY2hldnJvbi11cDpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtY2hldnJvbi11cDsgfVxyXG4uaWNvbi1jaGV2cm9uLWRvd246YmVmb3JlIHsgY29udGVudDogJGdseXBoLWNoZXZyb24tZG93bjsgfVxyXG4uaWNvbi1hbmdsZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRnbHlwaC1hbmdsZS1sZWZ0OyB9XHJcbi5pY29uLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRnbHlwaC1hbmdsZS1yaWdodDsgfVxyXG4uaWNvbi1hbmdsZS11cDpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtYW5nbGUtdXA7IH1cclxuLmljb24tYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtYW5nbGUtZG93bjsgfVxyXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtZmFjZWJvb2s7IH1cclxuLmljb24tdHdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtdHdpdHRlcjsgfVxyXG4uaWNvbi1saW5rZWRpbjpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtbGlua2VkaW47IH1cclxuLmljb24teW91dHViZS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICRnbHlwaC15b3V0dWJlLXBsYXk7IH1cclxuLmljb24tZmVlZDpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtZmVlZDsgfVxyXG4uaWNvbi1nb29nbGUtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtZ29vZ2xlLXBsdXM7IH1cclxuLmljb24taW5zdGFncmFtOmJlZm9yZSB7IGNvbnRlbnQ6ICRnbHlwaC1pbnN0YWdyYW07IH1cclxuLmljb24tc2VhcmNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRnbHlwaC1zZWFyY2g7IH1cclxuLmljb24tYmFyczpiZWZvcmUgeyBjb250ZW50OiAkZ2x5cGgtYmFyczsgfVxyXG4uaWNvbi1zcGlubmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRnbHlwaC1zcGlubmVyOyB9XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFBhZ2UgQ29udGFpbmVyXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiNmc1BhZ2VXcmFwcGVyIHtcclxuXHJcbn1cclxuXHJcbiNmc1BhZ2VCb2R5V3JhcHBlciB7XHJcbiAgQGluY2x1ZGUgcGFkZGluZy14O1xyXG4gIEBpbmNsdWRlIHBhZGRpbmcteSgkZ3V0dGVyICogMik7XHJcbiAgYmFja2dyb3VuZDogJHBhZ2UtY29udGVudC1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHotaW5kZXg6IDA7XHJcblxyXG4gIC5oYXMtdGllci1uYXZpZ2F0aW9uICYge1xyXG4gICAgQGluY2x1ZGUgcGFkZGluZy15KCRndXR0ZXIgKiAwKTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICBAaW5jbHVkZSBwYWRkaW5nLXkoJGd1dHRlciAqIDIpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2ZzUGFnZUJvZHkge1xyXG4gIEBpbmNsdWRlIGNvbXBhcnRtZW50O1xyXG5cclxuICAuaG9tZSAmIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIG1heC13aWR0aDogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbiNmc1BhZ2VDb250ZW50IHt9XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQ29tbW9uIENvbHVtbnNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuJGxiLXdpZHRoLWxpc3Q6IHBlcmNlbnRhZ2UoMS8xKSwgcGVyY2VudGFnZSggMjIwIC8gNzAwICksICRsYi13aWR0aDtcclxuXHJcbiNmc0Jhbm5lckxlZnQge1xyXG4gIEBpbmNsdWRlIGxheW91dC1jb2x1bW47XHJcbiAgLy9kaXNwbGF5OiBub25lO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgcGFkZGluZy1yaWdodDogJGxiLXBhZGRpbmctcmlnaHQ7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiBudGgoJGxiLXdpZHRoLWxpc3QsMik7IC8vJGxiLXdpZHRoO1xyXG5cclxuICAgIC5mc092ZXJyaWRlTGVmdEJhbm5lciAmIHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgd2lkdGg6IG50aCgkbGItd2lkdGgtbGlzdCwzKTtcclxuICB9XHJcblxyXG59XHJcblxyXG4uZnNCYW5uZXJMZWZ0IHtcclxuICAmLm1vYmlsZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jZnNQYWdlQ29udGVudCB7XHJcbiAgQGluY2x1ZGUgbGF5b3V0LWNvbHVtbih0cnVlKTtcclxuICBtYXJnaW46IDA7XHJcbiAgLmZzSGFzUmlnaHRCYW5uZXIgJiB7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgd2lkdGg6IDEwMCUgLSAkcmItd2lkdGggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuZnNIYXNMZWZ0QmFubmVyICYge1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlIC0gbnRoKCRsYi13aWR0aC1saXN0LDIpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmZzSGFzTGVmdEJhbm5lci5mc092ZXJyaWRlTGVmdEJhbm5lciAmIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZnNIYXNMZWZ0QmFubmVyLmZzSGFzUmlnaHRCYW5uZXIgJiB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcigpO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlIC0gbnRoKCRsYi13aWR0aC1saXN0LDIpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlIC0gbnRoKCRsYi13aWR0aC1saXN0LDMpIC0gJHJiLXdpZHRoICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmZzSGFzTGVmdEJhbm5lci5mc0hhc1JpZ2h0QmFubmVyLmZzT3ZlcnJpZGVMZWZ0QmFubmVyICYge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgLmZzT3ZlcnJpZGVMZWZ0QmFubmVyICYge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNmc0Jhbm5lclJpZ2h0IHtcclxuICBAaW5jbHVkZSBsYXlvdXQtY29sdW1uO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRyYi1wYWRkaW5nLWxlZnQ7XHJcbiAgICB3aWR0aDogJHJiLXdpZHRoO1xyXG4gIH1cclxuXHJcbiAgLmZzSGFzTGVmdEJhbm5lciAmIHtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6ICNmMDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlIC0gbnRoKCRsYi13aWR0aC1saXN0LDIpO1xyXG4gICAgICBtYXJnaW4tbGVmdDogbnRoKCRsYi13aWR0aC1saXN0LCAyKTtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAkcmItcGFkZGluZy1sZWZ0O1xyXG4gICAgICB3aWR0aDogJHJiLXdpZHRoO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmZzSGFzTGVmdEJhbm5lci5mc092ZXJyaWRlTGVmdEJhbm5lciAmIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBDb21tb24gTGF5b3V0XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uZnNMYXlvdXQge1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1jcmVhdGUtY29sdW1ucykge1xyXG4gICAgQGluY2x1ZGUgbWFyZ2luLXgoJGd1dHRlciAqIC0xKTtcclxuICB9XHJcblxyXG4gIC5mc0RpdiB7XHJcbiAgICBAaW5jbHVkZSBsYXlvdXQtY29sdW1uO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWNyZWF0ZS1jb2x1bW5zKSB7XHJcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcteDtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gMWNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIE5vIENoYW5nZXNcclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyAyY1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmZzVHdvQ29sdW1uTGF5b3V0IHtcclxuXHJcbiAgLmZzRGl2IHtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC0yLWNvbHVtbikge1xyXG4gICAgICB3aWR0aDogY3AoMSwgMik7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyAzY1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmZzVGhyZWVDb2x1bW5MYXlvdXQge1xyXG5cclxuICAuZnNEaXYge1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLTMtY29sdW1uKSB7XHJcbiAgICAgIHdpZHRoOiBjcCgxLCAzKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIDRjXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uZnNGb3VyQ29sdW1uTGF5b3V0IHtcclxuXHJcbiAgLmZzRGl2IHtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC0yLWNvbHVtbikge1xyXG4gICAgICB3aWR0aDogY3AoMSwgMik7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtNC1jb2x1bW4pIHtcclxuICAgICAgd2lkdGg6IGNwKDEsIDQpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gMmMtMWNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIE5vIENoYW5nZXNcclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyAxYy0yY1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gTm8gQ2hhbmdlc1xyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIDNjLTFjXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyBObyBDaGFuZ2VzXHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gMWMtM2NcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi8vIE5vIENoYW5nZXNcclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyAxYy0yYy0xY1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gTm8gQ2hhbmdlc1xyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIDFjLTNjLTFjXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4vLyBObyBDaGFuZ2VzXHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gRWxlcGhhbnRzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uZnNMYXlvdXQge1xyXG5cclxuICAuZnNTdHlsZVR3b1RoaXJkcyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1lbGVwaGFudC1jb2x1bW4pIHtcclxuICAgICAgd2lkdGg6IGNwKDIsIDMpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5mc1N0eWxlT25lVGhpcmQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZWxlcGhhbnQtY29sdW1uKSB7XHJcbiAgICAgIHdpZHRoOiBjcCgxLCAzKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIDFjLTJjLTFyY1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIDFsYy0xYy0yY1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4iLCIuZnNBY2NvcmRpb24ge1xyXG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XHJcblxyXG4gIEBpbmNsdWRlIHNoYXJlZC1hY2NvcmRpb24tZnNQYW5lbCgpO1xyXG5cclxufVxyXG5cclxuLy9jcmF6aW5lc3MgdG8gb3ZlcnJpZGUgYXBwbGljYXRpb24gY3NzIGZvciBpY29uXHJcbi5mc0FjY29yZGlvbi5mc1BhbmVsSWNvbkJlZm9yZSAuZnNQYW5lbC5mc1N0YXRlT3Blbj5oZWFkZXIgaDI6OmJlZm9yZSxcclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQWZ0ZXIgLmZzUGFuZWwuZnNTdGF0ZU9wZW4+aGVhZGVyIGgyOjphZnRlcixcclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQWZ0ZXIgLmZzUGFuZWw+aGVhZGVyIGgyOjphZnRlcixcclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQmVmb3JlIC5mc1BhbmVsPmhlYWRlciBoMjo6YmVmb3JlIHtcclxuICBAaW5jbHVkZSBmb250LWljb24oICRnbHlwaC1jbG9zZSApO1xyXG4gIGZvbnQtc2l6ZTogJGFjY29yZGlvbnMtaWNvbi1zaXplO1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICB3aWR0aDogYXV0bztcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5mc0FjY29yZGlvbi5mc1BhbmVsSWNvbkJlZm9yZSAuZnNQYW5lbC5mc1N0YXRlT3Blbj5oZWFkZXIgaDI6OmJlZm9yZSxcclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQWZ0ZXIgLmZzUGFuZWwuZnNTdGF0ZU9wZW4+aGVhZGVyIGgyOjphZnRlciB7XHJcbiAgY29udGVudDogJGFjY29yZGlvbnMtaWNvbi1jbG9zZTtcclxufVxyXG5cclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQWZ0ZXIgLmZzUGFuZWw+aGVhZGVyIGgyOjphZnRlcixcclxuLmZzQWNjb3JkaW9uLmZzUGFuZWxJY29uQmVmb3JlIC5mc1BhbmVsPmhlYWRlciBoMjo6YmVmb3JlIHtcclxuICBjb250ZW50OiAkYWNjb3JkaW9ucy1pY29uLW9wZW47XHJcbn1cclxuXHJcbi5mc0FjY29yZGlvbi5mc1BhbmVsSWNvbkJlZm9yZSAuZnNQYW5lbD5oZWFkZXIgaDI6OmJlZm9yZSB7XHJcbiAgbWFyZ2luOiAtM3B4ICRndXR0ZXIgMCAwO1xyXG59XHJcblxyXG4uZnNBY2NvcmRpb24uZnNQYW5lbEljb25BZnRlciAuZnNQYW5lbD5oZWFkZXIgaDIge1xyXG4gICY6YmVmb3JlIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gICY6YWZ0ZXIge1xyXG4gICAgbWFyZ2luOiAwIDAgMCAkZ3V0dGVyO1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxufVxyXG4iLCIvKiEgZWxlbWVudHMgLSBjYWxlbmRhciB2MC4wLjEgKi9cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIExpc3RcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcblxyXG4uZnNDYWxlbmRhciB7XHJcbiAgQGluY2x1ZGUgc2hhcmVkLWNvbnRlbnQtYmxvY2soKTtcclxuXHJcbiAgYXJ0aWNsZSB7XHJcbiAgICBAaW5jbHVkZSBzaGFyZWQtY2FsZW5kYXItbmV3cy1ibG9jaygpO1xyXG5cclxuICAgIC8vIFByb3ZpZGVzIHNwYWNlIGZvciB0aGUgZmxvYXRpbmcgZGF0ZVxyXG4gICAgLy8gVGhpcyBpcyBzZXQgdXAgaW4gY29uZmlnIGZpbGVcclxuICAgIEBpZiAkZmxvYXRpbmctZGF0ZSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgLy8gODAgcmVmZXJzIHRvIHRoZSBoZWlnaHQgb2YgdGhlIGZsb2F0aW5nLWRhdGVcclxuICAgICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcclxuICAgICAgbWluLWhlaWdodDogODBweDtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuZnNUaXRsZSB7XHJcbiAgICBAaW5jbHVkZSBzaGFyZWQtY2FsZW5kYXItbmV3cy10aXRsZS1zdHlsZSgpO1xyXG4gIH1cclxuXHJcbiAgLmZzRGF0ZSB7XHJcblxyXG4gICAgQGluY2x1ZGUgc2hhcmVkLWNhbGVuZGFyLW5ld3MtZGF0ZS1zdHlsZSgpO1xyXG5cclxuICAgIC8vIFBvc2l0aW9uIHRoZSBkYXRlIHRvIHRoZSBsZWZ0IG9mIHRoZSBldmVudCBkZXRhaWxzXHJcbiAgICBAaWYgJGZsb2F0aW5nLWRhdGUge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICB3aWR0aDogODBweDtcclxuICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkbTE7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE1vbiBGZWIgMTJcclxuICAgIHNwYW4ge1xyXG5cclxuICAgICAgQGlmICRmbG9hdGluZy1kYXRlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAvLyBNb25cclxuICAgIC5mc0RheU5hbWUge31cclxuXHJcbiAgICAvLyBGZWJcclxuICAgIC5mc01vbnRoIHt9XHJcblxyXG4gICAgLy8gMTJcclxuICAgIC5mc0RheSB7fVxyXG5cclxuICB9XHJcblxyXG4gIC5mc0V2ZW50RGV0YWlscyB7fVxyXG5cclxuICAuZnNUaW1lUmFuZ2Uge1xyXG5cclxuICAgIEBpbmNsdWRlIHNoYXJlZC1jYWxlbmRhci1uZXdzLXRleHQtc3R5bGUoKTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcblxyXG4gICAgICBAaWYgJGV2ZW50LWljb25zIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcclxuICAgICAgICBAaW5jbHVkZSBmb250LWljb24oJ1xcZjAxNycpO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5mc0xvY2F0aW9uIHtcclxuXHJcbiAgICBAaW5jbHVkZSBzaGFyZWQtY2FsZW5kYXItbmV3cy10ZXh0LXN0eWxlKCk7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG5cclxuICAgICAgQGlmICRldmVudC1pY29ucyB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1pY29uKCdcXGYwNDEnKTtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vIHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4XHJcbi8vIERhbmdlciBab25lXHJcbi8vIHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBHcmlkXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uZnNDYWxlbmRhck1vbnRoQnJvd3NlciB7XHJcbiAgLmZzQ2FsZW5kYXJQcmV2TW9udGgsIC5mc0NhbGVuZGFyTmV4dE1vbnRoIHtcclxuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgQGluY2x1ZGUgZm9udC1pY29uKCRnbHlwaC1hbmdsZS1sZWZ0KTtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgY29sb3I6ICRtMTtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZnNDYWxlbmRhck5leHRNb250aCB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICRnbHlwaC1hbmdsZS1yaWdodDtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuLy9ncmlkIGNhbGVuZGFyIG1vYmlsaXR5IGZ1bmN0aW9uYWxpdHkgYW5kIHN0eWxpbmdcclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICgkYnAtbGFuZHNjYXBlIC0gMSkpIHtcclxuXHJcbiAgLmZzQ2FsZW5kYXIuZnNHcmlkIC5mc0NhbGVuZGFyRXZlbnRHcmlkIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgLmZzQ2FsZW5kYXJNb250aEJyb3dzZXIge1xyXG4gICAgICBtYXJnaW46IDIwcHggMDtcclxuICAgIH1cclxuICAgIC5mc0NhbGVuZGFyRGF5Ym94LFxyXG4gICAgLmZzQ2FsZW5kYXJPdXRPZlJhbmdlIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCAxIC8gNyApICFpbXBvcnRhbnQ7XHJcbiAgICAgIGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbiFpbXBvcnRhbnQ7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAmLmZzQ2FsZW5kYXJXZWVrZW5kRGF5Qm94IHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgPmRpdiB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xyXG4gICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGcwO1xyXG5cclxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcHg7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtMTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG1peCggJG0xLCAkY29sb3Itd2hpdGUsIDYwJSApO1xyXG5cclxuXHJcbiAgICAgICAgLmZzQ2FsZW5kYXJEYXRlIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAuZnNDYWxlbmRhckRhdGUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICB0b3A6IDVweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZnNDYWxlbmRhclJvdyB7XHJcbiAgICAgIC8vIGZsb2F0OiBsZWZ0O1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgfVxyXG5cclxuICAgIC5mc0NhbGVuZGFySW5mbyB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxufVxyXG5cclxuI2V2ZW50LXZpZXcge1xyXG4gIHBhZGRpbmc6IDIwcHg7XHJcbiAgbWFyZ2luOiAyMHB4IGF1dG8gMDtcclxuICAuZnNDYWxlbmRhckRheWJveCB7XHJcbiAgICBoZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xyXG5cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5zY3JvbGwtdXAge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZnNDYWxlbmRhcldlZWtlbmREYXlCb3hmc0NhbGVuZGFyT3V0T2ZSYW5nZSA+IGRpdjpsYXN0LWNoaWxkIHtcclxuICAuZnNDYWxlbmRhckRhdGUge1xyXG4gICAgdG9wOiBhdXRvIWltcG9ydGFudDtcclxuICAgIGJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuXHJcbi5mc0NhbGVuZGFyRXZlbnRHcmlkIC5mc0NhbGVuZGFyV2Vla2RheXMgc3BhbiB7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG5cclxuICBmb250LXNpemU6IDE0cHg7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuLy8gTW9udGggU2VsZWN0b3JcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi5mc0NhbGVuZGFyTW9udGhCcm93c2VyIHtcclxuXHJcbiAgYnV0dG9uIHt9XHJcblxyXG4gIEBhdC1yb290IC5mc0NhbGVuZGFyUHJldk1vbnRoIHt9XHJcblxyXG4gIEBhdC1yb290IC5mc0NhbGVuZGFyTmV4dE1vbnRoIHt9XHJcblxyXG59XHJcblxyXG5cclxuLy8gV2Vla2RheSBIZWFkZXJzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uZnNDYWxlbmRhcldlZWtkYXlzIHtcclxuXHJcbiAgc3BhbiB7fVxyXG5cclxufVxyXG5cclxuXHJcbi8vIEluZGl2aWR1YWwgRGF5c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmZzQ2FsZW5kYXJSb3cge31cclxuXHJcbi5mc0NhbGVuZGFyRGF5Ym94IHtcclxuXHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG5cclxuICAuZnNDYWxlbmRhclJvdyAmIHtcclxuICAgICYuaGFzLWluZm8ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBtaXgoICRtMiwgJGNvbG9yLXdoaXRlLCAzMCUgKTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAYXQtcm9vdCAuZnNDYWxlbmRhck91dE9mUmFuZ2Uge31cclxuXHJcbiAgQGF0LXJvb3QgLmZzQ2FsZW5kYXJFdmVudEdyaWQgLmZzQ2FsZW5kYXJSb3cgLmZzQ2FsZW5kYXJUb2RheSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBtaXgoICRtMywgJGNvbG9yLXdoaXRlLCAzMCUgKTtcclxuICB9XHJcblxyXG4gIEBhdC1yb290IC5mc0NhbGVuZGFyV2Vla2VuZERheUJveCB7fVxyXG5cclxuICAuZnNDYWxlbmRhckRhdGUge31cclxuXHJcbiAgLmZzQ2FsZW5kYXJEYXkge31cclxuXHJcbiAgLmZzQ2FsZW5kYXJNb250aCB7fVxyXG5cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIENhbGVuZGFyICYgQ2F0ZWdvcnkgTGVnZW5kXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi5mc0VsZW1lbnRFdmVudENvbG9ySWNvbiB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiAxMHB4O1xyXG4gIGhlaWdodDogMTBweDtcclxufVxyXG5cclxuLmZzQ2FsZW5kYXJMZWdlbmQge1xyXG4gIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XHJcbiAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBoNCB7XHJcblxyXG4gIH1cclxuICA+IHVsIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLW1lZGl1bSkge1xyXG4gICAgICBjb2x1bW4tY291bnQ6IDI7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYXJnZSkge1xyXG4gICAgICBjb2x1bW4tY291bnQ6IDM7XHJcbiAgICB9XHJcbiAgICBsaSB7IH1cclxuICAgIHVsIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgIGxpIHsgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIi8qISBlbGVtZW50cyAtIGNvbnN0aXR1ZW50IHYwLjAuMSAqL1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gTGlzdFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmZzQ29uc3RpdHVlbnQge1xyXG5cclxuICAuZnNFbGVtZW50UGFnaW5hdGlvbiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xyXG4gIH1cclxuXHJcbiAgQGF0LXJvb3QgLmZzQ29uc3RpdHVlbnRJdGVtIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW46IDAgYXV0byAkZ3V0dGVyO1xyXG4gICAgcGFkZGluZy1ib3R0b206ICRndXR0ZXI7XHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgjMDAwLCAuMSk7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtY3JlYXRlLWNvbHVtbnMpIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICBAaWYgbm90ICRwaW50ZXJlc3QtZGlyZWN0b3J5IHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMSU7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxJTtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICA+ICoge1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXI7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmZzUGhvdG8ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMCU7XHJcbiAgICBtYXJnaW46ICggJGd1dHRlciAqIDAuNSApIGF1dG87XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBoYWJsZXQpIHtcclxuICAgICAgd2lkdGg6IDE1MHB4O1xyXG4gICAgICBoZWlnaHQ6IDE1MHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZ3V0dGVyO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBmbG9hdDogbm9uZTtcclxuXHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuXHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG5cclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5mc0Z1bGxOYW1lIHtcclxuICAgIHBhZGRpbmctdG9wOiAkZ3V0dGVyO1xyXG5cclxuICAgIGEge31cclxuXHJcbiAgfVxyXG5cclxuICAuZnNFbWFpbCB7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbi8vIHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4XHJcbi8vIERhbmdlciBab25lXHJcbi8vIHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4XHJcblxyXG4vLyBHZW5lcmljIENvbHVtblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuW2NsYXNzXj0nZnNDb25zdGl0dWVudENvbHVtbkxheW91dCddIHtcclxuXHJcbiAgQGlmICRwaW50ZXJlc3QtZGlyZWN0b3J5IHtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1jcmVhdGUtY29sdW1ucykge1xyXG4gICAgICBjb2x1bW4tZ2FwOiAkZ3V0dGVyO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuLy8gT25lIENvbHVtblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmZzQ29uc3RpdHVlbnRDb2x1bW5MYXlvdXRfMSB7XHJcblxyXG4gIC5mc0NvbnN0aXR1ZW50SXRlbSB7fVxyXG5cclxufVxyXG5cclxuXHJcbi8vIFR3byBDb2x1bW5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi5mc0NvbnN0aXR1ZW50Q29sdW1uTGF5b3V0XzIge1xyXG5cclxuICBAaWYgJHBpbnRlcmVzdC1kaXJlY3Rvcnkge1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLTItY29sdW1uKSB7XHJcbiAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xyXG4gICAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcclxuICAgICAgY29sdW1uLWNvdW50OiAyO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5mc0NvbnN0aXR1ZW50SXRlbSB7XHJcblxyXG4gICAgQGlmIG5vdCAkcGludGVyZXN0LWRpcmVjdG9yeSB7XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC0yLWNvbHVtbikge1xyXG4gICAgICAgIHdpZHRoOiA1MCUgLSAzJTtcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLyBUaHJlZSBDb2x1bW5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbi5mc0NvbnN0aXR1ZW50Q29sdW1uTGF5b3V0XzMge1xyXG5cclxuICBAaWYgJHBpbnRlcmVzdC1kaXJlY3Rvcnkge1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLTItY29sdW1uKSB7XHJcbiAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xyXG4gICAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcclxuICAgICAgY29sdW1uLWNvdW50OiAyO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLTMtY29sdW1uKSB7XHJcbiAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzO1xyXG4gICAgICAtbW96LWNvbHVtbi1jb3VudDogMztcclxuICAgICAgY29sdW1uLWNvdW50OiAzO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5mc0NvbnN0aXR1ZW50SXRlbSB7XHJcblxyXG4gICAgQGlmIG5vdCAkcGludGVyZXN0LWRpcmVjdG9yeSB7XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC0yLWNvbHVtbikge1xyXG4gICAgICAgIHdpZHRoOiA1MCUgLSAzJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtMy1jb2x1bW4pIHtcclxuICAgICAgICB3aWR0aDogMzMlIC0gMyU7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLyBGb3VyIENvbHVtblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmZzQ29uc3RpdHVlbnRDb2x1bW5MYXlvdXRfNCB7XHJcblxyXG4gIEBpZiAkcGludGVyZXN0LWRpcmVjdG9yeSB7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtMi1jb2x1bW4pIHtcclxuICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XHJcbiAgICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xyXG4gICAgICBjb2x1bW4tY291bnQ6IDI7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtMy1jb2x1bW4pIHtcclxuICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDM7XHJcbiAgICAgIC1tb3otY29sdW1uLWNvdW50OiAzO1xyXG4gICAgICBjb2x1bW4tY291bnQ6IDM7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtNC1jb2x1bW4pIHtcclxuICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDQ7XHJcbiAgICAgIC1tb3otY29sdW1uLWNvdW50OiA0O1xyXG4gICAgICBjb2x1bW4tY291bnQ6IDQ7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLmZzQ29uc3RpdHVlbnRJdGVtIHtcclxuXHJcbiAgICBAaWYgbm90ICRwaW50ZXJlc3QtZGlyZWN0b3J5IHtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLTItY29sdW1uKSB7XHJcbiAgICAgICAgd2lkdGg6IDUwJSAtIDMlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC0zLWNvbHVtbikge1xyXG4gICAgICAgIHdpZHRoOiAzMyUgLSAzJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtNC1jb2x1bW4pIHtcclxuICAgICAgICB3aWR0aDogMjUlIC0gMyU7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBQcm9maWxlXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uZnNDb25zdGl0dWVudFByb2ZpbGUge31cclxuXHJcbi5mc1Byb2ZpbGVTZWN0aW9uIHtcclxuICBtYXJnaW4tYm90dG9tOiBjZSgkZ3V0dGVyKTtcclxuXHJcbiAgLmZzUHJvZmlsZVNlY3Rpb25TcGVjaWFsRGF0YSB7XHJcbiAgICAmPiBkaXYge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgIGZsb2F0OiBub25lO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuMjRlbTtcclxuICAgICAgICAmICsgZGl2IHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgIHdpZHRoOiA3NCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFNlYXJjaFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmZzQ29uc3RpdHVlbnQuZnNTZWFyY2gge1xyXG4gIG1hcmdpbjogMCAwIDMwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRnMDtcclxuXHJcbiAgPi5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIG1hcmdpbjogMCAtMTBweDtcclxuICB9XHJcblxyXG4gIGxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogY2UoJGd1dHRlcik7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtY3JlYXRlLWNvbHVtbnMpIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICB3aWR0aDogY3AoMSwgMikgLSAuNSU7XHJcbiAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC0zLWNvbHVtbikge1xyXG4gICAgICB3aWR0aDogY3AoMSwgMykgLSAuNSU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgaW5wdXQsXHJcbiAgc2VsZWN0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBbdHlwZSo9J3N1Ym1pdCddIHtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWNyZWF0ZS1jb2x1bW5zKSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBjZSgkZ3V0dGVyIC8gMik7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgLy8gLmZzQ29uc3RpdHVlbnRTZWFyY2hCdXR0b24gLSB0aGlzIHB1bGxzIHRoZSBidXR0b24gbWl4aW4gZnJvbSB0aGUgX2J1dHRvbnMuc2NzcyBwYXJ0aWFsLFxyXG4gIC8vIGEgZ29vZCB0aGluZyB0byB0YWtlIGFkdmFudGFnZSBvZiBzdHlsaW5nIGluIHRoZSBidWlsZCBhcyBpdCB3aWxsIGNhc2NhZGUgdGhyb3VnaCB0aGUgc2l0ZVxyXG4gIC5mc0NvbnN0aXR1ZW50U2VhcmNoQnV0dG9uIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbiggJG0yICk7XHJcbiAgICBtYXJnaW46IDAgMTBweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICB9XHJcblxyXG59XHJcblxyXG4uZnNFbGVtZW50UGFnaW5hdGlvbiB7XHJcbiAgbWFyZ2luOiAyMHB4IDA7XHJcbn0iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBDYXB0aW9uXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uY2FwdGlvbiB7XHJcblxyXG4gIC8vZGlzcGxheTogbm9uZTsvL3RlbXBcclxuXHJcbiAgZm9udC1zaXplOiBjZSggJGNhcHRpb24tc2l6ZSApO1xyXG4gIGxpbmUtaGVpZ2h0OiAkY2FwdGlvbi1saW5lLWhlaWdodDtcclxuICBtYXJnaW4tYm90dG9tOiAoICRjYXB0aW9uLXNpemUgKiAkY2FwdGlvbi1saW5lLWhlaWdodCApIC8gMjsgLy8gYXMgZ29vZCBhIHN0YXJ0aW5nIHBvaW50IGFzIGFueVxyXG4gIGNvbG9yOiAkY2FwdGlvbi1jb2xvcjtcclxuICBmb250LWZhbWlseTogJHNlcmlmO1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblxyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBMZWFkIEluXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi5mc19zdHlsZV8yOSxcclxuLmxlYWQtaW4ge1xyXG5cclxuICBmb250LXNpemU6IGNlKCRsZWFkLWluLXNpemUpO1xyXG4gIGxpbmUtaGVpZ2h0OiBzdSggJGxlYWQtaW4tbGluZS1oZWlnaHQgKSAvIHN1KCAkbGVhZC1pbi1zaXplICk7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGxlYWQtaW4tbWFyZ2luO1xyXG4gIGNvbG9yOiAkbGVhZC1pbi1jb2xvcjtcclxuICBmb250LWZhbWlseTogJGxlYWQtaW4tZmFtaWx5O1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyAoVGV4dCkgQ2FsbG91dFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4uZnNfc3R5bGVfMzAsXHJcbi5jYWxsb3V0Om5vdCguYnV0dG9uKSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luOiAkZ3V0dGVyIDA7XHJcbiAgYmFja2dyb3VuZDogJGNhbGxvdXQtYmFja2dyb3VuZC1jb2xvcjtcclxuICBmb250LXNpemU6ICRjYWxsb3V0LXNpemU7XHJcbiAgbGluZS1oZWlnaHQ6ICRjYWxsb3V0LWxpbmUtaGVpZ2h0O1xyXG4gIGNvbG9yOiAkY2FsbG91dC1jb2xvcjtcclxuICBmb250LWZhbWlseTogJGNhbGxvdXQtZmFtaWx5O1xyXG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcblxyXG4gIC8vIG5vdGU6IHRoaXMgdGhlbWUgZG9lc24ndCBjYWxsIGZvciBmbG9hdGluZ1xyXG4vKiAgJi5sZWZ0IHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRndXR0ZXI7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcGhhYmxldCkge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gICYucmlnaHQge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBoYWJsZXQpIHtcclxuICAgICAgd2lkdGg6IDUwJTtcclxuICAgIH1cclxuXHJcbiAgfSovXHJcblxyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBCYW5uZXIgQmxvY2tzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi5jb250ZW50LWJsb2NrIHtcclxuICBAaW5jbHVkZSBzaGFyZWQtY29udGVudC1ibG9jaygpO1xyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBFeHRlbmRlZCBCdXR0b25zXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi5mc19zdHlsZV8yNSxcclxuLmJ1dHRvbiB7XHJcbiAgQGluY2x1ZGUgZGVmYXVsdC1idXR0b24tdHlwZSgpO1xyXG4gIEBpbmNsdWRlIGJ1dHRvbigkYnV0dG9ucy1iYWNrZ3JvdW5kLWNvbG9yLCAkYnV0dG9ucy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyLCAkYnV0dG9ucy1jb2xvciwgJGJ1dHRvbnMtY29sb3ItaG92ZXIpO1xyXG4gIGJvcmRlcjogJGJ1dHRvbnMtYm9yZGVyLXdpZHRoICRidXR0b25zLWJvcmRlci1zdHlsZSB0cmFuc3BhcmVudDtcclxuICAmOmhvdmVyIHtcclxuICAgIGJvcmRlcjogJGJ1dHRvbnMtYm9yZGVyLXdpZHRoICRidXR0b25zLWJvcmRlci1zdHlsZSAkYnV0dG9ucy1ib3JkZXItY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQ2FsbG91dCBCdXR0b25cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLmZzX3N0eWxlXzI2LFxyXG4uYnV0dG9uLmNhbGxvdXQge1xyXG4gIEBpbmNsdWRlIGRlZmF1bHQtYnV0dG9uLXR5cGUoKTtcclxuXHJcbiAgQGluY2x1ZGUgYnV0dG9uLWNhbGxvdXQoJGJ1dHRvbnMtYmFja2dyb3VuZC1jb2xvciwgJGJ1dHRvbnMtYmFja2dyb3VuZC1jb2xvci1ob3ZlciwgJGJ1dHRvbnMtY29sb3IsICRidXR0b25zLWNvbG9yLWhvdmVyKTtcclxuICBib3JkZXI6ICRidXR0b25zLWNhbGxvdXQtYm9yZGVyLXdpZHRoICRidXR0b25zLWNhbGxvdXQtYm9yZGVyLXN0eWxlIHRyYW5zcGFyZW50O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYm9yZGVyOiAkYnV0dG9ucy1jYWxsb3V0LWJvcmRlci13aWR0aCAkYnV0dG9ucy1jYWxsb3V0LWJvcmRlci1zdHlsZSAkYnV0dG9ucy1jYWxsb3V0LWJvcmRlci1jb2xvcjtcclxuICB9XHJcblxyXG4gICNmc0Jhbm5lckxlZnQgJixcclxuICAjZnNCYW5uZXJSaWdodCAmIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQ29udGVudCBJbWFnZXNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLmZzX3N0eWxlXzE1LCAvL2xlZnRcclxuLmZzX3N0eWxlXzE2LCAvL3JpZ2h0XHJcbi5mc19zdHlsZV8xNyB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgd2lkdGg6IDEwMCU7XHJcblxyXG4gIGJvcmRlcjogbm9uZTtcclxuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XHJcbiAgLW1vei1ib3gtc2hhZG93OiBub25lO1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcblxyXG4gIG1hcmdpbjogJGd1dHRlciBhdXRvO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgLy93aWR0aDogYXV0bztcclxuICB9XHJcblxyXG59XHJcblxyXG4uZnNfc3R5bGVfMTUsIC8vbGVmdFxyXG4uZnNfc3R5bGVfMTYgLy9yaWdodFxyXG4ge1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSggMSAvIDIgKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoIDMgLyA4ICk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy9sZWZ0XHJcbi5mc19zdHlsZV8xNSB7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIG1hcmdpbi1yaWdodDogJGd1dHRlcjtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vcmlnaHRcclxuLmZzX3N0eWxlXzE2IHtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRndXR0ZXI7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4iLCIubmF2aWdhdGlvbi5tYWluIHtcclxuICBAaW5jbHVkZSBsaXN0LXJlc2V0KCk7XHJcblxyXG4gIC8vID09PT09PT09PT09PT09PT09PT09XHJcbiAgLy8gKE1haW4sIFBhZ2UpIE5hdmlnYXRpb25cclxuXHJcbiAgbmF2IHtcclxuICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQoKTtcclxuXHJcbiAgICB1bC5mc05hdkxldmVsMSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICY+IGxpIHtcclxuICAgICAgICBmbGV4OiAxIGF1dG87XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1vZGVybml6cihmbGV4Ym94LCBmYWxzZSkge1xyXG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJj4gYSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBoZWFkZXItbmF2aWdhdGlvbi1saW5rcygpO1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmZzTmF2Q3VycmVudFBhZ2UgPiBhLFxyXG4gICAgICAgICYuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yID4gYSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBoZWFkZXItbmF2aWdhdGlvbi1saW5rcy1ob3ZlciggKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcblxyXG4gIC8vID09PT09PT09PT09PT09PT09PT09XHJcbiAgLy8gRHJvcC1kb3duKHMpIChBS0EgXCIuZnNOYXZQYWdlSW5mb1wiKVxyXG5cclxuICAuZnNOYXZQYWdlSW5mbyB7XHJcblxyXG4gICAgQGluY2x1ZGUgZHJvcGRvd24oIDEwMCUgKTtcclxuICAgIHBhZGRpbmc6ICRndXR0ZXIgKiAyO1xyXG4gICAgYmFja2dyb3VuZDogJG0xO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiByZXR1cm5SR0JBKCAkY29sb3Itd2hpdGUsIDAuMiApO1xyXG5cclxuICAgIC5mc05hdlBhZ2VEZXNjcmlwdGlvbiB7XHJcbiAgICAgIEBpbmNsdWRlIGlubGluZS1lbGVtZW50KCB0b3AgKTtcclxuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoIDMwMCAvIDgyMCApO1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAoIDIyIC8gMTQgKTtcclxuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbiAgICAgIGgzLFxyXG4gICAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46ICRib2R5LWxpbmUtaGVpZ2h0IDAgMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogY2UoMjQpO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoIDMwIC8gMjQgKTtcclxuICAgICAgICBjb2xvcjogJG0yO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2VyaWY7XHJcbiAgICAgICAgJixcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAvL3Age1xyXG4gICAgICAvLyAgbWFyZ2luOiAwO1xyXG4gICAgICAvLyAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIC8vXHJcbiAgICAgIC8vfVxyXG5cclxuICAgICAgLy9iciB7IGRpc3BsYXk6IG5vbmU7IH1cclxuICAgIH1cclxuXHJcbiAgICB1bC5mc05hdkxldmVsMiB7XHJcbiAgICAgIEBpbmNsdWRlIGlubGluZS1lbGVtZW50KCB0b3AgKTtcclxuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoIDIyMCAvIDgyMCApO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXI7XHJcbiAgICAgICY+IGxpIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXJnaW4teCggJGd1dHRlciAqIC0wLjUgKTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgQGluY2x1ZGUgbWFyZ2luLXgoICRndXR0ZXIgKiAwLjUgKTtcclxuICAgICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3ItYWxwaGEoICRjb2xvci13aGl0ZSwgMC4yICk7XHJcbiAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkOmFmdGVyIHsgY29udGVudDogbm9ybWFsOyB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgQGluY2x1ZGUgaGVhZGVyLW5hdmlnYXRpb24tZHJvcGRvd24tbGlua3MoKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBsaTpob3ZlciAuZnNOYXZQYWdlSW5mbyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG59IiwiXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFRpZXIgTmF2aWdhdGlvblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4jZnNQYWdlQm9keVdyYXBwZXIgLm5hdmlnYXRpb24udGllciB7XHJcbiAgJGxvY2FsLWJyZWFrcG9pbnQtZm9yLWNvbGxhcHNpYmxlLW1lbnU6ICRicC1wb3J0cmFpdDtcclxuXHJcbiAgQGluY2x1ZGUgbGlzdC1yZXNldDtcclxuICBAaW5jbHVkZSBtYXJnaW4teCggJGd1dHRlciAqIC0xICk7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG5cclxuICAvLyBIaWRlIGF0IGxvYWQgdG8gZmlnaHQgRk9VQ1xyXG4gIG1heC1oZWlnaHQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgLmhhcy10aWVyLW5hdmlnYXRpb24gJiB7XHJcbiAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gQWxsIChleGNlcHQgdGhlIFwiLm1vYmlsZVwiKSBhcmUgaGlkZGVuIGF0IE1vYmlsZSBWaWV3LCBzaG93biBpbiBPdGhlciBWaWV3c1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCggJGxvY2FsLWJyZWFrcG9pbnQtZm9yLWNvbGxhcHNpYmxlLW1lbnUgKSB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW4teCggMCApO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAvLyBUaGUgXCIubW9iaWxlXCIgaXMgaGlkZGVuIGF0IE90aGVyIFZpZXdzLCBzaG93biBpbiBNb2JpbGUgVmlld1xyXG4gICYubW9iaWxlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggJGxvY2FsLWJyZWFrcG9pbnQtZm9yLWNvbGxhcHNpYmxlLW1lbnUgKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgJj4gaGVhZGVyIHtcclxuICAgIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50IHtcclxuICAgICAgQGluY2x1ZGUgdGllci1uYXZpZ2F0aW9uLWhlYWRlci10b2dnbGUoICRsb2NhbC1icmVha3BvaW50LWZvci1jb2xsYXBzaWJsZS1tZW51ICk7XHJcblxyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJj4gLmZzRWxlbWVudENvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG4gICAgLy9tYXgtaGVpZ2h0OiAwO1xyXG4gICAgLy9vdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoICRsb2NhbC1icmVha3BvaW50LWZvci1jb2xsYXBzaWJsZS1tZW51ICkge1xyXG4gICAgICAvL21heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLm9wZW4ge1xyXG5cclxuICAgICY+IGhlYWRlciAuZnNFbGVtZW50SGVhZGVyQ29udGVudDphZnRlciB7XHJcbiAgICAgIC8vY29udGVudDogJGdseXBoLWNoZXZyb24tZG93bjtcclxuICAgIH1cclxuXHJcbiAgICAmPiAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICAgIC8vbWF4LWhlaWdodDogMTAwMHB4O1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGxpIHtcclxuICAgIG1hcmdpbjogJG5hdmlnYXRpb24tdGllci12ZXJ0aWNhbC1tYXJnaW4gJG5hdmlnYXRpb24tdGllci1ob3Jpem9udGFsLW1hcmdpbjtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy8gISEgQ0FVVElPTiAhISBDQVVUSU9OICEhIENBVVRJT04gISEgQ0FVVElPTlxyXG4gIC8vIE1hbmFnZSB0aGUgdmlldyBvZiB0aGUgTmF2aWdhdGlvbiB3aXRoIENTU1xyXG4gIC8qXHJcbiAgICBIb21lOiBOL0FcclxuICAgIFRpZXIgMSAoQUtBOiBcIkxhbmRpbmcgUGFnZVwiKTogU2hvdyBUMyAoaW1tZWRpYXRlIGNoaWxkcmVuIFdJVEggaW1tZWRpYXRlIGNoaWxkcmVuIGV4cGFuZGVkIE9OTFkgb2YgY3VycmVudCBwYWdlKVxyXG4gICAgVGllciAyOiBTaG93IFQzIChpbW1lZGlhdGUgY2hpbGRyZW4pXHJcbiAgICBUaWVyIDM6IFNob3cgVDMgKHNpYmxpbmdzLCB3aXRoIGN1cnJlbnQgcGFnZSBpbiAnYWN0aXZlJyBzdGF0ZSksIFNob3cgVDQgKGltbWVkaWF0ZSBjaGlsZHJlbiBPTkxZIG9mIGN1cnJlbnQgcGFnZSlcclxuICAgIFRpZXIgNDogU2hvdyBUMyAoaW1tZWRpYXRlIHBhcmVudCAmIHBhcmVudCdzIHNpYmxpbmdzLCB3aXRoIGN1cnJlbnQgcGFnZSBhbmNlc3RvciBpbiAnYWN0aXZlJyBzdGF0ZSksIFNob3cgVDQgKHNpYmxpbmdzIE9OTFkgb2YgY3VycmVudCBwYWdlKVxyXG4gICAgVGllciA1OiA/PyBTaG93IGxpbmsgYmFjayB0byBpbW1lZGlhdGUgcGFyZW50P1xyXG4gICovXHJcblxyXG5cclxuICAuZnNOYXZDdXJyZW50UGFnZSA+IGEsXHJcbiAgLmZzTmF2Q3VycmVudFBhZ2VBbmNlc3RvciA+IGEge1xyXG4gICAgY29sb3I6ICRtMSAhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB9XHJcblxyXG4gIC8vIENvbW1vbiB0byBhbGwgVGllciBMZXZlbHNcclxuICBbY2xhc3MqPVwiZnNOYXZMZXZlbFwiXSB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICBbY2xhc3MqPVwiaGllcmFyY2h5LXRpZXJcIl0gJiB7XHJcblxyXG4gICAgLy8gaGlkZSBhbGwgVGllciAxIChBS0E6IFwiTGFuZGluZyBQYWdlXCIpIHNpYmxpbmcgY29udGFpbmVyc1xyXG4gICAgLmZzTmF2TGV2ZWwxID4gbGkgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gICAgLy8gaGlkZSBhbGwgVGllciAxIChBS0E6IFwiTGFuZGluZyBQYWdlXCIpIHNpYmxpbmcgbGlua3NcclxuICAgIC5mc05hdkxldmVsMSA+IGxpID4gYSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAvLyBzaG93IGN1cnJlbnQgVGllciAxIChBS0E6IFwiTGFuZGluZyBQYWdlXCIpIGNvbnRhaW5lclxyXG4gICAgLmZzTmF2TGV2ZWwxID4gbGkuZnNOYXZDdXJyZW50UGFnZSxcclxuICAgIC5mc05hdkxldmVsMSA+IGxpLmZzTmF2Q3VycmVudFBhZ2VBbmNlc3RvciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC8vIENvbW1vbiBmb3IgVGllciAyIGFuZCBsb3dlciBMZXZlbHNcclxuICAuaGllcmFyY2h5LXRpZXItMiAmLFxyXG4gIC5oaWVyYXJjaHktdGllci0zICYsXHJcbiAgLmhpZXJhcmNoeS10aWVyLTQgJixcclxuICAuaGllcmFyY2h5LXRpZXItNSAmIHtcclxuXHJcbiAgICAvLyBoaWRlIGFsbCBUaWVyIDIgc2libGluZyBjb250YWluZXJzXHJcbiAgICAuZnNOYXZMZXZlbDIgPiBsaSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAvLyBoaWRlIGFsbCBUaWVyIDIgc2libGluZyBsaW5rc1xyXG4gICAgLmZzTmF2TGV2ZWwyID4gbGkgPiBhIHsgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuICAgIC8vIHNob3cgY3VycmVudCBUaWVyIDIgY29udGFpbmVyXHJcbiAgICAuZnNOYXZMZXZlbDIgPiBsaS5mc05hdkN1cnJlbnRQYWdlLFxyXG4gICAgLmZzTmF2TGV2ZWwyID4gbGkuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gaGlkZSBhbGwgVGllciA0IGNvbnRhaW5lcnNcclxuICAgIC5mc05hdkxldmVsNCB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbiAgICAvLyBDdXJyZW50IExpc3RcclxuICAgIC5mc05hdkxldmVsMyB7XHJcbiAgICAgIEBpbmNsdWRlIHRpZXItbmF2aWdhdGlvbi1jdXJyZW50LWxpc3QoKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBFeHBhbmRlZCBMaXN0IENoaWxkcmVuICh0ZWNobmljYWxseSBOL0Egb24gVGllciAyKVxyXG4gICAgLmZzTmF2TGV2ZWw0IHtcclxuICAgICAgQGluY2x1ZGUgdGllci1uYXZpZ2F0aW9uLWV4cGFuZGVkLWxpc3QoKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAvLyBDb21tb24gZm9yIFRpZXIgMyBhbmQgbG93ZXIgTGV2ZWxzXHJcbiAgLmhpZXJhcmNoeS10aWVyLTMgJixcclxuICAuaGllcmFyY2h5LXRpZXItNCAmLFxyXG4gIC5oaWVyYXJjaHktdGllci01ICYge1xyXG5cclxuICAgIC8vIG1hdGNoIGN1cnJlbnQgVGllciAzIGNvbnRhaW5lciBiYWNrZ3JvdW5kXHJcbiAgICAuZnNOYXZMZXZlbDMgPiBsaS5mc05hdkN1cnJlbnRQYWdlLFxyXG4gICAgLmZzTmF2TGV2ZWwzID4gbGkuZnNOYXZDdXJyZW50UGFnZUFuY2VzdG9yIHtcclxuICAgICAgYmFja2dyb3VuZDogJG5hdmlnYXRpb24tdGllci1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIHNob3cgY3VycmVudCBUaWVyIDQgY29udGFpbmVyXHJcbiAgICAuZnNOYXZMZXZlbDMgPiBsaS5mc05hdkN1cnJlbnRQYWdlIC5mc05hdkxldmVsNCxcclxuICAgIC5mc05hdkxldmVsMyA+IGxpLmZzTmF2Q3VycmVudFBhZ2VBbmNlc3RvciAuZnNOYXZMZXZlbDQge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIFNwZWNpZmljIFRpZXIgU3R5bGVzXHJcbiAgLmhpZXJhcmNoeS10aWVyLTEgJiB7XHJcblxyXG4gICAgLy8gQ3VycmVudCBMaXN0XHJcbiAgICAuZnNOYXZMZXZlbDIge1xyXG4gICAgICBAaW5jbHVkZSB0aWVyLW5hdmlnYXRpb24tY3VycmVudC1saXN0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRXhwYW5kZWQgTGlzdCBDaGlsZHJlblxyXG4gICAgLmZzTmF2TGV2ZWwzIHtcclxuICAgICAgQGluY2x1ZGUgdGllci1uYXZpZ2F0aW9uLWV4cGFuZGVkLWxpc3QoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5oaWVyYXJjaHktdGllci01ICYge1xyXG5cclxuICAgIC8vIGhpZGUgYWxsIFRpZXIgNCBzaWJsaW5nIGxpbmtzXHJcbiAgICAuZnNOYXZMZXZlbDQgPiBsaSA+IGEgeyBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4gICAgLy8gc2hvdyBsYXN0IGtub3duIFRpZXIgNCBsaW5rXHJcbiAgICAuZnNOYXZMZXZlbDQgPiBsaS5mc05hdkN1cnJlbnRQYWdlQW5jZXN0b3IgID4gYSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG5cclxufVxyXG4iLCJzZWN0aW9uLm9mZi1jYW52YXMge1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICB3aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAwICRndXR0ZXI7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogMjtcclxuXHJcbiAgaGVpZ2h0OiAwO1xyXG5cclxuICBiYWNrZ3JvdW5kOiAkbTE7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICAub2ZmLWNhbnZhcy1tZW51LW9wZW4gJiB7XHJcbiAgICBoZWlnaHQ6IDkwMHB4Oy8vb3ZlcndyaXRlIHdpdGggSlNcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbiAgfVxyXG5cclxuICBAYXQtcm9vdCAub2ZmLWNhbnZhcy1tZW51LW9wZW4ge1xyXG4gICAgaHRtbCxcclxuICAgIGJvZHkge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogYXV0bztcclxuICAgIH1cclxuICAgICNmc1BhZ2VXcmFwcGVyIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGVhZGVyIHtcclxuICAgIC5mc0VsZW1lbnRUaXRsZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuZnNFbGVtZW50SGVhZGVyQ29udGVudCB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyA9PT09PT09PT09PT09PT09PT09PVxyXG4gIC8vIENsb3NlL1RvZ2dsZSBCdXR0b25cclxuICAuYnV0dG9uLm9mZi1jYW52YXMtdHJpZ2dlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1cHg7XHJcbiAgICBsZWZ0OiA1cHg7XHJcbiAgICBjb2xvcjogJG0zO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgLy9wYWRkaW5nOiAwO1xyXG4gICAgd2lkdGg6ICRoZWFkZXItbWlzY2VsbGFuZW91cy1idXR0b24td2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRoZWFkZXItbWlzY2VsbGFuZW91cy1idXR0b24taGVpZ2h0O1xyXG5cclxuICAgICYsXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHsgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBAaW5jbHVkZSBmb250LWljb24oICRnbHlwaC1jbG9zZSApO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vID09PT09PT09PT09PT09PT09PT09XHJcbiAgLy8gKE1haW4pIE5hdmlnYXRpb25cclxuICAubmF2aWdhdGlvbi5tYWluIHtcclxuICAgIG1hcmdpbi10b3A6ICRndXR0ZXI7XHJcbiAgICBwYWRkaW5nLXRvcDogJGd1dHRlcjtcclxuICAgIHBhZGRpbmctYm90dG9tOiAoICRndXR0ZXIgKiAwLjUgKTtcclxuICAgIHVsLmZzTmF2TGV2ZWwxIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZzTmF2UGFnZUluZm8ge1xyXG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyA9PT09PT09PT09PT09PT09PT09PVxyXG4gIC8vIChVdGlsaXR5KSBOYXZpZ2F0aW9uXHJcbiAgLm5hdmlnYXRpb24udXRpbGl0eSB7XHJcbiAgICBAaW5jbHVkZSBsaXN0LXJlc2V0KCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyICogMjtcclxuXHJcbiAgICB1bC5mc05hdkxldmVsMSB7XHJcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi14KCAkZ3V0dGVyICogLTEgKTtcclxuICAgICAgcGFkZGluZzogKCAkZ3V0dGVyICogMC41ICkgJGd1dHRlcjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItdXRpbGl0eS1saW5rLWJhY2tncm91bmQ7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBoZWFkZXItdXRpbGl0eS1saW5rcygpO1xyXG4gICAgICAgICAgcGFkZGluZzogKCAoIDQ1cHggLSAoICRib2R5LWZvbnQtc2l6ZSAqICRib2R5LWxpbmUtaGVpZ2h0ICkgKSAvIDIgKSAkZ3V0dGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxufSIsIi5uYXZpZ2F0aW9uLnNvY2lhbCB7XHJcbiAgJGxvY2FsLW1hcmdpbjogNXB4O1xyXG4gIEBpbmNsdWRlIGxpc3QtcmVzZXQoKTtcclxuXHJcbiAgbmF2IHtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmcteCggNTBweCApO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgQGluY2x1ZGUgcGFkZGluZy14KCAwICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB1bCB7XHJcbiAgICBAaW5jbHVkZSBtYXJnaW4teCggJGxvY2FsLW1hcmdpbiAqIC0wLjUgKTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIEBpbmNsdWRlIHBhZGRpbmcteCggJGxvY2FsLW1hcmdpbiAqIDAuNSApO1xyXG4gICAgICBAaW5jbHVkZSBpbmxpbmUtZWxlbWVudCggbWlkZGxlICk7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRsb2NhbC1tYXJnaW4gKiAwLjU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhIHtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgIC8vQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvci1hbHBoYSggJGNvbG9yLXdoaXRlLCAwLjYgKTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IDM4cHg7XHJcbiAgICBoZWlnaHQ6IDM4cHg7XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDYwJTtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogNjAlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNjAlO1xyXG5cclxuICAgIC8vY29sb3I6ICRtMTtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5ZW07XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7IH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB9XHJcblxyXG4gICAgJltocmVmKj0nZmFjZWJvb2snXTphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLWZhY2Vib29rICk7XHJcbiAgICB9XHJcbiAgICAmW2hyZWYqPSdnb29nbGUnXTphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLWdvb2dsZS1wbHVzICk7XHJcbiAgICB9XHJcbiAgICAmW2hyZWYqPSdpbnN0YWdyYW0nXTphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLWluc3RhZ3JhbSApO1xyXG4gICAgfVxyXG4gICAgJltocmVmKj0nbGlua2VkaW4nXTphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLWxpbmtlZGluICk7XHJcbiAgICB9XHJcbiAgICAmW2hyZWYqPSdibG9nJ106YWZ0ZXIge1xyXG4gICAgICAvL3RoaXMgb25lIGlzIGEgYml0IHRyaWNraWVyXHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLWZlZWQgKTtcclxuICAgIH1cclxuICAgICZbaHJlZio9J3R3aXR0ZXInXTphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLXR3aXR0ZXIgKTtcclxuICAgIH1cclxuICAgICZbaHJlZio9J3lvdXR1YmUnXTphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLXlvdXR1YmUtcGxheSApO1xyXG4gICAgfVxyXG4gIH1cclxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIExpc3RcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLmZzUG9zdEVsZW1lbnQsXHJcbi5mc05ld3Mge1xyXG4gIEBpbmNsdWRlIHNoYXJlZC1jb250ZW50LWJsb2NrKCk7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblxyXG4gIGFydGljbGUge1xyXG5cclxuICAgIEBpbmNsdWRlIHNoYXJlZC1jYWxlbmRhci1uZXdzLWJsb2NrKCk7XHJcblxyXG4gIH1cclxuXHJcbiAgLmZzVGh1bWJuYWlsIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcjtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuZnNUaXRsZSB7XHJcbiAgICBAaW5jbHVkZSBzaGFyZWQtY2FsZW5kYXItbmV3cy10aXRsZS1zdHlsZSgpO1xyXG4gIH1cclxuXHJcbiAgLmZzQXV0aG9yIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgLmZzRGF0ZSB7XHJcbiAgICBAaW5jbHVkZSBzaGFyZWQtY2FsZW5kYXItbmV3cy1kYXRlLXN0eWxlKCk7XHJcbiAgICBjb2xvcjogJGQxO1xyXG5cclxuICB9XHJcblxyXG4gIC5mc1N1bW1hcnkge1xyXG4gICAgQGluY2x1ZGUgc2hhcmVkLWNhbGVuZGFyLW5ld3MtdGV4dC1zdHlsZSgpO1xyXG4gICAgOmZpcnN0LWNoaWxkIHtcclxuICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qU2xpZGVzaG93Ki9cclxuICAmLmZzU2xpZGVzaG93IHtcclxuXHJcbiAgICAuZnNFbGVtZW50Q29udGVudCB7bWFyZ2luOiAwO31cclxuXHJcbiAgICBhcnRpY2xlIHtcclxuICAgICAgcGFkZGluZzogJGd1dHRlcjtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgLmZzUHJldkJ1dHRvbiwgLmZzTmV4dEJ1dHRvbiB7XHJcblxyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mc1ByZXZCdXR0b24ge1xyXG4gICAgICAmOmJlZm9yZSB7fVxyXG4gICAgfVxyXG5cclxuICAgIC5mc05leHRCdXR0b24ge1xyXG4gICAgICAmOmJlZm9yZSB7fVxyXG4gICAgfVxyXG5cclxuICAgIC5mc1BhZ2VyIHtcclxuICAgICAgc3BhbiB7XHJcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDEwMG1zLFxyXG4gICAgICAgIG9wYWNpdHkgMTAwbXM7XHJcblxyXG4gICAgICAgICYuZnNTdGF0ZUFjdGl2ZSB7XHJcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcblxyXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgLy8gR3JpZFxyXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgJi5mc0dyaWQge1xyXG4gICAgLmZzQWxlcnRzSWNvbiwgLmZzUlNTSWNvbiB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5mc05ld3NHcmlkIHtcclxuICAgICAgQGluY2x1ZGUgY2xlYXI7XHJcbiAgICB9XHJcblxyXG4gICAgYXJ0aWNsZSB7XHJcbiAgICAgIGNsZWFyOiBub25lO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLmZzU3R5bGVUd29Db2x1bW5zIHtcclxuICAgICAgYXJ0aWNsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgICAgIEBpbmNsdWRlIG5ld3MtZ3JpZC0yLWNvbCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZzU3R5bGVUaHJlZUNvbHVtbnMge1xyXG4gICAgICBhcnRpY2xlIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgbmV3cy1ncmlkLTItY29sKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgbmV3cy1ncmlkLTMtY29sKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuZnNTdHlsZUZvdXJDb2x1bW5zIHtcclxuICAgICAgYXJ0aWNsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgICAgIEBpbmNsdWRlIG5ld3MtZ3JpZC0yLWNvbCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgICAgICAgIEBpbmNsdWRlIG5ld3MtZ3JpZC00LWNvbCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZzU3R5bGVGaXZlQ29sdW1ucyB7XHJcbiAgICAgIGFydGljbGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBuZXdzLWdyaWQtMi1jb2woKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBuZXdzLWdyaWQtNS1jb2woKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZnNUaHVtYm5haWwge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XHJcbiAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcclxuICAgIH1cclxuXHJcbiAgfVxyXG4gIC5mc0xpc3RJdGVtcyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG59XHJcbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4vKiBTZWFyY2ggVmFyaWFibGVzICAgICAgKi9cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PSovXHJcbiRzZWFyY2gtaW5wdXQtbWluLXdpZHRoOiAxNDBweDtcclxuJGlucHV0LWJnLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuJGlucHV0LXRleHQtY29sb3I6ICRtMztcclxuJGlucHV0LWZvbnQtc2l6ZTogMjBweDtcclxuJGlucHV0LWxpbmUtaGVpZ2h0OiAoMjQvMjApO1xyXG4kaW5wdXQtZm9udC1mYW1pbHk6ICRzZXJpZjtcclxuJGlucHV0LWZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHJcbiRzZWFyY2gtaGVpZ2h0OiA2NnB4O1xyXG4kc3VibWl0LWZvbnQ6ICRmb250LWljb247XHJcbiRzdWJtaXQtdGV4dDogJGdseXBoLXNlYXJjaDtcclxuJHN1Ym1pdC10ZXh0LWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiRzdWJtaXQtcGFkZGluZy14OiAxMi41cHg7XHJcbiRzdWJtaXQtYmctY29sb3I6IHRyYW5zcGFyZW50O1xyXG4kc3VibWl0LWhvdmVyLWNvbG9yOiAkbTI7XHJcbiRzdWJtaXQtaG92ZXItYmctY29sb3I6IHRyYW5zcGFyZW50O1xyXG4kc3VibWl0LXdpZHRoOiAkc2VhcmNoLWhlaWdodDsvL3RyaWNrc3Nzc3lcclxuXHJcblxyXG5cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXHJcbi8qIE5vcm1hbGl6ZSBTZWFyY2ggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqL1xyXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cclxuZm9ybS5nc2Mtc2VhcmNoLWJveC10b29scyB7IC8vZm9ybSB0aGF0IGhvbGRzIGFsbCB0aGUgd2VpcmRuZXNzXHJcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gIHRhYmxleyAvL3JlbW92ZSBib3JkZXIgZnJvbSBhbGwgdGFibGVzXHJcbiAgICBib3JkZXI6IDA7XHJcbiAgfVxyXG5cclxuICB0YWJsZSxcclxuICB0Ym9keSxcclxuICB0cixcclxuICB0ZHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgdGQuZ3NjLWlucHV0eyAvL3doeT9cclxuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgfVxyXG5cclxuICB0YWJsZS5nc2Mtc2VhcmNoLWJveHtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8vd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgLy8vLy8vLy8vXHJcbiAgfVxyXG5cclxuICBkaXYuZ3NjLWlucHV0LWJveCB7XHJcbiAgICBtaW4td2lkdGg6ICRzZWFyY2gtaW5wdXQtbWluLXdpZHRoO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgaGVpZ2h0OiAkc2VhcmNoLWhlaWdodDtcclxuXHJcbiAgICAmLmdzYy1pbnB1dC1ib3gtZm9jdXMge1xyXG4gICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgfVxyXG4gICAgdGFibGUsXHJcbiAgICB0Ym9keSxcclxuICAgIHRyLFxyXG4gICAgdGR7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBoZWlnaHQ6ICRzZWFyY2gtaGVpZ2h0O1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHRkLmdzaWJfYXtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG5cclxuICB0ZC5nc2liX2J7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgdGQuZ3NjLWlucHV0IHtcclxuICAgIGZsb2F0OiBub25lOyAvLy8vLy8vLy8vLy8vXHJcbiAgfVxyXG5cclxuICBpbnB1dC5nc2MtaW5wdXR7XHJcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtYmctY29sb3IgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAkc2VhcmNoLWhlaWdodCAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICRpbnB1dC10ZXh0LWNvbG9yO1xyXG4gICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcclxuICAgIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XHJcbiAgICBmb250LXN0eWxlOiAkaW5wdXQtZm9udC1zdHlsZTtcclxuXHJcbiAgICBwYWRkaW5nLWxlZnQ6ICRzdWJtaXQtd2lkdGggIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIH1cclxuXHJcbiAgdGFibGUuZ3NjLWJyYW5kaW5ne1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIHRkLmdzYy1zZWFyY2gtYnV0dG9ue1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAvL2Zsb2F0OiBsZWZ0O1xyXG4gICAgcGFkZGluZzogMCAkc3VibWl0LXBhZGRpbmcteDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBoZWlnaHQ6ICRzZWFyY2gtaGVpZ2h0O1xyXG4gICAgd2lkdGg6ICRzdWJtaXQtd2lkdGg7XHJcbiAgICBiYWNrZ3JvdW5kOiAkc3VibWl0LWJnLWNvbG9yO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICBjb2xvcjogJHN1Ym1pdC10ZXh0LWNvbG9yO1xyXG5cclxuICAgICY6YWZ0ZXJ7XHJcblxyXG4gICAgICBAaW5jbHVkZSBmb250LWljb24oICRnbHlwaC1jbG9zZSApO1xyXG4gICAgICBjb250ZW50OiAkc3VibWl0LXRleHQ7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuXHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIHRkLmdzYy1zZWFyY2gtYnV0dG9uOmhvdmVye1xyXG4gICAgYmFja2dyb3VuZDogJHN1Ym1pdC1ob3Zlci1iZy1jb2xvcjtcclxuICAgIGNvbG9yOiAkc3VibWl0LWhvdmVyLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgaW5wdXQuZ3NjLXNlYXJjaC1idXR0b257XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBoZWlnaHQ6ICRzZWFyY2gtaGVpZ2h0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIFdlYktpdCwgQmxpbmssIEVkZ2UgKi9cclxuICBjb2xvcjogJGlucHV0LXRleHQtY29sb3I7XHJcbn1cclxuOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggNCB0byAxOCAqL1xyXG4gIGNvbG9yOiAkaW5wdXQtdGV4dC1jb2xvcjtcclxuICBvcGFjaXR5OiAgMTtcclxufVxyXG46Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBNb3ppbGxhIEZpcmVmb3ggMTkrICovXHJcbiAgY29sb3I6ICRpbnB1dC10ZXh0LWNvbG9yO1xyXG4gIG9wYWNpdHk6IDE7XHJcbn1cclxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIEludGVybmV0IEV4cGxvcmVyIDEwLTExICovXHJcbiAgY29sb3I6ICRpbnB1dC10ZXh0LWNvbG9yO1xyXG59XHJcblxyXG5cclxuXHJcbi8qPT09PT09PT09PT09PT09PT09PT09PT0qL1xyXG4vKiBDdXN0b20gU3R5bGVzICAgICAgICAgKi9cclxuLyo9PT09PT09PT09PT09PT09PT09PT09PSovXHJcbmZvcm0uZ3NjLXNlYXJjaC1ib3gtdG9vbHN7XHJcblxyXG4gIC5mc1NlYXJjaC50b3Atc2VhcmNoeyAvL3NlYXJjaCBjb250YWluZXJcclxuXHJcbiAgfVxyXG5cclxuICBkaXYuZ3NjLWlucHV0LWJveHsgLy9zZWFyY2ggaW5wdXQgY29udGFpbmVyXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cclxuICB9XHJcblxyXG5cclxuICBpbnB1dC5nc2MtaW5wdXR7IC8vc2VhcmNoIGlucHV0IGZpZWxkXHJcblxyXG4gIH1cclxuXHJcbiAgdGQuZ3NjLXNlYXJjaC1idXR0b257IC8vc3VibWl0IGJ1dHRvblxyXG5cclxuICB9XHJcblxyXG59XHJcbiIsIi5mc1RhYnN7XHJcbiAgcGFkZGluZzogMDtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gIGJvcmRlcjogMDtcclxuICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xyXG5cclxuICAuZnNUYWJzTmF2IHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBkaXNwbGF5OiBub25lOyAvL2hpZGVzIG5hdiBmb3IgbW9iaWxlIGFjY29yZGlvbiBmdW5jdGlvbmFsaXR5XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCggJGJwLXBvcnRyYWl0ICkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogJHRhYnMtaG9yaXpvbnRhbC1tYXJnaW47XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogJHRhYnMtdmVydGljYWwtcGFkZGluZyAkdGFicy1ob3Jpem9udGFsLXBhZGRpbmc7XHJcblxyXG4gICAgICAgIGJhY2tncm91bmQ6ICR0YWJzLWJhY2tncm91bmQtY29sb3I7XHJcblxyXG4gICAgICAgIGZvbnQtc2l6ZTogJHRhYnMtc2l6ZTtcclxuICAgICAgICBsaW5lLWhlaWdodDogJHRhYnMtbGluZS1oZWlnaHQ7XHJcbiAgICAgICAgY29sb3I6ICR0YWJzLWNvbG9yO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2Fucy1zZXJpZjtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICBmb250LXdlaWdodDogJHRhYnMtd2VpZ2h0O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgXHJcbiAgICAgICAgYm9yZGVyOiAkdGFicy1ib3JkZXItd2lkdGggJHRhYnMtYm9yZGVyLXN0eWxlICR0YWJzLWJvcmRlci1jb2xvcjtcclxuXHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogJHRhYnMtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjtcclxuICAgICAgICAgIGNvbG9yOiAkdGFicy1jb2xvci1ob3ZlcjtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRhYnMtYm9yZGVyLWNvbG9yLWhvdmVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5mc1N0YXRlU2VsZWN0ZWQgeyAvL2FjdGl2ZSB0YWJcclxuICAgICAgICBhIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICR0YWJzLWJhY2tncm91bmQtY29sb3ItYWN0aXZlO1xyXG4gICAgICAgICAgY29sb3I6ICR0YWJzLWNvbG9yLWFjdGl2ZTtcclxuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRhYnMtYm9yZGVyLWNvbG9yLWFjdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gIH0vLyBlbmQgdGFicyBuYXZpZ2F0aW9uXHJcblxyXG4gIC5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmcteCggMCApO1xyXG4gIH1cclxuXHJcbiAgLy9mb3IgdGFiIHRvIGFjY29yZGlvbiBvbiBtb2JpbGUgdGhpcyByZXVzZXMgdGhlIGFjY29yZGlvbiB2YXJpYWJsZXNcclxuICAvL2JlIHN1cmUgdG8gdXBkYXRlIHRob3NlIHNvIHRoYXQgdGhlc2UgYXV0b21hdGljYWxseSBtYXRjaCB0aGUgc3R5bGluZ1xyXG5cclxuICBAaW5jbHVkZSBzaGFyZWQtYWNjb3JkaW9uLWZzUGFuZWwoIHRydWUgKTtcclxuXHJcbn1cclxuXHJcblxyXG5cclxuLy8gY3JhemluZXNzIHRvIG92ZXJyaWRlIGFwcCBjc3NcclxuLy8gdGhpcyBpcyB0byBkaXNwbGF5IHRoZSBoaWRkZW4gaGVhZGVyIGZvciBhY2NvcmRpb24gZnVuY3Rpb25hbGl0eSBvbiBtb2JpbGVcclxuLmZzUGFuZWxHcm91cC5mc1RhYnM+LmZzRWxlbWVudENvbnRlbnQ+LmZzUGFuZWw+LmZzRWxlbWVudEFjdGlvbkJ1dHRvbkNvbnRhaW5lcixcclxuLmZzUGFuZWxHcm91cC5mc1RhYnM+LmZzRWxlbWVudENvbnRlbnQ+LmZzUGFuZWw+aGVhZGVyLCAuZnNQYW5lbEdyb3VwLmZzVGFicz4uZnNFbGVtZW50Q29udGVudD4uZnNQYW5lbDpub3QoLmZzU3RhdGVPcGVuKSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCggJGJwLXBvcnRyYWl0ICkge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn0iLCIuZnNDb21wb3NlckZvcm1FbWJlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XHJcbiAgZm9ybSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIC5tYWluR3JvdXBTdWIge1xyXG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIudGhlcm1vbWV0ZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDMwcHggMDtcclxuICAudHJhY2sge1xyXG4gICAgaGVpZ2h0OjMwMHB4O1xyXG4gICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luOjAgYXV0bztcclxuICAgIGJhY2tncm91bmQ6ICRtMjtcclxuICB9XHJcbiAgLmFtb3VudCwgLmFtb3VudENhc2gge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICB9XHJcbiAgLmdvYWwge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAtMzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLmFtb3VudCwgLmFtb3VudENhc2gge1xyXG4gICAgICBjb2xvcjogJG0xO1xyXG4gICAgfVxyXG4gIH1cclxuICAucHJvZ3Jlc3Mge1xyXG4gICAgaGVpZ2h0OiAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOjA7XHJcbiAgICBsZWZ0OjA7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbTE7XHJcbiAgICAuYW1vdW50LCAuYW1vdW50Q2FzaCB7XHJcbiAgICAgIGNvbG9yOiAkbTM7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIiNmc0hlYWRlciB7XHJcbiAgLy9AaW5jbHVkZSBkZXYtY29sb3IoKTtcclxuXHJcbiAgcGFkZGluZzogJGd1dHRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbTE7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgIC8vQGluY2x1ZGUgcGFkZGluZy15KCAwICk7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICB9XHJcblxyXG4gIC5oYXMtbWFzdGhlYWQgJiB7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3ItYWxwaGEoJG0xLCAwLjkpO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5oYXMtbWFzdGhlYWQgLmZzQ29tcG9zZU1vZGUgJiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgIHRvcDogYXV0bztcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICB6LWluZGV4OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLmZzQ29tcG9zZU1vZGUgJiB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcblxyXG4gICY+LmZzQmFubmVyIHtcclxuICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgQGluY2x1ZGUgY29tcGFydG1lbnQoIDcwMHB4ICk7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgIEBpbmNsdWRlIGNvbXBhcnRtZW50KCA5NDBweCApO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI4MHB4ICsgMjA7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZGVza3RvcCkge1xyXG4gICAgICBAaW5jbHVkZSBjb21wYXJ0bWVudCgpO1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDI4MHB4ICsgNjA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoZWFkZXIge1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50IHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT1cclxuLy8gQnJhbmRpbmdcclxuXHJcbiNmc0hlYWRlciAuYnJhbmRpbmcge1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgIHdpZHRoOiAyODBweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICAmPiBoZWFkZXIge1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcblx0ICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDE3MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PVxyXG4vLyBVdGlsaXRpZXNcclxuXHJcbiNmc0hlYWRlciAudXRpbGl0aWVzIHtcclxuICAkbG9jYWwtbW9iaWxlLWJ1dHRvbi1vZmZzZXQ6IDVweDsvLyggJGd1dHRlciAqIC0xICkgKyA1O1xyXG4gIC8vQGluY2x1ZGUgZGV2LWNvbG9yKCAjMGRiICk7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgfVxyXG5cclxuICAmPiBoZWFkZXIge1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICAvLyBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICB9XHJcblxyXG4gIHNlY3Rpb24ge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vID09PT09PT09PT09PT09PT09PT09XHJcbiAgLy8gVXRpbGl0aWVzOiBOYXZpZ2F0aW9uXHJcbiAgLm5hdmlnYXRpb24udXRpbGl0eSB7XHJcbiAgICBAaW5jbHVkZSBsaXN0LXJlc2V0KCk7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgICBAaW5jbHVkZSBpbmxpbmUtZWxlbWVudCggdG9wICk7XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICBAaW5jbHVkZSBpbmxpbmUtZWxlbWVudCggbWlkZGxlICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgQGluY2x1ZGUgaGVhZGVyLXV0aWxpdHktbGlua3MoKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAvLyA9PT09PT09PT09PT09PT09PT09PVxyXG4gIC8vIFV0aWxpdGllczpcclxuICAvLyBTZWFyY2gtdHJpZ2dlciAmXHJcbiAgLy8gTWVudS10cmlnZ2VyIChzaGFyZWQpXHJcbiAgLmJ1dHRvbi5zZWFyY2gtdHJpZ2dlcixcclxuICAuYnV0dG9uLm9mZi1jYW52YXMtdHJpZ2dlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJhY2tncm91bmQ6ICRoZWFkZXItdXRpbGl0eS1saW5rLWJhY2tncm91bmQ7XHJcbiAgICBjb2xvcjogJG0yO1xyXG4gICAgd2lkdGg6ICRoZWFkZXItbWlzY2VsbGFuZW91cy1idXR0b24td2lkdGg7XHJcbiAgICBoZWlnaHQ6ICRoZWFkZXItbWlzY2VsbGFuZW91cy1idXR0b24taGVpZ2h0O1xyXG4gICAgdGV4dC1pbmRlbnQ6IC05OTllbTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRvcDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLWNsb3NlICk7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB0ZXh0LWluZGVudDogMDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSggLTUwJSApO1xyXG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSggLTUwJSApO1xyXG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCAtNTAlICk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSggLTUwJSApO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIC01MCUgKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAvLyA9PT09PT09PT09PT09PT09PT09PVxyXG4gIC8vIFV0aWxpdGllczogU2VhcmNoLXRyaWdnZXJcclxuICAuYnV0dG9uLnNlYXJjaC10cmlnZ2VyIHtcclxuICAgIHRvcDogJGxvY2FsLW1vYmlsZS1idXR0b24tb2Zmc2V0O1xyXG4gICAgcmlnaHQ6ICRsb2NhbC1tb2JpbGUtYnV0dG9uLW9mZnNldDtcclxuXHJcbiAgICAucGFnZS1zZWFyY2gtb3BlbiAmIHtcclxuICAgICAgY29sb3I6ICRtMztcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJGdseXBoLXNlYXJjaDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcblxyXG4gIC8vID09PT09PT09PT09PT09PT09PT09XHJcbiAgLy8gVXRpbGl0aWVzOiBNZW51LXRyaWdnZXJcclxuICAuYnV0dG9uLm9mZi1jYW52YXMtdHJpZ2dlciB7XHJcbiAgICB0b3A6ICRsb2NhbC1tb2JpbGUtYnV0dG9uLW9mZnNldDtcclxuICAgIGxlZnQ6ICRsb2NhbC1tb2JpbGUtYnV0dG9uLW9mZnNldDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJGdseXBoLWJhcnM7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09XHJcbi8vIChQYWdlKSBOYXZpZ2F0aW9uXHJcblxyXG4jZnNIZWFkZXIgLm5hdmlnYXRpb24uY29udGFpbmVyIHtcclxuICAvL0BpbmNsdWRlIGRldi1jb2xvciggIzBiZCApO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAmPiBoZWFkZXIge1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAmPiAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wKSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vID09PT09PT09PT09PT09PT09PT09XHJcbiAgLy8gKE1haW4sIFBhZ2UpIE5hdmlnYXRpb25cclxuICAvLyBOT1RFOiBUaGUgbWFqb3JpdHkgb2YgdGhlc2Ugc3R5bGVzIGFyZSBmb3VuZCBpbiBuYXZpZ2F0aW9uL19tYWluLnNjc3NcclxuICAubmF2aWdhdGlvbi5tYWluIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAoICRndXR0ZXIgKiAyICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gPT09PT09PT09PT09PT09PT09PT1cclxuICAvLyAoUGFnZSkgTmF2aWdhdGlvbjogU2VhcmNoLXRyaWdnZXJcclxuICAuYnV0dG9uLnNlYXJjaC10cmlnZ2VyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgIHBhZGRpbmc6ICRndXR0ZXI7XHJcblxyXG4gICAgY29sb3I6ICRtMjtcclxuICAgIHRleHQtaW5kZW50OiAtOTk5ZW07XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IC0xMHB4O1xyXG5cclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cclxuICAgIC5wYWdlLXNlYXJjaC1vcGVuICYge1xyXG4gICAgICBjb2xvcjogJG0zO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBAaW5jbHVkZSBmb250LWljb24oICRnbHlwaC1zZWFyY2ggKTtcclxuICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdGV4dC1pbmRlbnQ6IDA7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIC01MCUgKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIC01MCUgKTtcclxuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSggLTUwJSApO1xyXG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoIC01MCUgKTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCAtNTAlICk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09XHJcbi8vIChUaWVyKSBOYXZpZ2F0aW9uXHJcblxyXG4uc3ViLW5hdmlnYXRpb24ge1xyXG4gICRsb2NhbC1icmVha3BvaW50LWZvci1jb2xsYXBzaWJsZS1tZW51OiAkYnAtbGFuZHNjYXBlO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgLy9AaW5jbHVkZSBkZXYtY29sb3IoKTtcclxuICBiYWNrZ3JvdW5kOiAkc3ViLW5hdmlnYXRpb24tYmFja2dyb3VuZC1jb2xvcjtcclxuXHJcbiAgLmhhcy1zdWItbmF2aWdhdGlvbiAmIHtcclxuICAgIC8vQGluY2x1ZGUgZGV2LWNvbG9yKCAjMGYwICk7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICYubWFzdGhlYWQtYWx0ZXJuYXRlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5oYXMtbWFzdGhlYWQuaGFzLXN1Yi1uYXZpZ2F0aW9uICYge1xyXG4gICAgLy8gcHJlc2VuY2Ugb2YgdGhlIG1hc3RoZWFkIGltYWdlIChvbiB0aWVycykgbmVjZXNzaXRhdGVzIHBvc2l0aW9uaW5nIGEgY29weSBvZiB0aGUgc3ViLW5hdmlnYXRpb25cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCAkbG9jYWwtYnJlYWtwb2ludC1mb3ItY29sbGFwc2libGUtbWVudSApIHtcclxuICAgICAgLy9oZWguIE9oLCB5ZWFoLiBZb3Ugc3RpbGwgd2FudCB0byB1c2UgdGhlICdyZWd1bGFyJyBhdCBNb2JpbGUvUG9ydHJhaXQgVmlld3NcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgICYubWFzdGhlYWQtYWx0ZXJuYXRlIHtcclxuXHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICB9XHJcblxyXG4gICY+IGhlYWRlciB7XHJcbiAgICAuZnNFbGVtZW50VGl0bGUge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQge1xyXG4gICAgICBAaW5jbHVkZSB0aWVyLW5hdmlnYXRpb24taGVhZGVyLXRvZ2dsZSggJGxvY2FsLWJyZWFrcG9pbnQtZm9yLWNvbGxhcHNpYmxlLW1lbnUgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY+IC5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoICRsb2NhbC1icmVha3BvaW50LWZvci1jb2xsYXBzaWJsZS1tZW51ICkge1xyXG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5zdWItbmF2aWdhdGlvbi1vcGVuICYge1xyXG4gICAgJj4gaGVhZGVyIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50OmFmdGVyIHtcclxuICAgICAgY29udGVudDogJGdseXBoLWNoZXZyb24tZG93bjtcclxuICAgIH1cclxuXHJcbiAgICAmPiAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcclxuICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5hdiB7XHJcbiAgICBAaW5jbHVkZSBsaXN0LXJlc2V0KCk7XHJcbiAgICBAaW5jbHVkZSBjb21wYXJ0bWVudCgpO1xyXG5cclxuICAgIHVsLmZzTmF2TGV2ZWwxIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbG9jYWwtYnJlYWtwb2ludC1mb3ItY29sbGFwc2libGUtbWVudSkge1xyXG4gICAgICAgIC8vIGhhY2tpbmcgaW4gc2VydmljZSBvZiBEZXNpZ24gUUFcclxuICAgICAgICBAaW5jbHVkZSBwYWRkaW5nLXkoIDZweCApOy8vIHRoYXQncyAoIFtkZXNpcmVkIG92ZXJhbGwgaGVpZ2h0XSAtIFtzcGVjaWZpZWQgbGluZS1oZWlnaHRdICkgLyAyXHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgICAmPiBsaSB7XHJcblxyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbG9jYWwtYnJlYWtwb2ludC1mb3ItY29sbGFwc2libGUtbWVudSkge1xyXG4gICAgICAgICAgQGluY2x1ZGUgaW5saW5lLWVsZW1lbnQoIG1pZGRsZSApO1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmPiBhIHtcclxuICAgICAgICAgIEBpbmNsdWRlIHRpZXItbmF2aWdhdGlvbi1saW5rLXBhcmVudCgpO1xyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGxvY2FsLWJyZWFrcG9pbnQtZm9yLWNvbGxhcHNpYmxlLW1lbnUpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaGVhZGVyLXN1Yi1uYXZpZ2F0aW9uLWxpbmtzKCApO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuZnNOYXZDdXJyZW50UGFnZSA+IGEsXHJcbiAgICAgICAgJi5mc05hdkN1cnJlbnRQYWdlQW5jZXN0b3IgPiBhIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGhlYWRlci1uYXZpZ2F0aW9uLWxpbmtzLWFjdGl2ZSggKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09XHJcbi8vIFNlYXJjaCAoZHJvcC1kb3duKVxyXG5cclxuI2ZzSGVhZGVyIC5mc1NlYXJjaC5zZWFyY2gge1xyXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICBAaW5jbHVkZSBiYWNrZ3JvdW5kLWNvbG9yLWFscGhhKCAkbTEsIDAuOTUgKTtcclxuICAvL2Rpc3BsYXk6IG5vbmU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogOTkuOSU7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC1oZWlnaHQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblxyXG4gIC5wYWdlLXNlYXJjaC1vcGVuICYge1xyXG4gICAgbWF4LWhlaWdodDogNjZweDtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIGJvcmRlci10b3AtY29sb3I6IHJldHVyblJHQkEoICRjb2xvci13aGl0ZSwgMC4yICk7XHJcbiAgfVxyXG5cclxuICAmPiBoZWFkZXIge1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAuZnNFbGVtZW50Q29udGVudCB7XHJcblxyXG4gICAgdGQuZ3NjLXNlYXJjaC1idXR0b24ge1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBoYWJsZXQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbTI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbnB1dC5nc2MtaW5wdXQge1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBoYWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRzdWJtaXQtd2lkdGggKyAoICRndXR0ZXIgKiAxKSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbiNmc0hlYWRlciAudGhpbmcge1xyXG5cclxuICAmPiBoZWFkZXIge1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAuZnNFbGVtZW50Q29udGVudCB7IH1cclxuXHJcbn0iLCIjZnNCYW5uZXJMZWZ0IHtcclxuXHJcbiAgLy9AaW5jbHVkZSBkZXYtY29sb3IoKTtcclxuXHJcbiAgJj4gLmZzQmFubmVyIHtcclxuXHJcbiAgICAvLyBUaGUgdHJpY2s/IENvbGxhcHNlIHRoZSBUaWVyIE5hdiwgaGlkZSBldmVyeXRoaW5nIGVsc2UgaW4gI2ZzQmFubmVyTGVmdCBhdCA8IFBvcnRyYWl0IHZpZXdcclxuICAgICYgPiAqOm5vdCggLmZzTmF2aWdhdGlvbiApIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbiNmc0Jhbm5lckxlZnQgPiAudGhpbmcge1xyXG5cclxuICAmPiBoZWFkZXIge1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHsgfVxyXG4gIH1cclxuXHJcbn0iLCIjZnNGb290ZXIge1xyXG5cclxuLy8gIEBpbmNsdWRlIGRldi1jb2xvcigpO1xyXG4gIHBhZGRpbmc6ICRndXR0ZXI7XHJcblxyXG4gICY+LmZzQmFubmVyIHtcclxuXHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgY29sb3I6IHJldHVyblJHQkEoICRjb2xvci13aGl0ZSwgMC42ICk7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogKCAyNCAvIDE0ICk7XHJcblxyXG4gICAgQGluY2x1ZGUgbWFyZ2luLXgoICRndXR0ZXIgKiAtMC41ICk7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgQGluY2x1ZGUgY29tcGFydG1lbnQoIDcwMHB4ICk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgIEBpbmNsdWRlIGNvbXBhcnRtZW50KCA5NDBweCApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgQGluY2x1ZGUgY29tcGFydG1lbnQoKTtcclxuICAgIH1cclxuXHJcbiAgICBoZWFkZXIge1xyXG4gICAgICAuZnNFbGVtZW50VGl0bGUge1xyXG4gICAgICAgIEBleHRlbmQgJWgzO1xyXG4gICAgICAgIGNvbG9yOiAkbTI7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzZXJpZjtcclxuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlciAqIDAuMjU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50IHsgfVxyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICBjb2xvcjogcmV0dXJuUkdCQSggJGNvbG9yLXdoaXRlLCAwLjYgKTtcclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY+IC5mc0VsZW1lbnQge1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PVxyXG4vLyBDb250YWN0XHJcblxyXG4jZnNGb290ZXIgLmNvbnRhY3Qge1xyXG4vLyAgQGluY2x1ZGUgZGV2LWNvbG9yKCAjZjBkICk7XHJcbiAgQGluY2x1ZGUgbWFyZ2luLXkoICRndXR0ZXIgKiAxLjUgKTtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZGVza3RvcCkge1xyXG4gICAgQGluY2x1ZGUgaW5saW5lLWVsZW1lbnQoKTtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAzKTtcclxuICB9XHJcblxyXG4gICY+IGhlYWRlciB7XHJcbiAgICAuZnNFbGVtZW50VGl0bGUgeyB9XHJcbiAgICAuZnNFbGVtZW50SGVhZGVyQ29udGVudCB7IH1cclxuICB9XHJcblxyXG4gIC5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFtpdGVtcHJvcD0nbmFtZSddIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgW2l0ZW1wcm9wPSdhZGRyZXNzJ10ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gIH1cclxuXHJcbiAgW2l0ZW1wcm9wPSdzdHJlZXRBZGRyZXNzJ10ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgJjphZnRlciB7IGNvbnRlbnQ6ICcsJzsgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICY6YWZ0ZXIgeyBjb250ZW50OiBub3JtYWw7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIFtpdGVtcHJvcD0nYWRkcmVzc0xvY2FsaXR5J10ge31cclxuXHJcbiAgW2l0ZW1wcm9wPSdhZGRyZXNzUmVnaW9uJ10ge31cclxuXHJcbiAgW2l0ZW1wcm9wPSdwb3N0YWxDb2RlJ10ge31cclxuXHJcbiAgW2l0ZW1wcm9wPSd0ZWxlcGhvbmUnXSB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNzVlbTtcclxuICB9XHJcbiAgW2l0ZW1wcm9wPSd0ZWxlcGhvbmUnXSxcclxuICBbaXRlbXByb3A9J2ZheCddIHtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgfVxyXG5cclxuICBbaXRlbXByb3A9J2FkZHJlc3MnXSxcclxuICBbaXRlbXByb3A9J3RlbGVwaG9uZSddIHtcclxuXHJcbiAgfVxyXG5cclxuXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09XHJcbi8vIEZvb3Rlci1saW5rc1xyXG5cclxuI2ZzRm9vdGVyIC5mb290ZXItbGlua3Mge1xyXG4vLyAgQGluY2x1ZGUgZGV2LWNvbG9yKCAjZmQwICk7XHJcbiAgQGluY2x1ZGUgbWFyZ2luLXkoICRndXR0ZXIgKiAxLjUgKTtcclxuICBAaW5jbHVkZSBsaXN0LXJlc2V0KCk7XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgQGluY2x1ZGUgaW5saW5lLWVsZW1lbnQoKTtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAyKTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAzKTtcclxuICB9XHJcblxyXG4gICY+IGhlYWRlciB7XHJcbiAgICAuZnNFbGVtZW50VGl0bGUgeyB9XHJcbiAgICAuZnNFbGVtZW50SGVhZGVyQ29udGVudCB7IH1cclxuICB9XHJcblxyXG4gIC5mc0VsZW1lbnRDb250ZW50IHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBuYXYge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgICAgICBAaW5jbHVkZSBtYXJnaW4teCggJGd1dHRlciAqIC0wLjUgKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZGVza3RvcCkge1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbi14KCAwICk7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdWwuZnNOYXZMZXZlbDEge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbGFuZHNjYXBlKSB7XHJcbiAgICAgICAgQGluY2x1ZGUgbWFyZ2luLXgoICRndXR0ZXIgKiAwLjUgKTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAvL3RleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtZGVza3RvcCkge1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbi14KCAwICk7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICggJGd1dHRlciAqIDIgKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT1cclxuLy8gU29jaWFsXHJcblxyXG4jZnNGb290ZXIgLnNvY2lhbCB7XHJcbi8vICBAaW5jbHVkZSBkZXYtY29sb3IoICMwZGYgKTtcclxuICBAaW5jbHVkZSBtYXJnaW4teSggJGd1dHRlciAqIDEuNSApO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgIEBpbmNsdWRlIGlubGluZS1lbGVtZW50KCk7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gMik7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wKSB7XHJcbiAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gMyk7XHJcbiAgfVxyXG5cclxuICAmPiBoZWFkZXIge1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAuZnNFbGVtZW50Q29udGVudCB7XHJcblxyXG4gICAgdWwuZnNOYXZMZXZlbDEge1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wKSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJj4gLmJyZWFrIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0ZXh0LWluZGVudDogLTk5OWVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvci1hbHBoYSggJGNvbG9yLXdoaXRlLCAwLjYgKTtcclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkbTE7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09XHJcbi8vIFN1cGVyIFNlY3JldFxyXG4vLyBIaWRkZW4gQnJlYWRjcnVtYlxyXG5cclxuI2ZzRm9vdGVyIC5uYXZpZ2F0aW9uLmhpZXJhcmNoeSB7IGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PVxyXG4vLyBQb3dlcmVkIEJ5IEZpbmFsU2l0ZVxyXG5cclxuI2ZzRm9vdGVyIC5wb3dlcmVkLWJ5LWZpbmFsc2l0ZSB7XHJcbiAgLy8gYSBKUyBnZW5lcmF0ZWQgY29udGFpbmVyXHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB9XHJcblxyXG4gICY+IC5pbm5lciB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG5cclxuICAjZnNQb3dlcmVkQnlGaW5hbHNpdGUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxufSIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIChMYW5kaW5nPykgUGFnZSBNYXN0aGVhZFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4uY29udGFpbmVyLm1hc3RoZWFkIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gIC5mc0NvbXBvc2VNb2RlICYge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIC5pbWFnZSB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHJcbiAgICBwYWRkaW5nLWJvdHRvbTogcGVyY2VudGFnZSggMjUwIC8gMzIwICk7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHBlcmNlbnRhZ2UoIDYwMCAvIDgwMCApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogcGVyY2VudGFnZSggNzUwIC8gMTIwMCApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDc1MHB4O1xyXG4gICAgfVxyXG5cclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyAoTGFuZGluZz8pIFBhZ2UgRGVzY3JpcHRpb25cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLm1hc3RoZWFkLmNvbnRhaW5lciAuZGVzY3JpcHRpb24ge1xyXG4gIHBhZGRpbmc6IDAgJGd1dHRlcjtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZS1jb250ZW50LWJhY2tncm91bmQtY29sb3I7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIH1cclxuXHJcbiAgJj4uaW5uZXIge1xyXG4gICAgcGFkZGluZzogJGd1dHRlciAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgICBAaW5jbHVkZSBjb21wYXJ0bWVudCggcGVyY2VudGFnZSggODgwIC8gJGJvdW5kcnkgKSApO1xyXG4gICAgICBwYWRkaW5nOiAkZ3V0dGVyO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZXR1cm5SR0JBKCAkcGFnZS1jb250ZW50LWJhY2tncm91bmQtY29sb3IsIDAuNyApO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgQGluY2x1ZGUgY29tcGFydG1lbnQoIDg4MHB4ICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoMSB7IG1hcmdpbi1ib3R0b206IDA7IH1cclxuICBwIHsgbWFyZ2luOiAwOyB9XHJcbn1cclxuXHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gTWlzY2VsbGFuZW91cyBMYXlvdXQgQ29udHJvbHNcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuI2ZzUGFnZUNvbnRlbnQge1xyXG4gIC5mc1BhZ2VUaXRsZSB7fVxyXG5cclxuICAmPiAuZnNMYXlvdXQge1xyXG5cclxuICAgIC5mc0NvbnRlbnQubWFzdGhlYWQge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgLmZzQ29tcG9zZU1vZGUgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAuZnNDb250ZW50LmRlc2NyaXB0aW9uIHtcclxuICAgICAgLmhhcy1kZXNjcmlwdGlvbiAmIHsgZGlzcGxheTogbm9uZTsgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcbn1cclxuIiwiLmZvbyB7IGNvbG9yOiAjZjAwOyB9XHJcblxyXG4uaG9tZSB7XHJcblxyXG4gICNmc0Jhbm5lckxlZnQsXHJcbiAgI2ZzQmFubmVyUmlnaHQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gICNmc1BhZ2VCb2R5V3JhcHBlciB7XHJcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXgoIDAgKTtcclxuICAgIEBpbmNsdWRlIHBhZGRpbmcteSggMCApO1xyXG4gICAgYmFja2dyb3VuZDogJHBhZ2UtY29udGVudC1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgI2ZzUGFnZUNvbnRlbnQge1xyXG4gICAgJj4gLmZzTGF5b3V0IHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgJj4gLmZzRGl2IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE1hc3RoZWFkXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi5ob21lIC5mc1BsYXllci5tYXN0aGVhZCB7XHJcbiAgLy9nZXRzIGltYWdlIGJhY2tncm91bmQgZnJvbSBKU1xyXG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJG0xO1xyXG4gIC8vcGFkZGluZzogJGd1dHRlcjtcclxuICBjbGVhcjogYm90aDtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDsvL2JvdHRvbSBhY2NvbW1vZGF0ZXMgYnV0dG9uKHMpXHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAmPiBoZWFkZXIsXHJcbiAgLmZzRWxlbWVudENvbnRlbnQge1xyXG4gIH1cclxuXHJcblxyXG4gICY+IGhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgIEBhdC1yb290IC5mc0NvbXBvc2VNb2RlLmhvbWUgLmZzUGxheWVyLm1hc3RoZWFkIGhlYWRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5mc0VsZW1lbnRUaXRsZSB7IH1cclxuICAgIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50IHsgfVxyXG4gIH1cclxuXHJcbiAgLmZzRWxlbWVudENvbnRlbnQge1xyXG4gICAgLy9kaXNwbGF5OiBub25lO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCggJG0yLCAkY29sb3Itd2hpdGUsIDUwJSApO1xyXG4gICAgcGFkZGluZy1ib3R0b206IHBlcmNlbnRhZ2UoIDI1MCAvIDMyMCApO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiBwZXJjZW50YWdlKCA2MDAgLyA4MDAgKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IHBlcmNlbnRhZ2UoIDgwMCAvIDEyMDAgKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wKSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgZm9udC1pY29uKCAkZ2x5cGgtc3Bpbm5lciApO1xyXG4gICAgICBAaW5jbHVkZSBhbmltYXRpb24tc3BpbigpO1xyXG4gICAgICAvL2NvbnRlbnQ6ICdsb2FkaW5nJztcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgY29sb3I6IG1peCggJG0yLCAkY29sb3Itd2hpdGUsIDcwJSApO1xyXG4gICAgICBmb250LXNpemU6IDYwcHg7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cclxuICAgIH1cclxuXHJcblxyXG4gICAgLmhhcy1tYXN0aGVhZCAmIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcblxyXG4gICAgICAmOmFmdGVyIHsgY29udGVudDogbm9ybWFsOyB9XHJcbiAgICB9XHJcblxyXG5cclxuICB9XHJcblxyXG4gICY+IGZvb3RlciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNsdXN0ZXIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICY+IC5pbm5lciB7XHJcbiAgICAgIEBpbmNsdWRlIG1hcmdpbi14KDApO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICAgIEBpbmNsdWRlIG1hcmdpbi14KCBhdXRvICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zbGlkZSB7XHJcbiAgICAmPiAuaW5uZXIge1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICY+IC5pbm5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5kZXRhaWxzIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgcGFkZGluZzogMCAkZ3V0dGVyICggJGhvbWUtYmxvY2stdmVydGljYWwtb2Zmc2V0ICsgJGhvbWUtY2Fyb3VzZWwtYXJyb3ctZGltZW5zaW9ucyApO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGNvbG9yOiAkaG9tZS1tYXN0aGVhZC1kZXRhaWwtY29sb3I7XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIEBpbmNsdWRlIGNvbXBhcnRtZW50KCA3MDBweCApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgICAgIEBpbmNsdWRlIGNvbXBhcnRtZW50KCA5NjBweCApO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgICBAaW5jbHVkZSBjb21wYXJ0bWVudCggJGJvdW5kcnkgKiAxcHggKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLnRpdGxlIHtcclxuICAgICAgICBAZXh0ZW5kICVoMTtcclxuICAgICAgICBjb2xvcjogJGhvbWUtbWFzdGhlYWQtZGV0YWlsLWNvbG9yO1xyXG4gICAgICB9XHJcbiAgICAgIC5jb3B5IHtcclxuICAgICAgICBmb250LWZhbWlseTogJGhvbWUtbWFzdGhlYWQtZGV0YWlsLWNvcHktZmFtaWx5O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGhvbWUtbWFzdGhlYWQtZGV0YWlsLWNvcHktc2l6ZTtcclxuICAgICAgICBsaW5lLWhlaWdodDogJGhvbWUtbWFzdGhlYWQtZGV0YWlsLWNvcHktbGluZS1oZWlnaHQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250YWluZXIubWFzdGhlYWQge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG4gICAgbWF4LWhlaWdodDogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLmhhcy1tYXN0aGVhZCAmIHtcclxuICAgICAgbWF4LWhlaWdodDogODUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gTmV3c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4uaG9tZSBzZWN0aW9uLmZzUG9zdEVsZW1lbnQsXHJcbi5ob21lIHNlY3Rpb24uZnNOZXdzIHtcclxuICBAaW5jbHVkZSBzaGFyZWQtaG9tZS1zZWN0aW9uLXBhZGRpbmcoKTtcclxuICBjbGVhcjogYm90aDtcclxuICBtYXJnaW46IDA7XHJcblxyXG4gICY+IGhlYWRlcixcclxuICAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICBAaW5jbHVkZSBjb21wYXJ0bWVudCggNzAwcHggKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWxhbmRzY2FwZSkge1xyXG4gICAgICBAaW5jbHVkZSBjb21wYXJ0bWVudCggOTYwcHggKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLWRlc2t0b3ApIHtcclxuICAgICAgQGluY2x1ZGUgY29tcGFydG1lbnQoICRib3VuZHJ5ICogMXB4ICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgJj4gaGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAuZnNFbGVtZW50Q29udGVudCB7XHJcblxyXG4gICAgLmZzTGlzdEl0ZW1zIHtcclxuICAgICAgQGluY2x1ZGUgbWFyZ2luLXgoICRndXR0ZXIgKiAtMC41ICk7XHJcbiAgICAgIGFydGljbGUge1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgICAgICBwYWRkaW5nOiAwICggJGd1dHRlciAqIDAuNSApO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoIDEgLyAzKTtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuMTtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcblxyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mc1RpdGxlIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGhlYWRpbmcoIDE4cHgsIDI0cHgsIDAgKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mc0RhdGUge1xyXG4gICAgICAgICAgY29sb3I6ICRnMztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ob21lLW5ld3MtcmVhZHkgJiB7XHJcbiAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcblxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgJj4gZm9vdGVyIHtcclxuICB9XHJcblxyXG59XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBTcG90bGlnaHQgSW5mb2dyYXBoaWNzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi5ob21lIHNlY3Rpb24uc3BvdGxpZ2h0IHtcclxuICAvL2dldHMgaW1hZ2UgYmFja2dyb3VuZCBmcm9tIEpTXHJcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkbTE7XHJcbiAgLy9wYWRkaW5nOiAkZ3V0dGVyO1xyXG4gIGNsZWFyOiBib3RoO1xyXG5cclxuICAmPiBoZWFkZXIsXHJcbiAgLmZzRWxlbWVudENvbnRlbnQsXHJcbiAgLnNwb3RsaWdodC5jb250YWluZXIgPiAuaW5uZXIge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgQGluY2x1ZGUgY29tcGFydG1lbnQoIDcwMHB4ICk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1sYW5kc2NhcGUpIHtcclxuICAgICAgQGluY2x1ZGUgY29tcGFydG1lbnQoIDk2MHB4ICk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1kZXNrdG9wKSB7XHJcbiAgICAgIEBpbmNsdWRlIGNvbXBhcnRtZW50KCAkYm91bmRyeSAqIDFweCApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gICY+IGhlYWRlciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgLmZzRWxlbWVudFRpdGxlIHsgfVxyXG4gICAgLmZzRWxlbWVudEhlYWRlckNvbnRlbnQgeyB9XHJcbiAgfVxyXG5cclxuICAuZnNFbGVtZW50Q29udGVudCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgZGwge1xyXG4gICAgICBkdCxcclxuICAgICAgZGQge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICB9XHJcbiAgICAgIGR0IHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICB9XHJcbiAgICAgIGRkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAoICRndXR0ZXIgKiAwLjUgKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJj4gZm9vdGVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG5cclxuICAuc3BvdGxpZ2h0LmNvbnRhaW5lciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICB9XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdlLWNvbnRlbnQtYmFja2dyb3VuZC1jb2xvcjtcclxuICAgICAgLy90b2RvOiBleHRyYWN0IVxyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHotaW5kZXg6IDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3ItYWxwaGEoICRtMSwgMC44ICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmPiAuaW5uZXIge1xyXG4gICAgICBAaW5jbHVkZSBzaGFyZWQtaG9tZS1zZWN0aW9uLXBhZGRpbmcoKTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogKCAkZ3V0dGVyICogMy41ICk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGgyIHtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbiAgICAgICAgY29sb3I6ICRkMTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAuY2Fyb3VzZWwge1xyXG5cclxuICAgICAgLnNsaWRlIHtcclxuICAgICAgICAmPiAuaW5uZXIge1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgcGFkZGluZzogKCAkZ3V0dGVyICogMC41ICk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubnVtYmVyIHtcclxuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIC8vdG9kbzogZXh0cmFjdCFcclxuICAgICAgICAgIGNvbG9yOiAkbTM7XHJcbiAgICAgICAgICBmb250LWZhbWlseTogJHNlcmlmO1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAoNjAvNTApO1xyXG5cclxuICAgICAgICAgIHdpZHRoOiAxNjBweDtcclxuICAgICAgICAgIGhlaWdodDogMTYwcHg7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRnMTtcclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZXR1cm5SR0JBKCAkY29sb3Itd2hpdGUsIDAuNSApO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICY+IHNwYW4ge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5sYWJlbCB7XHJcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCk7XHJcbiAgICAgICAgICBjb2xvcjogJGQxO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogKCAkZ3V0dGVyICogMS41ICk7XHJcblxyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtcG9ydHJhaXQpIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gIH1cclxuXHJcbiAgLy8uZnNDb21wb3NlTW9kZVxyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQ29udHJvbCBDbHVzdGVyKHMpXHJcbi8vIGZvciB0aGUgVWJpcXVpdG91c1xyXG4vLyBDYXJvdXNlbCBDb250cm9sc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4uaG9tZSAuY2x1c3RlciB7XHJcbiAgLy90b2RvOiBleHRyYWN0Pz9cclxuXHJcbiAgJj4gLmlubmVyIHtcclxuICAgIEBpbmNsdWRlIG1hcmdpbi14KCAkZ3V0dGVyICogLTEgKTtcclxuICAgIG1hcmdpbi10b3A6ICRob21lLWJsb2NrLXZlcnRpY2FsLW9mZnNldC1tb2JpbGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBhZGRpbmc6IDAgJGhvbWUtY2Fyb3VzZWwtYXJyb3ctZGltZW5zaW9ucztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicC1wb3J0cmFpdCkge1xyXG4gICAgICBAaW5jbHVkZSBtYXJnaW4teCggYXV0byApO1xyXG4gICAgICBtYXJnaW4tdG9wOiAkaG9tZS1ibG9jay12ZXJ0aWNhbC1vZmZzZXQ7XHJcbiAgICAgIHdpZHRoOiAyNDBweCArICggJGhvbWUtY2Fyb3VzZWwtYXJyb3ctZGltZW5zaW9ucyAqIDIgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGJ1dHRvbiwgLmxpbmsge1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgpO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xyXG4gICAgd2lkdGg6ICRob21lLWNhcm91c2VsLWFycm93LWRpbWVuc2lvbnM7XHJcbiAgICBoZWlnaHQ6ICRob21lLWNhcm91c2VsLWFycm93LWRpbWVuc2lvbnM7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB0ZXh0LWluZGVudDogLTY2NmVtO1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCggJG0yLCAkY29sb3Itd2hpdGUsIDgwJSApO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwLXBvcnRyYWl0KSB7XHJcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQtY29sb3ItYWxwaGEoICRtMiwgMC44ICk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbTM7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtaWNvbiggJGdseXBoLWNsb3NlICk7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHRleHQtaW5kZW50OiAwO1xyXG4gICAgICBmb250LXNpemU6IDI2cHg7XHJcblxyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgfVxyXG5cclxuICAgICYucHJldmlvdXMsXHJcbiAgICAmLm5leHQge1xyXG5cclxuICAgIH1cclxuICAgICYucHJldmlvdXMge1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICByaWdodDogYXV0bztcclxuXHJcbiAgICAgICY6YWZ0ZXIgeyBjb250ZW50OiAkZ2x5cGgtYW5nbGUtbGVmdDsgfVxyXG4gICAgfVxyXG4gICAgJi5uZXh0IHtcclxuICAgICAgbGVmdDogYXV0bztcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICY6YWZ0ZXIgeyBjb250ZW50OiAkZ2x5cGgtYW5nbGUtcmlnaHQ7IH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5saW5rIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgZm9udC1mYW1pbHk6ICRzYW5zLXNlcmlmO1xyXG4gICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAoMjEvMTQpO1xyXG4gICAgICBwYWRkaW5nOiAoICggJGhvbWUtY2Fyb3VzZWwtYXJyb3ctZGltZW5zaW9ucyAtIDIxICkgLyAyICkgKCAkZ3V0dGVyICogMC41ICk7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbTI7XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbTM7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuXHJcblxyXG4jZnNIZWFkZXIgLnRoaW5nIHtcclxuXHJcbiAgJj4gaGVhZGVyIHtcclxuICAgIC5mc0VsZW1lbnRUaXRsZSB7IH1cclxuICAgIC5mc0VsZW1lbnRIZWFkZXJDb250ZW50IHsgfVxyXG4gIH1cclxuXHJcbiAgLmZzRWxlbWVudENvbnRlbnQgeyB9XHJcblxyXG59IiwiLy8gQ29sb3JzXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblxyXG4uY29sb3JzIHtcclxuXHJcbiAgb2wge1xyXG4gICAgQGluY2x1ZGUgY2xlYXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcblxyXG4gICAgQG1peGluIGNvbG9ycygkY29sb3IpIHtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xyXG4gICAgICBjb2xvcjogJGNvbG9yO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgbGkge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyZW07XHJcbiAgICAgIGhlaWdodDogNGVtO1xyXG4gICAgICB3aWR0aDogY3AoMSwgbGVuZ3RoKCRjb2xvcnMpIC8gNCApO1xyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtbWVkaXVtKSB7XHJcbiAgICAgICAgd2lkdGg6IGNwKDEsIGxlbmd0aCgkY29sb3JzKSAvIDMgKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnAtYm91bmRyeSkge1xyXG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogY3AoMSwgbGVuZ3RoKCRjb2xvcnMpIC8gMiApO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTZweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgY29sb3I6ICRnMztcclxuICAgICAgfVxyXG5cclxuICAgICAgQGVhY2ggJGNvbG9yLWtleSBpbiAkY29sb3JzIHtcclxuXHJcbiAgICAgICAgJGk6IGluZGV4KCRjb2xvcnMsICRjb2xvci1rZXkpO1xyXG5cclxuICAgICAgICAmOm50aC1vZi10eXBlKCN7JGl9KSB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBjb2xvcnMobnRoKCRjb2xvcnMsICRpKSk7XHJcblxyXG4gICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcje250aCgkY29sb3JzLCAkaSl9JztcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG5cclxuLy8gSGVhZGVyc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmhlYWRlcnMge1xyXG5cclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xyXG5cclxuICAgIGgjeyRpfSB7XHJcblxyXG4gICAgICAmOmFmdGVyIHt9XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGgxIHtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyBzaXplOiAjeyRoMS1zaXplfSAvIGxpbmU6ICN7JGgxLWxpbmUtaGVpZ2h0fSc7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgaDIge1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnIHNpemU6ICN7JGgyLXNpemV9IC8gbGluZTogI3skaDItbGluZS1oZWlnaHR9JztcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBoMyB7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcgc2l6ZTogI3skaDMtc2l6ZX0gLyBsaW5lOiAjeyRoMy1saW5lLWhlaWdodH0nO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGg0IHtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogJyBzaXplOiAjeyRoNC1zaXplfSAvIGxpbmU6ICN7JGg0LWxpbmUtaGVpZ2h0fSc7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgaDUge1xyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiAnIHNpemU6ICN7JGg1LXNpemV9IC8gbGluZTogI3skaDUtbGluZS1oZWlnaHR9JztcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBoNiB7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcgc2l6ZTogI3skaDYtc2l6ZX0gLyBsaW5lOiAjeyRoNi1saW5lLWhlaWdodH0nO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59Il19 */
