@charset "UTF-8";
/*!
 *  BCF based on Kanbasu 1.5
 */
/*!
 *  BCF base based on Kanbasu 1.5
 */
/**
 * Settings
 */
/*----------------------------------------*\
  GLOBAL SETTINGS

  Check the following page for details:
  http://bcf-styleguide.d.clients.liip.ch/settings.html
\*----------------------------------------*/
/**
 * Colors
 */
/**
 * Typography
 */
/**
 * Spacings
 */
/**
 * Responsiveness
 */
/**
 * Miscellaneous
 */
/*----------------------------------------*\
  COMPONENTS
\*----------------------------------------*/
/**
 * Buttons
 */
/**
 * Forms
 */
/**
 * Lists
 */
/**
 * Box
 */
/**
 * Grid
 */
/**
 * Widths
 */
/**
 * Media
 */
/**
 * Media responsive
 */
/**
 * Mosaic responsive
 */
/**
 * Container
 */
/**
 * Main header
 */
/**
 * Sections
 */
/**
 * Tabs
 */
/**
 * Tooltips and Popovers
 */
/**
 * Admin toolbar
 */
/**
 * Wizards
 */
/**
 * Perspective
 */
/**
 * Flyout
 */
/**
 * Effects
 */
/**
 * rotating phone responsive
 */
/**
 * Guided tour
 */
/**
 * Tools
 */
/*----------------------------------------*\
  FUNCTIONS
\*----------------------------------------*/
/**
 * Calculate REM value based on the default font-size
 */
/**
 * Return a value divided by a ratio
 * It uses the golden ratio by default
 *
 * Useful to create "visually equal" spacings
 * As mathematically equal spacings never "visually" look equal around text
 */
/**
 * Return a unitless value
 */
/**
 * Addition top and bottom padding
 */
/**
 * Functions for poly-fluid-sizing
 */
/*----------------------------------------*\
  MIXINS
\*----------------------------------------*/
/**
 * Responsive
 */
/*----------------------------------------*\
  EFFECTS
\*----------------------------------------*/
/**
 * Vendors
 */
/*!
 * normalize.css v3.0.2 | MIT License | git.io/normalize
 * CUSTOMIZED
 */
/**
 * 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 */ }

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

/* ----------------------------------------------------------- */
/* == tingle v0.12.0 */
/* ----------------------------------------------------------- */
.tingle-modal * {
  box-sizing: border-box; }

.tingle-modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  visibility: hidden;
  flex-direction: column;
  align-items: center;
  overflow: scroll;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  cursor: pointer;
  transition: transform 300ms ease-in-out, opacity 250ms ease-in-out; }

.tingle-modal--small .tingle-modal-box {
  max-width: 768px; }

/* confirm and alerts
-------------------------------------------------------------- */
.tingle-modal--confirm .tingle-modal-box {
  text-align: center; }

/* modal
-------------------------------------------------------------- */
.tingle-modal--noOverlayClose {
  cursor: default; }

.tingle-modal-box {
  flex-shrink: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 80%;
  position: relative;
  border-radius: 4px;
  background: #fff;
  opacity: 1;
  cursor: auto;
  transition: transform 500ms 100ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transform: translateY(20px); }
  .tingle-modal--auto-width .tingle-modal-box {
    max-width: 30em; }

.tingle-modal-box__content {
  padding: 30px; }
  @media (min-width: 48.0625em) {
    .tingle-modal-box__content {
      padding: 48px; } }

.tingle-modal-box__footer {
  padding: 1.5rem 2rem;
  width: auto;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px;
  background-color: #ffffff;
  cursor: auto; }

.tingle-modal-box__footer::after {
  display: table;
  clear: both;
  content: ""; }

.tingle-modal-box__footer--sticky {
  position: fixed;
  bottom: -200px;
  /* TODO : find a better way */
  z-index: 10001;
  opacity: 1;
  transition: bottom .3s ease-in-out .3s; }

/* state
-------------------------------------------------------------- */
.tingle-enabled {
  height: 100%;
  position: fixed;
  left: 0;
  right: 0; }

.tingle-modal--visible .tingle-modal-box__footer {
  bottom: 0; }

.tingle-enabled .tingle-content-wrapper {
  filter: blur(2px); }

.tingle-modal--visible {
  visibility: visible;
  opacity: 1; }

.tingle-modal--visible .tingle-modal-box {
  transform: translateY(0); }

.tingle-modal--overflow {
  overflow-y: scroll;
  padding-top: 8vh; }

/* responsive
-------------------------------------------------------------- */
@media (max-width: 30em) {
  .tingle-modal {
    top: 0px;
    display: block;
    width: 100%; }
  .tingle-modal-box {
    width: auto;
    border-radius: 0; }
  .tingle-modal--noClose {
    top: 0; }
  .tingle-modal--noOverlayClose {
    padding-top: 0; }
  .tingle-modal-box__footer .tingle-btn {
    display: block;
    float: none;
    margin-bottom: 1rem;
    width: 100%; } }

.tingle-modal__content-offset {
  position: relative;
  z-index: -1;
  margin-top: -20000px; }

.smartbanner-show {
  margin-top: 80px; }

.smartbanner-show .smartbanner {
  display: block; }

/** Default **/
.smartbanner {
  position: absolute;
  left: 0;
  top: 0;
  display: none;
  width: 100%;
  height: 80px;
  line-height: 80px;
  font-family: 'Helvetica Neue', sans-serif;
  background: #f4f4f4;
  z-index: 9998;
  -webkit-font-smoothing: antialiased;
  overflow: hidden;
  -webkit-text-size-adjust: none; }

.smartbanner-container {
  margin: 0 auto;
  white-space: nowrap; }

.smartbanner-close {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px 0 5px;
  font-family: 'ArialRoundedMTBold', Arial;
  font-size: 20px;
  text-align: center;
  color: #888;
  text-decoration: none;
  border: 0;
  border-radius: 14px;
  -webkit-font-smoothing: subpixel-antialiased; }

.smartbanner-close:active,
.smartbanner-close:hover {
  color: #aaa; }

.smartbanner-icon {
  display: inline-block;
  vertical-align: middle;
  width: 57px;
  height: 57px;
  margin-right: 12px;
  background-size: cover;
  border-radius: 10px; }

.smartbanner-info {
  display: inline-block;
  vertical-align: middle;
  width: 44%;
  font-size: 11px;
  line-height: 1.2em;
  font-weight: bold; }

.smartbanner-title {
  font-size: 13px;
  line-height: 18px; }

.smartbanner-button {
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto 0;
  height: 24px;
  font-size: 14px;
  line-height: 24px;
  text-align: center;
  font-weight: bold;
  color: #6a6a6a;
  text-transform: uppercase;
  text-decoration: none;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); }

.smartbanner-button:active,
.smartbanner-button:hover {
  color: #aaa; }

/** iOS **/
.smartbanner-ios {
  background: #f4f4f4;
  background: linear-gradient(to bottom, #f4f4f4, #cdcdcd);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  line-height: 80px; }

.smartbanner-ios .smartbanner-close {
  border: 0;
  width: 18px;
  height: 18px;
  line-height: 18px;
  color: #888;
  text-shadow: 0 1px 0 white; }

.smartbanner-ios .smartbanner-close:active,
.smartbanner-ios .smartbanner-close:hover {
  color: #aaa; }

.smartbanner-ios .smartbanner-icon {
  background: rgba(0, 0, 0, 0.6);
  background-size: cover;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); }

.smartbanner-ios .smartbanner-info {
  color: #6a6a6a;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); }

.smartbanner-ios .smartbanner-title {
  color: #4d4d4d;
  font-weight: bold; }

.smartbanner-ios .smartbanner-button {
  padding: 0 10px;
  min-width: 10%;
  color: #6a6a6a;
  background: #efefef;
  background: linear-gradient(to bottom, #efefef, #dcdcdc);
  border-radius: 3px;
  box-shadow: inset 0 0 0 1px #bfbfbf, 0 1px 0 rgba(255, 255, 255, 0.6), 0 2px 0 rgba(255, 255, 255, 0.7) inset; }

.smartbanner-ios .smartbanner-button:active,
.smartbanner-ios .smartbanner-button:hover {
  background: #dcdcdc;
  background: linear-gradient(to bottom, #dcdcdc, #efefef); }

/** Android **/
.smartbanner-android {
  background: #3d3d3d url(data:image/gif;base64,R0lGODlhCAAIAIABAFVVVf///yH5BAEHAAEALAAAAAAIAAgAAAINRG4XudroGJBRsYcxKAA7);
  box-shadow: inset 0 4px 0 #88b131;
  line-height: 82px; }

.smartbanner-android .smartbanner-close {
  border: 0;
  width: 17px;
  height: 17px;
  line-height: 17px;
  margin-right: 7px;
  color: #b1b1b3;
  background: #1c1e21;
  text-shadow: 0 1px 1px #000;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.8) inset, 0 1px 1px rgba(255, 255, 255, 0.3); }

.smartbanner-android .smartbanner-close:active,
.smartbanner-android .smartbanner-close:hover {
  color: #eee; }

.smartbanner-android .smartbanner-icon {
  background-color: transparent;
  box-shadow: none; }

.smartbanner-android .smartbanner-info {
  color: #ccc;
  text-shadow: 0 1px 2px #000; }

.smartbanner-android .smartbanner-title {
  color: #fff;
  font-weight: bold; }

.smartbanner-android .smartbanner-button {
  min-width: 12%;
  color: #d1d1d1;
  padding: 0;
  background: none;
  border-radius: 0;
  box-shadow: 0 0 0 1px #333, 0 0 0 2px #dddcdc; }

.smartbanner-android .smartbanner-button:active,
.smartbanner-android .smartbanner-button:hover {
  background: none; }

.smartbanner-android .smartbanner-button-text {
  text-align: center;
  display: block;
  padding: 0 10px;
  background: #42b6c9;
  background: linear-gradient(to bottom, #42b6c9, #39a9bb);
  text-transform: none;
  text-shadow: none;
  box-shadow: none; }

.smartbanner-android .smartbanner-button-text:active,
.smartbanner-android .smartbanner-button-text:hover {
  background: #2ac7e1; }

/** Windows **/
.smartbanner-windows {
  background: #f4f4f4;
  background: linear-gradient(to bottom, #f4f4f4, #cdcdcd);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  line-height: 80px; }

.smartbanner-windows .smartbanner-close {
  border: 0;
  width: 18px;
  height: 18px;
  line-height: 18px;
  color: #888;
  text-shadow: 0 1px 0 white; }

.smartbanner-windows .smartbanner-close:active,
.smartbanner-windows .smartbanner-close:hover {
  color: #aaa; }

.smartbanner-windows .smartbanner-icon {
  background: rgba(0, 0, 0, 0.6);
  background-size: cover;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); }

.smartbanner-windows .smartbanner-info {
  color: #6a6a6a;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8); }

.smartbanner-windows .smartbanner-title {
  color: #4d4d4d;
  font-weight: bold; }

.smartbanner-windows .smartbanner-button {
  padding: 0 10px;
  min-width: 10%;
  color: #6a6a6a;
  background: #efefef;
  background: linear-gradient(to bottom, #efefef, #dcdcdc);
  border-radius: 3px;
  box-shadow: inset 0 0 0 1px #bfbfbf, 0 1px 0 rgba(255, 255, 255, 0.6), 0 2px 0 rgba(255, 255, 255, 0.7) inset; }

.smartbanner-windows .smartbanner-button:active,
.smartbanner-windows .smartbanner-button:hover {
  background: #dcdcdc;
  background: linear-gradient(to bottom, #dcdcdc, #efefef); }

/**
 * Defaults
 */
/*----------------------------------------*\
  BOX MODEL
\*----------------------------------------*/
/**
 * Use the "smart" box model globally.
 *
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 */
html {
  box-sizing: border-box; }

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

/*----------------------------------------*\
  ELEMENT DEFAULT BEHAVIOR
\*----------------------------------------*/
img,
iframe,
embed,
object {
  display: block; }

/*----------------------------------------*\
  TYPOGRAPHY SCAFFOLDING
\*----------------------------------------*/
@font-face {
  font-family: 'FrutigerNext';
  font-weight: 100;
  src: url("../fonts/frutigernext-light.woff") format("woff"), url("../fonts/frutigernext-light.woff2") format("woff2"); }

@font-face {
  font-family: 'FrutigerNext';
  font-weight: normal;
  src: url("../fonts/frutigernext-regular.woff") format("woff"), url("../fonts/frutigernext-regular.woff2") format("woff2"); }

@font-face {
  font-family: 'FrutigerNext';
  font-weight: bold;
  src: url("../fonts/frutigernext-medium.woff") format("woff"), url("../fonts/frutigernext-medium.woff2") format("woff2"); }

@font-face {
  font-family: 'Cookie';
  font-weight: normal;
  src: url("../fonts/Cookie-Regular.woff") format("woff"), url("../fonts/Cookie-Regular.woff2") format("woff2"); }

html {
  font-family: "FrutigerNext", Helvetica, Arial, sans-serif;
  font-size: 100%;
  line-height: 1.28;
  color: #505050;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-tap-highlight-color: rgba(37, 149, 217, 0.6);
  overflow-y: scroll;
  overflow-x: hidden; }
  html.menu--visible body {
    overflow: hidden;
    height: 80vh; }

body {
  font-size: 1em; }
  @media (min-width: 30em) {
    body {
      font-size: calc(0.69204vw + 0.79239em); } }
  @media (min-width: 48.0625em) {
    body {
      font-size: calc(0.69606vw + 0.79046em); } }
  @media (min-width: 75em) {
    body {
      font-size: 1.3125em; } }

/**
 * Links
 */
a {
  color: #2595d9;
  text-decoration: none;
  transition: color 200ms ease-in-out; }
  a:hover {
    text-decoration: none;
    color: #1b191c; }
  a:focus {
    text-decoration: none; }

/**
 * Headings
 */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin: 0 0 0.5em;
  font-weight: 300; }

h1,
.h1 {
  font-size: 2.25em;
  line-height: 1.15; }
  @media (min-width: 30em) {
    h1,
    .h1 {
      font-size: calc(1.13757vw + 1.90873em); } }
  @media (min-width: 75em) {
    h1,
    .h1 {
      font-size: 2.7619em; } }

h2,
.h2 {
  font-size: 1.875em;
  line-height: 1.2; }
  @media (min-width: 30em) {
    h2,
    .h2 {
      font-size: calc(0.48942vw + 1.72817em); } }
  @media (min-width: 75em) {
    h2,
    .h2 {
      font-size: 2.09524em; } }

h3,
.h3 {
  font-size: 1.5625em;
  line-height: 1.24; }
  @media (min-width: 30em) {
    h3,
    .h3 {
      font-size: calc(-0.08598vw + 1.58829em); } }
  @media (min-width: 75em) {
    h3,
    .h3 {
      font-size: 1.52381em; } }

h4,
.h4,
.link--large,
.user-account__link,
.footer__navigation .menu-level-0 > .menu-item > span {
  font-size: 1.375em; }
  @media (min-width: 30em) {
    h4,
    .h4,
    .link--large,
    .user-account__link,
    .footer__navigation .menu-level-0 > .menu-item > span {
      font-size: calc(-0.30423vw + 1.46627em); } }
  @media (min-width: 75em) {
    h4,
    .h4,
    .link--large,
    .user-account__link,
    .footer__navigation .menu-level-0 > .menu-item > span {
      font-size: 1.2381em; } }

h5,
.h5 {
  font-size: 1.125em; }
  @media (min-width: 30em) {
    h5,
    .h5 {
      font-size: calc(-0.27778vw + 1.20833em); } }
  @media (min-width: 75em) {
    h5,
    .h5 {
      font-size: 1em; } }

h6,
.h6 {
  font-size: 1em; }
  @media (min-width: 30em) {
    h6,
    .h6 {
      font-size: calc(-0.31746vw + 1.09524em); } }
  @media (min-width: 75em) {
    h6,
    .h6 {
      font-size: 0.85714em; } }

.heading--primary {
  color: #2595d9; }

.link--le-club {
  font-family: "Cookie", Helvetica, Arial, sans-serif;
  font-size: 1.5em;
  line-height: 1; }

.link--le-club-portal {
  color: #a2ad24; }

/**
 * Paragraphs
 */
p {
  margin-top: 0;
  margin-bottom: 1.3em; }

/**
 * Preformatted text
 */
pre,
code {
  font-family: 'Monaco', monospace;
  font-weight: normal;
  -moz-tab-size: 4;
       tab-size: 4;
  background-color: #f5f5f5; }

pre {
  padding: 30px;
  margin: 0 0 2em;
  font-size: 0.875rem;
  border-radius: 4px; }

code {
  display: inline-block;
  padding: 1px 5px; }
  pre code {
    display: block;
    padding: 0; }

/**
 * Lists
 */
ul,
ol {
  padding-left: 30px;
  margin: 1em 0; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin: 0; }

dt {
  font-weight: normal; }

dd {
  margin-left: 0; }

.dl--inline dt {
  float: left;
  width: 10em; }

.dl--inline dd {
  margin-left: calc(100px + 18px); }

.dl--flex {
  display: flex;
  flex-wrap: wrap;
  margin: 0; }
  .dl--flex dt {
    flex-basis: 50%;
    padding-right: 30px;
    white-space: nowrap; }
  .dl--flex dd {
    flex-basis: 50%; }

.dl--bank-reference {
  display: flex;
  flex-wrap: wrap;
  margin: 0; }
  .dl--bank-reference dt {
    width: 145px;
    padding-right: 18px;
    white-space: nowrap; }
  .dl--bank-reference dd {
    width: 130px; }

/**
 * Miscellaenous
 */
abbr {
  cursor: help; }

address {
  font-style: normal; }

/*----------------------------------------*\
  TABLE
\*----------------------------------------*/
table {
  width: 100%;
  margin-bottom: 48px;
  border-collapse: collapse;
  line-height: 1.5; }

thead {
  background: #f8f8f8; }

caption {
  margin-bottom: 0.5em;
  line-height: 1.28;
  text-align: left;
  font-weight: 300; }

tr {
  border-bottom: solid 1px #dddddd; }
  tr:last-child {
    border-bottom: none; }

th,
td {
  padding: 0.8em; }
  th p,
  td p {
    margin: 0; }

td {
  font-weight: 300;
  font-size: 0.9em;
  vertical-align: top; }
  td:first-child {
    font-weight: bold; }
  .grid--middle > td {
    vertical-align: middle; }

th {
  text-align: left;
  font-weight: bold;
  font-size: 1em; }

.table-footnotes {
  margin-top: -24px;
  font-size: 0.85em; }

.table--stripped thead {
  background: transparent; }

.table--stripped .tableFloatingHeaderOriginal {
  background: #f8f8f8; }

.table--stripped tbody tr {
  border-bottom: none; }
  .table--stripped tbody tr:first-child {
    border-top: solid 1px #dddddd; }
  .table--stripped tbody tr:last-child {
    border-bottom: solid 1px #dddddd; }
  .table--stripped tbody tr:nth-child(odd) {
    background-color: #f8f8f8; }

.table--stripped td:first-child {
  font-weight: normal; }

@media (min-width: 62em) {
  .tableFloatingHeaderOriginal {
    display: none; }
  .tableFloatingHeader {
    display: table-header-group !important;
    opacity: 1 !important; } }

.table--no-border tr {
  border-bottom: none; }

.table--no-border th,
.table--no-border td {
  padding: 0em 0.8em 0.6em 0;
  font-size: 1em; }

/*----------------------------------------*\
  FORMS
\*----------------------------------------*/
/**
 * Basic form elements
 */
fieldset {
  padding: 0;
  margin: 0;
  border: none; }

.input,
.selectability__textbox,
input[type='text'],
input[type='search'],
input[type='email'],
input[type='tel'],
input[type='url'],
input[type='password'],
input[type='date'],
input[type='datetime'],
input[type='datetime-local'],
input[type='month'],
input[type='week'],
input[type='time'],
input[type='number'],
input[type='file'],
select,
textarea {
  width: 100%;
  padding: 0.526em 1.1em 0.42em;
  color: inherit;
  font-family: inherit;
  line-height: 1.5;
  border: 1px solid #bfbfbf;
  box-sizing: border-box;
  background-color: #ffffff;
  -webkit-appearance: none;
  border-radius: 0;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }
  .input:-ms-input-placeholder,
  .selectability__textbox:-ms-input-placeholder,
  input[type='text']:-ms-input-placeholder,
  input[type='search']:-ms-input-placeholder,
  input[type='email']:-ms-input-placeholder,
  input[type='tel']:-ms-input-placeholder,
  input[type='url']:-ms-input-placeholder,
  input[type='password']:-ms-input-placeholder,
  input[type='date']:-ms-input-placeholder,
  input[type='datetime']:-ms-input-placeholder,
  input[type='datetime-local']:-ms-input-placeholder,
  input[type='month']:-ms-input-placeholder,
  input[type='week']:-ms-input-placeholder,
  input[type='time']:-ms-input-placeholder,
  input[type='number']:-ms-input-placeholder,
  input[type='file']:-ms-input-placeholder,
  select:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    opacity: 1;
    color: #999; }
  .input::placeholder,
  .selectability__textbox::placeholder,
  input[type='text']::placeholder,
  input[type='search']::placeholder,
  input[type='email']::placeholder,
  input[type='tel']::placeholder,
  input[type='url']::placeholder,
  input[type='password']::placeholder,
  input[type='date']::placeholder,
  input[type='datetime']::placeholder,
  input[type='datetime-local']::placeholder,
  input[type='month']::placeholder,
  input[type='week']::placeholder,
  input[type='time']::placeholder,
  input[type='number']::placeholder,
  input[type='file']::placeholder,
  select::placeholder,
  textarea::placeholder {
    opacity: 1;
    color: #999; }
  .input:focus,
  .selectability__textbox:focus,
  input[type='text']:focus,
  input[type='search']:focus,
  input[type='email']:focus,
  input[type='tel']:focus,
  input[type='url']:focus,
  input[type='password']:focus,
  input[type='date']:focus,
  input[type='datetime']:focus,
  input[type='datetime-local']:focus,
  input[type='month']:focus,
  input[type='week']:focus,
  input[type='time']:focus,
  input[type='number']:focus,
  input[type='file']:focus,
  select:focus,
  textarea:focus {
    border-color: #1b191c;
    outline: none; }
  .input[disabled],
  .selectability__textbox[disabled],
  input[type='text'][disabled],
  input[type='search'][disabled],
  input[type='email'][disabled],
  input[type='tel'][disabled],
  input[type='url'][disabled],
  input[type='password'][disabled],
  input[type='date'][disabled],
  input[type='datetime'][disabled],
  input[type='datetime-local'][disabled],
  input[type='month'][disabled],
  input[type='week'][disabled],
  input[type='time'][disabled],
  input[type='number'][disabled],
  input[type='file'][disabled],
  select[disabled],
  textarea[disabled] {
    color: rgba(125, 125, 125, 0.6);
    background-color: #ffffff;
    border-color: rgba(141, 140, 141, 0.6);
    cursor: not-allowed; }

.form-disabled label {
  color: rgba(125, 125, 125, 0.6); }

[type='range'] {
  width: 100%;
  -webkit-appearance: none;
  background-color: transparent; }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    [type='range'] {
      margin-top: -16px;
      margin-bottom: -40px; } }
  @supports (-ms-ime-align: auto) {
    [type='range'] {
      margin-bottom: -16px; } }
  [type='range']:focus {
    outline: 0; }
    [type='range']:focus::-webkit-slider-runnable-track {
      background-color: #e8e8e8; }
    [type='range']:focus::-ms-fill-lower {
      background-color: #e8e8e8; }
    [type='range']:focus::-ms-fill-upper {
      background-color: #e8e8e8; }
  [type='range']::-webkit-slider-runnable-track {
    width: 100%;
    height: 8px;
    background-color: #dbdbdb;
    border: 0 solid #7d7d7d;
    border-radius: 5px;
    cursor: pointer;
    transition: all .2s ease; }
  [type='range']::-webkit-slider-thumb {
    width: 24px;
    height: 24px;
    background: #2595d9;
    border: 0 solid transparent;
    border-radius: 12px;
    box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2), 0 0 4px rgba(13, 13, 13, 0.2);
    cursor: pointer;
    margin-top: -8px;
    -webkit-appearance: none; }
  [type='range']::-moz-range-track {
    width: 100%;
    height: 8px;
    background-color: #dbdbdb;
    border: 0 solid #7d7d7d;
    border-radius: 5px;
    cursor: pointer;
    transition: all .2s ease; }
  [type='range']::-moz-range-thumb {
    width: 24px;
    height: 24px;
    background: #2595d9;
    border: 0 solid transparent;
    border-radius: 12px;
    box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2), 0 0 4px rgba(13, 13, 13, 0.2);
    cursor: pointer; }
  [type='range']::-ms-thumb {
    width: 24px;
    height: 24px;
    background: #2595d9;
    border: 0 solid transparent;
    border-radius: 12px;
    box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2), 0 0 4px rgba(13, 13, 13, 0.2);
    cursor: pointer;
    box-shadow: none; }
  [type='range']::-ms-track {
    background-color: transparent;
    border-width: 12px 0;
    border-color: transparent;
    color: transparent; }
  [type='range']::-ms-fill-lower {
    width: 100%;
    height: 8px;
    background-color: #dbdbdb;
    border: 0 solid #7d7d7d;
    border-radius: 5px;
    cursor: pointer;
    transition: all .2s ease; }
    @supports (-ms-ime-align: auto) {
      [type='range']::-ms-fill-lower {
        margin-bottom: 4px; } }
  [type='range']::-ms-fill-upper {
    width: 100%;
    height: 8px;
    background-color: #dbdbdb;
    border: 0 solid #7d7d7d;
    border-radius: 5px;
    cursor: pointer;
    transition: all .2s ease; }
    @supports (-ms-ime-align: auto) {
      [type='range']::-ms-fill-upper {
        margin-bottom: 4px; } }

.input.error, .error.selectability__textbox,
input.error[type='text'],
input.error[type='search'],
input.error[type='email'],
input.error[type='tel'],
input.error[type='url'],
input.error[type='password'],
input.error[type='date'],
input.error[type='datetime'],
input.error[type='datetime-local'],
input.error[type='month'],
input.error[type='week'],
input.error[type='time'],
input.error[type='number'],
input.error[type='file'],
select.error,
textarea.error,
.input--error.input--error {
  border-color: #c70039; }

select {
  height: calc( 2.34em + 8px);
  padding-top: 0;
  padding-bottom: 0; }

textarea {
  resize: vertical; }

input[type='time'] {
  max-width: 9em; }

label {
  display: block;
  padding-bottom: 9px;
  font-weight: bold;
  cursor: pointer; }
  label.error {
    color: #c70039;
    font-weight: normal; }
  .error + label.error {
    margin-top: 0.3em; }

.label--inline {
  display: inline-block;
  padding-top: 11px;
  padding-bottom: 11px; }
  .label--inline:not(:last-child) {
    margin-right: 30px; }

:-ms-input-placeholder {
  color: #8d8c8d; }

::placeholder {
  color: #8d8c8d; }

/**
 * Forms layout
 */
@media (min-width: 62em) {
  form .section,
  form .form-actions {
    width: 90%; } }

.form-group--radio,
.form-group--checkbox {
  margin-top: 0; }
  .form-group--radio ~ .form-group--radio,
  .form-group--radio ~ .form-group--checkbox,
  .form-group--checkbox ~ .form-group--radio,
  .form-group--checkbox ~ .form-group--checkbox {
    margin-top: 9px; }
  .form-group--radio label,
  .form-group--checkbox label {
    padding: 0;
    line-height: 1;
    font-weight: normal; }
  .form-group--radio .checkmark,
  .form-group--checkbox .checkmark {
    display: inline-block;
    height: 18px;
    width: 18px;
    margin-right: 18px;
    margin-bottom: -2px;
    border: 1px solid #8d8c8d;
    cursor: pointer;
    padding: 2px;
    background-color: #ffffff; }
    .form-group--radio .checkmark .checkmark--inner,
    .form-group--checkbox .checkmark .checkmark--inner {
      transition: background-color 150ms ease-out;
      width: 100%;
      height: 100%;
      display: block; }
  .form-group--radio input:not([disabled]) ~ label:hover .checkmark--inner,
  .form-group--checkbox input:not([disabled]) ~ label:hover .checkmark--inner {
    background-color: #2595d9; }
  .form-group--radio input:not([disabled]):checked ~ label .checkmark--inner,
  .form-group--checkbox input:not([disabled]):checked ~ label .checkmark--inner {
    background-color: #1b191c !important; }
  .form-group--radio input[disabled] ~ label,
  .form-group--checkbox input[disabled] ~ label {
    color: rgba(125, 125, 125, 0.6);
    cursor: not-allowed; }
    .form-group--radio input[disabled] ~ label .checkmark,
    .form-group--checkbox input[disabled] ~ label .checkmark {
      border-color: rgba(141, 140, 141, 0.6);
      cursor: not-allowed; }
  .form-group--radio input,
  .form-group--checkbox input {
    display: none; }
  @media (min-width: 62em) {
    .form-group--radio,
    .form-group--checkbox {
      display: inline-block;
      margin: 18px 30px 0 0; }
      .form-group--radio label,
      .form-group--checkbox label {
        display: inline-block;
        width: auto; } }
  .form-group--radio.form-group--block,
  .form-group--checkbox.form-group--block {
    display: block; }

.form-group--radio .checkmark {
  border-radius: 100%; }
  .form-group--radio .checkmark .checkmark--inner {
    border-radius: 100%; }

.field-label {
  font-weight: bold;
  padding: 11px 0; }

.field-help {
  margin-top: 9px;
  margin-bottom: 0;
  color: #8d8c8d; }

@media (min-width: 62em) {
  .fieldgroup {
    overflow: hidden;
    margin-left: -40px; } }

.fieldgroup legend {
  position: static;
  font-size: inherit;
  font-weight: bold;
  padding: 11px 0; }
  @media (min-width: 62em) {
    .fieldgroup legend {
      margin: 0;
      padding: 0 16px 0 40px; } }

@media (min-width: 62em) {
  .fieldgroup .fieldset-wrapper {
    float: left;
    padding-left: 40px; } }

.form-actions .button {
  width: 100%;
  text-align: center; }

@media (min-width: 62em) {
  .form-actions .button {
    width: auto; } }

label.form-required::after,
.form__label.form-required::after,
legend .form-required::after {
  content: '*';
  display: inline-block;
  padding-left: 5px; }

@media (min-width: 62em) {
  .checkboxes--md-spaced .option {
    margin-bottom: 18px; } }

/**
 * Specific forms
 * TODO: refactor to apply this in a more generic way
 */
@media (min-width: 62em) {
  .form-item-reachable-by-phone-from label,
  .form-item-reachable-by-phone-to label {
    display: inline-block;
    padding-bottom: 0;
    margin-right: 9px; } }

@media (min-width: 62em) {
  .form-item-reachable-by-phone-from input,
  .form-item-reachable-by-phone-to input {
    display: inline-block; } }

@media (max-width: 61.9375em) {
  #edit-contact-by-container-availabilities > * {
    margin-left: 48px; } }

#edit-contact-by-container-availabilities label.form-required:after {
  display: none; }

#edit-reachable-by-phone-from-to-container label {
  display: inline-block;
  width: 50px;
  font-weight: normal; }

@media (max-width: 61.9375em) {
  .order-back-button {
    margin-top: 30px; } }

@media (min-width: 62em) {
  .order-back-button {
    margin-top: -80px; } }

/**
 * Sizes
 */
.input--small,
.select--small {
  font-size: 0.85em !important; }

.input--small {
  padding: 9px !important; }

.select--small {
  height: 40px !important;
  padding-left: 9px !important;
  padding-right: 9px !important; }

.calculator__block input[type='number'],
.input--large {
  font-size: 1.2em;
  line-height: 1.2;
  padding: 27px; }

.select--large {
  font-size: 1.2em !important;
  height: 84px !important;
  padding-left: 27px !important;
  padding-right: 27px !important; }

/**
 *  Concealed input
 */
input.concealed-input {
  border: none;
  height: 58px;
  padding: 9px 0 !important;
  font-size: 2rem;
  color: #1b191c; }
  input.concealed-input[disabled] {
    color: #1b191c; }

.tooltip-wrapper input::-ms-clear {
  display: none; }

.form-tooltip {
  position: absolute;
  right: 18px;
  top: 1em;
  margin-top: -0.5em; }
  @media (min-width: 62em) {
    .form-tooltip {
      right: -54px; } }
  .form-tooltip svg {
    display: block; }
  .form-element--stacked .form-tooltip {
    display: inline-block;
    position: relative;
    right: auto;
    top: 5px; }

.form-item--has-tooltip {
  display: inline-block; }

.form-item--has-inline-label label {
  display: inline-block;
  margin-right: 4.5px; }

.form--faq-inline-search {
  position: relative; }
  .form--faq-inline-search::after {
    content: ''; }

input[type='date'] {
  width: calc(100% - 2.1em); }
  input[type='date'] + svg {
    width: 1.3em;
    height: 1.3em;
    margin-left: 0.5em; }

/**
 * Helpers
 */
/*----------------------------------------*\
  TEXT
\*----------------------------------------*/
/**
 * Alignment
 */
.text-left {
  text-align: left; }

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

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

/**
 * Case
 */
.text-uppercase {
  text-transform: uppercase;
  letter-spacing: 0.045em; }

.text-capitalize {
  text-transform: capitalize; }

/**
 * Styling
 */
.text-italic {
  font-style: italic; }

.text-bold {
  font-weight: bold; }

.text-medium {
  font-weight: 500; }

.text-normal {
  font-weight: normal; }

.text-light {
  font-weight: 300; }

/**
 * Size
 */
.text-tiny {
  font-size: 0.75em; }
  @media (min-width: 30em) {
    .text-tiny {
      font-size: calc(-0.07937vw + 0.77381em); } }
  @media (min-width: 75em) {
    .text-tiny {
      font-size: 0.71429em; } }

.text-small,
label.error,
.menu-item--content-extras,
.tooltip,
.popover-title,
.popover-content {
  font-size: 0.875em; }
  @media (min-width: 30em) {
    .text-small,
    label.error,
    .menu-item--content-extras,
    .tooltip,
    .popover-title,
    .popover-content {
      font-size: calc(-0.03968vw + 0.8869em); } }
  @media (min-width: 75em) {
    .text-small,
    label.error,
    .menu-item--content-extras,
    .tooltip,
    .popover-title,
    .popover-content {
      font-size: 0.85714em; } }

.text-large,
.box--hero .box__subtitle,
.box--phylactery .box__subtitle {
  font-size: 1.125em; }
  @media (min-width: 30em) {
    .text-large,
    .box--hero .box__subtitle,
    .box--phylactery .box__subtitle {
      font-size: calc(0.03968vw + 1.1131em); } }
  @media (min-width: 75em) {
    .text-large,
    .box--hero .box__subtitle,
    .box--phylactery .box__subtitle {
      font-size: 1.14286em; } }

/**
 * Colors
 */
.text-neutral {
  color: #505050; }

.text-muted {
  color: rgba(80, 80, 80, 0.6); }

.text-c-light {
  color: #8d8c8d; }

.text-c-warning {
  color: orange; }

.text-c-error {
  color: #c70039; }

.text-c-brand {
  color: #2595d9; }

.text-error {
  color: #c70039;
  margin-top: 9px; }

/**
 * Misc
 */
.text-nowrap {
  white-space: nowrap; }

/*----------------------------------------*\
  COLORS
\*----------------------------------------*/
.bkg--highlighted {
  color: #ffffff;
  background-color: #2595d9; }

.bkg--highlighted-dark {
  color: #ffffff;
  background-color: #196897; }

.bkg--lightest {
  color: #505050;
  background-color: #ffffff; }

.bkg--lighter {
  color: #505050;
  background-color: #f8f8f8; }

.bkg--light {
  color: #ffffff;
  background-color: #8d8c8d; }

.bkg--alt {
  color: #ffffff;
  background-color: #7d7d7d; }

.bkg--dark {
  color: #ffffff;
  background-color: #505050; }

.bkg--darker {
  color: #ffffff;
  background-color: #1b191c; }

.bkg--le-club {
  color: #ffffff;
  background-color: #a2ad24; }

.bkg--base {
  color: #505050;
  background-color: #ffffff; }

.bkg--error {
  color: #ffffff;
  background-color: #c70039; }

/*----------------------------------------*\
  TEXT RESPONSIVE
\*----------------------------------------*/
/**
 * Alignment
 */
@media (min-width: 30em) {
  .xs-text-left {
    text-align: left; }
  .xs-text-center {
    text-align: center; }
  .xs-text-right {
    text-align: right; } }

@media (min-width: 40em) {
  .xsl-text-left {
    text-align: left; }
  .xsl-text-center {
    text-align: center; }
  .xsl-text-right {
    text-align: right; } }

@media (min-width: 48.0625em) {
  .sm-text-left {
    text-align: left; }
  .sm-text-center {
    text-align: center; }
  .sm-text-right {
    text-align: right; } }

@media (min-width: 62em) {
  .md-text-left {
    text-align: left; }
  .md-text-center {
    text-align: center; }
  .md-text-right {
    text-align: right; } }

@media (min-width: 75em) {
  .lg-text-left {
    text-align: left; }
  .lg-text-center {
    text-align: center; }
  .lg-text-right {
    text-align: right; } }

/*----------------------------------------*\
  FLOAT
\*----------------------------------------*/
.pull-left {
  float: left; }

.pull-right {
  float: right; }

.clearfix:after,
dl:after,
.dl--inline dd:after,
.media:after {
  content: '';
  display: table;
  clear: both; }

/*----------------------------------------*\
  SPACINGS
\*----------------------------------------*/
/**
 * MARGINS
 * Generate margin classes based on spacing units
 *
 * mrg(|t|r|b|l|h|v)0   => no margin
 * mrg(|t|r|b|l|h|v)--  => 1/4
 * mrg(|t|r|b|l|h|v)-   => 1/2
 * mrg(|t|r|b|l|h|v)    => 1x
 * mrg(|t|r|b|l|h|v)+   => 2x
 * mrg(|t|r|b|l|h|v)++  => 4x
 *
 * {nothing}  => all
 * t          => top
 * r          => right
 * b          => bottom
 * l          => left
 * h          => horizontal (left + right)
 * v          => vertical (top + bottom)
 */
.mrg0 {
  margin: 0 !important; }

.mrgt0 {
  margin-top: 0 !important; }

.mrgr0 {
  margin-right: 0 !important; }

.mrgb0 {
  margin-bottom: 0 !important; }

.mrgl0 {
  margin-left: 0 !important; }

.mrgh0 {
  margin-right: 0 !important;
  margin-left: 0 !important; }

.mrgv0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

.mrg {
  margin: 30px !important; }

.mrgt {
  margin-top: 30px !important; }

.mrgr {
  margin-right: 30px !important; }

.mrgb, [id="block-exposed-form-search-hp"] .form-group--textfield {
  margin-bottom: 30px !important; }

.mrgl {
  margin-left: 30px !important; }

.mrgh {
  margin-right: 30px !important;
  margin-left: 30px !important; }

.mrgv {
  margin-top: 30px !important;
  margin-bottom: 30px !important; }

.mrg-- {
  margin: 9px !important; }

.mrgt-- {
  margin-top: 9px !important; }

.mrgr-- {
  margin-right: 9px !important; }

.mrgb-- {
  margin-bottom: 9px !important; }

.mrgl-- {
  margin-left: 9px !important; }

.mrgh-- {
  margin-right: 9px !important;
  margin-left: 9px !important; }

.mrgv-- {
  margin-top: 9px !important;
  margin-bottom: 9px !important; }

.mrg- {
  margin: 18px !important; }

.mrgt- {
  margin-top: 18px !important; }

.mrgr- {
  margin-right: 18px !important; }

.mrgb- {
  margin-bottom: 18px !important; }

.mrgl- {
  margin-left: 18px !important; }

.mrgh- {
  margin-right: 18px !important;
  margin-left: 18px !important; }

.mrgv- {
  margin-top: 18px !important;
  margin-bottom: 18px !important; }

.mrg\+ {
  margin: 48px !important; }

.mrgt\+ {
  margin-top: 48px !important; }

.mrgr\+ {
  margin-right: 48px !important; }

.mrgb\+ {
  margin-bottom: 48px !important; }

.mrgl\+ {
  margin-left: 48px !important; }

.mrgh\+ {
  margin-right: 48px !important;
  margin-left: 48px !important; }

.mrgv\+ {
  margin-top: 48px !important;
  margin-bottom: 48px !important; }

.mrg\+\+ {
  margin: 97px !important; }

.mrgt\+\+ {
  margin-top: 97px !important; }

.mrgr\+\+ {
  margin-right: 97px !important; }

.mrgb\+\+ {
  margin-bottom: 97px !important; }

.mrgl\+\+ {
  margin-left: 97px !important; }

.mrgh\+\+ {
  margin-right: 97px !important;
  margin-left: 97px !important; }

.mrgv\+\+ {
  margin-top: 97px !important;
  margin-bottom: 97px !important; }

/**
 * PADDINGS
 * Generate padding classes based on spacing units
 *
 * pdg(|t|r|b|l|h|v)0   => no margin
 * pdg(|t|r|b|l|h|v)--  => 1/4
 * pdg(|t|r|b|l|h|v)-   => 1/2
 * pdg(|t|r|b|l|h|v)    => 1x
 * pdg(|t|r|b|l|h|v)+   => 2x
 * pdg(|t|r|b|l|h|v)++  => 4x
 *
 * {nothing}  => all
 * t          => top
 * r          => right
 * b          => bottom
 * l          => left
 * h          => horizontal (left + right)
 * v          => vertical (top + bottom)
 */
.pdg0 {
  padding: 0 !important; }

.pdgt0 {
  padding-top: 0 !important; }

.pdgr0 {
  padding-right: 0 !important; }

.pdgb0 {
  padding-bottom: 0 !important; }

.pdgl0 {
  padding-left: 0 !important; }

.pdgh0 {
  padding-right: 0 !important;
  padding-left: 0 !important; }

.pdgv0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

.pdg {
  padding: 30px !important; }

.pdgt {
  padding-top: 30px !important; }

.pdgr {
  padding-right: 30px !important; }

.pdgb {
  padding-bottom: 30px !important; }

.pdgl {
  padding-left: 30px !important; }

.pdgh {
  padding-right: 30px !important;
  padding-left: 30px !important; }

.pdgv {
  padding-top: 30px !important;
  padding-bottom: 30px !important; }

.pdg-- {
  padding: 9px !important; }

.pdgt-- {
  padding-top: 9px !important; }

.pdgr-- {
  padding-right: 9px !important; }

.pdgb-- {
  padding-bottom: 9px !important; }

.pdgl-- {
  padding-left: 9px !important; }

.pdgh-- {
  padding-right: 9px !important;
  padding-left: 9px !important; }

.pdgv-- {
  padding-top: 9px !important;
  padding-bottom: 9px !important; }

.pdg- {
  padding: 18px !important; }

.pdgt- {
  padding-top: 18px !important; }

.pdgr- {
  padding-right: 18px !important; }

.pdgb- {
  padding-bottom: 18px !important; }

.pdgl- {
  padding-left: 18px !important; }

.pdgh- {
  padding-right: 18px !important;
  padding-left: 18px !important; }

.pdgv- {
  padding-top: 18px !important;
  padding-bottom: 18px !important; }

.pdg\+ {
  padding: 48px !important; }

.pdgt\+ {
  padding-top: 48px !important; }

.pdgr\+ {
  padding-right: 48px !important; }

.pdgb\+ {
  padding-bottom: 48px !important; }

.pdgl\+ {
  padding-left: 48px !important; }

.pdgh\+ {
  padding-right: 48px !important;
  padding-left: 48px !important; }

.pdgv\+ {
  padding-top: 48px !important;
  padding-bottom: 48px !important; }

.pdg\+\+ {
  padding: 97px !important; }

.pdgt\+\+ {
  padding-top: 97px !important; }

.pdgr\+\+ {
  padding-right: 97px !important; }

.pdgb\+\+ {
  padding-bottom: 97px !important; }

.pdgl\+\+ {
  padding-left: 97px !important; }

.pdgh\+\+ {
  padding-right: 97px !important;
  padding-left: 97px !important; }

.pdgv\+\+ {
  padding-top: 97px !important;
  padding-bottom: 97px !important; }

/*----------------------------------------*\
  SPACINGS RESPONSIVE
\*----------------------------------------*/
/**
 * Margins
 */
@media (min-width: 30em) {
  .xs-mrg0 {
    margin: 0 !important; }
  .xs-mrgt0 {
    margin-top: 0 !important; }
  .xs-mrgr0 {
    margin-right: 0 !important; }
  .xs-mrgb0 {
    margin-bottom: 0 !important; }
  .xs-mrgl0 {
    margin-left: 0 !important; }
  .xs-mrgh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .xs-mrgv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; }
  .xs-mrg {
    margin: 30px !important; }
  .xs-mrgt {
    margin-top: 30px !important; }
  .xs-mrgr {
    margin-right: 30px !important; }
  .xs-mrgb {
    margin-bottom: 30px !important; }
  .xs-mrgl {
    margin-left: 30px !important; }
  .xs-mrgh {
    margin-right: 30px !important;
    margin-left: 30px !important; }
  .xs-mrgv {
    margin-top: 30px !important;
    margin-bottom: 30px !important; }
  .xs-mrg-- {
    margin: 9px !important; }
  .xs-mrgt-- {
    margin-top: 9px !important; }
  .xs-mrgr-- {
    margin-right: 9px !important; }
  .xs-mrgb-- {
    margin-bottom: 9px !important; }
  .xs-mrgl-- {
    margin-left: 9px !important; }
  .xs-mrgh-- {
    margin-right: 9px !important;
    margin-left: 9px !important; }
  .xs-mrgv-- {
    margin-top: 9px !important;
    margin-bottom: 9px !important; }
  .xs-mrg- {
    margin: 18px !important; }
  .xs-mrgt- {
    margin-top: 18px !important; }
  .xs-mrgr- {
    margin-right: 18px !important; }
  .xs-mrgb- {
    margin-bottom: 18px !important; }
  .xs-mrgl- {
    margin-left: 18px !important; }
  .xs-mrgh- {
    margin-right: 18px !important;
    margin-left: 18px !important; }
  .xs-mrgv- {
    margin-top: 18px !important;
    margin-bottom: 18px !important; }
  .xs-mrg\+ {
    margin: 48px !important; }
  .xs-mrgt\+ {
    margin-top: 48px !important; }
  .xs-mrgr\+ {
    margin-right: 48px !important; }
  .xs-mrgb\+ {
    margin-bottom: 48px !important; }
  .xs-mrgl\+ {
    margin-left: 48px !important; }
  .xs-mrgh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .xs-mrgv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; }
  .xs-mrg\+\+ {
    margin: 97px !important; }
  .xs-mrgt\+\+ {
    margin-top: 97px !important; }
  .xs-mrgr\+\+ {
    margin-right: 97px !important; }
  .xs-mrgb\+\+ {
    margin-bottom: 97px !important; }
  .xs-mrgl\+\+ {
    margin-left: 97px !important; }
  .xs-mrgh\+\+ {
    margin-right: 97px !important;
    margin-left: 97px !important; }
  .xs-mrgv\+\+ {
    margin-top: 97px !important;
    margin-bottom: 97px !important; } }

@media (min-width: 40em) {
  .xsl-mrg0 {
    margin: 0 !important; }
  .xsl-mrgt0 {
    margin-top: 0 !important; }
  .xsl-mrgr0 {
    margin-right: 0 !important; }
  .xsl-mrgb0 {
    margin-bottom: 0 !important; }
  .xsl-mrgl0 {
    margin-left: 0 !important; }
  .xsl-mrgh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .xsl-mrgv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; }
  .xsl-mrg {
    margin: 30px !important; }
  .xsl-mrgt {
    margin-top: 30px !important; }
  .xsl-mrgr {
    margin-right: 30px !important; }
  .xsl-mrgb {
    margin-bottom: 30px !important; }
  .xsl-mrgl {
    margin-left: 30px !important; }
  .xsl-mrgh {
    margin-right: 30px !important;
    margin-left: 30px !important; }
  .xsl-mrgv {
    margin-top: 30px !important;
    margin-bottom: 30px !important; }
  .xsl-mrg-- {
    margin: 9px !important; }
  .xsl-mrgt-- {
    margin-top: 9px !important; }
  .xsl-mrgr-- {
    margin-right: 9px !important; }
  .xsl-mrgb-- {
    margin-bottom: 9px !important; }
  .xsl-mrgl-- {
    margin-left: 9px !important; }
  .xsl-mrgh-- {
    margin-right: 9px !important;
    margin-left: 9px !important; }
  .xsl-mrgv-- {
    margin-top: 9px !important;
    margin-bottom: 9px !important; }
  .xsl-mrg- {
    margin: 18px !important; }
  .xsl-mrgt- {
    margin-top: 18px !important; }
  .xsl-mrgr- {
    margin-right: 18px !important; }
  .xsl-mrgb- {
    margin-bottom: 18px !important; }
  .xsl-mrgl- {
    margin-left: 18px !important; }
  .xsl-mrgh- {
    margin-right: 18px !important;
    margin-left: 18px !important; }
  .xsl-mrgv- {
    margin-top: 18px !important;
    margin-bottom: 18px !important; }
  .xsl-mrg\+ {
    margin: 48px !important; }
  .xsl-mrgt\+ {
    margin-top: 48px !important; }
  .xsl-mrgr\+ {
    margin-right: 48px !important; }
  .xsl-mrgb\+ {
    margin-bottom: 48px !important; }
  .xsl-mrgl\+ {
    margin-left: 48px !important; }
  .xsl-mrgh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .xsl-mrgv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; }
  .xsl-mrg\+\+ {
    margin: 97px !important; }
  .xsl-mrgt\+\+ {
    margin-top: 97px !important; }
  .xsl-mrgr\+\+ {
    margin-right: 97px !important; }
  .xsl-mrgb\+\+ {
    margin-bottom: 97px !important; }
  .xsl-mrgl\+\+ {
    margin-left: 97px !important; }
  .xsl-mrgh\+\+ {
    margin-right: 97px !important;
    margin-left: 97px !important; }
  .xsl-mrgv\+\+ {
    margin-top: 97px !important;
    margin-bottom: 97px !important; } }

@media (min-width: 48.0625em) {
  .sm-mrg0 {
    margin: 0 !important; }
  .sm-mrgt0 {
    margin-top: 0 !important; }
  .sm-mrgr0 {
    margin-right: 0 !important; }
  .sm-mrgb0 {
    margin-bottom: 0 !important; }
  .sm-mrgl0 {
    margin-left: 0 !important; }
  .sm-mrgh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .sm-mrgv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; }
  .sm-mrg {
    margin: 30px !important; }
  .sm-mrgt {
    margin-top: 30px !important; }
  .sm-mrgr {
    margin-right: 30px !important; }
  .sm-mrgb {
    margin-bottom: 30px !important; }
  .sm-mrgl {
    margin-left: 30px !important; }
  .sm-mrgh {
    margin-right: 30px !important;
    margin-left: 30px !important; }
  .sm-mrgv {
    margin-top: 30px !important;
    margin-bottom: 30px !important; }
  .sm-mrg-- {
    margin: 9px !important; }
  .sm-mrgt-- {
    margin-top: 9px !important; }
  .sm-mrgr-- {
    margin-right: 9px !important; }
  .sm-mrgb-- {
    margin-bottom: 9px !important; }
  .sm-mrgl-- {
    margin-left: 9px !important; }
  .sm-mrgh-- {
    margin-right: 9px !important;
    margin-left: 9px !important; }
  .sm-mrgv-- {
    margin-top: 9px !important;
    margin-bottom: 9px !important; }
  .sm-mrg- {
    margin: 18px !important; }
  .sm-mrgt- {
    margin-top: 18px !important; }
  .sm-mrgr- {
    margin-right: 18px !important; }
  .sm-mrgb- {
    margin-bottom: 18px !important; }
  .sm-mrgl- {
    margin-left: 18px !important; }
  .sm-mrgh- {
    margin-right: 18px !important;
    margin-left: 18px !important; }
  .sm-mrgv- {
    margin-top: 18px !important;
    margin-bottom: 18px !important; }
  .sm-mrg\+ {
    margin: 48px !important; }
  .sm-mrgt\+ {
    margin-top: 48px !important; }
  .sm-mrgr\+ {
    margin-right: 48px !important; }
  .sm-mrgb\+ {
    margin-bottom: 48px !important; }
  .sm-mrgl\+ {
    margin-left: 48px !important; }
  .sm-mrgh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .sm-mrgv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; }
  .sm-mrg\+\+ {
    margin: 97px !important; }
  .sm-mrgt\+\+ {
    margin-top: 97px !important; }
  .sm-mrgr\+\+ {
    margin-right: 97px !important; }
  .sm-mrgb\+\+ {
    margin-bottom: 97px !important; }
  .sm-mrgl\+\+ {
    margin-left: 97px !important; }
  .sm-mrgh\+\+ {
    margin-right: 97px !important;
    margin-left: 97px !important; }
  .sm-mrgv\+\+ {
    margin-top: 97px !important;
    margin-bottom: 97px !important; } }

@media (min-width: 62em) {
  .md-mrg0 {
    margin: 0 !important; }
  .md-mrgt0 {
    margin-top: 0 !important; }
  .md-mrgr0 {
    margin-right: 0 !important; }
  .md-mrgb0 {
    margin-bottom: 0 !important; }
  .md-mrgl0 {
    margin-left: 0 !important; }
  .md-mrgh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .md-mrgv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; }
  .md-mrg {
    margin: 30px !important; }
  .md-mrgt {
    margin-top: 30px !important; }
  .md-mrgr {
    margin-right: 30px !important; }
  .md-mrgb {
    margin-bottom: 30px !important; }
  .md-mrgl {
    margin-left: 30px !important; }
  .md-mrgh {
    margin-right: 30px !important;
    margin-left: 30px !important; }
  .md-mrgv {
    margin-top: 30px !important;
    margin-bottom: 30px !important; }
  .md-mrg-- {
    margin: 9px !important; }
  .md-mrgt-- {
    margin-top: 9px !important; }
  .md-mrgr-- {
    margin-right: 9px !important; }
  .md-mrgb-- {
    margin-bottom: 9px !important; }
  .md-mrgl-- {
    margin-left: 9px !important; }
  .md-mrgh-- {
    margin-right: 9px !important;
    margin-left: 9px !important; }
  .md-mrgv-- {
    margin-top: 9px !important;
    margin-bottom: 9px !important; }
  .md-mrg- {
    margin: 18px !important; }
  .md-mrgt- {
    margin-top: 18px !important; }
  .md-mrgr- {
    margin-right: 18px !important; }
  .md-mrgb- {
    margin-bottom: 18px !important; }
  .md-mrgl- {
    margin-left: 18px !important; }
  .md-mrgh- {
    margin-right: 18px !important;
    margin-left: 18px !important; }
  .md-mrgv- {
    margin-top: 18px !important;
    margin-bottom: 18px !important; }
  .md-mrg\+ {
    margin: 48px !important; }
  .md-mrgt\+ {
    margin-top: 48px !important; }
  .md-mrgr\+ {
    margin-right: 48px !important; }
  .md-mrgb\+ {
    margin-bottom: 48px !important; }
  .md-mrgl\+ {
    margin-left: 48px !important; }
  .md-mrgh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .md-mrgv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; }
  .md-mrg\+\+ {
    margin: 97px !important; }
  .md-mrgt\+\+ {
    margin-top: 97px !important; }
  .md-mrgr\+\+ {
    margin-right: 97px !important; }
  .md-mrgb\+\+ {
    margin-bottom: 97px !important; }
  .md-mrgl\+\+ {
    margin-left: 97px !important; }
  .md-mrgh\+\+ {
    margin-right: 97px !important;
    margin-left: 97px !important; }
  .md-mrgv\+\+ {
    margin-top: 97px !important;
    margin-bottom: 97px !important; } }

@media (min-width: 75em) {
  .lg-mrg0 {
    margin: 0 !important; }
  .lg-mrgt0 {
    margin-top: 0 !important; }
  .lg-mrgr0 {
    margin-right: 0 !important; }
  .lg-mrgb0 {
    margin-bottom: 0 !important; }
  .lg-mrgl0 {
    margin-left: 0 !important; }
  .lg-mrgh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .lg-mrgv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; }
  .lg-mrg {
    margin: 30px !important; }
  .lg-mrgt {
    margin-top: 30px !important; }
  .lg-mrgr {
    margin-right: 30px !important; }
  .lg-mrgb {
    margin-bottom: 30px !important; }
  .lg-mrgl {
    margin-left: 30px !important; }
  .lg-mrgh {
    margin-right: 30px !important;
    margin-left: 30px !important; }
  .lg-mrgv {
    margin-top: 30px !important;
    margin-bottom: 30px !important; }
  .lg-mrg-- {
    margin: 9px !important; }
  .lg-mrgt-- {
    margin-top: 9px !important; }
  .lg-mrgr-- {
    margin-right: 9px !important; }
  .lg-mrgb-- {
    margin-bottom: 9px !important; }
  .lg-mrgl-- {
    margin-left: 9px !important; }
  .lg-mrgh-- {
    margin-right: 9px !important;
    margin-left: 9px !important; }
  .lg-mrgv-- {
    margin-top: 9px !important;
    margin-bottom: 9px !important; }
  .lg-mrg- {
    margin: 18px !important; }
  .lg-mrgt- {
    margin-top: 18px !important; }
  .lg-mrgr- {
    margin-right: 18px !important; }
  .lg-mrgb- {
    margin-bottom: 18px !important; }
  .lg-mrgl- {
    margin-left: 18px !important; }
  .lg-mrgh- {
    margin-right: 18px !important;
    margin-left: 18px !important; }
  .lg-mrgv- {
    margin-top: 18px !important;
    margin-bottom: 18px !important; }
  .lg-mrg\+ {
    margin: 48px !important; }
  .lg-mrgt\+ {
    margin-top: 48px !important; }
  .lg-mrgr\+ {
    margin-right: 48px !important; }
  .lg-mrgb\+ {
    margin-bottom: 48px !important; }
  .lg-mrgl\+ {
    margin-left: 48px !important; }
  .lg-mrgh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .lg-mrgv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; }
  .lg-mrg\+\+ {
    margin: 97px !important; }
  .lg-mrgt\+\+ {
    margin-top: 97px !important; }
  .lg-mrgr\+\+ {
    margin-right: 97px !important; }
  .lg-mrgb\+\+ {
    margin-bottom: 97px !important; }
  .lg-mrgl\+\+ {
    margin-left: 97px !important; }
  .lg-mrgh\+\+ {
    margin-right: 97px !important;
    margin-left: 97px !important; }
  .lg-mrgv\+\+ {
    margin-top: 97px !important;
    margin-bottom: 97px !important; } }

/**
 * Paddings
 */
@media (min-width: 30em) {
  .xs-pdg0 {
    padding: 0 !important; }
  .xs-pdgt0 {
    padding-top: 0 !important; }
  .xs-pdgr0 {
    padding-right: 0 !important; }
  .xs-pdgb0 {
    padding-bottom: 0 !important; }
  .xs-pdgl0 {
    padding-left: 0 !important; }
  .xs-pdgh0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .xs-pdgv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; }
  .xs-pdg {
    padding: 30px !important; }
  .xs-pdgt {
    padding-top: 30px !important; }
  .xs-pdgr {
    padding-right: 30px !important; }
  .xs-pdgb {
    padding-bottom: 30px !important; }
  .xs-pdgl {
    padding-left: 30px !important; }
  .xs-pdgh {
    padding-right: 30px !important;
    padding-left: 30px !important; }
  .xs-pdgv {
    padding-top: 30px !important;
    padding-bottom: 30px !important; }
  .xs-pdg-- {
    padding: 9px !important; }
  .xs-pdgt-- {
    padding-top: 9px !important; }
  .xs-pdgr-- {
    padding-right: 9px !important; }
  .xs-pdgb-- {
    padding-bottom: 9px !important; }
  .xs-pdgl-- {
    padding-left: 9px !important; }
  .xs-pdgh-- {
    padding-right: 9px !important;
    padding-left: 9px !important; }
  .xs-pdgv-- {
    padding-top: 9px !important;
    padding-bottom: 9px !important; }
  .xs-pdg- {
    padding: 18px !important; }
  .xs-pdgt- {
    padding-top: 18px !important; }
  .xs-pdgr- {
    padding-right: 18px !important; }
  .xs-pdgb- {
    padding-bottom: 18px !important; }
  .xs-pdgl- {
    padding-left: 18px !important; }
  .xs-pdgh- {
    padding-right: 18px !important;
    padding-left: 18px !important; }
  .xs-pdgv- {
    padding-top: 18px !important;
    padding-bottom: 18px !important; }
  .xs-pdg\+ {
    padding: 48px !important; }
  .xs-pdgt\+ {
    padding-top: 48px !important; }
  .xs-pdgr\+ {
    padding-right: 48px !important; }
  .xs-pdgb\+ {
    padding-bottom: 48px !important; }
  .xs-pdgl\+ {
    padding-left: 48px !important; }
  .xs-pdgh\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .xs-pdgv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; }
  .xs-pdg\+\+ {
    padding: 97px !important; }
  .xs-pdgt\+\+ {
    padding-top: 97px !important; }
  .xs-pdgr\+\+ {
    padding-right: 97px !important; }
  .xs-pdgb\+\+ {
    padding-bottom: 97px !important; }
  .xs-pdgl\+\+ {
    padding-left: 97px !important; }
  .xs-pdgh\+\+ {
    padding-right: 97px !important;
    padding-left: 97px !important; }
  .xs-pdgv\+\+ {
    padding-top: 97px !important;
    padding-bottom: 97px !important; } }

@media (min-width: 40em) {
  .xsl-pdg0 {
    padding: 0 !important; }
  .xsl-pdgt0 {
    padding-top: 0 !important; }
  .xsl-pdgr0 {
    padding-right: 0 !important; }
  .xsl-pdgb0 {
    padding-bottom: 0 !important; }
  .xsl-pdgl0 {
    padding-left: 0 !important; }
  .xsl-pdgh0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .xsl-pdgv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; }
  .xsl-pdg {
    padding: 30px !important; }
  .xsl-pdgt {
    padding-top: 30px !important; }
  .xsl-pdgr {
    padding-right: 30px !important; }
  .xsl-pdgb {
    padding-bottom: 30px !important; }
  .xsl-pdgl {
    padding-left: 30px !important; }
  .xsl-pdgh {
    padding-right: 30px !important;
    padding-left: 30px !important; }
  .xsl-pdgv {
    padding-top: 30px !important;
    padding-bottom: 30px !important; }
  .xsl-pdg-- {
    padding: 9px !important; }
  .xsl-pdgt-- {
    padding-top: 9px !important; }
  .xsl-pdgr-- {
    padding-right: 9px !important; }
  .xsl-pdgb-- {
    padding-bottom: 9px !important; }
  .xsl-pdgl-- {
    padding-left: 9px !important; }
  .xsl-pdgh-- {
    padding-right: 9px !important;
    padding-left: 9px !important; }
  .xsl-pdgv-- {
    padding-top: 9px !important;
    padding-bottom: 9px !important; }
  .xsl-pdg- {
    padding: 18px !important; }
  .xsl-pdgt- {
    padding-top: 18px !important; }
  .xsl-pdgr- {
    padding-right: 18px !important; }
  .xsl-pdgb- {
    padding-bottom: 18px !important; }
  .xsl-pdgl- {
    padding-left: 18px !important; }
  .xsl-pdgh- {
    padding-right: 18px !important;
    padding-left: 18px !important; }
  .xsl-pdgv- {
    padding-top: 18px !important;
    padding-bottom: 18px !important; }
  .xsl-pdg\+ {
    padding: 48px !important; }
  .xsl-pdgt\+ {
    padding-top: 48px !important; }
  .xsl-pdgr\+ {
    padding-right: 48px !important; }
  .xsl-pdgb\+ {
    padding-bottom: 48px !important; }
  .xsl-pdgl\+ {
    padding-left: 48px !important; }
  .xsl-pdgh\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .xsl-pdgv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; }
  .xsl-pdg\+\+ {
    padding: 97px !important; }
  .xsl-pdgt\+\+ {
    padding-top: 97px !important; }
  .xsl-pdgr\+\+ {
    padding-right: 97px !important; }
  .xsl-pdgb\+\+ {
    padding-bottom: 97px !important; }
  .xsl-pdgl\+\+ {
    padding-left: 97px !important; }
  .xsl-pdgh\+\+ {
    padding-right: 97px !important;
    padding-left: 97px !important; }
  .xsl-pdgv\+\+ {
    padding-top: 97px !important;
    padding-bottom: 97px !important; } }

@media (min-width: 48.0625em) {
  .sm-pdg0 {
    padding: 0 !important; }
  .sm-pdgt0 {
    padding-top: 0 !important; }
  .sm-pdgr0 {
    padding-right: 0 !important; }
  .sm-pdgb0 {
    padding-bottom: 0 !important; }
  .sm-pdgl0 {
    padding-left: 0 !important; }
  .sm-pdgh0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .sm-pdgv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; }
  .sm-pdg {
    padding: 30px !important; }
  .sm-pdgt {
    padding-top: 30px !important; }
  .sm-pdgr {
    padding-right: 30px !important; }
  .sm-pdgb {
    padding-bottom: 30px !important; }
  .sm-pdgl {
    padding-left: 30px !important; }
  .sm-pdgh {
    padding-right: 30px !important;
    padding-left: 30px !important; }
  .sm-pdgv {
    padding-top: 30px !important;
    padding-bottom: 30px !important; }
  .sm-pdg-- {
    padding: 9px !important; }
  .sm-pdgt-- {
    padding-top: 9px !important; }
  .sm-pdgr-- {
    padding-right: 9px !important; }
  .sm-pdgb-- {
    padding-bottom: 9px !important; }
  .sm-pdgl-- {
    padding-left: 9px !important; }
  .sm-pdgh-- {
    padding-right: 9px !important;
    padding-left: 9px !important; }
  .sm-pdgv-- {
    padding-top: 9px !important;
    padding-bottom: 9px !important; }
  .sm-pdg- {
    padding: 18px !important; }
  .sm-pdgt- {
    padding-top: 18px !important; }
  .sm-pdgr- {
    padding-right: 18px !important; }
  .sm-pdgb- {
    padding-bottom: 18px !important; }
  .sm-pdgl- {
    padding-left: 18px !important; }
  .sm-pdgh- {
    padding-right: 18px !important;
    padding-left: 18px !important; }
  .sm-pdgv- {
    padding-top: 18px !important;
    padding-bottom: 18px !important; }
  .sm-pdg\+ {
    padding: 48px !important; }
  .sm-pdgt\+ {
    padding-top: 48px !important; }
  .sm-pdgr\+ {
    padding-right: 48px !important; }
  .sm-pdgb\+ {
    padding-bottom: 48px !important; }
  .sm-pdgl\+ {
    padding-left: 48px !important; }
  .sm-pdgh\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .sm-pdgv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; }
  .sm-pdg\+\+ {
    padding: 97px !important; }
  .sm-pdgt\+\+ {
    padding-top: 97px !important; }
  .sm-pdgr\+\+ {
    padding-right: 97px !important; }
  .sm-pdgb\+\+ {
    padding-bottom: 97px !important; }
  .sm-pdgl\+\+ {
    padding-left: 97px !important; }
  .sm-pdgh\+\+ {
    padding-right: 97px !important;
    padding-left: 97px !important; }
  .sm-pdgv\+\+ {
    padding-top: 97px !important;
    padding-bottom: 97px !important; } }

@media (min-width: 62em) {
  .md-pdg0 {
    padding: 0 !important; }
  .md-pdgt0 {
    padding-top: 0 !important; }
  .md-pdgr0 {
    padding-right: 0 !important; }
  .md-pdgb0 {
    padding-bottom: 0 !important; }
  .md-pdgl0 {
    padding-left: 0 !important; }
  .md-pdgh0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .md-pdgv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; }
  .md-pdg {
    padding: 30px !important; }
  .md-pdgt {
    padding-top: 30px !important; }
  .md-pdgr {
    padding-right: 30px !important; }
  .md-pdgb {
    padding-bottom: 30px !important; }
  .md-pdgl {
    padding-left: 30px !important; }
  .md-pdgh {
    padding-right: 30px !important;
    padding-left: 30px !important; }
  .md-pdgv {
    padding-top: 30px !important;
    padding-bottom: 30px !important; }
  .md-pdg-- {
    padding: 9px !important; }
  .md-pdgt-- {
    padding-top: 9px !important; }
  .md-pdgr-- {
    padding-right: 9px !important; }
  .md-pdgb-- {
    padding-bottom: 9px !important; }
  .md-pdgl-- {
    padding-left: 9px !important; }
  .md-pdgh-- {
    padding-right: 9px !important;
    padding-left: 9px !important; }
  .md-pdgv-- {
    padding-top: 9px !important;
    padding-bottom: 9px !important; }
  .md-pdg- {
    padding: 18px !important; }
  .md-pdgt- {
    padding-top: 18px !important; }
  .md-pdgr- {
    padding-right: 18px !important; }
  .md-pdgb- {
    padding-bottom: 18px !important; }
  .md-pdgl- {
    padding-left: 18px !important; }
  .md-pdgh- {
    padding-right: 18px !important;
    padding-left: 18px !important; }
  .md-pdgv- {
    padding-top: 18px !important;
    padding-bottom: 18px !important; }
  .md-pdg\+ {
    padding: 48px !important; }
  .md-pdgt\+ {
    padding-top: 48px !important; }
  .md-pdgr\+ {
    padding-right: 48px !important; }
  .md-pdgb\+ {
    padding-bottom: 48px !important; }
  .md-pdgl\+ {
    padding-left: 48px !important; }
  .md-pdgh\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .md-pdgv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; }
  .md-pdg\+\+ {
    padding: 97px !important; }
  .md-pdgt\+\+ {
    padding-top: 97px !important; }
  .md-pdgr\+\+ {
    padding-right: 97px !important; }
  .md-pdgb\+\+ {
    padding-bottom: 97px !important; }
  .md-pdgl\+\+ {
    padding-left: 97px !important; }
  .md-pdgh\+\+ {
    padding-right: 97px !important;
    padding-left: 97px !important; }
  .md-pdgv\+\+ {
    padding-top: 97px !important;
    padding-bottom: 97px !important; } }

@media (min-width: 75em) {
  .lg-pdg0 {
    padding: 0 !important; }
  .lg-pdgt0 {
    padding-top: 0 !important; }
  .lg-pdgr0 {
    padding-right: 0 !important; }
  .lg-pdgb0 {
    padding-bottom: 0 !important; }
  .lg-pdgl0 {
    padding-left: 0 !important; }
  .lg-pdgh0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .lg-pdgv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; }
  .lg-pdg {
    padding: 30px !important; }
  .lg-pdgt {
    padding-top: 30px !important; }
  .lg-pdgr {
    padding-right: 30px !important; }
  .lg-pdgb {
    padding-bottom: 30px !important; }
  .lg-pdgl {
    padding-left: 30px !important; }
  .lg-pdgh {
    padding-right: 30px !important;
    padding-left: 30px !important; }
  .lg-pdgv {
    padding-top: 30px !important;
    padding-bottom: 30px !important; }
  .lg-pdg-- {
    padding: 9px !important; }
  .lg-pdgt-- {
    padding-top: 9px !important; }
  .lg-pdgr-- {
    padding-right: 9px !important; }
  .lg-pdgb-- {
    padding-bottom: 9px !important; }
  .lg-pdgl-- {
    padding-left: 9px !important; }
  .lg-pdgh-- {
    padding-right: 9px !important;
    padding-left: 9px !important; }
  .lg-pdgv-- {
    padding-top: 9px !important;
    padding-bottom: 9px !important; }
  .lg-pdg- {
    padding: 18px !important; }
  .lg-pdgt- {
    padding-top: 18px !important; }
  .lg-pdgr- {
    padding-right: 18px !important; }
  .lg-pdgb- {
    padding-bottom: 18px !important; }
  .lg-pdgl- {
    padding-left: 18px !important; }
  .lg-pdgh- {
    padding-right: 18px !important;
    padding-left: 18px !important; }
  .lg-pdgv- {
    padding-top: 18px !important;
    padding-bottom: 18px !important; }
  .lg-pdg\+ {
    padding: 48px !important; }
  .lg-pdgt\+ {
    padding-top: 48px !important; }
  .lg-pdgr\+ {
    padding-right: 48px !important; }
  .lg-pdgb\+ {
    padding-bottom: 48px !important; }
  .lg-pdgl\+ {
    padding-left: 48px !important; }
  .lg-pdgh\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .lg-pdgv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; }
  .lg-pdg\+\+ {
    padding: 97px !important; }
  .lg-pdgt\+\+ {
    padding-top: 97px !important; }
  .lg-pdgr\+\+ {
    padding-right: 97px !important; }
  .lg-pdgb\+\+ {
    padding-bottom: 97px !important; }
  .lg-pdgl\+\+ {
    padding-left: 97px !important; }
  .lg-pdgh\+\+ {
    padding-right: 97px !important;
    padding-left: 97px !important; }
  .lg-pdgv\+\+ {
    padding-top: 97px !important;
    padding-bottom: 97px !important; } }

/*----------------------------------------*\
  IMAGES
\*----------------------------------------*/
.img-responsive,
.img-responsive > img,
.img-responsive > p > img {
  max-width: 100%;
  height: auto; }

.img-block {
  width: 100%;
  height: auto; }

/*----------------------------------------*\
  VERTICAL & HORIZONTAL ALIGN
\*----------------------------------------*/
.r-align {
  margin-left: auto; }

.l-align {
  margin-right: auto; }

.h-align {
  margin-left: auto;
  margin-right: auto; }

.v-align, .feature__content {
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }

.vh-align {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

.relative-parent {
  position: relative; }

.h-100 {
  display: block;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

/*----------------------------------------*\
  EDITION MODE
\*----------------------------------------*/
.adminimal-admin-toolbar .main-header {
  height: calc(4.8em + 39px); }
  @media (min-width: 62em) {
    .adminimal-admin-toolbar .main-header {
      height: calc(9.4em + 39px); } }

.adminimal-admin-toolbar .navigation {
  top: 39px; }

.adminimal-admin-toolbar.toolbar-tray-open .main-header {
  height: calc(4.8em + 118px); }
  @media (min-width: 62em) {
    .adminimal-admin-toolbar.toolbar-tray-open .main-header {
      height: calc(9.4em + 118px); } }

.adminimal-admin-toolbar.toolbar-tray-open .navigation {
  top: 118px; }

/*----------------------------------------*\
  DISPLAY
\*----------------------------------------*/
.hidden {
  display: none !important; }

.invisible {
  visibility: hidden !important; }

@media (min-width: 30em) {
  .hidden-xs-up {
    display: none !important; } }

@media (min-width: 40em) {
  .hidden-xsl-up {
    display: none !important; } }

@media (min-width: 48.0625em) {
  .hidden-sm-up {
    display: none !important; } }

@media (min-width: 62em) {
  .hidden-md-up {
    display: none !important; } }

@media (min-width: 75em) {
  .hidden-lg-up {
    display: none !important; } }

@media (max-width: 39.9375em) {
  .hidden-xs-down {
    display: none !important; } }

@media (max-width: 48em) {
  .hidden-xsl-down {
    display: none !important; } }

@media (max-width: 61.9375em) {
  .hidden-sm-down {
    display: none !important; } }

@media (max-width: 74.9375em) {
  .hidden-md-down {
    display: none !important; } }

@media print {
  .hidden-print {
    display: none !important; }
  .invisible-print {
    visibility: hidden !important; } }

@media not print {
  .visible-print {
    display: none !important; } }

.visible-sr, #edit-contact-by-container-availabilities legend,
.selectability-offscreen {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important; }

.visible-sr-with-layout {
  opacity: 0; }

/*----------------------------------------*\
  ANCHORS
\*----------------------------------------*/
.anchor {
  position: relative;
  top: -2em; }

.anchor--le-club-contest {
  top: -8em; }

/**
 * Components
 */
/*----------------------------------------*\
  GRID
\*----------------------------------------*/
/**
 * Modern grid using flexbox
 */
.grid,
#views-exposed-form-branches-list {
  display: flex;
  flex-wrap: wrap;
  margin-left: -40px; }

.grid__item,
#views-exposed-form-branches-list .form-item-field-branch-er-district-target-id,
#views-exposed-form-branches-list .form-group--checkbox-wrapper {
  width: 100%;
  flex: 0 0 auto;
  padding-left: 40px; }

/**
   * Gutters size
   */
.grid--tight {
  margin-left: 0; }
  .grid--tight > .grid__item {
    padding-left: 0; }
    .grid--tight > .grid__item + .grid__item {
      border-left: 0; }

.grid--tiny {
  margin-left: -12px; }
  .grid--tiny > .grid__item {
    padding-left: 12px; }

.grid--small {
  margin-left: -24px; }
  .grid--small > .grid__item {
    padding-left: 24px; }

.grid--large {
  margin-left: -64px; }
  .grid--large > .grid__item {
    padding-left: 64px; }

.grid--huge {
  margin-left: -129px; }
  .grid--huge > .grid__item {
    padding-left: 129px; }

/**
   * Alignment
   */
.grid--center {
  justify-content: center; }

.grid--right {
  justify-content: flex-end; }

.grid--middle {
  align-items: center; }

.grid--bottom {
  align-items: flex-end; }

/**
   * Order
   */
.grid--rev {
  flex-direction: row-reverse; }

.grid--even > .grid__item {
  display: flex;
  flex-direction: column; }
  .grid--even > .grid__item > * {
    flex: 1 0 auto; }

/**
   * Non width-limited grid
   */
.grid--flex .grid__item {
  width: auto; }

/**
 * Add spacing between rows
 */
.grid--multiline {
  margin-top: -40px; }
  .grid--multiline > .grid__item {
    padding-top: 40px; }
  .grid--multiline.grid--tight {
    margin-top: -0; }
    .grid--multiline.grid--tight > .grid__item {
      padding-top: 0; }
  .grid--multiline.grid--tiny {
    margin-top: -12px; }
    .grid--multiline.grid--tiny > .grid__item {
      padding-top: 12px; }
  .grid--multiline.grid--small {
    margin-top: -24px; }
    .grid--multiline.grid--small > .grid__item {
      padding-top: 24px; }
  .grid--multiline.grid--large {
    margin-top: -64px; }
    .grid--multiline.grid--large > .grid__item {
      padding-top: 64px; }
  .grid--multiline.grid--huge {
    margin-top: -129px; }
    .grid--multiline.grid--huge > .grid__item {
      padding-top: 129px; }

@media (max-width: 61.9375em) {
  .grid--portal-navigation {
    flex-direction: column-reverse; } }

/*----------------------------------------*\
  GRID RESPONSIVE
\*----------------------------------------*/
/**
 * Gutter Sizes with media query
 */
@media (min-width: 75em) {
  .lg-grid--default {
    margin-left: -40px; }
    .lg-grid--default > .grid__item {
      padding-left: 40px; }
    .lg-grid--default.grid--multiline > .grid__item {
      padding-top: 40px; } }

/*----------------------------------------*\
  WIDTHS
\*----------------------------------------*/
.w-1\/6 {
  width: 16.66667% !important; }

.w-1\/3 {
  width: 33.33333% !important; }

.w-1\/2 {
  width: 50% !important; }

.w-2\/3 {
  width: 66.66667% !important; }

.w-5\/6 {
  width: 83.33333% !important; }

.w-1\/1 {
  width: 100% !important; }

.w-1\/5 {
  width: 20% !important; }

.w-2\/5 {
  width: 40% !important; }

.w-3\/5 {
  width: 60% !important; }

.w-4\/5 {
  width: 80% !important; }

.w-1\/4 {
  width: 25% !important; }

.w-3\/4 {
  width: 75% !important; }

.w-auto {
  width: auto !important; }

/*----------------------------------------*\
  WIDTHS RESPONSIVE
\*----------------------------------------*/
@media (min-width: 30em) {
  .xs-w-1\/6 {
    width: 16.66667% !important; }
  .xs-w-1\/3 {
    width: 33.33333% !important; }
  .xs-w-1\/2 {
    width: 50% !important; }
  .xs-w-2\/3 {
    width: 66.66667% !important; }
  .xs-w-5\/6 {
    width: 83.33333% !important; }
  .xs-w-1\/1 {
    width: 100% !important; }
  .xs-w-1\/5 {
    width: 20% !important; }
  .xs-w-2\/5 {
    width: 40% !important; }
  .xs-w-3\/5 {
    width: 60% !important; }
  .xs-w-4\/5 {
    width: 80% !important; }
  .xs-w-1\/4 {
    width: 25% !important; }
  .xs-w-3\/4 {
    width: 75% !important; } }

@media (min-width: 40em) {
  .xsl-w-1\/6 {
    width: 16.66667% !important; }
  .xsl-w-1\/3 {
    width: 33.33333% !important; }
  .xsl-w-1\/2 {
    width: 50% !important; }
  .xsl-w-2\/3 {
    width: 66.66667% !important; }
  .xsl-w-5\/6 {
    width: 83.33333% !important; }
  .xsl-w-1\/1 {
    width: 100% !important; }
  .xsl-w-1\/5 {
    width: 20% !important; }
  .xsl-w-2\/5 {
    width: 40% !important; }
  .xsl-w-3\/5 {
    width: 60% !important; }
  .xsl-w-4\/5 {
    width: 80% !important; }
  .xsl-w-1\/4 {
    width: 25% !important; }
  .xsl-w-3\/4 {
    width: 75% !important; } }

@media (min-width: 48.0625em) {
  .sm-w-1\/6 {
    width: 16.66667% !important; }
  .sm-w-1\/3 {
    width: 33.33333% !important; }
  .sm-w-1\/2 {
    width: 50% !important; }
  .sm-w-2\/3 {
    width: 66.66667% !important; }
  .sm-w-5\/6 {
    width: 83.33333% !important; }
  .sm-w-1\/1 {
    width: 100% !important; }
  .sm-w-1\/5 {
    width: 20% !important; }
  .sm-w-2\/5 {
    width: 40% !important; }
  .sm-w-3\/5 {
    width: 60% !important; }
  .sm-w-4\/5 {
    width: 80% !important; }
  .sm-w-1\/4 {
    width: 25% !important; }
  .sm-w-3\/4 {
    width: 75% !important; } }

@media (min-width: 62em) {
  .md-w-1\/6 {
    width: 16.66667% !important; }
  .md-w-1\/3 {
    width: 33.33333% !important; }
  .md-w-1\/2 {
    width: 50% !important; }
  .md-w-2\/3 {
    width: 66.66667% !important; }
  .md-w-5\/6 {
    width: 83.33333% !important; }
  .md-w-1\/1 {
    width: 100% !important; }
  .md-w-1\/5 {
    width: 20% !important; }
  .md-w-2\/5 {
    width: 40% !important; }
  .md-w-3\/5 {
    width: 60% !important; }
  .md-w-4\/5 {
    width: 80% !important; }
  .md-w-1\/4 {
    width: 25% !important; }
  .md-w-3\/4 {
    width: 75% !important; } }

@media (min-width: 75em) {
  .lg-w-1\/6 {
    width: 16.66667% !important; }
  .lg-w-1\/3 {
    width: 33.33333% !important; }
  .lg-w-1\/2 {
    width: 50% !important; }
  .lg-w-2\/3 {
    width: 66.66667% !important; }
  .lg-w-5\/6 {
    width: 83.33333% !important; }
  .lg-w-1\/1 {
    width: 100% !important; }
  .lg-w-1\/5 {
    width: 20% !important; }
  .lg-w-2\/5 {
    width: 40% !important; }
  .lg-w-3\/5 {
    width: 60% !important; }
  .lg-w-4\/5 {
    width: 80% !important; }
  .lg-w-1\/4 {
    width: 25% !important; }
  .lg-w-3\/4 {
    width: 75% !important; } }

@media (min-width: 30em) {
  .xs-w-auto {
    width: auto !important; } }

@media (min-width: 40em) {
  .xsl-w-auto {
    width: auto !important; } }

@media (min-width: 48.0625em) {
  .sm-w-auto {
    width: auto !important; } }

@media (min-width: 62em) {
  .md-w-auto {
    width: auto !important; } }

@media (min-width: 75em) {
  .lg-w-auto {
    width: auto !important; } }

/*----------------------------------------*\
  EMBED RESPONSIVE
\*----------------------------------------*/
.embed-responsive {
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
  position: relative; }

.embed-responsive__item,
.embed-responsive > iframe,
.embed-responsive > object,
.embed-responsive > embed {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  border: 0; }

.embed-responsive--16\/9 {
  padding-bottom: 56.25%; }

.embed-responsive--4\/3 {
  padding-bottom: 75%; }

.embed-responsive--1\/1 {
  padding-bottom: 100%; }

/*----------------------------------------*\
  LINKS
\*----------------------------------------*/
.link {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  position: relative;
  text-decoration: none;
  transition: color 200ms ease-in-out; }
  .link:hover {
    color: #1b191c; }
  .link:focus {
    outline: none;
    position: relative; }
    .link:focus:after {
      content: '';
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      border-bottom: 1px solid rgba(37, 149, 217, 0.8); }

.link__icon {
  width: 1.2em;
  height: 1.2em;
  margin-right: 0.2em;
  fill: currentColor; }

/**
 * Variants
 */
.link--underline {
  display: inline;
  color: #505050;
  border-bottom: 1px solid currentColor; }

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

.link--negative {
  color: #ffffff;
  transition: opacity 250ms ease-in-out; }
  .link--negative:hover {
    color: inherit;
    opacity: 0.5; }

.link--neutral {
  color: #505050;
  transition: color 250ms ease-in-out; }
  .link--neutral:hover {
    color: #2595d9; }

@media not all and (pointer: coarse) {
  .link--phone {
    color: inherit;
    pointer-events: none; } }

.link--overall,
.box--clickable-overall > a {
  position: static; }
  .link--overall::after,
  .box--clickable-overall > a::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: transparent;
    transition: background-color 250ms ease-in-out; }
  .link--overall:hover::after,
  .box--clickable-overall > a:hover::after {
    background-color: rgba(141, 140, 141, 0.05); }
  .link--overall-active::after, .link--overall-active:hover::after {
    background-color: rgba(37, 149, 217, 0.05); }

/**
 * Sizes
 */
.link--small {
  font-size: 0.75em; }

.link--large,
.user-account__link {
  letter-spacing: 0.04rem; }
  .link--large .link__icon,
  .user-account__link .link__icon {
    width: 0.9em;
    height: 0.9em;
    margin-right: 0.1em;
    top: 0.1em; }
  .link--large .link__icon--v-aligned,
  .user-account__link .link__icon--v-aligned {
    margin-top: 4.5px; }

/*----------------------------------------*\
  BUTTON
\*----------------------------------------*/
.btn,
#views-exposed-form-branches-list .form-item-field-branch-er-district-target-id select {
  display: inline-block;
  max-width: 100%;
  position: relative;
  padding: 0.856em 1.25em 0.75em;
  color: inherit;
  text-decoration: none;
  text-align: left;
  text-transform: uppercase;
  vertical-align: middle;
  line-height: 1.25;
  font-weight: bold;
  font-size: 0.85em;
  border: 1px solid #1b191c;
  border-radius: 4px;
  background: transparent;
  cursor: pointer;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  transition: color 200ms ease-in-out, background-color 200ms ease-in-out, border-color 200ms ease-in-out; }
  .btn:focus,
  #views-exposed-form-branches-list .form-item-field-branch-er-district-target-id select:focus {
    outline: 1px solid rgba(37, 149, 217, 0.8);
    outline-offset: 1px; }
  .btn sup,
  #views-exposed-form-branches-list .form-item-field-branch-er-district-target-id select sup {
    text-transform: lowercase;
    font-size: 0.75em;
    position: relative;
    top: -0.35em;
    left: -0.1em; }

.btn__text {
  display: inline-block; }

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

@media (max-width: 61.9375em) {
  .btn--sm-block {
    display: block;
    width: 100%;
    text-align: center; } }

.btn--bare {
  padding: 0;
  border-radius: 0;
  border-color: transparent; }

.btn--icon {
  position: relative; }
  .btn--icon .btn__icon {
    position: absolute;
    top: 50%;
    width: 1.275em;
    max-height: 100%;
    transform: translateY(-50%); }
  .btn--icon .btn__text {
    padding-left: 1.875em; }

/**
 * Styles
 */
.btn--default {
  color: #1b191c;
  background-color: transparent; }
  .btn--default:hover,
  .box--clickable:hover .btn--default {
    color: #ffffff;
    background-color: #1b191c; }
  .btn--default:active {
    color: #ffffff;
    background-color: #1b191c; }
  .btn--default:focus {
    color: #ffffff;
    background-color: #1b191c; }
  .btn--default.btn--active {
    color: #ffffff;
    background-color: #1b191c; }

.btn--primary {
  color: #ffffff;
  background-color: #1b191c; }
  .btn--primary:hover,
  .box--clickable:hover .btn--primary {
    color: #1b191c;
    background-color: transparent; }
  .btn--primary:active {
    color: #1b191c;
    background-color: transparent; }
  .btn--primary:focus {
    color: #1b191c;
    background-color: transparent; }
  .btn--primary.btn--solid-bg:hover,
  .box--clickable:hover .btn--solid-bg.btn--primary {
    color: #1b191c;
    background-color: #f8f8f8; }
  .btn--primary.btn--solid-bg:focus {
    color: #1b191c;
    background-color: #f8f8f8; }

.btn--portal {
  color: #ffffff;
  background-color: #2595d9;
  border-color: #2595d9; }
  .btn--portal:hover {
    color: #ffffff;
    background-color: #1b191c;
    border-color: #1b191c; }
  .btn--portal:active {
    color: #8d8c8d;
    background-color: #196897; }
  .btn--portal:focus {
    color: #ffffff;
    background-color: #1b191c; }

.btn--portal-navigation {
  float: left; }
  @media (min-width: 62em) {
    .btn--portal-navigation {
      float: right; } }

.btn--portal-le-club {
  background-color: #a2ad24;
  border-color: #a2ad24; }

.btn--transparent-negative {
  color: #ffffff;
  border: 1px solid #ffffff;
  background-color: transparent; }
  .btn--transparent-negative:hover {
    color: #1b191c;
    background-color: #ffffff;
    border-color: #1b191c; }
  .btn--transparent-negative:active {
    color: #1b191c;
    background-color: #ffffff;
    border-color: #1b191c; }
  .btn--transparent-negative:focus {
    color: #1b191c;
    background-color: #ffffff;
    border-color: #1b191c; }

.btn--transparent {
  color: #ffffff;
  border: 1px solid #ffffff;
  background-color: transparent; }
  .btn--transparent:hover {
    color: #1b191c;
    background-color: #ffffff;
    border-color: #1b191c; }
  .btn--transparent:active {
    color: #1b191c;
    background-color: #ffffff;
    border-color: #1b191c; }
  .btn--transparent:focus {
    color: #1b191c;
    background-color: #ffffff;
    border-color: #1b191c; }

.btn--reset {
  position: relative; }
  .btn--reset .btn__text {
    width: 2em;
    font-size: 1em;
    visibility: hidden; }
  .btn--reset:before, .btn--reset:after {
    position: absolute;
    left: 36%;
    width: 26%;
    height: 2px;
    display: block;
    content: "";
    transition: 400ms all ease-in-out;
    background: #1d1d1b;
    border-radius: 2px; }
  .btn--reset:before {
    top: 47%;
    transform: rotateZ(45deg); }
  .btn--reset:after {
    bottom: 48%;
    transform: rotateZ(-45deg); }
  .btn--reset:hover:before, .btn--reset:hover:after, .btn--reset:focus:before, .btn--reset:focus:after {
    background: #ffffff;
    border-radius: 2px; }

/**
 * States
 */
.btn--disabled,
.btn[disabled] {
  opacity: 0.5;
  cursor: not-allowed; }

/**
 * Sizes
 */
.btn--small {
  padding: 0.756em 0.85em 0.6em;
  font-size: 0.75em;
  border-radius: 3px; }

.btn--large {
  letter-spacing: 0.04em;
  padding: 0.856em 1.4em 0.75em;
  font-size: 0.95em;
  border-radius: 4px; }

.btn--close {
  display: block;
  text-decoration: none;
  font-size: 2.5em;
  padding: 0;
  height: 1.1em;
  width: 1.2em;
  line-height: 1;
  color: #2595d9;
  text-align: center;
  transition: color 200ms ease-in-out; }
  .btn--close.pull-right {
    position: absolute;
    top: 0.3em;
    right: 0.2em; }
  .btn--close:hover {
    color: #505050; }

.btn--sharp {
  border-radius: 0; }

.btn--party {
  border: 1px solid red;
  position: absolute;
  margin: auto;
  width: 512px;
  height: 350px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  transform: translateX(-50%) translateY(20%); }

.btn--tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px;
  border: 1px solid #d0d0d0;
  border-width: 1px 1px 0 0;
  border-radius: 0;
  transition: background-color 300ms ease-in-out;
  font-size: 1em; }
  .btn--tile:last-of-type {
    border-width: 1px 0 0 0; }
  .btn--tile:hover {
    background-color: #f8f8f8; }
  .btn--tile:focus {
    outline: 1px solid rgba(37, 149, 217, 0.8);
    outline-offset: 1px; }
  .btn--tile .btn__icon {
    display: block;
    position: static;
    margin: 0.10em 0.12em 0.14em 0.12em;
    transform: none;
    color: #505050; }
  .btn--tile .btn__text {
    padding: 0.2em 0 0.4em;
    color: #505050;
    text-align: center;
    font-size: 0.55em;
    text-transform: uppercase;
    font-weight: 600; }
  @media (min-width: 30em) {
    .btn--tile-horizontal {
      flex-direction: row; }
      .btn--tile-horizontal .btn__icon {
        margin: 0 0.3em 0.2em; }
      .btn--tile-horizontal .btn__text {
        padding: 0.3em 0 0.3em;
        text-align: left; } }

/*----------------------------------------*\
  BOX
\*----------------------------------------*/
.box {
  display: block;
  padding: 25px;
  position: relative; }
  .box > :first-child {
    margin-top: 0; }
  .box > :last-child {
    margin-bottom: 0; }
  .box,
  .box * {
    text-decoration: none; }

.box__body > :last-child {
  margin-bottom: 0; }

.box__btn {
  margin-top: 25px; }

/**
 * Variants
 */
.box--clickable {
  transition: background-color 300ms ease-in-out, transform 300ms ease-in-out, box-shadow 300ms ease-in-out;
  box-shadow: 0 0.3rem 0.3rem transparent;
  cursor: pointer; }
  .box--clickable:hover {
    transform: translateY(-0.3rem);
    box-shadow: 0 0.3rem 0.3rem rgba(27, 25, 28, 0.1); }
    .box--clickable:hover .btn {
      transition: transform 100ms ease-in-out; }
      .box--clickable:hover .btn:hover {
        transform: translateY(0.1rem); }
  .box--clickable.box--default:hover {
    background-color: #f8f8f8; }
  .box--clickable.box--primary:hover {
    background-color: #2595d9;
    color: #ffffff; }
  .box--clickable:active {
    transition: transform 30ms ease-out;
    transform: translateY(-0.15rem); }
  .box--clickable:focus {
    outline: 1px solid rgba(37, 149, 217, 0.8);
    outline-offset: 1px; }

.box--clickable-overall {
  position: relative; }

.box--clickable-no-transform:hover {
  transform: none;
  box-shadow: none; }

.box--even {
  display: flex;
  flex: inherit;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between; }
  .box--even .box__btn {
    align-self: flex-start;
    flex: 0 0 auto; }

.box--with-icon .box__body {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: space-between; }

.box--with-icon .box__text {
  flex: 0 1 auto;
  padding-right: 16px; }
  .box--with-icon .box__text p {
    margin: 0; }

.box--with-icon .box__icon {
  position: relative;
  flex: 0 0 auto;
  width: 39px; }
  .box--with-icon .box__icon svg {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: inherit;
    height: 39px; }

.box--with-icon .box__btn {
  display: none; }

@media (min-width: 48.0625em) {
  .box--with-icon .box__icon {
    width: 48px; }
    .box--with-icon .box__icon svg {
      height: 48px; } }

@media (min-width: 62em) {
  .box--with-icon .box__body {
    flex-direction: column-reverse; }
  .box--with-icon .box__icon {
    position: static;
    display: block;
    width: 60px;
    height: 60px;
    margin: 0 auto 25px; }
    .box--with-icon .box__icon svg {
      position: static;
      transform: none;
      height: 60px; }
  .box--with-icon .box__btn {
    display: inline-block; } }

.box--with-footer .box__body,
.box--with-footer .box__body {
  padding: 25px;
  position: relative; }

.box--with-footer .box__footer,
.box--with-footer .box__footer {
  padding: 16px 25px;
  border-top: 1px solid #d0d0d0;
  position: relative; }

.box--with-footer-tiles {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between; }
  .box--with-footer-tiles .box__body {
    padding: 25px;
    position: relative; }
  .box--with-footer-tiles .box__footer {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    padding: 0;
    position: relative; }

.box--with-image .box__img {
  display: block;
  width: calc( 100% + 25px * 2);
  height: auto;
  margin: -25px;
  margin-bottom: 25px; }

.box--with-image .box__img__bg {
  padding-bottom: 63%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center; }

.box--with-image.box--tight .box__img {
  width: 100%;
  margin: 0; }

.box--with-image.box--tiny .box__img {
  width: calc( 100% + 8px * 2);
  margin: -8px;
  margin-bottom: 8px; }

.box--with-image.box--small .box__img {
  width: calc( 100% + 16px * 2);
  margin: -16px;
  margin-bottom: 16px; }

.box--with-image.box--large .box__img {
  width: calc( 100% + 37px * 2);
  margin: -37px;
  margin-bottom: 37px; }

.box--with-image.box--huge .box__img {
  width: calc( 100% + 75px * 2);
  margin: -75px;
  margin-bottom: 75px; }

.box--stepped {
  min-height: 5rem;
  padding: 16px; }
  .box--stepped .box__body {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between; }
  .box--stepped .box__text {
    flex: 0 1 auto;
    margin-right: 3rem; }
    .box--stepped .box__text p {
      margin: 0; }
  @media (min-width: 62em) {
    .box--stepped .box__btn {
      padding-right: 4rem; } }
  @media (min-width: 75em) {
    .box--stepped .box__btn {
      padding-right: 0; } }
  .box--stepped .box__step {
    position: relative;
    flex: 0 0 auto;
    font-size: 64px;
    line-height: 1;
    color: #ececec; }
    .box--stepped .box__step span {
      position: absolute;
      top: -5px;
      right: 0; }
  @media (min-width: 48.0625em) {
    .box--stepped {
      min-height: 8.5rem;
      padding: 25px; }
      .box--stepped .box__text {
        margin-right: 4.7rem; }
      .box--stepped .box__step {
        font-size: 120px; }
        .box--stepped .box__step span {
          top: -12px; } }

.box--stepped-inactive, .box--stepped-validated {
  position: relative; }
  .box--stepped-inactive::after, .box--stepped-validated::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    background: rgba(250, 255, 250, 0.5); }

.box--stepped-validated::after {
  background: rgba(0, 128, 0, 0.1); }

.box--stepped-validated::before {
  content: '';
  display: block;
  width: 2em;
  height: 2em;
  position: absolute;
  right: 25px;
  bottom: 25px;
  z-index: 2;
  background-color: green;
  background-image: url("../images/icons/check-negative.svg");
  background-repeat: no-repeat;
  background-size: 1em 1em;
  background-position: center;
  border-radius: 50%; }

/**
 * Spacings
 */
.box--tight,
.box--with-footer,
.box--with-footer-tiles {
  padding: 0; }

.box--tiny {
  padding: 8px; }

.box--small {
  padding: 16px; }

.box--large {
  padding: 37px; }

.box--huge {
  padding: 75px; }

/**
 * Styles
 */
.box--default,
.box--underlined {
  color: #505050;
  background-color: #ffffff;
  border: 1px solid #d0d0d0; }

.box--primary,
.box--hero,
.box--phylactery {
  color: #ffffff;
  background-color: rgba(37, 149, 217, 0.9); }
  @media (min-width: 62em) {
    .box--primary,
    .box--hero,
    .box--phylactery {
      padding: 37px; } }

.box--underlined {
  padding-right: 0;
  padding-left: 0;
  border-right: none;
  border-left: none; }

@media (min-width: 48.0625em) {
  .box--hero,
  .box--phylactery {
    min-height: 300px; } }

@media (min-width: 62em) {
  .box--hero,
  .box--phylactery {
    min-height: 380px; } }

.box--hero:hover,
.box--phylactery:hover {
  color: #ffffff; }

.box--hero .box__title,
.box--phylactery .box__title {
  font-size: 1.375em;
  line-height: 1.2;
  letter-spacing: 0.06em; }
  @media (min-width: 30em) {
    .box--hero .box__title,
    .box--phylactery .box__title {
      font-size: calc(0.96561vw + 1.08532em); } }
  @media (min-width: 75em) {
    .box--hero .box__title,
    .box--phylactery .box__title {
      font-size: 1.80952em; } }

.box--hero .box__subtitle,
.box--phylactery .box__subtitle {
  line-height: 1.5;
  letter-spacing: 0.005em; }

.box--last {
  border-right: none; }

.box--highlighted {
  box-shadow: 0 0.3rem 0.3rem rgba(27, 25, 28, 0.1);
  outline: 2px solid #2595d9; }

.box--le-club,
.box--le-club-hero {
  overflow: hidden; }
  .box--le-club .box__overlay-title,
  .box--le-club-hero .box__overlay-title {
    padding-left: 25px;
    padding-right: 25px;
    margin-top: -3em;
    position: absolute;
    left: 0;
    z-index: 2;
    background-color: rgba(162, 173, 36, 0.9);
    font-family: 'Cookie';
    font-size: 1.4em;
    line-height: 1.5;
    color: #ffffff; }
  .box--le-club.box--tight .box__overlay-title,
  .box--tight.box--le-club-hero .box__overlay-title {
    padding-left: 0;
    padding-right: 0; }
  .box--le-club.box--tiny .box__overlay-title,
  .box--tiny.box--le-club-hero .box__overlay-title {
    padding-left: 8px;
    padding-right: 8px; }
  .box--le-club.box--small .box__overlay-title,
  .box--small.box--le-club-hero .box__overlay-title {
    padding-left: 16px;
    padding-right: 16px; }
  .box--le-club.box--large .box__overlay-title,
  .box--large.box--le-club-hero .box__overlay-title {
    padding-left: 37px;
    padding-right: 37px; }
  .box--le-club.box--huge .box__overlay-title,
  .box--huge.box--le-club-hero .box__overlay-title {
    padding-left: 75px;
    padding-right: 75px; }
  .box--le-club:focus,
  .box--le-club .btn:focus,
  .box--le-club-hero:focus,
  .box--le-club-hero .btn:focus {
    outline-color: #a2ad24; }
  .box--le-club .box__img__bg,
  .box--le-club-hero .box__img__bg {
    padding-bottom: 63%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center; }

.box--le-club-hero {
  border: none;
  background-color: rgba(162, 173, 36, 0.9); }
  .box--le-club-hero.box--clickable:hover {
    background-color: #a2ad24; }
  .box--le-club-hero .box__img__bg {
    padding-bottom: 45.45%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center; }
  .box--le-club-hero h3 {
    min-height: 0;
    color: #ffffff;
    font-weight: 500; }
  .box--le-club-hero p,
  .le-club .box--le-club-hero .countdown {
    color: #ffffff; }

.box--phylactery {
  position: relative; }
  .box--phylactery:after {
    content: '';
    width: 0;
    height: 0;
    position: absolute;
    left: calc(50% - 20px);
    bottom: -40px;
    border-top: 40px solid rgba(37, 149, 217, 0.9);
    border-right: 20px solid transparent;
    border-bottom: none;
    border-left: 20px solid transparent;
    font-size: 0;
    line-height: 0; }
  @media (min-width: 48.0625em) {
    .box--phylactery:after {
      top: calc(50% - 20px);
      left: -40px;
      border-top: 20px solid transparent;
      border-right: 40px solid rgba(37, 149, 217, 0.9);
      border-bottom: 20px solid transparent;
      border-left: none; } }

/*----------------------------------------*\
  ICON
\*----------------------------------------*/
.icon {
  display: inline-block;
  vertical-align: middle;
  fill: currentColor; }

.icon--small {
  width: 1em;
  height: 1em; }

.icon--mid-small {
  width: 2em;
  height: 2em;
  max-width: 100%; }

.icon--default {
  width: 35px;
  height: 35px; }

.icon--medium {
  width: 48px;
  height: 48px; }

.icon--large {
  width: 67px;
  height: 67px; }

.icon--huge {
  width: 230px;
  height: 230px;
  max-width: 100%; }

.icon--primary {
  fill: #2595d9; }

.icon--shadow-dense {
  fill: #196897; }

.icon--light {
  fill: #8d8c8d; }

.icon--tooltip {
  fill: #505050;
  transition: fill 300ms ease-in-out; }
  .icon--tooltip:hover {
    fill: #2595d9;
    cursor: pointer; }

.stroke--regular {
  stroke-width: 0px; }

.stroke--medium {
  stroke: currentColor;
  stroke-width: 0.3px; }

.stroke--bold {
  stroke: currentColor;
  stroke-width: 0.6px; }

/*----------------------------------------*\
  THE MEDIA OBJECT
\*----------------------------------------*/
.media {
  display: block; }

.media__left {
  float: left;
  margin-right: 30px; }

.media__right {
  float: right;
  margin-left: 30px; }

.media__image {
  display: block; }

.media__body {
  overflow: hidden;
  display: block; }
  .media__body > :first-child {
    margin-top: 0; }
  .media__body > :last-child {
    margin-bottom: 0; }

.media--clickable {
  cursor: pointer; }

.media--clickable-video-thumb .media__left {
  position: relative;
  z-index: -1;
  border: 1px solid rgba(27, 25, 28, 0.3);
  box-shadow: rgba(27, 25, 28, 0.3) 0 2px 2px 0px;
  transition: 0.6s cubic-bezier(0.165, 0.84, 0.44, 1); }

.media--clickable-video-thumb:hover .media__left {
  transform: scale(1.08); }

/*----------------------------------------*\
  MEDIA RESPONSIVE
\*----------------------------------------*/
@media (max-width: 61.9375em) {
  .media--responsive .media__left,
  .media--responsive .media__right {
    float: none;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 30px;
    width: 100%; }
  .media--responsive .media__image {
    max-width: 100%;
    height: auto;
    margin: 0 auto; } }

/*----------------------------------------*\
  CONTAINER
\*----------------------------------------*/
.container,
.affix .nav__container,
.nav-wrapper--sticky .nav__container {
  width: 100%;
  max-width: 768px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-left: 15px; }
  @media (min-width: 30em) {
    .container,
    .affix .nav__container,
    .nav-wrapper--sticky .nav__container {
      padding-right: 20px;
      padding-left: 20px; } }
  @media (min-width: 62em) {
    .container,
    .affix .nav__container,
    .nav-wrapper--sticky .nav__container {
      max-width: 1160px; } }

.container--large {
  max-width: 1420px; }

/*----------------------------------------*\
  SECTION
\*----------------------------------------*/
.section,
.footer,
.main-teaser {
  padding-top: 45px;
  padding-bottom: 45px; }
  @media (min-width: 62em) {
    .section,
    .footer,
    .main-teaser {
      padding-top: 90px;
      padding-bottom: 90px; } }
  .section .section,
  .section .section .container,
  .footer .section,
  .main-teaser .section,
  .footer .section .container,
  .main-teaser .section .container {
    padding: 0; }

/**
 * Spacings
 */
.section--small,
.main-teaser {
  padding-top: 35px;
  padding-bottom: 35px; }
  @media (min-width: 62em) {
    .section--small,
    .main-teaser {
      padding-top: 70px;
      padding-bottom: 70px; } }

.section--huge {
  padding-top: 53px;
  padding-bottom: 53px; }
  @media (min-width: 62em) {
    .section--huge {
      padding-top: 106px;
      padding-bottom: 106px; } }

/**
 * Variants
 */
.section--outbound {
  width: calc(100vw);
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw; }

.section--highlight,
.main-teaser {
  color: #ffffff;
  background-color: #2595d9; }

.section--highlight-light {
  background-color: #e3f1fa; }

.section--lighter {
  background-color: #f8f8f8; }

.section--lightest {
  background-color: #ffffff; }

.section--dark {
  color: #ffffff;
  background-color: #1b191c; }

.section--le-club {
  color: #ffffff;
  background-color: #a2ad24;
  background-image: url("../images/backgrounds/section-le-club.svg");
  background-size: cover;
  background-position: 0 bottom; }

.section--hexa {
  background-image: url("../images/backgrounds/section-hexa.svg");
  background-repeat: repeat;
  background-color: #ffffff;
  background-size: 70px 80px;
  border-top: 1px solid #f3f2f3;
  border-bottom: 1px solid #f3f2f3; }
  .section--hexa + .section--hexa {
    padding-top: 0 !important; }

.section--hexa-light {
  background-image: url("../images/backgrounds/section-hexa-light.svg");
  background-repeat: repeat;
  background-color: #f3f2f3;
  background-size: 70px 80px;
  border-top: 1px solid #f3f2f3;
  border-bottom: 1px solid #f3f2f3; }
  .section--hexa-light + .section--hexa-light {
    padding-top: 0 !important; }

.section--hexa-dark {
  color: #ffffff;
  background-image: url("../images/backgrounds/section-hexa-dark.svg");
  background-repeat: repeat;
  background-color: #1b191c;
  background-size: 70px 80px; }
  .section--hexa-dark + .section--hexa-dark {
    padding-top: 0 !important; }

.section--halftone,
.hero--default {
  background-image: url("../images/backgrounds/section-halftone.png");
  background-color: #f3f3f3;
  background-repeat: repeat; }
  .section--halftone + .section--halftone,
  .hero--default + .section--halftone, .section--halftone + .hero--default,
  .hero--default + .hero--default {
    padding-top: 0 !important; }

.section--halftone-dense {
  background-image: url("../images/backgrounds/section-halftone-dense.png");
  background-color: #e9e9e9;
  background-repeat: repeat; }
  .section--halftone-dense + .section--halftone-dense {
    padding-top: 0 !important; }

.section--upper-lined {
  border-top: 1px solid #d0d0d0; }

.section--halftone-facets {
  min-height: 100vh;
  background-image: url("../images/backgrounds/section-facets.svg"), url("../images/backgrounds/section-halftone.png");
  background-position: center bottom, left top;
  background-size: contain, 400px 400px;
  background-repeat: no-repeat, repeat; }

.section--facets {
  background-image: url("../images/backgrounds/section-facets.svg");
  background-position: center bottom;
  background-size: cover;
  background-repeat: no-repeat; }

/*----------------------------------------*\
  MAGNET
\*----------------------------------------*/
.magnet {
  display: block;
  position: relative;
  max-width: 80vw; }
  @media (min-width: 30em) {
    .magnet {
      max-width: 60vw; } }

.magnet__icon {
  width: 4rem;
  height: 4rem;
  max-width: 30%;
  position: absolute;
  z-index: 2;
  top: -2rem;
  left: 20%;
  color: currentColor; }

.magnet__image {
  max-width: 100%;
  box-shadow: 3px 3px 5px rgba(27, 25, 28, 0.3);
  transform-origin: 30% -1rem;
  transform: rotate(-2deg);
  transition: transform 200ms ease-in-out; }
  .magnet__image:hover {
    transform: rotate(0deg); }
  .magnet__image img {
    width: 100%; }

.magnet__overlay-title {
  padding-left: 25px;
  padding-right: 25px;
  margin-top: -2.5em;
  position: absolute;
  left: 0;
  z-index: 2;
  background-color: rgba(37, 149, 217, 0.9);
  font-family: 'Cookie';
  font-size: 1.4em;
  line-height: 1.5;
  color: #ffffff; }

/**
 * Styles
 */
.magnet--primary {
  color: #2595d9; }

.magnet--le-club {
  color: #a2ad24; }
  .magnet--le-club .magnet__overlay-title {
    background-color: rgba(162, 173, 36, 0.9); }

/*----------------------------------------*\
  LIST
\*----------------------------------------*/
.list,
.list-stacked,
.wysiwyg ul,
.wysiwyg--le-club ul,
.list--icon,
.footer__navigation ul,
.list-inline,
.list-teased,
.list-compact {
  margin: 0;
  padding: 0;
  list-style: none; }

.list--primary,
.wysiwyg ul {
  padding-left: 0; }
  .list--primary li,
  .wysiwyg ul li {
    display: flex;
    flex-wrap: nowrap; }
    .list--primary li:before,
    .wysiwyg ul li:before {
      flex: 0 0 auto;
      margin-right: 9px;
      font-size: 40px;
      line-height: 0.7;
      content: '•';
      color: #2595d9; }

.list--le-club,
.wysiwyg--le-club ul {
  padding-left: 0; }
  .list--le-club li,
  .wysiwyg--le-club ul li {
    display: flex;
    flex-wrap: nowrap;
    padding-bottom: 1em; }
    .list--le-club li:before,
    .wysiwyg--le-club ul li:before {
      flex: 0 0 auto;
      margin-right: 9px;
      font-size: 40px;
      line-height: 0.7;
      content: '•';
      color: #a2ad24; }

/*----------------------------------------*\
  LIST STACKED
\*----------------------------------------*/
.list-stacked > li,
.wysiwyg ul > li,
.wysiwyg--le-club ul > li {
  padding: 15px 0; }
  .list-stacked > li:first-child,
  .wysiwyg ul > li:first-child,
  .wysiwyg--le-club ul > li:first-child {
    padding-top: 0; }
  .list-stacked > li:last-child,
  .wysiwyg ul > li:last-child,
  .wysiwyg--le-club ul > li:last-child {
    padding-bottom: 0; }

.list-stacked--divided > li + li {
  border-top: 1px solid #ffffff; }

/**
   * Sizes
   */
.list-stacked--tight > li {
  padding: 0; }

.list-stacked--tiny > li {
  padding: 4.5px 0; }

.list-stacked--small > li {
  padding: 9px 0; }

.list-stacked--large > li {
  padding: 24px 0; }

.list-stacked--huge > li {
  padding: 48.5px 0; }

/*----------------------------------------*\
  LIST ICONS
\*----------------------------------------*/
.list--icon > li {
  display: table; }

.list--icon .list__icon {
  display: table-cell; }

.list--icon .list__content {
  display: table-cell; }

.list--checkmark li,
.list--checkmark-negative li {
  padding-left: 1.6em;
  position: relative;
  background-image: url("../images/icons/check.svg");
  background-size: 1.2em 1.2em;
  background-repeat: no-repeat;
  background-position: 0 0.4em; }

.list--checkmark-negative li {
  background-image: url("../images/icons/check-negative.svg"); }

/*----------------------------------------*\
  FOOTER
\*----------------------------------------*/
.footer {
  background-color: #1b191c;
  color: #ffffff; }
  .footer a {
    text-decoration: none; }
    .footer a:hover {
      color: inherit; }

.footer__link--light {
  color: inherit; }

.footer__logo {
  width: 300px;
  height: 65px;
  max-width: 100%; }

.footer__info,
.footer__content {
  font-size: 0.875em; }
  @media (min-width: 30em) {
    .footer__info,
    .footer__content {
      font-size: calc(-0.03968vw + 0.8869em); } }
  @media (min-width: 75em) {
    .footer__info,
    .footer__content {
      font-size: 0.85714em; } }

.footer__content ul {
  margin-bottom: 0;
  padding: 0;
  list-style: none; }

.footer__content a {
  color: #8d8c8d; }

.footer__navigation span,
.footer__navigation a {
  color: #8d8c8d;
  transition: color 100ms ease-in-out; }
  .footer__navigation span:hover, .footer__navigation span:active, .footer__navigation span:focus,
  .footer__navigation a:hover,
  .footer__navigation a:active,
  .footer__navigation a:focus {
    color: #f8f8f8; }

.footer__navigation .menu-level-0 {
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  height: 65px; }
  .footer__navigation .menu-level-0 > .menu-item {
    flex: 0 0 auto;
    padding-right: 48px; }
    .footer__navigation .menu-level-0 > .menu-item > span {
      cursor: pointer; }
    .footer__navigation .menu-level-0 > .menu-item.menu-item--active-trail span, .footer__navigation .menu-level-0 > .menu-item.active span {
      color: #f8f8f8; }

.footer__navigation .menu-level-1 {
  position: absolute;
  left: 0;
  display: none;
  margin-top: 30px; }
  .footer__navigation .menu-level-1 span,
  .footer__navigation .menu-level-1 a {
    font-size: 0.875em; }
    @media (min-width: 30em) {
      .footer__navigation .menu-level-1 span,
      .footer__navigation .menu-level-1 a {
        font-size: calc(-0.03968vw + 0.8869em); } }
    @media (min-width: 75em) {
      .footer__navigation .menu-level-1 span,
      .footer__navigation .menu-level-1 a {
        font-size: 0.85714em; } }

.footer__navigation .menu-item--active-trail .menu-level-1,
.footer__navigation .active .menu-level-1 {
  display: flex;
  flex-wrap: wrap;
  width: 100%; }
  .footer__navigation .menu-item--active-trail .menu-level-1 > .menu-item,
  .footer__navigation .active .menu-level-1 > .menu-item {
    flex: 0 0 auto;
    width: 33.333%;
    padding: 0 18px 30px 0; }
    .footer__navigation .menu-item--active-trail .menu-level-1 > .menu-item > a,
    .footer__navigation .active .menu-level-1 > .menu-item > a {
      color: #f8f8f8; }

.footer__disclaimer {
  color: #8d8c8d; }

.footer__social-list a {
  color: #8d8c8d; }

@media (min-width: 48.0625em) {
  .footer--fixed {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 100; } }

/*----------------------------------------*\
  MAIN TEASER
\*----------------------------------------*/
@media (min-width: 62em) {
  .main-teaser {
    margin-top: 48px; } }

@media (min-width: 75em) {
  .main-teaser {
    margin-top: 97px; } }

.main-teaser__image {
  position: absolute;
  top: -83px;
  right: 0;
  bottom: -35px;
  left: 30px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right bottom; }
  @media (min-width: 62em) {
    .main-teaser__image {
      top: -118px;
      bottom: -70px;
      left: 48px; } }
  @media (min-width: 75em) {
    .main-teaser__image {
      top: -167px;
      left: 97px; } }

.main-teaser__image-box {
  position: absolute;
  top: -43px;
  right: 0;
  bottom: -25px;
  left: 30px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right bottom; }

/*----------------------------------------*\
  NAVIGATION
\*----------------------------------------*/
.navigation-primary-link,
.navigation-primary__menu-item,
.e-banking-link {
  color: #505050;
  text-decoration: none;
  transition: color 200ms ease-in-out;
  cursor: pointer;
  padding: 1em 0.2em; }
  .navigation-primary-link:hover,
  .navigation-primary__menu-item:hover,
  .e-banking-link:hover {
    color: #1b191c; }
  @media (min-width: 62em) {
    .navigation-primary-link,
    .navigation-primary__menu-item,
    .e-banking-link {
      font-size: 1.175em;
      padding: 0.6em; } }
  @media (min-width: 62em) and (min-width: 30em) {
    .navigation-primary-link,
    .navigation-primary__menu-item,
    .e-banking-link {
      font-size: calc(0.15079vw + 1.12976em); } }
  @media (min-width: 62em) and (min-width: 75em) {
    .navigation-primary-link,
    .navigation-primary__menu-item,
    .e-banking-link {
      font-size: 1.24286em; } }

.navigation-secondary-link,
.navigation-secondary__heading {
  display: block;
  padding: 0.3em 0;
  font-size: 1.5625em;
  color: #505050;
  text-decoration: none;
  transition: color 200ms ease-in-out;
  cursor: pointer; }
  @media (min-width: 62em) {
    .navigation-secondary-link,
    .navigation-secondary__heading {
      font-size: 0.95em;
      padding: 0.84em 0 0.8em; } }

.navigation-tertiary-link,
.navigation-tertiary__heading,
.popover--e-banking__menu h2 {
  display: block;
  padding-top: 0.35em;
  padding-bottom: 0.35em;
  font-weight: 700;
  font-size: 1.1em;
  color: #505050;
  text-decoration: none;
  transition: color 200ms ease-in-out;
  cursor: pointer; }
  .navigation-tertiary-link:hover,
  .navigation-tertiary__heading:hover,
  .popover--e-banking__menu h2:hover {
    color: #2595d9; }
  @media (min-width: 62em) {
    .navigation-tertiary-link,
    .navigation-tertiary__heading,
    .popover--e-banking__menu h2 {
      padding-top: 0.15em;
      padding-bottom: 0.15em;
      font-size: 1em; } }

.navigation-quaternary-link,
.navigation-quaternary__heading,
.dropdown-menu a,
.popover--e-banking__menu ul a {
  display: none;
  padding-top: 0.15em;
  padding-bottom: 0.15em;
  font-weight: 300;
  color: #505050;
  text-decoration: none;
  transition: color 200ms ease-in-out; }
  .navigation-quaternary-link:hover,
  .navigation-quaternary__heading:hover,
  .dropdown-menu a:hover,
  .popover--e-banking__menu ul a:hover {
    color: #2595d9; }
  @media (min-width: 62em) {
    .navigation-quaternary-link,
    .navigation-quaternary__heading,
    .dropdown-menu a,
    .popover--e-banking__menu ul a {
      display: block;
      font-size: 0.9em; } }

.header-controls {
  position: relative;
  z-index: 100;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  width: 100%; }
  @media (min-width: 62em) {
    .header-controls {
      align-items: flex-end; } }

.header-controls__item {
  flex: 0 0 auto; }

.header-controls__item--icon {
  display: flex;
  align-items: center; }
  .header-controls__item--icon > * {
    flex: 0 0 auto; }

.header-controls__item--pushed-right {
  margin-left: auto; }

.main-header {
  height: 4.8em; }
  @media (min-width: 62em) {
    .main-header {
      height: 9.4em; } }

.navigation {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  padding-top: 10px; }
  @media (min-width: 30em) {
    .navigation {
      padding-top: 20px; } }
  @media (min-width: 62em) {
    .navigation {
      padding-top: 50px; } }
  .menu--visible .navigation {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    z-index: 20; }
  @media (min-width: 62em) {
    .navigation > .container {
      position: relative; } }

.navigation-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 6;
  background: #f8f8f8;
  opacity: 0;
  visibility: hidden;
  transition: opacity ease-in-out 800ms; }
  .menu--visible .navigation-overlay {
    opacity: 1;
    visibility: visible; }
  .modal-is-in .navigation-overlay {
    opacity: 1;
    visibility: visible; }

.navigation-primary {
  background: #ffffff;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  opacity: 0;
  transition: transform ease-in-out 200ms, opacity ease-in-out 200ms;
  transform: translateY(100px); }
  .menu--visible .navigation-primary {
    opacity: 1;
    display: block;
    transform: translateY(0); }
  .quick-search--focused .navigation-primary {
    opacity: 0;
    transform: translateY(100px);
    transition: transform ease-in-out 400ms, opacity ease-in-out 400ms; }
  @media (min-width: 62em) {
    .navigation-primary {
      display: block;
      background: none;
      border-top: none;
      border-bottom: none;
      transform: none;
      opacity: 1; } }

.navigation-primary__menu {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  list-style: none; }
  @media (min-width: 62em) {
    .navigation-primary__menu {
      padding: 0; } }

.navigation-primary__menu-item {
  position: relative; }
  @media (min-width: 62em) {
    .navigation-primary__menu-item {
      flex: 0 0 auto;
      padding-left: 20px; } }

@media (min-width: 62em) {
  .navigation-primary__menu-item--active {
    color: #1b191c; } }

.navigation-primary__menu-item--active:before, .navigation-primary__menu-item--active:after {
  position: absolute;
  left: 50%;
  display: block;
  width: 0;
  height: 0;
  content: "";
  border-style: solid; }

.navigation-primary__menu-item--active:before {
  bottom: -0.62rem;
  margin-left: -0.62rem;
  border-width: 0.62rem 0.62rem 0 0.62rem;
  border-color: #e6e6e6 transparent transparent transparent; }
  @media (min-width: 62em) {
    .navigation-primary__menu-item--active:before {
      display: none; } }

.navigation-primary__menu-item--active:after {
  bottom: -0.5rem;
  margin-left: -0.5rem;
  border-width: 0.5rem 0.5rem 0 0.5rem;
  border-color: #ffffff transparent transparent transparent; }
  @media (min-width: 62em) {
    .navigation-primary__menu-item--active:after {
      top: inherit;
      bottom: 0;
      transform: translateX(50%);
      border-width: 0 0.5rem 0.5rem 0.5rem;
      border-color: transparent transparent #2595d9 transparent; } }

.navigation-content {
  width: 100%;
  height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  opacity: 0;
  transition: height 0ms 400ms, opacity ease-in-out 200ms 0ms, visiblity ease-in-out 0ms 200ms; }
  @media (min-width: 62em) {
    .navigation-content {
      height: auto;
      position: static;
      top: 0;
      overflow: visible;
      transform: none;
      transition: none;
      opacity: 1; } }
  .menu--visible .navigation-content {
    position: relative;
    z-index: 90;
    height: calc(100vh - 3.5em - 4.8em);
    opacity: 1;
    visibility: visible;
    transition: height 0ms 0ms, opacity ease-in-out 300ms 400ms, visibility ease-in-out 300ms 400ms; }

.navigation-secondary {
  position: relative;
  transition: 400ms transform ease-in-out, opacity ease-in-out 400ms; }
  @media (min-width: 62em) {
    .navigation-secondary {
      border-top: 2px solid #2595d9;
      background-color: #ffffff;
      box-shadow: rgba(191, 189, 181, 0.15) 0 2px 2px 0; } }
  .quick-search--focused .navigation-secondary {
    opacity: 0;
    transform: translateY(100px);
    transition: transform ease-in-out 600ms, opacity ease-in-out 600ms; }

.navigation-secondary--1-active {
  transform: translateX(0); }
  @media (min-width: 62em) {
    .navigation-secondary--1-active {
      transform: none; } }

.navigation-secondary--2-active {
  transform: translateX(-100%); }
  @media (min-width: 62em) {
    .navigation-secondary--2-active {
      transform: none; } }

.navigation-secondary--3-active {
  transform: translateX(-200%); }
  @media (min-width: 62em) {
    .navigation-secondary--3-active {
      transform: none; } }

.navigation-secondary__menu {
  width: 100%;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
  position: absolute;
  top: 0;
  z-index: 1;
  opacity: 0;
  transition: 400ms transform ease-in-out;
  list-style: none; }
  @media (max-width: 61.9375em) {
    .navigation-secondary__menu {
      padding-top: 1em;
      padding-bottom: 4.5em; } }
  @media (min-width: 62em) {
    .navigation-secondary__menu {
      position: relative;
      left: 0;
      visibility: hidden;
      display: none;
      align-items: center;
      justify-content: space-between;
      padding: 0 1em;
      margin-bottom: 0;
      opacity: 0;
      overflow: hidden;
      transition: opacity 400ms ease-in-out, transform 400ms ease-in-out,  visibility 0ms 0ms ease-in-out; } }
  .navigation-secondary__menu > .navigation-secondary__menu-item {
    transition: transform 600ms ease-out;
    transform: translateY(250px); }
    .menu--visible .navigation-secondary__menu > .navigation-secondary__menu-item {
      transform: translateY(0px); }
    @media (min-width: 62em) {
      .navigation-secondary__menu > .navigation-secondary__menu-item {
        transform: none; } }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(1) {
      transition-delay: 150ms; }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(2) {
      transition-delay: 250ms; }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(3) {
      transition-delay: 350ms; }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(4) {
      transition-delay: 450ms; }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(5) {
      transition-delay: 550ms; }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(6) {
      transition-delay: 650ms; }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(7) {
      transition-delay: 750ms; }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(8) {
      transition-delay: 850ms; }
    .navigation-secondary__menu > .navigation-secondary__menu-item:nth-child(9) {
      transition-delay: 950ms; }

@media (min-width: 62em) {
  .navigation-secondary__menu--active {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    overflow: visible;
    transition: opacity 400ms ease-in-out, transform 400ms ease-in-out, visibility 0ms 0ms ease-in-out; } }

.navigation-secondary__menu--1 {
  left: 0; }

.navigation-secondary__menu--2 {
  left: 100%; }
  @media (min-width: 62em) {
    .navigation-secondary__menu--2 {
      left: 0; } }

.navigation-secondary__menu--3 {
  left: 200%; }
  @media (min-width: 62em) {
    .navigation-secondary__menu--3 {
      left: 0; } }

.navigation-secondary__menu--active {
  opacity: 1; }
  @media (min-width: 62em) {
    .navigation-secondary__menu--active {
      display: flex; } }

.navigation-secondary__menu--portal {
  position: static;
  padding-left: 0;
  display: block; }
  .navigation-secondary__menu--portal li:last-child a {
    margin-right: 0; }
  .navigation-secondary__menu--portal > .navigation-secondary__menu-item {
    float: left;
    display: inline-block;
    transform: translateY(30px); }
    .menu--visible .navigation-secondary__menu--portal > .navigation-secondary__menu-item {
      transform: translateY(0px); }
    @media (min-width: 62em) {
      .navigation-secondary__menu--portal > .navigation-secondary__menu-item {
        transform: none; } }
    @media (max-width: 61.9375em) {
      .navigation-secondary__menu--portal > .navigation-secondary__menu-item {
        float: none;
        display: block;
        transform: translateY(10px); } }
    .navigation-secondary__menu--portal > .navigation-secondary__menu-item a {
      padding: .85em 1.2vw; }
      .navigation-secondary__menu--portal > .navigation-secondary__menu-item a:hover, .navigation-secondary__menu--portal > .navigation-secondary__menu-item a.active {
        background: #f8f8f8;
        color: #2595d9; }
      @media (max-width: 61.9375em) {
        .navigation-secondary__menu--portal > .navigation-secondary__menu-item a {
          padding: .4em 0; } }

.navigation-secondary__heading svg {
  transition: transform 250ms ease-in-out; }

.navigation-secondary__heading--highlight {
  color: #1b191c; }

.navigation-secondary__heading--stand-back {
  color: #8d8c8d; }

.navigation-secondary__heading--is-open svg {
  transform: rotate(180deg); }

@media (min-width: 62em) {
  .navigation-tertiary__menu {
    width: 100%;
    height: 0;
    padding: 0;
    position: absolute;
    left: 0;
    background-color: #ffffff;
    border-top: 1px solid #d0d0d0;
    box-shadow: rgba(191, 189, 181, 0.15) 0 2px 2px 0;
    visibility: hidden;
    opacity: 0;
    transform: translateY(0.5em);
    transition: opacity 400ms ease-in-out, transform 400ms ease-in-out, height 0ms 401ms ease-in-out, visibility 0ms 401ms ease-in-out; } }

@media (min-width: 62em) {
  .navigation-tertiary__menu--active {
    height: 18em;
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
    transition: opacity 400ms ease-in-out, transform 400ms ease-in-out, height 0ms 0ms ease-in-out, visibility 0ms 0ms ease-in-out; } }

@media (min-width: 62em) {
  .navigation-tertiary__menu-item {
    display: flex;
    flex-direction: column;
    float: left;
    width: 25%;
    height: 100%;
    border-right: 1px solid #d0d0d0;
    padding: 1em;
    position: relative; }
    .navigation-tertiary__menu--5-items .navigation-tertiary__menu-item:nth-child(n+4) {
      height: 50%;
      border-right: none; }
    .navigation-tertiary__menu--5-items .navigation-tertiary__menu-item:nth-child(5) {
      border-top: 1px solid #d0d0d0; }
    .navigation-tertiary__menu--6-items .navigation-tertiary__menu-item:nth-child(n+3) {
      height: 50%; }
    .navigation-tertiary__menu--6-items .navigation-tertiary__menu-item:nth-child(2n+4) {
      border-right: none; }
    .navigation-tertiary__menu--6-items .navigation-tertiary__menu-item:nth-child(n+5) {
      border-top: 1px solid #d0d0d0; }
    .navigation-tertiary__menu--7-items .navigation-tertiary__menu-item:nth-child(n+2) {
      height: 50%; }
    .navigation-tertiary__menu--7-items .navigation-tertiary__menu-item:nth-child(3n+4) {
      border-right: none; }
    .navigation-tertiary__menu--7-items .navigation-tertiary__menu-item:nth-child(n+5) {
      border-top: 1px solid #d0d0d0; }
    .navigation-tertiary__menu--8-items .navigation-tertiary__menu-item {
      height: 50%; }
    .navigation-tertiary__menu--8-items .navigation-tertiary__menu-item:nth-child(4n+4) {
      border-right: none; }
    .navigation-tertiary__menu--8-items .navigation-tertiary__menu-item:nth-child(n+5) {
      border-top: 1px solid #d0d0d0; } }

.navigation-tertiary__menu,
.menu-level-2 {
  margin: 0;
  padding: 0;
  list-style: none; }

.menu-item--content-extras {
  display: none; }
  @media (min-width: 62em) {
    .menu-item--content-extras {
      display: block;
      width: 100%;
      padding: 1em;
      margin-left: -1em;
      position: absolute;
      bottom: 0;
      border-top: 1px solid #d0d0d0; } }

.menu-toggle {
  position: relative;
  width: 34px;
  height: 34px;
  margin-left: 80px;
  transition: 400ms all ease-in-out;
  cursor: pointer; }
  .menu-toggle:before, .menu-toggle:after {
    display: block;
    content: ""; }
  .menu-toggle:before {
    top: 4px; }
  .menu-toggle:after {
    bottom: 4px; }

.menu-toggle:before,
.menu-toggle:after,
.menu-toggle__line {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  transition: 400ms all ease-in-out;
  background: #1d1d1b;
  border-radius: 2px; }

.menu-toggle__line {
  margin-top: -1px;
  top: 50%; }

.menu-toggle__text {
  position: absolute;
  top: 50%;
  right: 64px;
  margin-top: -0.475em;
  opacity: 0;
  line-height: 1;
  transition: 400ms all ease-in-out;
  white-space: nowrap; }

.menu-toggle__text--1 {
  right: 44px;
  opacity: 1;
  text-transform: uppercase;
  font-weight: 300; }

.menu-toggle--toggled {
  margin-left: 80px; }
  .menu-toggle--toggled:before {
    top: 16px;
    transform: rotateZ(45deg); }
  .menu-toggle--toggled:after {
    bottom: 16px;
    transform: rotateZ(-45deg); }
  .menu-toggle--toggled .menu-toggle__line {
    opacity: 0;
    transform: scaleX(0); }
  .menu-toggle--toggled .menu-toggle__text--1 {
    opacity: 0;
    right: 64px; }
  .menu-toggle--toggled .menu-toggle__text--2 {
    opacity: 1;
    right: 36px; }

.e-banking-link {
  display: block;
  margin-right: -15px; }
  @media (min-width: 30em) {
    .e-banking-link {
      margin-right: 0; } }
  .e-banking-link .icon {
    position: relative;
    top: -0.2em; }

.simple-menu,
.simple-menu ul {
  list-style: none;
  padding: 0;
  margin: 0; }

.simple-menu > li > a {
  font-weight: 700; }

.simple-menu a {
  display: block;
  padding: 3px 0;
  color: #505050;
  text-decoration: none;
  transition: color 200ms ease-in-out; }
  .simple-menu a:hover {
    color: #2595d9; }

.quick-search-opener {
  display: none;
  width: 2em;
  height: 3em;
  margin-left: 30px;
  text-indent: -20000px;
  background-image: url("../images/icons/search.svg");
  background-repeat: no-repeat;
  background-size: 1.3em 1.3em;
  background-position: center center;
  background-color: transparent;
  border: none;
  opacity: 0.6;
  transition: opacity 200ms ease-in-out; }
  .quick-search-opener:hover {
    opacity: 1; }
  @media (min-width: 62em) {
    .quick-search-opener {
      display: block; } }

.navigation-container--expanded {
  padding-bottom: 30px;
  background: #f8f8f8; }

.dropdown-menu {
  margin: 0;
  padding: 0 0 1em 0;
  list-style: none; }
  .dropdown-menu li {
    position: relative; }
  .dropdown-menu a {
    display: block; }
  @media (min-width: 62em) {
    .dropdown-menu {
      padding: 1.5em;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1060;
      max-width: 276px;
      background-color: #ffffff;
      background-clip: padding-box;
      border: 1px solid rgba(141, 140, 141, 0.4);
      border-radius: 0px;
      box-shadow: 0 1px 5px rgba(27, 25, 28, 0.3);
      max-width: 90vw;
      padding: 0.5em 0;
      top: 2.8em; }
      .dropdown-menu a {
        font-size: 1em;
        font-weight: 400;
        white-space: nowrap; } }

/*----------------------------------------*\
  META-NAVIGATION
\*----------------------------------------*/
.meta-navigation-wrapper {
  display: none;
  position: absolute;
  bottom: 0;
  z-index: 101; }
  .menu--visible .meta-navigation-wrapper {
    display: block;
    opacity: 1;
    transform: translateY(0); }
  @media (max-width: 61.9375em) {
    .meta-navigation-wrapper {
      position: fixed;
      left: 0;
      bottom: 0;
      right: 0;
      z-index: 100;
      background: #ffffff;
      border-top: 1px solid #e6e6e6;
      border-bottom: 4px solid #2595d9; } }
  @media (min-width: 62em) {
    .meta-navigation-wrapper {
      display: block;
      top: -2em;
      bottom: auto;
      right: 20px;
      left: auto; } }

.meta-navigation {
  display: none; }
  .menu--visible .meta-navigation {
    display: flex; }
  @media (min-width: 62em) {
    .meta-navigation {
      display: flex; } }

.meta-mavigation__block {
  width: 50%;
  flex: 0 0 auto; }
  @media (min-width: 62em) {
    .meta-mavigation__block {
      width: auto;
      padding-left: 1em; } }

.meta-navigation__menu {
  display: flex;
  justify-content: space-between;
  padding: 0;
  margin: 0;
  list-style: none; }

.meta-navigation__link,
.language-switcher a {
  display: inline-block;
  padding: 0.6em 0 0.56em;
  color: #505050;
  line-height: 2em;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  transition: color 200ms ease-in-out; }
  @media (min-width: 62em) {
    .meta-navigation__link,
    .language-switcher a {
      padding: 0.1em;
      font-size: 0.85714em; } }
  .is-active .meta-navigation__link, .is-active .language-switcher a, .language-switcher .is-active a {
    background-color: transparent;
    color: #1b191c; }
  .meta-navigation__link:hover,
  .language-switcher a:hover {
    background-color: transparent;
    color: #1b191c;
    cursor: pointer; }
  .meta-navigation__link::after,
  .language-switcher a::after {
    display: none; }

.meta-navigation__link-back-to-menu {
  position: absolute;
  opacity: 0;
  display: inline-block;
  background: transparent;
  border: none; }
  .quick-search--focused .meta-navigation__link-back-to-menu {
    opacity: 1;
    transition: 0.75s opacity ease-in-out;
    transform: translateX(-62px); }
  @media (min-width: 62em) {
    .meta-navigation__link-back-to-menu {
      display: none; } }

.meta-navigation__link-le-club {
  opacity: 1;
  transition: 1s opacity ease-in-out; }
  .quick-search--focused .meta-navigation__link-le-club {
    opacity: 0;
    transition: 0.75s opacity ease-in-out; }

@media (max-width: 61.9375em) {
  .meta-mavigation__block--portal {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-left: 18px;
    padding-right: 18px;
    background: #ffffff;
    border-bottom: 3px solid #2595d9;
    box-shadow: 0 0.3rem 0.3rem rgba(27, 25, 28, 0.1); }
    .meta-mavigation__block--portal > ul li {
      flex: 1; } }

/*----------------------------------------*\
  RECOMMENDATION
\*----------------------------------------*/
.recommendation {
  position: relative;
  display: block;
  text-decoration: none;
  transition: background-color 300ms ease-in-out, transform 300ms ease-in-out, box-shadow 300ms ease-in-out;
  box-shadow: 0 0.3rem 0.3rem transparent;
  cursor: pointer; }
  .recommendation:hover {
    transform: translateY(-0.3rem);
    box-shadow: 0 0.3rem 0.3rem rgba(27, 25, 28, 0.1);
    text-decoration: none; }
  .recommendation:active {
    transition: transform 30ms ease-out;
    transform: translateY(-0.15rem);
    text-decoration: none; }
  .recommendation:focus {
    outline: 1px solid rgba(37, 149, 217, 0.8);
    outline-offset: 1px;
    text-decoration: none; }

.recommendation__img {
  display: block;
  width: 100%;
  height: auto; }

.recommendation__title {
  position: absolute;
  bottom: 30px;
  width: 100%;
  padding: 18px;
  color: #ffffff;
  background-color: rgba(37, 149, 217, 0.9);
  font-size: 1em; }
  @media (min-width: 48.0625em) {
    .recommendation__title {
      font-size: 0.9em; } }
  @media (min-width: 62em) {
    .recommendation__title {
      font-size: 1em; } }

/*----------------------------------------*\
  LOGO / BRAND
\*----------------------------------------*/
.logo {
  display: inline-block;
  padding: 0.9em 0 0.4em;
  position: relative; }

.logo__icon {
  display: inline-block;
  height: 2.3em;
  width: 8em;
  background-image: url("../images/logos/logo--initials-FR.svg");
  background-size: contain;
  background-repeat: no-repeat;
  border: none; }
  @media (min-width: 30em) {
    .logo__icon {
      height: 2.5em;
      width: 12em;
      background-image: url("../images/logos/logo--full-FR.svg"); } }
  [lang='de'] .logo__icon {
    background-image: url("../images/logos/logo--initials-DE.svg"); }
    @media (min-width: 30em) {
      [lang='de'] .logo__icon {
        background-image: url("../images/logos/logo--full-DE.svg"); } }

.logo__name {
  display: block;
  margin: 0;
  padding: 0;
  position: absolute;
  top: 2.4rem;
  left: 2.35rem;
  font-size: 0.9rem;
  white-space: nowrap;
  color: #1b191c; }

.logo--portal {
  padding: 0em;
  margin-bottom: 1em; }
  .logo--portal .logo__icon {
    height: 3.55em;
    width: 8em;
    background-image: url("../images/logos/logo--portal-FR.svg"); }
    [lang='de'] .logo--portal .logo__icon {
      background-image: url("../images/logos/logo--portal-DE.svg"); }

.logo--picto {
  padding: 0em;
  margin: 9px 18px 0; }
  .logo--picto .logo__icon {
    height: 1.7em;
    width: 1.7em;
    background-image: url("../images/logos/logo--picto.svg"); }

/*----------------------------------------*\
  QUICK SEARCH
\*----------------------------------------*/
.quick-search-mobile {
  padding-top: 1em;
  opacity: 0;
  transition: transform ease-in-out 200ms 10ms, opacity ease-in-out 200ms 10ms;
  transform: translateY(4em); }
  .menu--visible .quick-search-mobile {
    opacity: 1;
    transform: translateY(0);
    position: relative;
    z-index: 99;
    transition: transform ease-in-out 300ms 100ms, opacity ease-in-out 300ms 100ms; }
  .quick-search-mobile .quick-search-block {
    position: relative; }
  .quick-search-mobile .quick-search-block .grid {
    position: absolute;
    top: -2000px;
    opacity: 0;
    margin-top: -48px;
    margin-bottom: 30px; }
    .quick-search-mobile .quick-search-block .grid .grid__item {
      transform: none;
      padding-top: 9px; }
    .quick-search--focused .quick-search-mobile .quick-search-block .grid {
      top: 0;
      opacity: 1;
      transform: translateY(100px);
      transition: transform ease-in-out 400ms, opacity ease-in-out 400ms; }
    @media (max-width: 61.9375em) {
      .quick-search-mobile .quick-search-block .grid .box {
        padding: 18px; } }
  @media (min-width: 62em) {
    .quick-search-mobile {
      display: none; } }

/*----------------------------------------*\
  GENERIC MODAL
\*----------------------------------------*/
.generic-modal {
  z-index: 900;
  padding-top: 20px;
  display: none; }
  .modal-is-in .generic-modal {
    display: block; }
  .generic-modal .logo {
    display: inline-block; }

.modal__item {
  display: none; }

.modal__item--active {
  display: block; }

.modal-is-in body {
  overflow: hidden; }

.modal-is-in .generic-modal {
  display: block;
  position: fixed;
  overflow-y: scroll;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #f8f8f8; }

.modal__close--x {
  display: none;
  cursor: pointer;
  line-height: 1;
  margin: 13px 0 0;
  margin: 1rem 0 0;
  text-align: right; }
  .modal-is-in .modal__close--x {
    display: block;
    position: relative;
    top: -3em; }

.modal__close--x .close-x {
  display: inline-block;
  font-weight: 700;
  font-size: 2em;
  line-height: 0;
  margin-left: 0.15em;
  position: relative;
  top: 0.05em; }

#mortgage-form__results-wrapper {
  overflow: hidden;
  transition: height 300ms ease-in; }
  #mortgage-form__results-wrapper.collapsed {
    height: 0; }

.mortgage-overlay {
  transition: 0.3s all ease-in-out; }

.input-wrapper--bump {
  transform: scale(1.2); }

/*
    overlay
*/
.mortgage-overlay {
  position: relative;
  z-index: 1; }
  .mortgage-overlay input {
    padding-top: 11.5px !important;
    padding-bottom: 11.5px !important;
    font-size: 1.8rem; }
  .mortgage-overlay.mortgage-overlay__with-currency input {
    padding-left: 60px !important; }

.mortgage-overlay__currency {
  position: absolute;
  z-index: 3;
  top: 1px;
  bottom: 1px;
  left: 1px;
  width: 50px;
  font-size: 1.4rem;
  padding-top: 18px;
  padding-left: 12px;
  color: #7d7d7d; }

.mortgage-overlay__inner {
  position: absolute;
  z-index: 2;
  top: 1px;
  right: 1px;
  bottom: 1px;
  left: 1px;
  font-size: 1.8rem;
  padding-left: 30px;
  padding-top: 11.5px;
  padding-bottom: 11.5px;
  background-color: #ffffff; }
  .mortgage-overlay__with-currency .mortgage-overlay__inner {
    padding-left: 60px; }

/*----------------------------------------*\
  MESSAGES
\*----------------------------------------*/
.messages {
  display: inline-block;
  width: 100%;
  position: relative;
  border: 1px solid #CCCCCC;
  border-left-width: 4rem;
  margin-top: 97px;
  margin-bottom: 1em;
  background-color: #ffffff;
  padding: 1em;
  box-shadow: none; }
  .messages .messages__list {
    margin: 0;
    padding: 0.5em 1em; }
  .messages .messages__item {
    list-style: square; }
  .messages::before {
    content: '';
    width: 2rem;
    position: absolute;
    z-index: 2;
    left: -3rem;
    text-align: center;
    font-size: 2rem;
    line-height: 0.5em;
    margin-right: 1em; }

.messages--success {
  color: #004d00;
  border-color: green; }
  .messages--success::before {
    content: "✓";
    color: #ffffff;
    background-color: green;
    font-weight: 200; }

.messages--info {
  color: #505050;
  border-color: #2595d9; }
  .messages--info::before {
    content: "i";
    color: #ffffff;
    background-color: #2595d9; }

.messages--warning {
  color: #cc8400;
  border-color: orange; }
  .messages--warning::before {
    content: "!";
    color: #ffffff;
    background-color: orange; }

.messages--error {
  color: #c70039;
  border-color: #c70039; }
  .messages--error::before {
    content: "×";
    color: #ffffff;
    background-color: #c70039; }

/*----------------------------------------*\
  COUNTDOWN
\*----------------------------------------*/
.countdown {
  display: block;
  position: relative;
  padding-left: 1.5em; }

.countdown__icon {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.2em;
  position: absolute;
  left: 0;
  top: 0.05em;
  fill: currentColor; }

/*----------------------------------------*\
  ACCORDION
\*----------------------------------------*/
@media (min-width: 62em) {
  .accordion--form {
    width: 90%; } }

.accordion__item {
  margin: 0 0 18px;
  border: 1px solid #8d8c8d;
  position: relative;
  transition: background-color 200ms ease-in-out;
  background-color: #ffffff; }
  @media (min-width: 62em) {
    .accordion__item {
      margin-bottom: 1em; } }
  .accordion__item:hover {
    box-shadow: 0 0.3rem 0.3rem rgba(27, 25, 28, 0.1);
    background-color: #f8f8f8; }
  .accordion__item.no-results {
    font-size: 0.875em;
    border: none; }
    .accordion__item.no-results:hover {
      box-shadow: none;
      background: none; }

.accordion__header {
  display: flex;
  width: 100%;
  padding: 18px 48px 18px 18px;
  border: none;
  text-align: left;
  background-color: transparent; }
  @media (min-width: 48.0625em) {
    .accordion__header {
      padding-left: 18px; } }
  @media (min-width: 62em) {
    .accordion__header {
      padding: 1em; } }
  .accordion__header::after {
    content: '';
    width: 1.2em;
    height: 1.2em;
    background-image: url("../images/icons/arrow-down.svg");
    background-size: cover;
    background-repeat: no-repeat;
    display: inline-block;
    position: absolute;
    right: 18px;
    top: 18px;
    transition: transform 250ms ease-in-out; }
    @media (min-width: 62em) {
      .accordion__header::after {
        right: 1em;
        top: 1em; } }
  .accordion__header > svg {
    margin-right: 0.5em;
    fill: currentColor;
    height: 1.2em;
    width: 1.2em;
    position: relative;
    top: -0.05em; }
  .accordion__header:focus {
    outline: none; }
  .accordion__header.expanded {
    background-color: #ffffff; }
    .accordion__header.expanded::after {
      transform: rotate(-180deg); }

.accordion__header-text {
  max-width: 92%; }
  .accordion__header-text p {
    margin-bottom: 0; }

.accordion__panel {
  padding: 0 18px 18px 18px;
  position: relative;
  z-index: 1; }
  @media (min-width: 48.0625em) {
    .accordion__panel {
      padding-left: 2.9em;
      padding-right: 2.9em; } }
  .expanded + .accordion__panel {
    background-color: #ffffff; }
  .accordion__panel ul {
    margin-top: 0;
    padding-left: 1em; }

.accordion--no-border .accordion__item {
  border: none; }
  .accordion--no-border .accordion__item:hover {
    box-shadow: none;
    background-color: transparent; }

.accordion--no-border .accordion__header {
  padding: 0;
  padding-bottom: 1em; }

.accordion--no-border .accordion__panel {
  padding: 0; }

.accordion--no-border .accordion__header::after {
  position: relative;
  right: -1em;
  top: 0; }

/*----------------------------------------*\
  TOOLTIPS
\*----------------------------------------*/
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  opacity: 0; }

.tooltip.in {
  opacity: 0.9; }

.tooltip.top {
  margin-top: -3px;
  padding: 5px 0; }

.tooltip.right {
  margin-left: 3px;
  padding: 0 5px; }

.tooltip.bottom {
  margin-top: 3px;
  padding: 5px 0; }

.tooltip.left {
  margin-left: -3px;
  padding: 0 5px; }

.tooltip-inner {
  max-width: 200px;
  padding: 0.5em 1em;
  color: #ffffff;
  text-align: center;
  background-color: #1b191c;
  border-radius: 2px; }

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #1b191c; }

.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #1b191c; }

.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #1b191c; }

.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #1b191c; }

.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #1b191c; }

.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #1b191c; }

.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #1b191c; }

.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #1b191c; }

.fade {
  opacity: 0;
  transform: translateY(5px);
  transition: opacity .15s linear, transform .15s; }
  .fade.in {
    opacity: 1; }
    .fade.in.top {
      transform: translateY(0); }

/*----------------------------------------*\
  POPOVER
\*----------------------------------------*/

.popover {
  padding: 1.5em;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  max-width: 276px;
  background-color: #ffffff;
  background-clip: padding-box;
  border: 1px solid rgba(141, 140, 141, 0.4);
  border-radius: 0px;
  box-shadow: 0 1px 5px rgba(27, 25, 28, 0.3);
  display: none; }

.popover.top {
  margin-top: -16px; }

.popover.right {
  margin-left: 16px; }

.popover.bottom {
  margin-top: 16px; }

.popover.left {
  margin-left: -16px; }

.popover-title {
  font-weight: bold;
  color: #1b191c; }

.popover-content {
  color: #1b191c; }

.popover > .arrow,
.popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover > .arrow {
  border-width: 13px; }

.popover > .arrow:after {
  border-width: 12px;
  content: ""; }

.popover.top > .arrow {
  left: 50%;
  margin-left: -13px;
  border-bottom-width: 0;
  border-top-color: rgba(141, 140, 141, 0.4);
  bottom: -13px; }

.popover.top > .arrow:after {
  content: " ";
  bottom: 1px;
  margin-left: -12px;
  border-bottom-width: 0;
  border-top-color: #ffffff; }

.popover.right > .arrow {
  top: 50%;
  left: -13px;
  margin-top: -13px;
  border-left-width: 0;
  border-right-color: rgba(141, 140, 141, 0.4); }

.popover.right > .arrow:after {
  content: " ";
  left: 1px;
  bottom: -12px;
  border-left-width: 0;
  border-right-color: #ffffff; }

.popover.bottom > .arrow {
  left: 50%;
  margin-left: -13px;
  border-top-width: 0;
  border-bottom-color: rgba(141, 140, 141, 0.4);
  top: -13px; }

.popover.bottom > .arrow:after {
  content: " ";
  top: 1px;
  margin-left: -12px;
  border-top-width: 0;
  border-bottom-color: #ffffff; }

.popover.left > .arrow {
  top: 50%;
  right: -13px;
  margin-top: -13px;
  border-right-width: 0;
  border-left-color: rgba(141, 140, 141, 0.4); }

.popover.left > .arrow:after {
  content: " ";
  right: 1px;
  border-right-width: 0;
  border-left-color: #ffffff;
  bottom: -12px; }

.popover--e-banking {
  padding: 0;
  width: 350px;
  max-width: 100%;
  display: block;
  top: 3.5em;
  right: 0;
  left: auto; }
  .popover--e-banking .popover.bottom > .arrow {
    left: 45%; }
  .popover--e-banking.bottom > .arrow:after {
    border-bottom-color: #f8f8f8; }
  .popover--e-banking .opening-time {
    width: 100%;
    padding-left: 1.4em;
    color: #8d8c8d;
    font-size: 0.9em; }
  .popover--e-banking .simple-menu {
    padding-left: 1.4em; }
  .popover--e-banking .register-link {
    padding-left: 1.6em; }

.popover--e-banking__menu h2 {
  margin: 0;
  cursor: default !important; }
  .popover--e-banking__menu h2:hover {
    color: #505050 !important; }

.popover--e-banking__menu ul a {
  display: block !important; }

.popover--mybcf {
  padding: 0;
  width: 350px;
  max-width: calc(100% - 2em);
  display: block;
  top: 9em;
  right: 1em;
  left: auto; }
  @media (min-width: 62em) {
    .popover--mybcf {
      top: 6.9em;
      left: auto; } }

/*----------------------------------------*\
  WIZARD
\*----------------------------------------*/
.wizard {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none;
  margin-bottom: 18px; }
  body .wizard {
    margin-left: 0 !important; }

.step {
  flex-grow: 1;
  position: relative;
  background-color: #ccc; }
  .step:nth-child(1) {
    z-index: calc(100-1); }
  .step:nth-child(2) {
    z-index: calc(100-2); }
  .step:nth-child(3) {
    z-index: calc(100-3); }
  .step:nth-child(4) {
    z-index: calc(100-4); }
  .step:nth-child(5) {
    z-index: calc(100-5); }
  .step:nth-child(6) {
    z-index: calc(100-6); }
  .step:nth-child(7) {
    z-index: calc(100-7); }
  .step:nth-child(8) {
    z-index: calc(100-8); }
  .step:nth-child(9) {
    z-index: calc(100-9); }
  .step:nth-child(10) {
    z-index: calc(100-10); }
  .step .step__content {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 5px 0px 5px 35px;
    height: 60px;
    background-color: #bfbfbf;
    color: #ffffff;
    text-decoration: none;
    text-align: left; }
    @media (min-width: 30em) {
      .step .step__content {
        flex-direction: row; } }
    .step .step__content::after {
      content: "";
      width: 0;
      height: 0;
      position: absolute;
      z-index: 1;
      top: 0;
      right: -12px;
      border-top: 30px solid transparent;
      border-bottom: 30px solid transparent;
      border-left: 12px solid #ffffff; }
    .step .step__content::before {
      content: "";
      width: 0;
      height: 0;
      position: absolute;
      top: 0px;
      z-index: 2;
      right: -11px;
      border-top: 30px solid transparent;
      border-bottom: 30px solid transparent;
      border-left: 12px solid #bfbfbf; }
  .step .step__number {
    display: block;
    font-weight: inherit;
    color: inherit;
    margin-right: 0.3em; }
  .step .step__label {
    padding-right: 2px;
    color: inherit; }
  .step:first-child .step__content {
    padding-left: 1em; }
  .step:last-child .step__content {
    padding-right: 1em; }
    .step:last-child .step__content::before, .step:last-child .step__content::after {
      display: none; }

a.step__content:hover {
  text-decoration: none;
  color: #ffffff; }

.step--validated {
  color: #ffffff; }
  .step--validated .step__content {
    color: #ffffff;
    background-color: #196897; }
  .step--validated .step__content::before {
    border-left-color: #196897; }
  .step--validated .step__checkmark {
    display: inline-block;
    width: 1.3em;
    height: 1.3em;
    margin-left: 0.5em;
    background-image: url("../images/icons/check-negative.svg");
    background-size: contain;
    background-repeat: no-repeat; }

.step--clickable {
  cursor: pointer; }
  .step--clickable:hover {
    color: #ffffff; }
    .step--clickable:hover .step__content {
      color: #ffffff;
      background-color: #2595d9; }
    .step--clickable:hover .step__content::before {
      border-left-color: #2595d9; }

.step--current,
.step--current .step__content {
  color: #ffffff;
  background-color: #2595d9;
  cursor: normal; }
  .step--current .step__content::before,
  .step--current .step__content .step__content::before {
    border-left-color: #2595d9; }

.wizard--small .step__content {
  height: 40px; }
  .wizard--small .step__content::after {
    right: -8px;
    border-top-width: 20px;
    border-bottom-width: 20px;
    border-left-width: 8px; }
  .wizard--small .step__content::before {
    right: -7px;
    border-top-width: 20px;
    border-bottom-width: 20px;
    border-left-width: 8px; }

.progress-bar {
  padding: 2px;
  margin-bottom: 30px;
  border: 1px solid #8d8c8d;
  border-radius: 4px; }
  .progress-bar .progress-bar__fill {
    height: 12px;
    background-color: green;
    border-radius: 3px; }

/*----------------------------------------*\
  DATE & TIME PICKER
  http://amsul.ca/pickadate.js
  classic theme
\*----------------------------------------*/
/* ==========================================================================
   $BASE-PICKER
   ========================================================================== */
/**
 * Note: the root picker element should *NOT* be styled more than what’s here.
 */
.picker {
  font-size: 16px;
  text-align: left;
  line-height: 1.2;
  color: #000000;
  position: absolute;
  z-index: 10000;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/**
 * The picker input element.
 */
.picker__input {
  cursor: default; }

/**
 * When the picker is opened, the input element is “activated”.
 */
.picker__input.picker__input--active {
  border-color: #0089ec; }

/**
 * The holder is the only “scrollable” top-level container element.
 */
.picker__holder {
  width: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch; }

/*!
 * Classic picker styling for pickadate.js
 * Demo: http://amsul.github.io/pickadate.js
 */
/**
 * Note: the root picker element should *NOT* be styled more than what’s here.
 */
.picker {
  width: 100%; }

/**
 * The holder is the base of the picker.
 */
.picker__holder {
  position: absolute;
  background: #ffffff;
  border: 1px solid #aaaaaa;
  border-top-width: 0;
  border-bottom-width: 0;
  border-radius: 0 0 5px 5px;
  box-sizing: border-box;
  min-width: 176px;
  max-width: 466px;
  max-height: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  transform: translateY(-1em) perspective(600px) rotateX(10deg);
  transition: transform 0.15s ease-out, opacity 0.15s ease-out, max-height 0s 0.15s, border-width 0s 0.15s; }

/**
 * The frame and wrap work together to ensure that
 * clicks within the picker don’t reach the holder.
 */
.picker__frame {
  padding: 1px; }

.picker__wrap {
  margin: -1px; }

/**
 * When the picker opens...
 */
.picker--opened .picker__holder {
  max-height: 25em;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
  border-top-width: 1px;
  border-bottom-width: 1px;
  transform: translateY(0) perspective(600px) rotateX(0);
  transition: transform 0.15s ease-out, opacity 0.15s ease-out, max-height 0s, border-width 0s;
  box-shadow: 0 6px 18px 1px rgba(0, 0, 0, 0.12); }

/* ==========================================================================
   $BASE-DATE-PICKER
   ========================================================================== */
/**
 * The picker box.
 */
.picker__box {
  padding: 0 1em; }

/**
 * The header containing the month and year stuff.
 */
.picker__header {
  text-align: center;
  position: relative;
  margin-top: .75em; }

/**
 * The month and year labels.
 */
.picker__month,
.picker__year {
  font-weight: 500;
  display: inline-block;
  margin-left: .25em;
  margin-right: .25em; }

.picker__year {
  color: #999999;
  font-size: .8em;
  font-style: italic; }

/**
 * The month and year selectors.
 */
.picker__select--month,
.picker__select--year {
  border: 1px solid #b7b7b7;
  height: 2em;
  padding: .5em;
  margin-left: .25em;
  margin-right: .25em; }

@media (min-width: 24.5em) {
  .picker__select--month,
  .picker__select--year {
    margin-top: -0.5em; } }

.picker__select--month {
  width: 35%; }

.picker__select--year {
  width: 22.5%; }

.picker__select--month:focus,
.picker__select--year:focus {
  border-color: #0089ec; }

/**
 * The month navigation buttons.
 */
.picker__nav--prev,
.picker__nav--next {
  position: absolute;
  padding: .5em 1.25em;
  width: 1em;
  height: 1em;
  box-sizing: content-box;
  top: -0.25em; }

@media (min-width: 24.5em) {
  .picker__nav--prev,
  .picker__nav--next {
    top: -0.33em; } }

.picker__nav--prev {
  left: -1em;
  padding-right: 1.25em; }

@media (min-width: 24.5em) {
  .picker__nav--prev {
    padding-right: 1.5em; } }

.picker__nav--next {
  right: -1em;
  padding-left: 1.25em; }

@media (min-width: 24.5em) {
  .picker__nav--next {
    padding-left: 1.5em; } }

.picker__nav--prev:before,
.picker__nav--next:before {
  content: " ";
  border-top: .5em solid transparent;
  border-bottom: .5em solid transparent;
  border-right: 0.75em solid #000000;
  width: 0;
  height: 0;
  display: block;
  margin: 0 auto; }

.picker__nav--next:before {
  border-right: 0;
  border-left: 0.75em solid #000000; }

.picker__nav--prev:hover,
.picker__nav--next:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb; }

.picker__nav--disabled,
.picker__nav--disabled:hover,
.picker__nav--disabled:before,
.picker__nav--disabled:before:hover {
  cursor: default;
  background: none;
  border-right-color: #f5f5f5;
  border-left-color: #f5f5f5; }

/**
 * The calendar table of dates
 */
.picker__table {
  text-align: center;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  font-size: inherit;
  width: 100%;
  margin-top: .75em;
  margin-bottom: .5em; }

@media (min-height: 33.875em) {
  .picker__table {
    margin-bottom: .75em; } }

.picker__table td {
  margin: 0;
  padding: 0; }

/**
 * The weekday labels
 */
.picker__weekday {
  width: 14.285714286%;
  font-size: .75em;
  padding-bottom: .25em;
  color: #999999;
  font-weight: 500;
  /* Increase the spacing a tad */ }

@media (min-height: 33.875em) {
  .picker__weekday {
    padding-bottom: .5em; } }

/**
 * The days on the calendar
 */
.picker__day {
  padding: .3125em 0;
  font-weight: 200;
  border: 1px solid transparent; }

.picker__day--today {
  position: relative; }

.picker__day--today:before {
  content: " ";
  position: absolute;
  top: 2px;
  right: 2px;
  width: 0;
  height: 0;
  border-top: 0.5em solid #0059bc;
  border-left: .5em solid transparent; }

.picker__day--disabled:before {
  border-top-color: #aaaaaa; }

.picker__day--outfocus {
  color: #dddddd; }

.picker__day--infocus:hover,
.picker__day--outfocus:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb; }

.picker__day--highlighted {
  border-color: #0089ec; }

.picker__day--highlighted:hover,
.picker--focused .picker__day--highlighted {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb; }

.picker__day--selected,
.picker__day--selected:hover,
.picker--focused .picker__day--selected {
  background: #0089ec;
  color: #ffffff; }

.picker__day--disabled,
.picker__day--disabled:hover,
.picker--focused .picker__day--disabled {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default; }

.picker__day--highlighted.picker__day--disabled,
.picker__day--highlighted.picker__day--disabled:hover {
  background: #bbbbbb; }

/**
 * The footer containing the "today", "clear", and "close" buttons.
 */
.picker__footer {
  text-align: center; }

.picker__button--today,
.picker__button--clear,
.picker__button--close {
  border: 1px solid #ffffff;
  background: #ffffff;
  font-size: .8em;
  padding: .66em 0;
  font-weight: bold;
  width: 33%;
  display: inline-block;
  vertical-align: bottom; }

.picker__button--today:hover,
.picker__button--clear:hover,
.picker__button--close:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
  border-bottom-color: #b1dcfb; }

.picker__button--today:focus,
.picker__button--clear:focus,
.picker__button--close:focus {
  background: #b1dcfb;
  border-color: #0089ec;
  outline: none; }

.picker__button--today:before,
.picker__button--clear:before,
.picker__button--close:before {
  position: relative;
  display: inline-block;
  height: 0; }

.picker__button--today:before,
.picker__button--clear:before {
  content: " ";
  margin-right: .45em; }

.picker__button--today:before {
  top: -0.05em;
  width: 0;
  border-top: 0.66em solid #0059bc;
  border-left: .66em solid transparent; }

.picker__button--clear:before {
  top: -0.25em;
  width: .66em;
  border-top: 3px solid #ee2200; }

.picker__button--close:before {
  content: "\D7";
  top: -0.1em;
  vertical-align: top;
  font-size: 1.1em;
  margin-right: .35em;
  color: #777777; }

.picker__button--today[disabled],
.picker__button--today[disabled]:hover {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default; }

.picker__button--today[disabled]:before {
  border-top-color: #aaaaaa; }

/* ==========================================================================
   $CLASSIC-DATE-PICKER
   ========================================================================== */
/* ==========================================================================
   $BASE-TIME-PICKER
   ========================================================================== */
/**
 * The list of times.
 */
.picker__list {
  list-style: none;
  padding: 0.75em 0 4.2em;
  margin: 0; }

/**
 * The times on the clock.
 */
.picker__list-item {
  border-bottom: 1px solid #dddddd;
  border-top: 1px solid #dddddd;
  margin-bottom: -1px;
  position: relative;
  background: #ffffff;
  padding: .75em 1.25em; }

@media (min-height: 46.75em) {
  .picker__list-item {
    padding: .5em 1em; } }

/* Hovered time */
.picker__list-item:hover {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb;
  border-color: #0089ec;
  z-index: 10; }

/* Highlighted and hovered/focused time */
.picker__list-item--highlighted {
  border-color: #0089ec;
  z-index: 10; }

.picker__list-item--highlighted:hover,
.picker--focused .picker__list-item--highlighted {
  cursor: pointer;
  color: #000000;
  background: #b1dcfb; }

/* Selected and hovered/focused time */
.picker__list-item--selected,
.picker__list-item--selected:hover,
.picker--focused .picker__list-item--selected {
  background: #0089ec;
  color: #ffffff;
  z-index: 10; }

/* Disabled time */
.picker__list-item--disabled,
.picker__list-item--disabled:hover,
.picker--focused .picker__list-item--disabled {
  background: #f5f5f5;
  border-color: #f5f5f5;
  color: #dddddd;
  cursor: default;
  border-color: #dddddd;
  z-index: auto; }

/**
 * The clear button
 */
.picker--time .picker__button--clear {
  display: block;
  width: 80%;
  margin: 1em auto 0;
  padding: 1em 1.25em;
  background: none;
  border: 0;
  font-weight: 500;
  font-size: .67em;
  text-align: center;
  text-transform: uppercase;
  color: #666; }

.picker--time .picker__button--clear:hover,
.picker--time .picker__button--clear:focus {
  color: #000000;
  background: #b1dcfb;
  background: #ee2200;
  border-color: #ee2200;
  cursor: pointer;
  color: #ffffff;
  outline: none; }

.picker--time .picker__button--clear:before {
  top: -0.25em;
  color: #666;
  font-size: 1.25em;
  font-weight: bold; }

.picker--time .picker__button--clear:hover:before,
.picker--time .picker__button--clear:focus:before {
  color: #ffffff;
  border-color: #ffffff; }

/* ==========================================================================
   $CLASSIC-TIME-PICKER
   ========================================================================== */
/**
 * Note: the root picker element should __NOT__ be styled
 * more than what’s here. Style the `.picker__holder` instead.
 */
.picker--time {
  min-width: 256px;
  max-width: 320px; }

/**
 * The holder is the base of the picker.
 */
.picker--time .picker__holder {
  background: #f2f2f2; }

@media (min-height: 40.125em) {
  .picker--time .picker__holder {
    font-size: .875em; } }

/**
 * The box contains the list of times.
 */
.picker--time .picker__box {
  padding: 0;
  position: relative; }

.picker__table thead {
  background-color: inherit; }

.picker__table th {
  text-align: inherit; }

.picker__table tr {
  border-bottom: none; }

.picker__table td {
  font-weight: inherit; }
  .picker__table td:first-child {
    font-weight: inherit; }

.picker__input.picker__input.picker__input {
  max-width: 5em; }

.picker__input--date {
  max-width: 8em; }

/*----------------------------------------*\
  PAGINATION
\*----------------------------------------*/
.pager {
  text-align: center; }

.pager__items {
  padding: 30px 0 48px;
  margin: 0 auto;
  list-style: none;
  display: inline-block; }

.pager__item {
  display: block;
  float: left;
  position: relative;
  left: -1px; }
  .pager__item a {
    display: block;
    padding: 0.6em 0.9em 0.55em;
    font-size: 0.9em;
    text-decoration: none;
    white-space: nowrap;
    border-width: 1px 0 1px 1px;
    border-style: solid;
    border-color: #d0d0d0;
    color: #1b191c; }
    .pager__item a:hover {
      background-color: #1b191c;
      color: #ffffff;
      border-color: #1b191c; }
  .pager__item:first-of-type a {
    border-top-left-radius: 3px;
    border-bottom-left-radius: 3px; }
  .pager__item:last-of-type a {
    border-width: 1px;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px; }

.pager__item--ellipsis {
  display: none; }

/*----------------------------------------*\
  QUICK SEARCH - Custom style for search
  TODO: Get rid of this specific CSS
  See https://jira.liip.ch/browse/BCF-497
\*----------------------------------------*/
.form--faq-inline-search::after, [id="block-exposed-form-search-hp"] .form-group--textfield [id="icon-search-form"], [id="quick-search-mobile-form"]::after {
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0.8em;
  right: 0.7em;
  background-image: url("../images/icons/search.svg");
  background-size: 1em 1em;
  opacity: 0.5;
  cursor: pointer; }

[id="block-exposed-form-search-hp"] .form-group--textfield {
  position: relative; }

[id="block-exposed-form-search-hp"] [id="edit-submit-search"] {
  display: none; }

[id="block-exposed-form-search-hp"] [id="icon-search-form"] {
  display: none; }

[id="quick-search-mobile-form"] {
  position: relative; }
  [id="quick-search-mobile-form"]::after {
    content: ''; }

[id="block-exposed-form-search-page"] [id="views-exposed-form-search-page-1"] {
  display: flex;
  flex-wrap: wrap;
  padding-top: 48px; }

[id="block-exposed-form-search-page"] .form-group--textfield {
  flex: 0 0 auto;
  width: 100%;
  margin-bottom: 18px; }
  @media (min-width: 30em) {
    [id="block-exposed-form-search-page"] .form-group--textfield {
      width: 33.333%;
      padding-right: 18px; } }

[id="block-exposed-form-search-page"] .form-group--textfield {
  flex: 0 0 auto; }

/*----------------------------------------*\
  NAV
\*----------------------------------------*/
.nav {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  padding: 0;
  margin: 0;
  list-style: none;
  color: #505050; }

.affix,
.nav-wrapper--sticky {
  left: 0;
  width: 100%;
  background: #f8f8f8;
  box-shadow: rgba(129, 126, 117, 0.25) 0 1px 20px 0;
  z-index: 3000; }

.nav__item {
  flex: 0 0 auto; }

.nav__item__link {
  display: block;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  color: inherit;
  transition: color 0.2s ease-out; }

.nav .active .nav__item__link, .nav__item__link:hover,
.nav__item__link--active {
  border-bottom-color: #1b191c;
  color: #1b191c; }

/*----------------------------------------*\
  MODAL
\*----------------------------------------*/
.modal {
  background: rgba(243, 243, 243, 0.95); }
  .modal.tingle-modal {
    padding-top: 0; }
  .modal .tingle-modal-box {
    width: 100%;
    background: transparent;
    margin: 23px 0 0; }
  .modal .tingle-modal-box--resized {
    max-width: 1120px; }
  .modal .logo__icon {
    background-color: #f3f3f3;
    padding-bottom: 18px; }
  @media (min-width: 30em) {
    .modal .tingle-modal-box {
      margin-top: 33px; } }
  @media (min-width: 48.0625em) {
    .modal .tingle-modal-box {
      margin-top: 37px; } }
  @media (min-width: 62em) {
    .modal .tingle-modal-box {
      margin-top: 67px; }
    .modal .geolocation-google-map {
      height: 600px !important; } }

.modal--gapless .tingle-modal-box__content {
  padding: 0; }

.modal__header {
  background: transparent; }

.modal__closer {
  cursor: pointer; }

.tingle-modal__content {
  position: absolute;
  margin-top: -2000px; }

/*----------------------------------------*\
  USER ACCOUNT
\*----------------------------------------*/
.user-account__link {
  margin-top: 18px; }
  .user-account__link:hover,
  .user-account-menu--is-open .user-account__link {
    color: #1b191c; }
  .user-account__link svg {
    transition: transform 200ms ease-in-out; }
  .user-account-menu--is-open .user-account__link svg {
    transform: rotate(180deg); }

.user-account__menu a {
  color: #505050; }
  .user-account__menu a:hover {
    color: #2595d9;
    background: #f8f8f8; }

/*----------------------------------------*\
  FLAGS
\*----------------------------------------*/
.flag {
  width: 15em;
  height: 7em;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  overflow: hidden;
  text-transform: none; }

.flag--top-right {
  right: 0;
  left: auto; }

.flag__text {
  padding-top: 0.2em;
  padding-right: 100px;
  padding-bottom: 0.1em;
  padding-left: 100px;
  color: #fff;
  background-color: #2595d9;
  text-align: center;
  white-space: nowrap;
  line-height: 1;
  position: absolute;
  transition: transform 250ms 120ms cubic-bezier(0.6, 2.51, 0.7, 0.7); }
  .flag--top-left .flag__text {
    transform: translate(-35%, -50%) rotate(-20deg) translateY(75%);
    transform-origin: center center; }
  .flag--top-right .flag__text {
    transform: translate(55%, -50%) rotate(45deg) translateY(130%);
    transform-origin: center center; }
  .box:hover .flag--top-left .flag__text {
    transform: translate(-35%, -50%) rotate(-20deg) translateY(80%) scale(1.2); }
  .box:hover .flag--top-right .flag__text {
    transform: translate(55%, -50%) rotate(45deg) translateY(135%) scale(1.2); }
  .flag--le-club .flag__text {
    background-color: #a2ad24;
    font-family: "Cookie", Helvetica, Arial, sans-serif;
    font-size: 1.3em; }
  .flag--exclusive .flag__text {
    background-color: #8d8c8d;
    font-family: "Cookie", Helvetica, Arial, sans-serif;
    font-size: 1.3em; }
  .flag--double .flag__text {
    background-color: #a2ad24;
    font-family: "Cookie", Helvetica, Arial, sans-serif;
    font-size: 1.2em;
    padding-left: 80px; }
  .flag--double .flag__text + .flag__text {
    padding-left: 0.4em;
    background-color: #8d8c8d;
    font-family: "Cookie", Helvetica, Arial, sans-serif;
    font-size: 1em;
    transform: translate(-35%, -50%) rotate(-20deg) translateX(74%) translateY(162%);
    transform-origin: center center; }
  .box:hover .flag--double .flag__text + .flag__text {
    transform: translate(-35%, -50%) rotate(-20deg) translateX(85%) translateY(190%) scale(1.2);
    transition-delay: 200ms; }
  .flag--btn .flag__text {
    transform: translate(-41%, -20%) rotate(-20deg) translateY(29%) !important; }

/*----------------------------------------*\
  CONTEST BOX
\*----------------------------------------*/
.contest {
  overflow: hidden;
  transition: transform 300ms ease-in-out; }
  .contest::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: scale(0.01);
    transform-origin: 10% 90%;
    transition: background-color 300ms ease-in-out, transform 300ms ease-in-out; }
  .contest .contest__infos {
    display: block;
    opacity: 1;
    transition: opacity 300ms 200ms ease-in-out; }
  .contest .contest__message {
    padding: 37px 25px;
    margin-top: -10000px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: opacity 500ms 800ms ease-in-out;
    opacity: 0; }
  .contest--is-participating {
    animation: pound 500ms; }
    .contest--is-participating::before {
      background-color: rgba(162, 173, 36, 0.9);
      transform: scale(1); }
    .contest--is-participating h3 {
      min-height: 0;
      color: #ffffff;
      font-weight: 500; }
    .contest--is-participating p,
    .le-club .contest--is-participating .countdown {
      color: #ffffff; }
    .contest--is-participating .accordion__item {
      background-color: inherit; }
    .contest--is-participating .magnet {
      color: #505050; }
    .contest--is-participating .magnet__image {
      animation: wavy 1200ms; }
    .contest--is-participating .contest__infos {
      opacity: 0.5;
      max-height: 0;
      overflow: hidden; }
    .contest--is-participating .contest__message {
      margin-top: 0;
      opacity: 1;
      position: relative; }
    .contest--is-participating .flag {
      display: none; }
    .contest--is-participating .magnet__overlay-title {
      background-color: #505050; }

@keyframes pound {
  from {
    transform: none; }
  25% {
    transform: scale(1.05); }
  to {
    transform: none; } }

@keyframes wavy {
  0% {
    transform: none; }
  25% {
    transform: rotate(8deg); }
  75% {
    transform: rotate(-3deg); }
  100% {
    transform: rotate(-2deg); } }

.selectability {
  position: relative; }
  .selectability:focus {
    outline: none; }
  .selectability[aria-disabled=true] {
    opacity: 0.8;
    cursor: none;
    pointer-events: none; }

.selectability__textbox {
  position: relative;
  cursor: pointer; }
  .selectability:focus .selectability__textbox {
    border-color: #1b191c; }

.selectability__textbox__text {
  display: block;
  overflow: hidden;
  white-space: nowrap; }
  .selectability__textbox__text:focus {
    outline: none; }
  .selectability--doubleLabel .selectability__textbox__text {
    position: relative;
    top: 0.4em; }

.selectability__textbox__smalltext {
  width: 85%;
  position: absolute;
  top: 1.1em;
  font-size: 0.65em;
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }
  .selectability__textbox__smalltext:focus {
    outline: none; }

.selectability__textbox__icon {
  position: absolute;
  top: 63%;
  right: 0.7em;
  fill: #2595d9;
  stroke: #2595d9;
  stroke-width: 1.4px;
  transform: translateY(-50%); }
  @media (min-width: 30em) {
    .selectability__textbox__icon {
      top: 50%; } }
  .selectability__textbox:hover .selectability__textbox__icon {
    fill: #1b191c;
    stroke: #1b191c; }
  [aria-disabled=true] .selectability__textbox__icon {
    display: none; }

.selectability__listbox {
  min-width: 100%;
  max-height: 34vh;
  overflow-y: scroll;
  position: absolute;
  z-index: 100;
  background: white;
  font-size: 1em;
  border: 1px solid #bfbfbf;
  border-top-width: 0px;
  box-shadow: rgba(27, 25, 28, 0.1) 0 1px 15px 0px; }
  [aria-expanded="false"] .selectability__listbox {
    display: none; }
  .selectability__listbox > div {
    padding: 9px 18px; }
    .selectability__listbox > div:hover {
      color: #1b191c;
      background-color: #f8f8f8; }
    .selectability__listbox > div:focus {
      border-color: #1b191c;
      outline: none;
      color: #2595d9;
      background-color: #f8f8f8; }

.selectability-offscreen-touch {
  opacity: 0.001;
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  font-size: 16px; }

/*----------------------------------------*\
  CALCULATOR
\*----------------------------------------*/
.calculator {
  display: flex;
  flex-direction: column;
  padding-top: 48px; }
  @media (min-width: 62em) {
    .calculator {
      flex-direction: row;
      align-items: flex-end;
      max-width: 85vw; } }
  .calculator input[type="number"]::-webkit-outer-spin-button,
  .calculator input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  .calculator input[type="number"] {
    -moz-appearance: textfield; }
  .calculator :-ms-input-placeholder {
    font-style: italic;
    color: #8d8c8d;
    padding-right: 4px; }
  .calculator ::placeholder {
    font-style: italic;
    color: #8d8c8d;
    padding-right: 4px; }

.calculator-width {
  max-width: 500px;
  margin: 0 auto; }
  @media (min-width: 62em) {
    .calculator-width {
      flex-direction: row;
      align-items: flex-end;
      max-width: none; } }

.calculator__block {
  display: flex;
  align-items: flex-end; }
  @media (min-width: 62em) {
    .calculator__block {
      width: 45%; } }
  .calculator__block .form-group--textfield {
    width: 60%; }
    @media (min-width: 380px) {
      .calculator__block .form-group--textfield {
        width: 50%; } }
  .calculator__block .form-group--select {
    width: 40%; }
    @media (min-width: 380px) {
      .calculator__block .form-group--select {
        width: 50%; } }
  .calculator__block label {
    color: #505050; }
  .calculator__block input[type='number'] {
    padding-left: 9px;
    text-align: right; }
    @media (min-width: 30em) {
      .calculator__block input[type='number'] {
        padding-left: 18px; } }
    @media (min-width: 62em) {
      .calculator__block input[type='number'] {
        padding-left: 30px; } }
  .calculator__block .selectability__textbox {
    border-left-width: 0;
    position: relative;
    cursor: pointer;
    padding-left: 9px; }
    @media (min-width: 30em) {
      .calculator__block .selectability__textbox {
        padding-left: 18px; } }
    @media (min-width: 62em) {
      .calculator__block .selectability__textbox {
        padding-left: 30px; } }

.calculator__swap {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: 1.2em;
  margin-bottom: 0; }
  @media (min-width: 62em) {
    .calculator__swap {
      width: 10%;
      margin-bottom: 1.2em; } }
  .calculator__swap a {
    display: inline-block;
    transform: rotate(90deg); }
    @media (min-width: 62em) {
      .calculator__swap a {
        transform: rotate(0deg); } }
    .calculator__swap a:focus {
      outline: none; }
      .calculator__swap a:focus svg {
        fill: #2595d9; }
  .calculator__swap svg {
    max-width: 40px;
    max-height: 40px;
    width: 100%;
    fill: #7d7d7d;
    transition: fill 300ms ease-in-out; }
    .calculator__swap svg:hover {
      fill: #2595d9; }

/**
 * Structures
 */
/*----------------------------------------*\
  HERO HEADER
\*----------------------------------------*/
.hero {
  background-color: #f3f3f3;
  position: relative;
  z-index: 2; }
  .hero .grid__item {
    transition: transform 800ms ease-in-out;
    transform: translateY(0px); }
    .hero .grid__item:nth-of-type(2) {
      transition-delay: 200ms; }
    .menu--visible .hero .grid__item {
      transform: translateY(50px); }

.hero--landscape {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center; }

@media (max-width: 30em) {
  .hero--landscape__container {
    padding-left: 0;
    padding-right: 0; } }

@media (min-width: 30em) {
  .hero--landscape__container {
    padding-top: 30px;
    padding-bottom: 30px; } }

@media (min-width: 75em) {
  .hero--landscape__container {
    padding-top: 48px;
    padding-bottom: 48px; } }

.hero--map {
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-image: url("../images/backgrounds/section-branches.gif"); }
  .hero--map:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    background-color: rgba(248, 248, 248, 0.3); }
  .hero--map > div {
    position: relative;
    z-index: 1; }

.hero__title {
  color: #2595d9; }
  @media (min-width: 62em) {
    .hero__title {
      margin-top: 30px; } }

@media (min-width: 62em) {
  .hero__subtitle {
    padding-top: 30px;
    padding-bottom: 30px; } }

.hero__subtitle p {
  margin-bottom: 0; }

.hero__image {
  max-width: 100%;
  max-height: 80vh;
  margin: 0 auto; }
  @media (min-width: 30em) {
    .hero__image {
      max-height: 60vh; } }
  @media (min-width: 48.0625em) {
    .hero__image {
      height: calc( 100% + 90px);
      max-width: none;
      max-height: 100vh;
      margin: 0;
      position: absolute;
      bottom: -60px;
      left: 50%;
      transform: translateX(-50%); } }
  @media (min-width: 75em) {
    .hero__image {
      height: calc( 100% + 144px);
      bottom: -96px; } }

.hero--login-e-banking {
  min-height: 100vh;
  background-image: url("../images/backgrounds/section-facets.svg");
  background-size: cover;
  background-position: center top;
  position: relative; }

.hero-underneath-section {
  position: relative;
  z-index: 0;
  padding-top: 141px;
  margin-top: -96px; }

/**
 * Components
 */
/*----------------------------------------*\
  MOSAIC
\*----------------------------------------*/
.mosaic {
  display: table;
  width: 100%; }

.mosaic--fixed {
  table-layout: fixed; }

.mosaic__row {
  display: table-row; }

.mosaic__cell {
  display: table-cell;
  vertical-align: middle; }
  .mosaic--top .mosaic__cell {
    vertical-align: top; }
  .mosaic--bottom .mosaic__cell {
    vertical-align: bottom; }

.mosaic__cell--fit {
  width: 1px;
  white-space: nowrap; }

/*----------------------------------------*\
  MOSAIC RESPONSIVE
\*----------------------------------------*/
@media (max-width: 61.9375em) {
  .mosaic--responsive,
  .mosaic--responsive > .mosaic__row,
  .mosaic--responsive > .mosaic__cell {
    display: block; }
  .mosaic--responsive > .mosaic__cell--fit {
    width: auto; } }

/*----------------------------------------*\
  LIST STACKED
\*----------------------------------------*/
.list-inline > li {
  display: inline-block;
  padding: 0 15px;
  vertical-align: middle; }
  .list-inline > li:first-child {
    padding-left: 0; }
  .list-inline > li:last-child {
    padding-right: 0; }

.list-inline--nowrap {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap; }
  @media (max-width: 30em) {
    .list-inline--nowrap > li {
      padding: 0 0.65em; }
    .list-inline--nowrap .icon {
      width: 2em; } }

.list-inline--divided > li + li {
  border-left: 1px solid #ffffff; }

/**
   * Sizes
   */
.list-inline--tight > li {
  padding: 0; }

.list-inline--tiny > li {
  padding: 0 4.5px; }

.list-inline--small > li {
  padding: 0 9px; }

.list-inline--large > li {
  padding: 0 24px; }

.list-inline--huge > li {
  padding: 0 48.5px; }

/*----------------------------------------*\
  LIST TEASED
\*----------------------------------------*/
.list-teased {
  margin: 48px 0; }
  .list-teased > li {
    display: block;
    padding: 18px 0;
    border: 1px solid #d0d0d0;
    border-width: 1px 0; }
    .list-teased > li:not(:last-child) {
      border-bottom: none; }

.list-teased__date {
  display: block;
  font-size: 16px; }

.list-teased__title {
  line-height: 1.28;
  margin-bottom: 0; }
  .list-teased__title a {
    text-decoration: none; }

.list-teased__body {
  display: none;
  margin-top: 9px; }
  .list-teased__body p {
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }

@media (min-width: 30em) {
  .list-teased__body {
    display: block; } }

@media (min-width: 62em) {
  .list-teased > li {
    padding: 18px 0; }
  .list-teased__date {
    float: left;
    font-size: 20.8px; }
  .list-teased__title,
  .list-teased__body {
    float: right;
    width: 80%; } }

/*----------------------------------------*\
  LIST COMPACT
\*----------------------------------------*/
.list-compact {
  margin: 18px 0; }
  .list-compact > li {
    display: block;
    padding: 9px 0; }
    .list-compact > li:not(:last-child) {
      border-bottom: none; }

.list-compact__date {
  display: block; }

.list-compact__title {
  line-height: 1.28;
  margin-bottom: 0; }
  .list-compact__title a {
    text-decoration: none;
    color: #505050; }
    .list-compact__title a:hover {
      color: #7d7d7d; }

/*----------------------------------------*\
  TABS
\*----------------------------------------*/
.tabs {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: -5px;
  list-style: none; }

.tabs--default:after {
  display: block;
  width: 100%;
  height: 1px;
  margin-left: 5px;
  content: ' ';
  background-color: #2595d9; }

.tabs--default .tabs__item__link {
  display: block;
  padding: 0.6rem 1rem;
  background-color: #2595d9;
  color: #ffffff;
  text-decoration: none; }

.tabs__item {
  flex: 0 0 auto;
  padding-left: 5px; }

/*----------------------------------------*\
  STEPPED LIST
\*----------------------------------------*/
@media (min-width: 62em) {
  .stepped-list__item {
    border-right-width: 0; } }

@media (min-width: 62em) {
  .stepped-list__item--last {
    border-right-width: 1px; } }

/*----------------------------------------*\
  MULTISTEP
\*----------------------------------------*/
.multisteps {
  counter-reset: step_counter; }

.multistep {
  padding-top: 48px;
  padding-right: 30px;
  padding-bottom: 97px;
  padding-left: 30px;
  margin-bottom: 48px;
  position: relative;
  text-align: center; }
  .multistep:before {
    content: counter(step_counter);
    counter-increment: step_counter;
    display: inline-block;
    width: 1.8em;
    height: 1.8em;
    padding: 0.42em 0;
    position: absolute;
    top: -1.1em;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    text-align: center;
    font-size: 2em;
    line-height: 1;
    color: #ffffff;
    background-color: #2595d9;
    border-radius: 50%;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.4); }

.multistep__image {
  width: 100%;
  height: 97px;
  position: absolute;
  bottom: 0;
  left: 0;
  overflow: hidden; }
  .grid__item .multistep__image::after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    transition: transform 200ms ease-in-out;
    background-position: bottom center;
    background-size: contain;
    background-repeat: no-repeat; }
  .grid__item:hover .multistep__image::after {
    transform: translateX(-50%) translateY(1px); }
  .grid__item:nth-of-type(1) .multistep__image::after {
    background-image: url("http://e.bcf.ch/themes/custom/bcf/images/bg/install-step-1--large.png"); }
  .grid__item:nth-of-type(2) .multistep__image::after {
    background-image: url("http://e.bcf.ch/themes/custom/bcf/images/bg/install-step-2--large.png"); }
  .grid__item:nth-of-type(3) .multistep__image::after {
    background-image: url("http://e.bcf.ch/themes/custom/bcf/images/bg/install-step-3--large.png"); }

/*----------------------------------------*\
  BREADCRUMB
\*----------------------------------------*/
.breadcrumb {
  display: flex;
  margin: 0;
  padding-top: 18px;
  padding-right: 0;
  padding-bottom: 18px;
  padding-left: 0;
  list-style: none; }
  @media (max-width: 61.9375em) {
    .breadcrumb {
      display: none; } }

.breadcrumb__item {
  color: #7d7d7d;
  font-size: 0.7em;
  font-weight: 100;
  text-decoration: none;
  transition: color 150ms ease-in-out; }
  .breadcrumb__item::after {
    content: "";
    display: inline-block;
    width: 0.7em;
    height: 0.7em;
    margin: 0 0.3em 0 0.1em;
    position: relative;
    top: 0.04em;
    z-index: -1;
    background-image: url("../images/icons/arrow-fat-right.svg");
    pointer-events: none;
    background-size: cover;
    opacity: 0.3; }
  .breadcrumb__item:last-of-type::after {
    display: none; }
  .breadcrumb__item a {
    color: #7d7d7d; }
    .breadcrumb__item a:hover {
      color: #2595d9; }
      .le-club .breadcrumb__item a:hover {
        color: #a2ad24; }

/*----------------------------------------*\
  LANGUAGE SWITCHER
\*----------------------------------------*/
.language-switcher {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row-reverse; }
  .language-switcher .links {
    display: flex;
    flex-wrap: nowrap;
    padding-left: 0;
    margin-top: 0;
    margin-bottom: 0;
    list-style: none; }
  .language-switcher li:nth-of-type(1) a {
    padding-right: 0.4em;
    position: relative; }
    .language-switcher li:nth-of-type(1) a:before {
      content: "";
      width: 1px;
      height: 0.8em;
      position: absolute;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      background-color: #505050; }
  .language-switcher li:nth-of-type(2) a {
    padding-left: 0.3rem; }

/*----------------------------------------*\
  RAINBOWBAR
  Took over from SHKB
\*----------------------------------------*/
.rainbowbar__bar {
  position: relative;
  height: 16px;
  padding: 0 14px 0 2px;
  margin-bottom: 2.2em;
  border-radius: 16px;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#81c149+0,b6d547+40,ffdd3c+50,ff3c00+100 */
  background: #81c149;
  /* Old browsers */
  /* IE9 SVG, needs conditional override of 'filter' to 'none' */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzgxYzE0OSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjQwJSIgc3RvcC1jb2xvcj0iI2I2ZDU0NyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2ZmZGQzYyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZjNjMDAiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  /* FF3.6-15 */
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #81c149 0%, #b6d547 35%, #ffdd3c 50%, #ff3c00 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#81c149', endColorstr='#ff3c00', GradientType=1);
  /* IE6-8 */ }

.rainbowbar__indicator {
  position: relative;
  top: 2px;
  width: 12px;
  height: 12px;
  margin-left: 20%;
  background: #ffffff;
  border-radius: 12px; }
  .rainbowbar__indicator:after {
    position: absolute;
    display: block;
    content: "";
    width: 0;
    height: 0;
    margin-left: -2px;
    margin-top: 18px;
    border-style: solid;
    border-width: 0 8px 10px 8px;
    border-color: transparent transparent #f8f8f8 transparent; }

.rainbowbar__tooltip {
  position: absolute;
  display: block;
  width: 72px;
  height: 2rem;
  margin-left: -30px;
  margin-top: 28px;
  font-weight: bold;
  line-height: 2rem;
  font-size: 1rem;
  text-align: center;
  background: #f8f8f8; }

/*----------------------------------------*\
  WYSIWYG

  TODO: Add those styling as a style in the wysiwyg.
  We did it like this to consume less time.
\*----------------------------------------*/
/*----------------------------------------*\
  SMARTBANNER
\*----------------------------------------*/
.smartbanner-android {
  box-shadow: none;
  line-height: 78px;
  background: #505050; }
  .smartbanner-android .smartbanner-button {
    box-shadow: none;
    border-radius: 4px;
    border-radius: 4px;
    background: #1b191c; }
  .smartbanner-android .smartbanner-button-text {
    background: none; }
  .smartbanner-android .smartbanner-info,
  .smartbanner-android .smartbanner-close {
    text-shadow: none; }
  .smartbanner-android .smartbanner-close {
    box-shadow: none; }

/*----------------------------------------*\
  FLYOUT
\*----------------------------------------*/
.flyout__container {
  transition: height 0.6s ease-in-out, bottom 800ms ease-in-out;
  box-shadow: rgba(27, 25, 28, 0.1) 0 1px 15px 0px;
  perspective: 1500px;
  will-change: height, bottom;
  display: none;
  position: fixed;
  right: 0;
  bottom: 36%;
  z-index: 800;
  border: 1px solid #d0d0d0;
  border-width: 1px 0 1px 1px;
  padding-bottom: 30px;
  background-color: #ffffff;
  height: 338px; }
  .flyout__container.prepare-hiding {
    overflow: hidden; }
  .flyout__container.is-hidden {
    bottom: 0px;
    height: 60px; }
    .flyout__container.is-hidden .flyout__toggle__button {
      height: 60px; }
  .flyout__container.js-processed {
    opacity: 1; }
  @media (min-width: 62em) and (min-height: 600px) {
    html.js .flyout__container {
      display: block; } }

.flyout__nav {
  list-style-type: none;
  margin: 0;
  padding: 0;
  z-index: 810;
  position: relative;
  width: 64px; }
  .flyout__nav:hover .flyout__nav__button, .flyout-is-open .flyout__nav .flyout__nav__button {
    opacity: 0.4; }

.flyout__nav__item {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #d0d0d0;
  background: #ffffff;
  width: 64px; }

.flyout__nav__button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  transition: opacity 0.3s ease-in-out;
  display: block;
  padding: 10px 2px 9px;
  position: relative;
  text-align: center;
  background: #ffffff;
  width: 100%;
  height: 60px;
  z-index: 820; }
  .flyout__nav__button::before, .flyout__nav__button::after {
    border-style: solid;
    border-width: 7px 0 7px 7px;
    content: '';
    display: block;
    height: 0;
    left: 0;
    margin-top: -7px;
    opacity: 0;
    position: absolute;
    top: 50%;
    width: 0;
    z-index: 822; }
  .flyout__nav__button::before {
    border-color: transparent transparent transparent #d0d0d0; }
  .flyout__nav__button::after {
    border-color: transparent transparent transparent #ffffff; }
  .flyout__nav__button.active {
    opacity: 1 !important; }
    .flyout__nav__button.active::before, .flyout__nav__button.active::after {
      opacity: 1; }
    .flyout__nav__button.active::after {
      left: -1px; }
  .flyout__nav__button:focus {
    z-index: 821;
    outline: none; }
  .flyout__nav__button:hover {
    opacity: 1 !important; }

.flyout__button__icon {
  display: block;
  line-height: 1;
  margin: 0 auto 4px; }

.flyout__button__title,
.flyout__toggle__link {
  display: block;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  word-wrap: break-word; }

.flyout__toggle__button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  transform-origin: 50% 50%;
  display: block;
  position: absolute;
  bottom: 0;
  background: #ffffff;
  height: 30px;
  width: 100%;
  z-index: 820;
  transition: transform 0.6s ease-in-out, height 0.6s ease-in-out; }
  .is-hidden .flyout__toggle__button {
    transform: perspective(1500px) rotateZ(180deg) rotateY(180deg); }
  .flyout__toggle__button:focus {
    outline: none; }

.flyout__panel {
  box-shadow: rgba(27, 25, 28, 0.1) 0 1px 15px 0px;
  transition: 0.4s cubic-bezier(0.46, 0.24, 0.24, 1.26);
  background-color: #ffffff;
  border: 1px solid #d0d0d0;
  position: absolute;
  top: -1px;
  right: 100%;
  width: 640px;
  z-index: 810;
  transform: translateX(-0.75rem);
  transform-origin: right center;
  display: none;
  opacity: 0;
  min-height: 338px;
  font-size: 0.85714em; }
  .mdz-no-flexbox .flyout__panel {
    min-height: 360px; }
  .displayed + .flyout__panel {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: space-between; }
  .active + .flyout__panel {
    transform: none;
    z-index: 811;
    opacity: 1; }
  .flyout__panel .grid {
    border-top: 1px solid #d0d0d0; }
  .flyout__panel .grid--tight .box {
    padding: 48px 18px;
    border-width: 0 1px 0 0; }
    @media (min-width: 62em) {
      .flyout__panel .grid--tight .box {
        padding-top: 18px;
        padding-bottom: 18px; } }
  .flyout__panel .date-display-single {
    font-size: 0.7em; }
  .flyout__panel .list-compact {
    margin: 0; }
    .flyout__panel .list-compact li {
      padding: 0 0 30px 0; }

.flyout__panel__header {
  padding: 18px; }

/*----------------------------------------*\
  SPINNER
\*----------------------------------------*/
.ajax-progress-fullscreen {
  width: 3em;
  height: 3em;
  position: absolute;
  top: 980px;
  left: 50%;
  transform: translateX(-50%);
  background: transparent;
  opacity: 1;
  border-radius: 50%;
  box-shadow: 0px 1px 2px 0px rgba(27, 25, 28, 0.1); }
  @media (min-width: 48.0625em) {
    .ajax-progress-fullscreen {
      top: 600px; } }
  @media (min-width: 62em) {
    .ajax-progress-fullscreen {
      top: 800px; } }
  .ajax-progress-fullscreen::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10;
    border-radius: 50%;
    border-top: 0.1em solid rgba(37, 149, 217, 0.1);
    border-right: 0.1em solid rgba(37, 149, 217, 0.5);
    border-bottom: 0.1em solid rgba(37, 149, 217, 0.8);
    border-left: 0.1em solid #2595d9;
    transform: translateZ(0);
    animation: rotation .4s infinite linear; }

@keyframes rotation {
  0% {
    transform: rotate(0deg); }
  55% {
    transform: rotate(180deg); }
  100% {
    transform: rotate(360deg); } }

/*----------------------------------------*\
  CHARTS
\*----------------------------------------*/
/**
 * color legends
 */
.color-legend {
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.25em;
  position: relative;
  top: 0.15em; }

.color-legend--brand {
  background-color: #2595d9; }

.color-legend--brand-dark {
  background-color: #196897; }

.color-legend--alt-lightest {
  background-color: #ffffff; }

.color-legend--alt-lighter {
  background-color: #f8f8f8; }

.color-legend--alt-light {
  background-color: #8d8c8d; }

.color-legend--alt {
  background-color: #7d7d7d; }

.color-legend--alt-dark {
  background-color: #505050; }

.color-legend--alt-darker {
  background-color: #1b191c; }

.color-legend--default {
  background-color: #d0d0d0; }

.color-legend--le-club {
  background-color: #a2ad24; }

.color-legend--le-club-dark {
  background-color: #636a16; }

/**
 * donut
 */
.donut {
  display: block;
  max-width: 16em;
  min-height: 10em;
  margin: 0 auto; }

/*----------------------------------------*\
  PILLS
\*----------------------------------------*/
.pill {
  min-width: 1.6em;
  padding: 0.4em 0.25em 0.25em;
  position: absolute;
  top: -0.5em;
  right: -0.75em;
  z-index: 2;
  overflow: hidden;
  color: #ffffff;
  font-size: 0.9em;
  line-height: 0.9em;
  text-align: center;
  background-color: #2595d9;
  border: 1px solid #ffffff;
  border-radius: 0.8em;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25); }
  @media (max-width: 61.9375em) {
    .pill {
      position: static;
      width: 20px;
      display: inline-block;
      font-size: 0.6em; } }

.pill--menu {
  top: 0.1em;
  right: -1.5em; }

/*----------------------------------------*\
  FORM INFO BLOCK
\*----------------------------------------*/
/*----------------------------------------*\
  FILTERS
\*----------------------------------------*/
.form-item-radio-checkbox--as-filter {
  display: inline-block; }

@media (min-width: 62em) {
  #views-exposed-form-branches-list {
    margin-bottom: 38px; } }

#views-exposed-form-branches-list .form-item-field-branch-er-district-target-id {
  margin-bottom: 30px; }
  @media (min-width: 62em) {
    #views-exposed-form-branches-list .form-item-field-branch-er-district-target-id {
      width: 22%; } }
  #views-exposed-form-branches-list .form-item-field-branch-er-district-target-id select {
    border-radius: 0;
    height: auto;
    padding: 10px;
    background-image: url("../images/icons/arrow-down.svg");
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: 96% center;
    -moz-appearance: none; }
    #views-exposed-form-branches-list .form-item-field-branch-er-district-target-id select::-ms-expand {
      display: none; }
    @media (min-width: 62em) {
      #views-exposed-form-branches-list .form-item-field-branch-er-district-target-id select {
        background-position: 93% center; } }

#views-exposed-form-branches-list .form-group--checkbox-wrapper {
  margin-bottom: 18px;
  text-align: right; }
  @media (min-width: 62em) {
    #views-exposed-form-branches-list .form-group--checkbox-wrapper {
      width: 78%; } }

#views-exposed-form-branches-list .form-item-radio-checkbox--as-filter {
  display: inline-block; }

#views-exposed-form-branches-list .form-checkboxes {
  display: inline-block; }
  #views-exposed-form-branches-list .form-checkboxes > div {
    display: inline-block; }

/*----------------------------------------*\
  MAP
\*----------------------------------------*/
.map_display-toggle-wrapper {
  position: relative;
  z-index: 1;
  margin-bottom: 55px; }
  @media (min-width: 62em) and (max-width: 74.9375em) {
    .map_display-toggle-wrapper {
      padding-right: 80px; } }

.map_display-toggle-wrapper--open {
  margin-bottom: 150px; }

.map__content {
  overflow: hidden;
  height: 800px;
  margin-top: -110px;
  margin-bottom: 97px; }

.map__content--collapsed {
  height: 0;
  margin-bottom: 0; }

.map__infobox {
  position: absolute;
  z-index: 1;
  width: 300px;
  left: -300px;
  min-height: 400px;
  margin-top: -35px;
  padding: 12px;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #d0d0d0;
  text-align: left;
  box-shadow: rgba(27, 25, 28, 0.1) 0 1px 15px 0px;
  opacity: 0;
  transition: opacity 200ms, transform 200ms; }
  @media (min-width: 62em) {
    .map__infobox {
      width: 400px; } }

.map__infobox--visible {
  opacity: 1;
  left: 12px; }

.map__infobox--branch .location-title {
  display: none; }

.map__infobox--branch .box {
  border: none;
  background: transparent; }

.map__infobox--branch .grid__item {
  padding-left: 0; }

/*----------------------------------------*\
  FEATURES
\*----------------------------------------*/
.features {
  position: relative;
  z-index: 100; }

.feature .container {
  padding-top: 30vh;
  padding-bottom: 30vh;
  position: relative; }
  @media (max-width: 61.9375em) and (orientation: landscape) {
    .feature .container {
      padding-top: 0;
      padding-bottom: 0;
      min-height: 100vh; } }
  @media (min-width: 61.9375em) {
    .feature .container {
      padding-top: 0;
      padding-bottom: 0;
      min-height: 68vh; } }
  @media (min-width: 61.9375em) and (orientation: portrait) {
    .feature .container {
      padding-top: 0;
      padding-bottom: 0;
      min-height: 45vh; } }
  @media (min-height: 1200px) and (orientation: landscape) {
    .feature .container {
      padding-top: 0;
      padding-bottom: 0;
      min-height: 52vh; } }

.feature h2 {
  padding-top: 0;
  margin-top: 0; }

.feature__content {
  width: 80%;
  max-width: 400px; }
  @media (min-width: 48.0625em) {
    .feature__content {
      width: 40%; } }

.features__images {
  display: none; }
  @media (min-width: 48.0625em) and (max-width: 61.9375em) and (orientation: landscape) {
    .features__images {
      display: block; } }
  @media (min-width: 61.9375em) {
    .features__images {
      display: block; } }

.phone {
  background-image: url("http://e.bcf.ch/themes/custom/bcf/images/bg/phone.png");
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  height: 0;
  width: 29vh;
  padding-top: 58vh;
  position: absolute;
  top: 10vh;
  right: 3vw;
  z-index: 1;
  filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.5));
  transform: translateY(0);
  transition: transform 300ms ease-out; }
  @media (max-width: 61.9375em) and (orientation: landscape) {
    .phone {
      right: 15vw; } }
  @media (min-width: 61.9375em) {
    .phone {
      width: 29vh;
      padding-top: 58vh;
      right: 15vw; } }
  @media (min-width: 61.9375em) and (orientation: portrait) {
    .phone {
      width: 22vh;
      padding-top: 44vh;
      right: 8vw; } }
  @media (min-height: 1200px) and (min-width: 1400px) {
    .phone {
      right: 20vw; } }
  .phone::before, .phone::after {
    content: '';
    width: 4vh;
    height: 4vh;
    position: absolute;
    bottom: 1.8vh;
    left: 50%;
    transform: translateX(-50%);
    transition: opacity 400ms;
    z-index: 2;
    border: 1px solid white;
    border-radius: 50%;
    opacity: 0; }
  .phone.stick-to-center--is-over::before, .phone.stick-to-center--is-over::after {
    animation-name: flash;
    animation-fill-mode: forwards;
    animation-duration: 500ms;
    animation-timing-function: cubic-bezier; }
  .phone.stick-to-center--is-over::after {
    animation-delay: 100ms; }

@keyframes flash {
  0% {
    opacity: 1;
    transform: translateX(-50%) scale(1); }
  90% {
    opacity: 0.2;
    transform: translateX(-50%) scale(5); }
  100% {
    opacity: 0;
    transform: translateX(-50%) scale(4); } }

.stick-to-center {
  position: fixed;
  top: 21vh;
  transition: transform 400ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transform: rotate(0deg); }
  @media (min-width: 61.9375em) {
    .stick-to-center {
      top: 21vh; } }
  @media (min-width: 61.9375em) and (orientation: portrait) {
    .stick-to-center {
      top: 28vh; } }

.stick-to-center--is-over {
  position: absolute;
  transform: rotate(0deg);
  top: 432vh; }
  @media (min-width: 61.9375em) {
    .stick-to-center--is-over {
      top: 272vh; } }
  @media (min-width: 61.9375em) and (orientation: portrait) {
    .stick-to-center--is-over {
      top: 171vh; } }
  @media (min-height: 1200px) and (orientation: landscape) {
    .stick-to-center--is-over {
      top: 192vh; } }

.feature--0 {
  transform: rotate(0deg);
  filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.5)); }

.feature--1 {
  transform: rotate(0deg);
  filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.5)); }

.feature--2 {
  transform: rotate(-90deg);
  filter: drop-shadow(-12px 12px 7px rgba(0, 0, 0, 0.5)); }

.feature--3 {
  transform: rotate(0deg);
  filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.5)); }

.feature--4 {
  transform: rotate(0deg);
  filter: drop-shadow(12px 12px 7px rgba(0, 0, 0, 0.5)); }

/* fade image in after load */
.lazyload,
.lazyloading {
  opacity: 0; }

.lazyloaded {
  transition: opacity 500ms;
  opacity: 1; }

/*----------------------------------------*\
  SLICK SLIDER DEFAULTS,
  SEE BELOW FOR CUSTOM SETTINGS
\*----------------------------------------*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: none; }

.slick-list.dragging {
  cursor: pointer;
  cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block; }

.slick-track:before,
.slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: block; }

.slick-slide.slick-loading img {
  display: none; }

.slick-slide.dragging img {
  pointer-events: none; }

.slick-initialized .slick-slide {
  display: block; }

.slick-loading .slick-slide {
  visibility: hidden; }

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/*----------------------------------------*\
  SLICK SLIDER CUSTOM SETTINGS
\*----------------------------------------*/
.slick-slider {
  width: 86%;
  height: 76.3%;
  position: absolute;
  top: 12%;
  left: 7.4%;
  z-index: 2;
  overflow: hidden;
  padding-top: 0;
  background-color: #ffffff; }
  .slick-slider img {
    width: 100%;
    height: auto; }
  .slick-slider .slick-prev,
  .slick-slider .slick-next {
    position: absolute;
    top: 0;
    z-index: 1;
    width: 50px;
    height: 100%;
    padding: 0;
    color: transparent;
    border: none;
    background-repeat: no-repeat;
    background-color: transparent;
    background-position: 0 50%;
    outline: none; }
  .slick-slider .slick-prev {
    left: 0;
    background-image: url("../images/icons/chevron--left.svg.html"); }
  .slick-slider .slick-next {
    right: 0;
    background-image: url("../images/icons/chevron--right.svg.html"); }

.slick-slider__item {
  width: 29vh;
  height: 44.3vh; }

/**
 * Skins / Overrides
 */
/*----------------------------------------*\
  LE CLUB
\*----------------------------------------*/
.le-club {
  -webkit-tap-highlight-color: rgba(162, 173, 36, 0.6); }
  .le-club a:focus {
    outline-color: #a2ad24; }
  .le-club .hero__title,
  .le-club .heading--primary {
    color: #a2ad24; }
  @media (max-width: 30em) {
    .le-club .hero--landscape__container {
      padding-left: 18px;
      padding-right: 18px;
      padding-bottom: 18px; } }
  .le-club .link--le-club {
    padding-left: 0.2em;
    padding-right: 0.2em;
    background-color: #a2ad24;
    border-radius: 2px;
    color: #ffffff; }
  .le-club .navigation-primary__menu-item--active:after {
    border-bottom-color: #a2ad24; }
  .le-club .navigation-secondary {
    border-top-color: #a2ad24; }
  .le-club .navigation-tertiary__heading:hover,
  .le-club .navigation-quaternary__heading:hover {
    color: #a2ad24; }
  .le-club .tabs--default::after,
  .le-club .tabs__item__link {
    background-color: #a2ad24; }
  .le-club .countdown {
    color: #a2ad24; }
  .le-club .paragraph--type--pg-additional-text {
    color: rgba(80, 80, 80, 0.6); }
  .le-club .breadcrumb__link:hover {
    color: #a2ad24; }

.meta-navigation-wrapper {
  border-bottom-color: #a2ad24; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJjZi5jc3MiLCJiY2Yuc2NzcyIsIl9iYXNlLnNjc3MiLCJzZXR0aW5ncy9fc2V0dGluZ3Muc2NzcyIsInRvb2xzL19mdW5jdGlvbnMuc2NzcyIsInRvb2xzL19taXhpbnMuc2NzcyIsInRvb2xzL19lZmZlY3RzLnNjc3MiLCJ2ZW5kb3IvX25vcm1hbGl6ZS5zY3NzIiwidmVuZG9yL190aW5nbGUuc2NzcyIsInZlbmRvci9zbWFydC1hcHAtYmFubmVyLnNjc3MiLCJkZWZhdWx0cy9fYm94LW1vZGVsLnNjc3MiLCJkZWZhdWx0cy9fZWxlbWVudHMuc2NzcyIsImRlZmF1bHRzL190eXBvZ3JhcGh5LnNjc3MiLCJkZWZhdWx0cy9fdGFibGUuc2NzcyIsImRlZmF1bHRzL19mb3Jtcy5zY3NzIiwiaGVscGVycy9fdGV4dC5zY3NzIiwiaGVscGVycy9fY29sb3JzLnNjc3MiLCJoZWxwZXJzL190ZXh0LXJlc3BvbnNpdmUuc2NzcyIsImhlbHBlcnMvX2Zsb2F0LnNjc3MiLCJoZWxwZXJzL19zcGFjaW5ncy5zY3NzIiwiaGVscGVycy9fc3BhY2luZ3MtcmVzcG9uc2l2ZS5zY3NzIiwiaGVscGVycy9faW1hZ2VzLnNjc3MiLCJoZWxwZXJzL19wb3NpdGlvbm5pbmcuc2NzcyIsImhlbHBlcnMvX2VkaXRpb24tbW9kZS5zY3NzIiwiaGVscGVycy9fZGlzcGxheS5zY3NzIiwiaGVscGVycy9fYW5jaG9ycy5zY3NzIiwiY29tcG9uZW50cy9fZ3JpZC5zY3NzIiwiY29tcG9uZW50cy9fZ3JpZC1yZXNwb25zaXZlLnNjc3MiLCJjb21wb25lbnRzL193aWR0aHMuc2NzcyIsImNvbXBvbmVudHMvX3dpZHRocy1yZXNwb25zaXZlLnNjc3MiLCJjb21wb25lbnRzL19lbWJlZC1yZXNwb25zaXZlLnNjc3MiLCJjb21wb25lbnRzL19saW5rLnNjc3MiLCJjb21wb25lbnRzL19idG4uc2NzcyIsImNvbXBvbmVudHMvX2JveC5zY3NzIiwiY29tcG9uZW50cy9faWNvbi5zY3NzIiwiY29tcG9uZW50cy9fbWVkaWEuc2NzcyIsImNvbXBvbmVudHMvX21lZGlhLXJlc3BvbnNpdmUuc2NzcyIsImNvbXBvbmVudHMvX2NvbnRhaW5lci5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fbWFnbmV0LnNjc3MiLCJjb21wb25lbnRzL19saXN0LnNjc3MiLCJjb21wb25lbnRzL19saXN0LXN0YWNrZWQuc2NzcyIsImNvbXBvbmVudHMvX2xpc3QtaWNvbnMuc2NzcyIsImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fbWFpbi10ZWFzZXIuc2NzcyIsImNvbXBvbmVudHMvX25hdmlnYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX21ldGEtbmF2aWdhdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fcmVjb21tZW5kYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2xvZ28uc2NzcyIsImNvbXBvbmVudHMvX3F1aWNrLXNlYXJjaC5zY3NzIiwiY29tcG9uZW50cy9fZ2VuZXJpYy1tb2RhbC5zY3NzIiwiY29tcG9uZW50cy9fbW9ydGdhZ2Uuc2NzcyIsImNvbXBvbmVudHMvX21lc3NhZ2VzLnNjc3MiLCJjb21wb25lbnRzL19jb3VudGRvd24uc2NzcyIsImNvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzIiwiY29tcG9uZW50cy9fcG9wb3Zlci5zY3NzIiwiY29tcG9uZW50cy9fd2l6YXJkLnNjc3MiLCJjb21wb25lbnRzL19kYXRldGltZXBpY2tlci5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLWJsb2NrLnNjc3MiLCJjb21wb25lbnRzL19uYXYuc2NzcyIsImNvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJjb21wb25lbnRzL191c2VyLWFjY291bnQuc2NzcyIsImNvbXBvbmVudHMvX2ZsYWdzLnNjc3MiLCJjb21wb25lbnRzL19jb250ZXN0LnNjc3MiLCJjb21wb25lbnRzL19zZWxlY3Rib3guc2NzcyIsImNvbXBvbmVudHMvX2NhbGN1bGF0b3Iuc2NzcyIsInN0cnVjdHVyZXMvX2hlcm8uc2NzcyIsImNvbXBvbmVudHMvX21vc2FpYy5zY3NzIiwiY29tcG9uZW50cy9fbW9zYWljLXJlc3BvbnNpdmUuc2NzcyIsImNvbXBvbmVudHMvX2xpc3QtaW5saW5lLnNjc3MiLCJjb21wb25lbnRzL19saXN0LXRlYXNlZC5zY3NzIiwiY29tcG9uZW50cy9fbGlzdC1jb21wYWN0LnNjc3MiLCJjb21wb25lbnRzL190YWJzLnNjc3MiLCJjb21wb25lbnRzL19zdGVwcGVkLWxpc3Quc2NzcyIsImNvbXBvbmVudHMvX211bHRpc3RlcHMuc2NzcyIsImNvbXBvbmVudHMvX2JyZWFkY3J1bWIuc2NzcyIsImNvbXBvbmVudHMvX2xhbmd1YWdlLXN3aXRjaGVyLnNjc3MiLCJjb21wb25lbnRzL19yYWluYm93YmFyLnNjc3MiLCJjb21wb25lbnRzL193eXN5d2lnLnNjc3MiLCJjb21wb25lbnRzL19zbWFydGJhbm5lci5zY3NzIiwiY29tcG9uZW50cy9fZmx5b3V0LnNjc3MiLCJjb21wb25lbnRzL19zcGlubmVyLnNjc3MiLCJjb21wb25lbnRzL19jaGFydHMuc2NzcyIsImNvbXBvbmVudHMvX3BpbGxzLnNjc3MiLCJjb21wb25lbnRzL19mb3JtX2luZm9fYmxvY2suc2NzcyIsImNvbXBvbmVudHMvX2ZpbHRlcnMuc2NzcyIsImNvbXBvbmVudHMvX21hcC5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZXMuc2NzcyIsImNvbXBvbmVudHMvX3NsaWNrLXNsaWRlci5zY3NzIiwic2tpbnMvX2xlLWNsdWIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUNBakI7O0dBRUc7QUNGSDs7R0FFRztBQUVIOztHQUVHO0FDTkg7Ozs7OzRDQUs0QztBQU01Qzs7R0FFRztBQThCSDs7R0FFRztBQStDSDs7R0FFRztBQXNCSDs7R0FFRztBQXFDSDs7R0FFRztBQU9IOzs0Q0FF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QUE7RVBvREM7SUV6R0Y7TUYwR0ksb0JGOUQrRCxFU1NsRSxFQUFBOztBQUdEOztHQUVHO0FMWUg7RUtURSxlVG5FeUM7RVNvRXpDLHNCQUFxQjtFQUVyQixvQ0FBbUMsRUFXcEM7RUFmRDtJQU9JLHNCQUFxQjtJQUNyQixlVGpFdUMsRVNrRXhDO0VBVEg7SUFhSSxzQkFBcUIsRUFDdEI7O0FBSUg7O0dBRUc7QUFFSDs7RUFFRSxrQkFBaUI7RUFDakIsaUJBQWdCLEVBQ2pCOztBQUdEOztFUE1FLGtCRmhEaUU7RVNtRGpFLGtCQUFpQixFQUNsQjtFUEFHO0lPVko7O01QV00sdUNEdENzQyxFUXFDM0MsRUFBQTtFUE1DO0lPaEJGOztNUGlCSSxvQkZqRGdGLEVTMENuRixFQUFBOztBQUdEOztFUFBFLG1CRi9DaUU7RVMrRGpFLGlCQUFnQixFQUNqQjtFUGJHO0lPR0o7O01QRk0sdUNEdENzQyxFUWtEM0MsRUFBQTtFUFBDO0lPSEY7O01QSUkscUJGaERnRixFU3NEbkYsRUFBQTs7QUFHRDs7RVBwQkUsb0JGOUNpRTtFUzJFakUsa0JBQWlCLEVBQ2xCO0VQMUJHO0lPZ0JKOztNUGZNLHdDRHRDc0MsRVErRDNDLEVBQUE7RVBwQkM7SU9VRjs7TVBUSSxxQkYvQ2dGLEVTa0VuRixFQUFBOztBQUdEOzs7OztFUGpDRSxtQkY3Q2lFLEVTc0ZsRTtFUHJDRztJTzZCSjs7Ozs7TVA1Qk0sd0NEdENzQyxFUTBFM0MsRUFBQTtFUC9CQztJT3VCRjs7Ozs7TVB0Qkksb0JGOUNnRixFUzRFbkYsRUFBQTs7QUFHRDs7RVA1Q0UsbUJGNUNpRSxFU2dHbEU7RVBoREc7SU93Q0o7O01QdkNNLHdDRHRDc0MsRVFxRjNDLEVBQUE7RVAxQ0M7SU9rQ0Y7O01QakNJLGVGN0NnRixFU3NGbkYsRUFBQTs7QUFHRDs7RVB2REUsZUYzQ2lFLEVTMEdsRTtFUDNERztJT21ESjs7TVBsRE0sd0NEdENzQyxFUWdHM0MsRUFBQTtFUHJEQztJTzZDRjs7TVA1Q0kscUJGNUNnRixFU2dHbkYsRUFBQTs7QUFFRDtFQUNFLGVUdkt5QyxFU3dL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Ozs7Ozs7Ozs7Ozs7OztJQTJDSSxXQUFVO0lBQ1YsWVg0SzBCLEVXM0szQjtFQTdDSDs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBMkNJLFdBQVU7SUFDVixZWDRLMEIsRVczSzNCO0VBN0NIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFnREksc0JYL0d1QztJV2dIdkMsY0FBYSxFQUNkO0VBbERIOzs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFxREksZ0NYNEg2RDtJVzNIN0QsMEJYM0h1QztJVzRIdkMsdUNYeUhtRTtJV3hIbkUsb0JBQW1CLEVBQ3BCOztBQVVIO0VBRUksZ0NYNEc2RCxFVzNHOUQ7O0FkK29DSDtFY3pvQ0UsWUFBVztFQUNYLHlCQUF3QjtFQUN4Qiw4QkFBNkIsRUE4RjlCO0VBeEZDO0lkc29DRTtNY3JvQ0Esa0JBQTJDO01BQzNDLHFCQUFxRCxFQXNGeEQsRUFBQTtFQWxGK0I7SWRvb0M1QjtNY25vQ0EscUJBQWtDLEVBaUZyQyxFQUFBO0Vkb2pDQztJY2pvQ0UsV0FBVSxFQWFYO0lkc25DQztNY2hvQ0UsMEJYd0dnRCxFV3ZHakQ7SWRpb0NEO01jOW5DRSwwQlhvR2dELEVXbkdqRDtJZCtuQ0Q7TWM1bkNFLDBCWGdHZ0QsRVcvRmpEO0VkNm5DSDtJYzF6Q0EsWUFBVztJQUNYLFlYeVIwQjtJV3ZSMUIsMEJYd1I4QjtJV3ZSOUIsd0JYYXlDO0lXWnpDLG1CWDZSMEI7SVc1UjFCLGdCQUFlO0lBQ2YseUJBQXdCLEVBMkx2QjtFZGdvQ0Q7SWN2ekNBLFlYcVE0QjtJV3BRNUIsYVhxUTRCO0lXblE1QixvQlhKeUM7SVdLekMsNEJYc1FtQztJV3JRbkMsb0JYa1E0QjtJV2pRNUIsMEVBQWlKO0lBQ2pKLGdCQUFlO0lBc0xiLGlCQUFrRjtJQUVsRix5QkFBd0IsRUFDekI7RWRpb0NEO0ljNTBDQSxZQUFXO0lBQ1gsWVh5UjBCO0lXdlIxQiwwQlh3UjhCO0lXdlI5Qix3QlhheUM7SVdaekMsbUJYNlIwQjtJVzVSMUIsZ0JBQWU7SUFDZix5QkFBd0IsRUF3TXZCO0VkcW9DRDtJY3owQ0EsWVhxUTRCO0lXcFE1QixhWHFR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c0NNLHNDRHRDc0MsRVdPM0MsRUFBQTtFVm9DQztJVTNDRjs7O01WNENJLHFCRnpDZ0YsRVlJbkYsRUFBQTs7QUFFRDs7R0FFRztBQUVIO0VBQ0UsZVoxRXlDLEVZMkUxQzs7QUFFRDtFQUNFLDZCWjVDZ0UsRVk2Q2pFOztBQUVEO0VBQ0UsZVpwRnlDLEVZcUYxQzs7QUFFRDtFQUNFLGNackVvQixFWXNFckI7O0FBRUQ7RUFDRSxlWm5GeUMsRVlvRjFDOztBQUdEO0VBQ0UsZVp2R3lDLEVZd0cxQzs7QUFFRDtFQUVFLGVaN0Z5QztFWThGekMsZ0JaekI2RSxFWTBCOUU7O0FBRUQ7O0dBRUc7QUFFSDtFQUNFLG9CQUFtQixFQUNwQjs7QUNySUQ7OzRDQUU0QztBQUc1QztFQUNFLGViWXlDO0VhWHpDLDBCYlF5QyxFYVAxQzs7QUFFRDtFQUNFLGViT3lDO0VhTnpDLDBCYkl5QyxFYUgxQzs7QUFFRDtFQUNFLGViT3lDO0VhTnpDLDBCYkN5QyxFYUExQzs7QUFFRDtFQUNFLGViRXlDO0VhRHpDLDBCYkh5QyxFYUkxQzs7QUFFRDtFQUNFLGViUnlDO0VhU3pDLDBCYk55QyxFYU8xQzs7QUFFRDtFQUNFLGViYnlDO0VhY3pDLDBCYlZ5QyxFYVcxQzs7QUFFRDtFQUNFLGVibEJ5QztFYW1CekMsMEJiZHlDLEVhZTFDOztBQUVEO0VBQ0UsZWJ2QnlDO0Vhd0J6QywwQmJsQnlDLEVhbUIxQzs7QUFFRDtFQUNFLGViNUJ5QztFYTZCekMsMEJickJ5QyxFYXNCMUM7O0FBRUQ7RUFDRSxlYjVCeUM7RWE2QnpDLDBCYmxDeUMsRWFtQzFDOztBQUVEO0VBQ0UsZWJ0Q3lDO0VhdUN6QywwQmIzQnlDLEVhNEIxQzs7QUMxREQ7OzRDQUU0QztBQUU1Qzs7R0FFRztBWitCQztFWTVCRjtJQUNFLGlCQUFnQixFQUNqQjtFQUVEO0lBQ0UsbUJBQWtCLEVBQ25CO0VBRUQ7SUFDRSxrQkFBaUIsRUFDbEIsRUFBQTs7QVprQkM7RVk1QkY7SUFDRSxpQkFBZ0IsRUFDakI7RUFFRDtJQUNFLG1CQUFrQixFQUNuQjtFQUVEO0lBQ0Us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YUFBWTtJQUNaLFdBQVU7SUFFVixtQkFBa0I7SUFFbEIsYUFBWTtJQUVaLDZCQUE0QjtJQUM1Qiw4QkFBNkI7SUFDN0IsMkJBQTBCO0lBQzFCLGNBQWEsRUFDZDtFQXJDSDtJQXdDSSxRQUFPO0lBRVAsMkRBQTBELEVBQzNEO0VBM0NIO0lBOENJLFNBQVE7SUFFUiw0REFBMkQsRUFDNUQ7O0FBR0Q7RUFDRSxZQUFXO0VBQ1gsZUFBYyxFQUNmOztBekZwSkg7O0dBRUc7QTBGckNIOzs0Q0FFNEM7QUFHNUM7RUFHRSxxREFBZ0UsRUE0RGpFO0VBL0REO0lBTUksdUJ4RmV1QyxFd0ZkeEM7RUFQSDs7SUFXSSxleEZVdUMsRXdGVHhDO0VBS0M7SUFqQko7TUFrQk0sbUJ4RjZFbUU7TXdGNUVuRSxvQnhGNEVtRTtNd0YzRW5FLHFCeEYyRW1FLEV3RnpFdEUsRUFBQTtFQXRCSDtJQTJCSSxvQkFBbUI7SUFDbkIscUJBQW9CO0lBQ3BCLDBCeEZSdUM7SXdGU3ZDLG1CQUFrQjtJQUNsQixleEZsQnVDLEV3Rm1CeEM7RUFoQ0g7SUFtQ0ksNkJ4RmR1QyxFd0ZleEM7RUFwQ0g7SUF1Q0ksMEJ4RmxCdUMsRXdGbUJ4QztFQXhDSDs7SUE0Q0ksZXhGdkJ1QyxFd0Z3QnhDO0VBN0NIOztJQWlESSwwQnhGNUJ1QyxFd0Y2QnhDO0VBbERIO0lBcURJLGV4RmhDdUMsRXdGaUN4QztFQXRESDtJQXlESSw2QnhGTDhELEV3Rk0vRDtFQTFESDtJQTZESSxleEZ4Q3VDLEV3RnlDeEM7O0E3Qy9ESDtFNkNrRUksNkJ4RjVDdUMsRXdGNkN4QyIsImZpbGUiOiJiY2YuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiAgQkNGIGJhc2VkIG9uIEthbmJhc3UgMS41XG4gKi9cbi8qIVxuICogIEJDRiBiYXNlIGJhc2VkIG9uIEthbmJhc3UgMS41XG4gKi9cbi8qKlxuICogU2V0dGluZ3NcbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEdMT0JBTCBTRVRUSU5HU1xuXG4gIENoZWNrIHRoZSBmb2xsb3dpbmcgcGFnZSBmb3IgZGV0YWlsczpcbiAgaHR0cDovL2JjZi1zdHlsZWd1aWRlLmQuY2xpZW50cy5saWlwLmNoL3NldHRpbmdzLmh0bWxcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBDb2xvcnNcbiAqL1xuLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKi9cbi8qKlxuICogU3BhY2luZ3NcbiAqL1xuLyoqXG4gKiBSZXNwb25zaXZlbmVzc1xuICovXG4vKipcbiAqIE1pc2NlbGxhbmVvdXNcbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIENPTVBPTkVOVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBCdXR0b25zXG4gKi9cbi8qKlxuICogRm9ybXNcbiAqL1xuLyoqXG4gKiBMaXN0c1xuICovXG4vKipcbiAqIEJveFxuICovXG4vKipcbiAqIEdyaWRcbiAqL1xuLyoqXG4gKiBXaWR0aHNcbiAqL1xuLyoqXG4gKiBNZWRpYVxuICovXG4vKipcbiAqIE1lZGlhIHJlc3BvbnNpdmVcbiAqL1xuLyoqXG4gKiBNb3NhaWMgcmVzcG9uc2l2ZVxuICovXG4vKipcbiAqIENvbnRhaW5lclxuICovXG4vKipcbiAqIE1haW4gaGVhZGVyXG4gKi9cbi8qKlxuICogU2VjdGlvbnNcbiAqL1xuLyoqXG4gKiBUYWJzXG4gKi9cbi8qKlxuICogVG9vbHRpcHMgYW5kIFBvcG92ZXJzXG4gKi9cbi8qKlxuICogQWRtaW4gdG9vbGJhclxuICovXG4vKipcbiAqIFdpemFyZHNcbiAqL1xuLyoqXG4gKiBQZXJzcGVjdGl2ZVxuICovXG4vKipcbiAqIEZseW91dFxuICovXG4vKipcbiAqIEVmZmVjdHNcbiAqL1xuLyoqXG4gKiByb3RhdGluZyBwaG9uZSByZXNwb25zaXZlXG4gKi9cbi8qKlxuICogR3VpZGVkIHRvdXJcbiAqL1xuLyoqXG4gKiBUb29sc1xuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRlVOQ1RJT05TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQ2FsY3VsYXRlIFJFTSB2YWx1ZSBiYXNlZCBvbiB0aGUgZGVmYXVsdCBmb250LXNpemVcbiAqL1xuLyoqXG4gKiBSZXR1cm4gYSB2YWx1ZSBkaXZpZGVkIGJ5IGEgcmF0aW9cbiAqIEl0IHVzZXMgdGhlIGdvbGRlbiByYXRpbyBieSBkZWZhdWx0XG4gKlxuICogVXNlZnVsIHRvIGNyZWF0ZSBcInZpc3VhbGx5IGVxdWFsXCIgc3BhY2luZ3NcbiAqIEFzIG1hdGhlbWF0aWNhbGx5IGVxdWFsIHNwYWNpbmdzIG5ldmVyIFwidmlzdWFsbHlcIiBsb29rIGVxdWFsIGFyb3VuZCB0ZXh0XG4gKi9cbi8qKlxuICogUmV0dXJuIGEgdW5pdGxlc3MgdmFsdWVcbiAqL1xuLyoqXG4gKiBBZGRpdGlvbiB0b3AgYW5kIGJvdHRvbSBwYWRkaW5nXG4gKi9cbi8qKlxuICogRnVuY3Rpb25zIGZvciBwb2x5LWZsdWlkLXNpemluZ1xuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTUlYSU5TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogUmVzcG9uc2l2ZVxuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRUZGRUNUU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIFZlbmRvcnNcbiAqL1xuLyohXG4gKiBub3JtYWxpemUuY3NzIHYzLjAuMiB8IE1JVCBMaWNlbnNlIHwgZ2l0LmlvL25vcm1hbGl6ZVxuICogQ1VTVE9NSVpFRFxuICovXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmdcbiAqICAgIHVzZXIgem9vbS5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gKi9cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gKi9cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAzICovIH1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICovXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiAzICovIH1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovIH1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiA9PSB0aW5nbGUgdjAuMTIuMCAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50aW5nbGUtbW9kYWwgKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLnRpbmdsZS1tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgMjUwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLnRpbmdsZS1tb2RhbC0tc21hbGwgLnRpbmdsZS1tb2RhbC1ib3gge1xuICBtYXgtd2lkdGg6IDc2OHB4OyB9XG5cbi8qIGNvbmZpcm0gYW5kIGFsZXJ0c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50aW5nbGUtbW9kYWwtLWNvbmZpcm0gLnRpbmdsZS1tb2RhbC1ib3gge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLyogbW9kYWxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGluZ2xlLW1vZGFsLS1ub092ZXJsYXlDbG9zZSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4udGluZ2xlLW1vZGFsLWJveCB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICB3aWR0aDogODAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgb3BhY2l0eTogMTtcbiAgY3Vyc29yOiBhdXRvO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgMTAwbXMgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7IH1cbiAgLnRpbmdsZS1tb2RhbC0tYXV0by13aWR0aCAudGluZ2xlLW1vZGFsLWJveCB7XG4gICAgbWF4LXdpZHRoOiAzMGVtOyB9XG5cbi50aW5nbGUtbW9kYWwtYm94X19jb250ZW50IHtcbiAgcGFkZGluZzogMzBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnRpbmdsZS1tb2RhbC1ib3hfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZzogNDhweDsgfSB9XG5cbi50aW5nbGUtbW9kYWwtYm94X19mb290ZXIge1xuICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY3Vyc29yOiBhdXRvOyB9XG5cbi50aW5nbGUtbW9kYWwtYm94X19mb290ZXI6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi50aW5nbGUtbW9kYWwtYm94X19mb290ZXItLXN0aWNreSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAtMjAwcHg7XG4gIC8qIFRPRE8gOiBmaW5kIGEgYmV0dGVyIHdheSAqL1xuICB6LWluZGV4OiAxMDAwMTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIC4zcyBlYXNlLWluLW91dCAuM3M7IH1cblxuLyogc3RhdGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGluZ2xlLWVuYWJsZWQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLnRpbmdsZS1tb2RhbC0tdmlzaWJsZSAudGluZ2xlLW1vZGFsLWJveF9fZm9vdGVyIHtcbiAgYm90dG9tOiAwOyB9XG5cbi50aW5nbGUtZW5hYmxlZCAudGluZ2xlLWNvbnRlbnQtd3JhcHBlciB7XG4gIGZpbHRlcjogYmx1cigycHgpOyB9XG5cbi50aW5nbGUtbW9kYWwtLXZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxOyB9XG5cbi50aW5nbGUtbW9kYWwtLXZpc2libGUgLnRpbmdsZS1tb2RhbC1ib3gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnRpbmdsZS1tb2RhbC0tb3ZlcmZsb3cge1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIHBhZGRpbmctdG9wOiA4dmg7IH1cblxuLyogcmVzcG9uc2l2ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAzMGVtKSB7XG4gIC50aW5nbGUtbW9kYWwge1xuICAgIHRvcDogMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50aW5nbGUtbW9kYWwtYm94IHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC50aW5nbGUtbW9kYWwtLW5vQ2xvc2Uge1xuICAgIHRvcDogMDsgfVxuICAudGluZ2xlLW1vZGFsLS1ub092ZXJsYXlDbG9zZSB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLnRpbmdsZS1tb2RhbC1ib3hfX2Zvb3RlciAudGluZ2xlLWJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi50aW5nbGUtbW9kYWxfX2NvbnRlbnQtb2Zmc2V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAtMTtcbiAgbWFyZ2luLXRvcDogLTIwMDAwcHg7IH1cblxuLnNtYXJ0YmFubmVyLXNob3cge1xuICBtYXJnaW4tdG9wOiA4MHB4OyB9XG5cbi5zbWFydGJhbm5lci1zaG93IC5zbWFydGJhbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKiBEZWZhdWx0ICoqL1xuLnNtYXJ0YmFubmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDgwcHg7XG4gIGxpbmUtaGVpZ2h0OiA4MHB4O1xuICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgc2Fucy1zZXJpZjtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgei1pbmRleDogOTk5ODtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogbm9uZTsgfVxuXG4uc21hcnRiYW5uZXItY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLnNtYXJ0YmFubmVyLWNsb3NlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgNXB4IDAgNXB4O1xuICBmb250LWZhbWlseTogJ0FyaWFsUm91bmRlZE1UQm9sZCcsIEFyaWFsO1xuICBmb250LXNpemU6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM4ODg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDsgfVxuXG4uc21hcnRiYW5uZXItY2xvc2U6YWN0aXZlLFxuLnNtYXJ0YmFubmVyLWNsb3NlOmhvdmVyIHtcbiAgY29sb3I6ICNhYWE7IH1cblxuLnNtYXJ0YmFubmVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiA1N3B4O1xuICBoZWlnaHQ6IDU3cHg7XG4gIG1hcmdpbi1yaWdodDogMTJweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDsgfVxuXG4uc21hcnRiYW5uZXItaW5mbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDQ0JTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5zbWFydGJhbm5lci10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7IH1cblxuLnNtYXJ0YmFubmVyLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IGF1dG8gMDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzZhNmE2YTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7IH1cblxuLnNtYXJ0YmFubmVyLWJ1dHRvbjphY3RpdmUsXG4uc21hcnRiYW5uZXItYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNhYWE7IH1cblxuLyoqIGlPUyAqKi9cbi5zbWFydGJhbm5lci1pb3Mge1xuICBiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjRmNGY0LCAjY2RjZGNkKTtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgbGluZS1oZWlnaHQ6IDgwcHg7IH1cblxuLnNtYXJ0YmFubmVyLWlvcyAuc21hcnRiYW5uZXItY2xvc2Uge1xuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBjb2xvcjogIzg4ODtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgd2hpdGU7IH1cblxuLnNtYXJ0YmFubmVyLWlvcyAuc21hcnRiYW5uZXItY2xvc2U6YWN0aXZlLFxuLnNtYXJ0YmFubmVyLWlvcyAuc21hcnRiYW5uZXItY2xvc2U6aG92ZXIge1xuICBjb2xvcjogI2FhYTsgfVxuXG4uc21hcnRiYW5uZXItaW9zIC5zbWFydGJhbm5lci1pY29uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG5cbi5zbWFydGJhbm5lci1pb3MgLnNtYXJ0YmFubmVyLWluZm8ge1xuICBjb2xvcjogIzZhNmE2YTtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOyB9XG5cbi5zbWFydGJhbm5lci1pb3MgLnNtYXJ0YmFubmVyLXRpdGxlIHtcbiAgY29sb3I6ICM0ZDRkNGQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5zbWFydGJhbm5lci1pb3MgLnNtYXJ0YmFubmVyLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbWluLXdpZHRoOiAxMCU7XG4gIGNvbG9yOiAjNmE2YTZhO1xuICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWZlZmVmLCAjZGNkY2RjKTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggI2JmYmZiZiwgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNiksIDAgMnB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIGluc2V0OyB9XG5cbi5zbWFydGJhbm5lci1pb3MgLnNtYXJ0YmFubmVyLWJ1dHRvbjphY3RpdmUsXG4uc21hcnRiYW5uZXItaW9zIC5zbWFydGJhbm5lci1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZGNkY2RjO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZGNkY2RjLCAjZWZlZmVmKTsgfVxuXG4vKiogQW5kcm9pZCAqKi9cbi5zbWFydGJhbm5lci1hbmRyb2lkIHtcbiAgYmFja2dyb3VuZDogIzNkM2QzZCB1cmwoZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoQ0FBSUFJQUJBRlZWVmYvLy95SDVCQUVIQUFFQUxBQUFBQUFJQUFnQUFBSU5SRzRYdWRyb0dKQlJzWWN4S0FBNyk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgNHB4IDAgIzg4YjEzMTtcbiAgbGluZS1oZWlnaHQ6IDgycHg7IH1cblxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWNsb3NlIHtcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTdweDtcbiAgaGVpZ2h0OiAxN3B4O1xuICBsaW5lLWhlaWdodDogMTdweDtcbiAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gIGNvbG9yOiAjYjFiMWIzO1xuICBiYWNrZ3JvdW5kOiAjMWMxZTIxO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMXB4ICMwMDA7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuOCkgaW5zZXQsIDAgMXB4IDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7IH1cblxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWNsb3NlOmFjdGl2ZSxcbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1jbG9zZTpob3ZlciB7XG4gIGNvbG9yOiAjZWVlOyB9XG5cbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWluZm8ge1xuICBjb2xvcjogI2NjYztcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDJweCAjMDAwOyB9XG5cbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci10aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uc21hcnRiYW5uZXItYW5kcm9pZCAuc21hcnRiYW5uZXItYnV0dG9uIHtcbiAgbWluLXdpZHRoOiAxMiU7XG4gIGNvbG9yOiAjZDFkMWQxO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggIzMzMywgMCAwIDAgMnB4ICNkZGRjZGM7IH1cblxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWJ1dHRvbjphY3RpdmUsXG4uc21hcnRiYW5uZXItYW5kcm9pZCAuc21hcnRiYW5uZXItYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uc21hcnRiYW5uZXItYW5kcm9pZCAuc21hcnRiYW5uZXItYnV0dG9uLXRleHQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGJhY2tncm91bmQ6ICM0MmI2Yzk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM0MmI2YzksICMzOWE5YmIpO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWJ1dHRvbi10ZXh0OmFjdGl2ZSxcbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1idXR0b24tdGV4dDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMyYWM3ZTE7IH1cblxuLyoqIFdpbmRvd3MgKiovXG4uc21hcnRiYW5uZXItd2luZG93cyB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmNGY0ZjQsICNjZGNkY2QpO1xuICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBsaW5lLWhlaWdodDogODBweDsgfVxuXG4uc21hcnRiYW5uZXItd2luZG93cyAuc21hcnRiYW5uZXItY2xvc2Uge1xuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBjb2xvcjogIzg4ODtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgd2hpdGU7IH1cblxuLnNtYXJ0YmFubmVyLXdpbmRvd3MgLnNtYXJ0YmFubmVyLWNsb3NlOmFjdGl2ZSxcbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1jbG9zZTpob3ZlciB7XG4gIGNvbG9yOiAjYWFhOyB9XG5cbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1pY29uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG5cbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1pbmZvIHtcbiAgY29sb3I6ICM2YTZhNmE7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTsgfVxuXG4uc21hcnRiYW5uZXItd2luZG93cyAuc21hcnRiYW5uZXItdGl0bGUge1xuICBjb2xvcjogIzRkNGQ0ZDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnNtYXJ0YmFubmVyLXdpbmRvd3MgLnNtYXJ0YmFubmVyLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbWluLXdpZHRoOiAxMCU7XG4gIGNvbG9yOiAjNmE2YTZhO1xuICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWZlZmVmLCAjZGNkY2RjKTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggI2JmYmZiZiwgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNiksIDAgMnB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIGluc2V0OyB9XG5cbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1idXR0b246YWN0aXZlLFxuLnNtYXJ0YmFubmVyLXdpbmRvd3MgLnNtYXJ0YmFubmVyLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNkY2RjZGM7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNkY2RjZGMsICNlZmVmZWYpOyB9XG5cbi8qKlxuICogRGVmYXVsdHNcbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEJPWCBNT0RFTFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIFVzZSB0aGUgXCJzbWFydFwiIGJveCBtb2RlbCBnbG9iYWxseS5cbiAqXG4gKiBjc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2VcbiAqL1xuaHRtbCB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiosICo6OmJlZm9yZSwgKjo6YWZ0ZXIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGluaGVyaXQ7XG4gIC1tb3otYm94LXNpemluZzogaW5oZXJpdDtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRUxFTUVOVCBERUZBVUxUIEJFSEFWSU9SXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmltZyxcbmlmcmFtZSxcbmVtYmVkLFxub2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFRZUE9HUkFQSFkgU0NBRkZPTERJTkdcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRnJ1dGlnZXJOZXh0JztcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9mcnV0aWdlcm5leHQtbGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9mcnV0aWdlcm5leHQtbGlnaHQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRnJ1dGlnZXJOZXh0JztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9mcnV0aWdlcm5leHQtcmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2ZydXRpZ2VybmV4dC1yZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ZydXRpZ2VyTmV4dCc7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ZydXRpZ2VybmV4dC1tZWRpdW0ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9mcnV0aWdlcm5leHQtbWVkaXVtLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0Nvb2tpZSc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQ29va2llLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9Db29raWUtUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTsgfVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IFwiRnJ1dGlnZXJOZXh0XCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMjg7XG4gIGNvbG9yOiAjNTA1MDUwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDM3LCAxNDksIDIxNywgMC42KTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBvdmVyZmxvdy14OiBoaWRkZW47IH1cbiAgaHRtbC5tZW51LS12aXNpYmxlIGJvZHkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiA4MHZoOyB9XG5cbmJvZHkge1xuICBmb250LXNpemU6IDFlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIGJvZHkge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDAuNjkyMDR2dyArIDAuNzkyMzllbSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgYm9keSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoMC42OTYwNnZ3ICsgMC43OTA0NmVtKTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgYm9keSB7XG4gICAgICBmb250LXNpemU6IDEuMzEyNWVtOyB9IH1cblxuLyoqXG4gKiBMaW5rc1xuICovXG5hIHtcbiAgY29sb3I6ICMyNTk1ZDk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiAjMWIxOTFjOyB9XG4gIGE6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4vKipcbiAqIEhlYWRpbmdzXG4gKi9cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luOiAwIDAgMC41ZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuaDEsXG4uaDEge1xuICBmb250LXNpemU6IDIuMjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICBoMSxcbiAgICAuaDEge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDEuMTM3NTd2dyArIDEuOTA4NzNlbSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGgxLFxuICAgIC5oMSB7XG4gICAgICBmb250LXNpemU6IDIuNzYxOWVtOyB9IH1cblxuaDIsXG4uaDIge1xuICBmb250LXNpemU6IDEuODc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICBoMixcbiAgICAuaDIge1xuICAgICAgZm9udC1zaXplOiBjYWxjKDAuNDg5NDJ2dyArIDEuNzI4MTdlbSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGgyLFxuICAgIC5oMiB7XG4gICAgICBmb250LXNpemU6IDIuMDk1MjRlbTsgfSB9XG5cbmgzLFxuLmgzIHtcbiAgZm9udC1zaXplOiAxLjU2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICBoMyxcbiAgICAuaDMge1xuICAgICAgZm9udC1zaXplOiBjYWxjKC0wLjA4NTk4dncgKyAxLjU4ODI5ZW0pOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBoMyxcbiAgICAuaDMge1xuICAgICAgZm9udC1zaXplOiAxLjUyMzgxZW07IH0gfVxuXG5oNCxcbi5oNCxcbi5saW5rLS1sYXJnZSxcbi51c2VyLWFjY291bnRfX2xpbmssXG4uZm9vdGVyX19uYXZpZ2F0aW9uIC5tZW51LWxldmVsLTAgPiAubWVudS1pdGVtID4gc3BhbiB7XG4gIGZvbnQtc2l6ZTogMS4zNzVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIGg0LFxuICAgIC5oNCxcbiAgICAubGluay0tbGFyZ2UsXG4gICAgLnVzZXItYWNjb3VudF9fbGluayxcbiAgICAuZm9vdGVyX19uYXZpZ2F0aW9uIC5tZW51LWxldmVsLTAgPiAubWVudS1pdGVtID4gc3BhbiB7XG4gICAgICBmb250LXNpemU6IGNhbGMoLTAuMzA0MjN2dyArIDEuNDY2MjdlbSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGg0LFxuICAgIC5oNCxcbiAgICAubGluay0tbGFyZ2UsXG4gICAgLnVzZXItYWNjb3VudF9fbGluayxcbiAgICAuZm9vdGVyX19uYXZpZ2F0aW9uIC5tZW51LWxldmVsLTAgPiAubWVudS1pdGVtID4gc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEuMjM4MWVtOyB9IH1cblxuaDUsXG4uaDUge1xuICBmb250LXNpemU6IDEuMTI1ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICBoNSxcbiAgICAuaDUge1xuICAgICAgZm9udC1zaXplOiBjYWxjKC0wLjI3Nzc4dncgKyAxLjIwODMzZW0pOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBoNSxcbiAgICAuaDUge1xuICAgICAgZm9udC1zaXplOiAxZW07IH0gfVxuXG5oNixcbi5oNiB7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgaDYsXG4gICAgLmg2IHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygtMC4zMTc0NnZ3ICsgMS4wOTUyNGVtKTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgaDYsXG4gICAgLmg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NTcxNGVtOyB9IH1cblxuLmhlYWRpbmctLXByaW1hcnkge1xuICBjb2xvcjogIzI1OTVkOTsgfVxuXG4ubGluay0tbGUtY2x1YiB7XG4gIGZvbnQtZmFtaWx5OiBcIkNvb2tpZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4ubGluay0tbGUtY2x1Yi1wb3J0YWwge1xuICBjb2xvcjogI2EyYWQyNDsgfVxuXG4vKipcbiAqIFBhcmFncmFwaHNcbiAqL1xucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuM2VtOyB9XG5cbi8qKlxuICogUHJlZm9ybWF0dGVkIHRleHRcbiAqL1xucHJlLFxuY29kZSB7XG4gIGZvbnQtZmFtaWx5OiAnTW9uYWNvJywgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0YWItc2l6ZTogNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgfVxuXG5wcmUge1xuICBwYWRkaW5nOiAzMHB4O1xuICBtYXJnaW46IDAgMCAyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG5jb2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAxcHggNXB4OyB9XG4gIHByZSBjb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogTGlzdHNcbiAqL1xudWwsXG5vbCB7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgbWFyZ2luOiAxZW0gMDsgfVxuICB1bCB1bCxcbiAgdWwgb2wsXG4gIG9sIHVsLFxuICBvbCBvbCB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG5kZCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kbC0taW5saW5lIGR0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMGVtOyB9XG5cbi5kbC0taW5saW5lIGRkIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwcHggKyAxOHB4KTsgfVxuXG4uZGwtLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMDsgfVxuICAuZGwtLWZsZXggZHQge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmRsLS1mbGV4IGRkIHtcbiAgICBmbGV4LWJhc2lzOiA1MCU7IH1cblxuLmRsLS1iYW5rLXJlZmVyZW5jZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAwOyB9XG4gIC5kbC0tYmFuay1yZWZlcmVuY2UgZHQge1xuICAgIHdpZHRoOiAxNDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmRsLS1iYW5rLXJlZmVyZW5jZSBkZCB7XG4gICAgd2lkdGg6IDEzMHB4OyB9XG5cbi8qKlxuICogTWlzY2VsbGFlbm91c1xuICovXG5hYmJyIHtcbiAgY3Vyc29yOiBoZWxwOyB9XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFRBQkxFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHg7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxudGhlYWQge1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4OyB9XG5cbmNhcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxudHIge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2RkZGRkZDsgfVxuICB0cjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbnRoLFxudGQge1xuICBwYWRkaW5nOiAwLjhlbTsgfVxuICB0aCBwLFxuICB0ZCBwIHtcbiAgICBtYXJnaW46IDA7IH1cblxudGQge1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDAuOWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuZ3JpZC0tbWlkZGxlID4gdGQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLnRhYmxlLWZvb3Rub3RlcyB7XG4gIG1hcmdpbi10b3A6IC0yNHB4O1xuICBmb250LXNpemU6IDAuODVlbTsgfVxuXG4udGFibGUtLXN0cmlwcGVkIHRoZWFkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYmxlLS1zdHJpcHBlZCAudGFibGVGbG9hdGluZ0hlYWRlck9yaWdpbmFsIHtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODsgfVxuXG4udGFibGUtLXN0cmlwcGVkIHRib2R5IHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAudGFibGUtLXN0cmlwcGVkIHRib2R5IHRyOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2RkZGRkZDsgfVxuICAudGFibGUtLXN0cmlwcGVkIHRib2R5IHRyOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZGRkZGRkOyB9XG4gIC50YWJsZS0tc3RyaXBwZWQgdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7IH1cblxuLnRhYmxlLS1zdHJpcHBlZCB0ZDpmaXJzdC1jaGlsZCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLnRhYmxlRmxvYXRpbmdIZWFkZXJPcmlnaW5hbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAudGFibGVGbG9hdGluZ0hlYWRlciB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9IH1cblxuLnRhYmxlLS1uby1ib3JkZXIgdHIge1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi50YWJsZS0tbm8tYm9yZGVyIHRoLFxuLnRhYmxlLS1uby1ib3JkZXIgdGQge1xuICBwYWRkaW5nOiAwZW0gMC44ZW0gMC42ZW0gMDtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEZPUk1TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQmFzaWMgZm9ybSBlbGVtZW50c1xuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi5pbnB1dCxcbi5zZWxlY3RhYmlsaXR5X190ZXh0Ym94LFxuaW5wdXRbdHlwZT0ndGV4dCddLFxuaW5wdXRbdHlwZT0nc2VhcmNoJ10sXG5pbnB1dFt0eXBlPSdlbWFpbCddLFxuaW5wdXRbdHlwZT0ndGVsJ10sXG5pbnB1dFt0eXBlPSd1cmwnXSxcbmlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXG5pbnB1dFt0eXBlPSdkYXRlJ10sXG5pbnB1dFt0eXBlPSdkYXRldGltZSddLFxuaW5wdXRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbmlucHV0W3R5cGU9J21vbnRoJ10sXG5pbnB1dFt0eXBlPSd3ZWVrJ10sXG5pbnB1dFt0eXBlPSd0aW1lJ10sXG5pbnB1dFt0eXBlPSdudW1iZXInXSxcbmlucHV0W3R5cGU9J2ZpbGUnXSxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNTI2ZW0gMS4xZW0gMC40MmVtO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZmJmYmY7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IH1cbiAgLmlucHV0OjpwbGFjZWhvbGRlcixcbiAgLnNlbGVjdGFiaWxpdHlfX3RleHRib3g6OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPSd0ZXh0J106OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPSdzZWFyY2gnXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9J2VtYWlsJ106OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPSd0ZWwnXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9J3VybCddOjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9J2RhdGUnXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9J2RhdGV0aW1lJ106OnBsYWNlaG9sZGVyLFxuICBpbnB1dFt0eXBlPSdkYXRldGltZS1sb2NhbCddOjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT0nbW9udGgnXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9J3dlZWsnXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9J3RpbWUnXTo6cGxhY2Vob2xkZXIsXG4gIGlucHV0W3R5cGU9J251bWJlciddOjpwbGFjZWhvbGRlcixcbiAgaW5wdXRbdHlwZT0nZmlsZSddOjpwbGFjZWhvbGRlcixcbiAgc2VsZWN0OjpwbGFjZWhvbGRlcixcbiAgdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAjOTk5OyB9XG4gIC5pbnB1dDpmb2N1cyxcbiAgLnNlbGVjdGFiaWxpdHlfX3RleHRib3g6Zm9jdXMsXG4gIGlucHV0W3R5cGU9J3RleHQnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ106Zm9jdXMsXG4gIGlucHV0W3R5cGU9J2VtYWlsJ106Zm9jdXMsXG4gIGlucHV0W3R5cGU9J3RlbCddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSd1cmwnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0nZGF0ZSddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSdkYXRldGltZSddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSdtb250aCddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSd3ZWVrJ106Zm9jdXMsXG4gIGlucHV0W3R5cGU9J3RpbWUnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0nbnVtYmVyJ106Zm9jdXMsXG4gIGlucHV0W3R5cGU9J2ZpbGUnXTpmb2N1cyxcbiAgc2VsZWN0OmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMWIxOTFjO1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLmlucHV0W2Rpc2FibGVkXSxcbiAgLnNlbGVjdGFiaWxpdHlfX3RleHRib3hbZGlzYWJsZWRdLFxuICBpbnB1dFt0eXBlPSd0ZXh0J11bZGlzYWJsZWRdLFxuICBpbnB1dFt0eXBlPSdzZWFyY2gnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J2VtYWlsJ11bZGlzYWJsZWRdLFxuICBpbnB1dFt0eXBlPSd0ZWwnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J3VybCddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J2RhdGUnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J2RhdGV0aW1lJ11bZGlzYWJsZWRdLFxuICBpbnB1dFt0eXBlPSdkYXRldGltZS1sb2NhbCddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0nbW9udGgnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J3dlZWsnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J3RpbWUnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J251bWJlciddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0nZmlsZSddW2Rpc2FibGVkXSxcbiAgc2VsZWN0W2Rpc2FibGVkXSxcbiAgdGV4dGFyZWFbZGlzYWJsZWRdIHtcbiAgICBjb2xvcjogcmdiYSgxMjUsIDEyNSwgMTI1LCAwLjYpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE0MSwgMTQwLCAxNDEsIDAuNik7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uZm9ybS1kaXNhYmxlZCBsYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDEyNSwgMTI1LCAxMjUsIDAuNik7IH1cblxuW3R5cGU9J3JhbmdlJ10ge1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIFt0eXBlPSdyYW5nZSddIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTQwcHg7IH0gfVxuICBAc3VwcG9ydHMgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgICBbdHlwZT0ncmFuZ2UnXSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMTZweDsgfSB9XG4gIFt0eXBlPSdyYW5nZSddOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gICAgW3R5cGU9J3JhbmdlJ106Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOGU4ZTg7IH1cbiAgICBbdHlwZT0ncmFuZ2UnXTpmb2N1czo6LW1zLWZpbGwtbG93ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZThlODsgfVxuICAgIFt0eXBlPSdyYW5nZSddOmZvY3VzOjotbXMtZmlsbC11cHBlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZThlOGU4OyB9XG4gIFt0eXBlPSdyYW5nZSddOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RiZGJkYjtcbiAgICBib3JkZXI6IDAgc29saWQgIzdkN2Q3ZDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZTsgfVxuICBbdHlwZT0ncmFuZ2UnXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHdpZHRoOiAyNHB4O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBiYWNrZ3JvdW5kOiAjMjU5NWQ5O1xuICAgIGJvcmRlcjogMCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJveC1zaGFkb3c6IDRweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAwIDRweCByZ2JhKDEzLCAxMywgMTMsIDAuMik7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbi10b3A6IC04cHg7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSdyYW5nZSddOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJkYmRiO1xuICAgIGJvcmRlcjogMCBzb2xpZCAjN2Q3ZDdkO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlOyB9XG4gIFt0eXBlPSdyYW5nZSddOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgYmFja2dyb3VuZDogIzI1OTVkOTtcbiAgICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiA0cHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMCA0cHggcmdiYSgxMywgMTMsIDEzLCAwLjIpO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICBbdHlwZT0ncmFuZ2UnXTo6LW1zLXRodW1iIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgYmFja2dyb3VuZDogIzI1OTVkOTtcbiAgICBib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiA0cHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMCA0cHggcmdiYSgxMywgMTMsIDEzLCAwLjIpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIFt0eXBlPSdyYW5nZSddOjotbXMtdHJhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogMTJweCAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIFt0eXBlPSdyYW5nZSddOjotbXMtZmlsbC1sb3dlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RiZGJkYjtcbiAgICBib3JkZXI6IDAgc29saWQgIzdkN2Q3ZDtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZTsgfVxuICAgIEBzdXBwb3J0cyAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAgICAgW3R5cGU9J3JhbmdlJ106Oi1tcy1maWxsLWxvd2VyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9IH1cbiAgW3R5cGU9J3JhbmdlJ106Oi1tcy1maWxsLXVwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGJkYmRiO1xuICAgIGJvcmRlcjogMCBzb2xpZCAjN2Q3ZDdkO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlOyB9XG4gICAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgICBbdHlwZT0ncmFuZ2UnXTo6LW1zLWZpbGwtdXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH0gfVxuXG4uaW5wdXQuZXJyb3IsIC5lcnJvci5zZWxlY3RhYmlsaXR5X190ZXh0Ym94LFxuaW5wdXQuZXJyb3JbdHlwZT0ndGV4dCddLFxuaW5wdXQuZXJyb3JbdHlwZT0nc2VhcmNoJ10sXG5pbnB1dC5lcnJvclt0eXBlPSdlbWFpbCddLFxuaW5wdXQuZXJyb3JbdHlwZT0ndGVsJ10sXG5pbnB1dC5lcnJvclt0eXBlPSd1cmwnXSxcbmlucHV0LmVycm9yW3R5cGU9J3Bhc3N3b3JkJ10sXG5pbnB1dC5lcnJvclt0eXBlPSdkYXRlJ10sXG5pbnB1dC5lcnJvclt0eXBlPSdkYXRldGltZSddLFxuaW5wdXQuZXJyb3JbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbmlucHV0LmVycm9yW3R5cGU9J21vbnRoJ10sXG5pbnB1dC5lcnJvclt0eXBlPSd3ZWVrJ10sXG5pbnB1dC5lcnJvclt0eXBlPSd0aW1lJ10sXG5pbnB1dC5lcnJvclt0eXBlPSdudW1iZXInXSxcbmlucHV0LmVycm9yW3R5cGU9J2ZpbGUnXSxcbnNlbGVjdC5lcnJvcixcbnRleHRhcmVhLmVycm9yLFxuLmlucHV0LS1lcnJvci5pbnB1dC0tZXJyb3Ige1xuICBib3JkZXItY29sb3I6ICNjNzAwMzk7IH1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiBjYWxjKCAyLjM0ZW0gKyA4cHgpO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyB9XG5cbmlucHV0W3R5cGU9J3RpbWUnXSB7XG4gIG1heC13aWR0aDogOWVtOyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiA5cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgbGFiZWwuZXJyb3Ige1xuICAgIGNvbG9yOiAjYzcwMDM5O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgLmVycm9yICsgbGFiZWwuZXJyb3Ige1xuICAgIG1hcmdpbi10b3A6IDAuM2VtOyB9XG5cbi5sYWJlbC0taW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogMTFweDtcbiAgcGFkZGluZy1ib3R0b206IDExcHg7IH1cbiAgLmxhYmVsLS1pbmxpbmU6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4OyB9XG5cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzhkOGM4ZDsgfVxuXG4vKipcbiAqIEZvcm1zIGxheW91dFxuICovXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICBmb3JtIC5zZWN0aW9uLFxuICBmb3JtIC5mb3JtLWFjdGlvbnMge1xuICAgIHdpZHRoOiA5MCU7IH0gfVxuXG4uZm9ybS1ncm91cC0tcmFkaW8sXG4uZm9ybS1ncm91cC0tY2hlY2tib3gge1xuICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5mb3JtLWdyb3VwLS1yYWRpbyB+IC5mb3JtLWdyb3VwLS1yYWRpbyxcbiAgLmZvcm0tZ3JvdXAtLXJhZGlvIH4gLmZvcm0tZ3JvdXAtLWNoZWNrYm94LFxuICAuZm9ybS1ncm91cC0tY2hlY2tib3ggfiAuZm9ybS1ncm91cC0tcmFkaW8sXG4gIC5mb3JtLWdyb3VwLS1jaGVja2JveCB+IC5mb3JtLWdyb3VwLS1jaGVja2JveCB7XG4gICAgbWFyZ2luLXRvcDogOXB4OyB9XG4gIC5mb3JtLWdyb3VwLS1yYWRpbyBsYWJlbCxcbiAgLmZvcm0tZ3JvdXAtLWNoZWNrYm94IGxhYmVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgLmZvcm0tZ3JvdXAtLXJhZGlvIC5jaGVja21hcmssXG4gIC5mb3JtLWdyb3VwLS1jaGVja2JveCAuY2hlY2ttYXJrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIG1hcmdpbi1yaWdodDogMThweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4ZDhjOGQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmZvcm0tZ3JvdXAtLXJhZGlvIC5jaGVja21hcmsgLmNoZWNrbWFyay0taW5uZXIsXG4gICAgLmZvcm0tZ3JvdXAtLWNoZWNrYm94IC5jaGVja21hcmsgLmNoZWNrbWFyay0taW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNTBtcyBlYXNlLW91dDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmZvcm0tZ3JvdXAtLXJhZGlvIGlucHV0Om5vdChbZGlzYWJsZWRdKSB+IGxhYmVsOmhvdmVyIC5jaGVja21hcmstLWlubmVyLFxuICAuZm9ybS1ncm91cC0tY2hlY2tib3ggaW5wdXQ6bm90KFtkaXNhYmxlZF0pIH4gbGFiZWw6aG92ZXIgLmNoZWNrbWFyay0taW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTk1ZDk7IH1cbiAgLmZvcm0tZ3JvdXAtLXJhZGlvIGlucHV0Om5vdChbZGlzYWJsZWRdKTpjaGVja2VkIH4gbGFiZWwgLmNoZWNrbWFyay0taW5uZXIsXG4gIC5mb3JtLWdyb3VwLS1jaGVja2JveCBpbnB1dDpub3QoW2Rpc2FibGVkXSk6Y2hlY2tlZCB+IGxhYmVsIC5jaGVja21hcmstLWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxOTFjICFpbXBvcnRhbnQ7IH1cbiAgLmZvcm0tZ3JvdXAtLXJhZGlvIGlucHV0W2Rpc2FibGVkXSB+IGxhYmVsLFxuICAuZm9ybS1ncm91cC0tY2hlY2tib3ggaW5wdXRbZGlzYWJsZWRdIH4gbGFiZWwge1xuICAgIGNvbG9yOiByZ2JhKDEyNSwgMTI1LCAxMjUsIDAuNik7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5mb3JtLWdyb3VwLS1yYWRpbyBpbnB1dFtkaXNhYmxlZF0gfiBsYWJlbCAuY2hlY2ttYXJrLFxuICAgIC5mb3JtLWdyb3VwLS1jaGVja2JveCBpbnB1dFtkaXNhYmxlZF0gfiBsYWJlbCAuY2hlY2ttYXJrIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgxNDEsIDE0MCwgMTQxLCAwLjYpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAuZm9ybS1ncm91cC0tcmFkaW8gaW5wdXQsXG4gIC5mb3JtLWdyb3VwLS1jaGVja2JveCBpbnB1dCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5mb3JtLWdyb3VwLS1yYWRpbyxcbiAgICAuZm9ybS1ncm91cC0tY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAxOHB4IDMwcHggMCAwOyB9XG4gICAgICAuZm9ybS1ncm91cC0tcmFkaW8gbGFiZWwsXG4gICAgICAuZm9ybS1ncm91cC0tY2hlY2tib3ggbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgLmZvcm0tZ3JvdXAtLXJhZGlvLmZvcm0tZ3JvdXAtLWJsb2NrLFxuICAuZm9ybS1ncm91cC0tY2hlY2tib3guZm9ybS1ncm91cC0tYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5mb3JtLWdyb3VwLS1yYWRpbyAuY2hlY2ttYXJrIHtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICAuZm9ybS1ncm91cC0tcmFkaW8gLmNoZWNrbWFyayAuY2hlY2ttYXJrLS1pbm5lciB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuXG4uZmllbGQtbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMTFweCAwOyB9XG5cbi5maWVsZC1oZWxwIHtcbiAgbWFyZ2luLXRvcDogOXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogIzhkOGM4ZDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAuZmllbGRncm91cCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tbGVmdDogLTQwcHg7IH0gfVxuXG4uZmllbGRncm91cCBsZWdlbmQge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAxMXB4IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuZmllbGRncm91cCBsZWdlbmQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMCAxNnB4IDAgNDBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5maWVsZGdyb3VwIC5maWVsZHNldC13cmFwcGVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH0gfVxuXG4uZm9ybS1hY3Rpb25zIC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5mb3JtLWFjdGlvbnMgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IGF1dG87IH0gfVxuXG5sYWJlbC5mb3JtLXJlcXVpcmVkOjphZnRlcixcbi5mb3JtX19sYWJlbC5mb3JtLXJlcXVpcmVkOjphZnRlcixcbmxlZ2VuZCAuZm9ybS1yZXF1aXJlZDo6YWZ0ZXIge1xuICBjb250ZW50OiAnKic7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiA1cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmNoZWNrYm94ZXMtLW1kLXNwYWNlZCAub3B0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4OyB9IH1cblxuLyoqXG4gKiBTcGVjaWZpYyBmb3Jtc1xuICogVE9ETzogcmVmYWN0b3IgdG8gYXBwbHkgdGhpcyBpbiBhIG1vcmUgZ2VuZXJpYyB3YXlcbiAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmZvcm0taXRlbS1yZWFjaGFibGUtYnktcGhvbmUtZnJvbSBsYWJlbCxcbiAgLmZvcm0taXRlbS1yZWFjaGFibGUtYnktcGhvbmUtdG8gbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDlweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5mb3JtLWl0ZW0tcmVhY2hhYmxlLWJ5LXBob25lLWZyb20gaW5wdXQsXG4gIC5mb3JtLWl0ZW0tcmVhY2hhYmxlLWJ5LXBob25lLXRvIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjEuOTM3NWVtKSB7XG4gICNlZGl0LWNvbnRhY3QtYnktY29udGFpbmVyLWF2YWlsYWJpbGl0aWVzID4gKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDQ4cHg7IH0gfVxuXG4jZWRpdC1jb250YWN0LWJ5LWNvbnRhaW5lci1hdmFpbGFiaWxpdGllcyBsYWJlbC5mb3JtLXJlcXVpcmVkOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4jZWRpdC1yZWFjaGFibGUtYnktcGhvbmUtZnJvbS10by1jb250YWluZXIgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA1MHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MS45Mzc1ZW0pIHtcbiAgLm9yZGVyLWJhY2stYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLm9yZGVyLWJhY2stYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAtODBweDsgfSB9XG5cbi8qKlxuICogU2l6ZXNcbiAqL1xuLmlucHV0LS1zbWFsbCxcbi5zZWxlY3QtLXNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjg1ZW0gIWltcG9ydGFudDsgfVxuXG4uaW5wdXQtLXNtYWxsIHtcbiAgcGFkZGluZzogOXB4ICFpbXBvcnRhbnQ7IH1cblxuLnNlbGVjdC0tc21hbGwge1xuICBoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiA5cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogOXB4ICFpbXBvcnRhbnQ7IH1cblxuLmNhbGN1bGF0b3JfX2Jsb2NrIGlucHV0W3R5cGU9J251bWJlciddLFxuLmlucHV0LS1sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHBhZGRpbmc6IDI3cHg7IH1cblxuLnNlbGVjdC0tbGFyZ2Uge1xuICBmb250LXNpemU6IDEuMmVtICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogODRweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDI3cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogMjdweCAhaW1wb3J0YW50OyB9XG5cbi8qKlxuICogIENvbmNlYWxlZCBpbnB1dFxuICovXG5pbnB1dC5jb25jZWFsZWQtaW5wdXQge1xuICBib3JkZXI6IG5vbmU7XG4gIGhlaWdodDogNThweDtcbiAgcGFkZGluZzogOXB4IDAgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAycmVtO1xuICBjb2xvcjogIzFiMTkxYzsgfVxuICBpbnB1dC5jb25jZWFsZWQtaW5wdXRbZGlzYWJsZWRdIHtcbiAgICBjb2xvcjogIzFiMTkxYzsgfVxuXG4udG9vbHRpcC13cmFwcGVyIGlucHV0OjotbXMtY2xlYXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3JtLXRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxOHB4O1xuICB0b3A6IDFlbTtcbiAgbWFyZ2luLXRvcDogLTAuNWVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLmZvcm0tdG9vbHRpcCB7XG4gICAgICByaWdodDogLTU0cHg7IH0gfVxuICAuZm9ybS10b29sdGlwIHN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmZvcm0tZWxlbWVudC0tc3RhY2tlZCAuZm9ybS10b29sdGlwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIHRvcDogNXB4OyB9XG5cbi5mb3JtLWl0ZW0tLWhhcy10b29sdGlwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5mb3JtLWl0ZW0tLWhhcy1pbmxpbmUtbGFiZWwgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogNC41cHg7IH1cblxuLmZvcm0tLWZhcS1pbmxpbmUtc2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mb3JtLS1mYXEtaW5saW5lLXNlYXJjaDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG5cbmlucHV0W3R5cGU9J2RhdGUnXSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjFlbSk7IH1cbiAgaW5wdXRbdHlwZT0nZGF0ZSddICsgc3ZnIHtcbiAgICB3aWR0aDogMS4zZW07XG4gICAgaGVpZ2h0OiAxLjNlbTtcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07IH1cblxuLyoqXG4gKiBIZWxwZXJzXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBURVhUXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQWxpZ25tZW50XG4gKi9cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi8qKlxuICogQ2FzZVxuICovXG4udGV4dC11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNDVlbTsgfVxuXG4udGV4dC1jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLyoqXG4gKiBTdHlsaW5nXG4gKi9cbi50ZXh0LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4udGV4dC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnRleHQtbWVkaXVtIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4udGV4dC1ub3JtYWwge1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi50ZXh0LWxpZ2h0IHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4vKipcbiAqIFNpemVcbiAqL1xuLnRleHQtdGlueSB7XG4gIGZvbnQtc2l6ZTogMC43NWVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLnRleHQtdGlueSB7XG4gICAgICBmb250LXNpemU6IGNhbGMoLTAuMDc5Mzd2dyArIDAuNzczODFlbSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50ZXh0LXRpbnkge1xuICAgICAgZm9udC1zaXplOiAwLjcxNDI5ZW07IH0gfVxuXG4udGV4dC1zbWFsbCxcbmxhYmVsLmVycm9yLFxuLm1lbnUtaXRlbS0tY29udGVudC1leHRyYXMsXG4udG9vbHRpcCxcbi5wb3BvdmVyLXRpdGxlLFxuLnBvcG92ZXItY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC50ZXh0LXNtYWxsLFxuICAgIGxhYmVsLmVycm9yLFxuICAgIC5tZW51LWl0ZW0tLWNvbnRlbnQtZXh0cmFzLFxuICAgIC50b29sdGlwLFxuICAgIC5wb3BvdmVyLXRpdGxlLFxuICAgIC5wb3BvdmVyLWNvbnRlbnQge1xuICAgICAgZm9udC1zaXplOiBjYWxjKC0wLjAzOTY4dncgKyAwLjg4NjllbSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50ZXh0LXNtYWxsLFxuICAgIGxhYmVsLmVycm9yLFxuICAgIC5tZW51LWl0ZW0tLWNvbnRlbnQtZXh0cmFzLFxuICAgIC50b29sdGlwLFxuICAgIC5wb3BvdmVyLXRpdGxlLFxuICAgIC5wb3BvdmVyLWNvbnRlbnQge1xuICAgICAgZm9udC1zaXplOiAwLjg1NzE0ZW07IH0gfVxuXG4udGV4dC1sYXJnZSxcbi5ib3gtLWhlcm8gLmJveF9fc3VidGl0bGUsXG4uYm94LS1waHlsYWN0ZXJ5IC5ib3hfX3N1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNWVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLnRleHQtbGFyZ2UsXG4gICAgLmJveC0taGVybyAuYm94X19zdWJ0aXRsZSxcbiAgICAuYm94LS1waHlsYWN0ZXJ5IC5ib3hfX3N1YnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygwLjAzOTY4dncgKyAxLjExMzFlbSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50ZXh0LWxhcmdlLFxuICAgIC5ib3gtLWhlcm8gLmJveF9fc3VidGl0bGUsXG4gICAgLmJveC0tcGh5bGFjdGVyeSAuYm94X19zdWJ0aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuMTQyODZlbTsgfSB9XG5cbi8qKlxuICogQ29sb3JzXG4gKi9cbi50ZXh0LW5ldXRyYWwge1xuICBjb2xvcjogIzUwNTA1MDsgfVxuXG4udGV4dC1tdXRlZCB7XG4gIGNvbG9yOiByZ2JhKDgwLCA4MCwgODAsIDAuNik7IH1cblxuLnRleHQtYy1saWdodCB7XG4gIGNvbG9yOiAjOGQ4YzhkOyB9XG5cbi50ZXh0LWMtd2FybmluZyB7XG4gIGNvbG9yOiBvcmFuZ2U7IH1cblxuLnRleHQtYy1lcnJvciB7XG4gIGNvbG9yOiAjYzcwMDM5OyB9XG5cbi50ZXh0LWMtYnJhbmQge1xuICBjb2xvcjogIzI1OTVkOTsgfVxuXG4udGV4dC1lcnJvciB7XG4gIGNvbG9yOiAjYzcwMDM5O1xuICBtYXJnaW4tdG9wOiA5cHg7IH1cblxuLyoqXG4gKiBNaXNjXG4gKi9cbi50ZXh0LW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIENPTE9SU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYmtnLS1oaWdobGlnaHRlZCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU5NWQ5OyB9XG5cbi5ia2ctLWhpZ2hsaWdodGVkLWRhcmsge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5Njg5NzsgfVxuXG4uYmtnLS1saWdodGVzdCB7XG4gIGNvbG9yOiAjNTA1MDUwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbi5ia2ctLWxpZ2h0ZXIge1xuICBjb2xvcjogIzUwNTA1MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODsgfVxuXG4uYmtnLS1saWdodCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGQ4YzhkOyB9XG5cbi5ia2ctLWFsdCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Q3ZDdkOyB9XG5cbi5ia2ctLWRhcmsge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUwNTA1MDsgfVxuXG4uYmtnLS1kYXJrZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFiMTkxYzsgfVxuXG4uYmtnLS1sZS1jbHViIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMmFkMjQ7IH1cblxuLmJrZy0tYmFzZSB7XG4gIGNvbG9yOiAjNTA1MDUwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbi5ia2ctLWVycm9yIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNzAwMzk7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFRFWFQgUkVTUE9OU0lWRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIEFsaWdubWVudFxuICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAueHMtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54cy10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54cy10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC54c2wtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54c2wtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueHNsLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuc20tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5zbS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zbS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5tZC10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1kLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1kLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmxnLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGctdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGctdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRkxPQVRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jbGVhcmZpeDphZnRlcixcbmRsOmFmdGVyLFxuLmRsLS1pbmxpbmUgZGQ6YWZ0ZXIsXG4ubWVkaWE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBTUEFDSU5HU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIE1BUkdJTlNcbiAqIEdlbmVyYXRlIG1hcmdpbiBjbGFzc2VzIGJhc2VkIG9uIHNwYWNpbmcgdW5pdHNcbiAqXG4gKiBtcmcofHR8cnxifGx8aHx2KTAgICA9PiBubyBtYXJnaW5cbiAqIG1yZyh8dHxyfGJ8bHxofHYpLS0gID0+IDEvNFxuICogbXJnKHx0fHJ8YnxsfGh8diktICAgPT4gMS8yXG4gKiBtcmcofHR8cnxifGx8aHx2KSAgICA9PiAxeFxuICogbXJnKHx0fHJ8YnxsfGh8dikrICAgPT4gMnhcbiAqIG1yZyh8dHxyfGJ8bHxofHYpKysgID0+IDR4XG4gKlxuICoge25vdGhpbmd9ICA9PiBhbGxcbiAqIHQgICAgICAgICAgPT4gdG9wXG4gKiByICAgICAgICAgID0+IHJpZ2h0XG4gKiBiICAgICAgICAgID0+IGJvdHRvbVxuICogbCAgICAgICAgICA9PiBsZWZ0XG4gKiBoICAgICAgICAgID0+IGhvcml6b250YWwgKGxlZnQgKyByaWdodClcbiAqIHYgICAgICAgICAgPT4gdmVydGljYWwgKHRvcCArIGJvdHRvbSlcbiAqL1xuLm1yZzAge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4ubXJndDAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3IwIHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2IwIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi5tcmdsMCB7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2gwIHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3YwIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLm1yZyB7XG4gIG1hcmdpbjogMzBweCAhaW1wb3J0YW50OyB9XG5cbi5tcmd0IHtcbiAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50OyB9XG5cbi5tcmdyIHtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2IsIFtpZD1cImJsb2NrLWV4cG9zZWQtZm9ybS1zZWFyY2gtaHBcIl0gLmZvcm0tZ3JvdXAtLXRleHRmaWVsZCB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHggIWltcG9ydGFudDsgfVxuXG4ubXJnbCB7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2gge1xuICBtYXJnaW4tcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHggIWltcG9ydGFudDsgfVxuXG4ubXJndiB7XG4gIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG5cbi5tcmctLSB7XG4gIG1hcmdpbjogOXB4ICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3QtLSB7XG4gIG1hcmdpbi10b3A6IDlweCAhaW1wb3J0YW50OyB9XG5cbi5tcmdyLS0ge1xuICBtYXJnaW4tcmlnaHQ6IDlweCAhaW1wb3J0YW50OyB9XG5cbi5tcmdiLS0ge1xuICBtYXJnaW4tYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuXG4ubXJnbC0tIHtcbiAgbWFyZ2luLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG5cbi5tcmdoLS0ge1xuICBtYXJnaW4tcmlnaHQ6IDlweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogOXB4ICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3YtLSB7XG4gIG1hcmdpbi10b3A6IDlweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuXG4ubXJnLSB7XG4gIG1hcmdpbjogMThweCAhaW1wb3J0YW50OyB9XG5cbi5tcmd0LSB7XG4gIG1hcmdpbi10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuXG4ubXJnci0ge1xuICBtYXJnaW4tcmlnaHQ6IDE4cHggIWltcG9ydGFudDsgfVxuXG4ubXJnYi0ge1xuICBtYXJnaW4tYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2wtIHtcbiAgbWFyZ2luLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuXG4ubXJnaC0ge1xuICBtYXJnaW4tcmlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuXG4ubXJndi0ge1xuICBtYXJnaW4tdG9wOiAxOHB4ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDE4cHggIWltcG9ydGFudDsgfVxuXG4ubXJnXFwrIHtcbiAgbWFyZ2luOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3RcXCsge1xuICBtYXJnaW4tdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3JcXCsge1xuICBtYXJnaW4tcmlnaHQ6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ubXJnYlxcKyB7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ubXJnbFxcKyB7XG4gIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2hcXCsge1xuICBtYXJnaW4tcmlnaHQ6IDQ4cHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ubXJndlxcKyB7XG4gIG1hcmdpbi10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5tcmdcXCtcXCsge1xuICBtYXJnaW46IDk3cHggIWltcG9ydGFudDsgfVxuXG4ubXJndFxcK1xcKyB7XG4gIG1hcmdpbi10b3A6IDk3cHggIWltcG9ydGFudDsgfVxuXG4ubXJnclxcK1xcKyB7XG4gIG1hcmdpbi1yaWdodDogOTdweCAhaW1wb3J0YW50OyB9XG5cbi5tcmdiXFwrXFwrIHtcbiAgbWFyZ2luLWJvdHRvbTogOTdweCAhaW1wb3J0YW50OyB9XG5cbi5tcmdsXFwrXFwrIHtcbiAgbWFyZ2luLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuXG4ubXJnaFxcK1xcKyB7XG4gIG1hcmdpbi1yaWdodDogOTdweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogOTdweCAhaW1wb3J0YW50OyB9XG5cbi5tcmd2XFwrXFwrIHtcbiAgbWFyZ2luLXRvcDogOTdweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH1cblxuLyoqXG4gKiBQQURESU5HU1xuICogR2VuZXJhdGUgcGFkZGluZyBjbGFzc2VzIGJhc2VkIG9uIHNwYWNpbmcgdW5pdHNcbiAqXG4gKiBwZGcofHR8cnxifGx8aHx2KTAgICA9PiBubyBtYXJnaW5cbiAqIHBkZyh8dHxyfGJ8bHxofHYpLS0gID0+IDEvNFxuICogcGRnKHx0fHJ8YnxsfGh8diktICAgPT4gMS8yXG4gKiBwZGcofHR8cnxifGx8aHx2KSAgICA9PiAxeFxuICogcGRnKHx0fHJ8YnxsfGh8dikrICAgPT4gMnhcbiAqIHBkZyh8dHxyfGJ8bHxofHYpKysgID0+IDR4XG4gKlxuICoge25vdGhpbmd9ICA9PiBhbGxcbiAqIHQgICAgICAgICAgPT4gdG9wXG4gKiByICAgICAgICAgID0+IHJpZ2h0XG4gKiBiICAgICAgICAgID0+IGJvdHRvbVxuICogbCAgICAgICAgICA9PiBsZWZ0XG4gKiBoICAgICAgICAgID0+IGhvcml6b250YWwgKGxlZnQgKyByaWdodClcbiAqIHYgICAgICAgICAgPT4gdmVydGljYWwgKHRvcCArIGJvdHRvbSlcbiAqL1xuLnBkZzAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3QwIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ucGRncjAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2IwIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ucGRnbDAge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ucGRnaDAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi5wZGd2MCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnBkZyB7XG4gIHBhZGRpbmc6IDMwcHggIWltcG9ydGFudDsgfVxuXG4ucGRndCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3Ige1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2Ige1xuICBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG5cbi5wZGdsIHtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2gge1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMzBweCAhaW1wb3J0YW50OyB9XG5cbi5wZGd2IHtcbiAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHggIWltcG9ydGFudDsgfVxuXG4ucGRnLS0ge1xuICBwYWRkaW5nOiA5cHggIWltcG9ydGFudDsgfVxuXG4ucGRndC0tIHtcbiAgcGFkZGluZy10b3A6IDlweCAhaW1wb3J0YW50OyB9XG5cbi5wZGdyLS0ge1xuICBwYWRkaW5nLXJpZ2h0OiA5cHggIWltcG9ydGFudDsgfVxuXG4ucGRnYi0tIHtcbiAgcGFkZGluZy1ib3R0b206IDlweCAhaW1wb3J0YW50OyB9XG5cbi5wZGdsLS0ge1xuICBwYWRkaW5nLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG5cbi5wZGdoLS0ge1xuICBwYWRkaW5nLXJpZ2h0OiA5cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiA5cHggIWltcG9ydGFudDsgfVxuXG4ucGRndi0tIHtcbiAgcGFkZGluZy10b3A6IDlweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogOXB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZy0ge1xuICBwYWRkaW5nOiAxOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3QtIHtcbiAgcGFkZGluZy10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuXG4ucGRnci0ge1xuICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2ItIHtcbiAgcGFkZGluZy1ib3R0b206IDE4cHggIWltcG9ydGFudDsgfVxuXG4ucGRnbC0ge1xuICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuXG4ucGRnaC0ge1xuICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMThweCAhaW1wb3J0YW50OyB9XG5cbi5wZGd2LSB7XG4gIHBhZGRpbmctdG9wOiAxOHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ1xcKyB7XG4gIHBhZGRpbmc6IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ucGRndFxcKyB7XG4gIHBhZGRpbmctdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3JcXCsge1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2JcXCsge1xuICBwYWRkaW5nLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5wZGdsXFwrIHtcbiAgcGFkZGluZy1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2hcXCsge1xuICBwYWRkaW5nLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG5cbi5wZGd2XFwrIHtcbiAgcGFkZGluZy10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuXG4ucGRnXFwrXFwrIHtcbiAgcGFkZGluZzogOTdweCAhaW1wb3J0YW50OyB9XG5cbi5wZGd0XFwrXFwrIHtcbiAgcGFkZGluZy10b3A6IDk3cHggIWltcG9ydGFudDsgfVxuXG4ucGRnclxcK1xcKyB7XG4gIHBhZGRpbmctcmlnaHQ6IDk3cHggIWltcG9ydGFudDsgfVxuXG4ucGRnYlxcK1xcKyB7XG4gIHBhZGRpbmctYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2xcXCtcXCsge1xuICBwYWRkaW5nLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuXG4ucGRnaFxcK1xcKyB7XG4gIHBhZGRpbmctcmlnaHQ6IDk3cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiA5N3B4ICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3ZcXCtcXCsge1xuICBwYWRkaW5nLXRvcDogOTdweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogOTdweCAhaW1wb3J0YW50OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBTUEFDSU5HUyBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogTWFyZ2luc1xuICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAueHMtbXJnMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ3QwIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ3IwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAueHMtbXJnYjAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAueHMtbXJnbDAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ2gwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmd2MCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAueHMtbXJnIHtcbiAgICBtYXJnaW46IDMwcHggIWltcG9ydGFudDsgfVxuICAueHMtbXJndCB7XG4gICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHggIWltcG9ydGFudDsgfVxuICAueHMtbXJnYiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdsIHtcbiAgICBtYXJnaW4tbGVmdDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdoIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmd2IHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmctLSB7XG4gICAgbWFyZ2luOiA5cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJndC0tIHtcbiAgICBtYXJnaW4tdG9wOiA5cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJnci0tIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdiLS0ge1xuICAgIG1hcmdpbi1ib3R0b206IDlweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdsLS0ge1xuICAgIG1hcmdpbi1sZWZ0OiA5cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJnaC0tIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDlweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiA5cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJndi0tIHtcbiAgICBtYXJnaW4tdG9wOiA5cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJnLSB7XG4gICAgbWFyZ2luOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ3QtIHtcbiAgICBtYXJnaW4tdG9wOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ3ItIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJnYi0ge1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJnbC0ge1xuICAgIG1hcmdpbi1sZWZ0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ2gtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMThweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmd2LSB7XG4gICAgbWFyZ2luLXRvcDogMThweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJnXFwrIHtcbiAgICBtYXJnaW46IDQ4cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJndFxcKyB7XG4gICAgbWFyZ2luLXRvcDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdyXFwrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQ4cHggIWltcG9ydGFudDsgfVxuICAueHMtbXJnYlxcKyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdsXFwrIHtcbiAgICBtYXJnaW4tbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdoXFwrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQ4cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmd2XFwrIHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdcXCtcXCsge1xuICAgIG1hcmdpbjogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmd0XFwrXFwrIHtcbiAgICBtYXJnaW4tdG9wOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ3JcXCtcXCsge1xuICAgIG1hcmdpbi1yaWdodDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54cy1tcmdiXFwrXFwrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ2xcXCtcXCsge1xuICAgIG1hcmdpbi1sZWZ0OiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ2hcXCtcXCsge1xuICAgIG1hcmdpbi1yaWdodDogOTdweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLW1yZ3ZcXCtcXCsge1xuICAgIG1hcmdpbi10b3A6IDk3cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAueHNsLW1yZzAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJndDAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ3IwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ2IwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdsMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ2gwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJndjAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmcge1xuICAgIG1hcmdpbjogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJndCB7XG4gICAgbWFyZ2luLXRvcDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJnciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdiIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdsIHtcbiAgICBtYXJnaW4tbGVmdDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJnaCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHggIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ3Yge1xuICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmctLSB7XG4gICAgbWFyZ2luOiA5cHggIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ3QtLSB7XG4gICAgbWFyZ2luLXRvcDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdyLS0ge1xuICAgIG1hcmdpbi1yaWdodDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdiLS0ge1xuICAgIG1hcmdpbi1ib3R0b206IDlweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJnbC0tIHtcbiAgICBtYXJnaW4tbGVmdDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdoLS0ge1xuICAgIG1hcmdpbi1yaWdodDogOXB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJndi0tIHtcbiAgICBtYXJnaW4tdG9wOiA5cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuICAueHNsLW1yZy0ge1xuICAgIG1hcmdpbjogMThweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJndC0ge1xuICAgIG1hcmdpbi10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ3ItIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ2ItIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdsLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ2gtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMThweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJndi0ge1xuICAgIG1hcmdpbi10b3A6IDE4cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdcXCsge1xuICAgIG1hcmdpbjogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJndFxcKyB7XG4gICAgbWFyZ2luLXRvcDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJnclxcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdiXFwrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdsXFwrIHtcbiAgICBtYXJnaW4tbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJnaFxcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDQ4cHggIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ3ZcXCsge1xuICAgIG1hcmdpbi10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdcXCtcXCsge1xuICAgIG1hcmdpbjogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJndFxcK1xcKyB7XG4gICAgbWFyZ2luLXRvcDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJnclxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdiXFwrXFwrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1tcmdsXFwrXFwrIHtcbiAgICBtYXJnaW4tbGVmdDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtbXJnaFxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5N3B4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAueHNsLW1yZ3ZcXCtcXCsge1xuICAgIG1hcmdpbi10b3A6IDk3cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5zbS1tcmcwIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAuc20tbXJndDAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAuc20tbXJncjAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdiMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdsMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAuc20tbXJnaDAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3YwIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmcge1xuICAgIG1hcmdpbjogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd0IHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3Ige1xuICAgIG1hcmdpbi1yaWdodDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdiIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2wge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2gge1xuICAgIG1hcmdpbi1yaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3Yge1xuICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZy0tIHtcbiAgICBtYXJnaW46IDlweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd0LS0ge1xuICAgIG1hcmdpbi10b3A6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdyLS0ge1xuICAgIG1hcmdpbi1yaWdodDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2ItLSB7XG4gICAgbWFyZ2luLWJvdHRvbTogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2wtLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdoLS0ge1xuICAgIG1hcmdpbi1yaWdodDogOXB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd2LS0ge1xuICAgIG1hcmdpbi10b3A6IDlweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDlweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmctIHtcbiAgICBtYXJnaW46IDE4cHggIWltcG9ydGFudDsgfVxuICAuc20tbXJndC0ge1xuICAgIG1hcmdpbi10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuICAuc20tbXJnci0ge1xuICAgIG1hcmdpbi1yaWdodDogMThweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdiLSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdsLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAuc20tbXJnaC0ge1xuICAgIG1hcmdpbi1yaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3YtIHtcbiAgICBtYXJnaW4tdG9wOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdcXCsge1xuICAgIG1hcmdpbjogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd0XFwrIHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3JcXCsge1xuICAgIG1hcmdpbi1yaWdodDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdiXFwrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2xcXCsge1xuICAgIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2hcXCsge1xuICAgIG1hcmdpbi1yaWdodDogNDhweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3ZcXCsge1xuICAgIG1hcmdpbi10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ1xcK1xcKyB7XG4gICAgbWFyZ2luOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3RcXCtcXCsge1xuICAgIG1hcmdpbi10b3A6IDk3cHggIWltcG9ydGFudDsgfVxuICAuc20tbXJnclxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2JcXCtcXCsge1xuICAgIG1hcmdpbi1ib3R0b206IDk3cHggIWltcG9ydGFudDsgfVxuICAuc20tbXJnbFxcK1xcKyB7XG4gICAgbWFyZ2luLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAuc20tbXJnaFxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5N3B4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAuc20tbXJndlxcK1xcKyB7XG4gICAgbWFyZ2luLXRvcDogOTdweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDk3cHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5tZC1tcmcwIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAubWQtbXJndDAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubWQtbXJncjAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdiMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdsMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubWQtbXJnaDAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3YwIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmcge1xuICAgIG1hcmdpbjogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd0IHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3Ige1xuICAgIG1hcmdpbi1yaWdodDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdiIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2wge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2gge1xuICAgIG1hcmdpbi1yaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3Yge1xuICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZy0tIHtcbiAgICBtYXJnaW46IDlweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd0LS0ge1xuICAgIG1hcmdpbi10b3A6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdyLS0ge1xuICAgIG1hcmdpbi1yaWdodDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2ItLSB7XG4gICAgbWFyZ2luLWJvdHRvbTogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2wtLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdoLS0ge1xuICAgIG1hcmdpbi1yaWdodDogOXB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd2LS0ge1xuICAgIG1hcmdpbi10b3A6IDlweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDlweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmctIHtcbiAgICBtYXJnaW46IDE4cHggIWltcG9ydGFudDsgfVxuICAubWQtbXJndC0ge1xuICAgIG1hcmdpbi10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuICAubWQtbXJnci0ge1xuICAgIG1hcmdpbi1yaWdodDogMThweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdiLSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdsLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAubWQtbXJnaC0ge1xuICAgIG1hcmdpbi1yaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3YtIHtcbiAgICBtYXJnaW4tdG9wOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdcXCsge1xuICAgIG1hcmdpbjogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd0XFwrIHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3JcXCsge1xuICAgIG1hcmdpbi1yaWdodDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdiXFwrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2xcXCsge1xuICAgIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2hcXCsge1xuICAgIG1hcmdpbi1yaWdodDogNDhweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3ZcXCsge1xuICAgIG1hcmdpbi10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ1xcK1xcKyB7XG4gICAgbWFyZ2luOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3RcXCtcXCsge1xuICAgIG1hcmdpbi10b3A6IDk3cHggIWltcG9ydGFudDsgfVxuICAubWQtbXJnclxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2JcXCtcXCsge1xuICAgIG1hcmdpbi1ib3R0b206IDk3cHggIWltcG9ydGFudDsgfVxuICAubWQtbXJnbFxcK1xcKyB7XG4gICAgbWFyZ2luLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAubWQtbXJnaFxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5N3B4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAubWQtbXJndlxcK1xcKyB7XG4gICAgbWFyZ2luLXRvcDogOTdweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDk3cHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sZy1tcmcwIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAubGctbXJndDAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubGctbXJncjAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdiMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdsMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubGctbXJnaDAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3YwIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmcge1xuICAgIG1hcmdpbjogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmd0IHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3Ige1xuICAgIG1hcmdpbi1yaWdodDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdiIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2wge1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2gge1xuICAgIG1hcmdpbi1yaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3Yge1xuICAgIG1hcmdpbi10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZy0tIHtcbiAgICBtYXJnaW46IDlweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmd0LS0ge1xuICAgIG1hcmdpbi10b3A6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdyLS0ge1xuICAgIG1hcmdpbi1yaWdodDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2ItLSB7XG4gICAgbWFyZ2luLWJvdHRvbTogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2wtLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdoLS0ge1xuICAgIG1hcmdpbi1yaWdodDogOXB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmd2LS0ge1xuICAgIG1hcmdpbi10b3A6IDlweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDlweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmctIHtcbiAgICBtYXJnaW46IDE4cHggIWltcG9ydGFudDsgfVxuICAubGctbXJndC0ge1xuICAgIG1hcmdpbi10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuICAubGctbXJnci0ge1xuICAgIG1hcmdpbi1yaWdodDogMThweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdiLSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdsLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAubGctbXJnaC0ge1xuICAgIG1hcmdpbi1yaWdodDogMThweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3YtIHtcbiAgICBtYXJnaW4tdG9wOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdcXCsge1xuICAgIG1hcmdpbjogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmd0XFwrIHtcbiAgICBtYXJnaW4tdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3JcXCsge1xuICAgIG1hcmdpbi1yaWdodDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdiXFwrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2xcXCsge1xuICAgIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2hcXCsge1xuICAgIG1hcmdpbi1yaWdodDogNDhweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3ZcXCsge1xuICAgIG1hcmdpbi10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ1xcK1xcKyB7XG4gICAgbWFyZ2luOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3RcXCtcXCsge1xuICAgIG1hcmdpbi10b3A6IDk3cHggIWltcG9ydGFudDsgfVxuICAubGctbXJnclxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2JcXCtcXCsge1xuICAgIG1hcmdpbi1ib3R0b206IDk3cHggIWltcG9ydGFudDsgfVxuICAubGctbXJnbFxcK1xcKyB7XG4gICAgbWFyZ2luLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAubGctbXJnaFxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA5N3B4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAubGctbXJndlxcK1xcKyB7XG4gICAgbWFyZ2luLXRvcDogOTdweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDk3cHggIWltcG9ydGFudDsgfSB9XG5cbi8qKlxuICogUGFkZGluZ3NcbiAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnhzLXBkZzAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAueHMtcGRndDAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ3IwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2IwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGdsMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2gwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ3YwIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZyB7XG4gICAgcGFkZGluZzogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGd0IHtcbiAgICBwYWRkaW5nLXRvcDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGdyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2Ige1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2wge1xuICAgIHBhZGRpbmctbGVmdDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGdoIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ3Yge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHggIWltcG9ydGFudDsgfVxuICAueHMtcGRnLS0ge1xuICAgIHBhZGRpbmc6IDlweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGd0LS0ge1xuICAgIHBhZGRpbmctdG9wOiA5cHggIWltcG9ydGFudDsgfVxuICAueHMtcGRnci0tIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA5cHggIWltcG9ydGFudDsgfVxuICAueHMtcGRnYi0tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2wtLSB7XG4gICAgcGFkZGluZy1sZWZ0OiA5cHggIWltcG9ydGFudDsgfVxuICAueHMtcGRnaC0tIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA5cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGd2LS0ge1xuICAgIHBhZGRpbmctdG9wOiA5cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZy0ge1xuICAgIHBhZGRpbmc6IDE4cHggIWltcG9ydGFudDsgfVxuICAueHMtcGRndC0ge1xuICAgIHBhZGRpbmctdG9wOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ3ItIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2ItIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMThweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGdsLSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2gtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ3YtIHtcbiAgICBwYWRkaW5nLXRvcDogMThweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ1xcKyB7XG4gICAgcGFkZGluZzogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGd0XFwrIHtcbiAgICBwYWRkaW5nLXRvcDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGdyXFwrIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2JcXCsge1xuICAgIHBhZGRpbmctYm90dG9tOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2xcXCsge1xuICAgIHBhZGRpbmctbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54cy1wZGdoXFwrIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0OHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ3ZcXCsge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuICAueHMtcGRnXFwrXFwrIHtcbiAgICBwYWRkaW5nOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ3RcXCtcXCsge1xuICAgIHBhZGRpbmctdG9wOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ3JcXCtcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAueHMtcGRnYlxcK1xcKyB7XG4gICAgcGFkZGluZy1ib3R0b206IDk3cHggIWltcG9ydGFudDsgfVxuICAueHMtcGRnbFxcK1xcKyB7XG4gICAgcGFkZGluZy1sZWZ0OiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXBkZ2hcXCtcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDk3cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAueHMtcGRndlxcK1xcKyB7XG4gICAgcGFkZGluZy10b3A6IDk3cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTdweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnhzbC1wZGcwIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGd0MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ3IwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGdiMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ2wwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ2gwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGd2MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnIHtcbiAgICBwYWRkaW5nOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGd0IHtcbiAgICBwYWRkaW5nLXRvcDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnciB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnYiB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHggIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ2wge1xuICAgIHBhZGRpbmctbGVmdDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnaCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRndiB7XG4gICAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnLS0ge1xuICAgIHBhZGRpbmc6IDlweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRndC0tIHtcbiAgICBwYWRkaW5nLXRvcDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGdyLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnYi0tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGdsLS0ge1xuICAgIHBhZGRpbmctbGVmdDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGdoLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDlweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGd2LS0ge1xuICAgIHBhZGRpbmctdG9wOiA5cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGctIHtcbiAgICBwYWRkaW5nOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGd0LSB7XG4gICAgcGFkZGluZy10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ3ItIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGdiLSB7XG4gICAgcGFkZGluZy1ib3R0b206IDE4cHggIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ2wtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ2gtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGd2LSB7XG4gICAgcGFkZGluZy10b3A6IDE4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMThweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnXFwrIHtcbiAgICBwYWRkaW5nOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGd0XFwrIHtcbiAgICBwYWRkaW5nLXRvcDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnclxcKyB7XG4gICAgcGFkZGluZy1yaWdodDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnYlxcKyB7XG4gICAgcGFkZGluZy1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ2xcXCsge1xuICAgIHBhZGRpbmctbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnaFxcKyB7XG4gICAgcGFkZGluZy1yaWdodDogNDhweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRndlxcKyB7XG4gICAgcGFkZGluZy10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnXFwrXFwrIHtcbiAgICBwYWRkaW5nOiA5N3B4ICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC1wZGd0XFwrXFwrIHtcbiAgICBwYWRkaW5nLXRvcDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnclxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnYlxcK1xcKyB7XG4gICAgcGFkZGluZy1ib3R0b206IDk3cHggIWltcG9ydGFudDsgfVxuICAueHNsLXBkZ2xcXCtcXCsge1xuICAgIHBhZGRpbmctbGVmdDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRnaFxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogOTdweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC54c2wtcGRndlxcK1xcKyB7XG4gICAgcGFkZGluZy10b3A6IDk3cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTdweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuc20tcGRnMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGd0MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAuc20tcGRncjAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAuc20tcGRnYjAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ2wwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAuc20tcGRnaDAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAuc20tcGRndjAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAuc20tcGRnIHtcbiAgICBwYWRkaW5nOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3Qge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3Ige1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnYiB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHggIWltcG9ydGFudDsgfVxuICAuc20tcGRndiB7XG4gICAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGctLSB7XG4gICAgcGFkZGluZzogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3QtLSB7XG4gICAgcGFkZGluZy10b3A6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdyLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdiLS0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnbC0tIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdoLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDlweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3YtLSB7XG4gICAgcGFkZGluZy10b3A6IDlweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnLSB7XG4gICAgcGFkZGluZzogMThweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGd0LSB7XG4gICAgcGFkZGluZy10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnci0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnYi0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ2wtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnaC0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRndi0ge1xuICAgIHBhZGRpbmctdG9wOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDE4cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnXFwrIHtcbiAgICBwYWRkaW5nOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3RcXCsge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3JcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnYlxcKyB7XG4gICAgcGFkZGluZy1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnbFxcKyB7XG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ2hcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRndlxcKyB7XG4gICAgcGFkZGluZy10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdcXCtcXCsge1xuICAgIHBhZGRpbmc6IDk3cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRndFxcK1xcKyB7XG4gICAgcGFkZGluZy10b3A6IDk3cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnclxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdiXFwrXFwrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdsXFwrXFwrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAuc20tcGRnaFxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogOTdweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGd2XFwrXFwrIHtcbiAgICBwYWRkaW5nLXRvcDogOTdweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAubWQtcGRnMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGd0MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubWQtcGRncjAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAubWQtcGRnYjAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2wwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubWQtcGRnaDAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubWQtcGRndjAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAubWQtcGRnIHtcbiAgICBwYWRkaW5nOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3Qge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3Ige1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnYiB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHggIWltcG9ydGFudDsgfVxuICAubWQtcGRndiB7XG4gICAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGctLSB7XG4gICAgcGFkZGluZzogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3QtLSB7XG4gICAgcGFkZGluZy10b3A6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdyLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdiLS0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnbC0tIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdoLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDlweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3YtLSB7XG4gICAgcGFkZGluZy10b3A6IDlweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnLSB7XG4gICAgcGFkZGluZzogMThweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGd0LSB7XG4gICAgcGFkZGluZy10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnci0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnYi0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2wtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnaC0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRndi0ge1xuICAgIHBhZGRpbmctdG9wOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDE4cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnXFwrIHtcbiAgICBwYWRkaW5nOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3RcXCsge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3JcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnYlxcKyB7XG4gICAgcGFkZGluZy1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnbFxcKyB7XG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2hcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRndlxcKyB7XG4gICAgcGFkZGluZy10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdcXCtcXCsge1xuICAgIHBhZGRpbmc6IDk3cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRndFxcK1xcKyB7XG4gICAgcGFkZGluZy10b3A6IDk3cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnclxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdiXFwrXFwrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdsXFwrXFwrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAubWQtcGRnaFxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogOTdweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGd2XFwrXFwrIHtcbiAgICBwYWRkaW5nLXRvcDogOTdweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGctcGRnMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGd0MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRncjAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRnYjAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2wwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRnaDAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRndjAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRnIHtcbiAgICBwYWRkaW5nOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3Qge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3Ige1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDsgfVxuICAubGctcGRnYiB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHggIWltcG9ydGFudDsgfVxuICAubGctcGRnbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHggIWltcG9ydGFudDsgfVxuICAubGctcGRndiB7XG4gICAgcGFkZGluZy10b3A6IDMwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGctLSB7XG4gICAgcGFkZGluZzogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3QtLSB7XG4gICAgcGFkZGluZy10b3A6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdyLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdiLS0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnbC0tIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDlweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdoLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDlweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogOXB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3YtLSB7XG4gICAgcGFkZGluZy10b3A6IDlweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA5cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnLSB7XG4gICAgcGFkZGluZzogMThweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGd0LSB7XG4gICAgcGFkZGluZy10b3A6IDE4cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnci0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnYi0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2wtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnaC0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHggIWltcG9ydGFudDsgfVxuICAubGctcGRndi0ge1xuICAgIHBhZGRpbmctdG9wOiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDE4cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnXFwrIHtcbiAgICBwYWRkaW5nOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3RcXCsge1xuICAgIHBhZGRpbmctdG9wOiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3JcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnYlxcKyB7XG4gICAgcGFkZGluZy1ib3R0b206IDQ4cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnbFxcKyB7XG4gICAgcGFkZGluZy1sZWZ0OiA0OHB4ICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2hcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ4cHggIWltcG9ydGFudDsgfVxuICAubGctcGRndlxcKyB7XG4gICAgcGFkZGluZy10b3A6IDQ4cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDhweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdcXCtcXCsge1xuICAgIHBhZGRpbmc6IDk3cHggIWltcG9ydGFudDsgfVxuICAubGctcGRndFxcK1xcKyB7XG4gICAgcGFkZGluZy10b3A6IDk3cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnclxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdiXFwrXFwrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdsXFwrXFwrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDk3cHggIWltcG9ydGFudDsgfVxuICAubGctcGRnaFxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogOTdweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogOTdweCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGd2XFwrXFwrIHtcbiAgICBwYWRkaW5nLXRvcDogOTdweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7IH0gfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgSU1BR0VTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5pbWctcmVzcG9uc2l2ZSxcbi5pbWctcmVzcG9uc2l2ZSA+IGltZyxcbi5pbWctcmVzcG9uc2l2ZSA+IHAgPiBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uaW1nLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVkVSVElDQUwgJiBIT1JJWk9OVEFMIEFMSUdOXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5yLWFsaWduIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLmwtYWxpZ24ge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmgtYWxpZ24ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi52LWFsaWduLCAuZmVhdHVyZV9fY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4udmgtYWxpZ24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5yZWxhdGl2ZS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmgtMTAwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRURJVElPTiBNT0RFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5hZG1pbmltYWwtYWRtaW4tdG9vbGJhciAubWFpbi1oZWFkZXIge1xuICBoZWlnaHQ6IGNhbGMoNC44ZW0gKyAzOXB4KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5hZG1pbmltYWwtYWRtaW4tdG9vbGJhciAubWFpbi1oZWFkZXIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkuNGVtICsgMzlweCk7IH0gfVxuXG4uYWRtaW5pbWFsLWFkbWluLXRvb2xiYXIgLm5hdmlnYXRpb24ge1xuICB0b3A6IDM5cHg7IH1cblxuLmFkbWluaW1hbC1hZG1pbi10b29sYmFyLnRvb2xiYXItdHJheS1vcGVuIC5tYWluLWhlYWRlciB7XG4gIGhlaWdodDogY2FsYyg0LjhlbSArIDExOHB4KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5hZG1pbmltYWwtYWRtaW4tdG9vbGJhci50b29sYmFyLXRyYXktb3BlbiAubWFpbi1oZWFkZXIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkuNGVtICsgMTE4cHgpOyB9IH1cblxuLmFkbWluaW1hbC1hZG1pbi10b29sYmFyLnRvb2xiYXItdHJheS1vcGVuIC5uYXZpZ2F0aW9uIHtcbiAgdG9wOiAxMThweDsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRElTUExBWVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAuaGlkZGVuLXhzLXVwIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZGVuLXhzbC11cCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuaGlkZGVuLXNtLXVwIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAuaGlkZGVuLW1kLXVwIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAuaGlkZGVuLWxnLXVwIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5oaWRkZW4teHMtZG93biB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLmhpZGRlbi14c2wtZG93biB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkge1xuICAuaGlkZGVuLXNtLWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmhpZGRlbi1tZC1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQge1xuICAuaGlkZGVuLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmludmlzaWJsZS1wcmludCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgbm90IHByaW50IHtcbiAgLnZpc2libGUtcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi52aXNpYmxlLXNyLCAjZWRpdC1jb250YWN0LWJ5LWNvbnRhaW5lci1hdmFpbGFiaWxpdGllcyBsZWdlbmQsXG4uc2VsZWN0YWJpbGl0eS1vZmZzY3JlZW4ge1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KSAhaW1wb3J0YW50OyB9XG5cbi52aXNpYmxlLXNyLXdpdGgtbGF5b3V0IHtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgQU5DSE9SU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYW5jaG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0yZW07IH1cblxuLmFuY2hvci0tbGUtY2x1Yi1jb250ZXN0IHtcbiAgdG9wOiAtOGVtOyB9XG5cbi8qKlxuICogQ29tcG9uZW50c1xuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgR1JJRFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIE1vZGVybiBncmlkIHVzaW5nIGZsZXhib3hcbiAqL1xuLmdyaWQsXG4jdmlld3MtZXhwb3NlZC1mb3JtLWJyYW5jaGVzLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1sZWZ0OiAtNDBweDsgfVxuXG4uZ3JpZF9faXRlbSxcbiN2aWV3cy1leHBvc2VkLWZvcm0tYnJhbmNoZXMtbGlzdCAuZm9ybS1pdGVtLWZpZWxkLWJyYW5jaC1lci1kaXN0cmljdC10YXJnZXQtaWQsXG4jdmlld3MtZXhwb3NlZC1mb3JtLWJyYW5jaGVzLWxpc3QgLmZvcm0tZ3JvdXAtLWNoZWNrYm94LXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBhZGRpbmctbGVmdDogNDBweDsgfVxuXG4vKipcbiAgICogR3V0dGVycyBzaXplXG4gICAqL1xuLmdyaWQtLXRpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmdyaWQtLXRpZ2h0ID4gLmdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIC5ncmlkLS10aWdodCA+IC5ncmlkX19pdGVtICsgLmdyaWRfX2l0ZW0ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmdyaWQtLXRpbnkge1xuICBtYXJnaW4tbGVmdDogLTEycHg7IH1cbiAgLmdyaWQtLXRpbnkgPiAuZ3JpZF9faXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4OyB9XG5cbi5ncmlkLS1zbWFsbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMjRweDsgfVxuICAuZ3JpZC0tc21hbGwgPiAuZ3JpZF9faXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAyNHB4OyB9XG5cbi5ncmlkLS1sYXJnZSB7XG4gIG1hcmdpbi1sZWZ0OiAtNjRweDsgfVxuICAuZ3JpZC0tbGFyZ2UgPiAuZ3JpZF9faXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiA2NHB4OyB9XG5cbi5ncmlkLS1odWdlIHtcbiAgbWFyZ2luLWxlZnQ6IC0xMjlweDsgfVxuICAuZ3JpZC0taHVnZSA+IC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEyOXB4OyB9XG5cbi8qKlxuICAgKiBBbGlnbm1lbnRcbiAgICovXG4uZ3JpZC0tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmdyaWQtLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uZ3JpZC0tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uZ3JpZC0tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi8qKlxuICAgKiBPcmRlclxuICAgKi9cbi5ncmlkLS1yZXYge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmdyaWQtLWV2ZW4gPiAuZ3JpZF9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmdyaWQtLWV2ZW4gPiAuZ3JpZF9faXRlbSA+ICoge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG5cbi8qKlxuICAgKiBOb24gd2lkdGgtbGltaXRlZCBncmlkXG4gICAqL1xuLmdyaWQtLWZsZXggLmdyaWRfX2l0ZW0ge1xuICB3aWR0aDogYXV0bzsgfVxuXG4vKipcbiAqIEFkZCBzcGFjaW5nIGJldHdlZW4gcm93c1xuICovXG4uZ3JpZC0tbXVsdGlsaW5lIHtcbiAgbWFyZ2luLXRvcDogLTQwcHg7IH1cbiAgLmdyaWQtLW11bHRpbGluZSA+IC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDsgfVxuICAuZ3JpZC0tbXVsdGlsaW5lLmdyaWQtLXRpZ2h0IHtcbiAgICBtYXJnaW4tdG9wOiAtMDsgfVxuICAgIC5ncmlkLS1tdWx0aWxpbmUuZ3JpZC0tdGlnaHQgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAuZ3JpZC0tbXVsdGlsaW5lLmdyaWQtLXRpbnkge1xuICAgIG1hcmdpbi10b3A6IC0xMnB4OyB9XG4gICAgLmdyaWQtLW11bHRpbGluZS5ncmlkLS10aW55ID4gLmdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy10b3A6IDEycHg7IH1cbiAgLmdyaWQtLW11bHRpbGluZS5ncmlkLS1zbWFsbCB7XG4gICAgbWFyZ2luLXRvcDogLTI0cHg7IH1cbiAgICAuZ3JpZC0tbXVsdGlsaW5lLmdyaWQtLXNtYWxsID4gLmdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy10b3A6IDI0cHg7IH1cbiAgLmdyaWQtLW11bHRpbGluZS5ncmlkLS1sYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogLTY0cHg7IH1cbiAgICAuZ3JpZC0tbXVsdGlsaW5lLmdyaWQtLWxhcmdlID4gLmdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy10b3A6IDY0cHg7IH1cbiAgLmdyaWQtLW11bHRpbGluZS5ncmlkLS1odWdlIHtcbiAgICBtYXJnaW4tdG9wOiAtMTI5cHg7IH1cbiAgICAuZ3JpZC0tbXVsdGlsaW5lLmdyaWQtLWh1Z2UgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTI5cHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkge1xuICAuZ3JpZC0tcG9ydGFsLW5hdmlnYXRpb24ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBHUklEIFJFU1BPTlNJVkVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBHdXR0ZXIgU2l6ZXMgd2l0aCBtZWRpYSBxdWVyeVxuICovXG5AbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGctZ3JpZC0tZGVmYXVsdCB7XG4gICAgbWFyZ2luLWxlZnQ6IC00MHB4OyB9XG4gICAgLmxnLWdyaWQtLWRlZmF1bHQgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cbiAgICAubGctZ3JpZC0tZGVmYXVsdC5ncmlkLS1tdWx0aWxpbmUgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLXRvcDogNDBweDsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBXSURUSFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnctMVxcLzYge1xuICB3aWR0aDogMTYuNjY2NjclICFpbXBvcnRhbnQ7IH1cblxuLnctMVxcLzMge1xuICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7IH1cblxuLnctMVxcLzIge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7IH1cblxuLnctMlxcLzMge1xuICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7IH1cblxuLnctNVxcLzYge1xuICB3aWR0aDogODMuMzMzMzMlICFpbXBvcnRhbnQ7IH1cblxuLnctMVxcLzEge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi53LTFcXC81IHtcbiAgd2lkdGg6IDIwJSAhaW1wb3J0YW50OyB9XG5cbi53LTJcXC81IHtcbiAgd2lkdGg6IDQwJSAhaW1wb3J0YW50OyB9XG5cbi53LTNcXC81IHtcbiAgd2lkdGg6IDYwJSAhaW1wb3J0YW50OyB9XG5cbi53LTRcXC81IHtcbiAgd2lkdGg6IDgwJSAhaW1wb3J0YW50OyB9XG5cbi53LTFcXC80IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi53LTNcXC80IHtcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50OyB9XG5cbi53LWF1dG8ge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBXSURUSFMgUkVTUE9OU0lWRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAueHMtdy0xXFwvNiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JSAhaW1wb3J0YW50OyB9XG4gIC54cy13LTFcXC8zIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXctMVxcLzIge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuICAueHMtdy0yXFwvMyB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JSAhaW1wb3J0YW50OyB9XG4gIC54cy13LTVcXC82IHtcbiAgICB3aWR0aDogODMuMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXctMVxcLzEge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXctMVxcLzUge1xuICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDsgfVxuICAueHMtdy0yXFwvNSB7XG4gICAgd2lkdGg6IDQwJSAhaW1wb3J0YW50OyB9XG4gIC54cy13LTNcXC81IHtcbiAgICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7IH1cbiAgLnhzLXctNFxcLzUge1xuICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDsgfVxuICAueHMtdy0xXFwvNCB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG4gIC54cy13LTNcXC80IHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAueHNsLXctMVxcLzYge1xuICAgIHdpZHRoOiAxNi42NjY2NyUgIWltcG9ydGFudDsgfVxuICAueHNsLXctMVxcLzMge1xuICAgIHdpZHRoOiAzMy4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAueHNsLXctMVxcLzIge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuICAueHNsLXctMlxcLzMge1xuICAgIHdpZHRoOiA2Ni42NjY2NyUgIWltcG9ydGFudDsgfVxuICAueHNsLXctNVxcLzYge1xuICAgIHdpZHRoOiA4My4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAueHNsLXctMVxcLzEge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC13LTFcXC81IHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC13LTJcXC81IHtcbiAgICB3aWR0aDogNDAlICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC13LTNcXC81IHtcbiAgICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC13LTRcXC81IHtcbiAgICB3aWR0aDogODAlICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC13LTFcXC80IHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7IH1cbiAgLnhzbC13LTNcXC80IHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5zbS13LTFcXC82IHtcbiAgICB3aWR0aDogMTYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXctMVxcLzMge1xuICAgIHdpZHRoOiAzMy4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAuc20tdy0xXFwvMiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9XG4gIC5zbS13LTJcXC8zIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXctNVxcLzYge1xuICAgIHdpZHRoOiA4My4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAuc20tdy0xXFwvMSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAuc20tdy0xXFwvNSB7XG4gICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50OyB9XG4gIC5zbS13LTJcXC81IHtcbiAgICB3aWR0aDogNDAlICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXctM1xcLzUge1xuICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDsgfVxuICAuc20tdy00XFwvNSB7XG4gICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50OyB9XG4gIC5zbS13LTFcXC80IHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXctM1xcLzQge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5tZC13LTFcXC82IHtcbiAgICB3aWR0aDogMTYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXctMVxcLzMge1xuICAgIHdpZHRoOiAzMy4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAubWQtdy0xXFwvMiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9XG4gIC5tZC13LTJcXC8zIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXctNVxcLzYge1xuICAgIHdpZHRoOiA4My4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAubWQtdy0xXFwvMSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAubWQtdy0xXFwvNSB7XG4gICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50OyB9XG4gIC5tZC13LTJcXC81IHtcbiAgICB3aWR0aDogNDAlICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXctM1xcLzUge1xuICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDsgfVxuICAubWQtdy00XFwvNSB7XG4gICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50OyB9XG4gIC5tZC13LTFcXC80IHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXctM1xcLzQge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sZy13LTFcXC82IHtcbiAgICB3aWR0aDogMTYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXctMVxcLzMge1xuICAgIHdpZHRoOiAzMy4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAubGctdy0xXFwvMiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9XG4gIC5sZy13LTJcXC8zIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXctNVxcLzYge1xuICAgIHdpZHRoOiA4My4zMzMzMyUgIWltcG9ydGFudDsgfVxuICAubGctdy0xXFwvMSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAubGctdy0xXFwvNSB7XG4gICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50OyB9XG4gIC5sZy13LTJcXC81IHtcbiAgICB3aWR0aDogNDAlICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXctM1xcLzUge1xuICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDsgfVxuICAubGctdy00XFwvNSB7XG4gICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50OyB9XG4gIC5sZy13LTFcXC80IHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXctM1xcLzQge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC54cy13LWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAueHNsLXctYXV0byB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLnNtLXctYXV0byB7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5tZC13LWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGctdy1hdXRvIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50OyB9IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEVNQkVEIFJFU1BPTlNJVkVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmVtYmVkLXJlc3BvbnNpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmVtYmVkLXJlc3BvbnNpdmVfX2l0ZW0sXG4uZW1iZWQtcmVzcG9uc2l2ZSA+IGlmcmFtZSxcbi5lbWJlZC1yZXNwb25zaXZlID4gb2JqZWN0LFxuLmVtYmVkLXJlc3BvbnNpdmUgPiBlbWJlZCB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIGJvcmRlcjogMDsgfVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0tMTZcXC85IHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4uZW1iZWQtcmVzcG9uc2l2ZS0tNFxcLzMge1xuICBwYWRkaW5nLWJvdHRvbTogNzUlOyB9XG5cbi5lbWJlZC1yZXNwb25zaXZlLS0xXFwvMSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSU5LU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlLWluLW91dDsgfVxuICAubGluazpob3ZlciB7XG4gICAgY29sb3I6ICMxYjE5MWM7IH1cbiAgLmxpbms6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmxpbms6Zm9jdXM6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgzNywgMTQ5LCAyMTcsIDAuOCk7IH1cblxuLmxpbmtfX2ljb24ge1xuICB3aWR0aDogMS4yZW07XG4gIGhlaWdodDogMS4yZW07XG4gIG1hcmdpbi1yaWdodDogMC4yZW07XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjsgfVxuXG4vKipcbiAqIFZhcmlhbnRzXG4gKi9cbi5saW5rLS11bmRlcmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGNvbG9yOiAjNTA1MDUwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yOyB9XG5cbi5saW5rLS1uYWtlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ubGluay0tbmVnYXRpdmUge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlLWluLW91dDsgfVxuICAubGluay0tbmVnYXRpdmU6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuXG4ubGluay0tbmV1dHJhbCB7XG4gIGNvbG9yOiAjNTA1MDUwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyNTBtcyBlYXNlLWluLW91dDsgfVxuICAubGluay0tbmV1dHJhbDpob3ZlciB7XG4gICAgY29sb3I6ICMyNTk1ZDk7IH1cblxuQG1lZGlhIG5vdCBhbGwgYW5kIChwb2ludGVyOiBjb2Fyc2UpIHtcbiAgLmxpbmstLXBob25lIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfSB9XG5cbi5saW5rLS1vdmVyYWxsLFxuLmJveC0tY2xpY2thYmxlLW92ZXJhbGwgPiBhIHtcbiAgcG9zaXRpb246IHN0YXRpYzsgfVxuICAubGluay0tb3ZlcmFsbDo6YWZ0ZXIsXG4gIC5ib3gtLWNsaWNrYWJsZS1vdmVyYWxsID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5saW5rLS1vdmVyYWxsOmhvdmVyOjphZnRlcixcbiAgLmJveC0tY2xpY2thYmxlLW92ZXJhbGwgPiBhOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNDEsIDE0MCwgMTQxLCAwLjA1KTsgfVxuICAubGluay0tb3ZlcmFsbC1hY3RpdmU6OmFmdGVyLCAubGluay0tb3ZlcmFsbC1hY3RpdmU6aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM3LCAxNDksIDIxNywgMC4wNSk7IH1cblxuLyoqXG4gKiBTaXplc1xuICovXG4ubGluay0tc21hbGwge1xuICBmb250LXNpemU6IDAuNzVlbTsgfVxuXG4ubGluay0tbGFyZ2UsXG4udXNlci1hY2NvdW50X19saW5rIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRyZW07IH1cbiAgLmxpbmstLWxhcmdlIC5saW5rX19pY29uLFxuICAudXNlci1hY2NvdW50X19saW5rIC5saW5rX19pY29uIHtcbiAgICB3aWR0aDogMC45ZW07XG4gICAgaGVpZ2h0OiAwLjllbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMWVtO1xuICAgIHRvcDogMC4xZW07IH1cbiAgLmxpbmstLWxhcmdlIC5saW5rX19pY29uLS12LWFsaWduZWQsXG4gIC51c2VyLWFjY291bnRfX2xpbmsgLmxpbmtfX2ljb24tLXYtYWxpZ25lZCB7XG4gICAgbWFyZ2luLXRvcDogNC41cHg7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEJVVFRPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYnRuLFxuI3ZpZXdzLWV4cG9zZWQtZm9ybS1icmFuY2hlcy1saXN0IC5mb3JtLWl0ZW0tZmllbGQtYnJhbmNoLWVyLWRpc3RyaWN0LXRhcmdldC1pZCBzZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwLjg1NmVtIDEuMjVlbSAwLjc1ZW07XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjg1ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxYjE5MWM7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgLmJ0bjpmb2N1cyxcbiAgI3ZpZXdzLWV4cG9zZWQtZm9ybS1icmFuY2hlcy1saXN0IC5mb3JtLWl0ZW0tZmllbGQtYnJhbmNoLWVyLWRpc3RyaWN0LXRhcmdldC1pZCBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCByZ2JhKDM3LCAxNDksIDIxNywgMC44KTtcbiAgICBvdXRsaW5lLW9mZnNldDogMXB4OyB9XG4gIC5idG4gc3VwLFxuICAjdmlld3MtZXhwb3NlZC1mb3JtLWJyYW5jaGVzLWxpc3QgLmZvcm0taXRlbS1maWVsZC1icmFuY2gtZXItZGlzdHJpY3QtdGFyZ2V0LWlkIHNlbGVjdCBzdXAge1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTAuMzVlbTtcbiAgICBsZWZ0OiAtMC4xZW07IH1cblxuLmJ0bl9fdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAqIFZhcmlhbnRzXG4gKi9cbi5idG4tLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MS45Mzc1ZW0pIHtcbiAgLmJ0bi0tc20tYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5idG4tLWJhcmUge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5idG4tLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJ0bi0taWNvbiAuYnRuX19pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDEuMjc1ZW07XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLmJ0bi0taWNvbiAuYnRuX190ZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuODc1ZW07IH1cblxuLyoqXG4gKiBTdHlsZXNcbiAqL1xuLmJ0bi0tZGVmYXVsdCB7XG4gIGNvbG9yOiAjMWIxOTFjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLS1kZWZhdWx0OmhvdmVyLFxuICAuYm94LS1jbGlja2FibGU6aG92ZXIgLmJ0bi0tZGVmYXVsdCB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFiMTkxYzsgfVxuICAuYnRuLS1kZWZhdWx0OmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFiMTkxYzsgfVxuICAuYnRuLS1kZWZhdWx0OmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxOTFjOyB9XG4gIC5idG4tLWRlZmF1bHQuYnRuLS1hY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYjE5MWM7IH1cblxuLmJ0bi0tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxOTFjOyB9XG4gIC5idG4tLXByaW1hcnk6aG92ZXIsXG4gIC5ib3gtLWNsaWNrYWJsZTpob3ZlciAuYnRuLS1wcmltYXJ5IHtcbiAgICBjb2xvcjogIzFiMTkxYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLS1wcmltYXJ5OmFjdGl2ZSB7XG4gICAgY29sb3I6ICMxYjE5MWM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ0bi0tcHJpbWFyeTpmb2N1cyB7XG4gICAgY29sb3I6ICMxYjE5MWM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ0bi0tcHJpbWFyeS5idG4tLXNvbGlkLWJnOmhvdmVyLFxuICAuYm94LS1jbGlja2FibGU6aG92ZXIgLmJ0bi0tc29saWQtYmcuYnRuLS1wcmltYXJ5IHtcbiAgICBjb2xvcjogIzFiMTkxYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4OyB9XG4gIC5idG4tLXByaW1hcnkuYnRuLS1zb2xpZC1iZzpmb2N1cyB7XG4gICAgY29sb3I6ICMxYjE5MWM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODsgfVxuXG4uYnRuLS1wb3J0YWwge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1OTVkOTtcbiAgYm9yZGVyLWNvbG9yOiAjMjU5NWQ5OyB9XG4gIC5idG4tLXBvcnRhbDpob3ZlciB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFiMTkxYztcbiAgICBib3JkZXItY29sb3I6ICMxYjE5MWM7IH1cbiAgLmJ0bi0tcG9ydGFsOmFjdGl2ZSB7XG4gICAgY29sb3I6ICM4ZDhjOGQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE5Njg5NzsgfVxuICAuYnRuLS1wb3J0YWw6Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYjE5MWM7IH1cblxuLmJ0bi0tcG9ydGFsLW5hdmlnYXRpb24ge1xuICBmbG9hdDogbGVmdDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5idG4tLXBvcnRhbC1uYXZpZ2F0aW9uIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5idG4tLXBvcnRhbC1sZS1jbHViIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EyYWQyNDtcbiAgYm9yZGVyLWNvbG9yOiAjYTJhZDI0OyB9XG5cbi5idG4tLXRyYW5zcGFyZW50LW5lZ2F0aXZlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idG4tLXRyYW5zcGFyZW50LW5lZ2F0aXZlOmhvdmVyIHtcbiAgICBjb2xvcjogIzFiMTkxYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci1jb2xvcjogIzFiMTkxYzsgfVxuICAuYnRuLS10cmFuc3BhcmVudC1uZWdhdGl2ZTphY3RpdmUge1xuICAgIGNvbG9yOiAjMWIxOTFjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiAjMWIxOTFjOyB9XG4gIC5idG4tLXRyYW5zcGFyZW50LW5lZ2F0aXZlOmZvY3VzIHtcbiAgICBjb2xvcjogIzFiMTkxYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci1jb2xvcjogIzFiMTkxYzsgfVxuXG4uYnRuLS10cmFuc3BhcmVudCB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnRuLS10cmFuc3BhcmVudDpob3ZlciB7XG4gICAgY29sb3I6ICMxYjE5MWM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItY29sb3I6ICMxYjE5MWM7IH1cbiAgLmJ0bi0tdHJhbnNwYXJlbnQ6YWN0aXZlIHtcbiAgICBjb2xvcjogIzFiMTkxYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci1jb2xvcjogIzFiMTkxYzsgfVxuICAuYnRuLS10cmFuc3BhcmVudDpmb2N1cyB7XG4gICAgY29sb3I6ICMxYjE5MWM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItY29sb3I6ICMxYjE5MWM7IH1cblxuLmJ0bi0tcmVzZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJ0bi0tcmVzZXQgLmJ0bl9fdGV4dCB7XG4gICAgd2lkdGg6IDJlbTtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLmJ0bi0tcmVzZXQ6YmVmb3JlLCAuYnRuLS1yZXNldDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDM2JTtcbiAgICB3aWR0aDogMjYlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdHJhbnNpdGlvbjogNDAwbXMgYWxsIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQ6ICMxZDFkMWI7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIC5idG4tLXJlc2V0OmJlZm9yZSB7XG4gICAgdG9wOiA0NyU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDQ1ZGVnKTsgfVxuICAuYnRuLS1yZXNldDphZnRlciB7XG4gICAgYm90dG9tOiA0OCU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC00NWRlZyk7IH1cbiAgLmJ0bi0tcmVzZXQ6aG92ZXI6YmVmb3JlLCAuYnRuLS1yZXNldDpob3ZlcjphZnRlciwgLmJ0bi0tcmVzZXQ6Zm9jdXM6YmVmb3JlLCAuYnRuLS1yZXNldDpmb2N1czphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLyoqXG4gKiBTdGF0ZXNcbiAqL1xuLmJ0bi0tZGlzYWJsZWQsXG4uYnRuW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4vKipcbiAqIFNpemVzXG4gKi9cbi5idG4tLXNtYWxsIHtcbiAgcGFkZGluZzogMC43NTZlbSAwLjg1ZW0gMC42ZW07XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBib3JkZXItcmFkaXVzOiAzcHg7IH1cblxuLmJ0bi0tbGFyZ2Uge1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICBwYWRkaW5nOiAwLjg1NmVtIDEuNGVtIDAuNzVlbTtcbiAgZm9udC1zaXplOiAwLjk1ZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG4uYnRuLS1jbG9zZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIHBhZGRpbmc6IDA7XG4gIGhlaWdodDogMS4xZW07XG4gIHdpZHRoOiAxLjJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMjU5NWQ5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5idG4tLWNsb3NlLnB1bGwtcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuM2VtO1xuICAgIHJpZ2h0OiAwLjJlbTsgfVxuICAuYnRuLS1jbG9zZTpob3ZlciB7XG4gICAgY29sb3I6ICM1MDUwNTA7IH1cblxuLmJ0bi0tc2hhcnAge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5idG4tLXBhcnR5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDUxMnB4O1xuICBoZWlnaHQ6IDM1MHB4O1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDIwJSk7IH1cblxuLmJ0bi0tdGlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDhweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QwZDBkMDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMXB4IDAgMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlLWluLW91dDtcbiAgZm9udC1zaXplOiAxZW07IH1cbiAgLmJ0bi0tdGlsZTpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci13aWR0aDogMXB4IDAgMCAwOyB9XG4gIC5idG4tLXRpbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7IH1cbiAgLmJ0bi0tdGlsZTpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkIHJnYmEoMzcsIDE0OSwgMjE3LCAwLjgpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAxcHg7IH1cbiAgLmJ0bi0tdGlsZSAuYnRuX19pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbjogMC4xMGVtIDAuMTJlbSAwLjE0ZW0gMC4xMmVtO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBjb2xvcjogIzUwNTA1MDsgfVxuICAuYnRuLS10aWxlIC5idG5fX3RleHQge1xuICAgIHBhZGRpbmc6IDAuMmVtIDAgMC40ZW07XG4gICAgY29sb3I6ICM1MDUwNTA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMC41NWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5idG4tLXRpbGUtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgICAuYnRuLS10aWxlLWhvcml6b250YWwgLmJ0bl9faWNvbiB7XG4gICAgICAgIG1hcmdpbjogMCAwLjNlbSAwLjJlbTsgfVxuICAgICAgLmJ0bi0tdGlsZS1ob3Jpem9udGFsIC5idG5fX3RleHQge1xuICAgICAgICBwYWRkaW5nOiAwLjNlbSAwIDAuM2VtO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEJPWFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYm94IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYm94ID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5ib3ggPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYm94LFxuICAuYm94ICoge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uYm94X19ib2R5ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ib3hfX2J0biB7XG4gIG1hcmdpbi10b3A6IDI1cHg7IH1cblxuLyoqXG4gKiBWYXJpYW50c1xuICovXG4uYm94LS1jbGlja2FibGUge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gIGJveC1zaGFkb3c6IDAgMC4zcmVtIDAuM3JlbSB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5ib3gtLWNsaWNrYWJsZTpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjNyZW0pO1xuICAgIGJveC1zaGFkb3c6IDAgMC4zcmVtIDAuM3JlbSByZ2JhKDI3LCAyNSwgMjgsIDAuMSk7IH1cbiAgICAuYm94LS1jbGlja2FibGU6aG92ZXIgLmJ0biB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIC5ib3gtLWNsaWNrYWJsZTpob3ZlciAuYnRuOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMXJlbSk7IH1cbiAgLmJveC0tY2xpY2thYmxlLmJveC0tZGVmYXVsdDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODsgfVxuICAuYm94LS1jbGlja2FibGUuYm94LS1wcmltYXJ5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU5NWQ5O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5ib3gtLWNsaWNrYWJsZTphY3RpdmUge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMG1zIGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4xNXJlbSk7IH1cbiAgLmJveC0tY2xpY2thYmxlOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgcmdiYSgzNywgMTQ5LCAyMTcsIDAuOCk7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDFweDsgfVxuXG4uYm94LS1jbGlja2FibGUtb3ZlcmFsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uYm94LS1jbGlja2FibGUtbm8tdHJhbnNmb3JtOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBib3gtc2hhZG93OiBub25lOyB9XG5cbi5ib3gtLWV2ZW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiBpbmhlcml0O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5ib3gtLWV2ZW4gLmJveF9fYnRuIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ib3gtLXdpdGgtaWNvbiAuYm94X19ib2R5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYm94LS13aXRoLWljb24gLmJveF9fdGV4dCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG4gIC5ib3gtLXdpdGgtaWNvbiAuYm94X190ZXh0IHAge1xuICAgIG1hcmdpbjogMDsgfVxuXG4uYm94LS13aXRoLWljb24gLmJveF9faWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAzOXB4OyB9XG4gIC5ib3gtLXdpdGgtaWNvbiAuYm94X19pY29uIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBoZWlnaHQ6IDM5cHg7IH1cblxuLmJveC0td2l0aC1pY29uIC5ib3hfX2J0biB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuYm94LS13aXRoLWljb24gLmJveF9faWNvbiB7XG4gICAgd2lkdGg6IDQ4cHg7IH1cbiAgICAuYm94LS13aXRoLWljb24gLmJveF9faWNvbiBzdmcge1xuICAgICAgaGVpZ2h0OiA0OHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmJveC0td2l0aC1pY29uIC5ib3hfX2JvZHkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAuYm94LS13aXRoLWljb24gLmJveF9faWNvbiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogNjBweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMjVweDsgfVxuICAgIC5ib3gtLXdpdGgtaWNvbiAuYm94X19pY29uIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgaGVpZ2h0OiA2MHB4OyB9XG4gIC5ib3gtLXdpdGgtaWNvbiAuYm94X19idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbi5ib3gtLXdpdGgtZm9vdGVyIC5ib3hfX2JvZHksXG4uYm94LS13aXRoLWZvb3RlciAuYm94X19ib2R5IHtcbiAgcGFkZGluZzogMjVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5ib3gtLXdpdGgtZm9vdGVyIC5ib3hfX2Zvb3Rlcixcbi5ib3gtLXdpdGgtZm9vdGVyIC5ib3hfX2Zvb3RlciB7XG4gIHBhZGRpbmc6IDE2cHggMjVweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMGQwZDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uYm94LS13aXRoLWZvb3Rlci10aWxlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmJveC0td2l0aC1mb290ZXItdGlsZXMgLmJveF9fYm9keSB7XG4gICAgcGFkZGluZzogMjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJveC0td2l0aC1mb290ZXItdGlsZXMgLmJveF9fZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJveC0td2l0aC1pbWFnZSAuYm94X19pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGNhbGMoIDEwMCUgKyAyNXB4ICogMik7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAtMjVweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uYm94LS13aXRoLWltYWdlIC5ib3hfX2ltZ19fYmcge1xuICBwYWRkaW5nLWJvdHRvbTogNjMlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG5cbi5ib3gtLXdpdGgtaW1hZ2UuYm94LS10aWdodCAuYm94X19pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5ib3gtLXdpdGgtaW1hZ2UuYm94LS10aW55IC5ib3hfX2ltZyB7XG4gIHdpZHRoOiBjYWxjKCAxMDAlICsgOHB4ICogMik7XG4gIG1hcmdpbjogLThweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG5cbi5ib3gtLXdpdGgtaW1hZ2UuYm94LS1zbWFsbCAuYm94X19pbWcge1xuICB3aWR0aDogY2FsYyggMTAwJSArIDE2cHggKiAyKTtcbiAgbWFyZ2luOiAtMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuXG4uYm94LS13aXRoLWltYWdlLmJveC0tbGFyZ2UgLmJveF9faW1nIHtcbiAgd2lkdGg6IGNhbGMoIDEwMCUgKyAzN3B4ICogMik7XG4gIG1hcmdpbjogLTM3cHg7XG4gIG1hcmdpbi1ib3R0b206IDM3cHg7IH1cblxuLmJveC0td2l0aC1pbWFnZS5ib3gtLWh1Z2UgLmJveF9faW1nIHtcbiAgd2lkdGg6IGNhbGMoIDEwMCUgKyA3NXB4ICogMik7XG4gIG1hcmdpbjogLTc1cHg7XG4gIG1hcmdpbi1ib3R0b206IDc1cHg7IH1cblxuLmJveC0tc3RlcHBlZCB7XG4gIG1pbi1oZWlnaHQ6IDVyZW07XG4gIHBhZGRpbmc6IDE2cHg7IH1cbiAgLmJveC0tc3RlcHBlZCAuYm94X19ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5ib3gtLXN0ZXBwZWQgLmJveF9fdGV4dCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtOyB9XG4gICAgLmJveC0tc3RlcHBlZCAuYm94X190ZXh0IHAge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLmJveC0tc3RlcHBlZCAuYm94X19idG4ge1xuICAgICAgcGFkZGluZy1yaWdodDogNHJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmJveC0tc3RlcHBlZCAuYm94X19idG4ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gIC5ib3gtLXN0ZXBwZWQgLmJveF9fc3RlcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGZvbnQtc2l6ZTogNjRweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogI2VjZWNlYzsgfVxuICAgIC5ib3gtLXN0ZXBwZWQgLmJveF9fc3RlcCBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTVweDtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuYm94LS1zdGVwcGVkIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDguNXJlbTtcbiAgICAgIHBhZGRpbmc6IDI1cHg7IH1cbiAgICAgIC5ib3gtLXN0ZXBwZWQgLmJveF9fdGV4dCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNC43cmVtOyB9XG4gICAgICAuYm94LS1zdGVwcGVkIC5ib3hfX3N0ZXAge1xuICAgICAgICBmb250LXNpemU6IDEyMHB4OyB9XG4gICAgICAgIC5ib3gtLXN0ZXBwZWQgLmJveF9fc3RlcCBzcGFuIHtcbiAgICAgICAgICB0b3A6IC0xMnB4OyB9IH1cblxuLmJveC0tc3RlcHBlZC1pbmFjdGl2ZSwgLmJveC0tc3RlcHBlZC12YWxpZGF0ZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJveC0tc3RlcHBlZC1pbmFjdGl2ZTo6YWZ0ZXIsIC5ib3gtLXN0ZXBwZWQtdmFsaWRhdGVkOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjUwLCAyNTUsIDI1MCwgMC41KTsgfVxuXG4uYm94LS1zdGVwcGVkLXZhbGlkYXRlZDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEyOCwgMCwgMC4xKTsgfVxuXG4uYm94LS1zdGVwcGVkLXZhbGlkYXRlZDo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IDJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMjVweDtcbiAgYm90dG9tOiAyNXB4O1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9jaGVjay1uZWdhdGl2ZS5zdmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDFlbSAxZW07XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi8qKlxuICogU3BhY2luZ3NcbiAqL1xuLmJveC0tdGlnaHQsXG4uYm94LS13aXRoLWZvb3Rlcixcbi5ib3gtLXdpdGgtZm9vdGVyLXRpbGVzIHtcbiAgcGFkZGluZzogMDsgfVxuXG4uYm94LS10aW55IHtcbiAgcGFkZGluZzogOHB4OyB9XG5cbi5ib3gtLXNtYWxsIHtcbiAgcGFkZGluZzogMTZweDsgfVxuXG4uYm94LS1sYXJnZSB7XG4gIHBhZGRpbmc6IDM3cHg7IH1cblxuLmJveC0taHVnZSB7XG4gIHBhZGRpbmc6IDc1cHg7IH1cblxuLyoqXG4gKiBTdHlsZXNcbiAqL1xuLmJveC0tZGVmYXVsdCxcbi5ib3gtLXVuZGVybGluZWQge1xuICBjb2xvcjogIzUwNTA1MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QwZDBkMDsgfVxuXG4uYm94LS1wcmltYXJ5LFxuLmJveC0taGVybyxcbi5ib3gtLXBoeWxhY3Rlcnkge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNywgMTQ5LCAyMTcsIDAuOSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuYm94LS1wcmltYXJ5LFxuICAgIC5ib3gtLWhlcm8sXG4gICAgLmJveC0tcGh5bGFjdGVyeSB7XG4gICAgICBwYWRkaW5nOiAzN3B4OyB9IH1cblxuLmJveC0tdW5kZXJsaW5lZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICBib3JkZXItbGVmdDogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5ib3gtLWhlcm8sXG4gIC5ib3gtLXBoeWxhY3Rlcnkge1xuICAgIG1pbi1oZWlnaHQ6IDMwMHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmJveC0taGVybyxcbiAgLmJveC0tcGh5bGFjdGVyeSB7XG4gICAgbWluLWhlaWdodDogMzgwcHg7IH0gfVxuXG4uYm94LS1oZXJvOmhvdmVyLFxuLmJveC0tcGh5bGFjdGVyeTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5ib3gtLWhlcm8gLmJveF9fdGl0bGUsXG4uYm94LS1waHlsYWN0ZXJ5IC5ib3hfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjM3NWVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmJveC0taGVybyAuYm94X190aXRsZSxcbiAgICAuYm94LS1waHlsYWN0ZXJ5IC5ib3hfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygwLjk2NTYxdncgKyAxLjA4NTMyZW0pOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYm94LS1oZXJvIC5ib3hfX3RpdGxlLFxuICAgIC5ib3gtLXBoeWxhY3RlcnkgLmJveF9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjgwOTUyZW07IH0gfVxuXG4uYm94LS1oZXJvIC5ib3hfX3N1YnRpdGxlLFxuLmJveC0tcGh5bGFjdGVyeSAuYm94X19zdWJ0aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAwNWVtOyB9XG5cbi5ib3gtLWxhc3Qge1xuICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cblxuLmJveC0taGlnaGxpZ2h0ZWQge1xuICBib3gtc2hhZG93OiAwIDAuM3JlbSAwLjNyZW0gcmdiYSgyNywgMjUsIDI4LCAwLjEpO1xuICBvdXRsaW5lOiAycHggc29saWQgIzI1OTVkOTsgfVxuXG4uYm94LS1sZS1jbHViLFxuLmJveC0tbGUtY2x1Yi1oZXJvIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuYm94LS1sZS1jbHViIC5ib3hfX292ZXJsYXktdGl0bGUsXG4gIC5ib3gtLWxlLWNsdWItaGVybyAuYm94X19vdmVybGF5LXRpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICBtYXJnaW4tdG9wOiAtM2VtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNjIsIDE3MywgMzYsIDAuOSk7XG4gICAgZm9udC1mYW1pbHk6ICdDb29raWUnO1xuICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYm94LS1sZS1jbHViLmJveC0tdGlnaHQgLmJveF9fb3ZlcmxheS10aXRsZSxcbiAgLmJveC0tdGlnaHQuYm94LS1sZS1jbHViLWhlcm8gLmJveF9fb3ZlcmxheS10aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmJveC0tbGUtY2x1Yi5ib3gtLXRpbnkgLmJveF9fb3ZlcmxheS10aXRsZSxcbiAgLmJveC0tdGlueS5ib3gtLWxlLWNsdWItaGVybyAuYm94X19vdmVybGF5LXRpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4cHg7IH1cbiAgLmJveC0tbGUtY2x1Yi5ib3gtLXNtYWxsIC5ib3hfX292ZXJsYXktdGl0bGUsXG4gIC5ib3gtLXNtYWxsLmJveC0tbGUtY2x1Yi1oZXJvIC5ib3hfX292ZXJsYXktdGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG4gIC5ib3gtLWxlLWNsdWIuYm94LS1sYXJnZSAuYm94X19vdmVybGF5LXRpdGxlLFxuICAuYm94LS1sYXJnZS5ib3gtLWxlLWNsdWItaGVybyAuYm94X19vdmVybGF5LXRpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDM3cHg7XG4gICAgcGFkZGluZy1yaWdodDogMzdweDsgfVxuICAuYm94LS1sZS1jbHViLmJveC0taHVnZSAuYm94X19vdmVybGF5LXRpdGxlLFxuICAuYm94LS1odWdlLmJveC0tbGUtY2x1Yi1oZXJvIC5ib3hfX292ZXJsYXktdGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogNzVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3NXB4OyB9XG4gIC5ib3gtLWxlLWNsdWI6Zm9jdXMsXG4gIC5ib3gtLWxlLWNsdWIgLmJ0bjpmb2N1cyxcbiAgLmJveC0tbGUtY2x1Yi1oZXJvOmZvY3VzLFxuICAuYm94LS1sZS1jbHViLWhlcm8gLmJ0bjpmb2N1cyB7XG4gICAgb3V0bGluZS1jb2xvcjogI2EyYWQyNDsgfVxuICAuYm94LS1sZS1jbHViIC5ib3hfX2ltZ19fYmcsXG4gIC5ib3gtLWxlLWNsdWItaGVybyAuYm94X19pbWdfX2JnIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjMlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG5cbi5ib3gtLWxlLWNsdWItaGVybyB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNjIsIDE3MywgMzYsIDAuOSk7IH1cbiAgLmJveC0tbGUtY2x1Yi1oZXJvLmJveC0tY2xpY2thYmxlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTJhZDI0OyB9XG4gIC5ib3gtLWxlLWNsdWItaGVybyAuYm94X19pbWdfX2JnIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDUuNDUlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5ib3gtLWxlLWNsdWItaGVybyBoMyB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5ib3gtLWxlLWNsdWItaGVybyBwLFxuICAubGUtY2x1YiAuYm94LS1sZS1jbHViLWhlcm8gLmNvdW50ZG93biB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmJveC0tcGh5bGFjdGVyeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYm94LS1waHlsYWN0ZXJ5OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgYm90dG9tOiAtNDBweDtcbiAgICBib3JkZXItdG9wOiA0MHB4IHNvbGlkIHJnYmEoMzcsIDE0OSwgMjE3LCAwLjkpO1xuICAgIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLmJveC0tcGh5bGFjdGVyeTphZnRlciB7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgICBsZWZ0OiAtNDBweDtcbiAgICAgIGJvcmRlci10b3A6IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDQwcHggc29saWQgcmdiYSgzNywgMTQ5LCAyMTcsIDAuOSk7XG4gICAgICBib3JkZXItYm90dG9tOiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7IH0gfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgSUNPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbi5pY29uLS1zbWFsbCB7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtOyB9XG5cbi5pY29uLS1taWQtc21hbGwge1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IDJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5pY29uLS1kZWZhdWx0IHtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDsgfVxuXG4uaWNvbi0tbWVkaXVtIHtcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogNDhweDsgfVxuXG4uaWNvbi0tbGFyZ2Uge1xuICB3aWR0aDogNjdweDtcbiAgaGVpZ2h0OiA2N3B4OyB9XG5cbi5pY29uLS1odWdlIHtcbiAgd2lkdGg6IDIzMHB4O1xuICBoZWlnaHQ6IDIzMHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmljb24tLXByaW1hcnkge1xuICBmaWxsOiAjMjU5NWQ5OyB9XG5cbi5pY29uLS1zaGFkb3ctZGVuc2Uge1xuICBmaWxsOiAjMTk2ODk3OyB9XG5cbi5pY29uLS1saWdodCB7XG4gIGZpbGw6ICM4ZDhjOGQ7IH1cblxuLmljb24tLXRvb2x0aXAge1xuICBmaWxsOiAjNTA1MDUwO1xuICB0cmFuc2l0aW9uOiBmaWxsIDMwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5pY29uLS10b29sdGlwOmhvdmVyIHtcbiAgICBmaWxsOiAjMjU5NWQ5O1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uc3Ryb2tlLS1yZWd1bGFyIHtcbiAgc3Ryb2tlLXdpZHRoOiAwcHg7IH1cblxuLnN0cm9rZS0tbWVkaXVtIHtcbiAgc3Ryb2tlOiBjdXJyZW50Q29sb3I7XG4gIHN0cm9rZS13aWR0aDogMC4zcHg7IH1cblxuLnN0cm9rZS0tYm9sZCB7XG4gIHN0cm9rZTogY3VycmVudENvbG9yO1xuICBzdHJva2Utd2lkdGg6IDAuNnB4OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBUSEUgTUVESUEgT0JKRUNUXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tZWRpYSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tZWRpYV9fbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cblxuLm1lZGlhX19yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLm1lZGlhX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tZWRpYV9fYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tZWRpYV9fYm9keSA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAubWVkaWFfX2JvZHkgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubWVkaWEtLWNsaWNrYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubWVkaWEtLWNsaWNrYWJsZS12aWRlby10aHVtYiAubWVkaWFfX2xlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IC0xO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI3LCAyNSwgMjgsIDAuMyk7XG4gIGJveC1zaGFkb3c6IHJnYmEoMjcsIDI1LCAyOCwgMC4zKSAwIDJweCAycHggMHB4O1xuICB0cmFuc2l0aW9uOiAwLjZzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7IH1cblxuLm1lZGlhLS1jbGlja2FibGUtdmlkZW8tdGh1bWI6aG92ZXIgLm1lZGlhX19sZWZ0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTUVESUEgUkVTUE9OU0lWRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgKG1heC13aWR0aDogNjEuOTM3NWVtKSB7XG4gIC5tZWRpYS0tcmVzcG9uc2l2ZSAubWVkaWFfX2xlZnQsXG4gIC5tZWRpYS0tcmVzcG9uc2l2ZSAubWVkaWFfX3JpZ2h0IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaWEtLXJlc3BvbnNpdmUgLm1lZGlhX19pbWFnZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBDT05UQUlORVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmNvbnRhaW5lcixcbi5hZmZpeCAubmF2X19jb250YWluZXIsXG4ubmF2LXdyYXBwZXItLXN0aWNreSAubmF2X19jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA3NjhweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmNvbnRhaW5lcixcbiAgICAuYWZmaXggLm5hdl9fY29udGFpbmVyLFxuICAgIC5uYXYtd3JhcHBlci0tc3RpY2t5IC5uYXZfX2NvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuY29udGFpbmVyLFxuICAgIC5hZmZpeCAubmF2X19jb250YWluZXIsXG4gICAgLm5hdi13cmFwcGVyLS1zdGlja3kgLm5hdl9fY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMTE2MHB4OyB9IH1cblxuLmNvbnRhaW5lci0tbGFyZ2Uge1xuICBtYXgtd2lkdGg6IDE0MjBweDsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgU0VDVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uc2VjdGlvbixcbi5mb290ZXIsXG4ubWFpbi10ZWFzZXIge1xuICBwYWRkaW5nLXRvcDogNDVweDtcbiAgcGFkZGluZy1ib3R0b206IDQ1cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuc2VjdGlvbixcbiAgICAuZm9vdGVyLFxuICAgIC5tYWluLXRlYXNlciB7XG4gICAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5MHB4OyB9IH1cbiAgLnNlY3Rpb24gLnNlY3Rpb24sXG4gIC5zZWN0aW9uIC5zZWN0aW9uIC5jb250YWluZXIsXG4gIC5mb290ZXIgLnNlY3Rpb24sXG4gIC5tYWluLXRlYXNlciAuc2VjdGlvbixcbiAgLmZvb3RlciAuc2VjdGlvbiAuY29udGFpbmVyLFxuICAubWFpbi10ZWFzZXIgLnNlY3Rpb24gLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIFNwYWNpbmdzXG4gKi9cbi5zZWN0aW9uLS1zbWFsbCxcbi5tYWluLXRlYXNlciB7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5zZWN0aW9uLS1zbWFsbCxcbiAgICAubWFpbi10ZWFzZXIge1xuICAgICAgcGFkZGluZy10b3A6IDcwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDsgfSB9XG5cbi5zZWN0aW9uLS1odWdlIHtcbiAgcGFkZGluZy10b3A6IDUzcHg7XG4gIHBhZGRpbmctYm90dG9tOiA1M3B4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLnNlY3Rpb24tLWh1Z2Uge1xuICAgICAgcGFkZGluZy10b3A6IDEwNnB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwNnB4OyB9IH1cblxuLyoqXG4gKiBWYXJpYW50c1xuICovXG4uc2VjdGlvbi0tb3V0Ym91bmQge1xuICB3aWR0aDogY2FsYygxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlO1xuICByaWdodDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTUwdnc7XG4gIG1hcmdpbi1yaWdodDogLTUwdnc7IH1cblxuLnNlY3Rpb24tLWhpZ2hsaWdodCxcbi5tYWluLXRlYXNlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU5NWQ5OyB9XG5cbi5zZWN0aW9uLS1oaWdobGlnaHQtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTNmMWZhOyB9XG5cbi5zZWN0aW9uLS1saWdodGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODsgfVxuXG4uc2VjdGlvbi0tbGlnaHRlc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbi5zZWN0aW9uLS1kYXJrIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjE5MWM7IH1cblxuLnNlY3Rpb24tLWxlLWNsdWIge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EyYWQyNDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2JhY2tncm91bmRzL3NlY3Rpb24tbGUtY2x1Yi5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgYm90dG9tOyB9XG5cbi5zZWN0aW9uLS1oZXhhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2JhY2tncm91bmRzL3NlY3Rpb24taGV4YS5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtc2l6ZTogNzBweCA4MHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2YzZjJmMztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmM2YyZjM7IH1cbiAgLnNlY3Rpb24tLWhleGEgKyAuc2VjdGlvbi0taGV4YSB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4uc2VjdGlvbi0taGV4YS1saWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9zZWN0aW9uLWhleGEtbGlnaHQuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmMmYzO1xuICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggODBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmM2YyZjM7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjNmMmYzOyB9XG4gIC5zZWN0aW9uLS1oZXhhLWxpZ2h0ICsgLnNlY3Rpb24tLWhleGEtbGlnaHQge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLnNlY3Rpb24tLWhleGEtZGFyayB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1oZXhhLWRhcmsuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWIxOTFjO1xuICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggODBweDsgfVxuICAuc2VjdGlvbi0taGV4YS1kYXJrICsgLnNlY3Rpb24tLWhleGEtZGFyayB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4uc2VjdGlvbi0taGFsZnRvbmUsXG4uaGVyby0tZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9zZWN0aW9uLWhhbGZ0b25lLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdDsgfVxuICAuc2VjdGlvbi0taGFsZnRvbmUgKyAuc2VjdGlvbi0taGFsZnRvbmUsXG4gIC5oZXJvLS1kZWZhdWx0ICsgLnNlY3Rpb24tLWhhbGZ0b25lLCAuc2VjdGlvbi0taGFsZnRvbmUgKyAuaGVyby0tZGVmYXVsdCxcbiAgLmhlcm8tLWRlZmF1bHQgKyAuaGVyby0tZGVmYXVsdCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4uc2VjdGlvbi0taGFsZnRvbmUtZGVuc2Uge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1oYWxmdG9uZS1kZW5zZS5wbmdcIik7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWU5ZTk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7IH1cbiAgLnNlY3Rpb24tLWhhbGZ0b25lLWRlbnNlICsgLnNlY3Rpb24tLWhhbGZ0b25lLWRlbnNlIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG5cbi5zZWN0aW9uLS11cHBlci1saW5lZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDBkMGQwOyB9XG5cbi5zZWN0aW9uLS1oYWxmdG9uZS1mYWNldHMge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2JhY2tncm91bmRzL3NlY3Rpb24tZmFjZXRzLnN2Z1wiKSwgdXJsKFwiLi4vaW1hZ2VzL2JhY2tncm91bmRzL3NlY3Rpb24taGFsZnRvbmUucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tLCBsZWZ0IHRvcDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluLCA0MDBweCA0MDBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdCwgcmVwZWF0OyB9XG5cbi5zZWN0aW9uLS1mYWNldHMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1mYWNldHMuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNQUdORVRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1hZ25ldCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogODB2dzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5tYWduZXQge1xuICAgICAgbWF4LXdpZHRoOiA2MHZ3OyB9IH1cblxuLm1hZ25ldF9faWNvbiB7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDRyZW07XG4gIG1heC13aWR0aDogMzAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogLTJyZW07XG4gIGxlZnQ6IDIwJTtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjsgfVxuXG4ubWFnbmV0X19pbWFnZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm94LXNoYWRvdzogM3B4IDNweCA1cHggcmdiYSgyNywgMjUsIDI4LCAwLjMpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAzMCUgLTFyZW07XG4gIHRyYW5zZm9ybTogcm90YXRlKC0yZGVnKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5tYWduZXRfX2ltYWdlOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAubWFnbmV0X19pbWFnZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5tYWduZXRfX292ZXJsYXktdGl0bGUge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIG1hcmdpbi10b3A6IC0yLjVlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM3LCAxNDksIDIxNywgMC45KTtcbiAgZm9udC1mYW1pbHk6ICdDb29raWUnO1xuICBmb250LXNpemU6IDEuNGVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4vKipcbiAqIFN0eWxlc1xuICovXG4ubWFnbmV0LS1wcmltYXJ5IHtcbiAgY29sb3I6ICMyNTk1ZDk7IH1cblxuLm1hZ25ldC0tbGUtY2x1YiB7XG4gIGNvbG9yOiAjYTJhZDI0OyB9XG4gIC5tYWduZXQtLWxlLWNsdWIgLm1hZ25ldF9fb3ZlcmxheS10aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNjIsIDE3MywgMzYsIDAuOSk7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIExJU1RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpc3QsXG4ubGlzdC1zdGFja2VkLFxuLnd5c2l3eWcgdWwsXG4ud3lzaXd5Zy0tbGUtY2x1YiB1bCxcbi5saXN0LS1pY29uLFxuLmZvb3Rlcl9fbmF2aWdhdGlvbiB1bCxcbi5saXN0LWlubGluZSxcbi5saXN0LXRlYXNlZCxcbi5saXN0LWNvbXBhY3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmxpc3QtLXByaW1hcnksXG4ud3lzaXd5ZyB1bCB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuICAubGlzdC0tcHJpbWFyeSBsaSxcbiAgLnd5c2l3eWcgdWwgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAubGlzdC0tcHJpbWFyeSBsaTpiZWZvcmUsXG4gICAgLnd5c2l3eWcgdWwgbGk6YmVmb3JlIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA5cHg7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMC43O1xuICAgICAgY29udGVudDogJ+KAoic7XG4gICAgICBjb2xvcjogIzI1OTVkOTsgfVxuXG4ubGlzdC0tbGUtY2x1Yixcbi53eXNpd3lnLS1sZS1jbHViIHVsIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5saXN0LS1sZS1jbHViIGxpLFxuICAud3lzaXd5Zy0tbGUtY2x1YiB1bCBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtOyB9XG4gICAgLmxpc3QtLWxlLWNsdWIgbGk6YmVmb3JlLFxuICAgIC53eXNpd3lnLS1sZS1jbHViIHVsIGxpOmJlZm9yZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogOXB4O1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDAuNztcbiAgICAgIGNvbnRlbnQ6ICfigKInO1xuICAgICAgY29sb3I6ICNhMmFkMjQ7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIExJU1QgU1RBQ0tFRFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubGlzdC1zdGFja2VkID4gbGksXG4ud3lzaXd5ZyB1bCA+IGxpLFxuLnd5c2l3eWctLWxlLWNsdWIgdWwgPiBsaSB7XG4gIHBhZGRpbmc6IDE1cHggMDsgfVxuICAubGlzdC1zdGFja2VkID4gbGk6Zmlyc3QtY2hpbGQsXG4gIC53eXNpd3lnIHVsID4gbGk6Zmlyc3QtY2hpbGQsXG4gIC53eXNpd3lnLS1sZS1jbHViIHVsID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5saXN0LXN0YWNrZWQgPiBsaTpsYXN0LWNoaWxkLFxuICAud3lzaXd5ZyB1bCA+IGxpOmxhc3QtY2hpbGQsXG4gIC53eXNpd3lnLS1sZS1jbHViIHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLmxpc3Qtc3RhY2tlZC0tZGl2aWRlZCA+IGxpICsgbGkge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZmZmZmZjsgfVxuXG4vKipcbiAgICogU2l6ZXNcbiAgICovXG4ubGlzdC1zdGFja2VkLS10aWdodCA+IGxpIHtcbiAgcGFkZGluZzogMDsgfVxuXG4ubGlzdC1zdGFja2VkLS10aW55ID4gbGkge1xuICBwYWRkaW5nOiA0LjVweCAwOyB9XG5cbi5saXN0LXN0YWNrZWQtLXNtYWxsID4gbGkge1xuICBwYWRkaW5nOiA5cHggMDsgfVxuXG4ubGlzdC1zdGFja2VkLS1sYXJnZSA+IGxpIHtcbiAgcGFkZGluZzogMjRweCAwOyB9XG5cbi5saXN0LXN0YWNrZWQtLWh1Z2UgPiBsaSB7XG4gIHBhZGRpbmc6IDQ4LjVweCAwOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSVNUIElDT05TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5saXN0LS1pY29uID4gbGkge1xuICBkaXNwbGF5OiB0YWJsZTsgfVxuXG4ubGlzdC0taWNvbiAubGlzdF9faWNvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cblxuLmxpc3QtLWljb24gLmxpc3RfX2NvbnRlbnQge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG5cbi5saXN0LS1jaGVja21hcmsgbGksXG4ubGlzdC0tY2hlY2ttYXJrLW5lZ2F0aXZlIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjZlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvY2hlY2suc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEuMmVtIDEuMmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAuNGVtOyB9XG5cbi5saXN0LS1jaGVja21hcmstbmVnYXRpdmUgbGkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvY2hlY2stbmVnYXRpdmUuc3ZnXCIpOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGT09URVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjE5MWM7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5mb290ZXIgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmZvb3RlciBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5mb290ZXJfX2xpbmstLWxpZ2h0IHtcbiAgY29sb3I6IGluaGVyaXQ7IH1cblxuLmZvb3Rlcl9fbG9nbyB7XG4gIHdpZHRoOiAzMDBweDtcbiAgaGVpZ2h0OiA2NXB4O1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmZvb3Rlcl9faW5mbyxcbi5mb290ZXJfX2NvbnRlbnQge1xuICBmb250LXNpemU6IDAuODc1ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuZm9vdGVyX19pbmZvLFxuICAgIC5mb290ZXJfX2NvbnRlbnQge1xuICAgICAgZm9udC1zaXplOiBjYWxjKC0wLjAzOTY4dncgKyAwLjg4NjllbSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mb290ZXJfX2luZm8sXG4gICAgLmZvb3Rlcl9fY29udGVudCB7XG4gICAgICBmb250LXNpemU6IDAuODU3MTRlbTsgfSB9XG5cbi5mb290ZXJfX2NvbnRlbnQgdWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5mb290ZXJfX2NvbnRlbnQgYSB7XG4gIGNvbG9yOiAjOGQ4YzhkOyB9XG5cbi5mb290ZXJfX25hdmlnYXRpb24gc3Bhbixcbi5mb290ZXJfX25hdmlnYXRpb24gYSB7XG4gIGNvbG9yOiAjOGQ4YzhkO1xuICB0cmFuc2l0aW9uOiBjb2xvciAxMDBtcyBlYXNlLWluLW91dDsgfVxuICAuZm9vdGVyX19uYXZpZ2F0aW9uIHNwYW46aG92ZXIsIC5mb290ZXJfX25hdmlnYXRpb24gc3BhbjphY3RpdmUsIC5mb290ZXJfX25hdmlnYXRpb24gc3Bhbjpmb2N1cyxcbiAgLmZvb3Rlcl9fbmF2aWdhdGlvbiBhOmhvdmVyLFxuICAuZm9vdGVyX19uYXZpZ2F0aW9uIGE6YWN0aXZlLFxuICAuZm9vdGVyX19uYXZpZ2F0aW9uIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjZjhmOGY4OyB9XG5cbi5mb290ZXJfX25hdmlnYXRpb24gLm1lbnUtbGV2ZWwtMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgaGVpZ2h0OiA2NXB4OyB9XG4gIC5mb290ZXJfX25hdmlnYXRpb24gLm1lbnUtbGV2ZWwtMCA+IC5tZW51LWl0ZW0ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQ4cHg7IH1cbiAgICAuZm9vdGVyX19uYXZpZ2F0aW9uIC5tZW51LWxldmVsLTAgPiAubWVudS1pdGVtID4gc3BhbiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuZm9vdGVyX19uYXZpZ2F0aW9uIC5tZW51LWxldmVsLTAgPiAubWVudS1pdGVtLm1lbnUtaXRlbS0tYWN0aXZlLXRyYWlsIHNwYW4sIC5mb290ZXJfX25hdmlnYXRpb24gLm1lbnUtbGV2ZWwtMCA+IC5tZW51LWl0ZW0uYWN0aXZlIHNwYW4ge1xuICAgICAgY29sb3I6ICNmOGY4Zjg7IH1cblxuLmZvb3Rlcl9fbmF2aWdhdGlvbiAubWVudS1sZXZlbC0xIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gIC5mb290ZXJfX25hdmlnYXRpb24gLm1lbnUtbGV2ZWwtMSBzcGFuLFxuICAuZm9vdGVyX19uYXZpZ2F0aW9uIC5tZW51LWxldmVsLTEgYSB7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5mb290ZXJfX25hdmlnYXRpb24gLm1lbnUtbGV2ZWwtMSBzcGFuLFxuICAgICAgLmZvb3Rlcl9fbmF2aWdhdGlvbiAubWVudS1sZXZlbC0xIGEge1xuICAgICAgICBmb250LXNpemU6IGNhbGMoLTAuMDM5Njh2dyArIDAuODg2OWVtKTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mb290ZXJfX25hdmlnYXRpb24gLm1lbnUtbGV2ZWwtMSBzcGFuLFxuICAgICAgLmZvb3Rlcl9fbmF2aWdhdGlvbiAubWVudS1sZXZlbC0xIGEge1xuICAgICAgICBmb250LXNpemU6IDAuODU3MTRlbTsgfSB9XG5cbi5mb290ZXJfX25hdmlnYXRpb24gLm1lbnUtaXRlbS0tYWN0aXZlLXRyYWlsIC5tZW51LWxldmVsLTEsXG4uZm9vdGVyX19uYXZpZ2F0aW9uIC5hY3RpdmUgLm1lbnUtbGV2ZWwtMSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmZvb3Rlcl9fbmF2aWdhdGlvbiAubWVudS1pdGVtLS1hY3RpdmUtdHJhaWwgLm1lbnUtbGV2ZWwtMSA+IC5tZW51LWl0ZW0sXG4gIC5mb290ZXJfX25hdmlnYXRpb24gLmFjdGl2ZSAubWVudS1sZXZlbC0xID4gLm1lbnUtaXRlbSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgcGFkZGluZzogMCAxOHB4IDMwcHggMDsgfVxuICAgIC5mb290ZXJfX25hdmlnYXRpb24gLm1lbnUtaXRlbS0tYWN0aXZlLXRyYWlsIC5tZW51LWxldmVsLTEgPiAubWVudS1pdGVtID4gYSxcbiAgICAuZm9vdGVyX19uYXZpZ2F0aW9uIC5hY3RpdmUgLm1lbnUtbGV2ZWwtMSA+IC5tZW51LWl0ZW0gPiBhIHtcbiAgICAgIGNvbG9yOiAjZjhmOGY4OyB9XG5cbi5mb290ZXJfX2Rpc2NsYWltZXIge1xuICBjb2xvcjogIzhkOGM4ZDsgfVxuXG4uZm9vdGVyX19zb2NpYWwtbGlzdCBhIHtcbiAgY29sb3I6ICM4ZDhjOGQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuZm9vdGVyLS1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwMDsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNQUlOIFRFQVNFUlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAubWFpbi10ZWFzZXIge1xuICAgIG1hcmdpbi10b3A6IDQ4cHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAubWFpbi10ZWFzZXIge1xuICAgIG1hcmdpbi10b3A6IDk3cHg7IH0gfVxuXG4ubWFpbi10ZWFzZXJfX2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC04M3B4O1xuICByaWdodDogMDtcbiAgYm90dG9tOiAtMzVweDtcbiAgbGVmdDogMzBweDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBib3R0b207IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubWFpbi10ZWFzZXJfX2ltYWdlIHtcbiAgICAgIHRvcDogLTExOHB4O1xuICAgICAgYm90dG9tOiAtNzBweDtcbiAgICAgIGxlZnQ6IDQ4cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tYWluLXRlYXNlcl9faW1hZ2Uge1xuICAgICAgdG9wOiAtMTY3cHg7XG4gICAgICBsZWZ0OiA5N3B4OyB9IH1cblxuLm1haW4tdGVhc2VyX19pbWFnZS1ib3gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTQzcHg7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IC0yNXB4O1xuICBsZWZ0OiAzMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGJvdHRvbTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTkFWSUdBVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubmF2aWdhdGlvbi1wcmltYXJ5LWxpbmssXG4ubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW0sXG4uZS1iYW5raW5nLWxpbmsge1xuICBjb2xvcjogIzUwNTA1MDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlLWluLW91dDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAxZW0gMC4yZW07IH1cbiAgLm5hdmlnYXRpb24tcHJpbWFyeS1saW5rOmhvdmVyLFxuICAubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW06aG92ZXIsXG4gIC5lLWJhbmtpbmctbGluazpob3ZlciB7XG4gICAgY29sb3I6ICMxYjE5MWM7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1wcmltYXJ5LWxpbmssXG4gICAgLm5hdmlnYXRpb24tcHJpbWFyeV9fbWVudS1pdGVtLFxuICAgIC5lLWJhbmtpbmctbGluayB7XG4gICAgICBmb250LXNpemU6IDEuMTc1ZW07XG4gICAgICBwYWRkaW5nOiAwLjZlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5uYXZpZ2F0aW9uLXByaW1hcnktbGluayxcbiAgICAubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW0sXG4gICAgLmUtYmFua2luZy1saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYygwLjE1MDc5dncgKyAxLjEyOTc2ZW0pOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm5hdmlnYXRpb24tcHJpbWFyeS1saW5rLFxuICAgIC5uYXZpZ2F0aW9uLXByaW1hcnlfX21lbnUtaXRlbSxcbiAgICAuZS1iYW5raW5nLWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxLjI0Mjg2ZW07IH0gfVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnktbGluayxcbi5uYXZpZ2F0aW9uLXNlY29uZGFyeV9faGVhZGluZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjNlbSAwO1xuICBmb250LXNpemU6IDEuNTYyNWVtO1xuICBjb2xvcjogIzUwNTA1MDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlLWluLW91dDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5LWxpbmssXG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45NWVtO1xuICAgICAgcGFkZGluZzogMC44NGVtIDAgMC44ZW07IH0gfVxuXG4ubmF2aWdhdGlvbi10ZXJ0aWFyeS1saW5rLFxuLm5hdmlnYXRpb24tdGVydGlhcnlfX2hlYWRpbmcsXG4ucG9wb3Zlci0tZS1iYW5raW5nX19tZW51IGgyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAwLjM1ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjM1ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIGNvbG9yOiAjNTA1MDUwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm5hdmlnYXRpb24tdGVydGlhcnktbGluazpob3ZlcixcbiAgLm5hdmlnYXRpb24tdGVydGlhcnlfX2hlYWRpbmc6aG92ZXIsXG4gIC5wb3BvdmVyLS1lLWJhbmtpbmdfX21lbnUgaDI6aG92ZXIge1xuICAgIGNvbG9yOiAjMjU5NWQ5OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm5hdmlnYXRpb24tdGVydGlhcnktbGluayxcbiAgICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9faGVhZGluZyxcbiAgICAucG9wb3Zlci0tZS1iYW5raW5nX19tZW51IGgyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjE1ZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC4xNWVtO1xuICAgICAgZm9udC1zaXplOiAxZW07IH0gfVxuXG4ubmF2aWdhdGlvbi1xdWF0ZXJuYXJ5LWxpbmssXG4ubmF2aWdhdGlvbi1xdWF0ZXJuYXJ5X19oZWFkaW5nLFxuLmRyb3Bkb3duLW1lbnUgYSxcbi5wb3BvdmVyLS1lLWJhbmtpbmdfX21lbnUgdWwgYSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmctdG9wOiAwLjE1ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjE1ZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjNTA1MDUwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5uYXZpZ2F0aW9uLXF1YXRlcm5hcnktbGluazpob3ZlcixcbiAgLm5hdmlnYXRpb24tcXVhdGVybmFyeV9faGVhZGluZzpob3ZlcixcbiAgLmRyb3Bkb3duLW1lbnUgYTpob3ZlcixcbiAgLnBvcG92ZXItLWUtYmFua2luZ19fbWVudSB1bCBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzI1OTVkOTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5uYXZpZ2F0aW9uLXF1YXRlcm5hcnktbGluayxcbiAgICAubmF2aWdhdGlvbi1xdWF0ZXJuYXJ5X19oZWFkaW5nLFxuICAgIC5kcm9wZG93bi1tZW51IGEsXG4gICAgLnBvcG92ZXItLWUtYmFua2luZ19fbWVudSB1bCBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAwLjllbTsgfSB9XG5cbi5oZWFkZXItY29udHJvbHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLmhlYWRlci1jb250cm9scyB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH0gfVxuXG4uaGVhZGVyLWNvbnRyb2xzX19pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLmhlYWRlci1jb250cm9sc19faXRlbS0taWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmhlYWRlci1jb250cm9sc19faXRlbS0taWNvbiA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5oZWFkZXItY29udHJvbHNfX2l0ZW0tLXB1c2hlZC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5tYWluLWhlYWRlciB7XG4gIGhlaWdodDogNC44ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubWFpbi1oZWFkZXIge1xuICAgICAgaGVpZ2h0OiA5LjRlbTsgfSB9XG5cbi5uYXZpZ2F0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyMDtcbiAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAubmF2aWdhdGlvbiB7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm5hdmlnYXRpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH0gfVxuICAubWVudS0tdmlzaWJsZSAubmF2aWdhdGlvbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHotaW5kZXg6IDIwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm5hdmlnYXRpb24gPiAuY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbi5uYXZpZ2F0aW9uLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNjtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2UtaW4tb3V0IDgwMG1zOyB9XG4gIC5tZW51LS12aXNpYmxlIC5uYXZpZ2F0aW9uLW92ZXJsYXkge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAubW9kYWwtaXMtaW4gLm5hdmlnYXRpb24tb3ZlcmxheSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5uYXZpZ2F0aW9uLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSBlYXNlLWluLW91dCAyMDBtcywgb3BhY2l0eSBlYXNlLWluLW91dCAyMDBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHB4KTsgfVxuICAubWVudS0tdmlzaWJsZSAubmF2aWdhdGlvbi1wcmltYXJ5IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuICAucXVpY2stc2VhcmNoLS1mb2N1c2VkIC5uYXZpZ2F0aW9uLXByaW1hcnkge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHB4KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgNDAwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgNDAwbXM7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1wcmltYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgb3BhY2l0eTogMTsgfSB9XG5cbi5uYXZpZ2F0aW9uLXByaW1hcnlfX21lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51IHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4ubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW0ge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW0tLWFjdGl2ZSB7XG4gICAgY29sb3I6ICMxYjE5MWM7IH0gfVxuXG4ubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW0tLWFjdGl2ZTpiZWZvcmUsIC5uYXZpZ2F0aW9uLXByaW1hcnlfX21lbnUtaXRlbS0tYWN0aXZlOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItc3R5bGU6IHNvbGlkOyB9XG5cbi5uYXZpZ2F0aW9uLXByaW1hcnlfX21lbnUtaXRlbS0tYWN0aXZlOmJlZm9yZSB7XG4gIGJvdHRvbTogLTAuNjJyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MnJlbTtcbiAgYm9yZGVyLXdpZHRoOiAwLjYycmVtIDAuNjJyZW0gMCAwLjYycmVtO1xuICBib3JkZXItY29sb3I6ICNlNmU2ZTYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW0tLWFjdGl2ZTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5uYXZpZ2F0aW9uLXByaW1hcnlfX21lbnUtaXRlbS0tYWN0aXZlOmFmdGVyIHtcbiAgYm90dG9tOiAtMC41cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAgMC41cmVtO1xuICBib3JkZXItY29sb3I6ICNmZmZmZmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1wcmltYXJ5X19tZW51LWl0ZW0tLWFjdGl2ZTphZnRlciB7XG4gICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgIGJvcmRlci13aWR0aDogMCAwLjVyZW0gMC41cmVtIDAuNXJlbTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzI1OTVkOSB0cmFuc3BhcmVudDsgfSB9XG5cbi5uYXZpZ2F0aW9uLWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwbXMgNDAwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgMjAwbXMgMG1zLCB2aXNpYmxpdHkgZWFzZS1pbi1vdXQgMG1zIDIwMG1zOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm5hdmlnYXRpb24tY29udGVudCB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgdG9wOiAwO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgb3BhY2l0eTogMTsgfSB9XG4gIC5tZW51LS12aXNpYmxlIC5uYXZpZ2F0aW9uLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5MDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAzLjVlbSAtIDQuOGVtKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDBtcyAwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgMzAwbXMgNDAwbXMsIHZpc2liaWxpdHkgZWFzZS1pbi1vdXQgMzAwbXMgNDAwbXM7IH1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiA0MDBtcyB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQsIG9wYWNpdHkgZWFzZS1pbi1vdXQgNDAwbXM7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyNTk1ZDk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgYm94LXNoYWRvdzogcmdiYSgxOTEsIDE4OSwgMTgxLCAwLjE1KSAwIDJweCAycHggMDsgfSB9XG4gIC5xdWljay1zZWFyY2gtLWZvY3VzZWQgLm5hdmlnYXRpb24tc2Vjb25kYXJ5IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UtaW4tb3V0IDYwMG1zLCBvcGFjaXR5IGVhc2UtaW4tb3V0IDYwMG1zOyB9XG5cbi5uYXZpZ2F0aW9uLXNlY29uZGFyeS0tMS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1zZWNvbmRhcnktLTEtYWN0aXZlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5uYXZpZ2F0aW9uLXNlY29uZGFyeS0tMi1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5LS0yLWFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnktLTMtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAlKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5uYXZpZ2F0aW9uLXNlY29uZGFyeS0tMy1hY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiA0MDBtcyB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkge1xuICAgIC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudSB7XG4gICAgICBwYWRkaW5nLXRvcDogMWVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDQuNWVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzogMCAxZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gNDAwbXMgZWFzZS1pbi1vdXQsICB2aXNpYmlsaXR5IDBtcyAwbXMgZWFzZS1pbi1vdXQ7IH0gfVxuICAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUgPiAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtaXRlbSB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDYwMG1zIGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgICAubWVudS0tdmlzaWJsZSAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUgPiAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtaXRlbSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgICAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUgPiAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtaXRlbSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDEpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDE1MG1zOyB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDI1MG1zOyB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDM1MG1zOyB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDQpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDQ1MG1zOyB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDUpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDU1MG1zOyB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDYpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDY1MG1zOyB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDcpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDc1MG1zOyB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDgpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDg1MG1zOyB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51ID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDkpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDk1MG1zOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS0tYWN0aXZlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSA0MDBtcyBlYXNlLWluLW91dCwgdmlzaWJpbGl0eSAwbXMgMG1zIGVhc2UtaW4tb3V0OyB9IH1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LS0xIHtcbiAgbGVmdDogMDsgfVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLTIge1xuICBsZWZ0OiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LS0yIHtcbiAgICAgIGxlZnQ6IDA7IH0gfVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLTMge1xuICBsZWZ0OiAyMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LS0zIHtcbiAgICAgIGxlZnQ6IDA7IH0gfVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LS1wb3J0YWwge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS0tcG9ydGFsIGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS0tcG9ydGFsID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7IH1cbiAgICAubWVudS0tdmlzaWJsZSAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLXBvcnRhbCA+IC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS1pdGVtIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAgIC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS0tcG9ydGFsID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW0ge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MS45Mzc1ZW0pIHtcbiAgICAgIC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS0tcG9ydGFsID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW0ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTsgfSB9XG4gICAgLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LS1wb3J0YWwgPiAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtaXRlbSBhIHtcbiAgICAgIHBhZGRpbmc6IC44NWVtIDEuMnZ3OyB9XG4gICAgICAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLXBvcnRhbCA+IC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS1pdGVtIGE6aG92ZXIsIC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS0tcG9ydGFsID4gLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LWl0ZW0gYS5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICAgICAgICBjb2xvcjogIzI1OTVkOTsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkge1xuICAgICAgICAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLXBvcnRhbCA+IC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS1pdGVtIGEge1xuICAgICAgICAgIHBhZGRpbmc6IC40ZW0gMDsgfSB9XG5cbi5uYXZpZ2F0aW9uLXNlY29uZGFyeV9faGVhZGluZyBzdmcge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19oZWFkaW5nLS1oaWdobGlnaHQge1xuICBjb2xvcjogIzFiMTkxYzsgfVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX2hlYWRpbmctLXN0YW5kLWJhY2sge1xuICBjb2xvcjogIzhkOGM4ZDsgfVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX2hlYWRpbmctLWlzLW9wZW4gc3ZnIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2QwZDBkMDtcbiAgICBib3gtc2hhZG93OiByZ2JhKDE5MSwgMTg5LCAxODEsIDAuMTUpIDAgMnB4IDJweCAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwLjVlbSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDQwMG1zIGVhc2UtaW4tb3V0LCBoZWlnaHQgMG1zIDQwMW1zIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IDBtcyA0MDFtcyBlYXNlLWluLW91dDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS1hY3RpdmUge1xuICAgIGhlaWdodDogMThlbTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSA0MDBtcyBlYXNlLWluLW91dCwgaGVpZ2h0IDBtcyAwbXMgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMG1zIDBtcyBlYXNlLWluLW91dDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZDBkMGQwO1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS0tNS1pdGVtcyAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS1pdGVtOm50aC1jaGlsZChuKzQpIHtcbiAgICAgIGhlaWdodDogNTAlO1xuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG4gICAgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtLTUtaXRlbXMgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtaXRlbTpudGgtY2hpbGQoNSkge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMGQwZDA7IH1cbiAgICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS0tNi1pdGVtcyAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS1pdGVtOm50aC1jaGlsZChuKzMpIHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtLTYtaXRlbXMgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtaXRlbTpudGgtY2hpbGQoMm4rNCkge1xuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG4gICAgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtLTYtaXRlbXMgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtaXRlbTpudGgtY2hpbGQobis1KSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2QwZDBkMDsgfVxuICAgIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS03LWl0ZW1zIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKG4rMikge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS0tNy1pdGVtcyAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS1pdGVtOm50aC1jaGlsZCgzbis0KSB7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cbiAgICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS0tNy1pdGVtcyAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS1pdGVtOm50aC1jaGlsZChuKzUpIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDBkMGQwOyB9XG4gICAgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtLTgtaXRlbXMgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtaXRlbSB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS04LWl0ZW1zIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKDRuKzQpIHtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTsgfVxuICAgIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS04LWl0ZW1zIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LWl0ZW06bnRoLWNoaWxkKG4rNSkge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMGQwZDA7IH0gfVxuXG4ubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudSxcbi5tZW51LWxldmVsLTIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLm1lbnUtaXRlbS0tY29udGVudC1leHRyYXMge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm1lbnUtaXRlbS0tY29udGVudC1leHRyYXMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDFlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMGQwZDA7IH0gfVxuXG4ubWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAzNHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIG1hcmdpbi1sZWZ0OiA4MHB4O1xuICB0cmFuc2l0aW9uOiA0MDBtcyBhbGwgZWFzZS1pbi1vdXQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubWVudS10b2dnbGU6YmVmb3JlLCAubWVudS10b2dnbGU6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLm1lbnUtdG9nZ2xlOmJlZm9yZSB7XG4gICAgdG9wOiA0cHg7IH1cbiAgLm1lbnUtdG9nZ2xlOmFmdGVyIHtcbiAgICBib3R0b206IDRweDsgfVxuXG4ubWVudS10b2dnbGU6YmVmb3JlLFxuLm1lbnUtdG9nZ2xlOmFmdGVyLFxuLm1lbnUtdG9nZ2xlX19saW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIHRyYW5zaXRpb246IDQwMG1zIGFsbCBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZDogIzFkMWQxYjtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5tZW51LXRvZ2dsZV9fbGluZSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIHRvcDogNTAlOyB9XG5cbi5tZW51LXRvZ2dsZV9fdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA2NHB4O1xuICBtYXJnaW4tdG9wOiAtMC40NzVlbTtcbiAgb3BhY2l0eTogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRyYW5zaXRpb246IDQwMG1zIGFsbCBlYXNlLWluLW91dDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4ubWVudS10b2dnbGVfX3RleHQtLTEge1xuICByaWdodDogNDRweDtcbiAgb3BhY2l0eTogMTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4ubWVudS10b2dnbGUtLXRvZ2dsZWQge1xuICBtYXJnaW4tbGVmdDogODBweDsgfVxuICAubWVudS10b2dnbGUtLXRvZ2dsZWQ6YmVmb3JlIHtcbiAgICB0b3A6IDE2cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDQ1ZGVnKTsgfVxuICAubWVudS10b2dnbGUtLXRvZ2dsZWQ6YWZ0ZXIge1xuICAgIGJvdHRvbTogMTZweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTQ1ZGVnKTsgfVxuICAubWVudS10b2dnbGUtLXRvZ2dsZWQgLm1lbnUtdG9nZ2xlX19saW5lIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDApOyB9XG4gIC5tZW51LXRvZ2dsZS0tdG9nZ2xlZCAubWVudS10b2dnbGVfX3RleHQtLTEge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcmlnaHQ6IDY0cHg7IH1cbiAgLm1lbnUtdG9nZ2xlLS10b2dnbGVkIC5tZW51LXRvZ2dsZV9fdGV4dC0tMiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICByaWdodDogMzZweDsgfVxuXG4uZS1iYW5raW5nLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5lLWJhbmtpbmctbGluayB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAuZS1iYW5raW5nLWxpbmsgLmljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0wLjJlbTsgfVxuXG4uc2ltcGxlLW1lbnUsXG4uc2ltcGxlLW1lbnUgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7IH1cblxuLnNpbXBsZS1tZW51ID4gbGkgPiBhIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uc2ltcGxlLW1lbnUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMDtcbiAgY29sb3I6ICM1MDUwNTA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgLnNpbXBsZS1tZW51IGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMjU5NWQ5OyB9XG5cbi5xdWljay1zZWFyY2gtb3BlbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICB0ZXh0LWluZGVudDogLTIwMDAwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvc2VhcmNoLnN2Zyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMS4zZW0gMS4zZW07XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dDsgfVxuICAucXVpY2stc2VhcmNoLW9wZW5lcjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5xdWljay1zZWFyY2gtb3BlbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLm5hdmlnYXRpb24tY29udGFpbmVyLS1leHBhbmRlZCB7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4OyB9XG5cbi5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAgMWVtIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmRyb3Bkb3duLW1lbnUgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZHJvcGRvd24tbWVudSBhIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgIHBhZGRpbmc6IDEuNWVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDEwNjA7XG4gICAgICBtYXgtd2lkdGg6IDI3NnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0MSwgMTQwLCAxNDEsIDAuNCk7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgICBib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgyNywgMjUsIDI4LCAwLjMpO1xuICAgICAgbWF4LXdpZHRoOiA5MHZ3O1xuICAgICAgcGFkZGluZzogMC41ZW0gMDtcbiAgICAgIHRvcDogMi44ZW07IH1cbiAgICAgIC5kcm9wZG93bi1tZW51IGEge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNRVRBLU5BVklHQVRJT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1ldGEtbmF2aWdhdGlvbi13cmFwcGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDEwMTsgfVxuICAubWVudS0tdmlzaWJsZSAubWV0YS1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MS45Mzc1ZW0pIHtcbiAgICAubWV0YS1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogMTAwO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICMyNTk1ZDk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5tZXRhLW5hdmlnYXRpb24td3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRvcDogLTJlbTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgbGVmdDogYXV0bzsgfSB9XG5cbi5tZXRhLW5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5tZW51LS12aXNpYmxlIC5tZXRhLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAubWV0YS1uYXZpZ2F0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4ubWV0YS1tYXZpZ2F0aW9uX19ibG9jayB7XG4gIHdpZHRoOiA1MCU7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm1ldGEtbWF2aWdhdGlvbl9fYmxvY2sge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFlbTsgfSB9XG5cbi5tZXRhLW5hdmlnYXRpb25fX21lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubWV0YS1uYXZpZ2F0aW9uX19saW5rLFxuLmxhbmd1YWdlLXN3aXRjaGVyIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNmVtIDAgMC41NmVtO1xuICBjb2xvcjogIzUwNTA1MDtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm1ldGEtbmF2aWdhdGlvbl9fbGluayxcbiAgICAubGFuZ3VhZ2Utc3dpdGNoZXIgYSB7XG4gICAgICBwYWRkaW5nOiAwLjFlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NTcxNGVtOyB9IH1cbiAgLmlzLWFjdGl2ZSAubWV0YS1uYXZpZ2F0aW9uX19saW5rLCAuaXMtYWN0aXZlIC5sYW5ndWFnZS1zd2l0Y2hlciBhLCAubGFuZ3VhZ2Utc3dpdGNoZXIgLmlzLWFjdGl2ZSBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzFiMTkxYzsgfVxuICAubWV0YS1uYXZpZ2F0aW9uX19saW5rOmhvdmVyLFxuICAubGFuZ3VhZ2Utc3dpdGNoZXIgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICMxYjE5MWM7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tZXRhLW5hdmlnYXRpb25fX2xpbms6OmFmdGVyLFxuICAubGFuZ3VhZ2Utc3dpdGNoZXIgYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1ldGEtbmF2aWdhdGlvbl9fbGluay1iYWNrLXRvLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAucXVpY2stc2VhcmNoLS1mb2N1c2VkIC5tZXRhLW5hdmlnYXRpb25fX2xpbmstYmFjay10by1tZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IDAuNzVzIG9wYWNpdHkgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02MnB4KTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5tZXRhLW5hdmlnYXRpb25fX2xpbmstYmFjay10by1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubWV0YS1uYXZpZ2F0aW9uX19saW5rLWxlLWNsdWIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAxcyBvcGFjaXR5IGVhc2UtaW4tb3V0OyB9XG4gIC5xdWljay1zZWFyY2gtLWZvY3VzZWQgLm1ldGEtbmF2aWdhdGlvbl9fbGluay1sZS1jbHViIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IDAuNzVzIG9wYWNpdHkgZWFzZS1pbi1vdXQ7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkge1xuICAubWV0YS1tYXZpZ2F0aW9uX19ibG9jay0tcG9ydGFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzI1OTVkOTtcbiAgICBib3gtc2hhZG93OiAwIDAuM3JlbSAwLjNyZW0gcmdiYSgyNywgMjUsIDI4LCAwLjEpOyB9XG4gICAgLm1ldGEtbWF2aWdhdGlvbl9fYmxvY2stLXBvcnRhbCA+IHVsIGxpIHtcbiAgICAgIGZsZXg6IDE7IH0gfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgUkVDT01NRU5EQVRJT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnJlY29tbWVuZGF0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gIGJveC1zaGFkb3c6IDAgMC4zcmVtIDAuM3JlbSB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5yZWNvbW1lbmRhdGlvbjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjNyZW0pO1xuICAgIGJveC1zaGFkb3c6IDAgMC4zcmVtIDAuM3JlbSByZ2JhKDI3LCAyNSwgMjgsIDAuMSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5yZWNvbW1lbmRhdGlvbjphY3RpdmUge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMG1zIGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4xNXJlbSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5yZWNvbW1lbmRhdGlvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkIHJnYmEoMzcsIDE0OSwgMjE3LCAwLjgpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5yZWNvbW1lbmRhdGlvbl9faW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLnJlY29tbWVuZGF0aW9uX190aXRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAzMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMThweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzcsIDE0OSwgMjE3LCAwLjkpO1xuICBmb250LXNpemU6IDFlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnJlY29tbWVuZGF0aW9uX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDAuOWVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAucmVjb21tZW5kYXRpb25fX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtOyB9IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIExPR08gLyBCUkFORFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubG9nbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC45ZW0gMCAwLjRlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5sb2dvX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDIuM2VtO1xuICB3aWR0aDogOGVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvbG9nb3MvbG9nby0taW5pdGlhbHMtRlIuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvcmRlcjogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5sb2dvX19pY29uIHtcbiAgICAgIGhlaWdodDogMi41ZW07XG4gICAgICB3aWR0aDogMTJlbTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9sb2dvcy9sb2dvLS1mdWxsLUZSLnN2Z1wiKTsgfSB9XG4gIFtsYW5nPSdkZSddIC5sb2dvX19pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvbG9nb3MvbG9nby0taW5pdGlhbHMtREUuc3ZnXCIpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIFtsYW5nPSdkZSddIC5sb2dvX19pY29uIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2xvZ29zL2xvZ28tLWZ1bGwtREUuc3ZnXCIpOyB9IH1cblxuLmxvZ29fX25hbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMi40cmVtO1xuICBsZWZ0OiAyLjM1cmVtO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6ICMxYjE5MWM7IH1cblxuLmxvZ28tLXBvcnRhbCB7XG4gIHBhZGRpbmc6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG4gIC5sb2dvLS1wb3J0YWwgLmxvZ29fX2ljb24ge1xuICAgIGhlaWdodDogMy41NWVtO1xuICAgIHdpZHRoOiA4ZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2xvZ29zL2xvZ28tLXBvcnRhbC1GUi5zdmdcIik7IH1cbiAgICBbbGFuZz0nZGUnXSAubG9nby0tcG9ydGFsIC5sb2dvX19pY29uIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9sb2dvcy9sb2dvLS1wb3J0YWwtREUuc3ZnXCIpOyB9XG5cbi5sb2dvLS1waWN0byB7XG4gIHBhZGRpbmc6IDBlbTtcbiAgbWFyZ2luOiA5cHggMThweCAwOyB9XG4gIC5sb2dvLS1waWN0byAubG9nb19faWNvbiB7XG4gICAgaGVpZ2h0OiAxLjdlbTtcbiAgICB3aWR0aDogMS43ZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2xvZ29zL2xvZ28tLXBpY3RvLnN2Z1wiKTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgUVVJQ0sgU0VBUkNIXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5xdWljay1zZWFyY2gtbW9iaWxlIHtcbiAgcGFkZGluZy10b3A6IDFlbTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UtaW4tb3V0IDIwMG1zIDEwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgMjAwbXMgMTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRlbSk7IH1cbiAgLm1lbnUtLXZpc2libGUgLnF1aWNrLXNlYXJjaC1tb2JpbGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgMzAwbXMgMTAwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgMzAwbXMgMTAwbXM7IH1cbiAgLnF1aWNrLXNlYXJjaC1tb2JpbGUgLnF1aWNrLXNlYXJjaC1ibG9jayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5xdWljay1zZWFyY2gtbW9iaWxlIC5xdWljay1zZWFyY2gtYmxvY2sgLmdyaWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0yMDAwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBtYXJnaW4tdG9wOiAtNDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgLnF1aWNrLXNlYXJjaC1tb2JpbGUgLnF1aWNrLXNlYXJjaC1ibG9jayAuZ3JpZCAuZ3JpZF9faXRlbSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBwYWRkaW5nLXRvcDogOXB4OyB9XG4gICAgLnF1aWNrLXNlYXJjaC0tZm9jdXNlZCAucXVpY2stc2VhcmNoLW1vYmlsZSAucXVpY2stc2VhcmNoLWJsb2NrIC5ncmlkIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwcHgpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UtaW4tb3V0IDQwMG1zLCBvcGFjaXR5IGVhc2UtaW4tb3V0IDQwMG1zOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkge1xuICAgICAgLnF1aWNrLXNlYXJjaC1tb2JpbGUgLnF1aWNrLXNlYXJjaC1ibG9jayAuZ3JpZCAuYm94IHtcbiAgICAgICAgcGFkZGluZzogMThweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLnF1aWNrLXNlYXJjaC1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBHRU5FUklDIE1PREFMXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5nZW5lcmljLW1vZGFsIHtcbiAgei1pbmRleDogOTAwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAubW9kYWwtaXMtaW4gLmdlbmVyaWMtbW9kYWwge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5nZW5lcmljLW1vZGFsIC5sb2dvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLm1vZGFsX19pdGVtIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubW9kYWxfX2l0ZW0tLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tb2RhbC1pcy1pbiBib2R5IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ubW9kYWwtaXMtaW4gLmdlbmVyaWMtbW9kYWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZDogI2Y4ZjhmODsgfVxuXG4ubW9kYWxfX2Nsb3NlLS14IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAxM3B4IDAgMDtcbiAgbWFyZ2luOiAxcmVtIDAgMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1vZGFsLWlzLWluIC5tb2RhbF9fY2xvc2UtLXgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0zZW07IH1cblxuLm1vZGFsX19jbG9zZS0teCAuY2xvc2UteCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMC4xNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC4wNWVtOyB9XG5cbiNtb3J0Z2FnZS1mb3JtX19yZXN1bHRzLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMzAwbXMgZWFzZS1pbjsgfVxuICAjbW9ydGdhZ2UtZm9ybV9fcmVzdWx0cy13cmFwcGVyLmNvbGxhcHNlZCB7XG4gICAgaGVpZ2h0OiAwOyB9XG5cbi5tb3J0Z2FnZS1vdmVybGF5IHtcbiAgdHJhbnNpdGlvbjogMC4zcyBhbGwgZWFzZS1pbi1vdXQ7IH1cblxuLmlucHV0LXdyYXBwZXItLWJ1bXAge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7IH1cblxuLypcbiAgICBvdmVybGF5XG4qL1xuLm1vcnRnYWdlLW92ZXJsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7IH1cbiAgLm1vcnRnYWdlLW92ZXJsYXkgaW5wdXQge1xuICAgIHBhZGRpbmctdG9wOiAxMS41cHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTEuNXB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxLjhyZW07IH1cbiAgLm1vcnRnYWdlLW92ZXJsYXkubW9ydGdhZ2Utb3ZlcmxheV9fd2l0aC1jdXJyZW5jeSBpbnB1dCB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4ICFpbXBvcnRhbnQ7IH1cblxuLm1vcnRnYWdlLW92ZXJsYXlfX2N1cnJlbmN5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAzO1xuICB0b3A6IDFweDtcbiAgYm90dG9tOiAxcHg7XG4gIGxlZnQ6IDFweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBwYWRkaW5nLXRvcDogMThweDtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBjb2xvcjogIzdkN2Q3ZDsgfVxuXG4ubW9ydGdhZ2Utb3ZlcmxheV9faW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogMXB4O1xuICByaWdodDogMXB4O1xuICBib3R0b206IDFweDtcbiAgbGVmdDogMXB4O1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXRvcDogMTEuNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTEuNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5tb3J0Z2FnZS1vdmVybGF5X193aXRoLWN1cnJlbmN5IC5tb3J0Z2FnZS1vdmVybGF5X19pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNRVNTQUdFU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubWVzc2FnZXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDQ0NDQ0M7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiA0cmVtO1xuICBtYXJnaW4tdG9wOiA5N3B4O1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDFlbTtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAubWVzc2FnZXMgLm1lc3NhZ2VzX19saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMC41ZW0gMWVtOyB9XG4gIC5tZXNzYWdlcyAubWVzc2FnZXNfX2l0ZW0ge1xuICAgIGxpc3Qtc3R5bGU6IHNxdWFyZTsgfVxuICAubWVzc2FnZXM6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDJyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgbGVmdDogLTNyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMC41ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07IH1cblxuLm1lc3NhZ2VzLS1zdWNjZXNzIHtcbiAgY29sb3I6ICMwMDRkMDA7XG4gIGJvcmRlci1jb2xvcjogZ3JlZW47IH1cbiAgLm1lc3NhZ2VzLS1zdWNjZXNzOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4pyTXCI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47XG4gICAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuXG4ubWVzc2FnZXMtLWluZm8ge1xuICBjb2xvcjogIzUwNTA1MDtcbiAgYm9yZGVyLWNvbG9yOiAjMjU5NWQ5OyB9XG4gIC5tZXNzYWdlcy0taW5mbzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcImlcIjtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU5NWQ5OyB9XG5cbi5tZXNzYWdlcy0td2FybmluZyB7XG4gIGNvbG9yOiAjY2M4NDAwO1xuICBib3JkZXItY29sb3I6IG9yYW5nZTsgfVxuICAubWVzc2FnZXMtLXdhcm5pbmc6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCIhXCI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlOyB9XG5cbi5tZXNzYWdlcy0tZXJyb3Ige1xuICBjb2xvcjogI2M3MDAzOTtcbiAgYm9yZGVyLWNvbG9yOiAjYzcwMDM5OyB9XG4gIC5tZXNzYWdlcy0tZXJyb3I6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLDl1wiO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjNzAwMzk7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIENPVU5URE9XTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY291bnRkb3duIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxLjVlbTsgfVxuXG4uY291bnRkb3duX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDAuMDVlbTtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBBQ0NPUkRJT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgLmFjY29yZGlvbi0tZm9ybSB7XG4gICAgd2lkdGg6IDkwJTsgfSB9XG5cbi5hY2NvcmRpb25fX2l0ZW0ge1xuICBtYXJnaW46IDAgMCAxOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGQ4YzhkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuYWNjb3JkaW9uX19pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFlbTsgfSB9XG4gIC5hY2NvcmRpb25fX2l0ZW06aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgMC4zcmVtIDAuM3JlbSByZ2JhKDI3LCAyNSwgMjgsIDAuMSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODsgfVxuICAuYWNjb3JkaW9uX19pdGVtLm5vLXJlc3VsdHMge1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAuYWNjb3JkaW9uX19pdGVtLm5vLXJlc3VsdHM6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLmFjY29yZGlvbl9faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE4cHggNDhweCAxOHB4IDE4cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5hY2NvcmRpb25fX2hlYWRlciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5hY2NvcmRpb25fX2hlYWRlciB7XG4gICAgICBwYWRkaW5nOiAxZW07IH0gfVxuICAuYWNjb3JkaW9uX19oZWFkZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMS4yZW07XG4gICAgaGVpZ2h0OiAxLjJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaWNvbnMvYXJyb3ctZG93bi5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDE4cHg7XG4gICAgdG9wOiAxOHB4O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyBlYXNlLWluLW91dDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgICAuYWNjb3JkaW9uX19oZWFkZXI6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDFlbTtcbiAgICAgICAgdG9wOiAxZW07IH0gfVxuICAuYWNjb3JkaW9uX19oZWFkZXIgPiBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogMC41ZW07XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICAgIGhlaWdodDogMS4yZW07XG4gICAgd2lkdGg6IDEuMmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0wLjA1ZW07IH1cbiAgLmFjY29yZGlvbl9faGVhZGVyOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5hY2NvcmRpb25fX2hlYWRlci5leHBhbmRlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5hY2NvcmRpb25fX2hlYWRlci5leHBhbmRlZDo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cblxuLmFjY29yZGlvbl9faGVhZGVyLXRleHQge1xuICBtYXgtd2lkdGg6IDkyJTsgfVxuICAuYWNjb3JkaW9uX19oZWFkZXItdGV4dCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5hY2NvcmRpb25fX3BhbmVsIHtcbiAgcGFkZGluZzogMCAxOHB4IDE4cHggMThweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuYWNjb3JkaW9uX19wYW5lbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIuOWVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMi45ZW07IH0gfVxuICAuZXhwYW5kZWQgKyAuYWNjb3JkaW9uX19wYW5lbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAuYWNjb3JkaW9uX19wYW5lbCB1bCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxuXG4uYWNjb3JkaW9uLS1uby1ib3JkZXIgLmFjY29yZGlvbl9faXRlbSB7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAuYWNjb3JkaW9uLS1uby1ib3JkZXIgLmFjY29yZGlvbl9faXRlbTpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYWNjb3JkaW9uLS1uby1ib3JkZXIgLmFjY29yZGlvbl9faGVhZGVyIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206IDFlbTsgfVxuXG4uYWNjb3JkaW9uLS1uby1ib3JkZXIgLmFjY29yZGlvbl9fcGFuZWwge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5hY2NvcmRpb24tLW5vLWJvcmRlciAuYWNjb3JkaW9uX19oZWFkZXI6OmFmdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogLTFlbTtcbiAgdG9wOiAwOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBUT09MVElQU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA3MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnRvb2x0aXAuaW4ge1xuICBvcGFjaXR5OiAwLjk7IH1cblxuLnRvb2x0aXAudG9wIHtcbiAgbWFyZ2luLXRvcDogLTNweDtcbiAgcGFkZGluZzogNXB4IDA7IH1cblxuLnRvb2x0aXAucmlnaHQge1xuICBtYXJnaW4tbGVmdDogM3B4O1xuICBwYWRkaW5nOiAwIDVweDsgfVxuXG4udG9vbHRpcC5ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIHBhZGRpbmc6IDVweCAwOyB9XG5cbi50b29sdGlwLmxlZnQge1xuICBtYXJnaW4tbGVmdDogLTNweDtcbiAgcGFkZGluZzogMCA1cHg7IH1cblxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAwLjVlbSAxZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjE5MWM7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4udG9vbHRpcC1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsgfVxuXG4udG9vbHRpcC50b3AgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjMWIxOTFjOyB9XG5cbi50b29sdGlwLnRvcC1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiAwO1xuICByaWdodDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweCA1cHggMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzFiMTkxYzsgfVxuXG4udG9vbHRpcC50b3AtcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICMxYjE5MWM7IH1cblxuLnRvb2x0aXAucmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDVweCAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICMxYjE5MWM7IH1cblxuLnRvb2x0aXAubGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgbWFyZ2luLXRvcDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHggMCA1cHggNXB4O1xuICBib3JkZXItbGVmdC1jb2xvcjogIzFiMTkxYzsgfVxuXG4udG9vbHRpcC5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIGJvcmRlci13aWR0aDogMCA1cHggNXB4O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMWIxOTFjOyB9XG5cbi50b29sdGlwLmJvdHRvbS1sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgdG9wOiAwO1xuICByaWdodDogNXB4O1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzFiMTkxYzsgfVxuXG4udG9vbHRpcC5ib3R0b20tcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMxYjE5MWM7IH1cblxuLmZhZGUge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGxpbmVhciwgdHJhbnNmb3JtIC4xNXM7IH1cbiAgLmZhZGUuaW4ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuZmFkZS5pbi50b3Age1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBQT1BPVkVSXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnBvcG92ZXIge1xuICBwYWRkaW5nOiAxLjVlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNjA7XG4gIG1heC13aWR0aDogMjc2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDEsIDE0MCwgMTQxLCAwLjQpO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDI3LCAyNSwgMjgsIDAuMyk7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBvcG92ZXIudG9wIHtcbiAgbWFyZ2luLXRvcDogLTE2cHg7IH1cblxuLnBvcG92ZXIucmlnaHQge1xuICBtYXJnaW4tbGVmdDogMTZweDsgfVxuXG4ucG9wb3Zlci5ib3R0b20ge1xuICBtYXJnaW4tdG9wOiAxNnB4OyB9XG5cbi5wb3BvdmVyLmxlZnQge1xuICBtYXJnaW4tbGVmdDogLTE2cHg7IH1cblxuLnBvcG92ZXItdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMxYjE5MWM7IH1cblxuLnBvcG92ZXItY29udGVudCB7XG4gIGNvbG9yOiAjMWIxOTFjOyB9XG5cbi5wb3BvdmVyID4gLmFycm93LFxuLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkOyB9XG5cbi5wb3BvdmVyID4gLmFycm93IHtcbiAgYm9yZGVyLXdpZHRoOiAxM3B4OyB9XG5cbi5wb3BvdmVyID4gLmFycm93OmFmdGVyIHtcbiAgYm9yZGVyLXdpZHRoOiAxMnB4O1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi5wb3BvdmVyLnRvcCA+IC5hcnJvdyB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xM3B4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2JhKDE0MSwgMTQwLCAxNDEsIDAuNCk7XG4gIGJvdHRvbTogLTEzcHg7IH1cblxuLnBvcG92ZXIudG9wID4gLmFycm93OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGJvdHRvbTogMXB4O1xuICBtYXJnaW4tbGVmdDogLTEycHg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmZmZmY7IH1cblxuLnBvcG92ZXIucmlnaHQgPiAuYXJyb3cge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogLTEzcHg7XG4gIG1hcmdpbi10b3A6IC0xM3B4O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiByZ2JhKDE0MSwgMTQwLCAxNDEsIDAuNCk7IH1cblxuLnBvcG92ZXIucmlnaHQgPiAuYXJyb3c6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgbGVmdDogMXB4O1xuICBib3R0b206IC0xMnB4O1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmZmZmOyB9XG5cbi5wb3BvdmVyLmJvdHRvbSA+IC5hcnJvdyB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0xM3B4O1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDE0MSwgMTQwLCAxNDEsIDAuNCk7XG4gIHRvcDogLTEzcHg7IH1cblxuLnBvcG92ZXIuYm90dG9tID4gLmFycm93OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHRvcDogMXB4O1xuICBtYXJnaW4tbGVmdDogLTEycHg7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmZmZmY7IH1cblxuLnBvcG92ZXIubGVmdCA+IC5hcnJvdyB7XG4gIHRvcDogNTAlO1xuICByaWdodDogLTEzcHg7XG4gIG1hcmdpbi10b3A6IC0xM3B4O1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDE0MSwgMTQwLCAxNDEsIDAuNCk7IH1cblxuLnBvcG92ZXIubGVmdCA+IC5hcnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICByaWdodDogMXB4O1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmZmZmO1xuICBib3R0b206IC0xMnB4OyB9XG5cbi5wb3BvdmVyLS1lLWJhbmtpbmcge1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMzUwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogMy41ZW07XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG4gIC5wb3BvdmVyLS1lLWJhbmtpbmcgLnBvcG92ZXIuYm90dG9tID4gLmFycm93IHtcbiAgICBsZWZ0OiA0NSU7IH1cbiAgLnBvcG92ZXItLWUtYmFua2luZy5ib3R0b20gPiAuYXJyb3c6YWZ0ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmOGY4Zjg7IH1cbiAgLnBvcG92ZXItLWUtYmFua2luZyAub3BlbmluZy10aW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNGVtO1xuICAgIGNvbG9yOiAjOGQ4YzhkO1xuICAgIGZvbnQtc2l6ZTogMC45ZW07IH1cbiAgLnBvcG92ZXItLWUtYmFua2luZyAuc2ltcGxlLW1lbnUge1xuICAgIHBhZGRpbmctbGVmdDogMS40ZW07IH1cbiAgLnBvcG92ZXItLWUtYmFua2luZyAucmVnaXN0ZXItbGluayB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjZlbTsgfVxuXG4ucG9wb3Zlci0tZS1iYW5raW5nX19tZW51IGgyIHtcbiAgbWFyZ2luOiAwO1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAucG9wb3Zlci0tZS1iYW5raW5nX19tZW51IGgyOmhvdmVyIHtcbiAgICBjb2xvcjogIzUwNTA1MCAhaW1wb3J0YW50OyB9XG5cbi5wb3BvdmVyLS1lLWJhbmtpbmdfX21lbnUgdWwgYSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLnBvcG92ZXItLW15YmNmIHtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDM1MHB4O1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDJlbSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDllbTtcbiAgcmlnaHQ6IDFlbTtcbiAgbGVmdDogYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5wb3BvdmVyLS1teWJjZiB7XG4gICAgICB0b3A6IDYuOWVtO1xuICAgICAgbGVmdDogYXV0bzsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBXSVpBUkRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLndpemFyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMThweDsgfVxuICBib2R5IC53aXphcmQge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnN0ZXAge1xuICBmbGV4LWdyb3c6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjYzsgfVxuICAuc3RlcDpudGgtY2hpbGQoMSkge1xuICAgIHotaW5kZXg6IGNhbGMoMTAwLTEpOyB9XG4gIC5zdGVwOm50aC1jaGlsZCgyKSB7XG4gICAgei1pbmRleDogY2FsYygxMDAtMik7IH1cbiAgLnN0ZXA6bnRoLWNoaWxkKDMpIHtcbiAgICB6LWluZGV4OiBjYWxjKDEwMC0zKTsgfVxuICAuc3RlcDpudGgtY2hpbGQoNCkge1xuICAgIHotaW5kZXg6IGNhbGMoMTAwLTQpOyB9XG4gIC5zdGVwOm50aC1jaGlsZCg1KSB7XG4gICAgei1pbmRleDogY2FsYygxMDAtNSk7IH1cbiAgLnN0ZXA6bnRoLWNoaWxkKDYpIHtcbiAgICB6LWluZGV4OiBjYWxjKDEwMC02KTsgfVxuICAuc3RlcDpudGgtY2hpbGQoNykge1xuICAgIHotaW5kZXg6IGNhbGMoMTAwLTcpOyB9XG4gIC5zdGVwOm50aC1jaGlsZCg4KSB7XG4gICAgei1pbmRleDogY2FsYygxMDAtOCk7IH1cbiAgLnN0ZXA6bnRoLWNoaWxkKDkpIHtcbiAgICB6LWluZGV4OiBjYWxjKDEwMC05KTsgfVxuICAuc3RlcDpudGgtY2hpbGQoMTApIHtcbiAgICB6LWluZGV4OiBjYWxjKDEwMC0xMCk7IH1cbiAgLnN0ZXAgLnN0ZXBfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDVweCAwcHggNXB4IDM1cHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZmJmYmY7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgICAgLnN0ZXAgLnN0ZXBfX2NvbnRlbnQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgICAuc3RlcCAuc3RlcF9fY29udGVudDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAtMTJweDtcbiAgICAgIGJvcmRlci10b3A6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWxlZnQ6IDEycHggc29saWQgI2ZmZmZmZjsgfVxuICAgIC5zdGVwIC5zdGVwX19jb250ZW50OjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwcHg7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgcmlnaHQ6IC0xMXB4O1xuICAgICAgYm9yZGVyLXRvcDogMzBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItbGVmdDogMTJweCBzb2xpZCAjYmZiZmJmOyB9XG4gIC5zdGVwIC5zdGVwX19udW1iZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG1hcmdpbi1yaWdodDogMC4zZW07IH1cbiAgLnN0ZXAgLnN0ZXBfX2xhYmVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLnN0ZXA6Zmlyc3QtY2hpbGQgLnN0ZXBfX2NvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMWVtOyB9XG4gIC5zdGVwOmxhc3QtY2hpbGQgLnN0ZXBfX2NvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFlbTsgfVxuICAgIC5zdGVwOmxhc3QtY2hpbGQgLnN0ZXBfX2NvbnRlbnQ6OmJlZm9yZSwgLnN0ZXA6bGFzdC1jaGlsZCAuc3RlcF9fY29udGVudDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG5hLnN0ZXBfX2NvbnRlbnQ6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5zdGVwLS12YWxpZGF0ZWQge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuc3RlcC0tdmFsaWRhdGVkIC5zdGVwX19jb250ZW50IHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk2ODk3OyB9XG4gIC5zdGVwLS12YWxpZGF0ZWQgLnN0ZXBfX2NvbnRlbnQ6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICMxOTY4OTc7IH1cbiAgLnN0ZXAtLXZhbGlkYXRlZCAuc3RlcF9fY2hlY2ttYXJrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEuM2VtO1xuICAgIGhlaWdodDogMS4zZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9jaGVjay1uZWdhdGl2ZS5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLnN0ZXAtLWNsaWNrYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuc3RlcC0tY2xpY2thYmxlOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5zdGVwLS1jbGlja2FibGU6aG92ZXIgLnN0ZXBfX2NvbnRlbnQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU5NWQ5OyB9XG4gICAgLnN0ZXAtLWNsaWNrYWJsZTpob3ZlciAuc3RlcF9fY29udGVudDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMjU5NWQ5OyB9XG5cbi5zdGVwLS1jdXJyZW50LFxuLnN0ZXAtLWN1cnJlbnQgLnN0ZXBfX2NvbnRlbnQge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1OTVkOTtcbiAgY3Vyc29yOiBub3JtYWw7IH1cbiAgLnN0ZXAtLWN1cnJlbnQgLnN0ZXBfX2NvbnRlbnQ6OmJlZm9yZSxcbiAgLnN0ZXAtLWN1cnJlbnQgLnN0ZXBfX2NvbnRlbnQgLnN0ZXBfX2NvbnRlbnQ6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICMyNTk1ZDk7IH1cblxuLndpemFyZC0tc21hbGwgLnN0ZXBfX2NvbnRlbnQge1xuICBoZWlnaHQ6IDQwcHg7IH1cbiAgLndpemFyZC0tc21hbGwgLnN0ZXBfX2NvbnRlbnQ6OmFmdGVyIHtcbiAgICByaWdodDogLThweDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIwcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDhweDsgfVxuICAud2l6YXJkLS1zbWFsbCAuc3RlcF9fY29udGVudDo6YmVmb3JlIHtcbiAgICByaWdodDogLTdweDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIwcHg7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDhweDsgfVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgcGFkZGluZzogMnB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGQ4YzhkO1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgLnByb2dyZXNzLWJhciAucHJvZ3Jlc3MtYmFyX19maWxsIHtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ3JlZW47XG4gICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBEQVRFICYgVElNRSBQSUNLRVJcbiAgaHR0cDovL2Ftc3VsLmNhL3BpY2thZGF0ZS5qc1xuICBjbGFzc2ljIHRoZW1lXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAkQkFTRS1QSUNLRVJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIE5vdGU6IHRoZSByb290IHBpY2tlciBlbGVtZW50IHNob3VsZCAqTk9UKiBiZSBzdHlsZWQgbW9yZSB0aGFuIHdoYXTigJlzIGhlcmUuXG4gKi9cbi5waWNrZXIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDAwO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi8qKlxuICogVGhlIHBpY2tlciBpbnB1dCBlbGVtZW50LlxuICovXG4ucGlja2VyX19pbnB1dCB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcbiAqIFdoZW4gdGhlIHBpY2tlciBpcyBvcGVuZWQsIHRoZSBpbnB1dCBlbGVtZW50IGlzIOKAnGFjdGl2YXRlZOKAnS5cbiAqL1xuLnBpY2tlcl9faW5wdXQucGlja2VyX19pbnB1dC0tYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA4OWVjOyB9XG5cbi8qKlxuICogVGhlIGhvbGRlciBpcyB0aGUgb25seSDigJxzY3JvbGxhYmxl4oCdIHRvcC1sZXZlbCBjb250YWluZXIgZWxlbWVudC5cbiAqL1xuLnBpY2tlcl9faG9sZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG4vKiFcbiAqIENsYXNzaWMgcGlja2VyIHN0eWxpbmcgZm9yIHBpY2thZGF0ZS5qc1xuICogRGVtbzogaHR0cDovL2Ftc3VsLmdpdGh1Yi5pby9waWNrYWRhdGUuanNcbiAqL1xuLyoqXG4gKiBOb3RlOiB0aGUgcm9vdCBwaWNrZXIgZWxlbWVudCBzaG91bGQgKk5PVCogYmUgc3R5bGVkIG1vcmUgdGhhbiB3aGF04oCZcyBoZXJlLlxuICovXG4ucGlja2VyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyoqXG4gKiBUaGUgaG9sZGVyIGlzIHRoZSBiYXNlIG9mIHRoZSBwaWNrZXIuXG4gKi9cbi5waWNrZXJfX2hvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYWFhYTtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi13aWR0aDogMTc2cHg7XG4gIG1heC13aWR0aDogNDY2cHg7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MClcIjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAtbW96LW9wYWNpdHk6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xZW0pIHBlcnNwZWN0aXZlKDYwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xZW0pIHBlcnNwZWN0aXZlKDYwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4xNXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQsIG1heC1oZWlnaHQgMHMgMC4xNXMsIGJvcmRlci13aWR0aCAwcyAwLjE1cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0LCBtYXgtaGVpZ2h0IDBzIDAuMTVzLCBib3JkZXItd2lkdGggMHMgMC4xNXM7IH1cblxuLyoqXG4gKiBUaGUgZnJhbWUgYW5kIHdyYXAgd29yayB0b2dldGhlciB0byBlbnN1cmUgdGhhdFxuICogY2xpY2tzIHdpdGhpbiB0aGUgcGlja2VyIGRvbuKAmXQgcmVhY2ggdGhlIGhvbGRlci5cbiAqL1xuLnBpY2tlcl9fZnJhbWUge1xuICBwYWRkaW5nOiAxcHg7IH1cblxuLnBpY2tlcl9fd3JhcCB7XG4gIG1hcmdpbjogLTFweDsgfVxuXG4vKipcbiAqIFdoZW4gdGhlIHBpY2tlciBvcGVucy4uLlxuICovXG4ucGlja2VyLS1vcGVuZWQgLnBpY2tlcl9faG9sZGVyIHtcbiAgbWF4LWhlaWdodDogMjVlbTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xMDApXCI7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICAtbW96LW9wYWNpdHk6IDE7XG4gIG9wYWNpdHk6IDE7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBwZXJzcGVjdGl2ZSg2MDBweCkgcm90YXRlWCgwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHBlcnNwZWN0aXZlKDYwMHB4KSByb3RhdGVYKDApO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjE1cyBlYXNlLW91dCwgb3BhY2l0eSAwLjE1cyBlYXNlLW91dCwgbWF4LWhlaWdodCAwcywgYm9yZGVyLXdpZHRoIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQsIG1heC1oZWlnaHQgMHMsIGJvcmRlci13aWR0aCAwcztcbiAgYm94LXNoYWRvdzogMCA2cHggMThweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEyKTsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJEJBU0UtREFURS1QSUNLRVJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFRoZSBwaWNrZXIgYm94LlxuICovXG4ucGlja2VyX19ib3gge1xuICBwYWRkaW5nOiAwIDFlbTsgfVxuXG4vKipcbiAqIFRoZSBoZWFkZXIgY29udGFpbmluZyB0aGUgbW9udGggYW5kIHllYXIgc3R1ZmYuXG4gKi9cbi5waWNrZXJfX2hlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAuNzVlbTsgfVxuXG4vKipcbiAqIFRoZSBtb250aCBhbmQgeWVhciBsYWJlbHMuXG4gKi9cbi5waWNrZXJfX21vbnRoLFxuLnBpY2tlcl9feWVhciB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IC4yNWVtO1xuICBtYXJnaW4tcmlnaHQ6IC4yNWVtOyB9XG5cbi5waWNrZXJfX3llYXIge1xuICBjb2xvcjogIzk5OTk5OTtcbiAgZm9udC1zaXplOiAuOGVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBUaGUgbW9udGggYW5kIHllYXIgc2VsZWN0b3JzLlxuICovXG4ucGlja2VyX19zZWxlY3QtLW1vbnRoLFxuLnBpY2tlcl9fc2VsZWN0LS15ZWFyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I3YjdiNztcbiAgaGVpZ2h0OiAyZW07XG4gIHBhZGRpbmc6IC41ZW07XG4gIG1hcmdpbi1sZWZ0OiAuMjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMjVlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjQuNWVtKSB7XG4gIC5waWNrZXJfX3NlbGVjdC0tbW9udGgsXG4gIC5waWNrZXJfX3NlbGVjdC0teWVhciB7XG4gICAgbWFyZ2luLXRvcDogLTAuNWVtOyB9IH1cblxuLnBpY2tlcl9fc2VsZWN0LS1tb250aCB7XG4gIHdpZHRoOiAzNSU7IH1cblxuLnBpY2tlcl9fc2VsZWN0LS15ZWFyIHtcbiAgd2lkdGg6IDIyLjUlOyB9XG5cbi5waWNrZXJfX3NlbGVjdC0tbW9udGg6Zm9jdXMsXG4ucGlja2VyX19zZWxlY3QtLXllYXI6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwMDg5ZWM7IH1cblxuLyoqXG4gKiBUaGUgbW9udGggbmF2aWdhdGlvbiBidXR0b25zLlxuICovXG4ucGlja2VyX19uYXYtLXByZXYsXG4ucGlja2VyX19uYXYtLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBhZGRpbmc6IC41ZW0gMS4yNWVtO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIHRvcDogLTAuMjVlbTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjQuNWVtKSB7XG4gIC5waWNrZXJfX25hdi0tcHJldixcbiAgLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgICB0b3A6IC0wLjMzZW07IH0gfVxuXG4ucGlja2VyX19uYXYtLXByZXYge1xuICBsZWZ0OiAtMWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1ZW07IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDI0LjVlbSkge1xuICAucGlja2VyX19uYXYtLXByZXYge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNWVtOyB9IH1cblxuLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgcmlnaHQ6IC0xZW07XG4gIHBhZGRpbmctbGVmdDogMS4yNWVtOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAyNC41ZW0pIHtcbiAgLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtOyB9IH1cblxuLnBpY2tlcl9fbmF2LS1wcmV2OmJlZm9yZSxcbi5waWNrZXJfX25hdi0tbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgYm9yZGVyLXRvcDogLjVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogLjVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjc1ZW0gc29saWQgIzAwMDAwMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5waWNrZXJfX25hdi0tbmV4dDpiZWZvcmUge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAwLjc1ZW0gc29saWQgIzAwMDAwMDsgfVxuXG4ucGlja2VyX19uYXYtLXByZXY6aG92ZXIsXG4ucGlja2VyX19uYXYtLW5leHQ6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiOyB9XG5cbi5waWNrZXJfX25hdi0tZGlzYWJsZWQsXG4ucGlja2VyX19uYXYtLWRpc2FibGVkOmhvdmVyLFxuLnBpY2tlcl9fbmF2LS1kaXNhYmxlZDpiZWZvcmUsXG4ucGlja2VyX19uYXYtLWRpc2FibGVkOmJlZm9yZTpob3ZlciB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZjVmNWY1O1xuICBib3JkZXItbGVmdC1jb2xvcjogI2Y1ZjVmNTsgfVxuXG4vKipcbiAqIFRoZSBjYWxlbmRhciB0YWJsZSBvZiBkYXRlc1xuICovXG4ucGlja2VyX190YWJsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC43NWVtO1xuICBtYXJnaW4tYm90dG9tOiAuNWVtOyB9XG5cbkBtZWRpYSAobWluLWhlaWdodDogMzMuODc1ZW0pIHtcbiAgLnBpY2tlcl9fdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IC43NWVtOyB9IH1cblxuLnBpY2tlcl9fdGFibGUgdGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBUaGUgd2Vla2RheSBsYWJlbHNcbiAqL1xuLnBpY2tlcl9fd2Vla2RheSB7XG4gIHdpZHRoOiAxNC4yODU3MTQyODYlO1xuICBmb250LXNpemU6IC43NWVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjI1ZW07XG4gIGNvbG9yOiAjOTk5OTk5O1xuICBmb250LXdlaWdodDogNTAwO1xuICAvKiBJbmNyZWFzZSB0aGUgc3BhY2luZyBhIHRhZCAqLyB9XG5cbkBtZWRpYSAobWluLWhlaWdodDogMzMuODc1ZW0pIHtcbiAgLnBpY2tlcl9fd2Vla2RheSB7XG4gICAgcGFkZGluZy1ib3R0b206IC41ZW07IH0gfVxuXG4vKipcbiAqIFRoZSBkYXlzIG9uIHRoZSBjYWxlbmRhclxuICovXG4ucGlja2VyX19kYXkge1xuICBwYWRkaW5nOiAuMzEyNWVtIDA7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5waWNrZXJfX2RheS0tdG9kYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnBpY2tlcl9fZGF5LS10b2RheTpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgcmlnaHQ6IDJweDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMC41ZW0gc29saWQgIzAwNTliYztcbiAgYm9yZGVyLWxlZnQ6IC41ZW0gc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnBpY2tlcl9fZGF5LS1kaXNhYmxlZDpiZWZvcmUge1xuICBib3JkZXItdG9wLWNvbG9yOiAjYWFhYWFhOyB9XG5cbi5waWNrZXJfX2RheS0tb3V0Zm9jdXMge1xuICBjb2xvcjogI2RkZGRkZDsgfVxuXG4ucGlja2VyX19kYXktLWluZm9jdXM6aG92ZXIsXG4ucGlja2VyX19kYXktLW91dGZvY3VzOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogI2IxZGNmYjsgfVxuXG4ucGlja2VyX19kYXktLWhpZ2hsaWdodGVkIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA4OWVjOyB9XG5cbi5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQ6aG92ZXIsXG4ucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiOyB9XG5cbi5waWNrZXJfX2RheS0tc2VsZWN0ZWQsXG4ucGlja2VyX19kYXktLXNlbGVjdGVkOmhvdmVyLFxuLnBpY2tlci0tZm9jdXNlZCAucGlja2VyX19kYXktLXNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZDogIzAwODllYztcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnBpY2tlcl9fZGF5LS1kaXNhYmxlZCxcbi5waWNrZXJfX2RheS0tZGlzYWJsZWQ6aG92ZXIsXG4ucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2RheS0tZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBib3JkZXItY29sb3I6ICNmNWY1ZjU7XG4gIGNvbG9yOiAjZGRkZGRkO1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZC5waWNrZXJfX2RheS0tZGlzYWJsZWQsXG4ucGlja2VyX19kYXktLWhpZ2hsaWdodGVkLnBpY2tlcl9fZGF5LS1kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNiYmJiYmI7IH1cblxuLyoqXG4gKiBUaGUgZm9vdGVyIGNvbnRhaW5pbmcgdGhlIFwidG9kYXlcIiwgXCJjbGVhclwiLCBhbmQgXCJjbG9zZVwiIGJ1dHRvbnMuXG4gKi9cbi5waWNrZXJfX2Zvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ucGlja2VyX19idXR0b24tLXRvZGF5LFxuLnBpY2tlcl9fYnV0dG9uLS1jbGVhcixcbi5waWNrZXJfX2J1dHRvbi0tY2xvc2Uge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBmb250LXNpemU6IC44ZW07XG4gIHBhZGRpbmc6IC42NmVtIDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB3aWR0aDogMzMlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cblxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpob3Zlcixcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6aG92ZXIsXG4ucGlja2VyX19idXR0b24tLWNsb3NlOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogI2IxZGNmYjtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IxZGNmYjsgfVxuXG4ucGlja2VyX19idXR0b24tLXRvZGF5OmZvY3VzLFxuLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpmb2N1cyxcbi5waWNrZXJfX2J1dHRvbi0tY2xvc2U6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xuICBib3JkZXItY29sb3I6ICMwMDg5ZWM7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpiZWZvcmUsXG4ucGlja2VyX19idXR0b24tLWNsZWFyOmJlZm9yZSxcbi5waWNrZXJfX2J1dHRvbi0tY2xvc2U6YmVmb3JlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMDsgfVxuXG4ucGlja2VyX19idXR0b24tLXRvZGF5OmJlZm9yZSxcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIG1hcmdpbi1yaWdodDogLjQ1ZW07IH1cblxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpiZWZvcmUge1xuICB0b3A6IC0wLjA1ZW07XG4gIHdpZHRoOiAwO1xuICBib3JkZXItdG9wOiAwLjY2ZW0gc29saWQgIzAwNTliYztcbiAgYm9yZGVyLWxlZnQ6IC42NmVtIHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6YmVmb3JlIHtcbiAgdG9wOiAtMC4yNWVtO1xuICB3aWR0aDogLjY2ZW07XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCAjZWUyMjAwOyB9XG5cbi5waWNrZXJfX2J1dHRvbi0tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXEQ3XCI7XG4gIHRvcDogLTAuMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmb250LXNpemU6IDEuMWVtO1xuICBtYXJnaW4tcmlnaHQ6IC4zNWVtO1xuICBjb2xvcjogIzc3Nzc3NzsgfVxuXG4ucGlja2VyX19idXR0b24tLXRvZGF5W2Rpc2FibGVkXSxcbi5waWNrZXJfX2J1dHRvbi0tdG9kYXlbZGlzYWJsZWRdOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjVmNWY1O1xuICBjb2xvcjogI2RkZGRkZDtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5waWNrZXJfX2J1dHRvbi0tdG9kYXlbZGlzYWJsZWRdOmJlZm9yZSB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNhYWFhYWE7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICRDTEFTU0lDLURBVEUtUElDS0VSXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICRCQVNFLVRJTUUtUElDS0VSXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBUaGUgbGlzdCBvZiB0aW1lcy5cbiAqL1xuLnBpY2tlcl9fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNzVlbSAwIDQuMmVtO1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gKiBUaGUgdGltZXMgb24gdGhlIGNsb2NrLlxuICovXG4ucGlja2VyX19saXN0LWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGRkZGQ7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcGFkZGluZzogLjc1ZW0gMS4yNWVtOyB9XG5cbkBtZWRpYSAobWluLWhlaWdodDogNDYuNzVlbSkge1xuICAucGlja2VyX19saXN0LWl0ZW0ge1xuICAgIHBhZGRpbmc6IC41ZW0gMWVtOyB9IH1cblxuLyogSG92ZXJlZCB0aW1lICovXG4ucGlja2VyX19saXN0LWl0ZW06aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xuICBib3JkZXItY29sb3I6ICMwMDg5ZWM7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi8qIEhpZ2hsaWdodGVkIGFuZCBob3ZlcmVkL2ZvY3VzZWQgdGltZSAqL1xuLnBpY2tlcl9fbGlzdC1pdGVtLS1oaWdobGlnaHRlZCB7XG4gIGJvcmRlci1jb2xvcjogIzAwODllYztcbiAgei1pbmRleDogMTA7IH1cblxuLnBpY2tlcl9fbGlzdC1pdGVtLS1oaWdobGlnaHRlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fbGlzdC1pdGVtLS1oaWdobGlnaHRlZCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7IH1cblxuLyogU2VsZWN0ZWQgYW5kIGhvdmVyZWQvZm9jdXNlZCB0aW1lICovXG4ucGlja2VyX19saXN0LWl0ZW0tLXNlbGVjdGVkLFxuLnBpY2tlcl9fbGlzdC1pdGVtLS1zZWxlY3RlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fbGlzdC1pdGVtLS1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICMwMDg5ZWM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB6LWluZGV4OiAxMDsgfVxuXG4vKiBEaXNhYmxlZCB0aW1lICovXG4ucGlja2VyX19saXN0LWl0ZW0tLWRpc2FibGVkLFxuLnBpY2tlcl9fbGlzdC1pdGVtLS1kaXNhYmxlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fbGlzdC1pdGVtLS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGJvcmRlci1jb2xvcjogI2Y1ZjVmNTtcbiAgY29sb3I6ICNkZGRkZGQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYm9yZGVyLWNvbG9yOiAjZGRkZGRkO1xuICB6LWluZGV4OiBhdXRvOyB9XG5cbi8qKlxuICogVGhlIGNsZWFyIGJ1dHRvblxuICovXG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiAxZW0gYXV0byAwO1xuICBwYWRkaW5nOiAxZW0gMS4yNWVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogLjY3ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICM2NjY7IH1cblxuLnBpY2tlci0tdGltZSAucGlja2VyX19idXR0b24tLWNsZWFyOmhvdmVyLFxuLnBpY2tlci0tdGltZSAucGlja2VyX19idXR0b24tLWNsZWFyOmZvY3VzIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG4gIGJhY2tncm91bmQ6ICNlZTIyMDA7XG4gIGJvcmRlci1jb2xvcjogI2VlMjIwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXI6YmVmb3JlIHtcbiAgdG9wOiAtMC4yNWVtO1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxLjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5waWNrZXItLXRpbWUgLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpob3ZlcjpiZWZvcmUsXG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXI6Zm9jdXM6YmVmb3JlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1jb2xvcjogI2ZmZmZmZjsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJENMQVNTSUMtVElNRS1QSUNLRVJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIE5vdGU6IHRoZSByb290IHBpY2tlciBlbGVtZW50IHNob3VsZCBfX05PVF9fIGJlIHN0eWxlZFxuICogbW9yZSB0aGFuIHdoYXTigJlzIGhlcmUuIFN0eWxlIHRoZSBgLnBpY2tlcl9faG9sZGVyYCBpbnN0ZWFkLlxuICovXG4ucGlja2VyLS10aW1lIHtcbiAgbWluLXdpZHRoOiAyNTZweDtcbiAgbWF4LXdpZHRoOiAzMjBweDsgfVxuXG4vKipcbiAqIFRoZSBob2xkZXIgaXMgdGhlIGJhc2Ugb2YgdGhlIHBpY2tlci5cbiAqL1xuLnBpY2tlci0tdGltZSAucGlja2VyX19ob2xkZXIge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyOyB9XG5cbkBtZWRpYSAobWluLWhlaWdodDogNDAuMTI1ZW0pIHtcbiAgLnBpY2tlci0tdGltZSAucGlja2VyX19ob2xkZXIge1xuICAgIGZvbnQtc2l6ZTogLjg3NWVtOyB9IH1cblxuLyoqXG4gKiBUaGUgYm94IGNvbnRhaW5zIHRoZSBsaXN0IG9mIHRpbWVzLlxuICovXG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2JveCB7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucGlja2VyX190YWJsZSB0aGVhZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cblxuLnBpY2tlcl9fdGFibGUgdGgge1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyB9XG5cbi5waWNrZXJfX3RhYmxlIHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ucGlja2VyX190YWJsZSB0ZCB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG4gIC5waWNrZXJfX3RhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4ucGlja2VyX19pbnB1dC5waWNrZXJfX2lucHV0LnBpY2tlcl9faW5wdXQge1xuICBtYXgtd2lkdGg6IDVlbTsgfVxuXG4ucGlja2VyX19pbnB1dC0tZGF0ZSB7XG4gIG1heC13aWR0aDogOGVtOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBQQUdJTkFUSU9OXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5wYWdlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ucGFnZXJfX2l0ZW1zIHtcbiAgcGFkZGluZzogMzBweCAwIDQ4cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnBhZ2VyX19pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0xcHg7IH1cbiAgLnBhZ2VyX19pdGVtIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuNmVtIDAuOWVtIDAuNTVlbTtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlci13aWR0aDogMXB4IDAgMXB4IDFweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2QwZDBkMDtcbiAgICBjb2xvcjogIzFiMTkxYzsgfVxuICAgIC5wYWdlcl9faXRlbSBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxYjE5MWM7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogIzFiMTkxYzsgfVxuICAucGFnZXJfX2l0ZW06Zmlyc3Qtb2YtdHlwZSBhIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4OyB9XG4gIC5wYWdlcl9faXRlbTpsYXN0LW9mLXR5cGUgYSB7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDNweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4OyB9XG5cbi5wYWdlcl9faXRlbS0tZWxsaXBzaXMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBRVUlDSyBTRUFSQ0ggLSBDdXN0b20gc3R5bGUgZm9yIHNlYXJjaFxuICBUT0RPOiBHZXQgcmlkIG9mIHRoaXMgc3BlY2lmaWMgQ1NTXG4gIFNlZSBodHRwczovL2ppcmEubGlpcC5jaC9icm93c2UvQkNGLTQ5N1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZm9ybS0tZmFxLWlubGluZS1zZWFyY2g6OmFmdGVyLCBbaWQ9XCJibG9jay1leHBvc2VkLWZvcm0tc2VhcmNoLWhwXCJdIC5mb3JtLWdyb3VwLS10ZXh0ZmllbGQgW2lkPVwiaWNvbi1zZWFyY2gtZm9ybVwiXSwgW2lkPVwicXVpY2stc2VhcmNoLW1vYmlsZS1mb3JtXCJdOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuOGVtO1xuICByaWdodDogMC43ZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9zZWFyY2guc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDFlbSAxZW07XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbltpZD1cImJsb2NrLWV4cG9zZWQtZm9ybS1zZWFyY2gtaHBcIl0gLmZvcm0tZ3JvdXAtLXRleHRmaWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5baWQ9XCJibG9jay1leHBvc2VkLWZvcm0tc2VhcmNoLWhwXCJdIFtpZD1cImVkaXQtc3VibWl0LXNlYXJjaFwiXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuW2lkPVwiYmxvY2stZXhwb3NlZC1mb3JtLXNlYXJjaC1ocFwiXSBbaWQ9XCJpY29uLXNlYXJjaC1mb3JtXCJdIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5baWQ9XCJxdWljay1zZWFyY2gtbW9iaWxlLWZvcm1cIl0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgW2lkPVwicXVpY2stc2VhcmNoLW1vYmlsZS1mb3JtXCJdOjphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cblxuW2lkPVwiYmxvY2stZXhwb3NlZC1mb3JtLXNlYXJjaC1wYWdlXCJdIFtpZD1cInZpZXdzLWV4cG9zZWQtZm9ybS1zZWFyY2gtcGFnZS0xXCJdIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLXRvcDogNDhweDsgfVxuXG5baWQ9XCJibG9jay1leHBvc2VkLWZvcm0tc2VhcmNoLXBhZ2VcIl0gLmZvcm0tZ3JvdXAtLXRleHRmaWVsZCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMThweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIFtpZD1cImJsb2NrLWV4cG9zZWQtZm9ybS1zZWFyY2gtcGFnZVwiXSAuZm9ybS1ncm91cC0tdGV4dGZpZWxkIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgICAgcGFkZGluZy1yaWdodDogMThweDsgfSB9XG5cbltpZD1cImJsb2NrLWV4cG9zZWQtZm9ybS1zZWFyY2gtcGFnZVwiXSAuZm9ybS1ncm91cC0tdGV4dGZpZWxkIHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIE5BVlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBjb2xvcjogIzUwNTA1MDsgfVxuXG4uYWZmaXgsXG4ubmF2LXdyYXBwZXItLXN0aWNreSB7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICBib3gtc2hhZG93OiByZ2JhKDEyOSwgMTI2LCAxMTcsIDAuMjUpIDAgMXB4IDIwcHggMDtcbiAgei1pbmRleDogMzAwMDsgfVxuXG4ubmF2X19pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLm5hdl9faXRlbV9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMC41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcbiAgYm9yZGVyLXRvcDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2Utb3V0OyB9XG5cbi5uYXYgLmFjdGl2ZSAubmF2X19pdGVtX19saW5rLCAubmF2X19pdGVtX19saW5rOmhvdmVyLFxuLm5hdl9faXRlbV9fbGluay0tYWN0aXZlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzFiMTkxYztcbiAgY29sb3I6ICMxYjE5MWM7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIE1PREFMXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tb2RhbCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjQzLCAyNDMsIDI0MywgMC45NSk7IH1cbiAgLm1vZGFsLnRpbmdsZS1tb2RhbCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLm1vZGFsIC50aW5nbGUtbW9kYWwtYm94IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW46IDIzcHggMCAwOyB9XG4gIC5tb2RhbCAudGluZ2xlLW1vZGFsLWJveC0tcmVzaXplZCB7XG4gICAgbWF4LXdpZHRoOiAxMTIwcHg7IH1cbiAgLm1vZGFsIC5sb2dvX19pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xuICAgIHBhZGRpbmctYm90dG9tOiAxOHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLm1vZGFsIC50aW5nbGUtbW9kYWwtYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IDMzcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLm1vZGFsIC50aW5nbGUtbW9kYWwtYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IDM3cHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5tb2RhbCAudGluZ2xlLW1vZGFsLWJveCB7XG4gICAgICBtYXJnaW4tdG9wOiA2N3B4OyB9XG4gICAgLm1vZGFsIC5nZW9sb2NhdGlvbi1nb29nbGUtbWFwIHtcbiAgICAgIGhlaWdodDogNjAwcHggIWltcG9ydGFudDsgfSB9XG5cbi5tb2RhbC0tZ2FwbGVzcyAudGluZ2xlLW1vZGFsLWJveF9fY29udGVudCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm1vZGFsX19oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4ubW9kYWxfX2Nsb3NlciB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4udGluZ2xlLW1vZGFsX19jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAtMjAwMHB4OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBVU0VSIEFDQ09VTlRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVzZXItYWNjb3VudF9fbGluayB7XG4gIG1hcmdpbi10b3A6IDE4cHg7IH1cbiAgLnVzZXItYWNjb3VudF9fbGluazpob3ZlcixcbiAgLnVzZXItYWNjb3VudC1tZW51LS1pcy1vcGVuIC51c2VyLWFjY291bnRfX2xpbmsge1xuICAgIGNvbG9yOiAjMWIxOTFjOyB9XG4gIC51c2VyLWFjY291bnRfX2xpbmsgc3ZnIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgLnVzZXItYWNjb3VudC1tZW51LS1pcy1vcGVuIC51c2VyLWFjY291bnRfX2xpbmsgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbi51c2VyLWFjY291bnRfX21lbnUgYSB7XG4gIGNvbG9yOiAjNTA1MDUwOyB9XG4gIC51c2VyLWFjY291bnRfX21lbnUgYTpob3ZlciB7XG4gICAgY29sb3I6ICMyNTk1ZDk7XG4gICAgYmFja2dyb3VuZDogI2Y4ZjhmODsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRkxBR1NcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZsYWcge1xuICB3aWR0aDogMTVlbTtcbiAgaGVpZ2h0OiA3ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4uZmxhZy0tdG9wLXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmZsYWdfX3RleHQge1xuICBwYWRkaW5nLXRvcDogMC4yZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMC4xZW07XG4gIHBhZGRpbmctbGVmdDogMTAwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU5NWQ5O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyNTBtcyAxMjBtcyBjdWJpYy1iZXppZXIoMC42LCAyLjUxLCAwLjcsIDAuNyk7IH1cbiAgLmZsYWctLXRvcC1sZWZ0IC5mbGFnX190ZXh0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzUlLCAtNTAlKSByb3RhdGUoLTIwZGVnKSB0cmFuc2xhdGVZKDc1JSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjsgfVxuICAuZmxhZy0tdG9wLXJpZ2h0IC5mbGFnX190ZXh0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1NSUsIC01MCUpIHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSgxMzAlKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5ib3g6aG92ZXIgLmZsYWctLXRvcC1sZWZ0IC5mbGFnX190ZXh0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzUlLCAtNTAlKSByb3RhdGUoLTIwZGVnKSB0cmFuc2xhdGVZKDgwJSkgc2NhbGUoMS4yKTsgfVxuICAuYm94OmhvdmVyIC5mbGFnLS10b3AtcmlnaHQgLmZsYWdfX3RleHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDU1JSwgLTUwJSkgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKDEzNSUpIHNjYWxlKDEuMik7IH1cbiAgLmZsYWctLWxlLWNsdWIgLmZsYWdfX3RleHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhMmFkMjQ7XG4gICAgZm9udC1mYW1pbHk6IFwiQ29va2llXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxLjNlbTsgfVxuICAuZmxhZy0tZXhjbHVzaXZlIC5mbGFnX190ZXh0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGQ4YzhkO1xuICAgIGZvbnQtZmFtaWx5OiBcIkNvb2tpZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMS4zZW07IH1cbiAgLmZsYWctLWRvdWJsZSAuZmxhZ19fdGV4dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2EyYWQyNDtcbiAgICBmb250LWZhbWlseTogXCJDb29raWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIHBhZGRpbmctbGVmdDogODBweDsgfVxuICAuZmxhZy0tZG91YmxlIC5mbGFnX190ZXh0ICsgLmZsYWdfX3RleHQge1xuICAgIHBhZGRpbmctbGVmdDogMC40ZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzhkOGM4ZDtcbiAgICBmb250LWZhbWlseTogXCJDb29raWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzUlLCAtNTAlKSByb3RhdGUoLTIwZGVnKSB0cmFuc2xhdGVYKDc0JSkgdHJhbnNsYXRlWSgxNjIlKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5ib3g6aG92ZXIgLmZsYWctLWRvdWJsZSAuZmxhZ19fdGV4dCArIC5mbGFnX190ZXh0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzUlLCAtNTAlKSByb3RhdGUoLTIwZGVnKSB0cmFuc2xhdGVYKDg1JSkgdHJhbnNsYXRlWSgxOTAlKSBzY2FsZSgxLjIpO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zOyB9XG4gIC5mbGFnLS1idG4gLmZsYWdfX3RleHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC00MSUsIC0yMCUpIHJvdGF0ZSgtMjBkZWcpIHRyYW5zbGF0ZVkoMjklKSAhaW1wb3J0YW50OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBDT05URVNUIEJPWFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY29udGVzdCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlLWluLW91dDsgfVxuICAuY29udGVzdDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4wMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAlIDkwJTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgLmNvbnRlc3QgLmNvbnRlc3RfX2luZm9zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgLmNvbnRlc3QgLmNvbnRlc3RfX21lc3NhZ2Uge1xuICAgIHBhZGRpbmc6IDM3cHggMjVweDtcbiAgICBtYXJnaW4tdG9wOiAtMTAwMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXMgODAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuY29udGVzdC0taXMtcGFydGljaXBhdGluZyB7XG4gICAgYW5pbWF0aW9uOiBwb3VuZCA1MDBtczsgfVxuICAgIC5jb250ZXN0LS1pcy1wYXJ0aWNpcGF0aW5nOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNjIsIDE3MywgMzYsIDAuOSk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gICAgLmNvbnRlc3QtLWlzLXBhcnRpY2lwYXRpbmcgaDMge1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5jb250ZXN0LS1pcy1wYXJ0aWNpcGF0aW5nIHAsXG4gICAgLmxlLWNsdWIgLmNvbnRlc3QtLWlzLXBhcnRpY2lwYXRpbmcgLmNvdW50ZG93biB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5jb250ZXN0LS1pcy1wYXJ0aWNpcGF0aW5nIC5hY2NvcmRpb25fX2l0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxuICAgIC5jb250ZXN0LS1pcy1wYXJ0aWNpcGF0aW5nIC5tYWduZXQge1xuICAgICAgY29sb3I6ICM1MDUwNTA7IH1cbiAgICAuY29udGVzdC0taXMtcGFydGljaXBhdGluZyAubWFnbmV0X19pbWFnZSB7XG4gICAgICBhbmltYXRpb246IHdhdnkgMTIwMG1zOyB9XG4gICAgLmNvbnRlc3QtLWlzLXBhcnRpY2lwYXRpbmcgLmNvbnRlc3RfX2luZm9zIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmNvbnRlc3QtLWlzLXBhcnRpY2lwYXRpbmcgLmNvbnRlc3RfX21lc3NhZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY29udGVzdC0taXMtcGFydGljaXBhdGluZyAuZmxhZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmNvbnRlc3QtLWlzLXBhcnRpY2lwYXRpbmcgLm1hZ25ldF9fb3ZlcmxheS10aXRsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTA1MDUwOyB9XG5cbkBrZXlmcmFtZXMgcG91bmQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG5Aa2V5ZnJhbWVzIHdhdnkge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9XG4gIDI1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOGRlZyk7IH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtM2RlZyk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTJkZWcpOyB9IH1cblxuLnNlbGVjdGFiaWxpdHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlbGVjdGFiaWxpdHk6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNlbGVjdGFiaWxpdHlbYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIGN1cnNvcjogbm9uZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc2VsZWN0YWJpbGl0eV9fdGV4dGJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5zZWxlY3RhYmlsaXR5OmZvY3VzIC5zZWxlY3RhYmlsaXR5X190ZXh0Ym94IHtcbiAgICBib3JkZXItY29sb3I6ICMxYjE5MWM7IH1cblxuLnNlbGVjdGFiaWxpdHlfX3RleHRib3hfX3RleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuc2VsZWN0YWJpbGl0eV9fdGV4dGJveF9fdGV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2VsZWN0YWJpbGl0eS0tZG91YmxlTGFiZWwgLnNlbGVjdGFiaWxpdHlfX3RleHRib3hfX3RleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyB9XG5cbi5zZWxlY3RhYmlsaXR5X190ZXh0Ym94X19zbWFsbHRleHQge1xuICB3aWR0aDogODUlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMS4xZW07XG4gIGZvbnQtc2l6ZTogMC42NWVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgLnNlbGVjdGFiaWxpdHlfX3RleHRib3hfX3NtYWxsdGV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG4uc2VsZWN0YWJpbGl0eV9fdGV4dGJveF9faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA2MyU7XG4gIHJpZ2h0OiAwLjdlbTtcbiAgZmlsbDogIzI1OTVkOTtcbiAgc3Ryb2tlOiAjMjU5NWQ5O1xuICBzdHJva2Utd2lkdGg6IDEuNHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuc2VsZWN0YWJpbGl0eV9fdGV4dGJveF9faWNvbiB7XG4gICAgICB0b3A6IDUwJTsgfSB9XG4gIC5zZWxlY3RhYmlsaXR5X190ZXh0Ym94OmhvdmVyIC5zZWxlY3RhYmlsaXR5X190ZXh0Ym94X19pY29uIHtcbiAgICBmaWxsOiAjMWIxOTFjO1xuICAgIHN0cm9rZTogIzFiMTkxYzsgfVxuICBbYXJpYS1kaXNhYmxlZD10cnVlXSAuc2VsZWN0YWJpbGl0eV9fdGV4dGJveF9faWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2VsZWN0YWJpbGl0eV9fbGlzdGJveCB7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMzR2aDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmZiZmJmO1xuICBib3JkZXItdG9wLXdpZHRoOiAwcHg7XG4gIGJveC1zaGFkb3c6IHJnYmEoMjcsIDI1LCAyOCwgMC4xKSAwIDFweCAxNXB4IDBweDsgfVxuICBbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIC5zZWxlY3RhYmlsaXR5X19saXN0Ym94IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zZWxlY3RhYmlsaXR5X19saXN0Ym94ID4gZGl2IHtcbiAgICBwYWRkaW5nOiA5cHggMThweDsgfVxuICAgIC5zZWxlY3RhYmlsaXR5X19saXN0Ym94ID4gZGl2OmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMWIxOTFjO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODsgfVxuICAgIC5zZWxlY3RhYmlsaXR5X19saXN0Ym94ID4gZGl2OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzFiMTkxYztcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBjb2xvcjogIzI1OTVkOTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7IH1cblxuLnNlbGVjdGFiaWxpdHktb2Zmc2NyZWVuLXRvdWNoIHtcbiAgb3BhY2l0eTogMC4wMDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgQ0FMQ1VMQVRPUlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uY2FsY3VsYXRvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmctdG9wOiA0OHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLmNhbGN1bGF0b3Ige1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIG1heC13aWR0aDogODV2dzsgfSB9XG4gIC5jYWxjdWxhdG9yIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4gIC5jYWxjdWxhdG9yIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmNhbGN1bGF0b3IgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IH1cbiAgLmNhbGN1bGF0b3IgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgY29sb3I6ICM4ZDhjOGQ7XG4gICAgcGFkZGluZy1yaWdodDogNHB4OyB9XG4gIC5jYWxjdWxhdG9yIDo6cGxhY2Vob2xkZXIge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjogIzhkOGM4ZDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7IH1cblxuLmNhbGN1bGF0b3Itd2lkdGgge1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgIC5jYWxjdWxhdG9yLXdpZHRoIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7IH0gfVxuXG4uY2FsY3VsYXRvcl9fYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuY2FsY3VsYXRvcl9fYmxvY2sge1xuICAgICAgd2lkdGg6IDQ1JTsgfSB9XG4gIC5jYWxjdWxhdG9yX19ibG9jayAuZm9ybS1ncm91cC0tdGV4dGZpZWxkIHtcbiAgICB3aWR0aDogNjAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM4MHB4KSB7XG4gICAgICAuY2FsY3VsYXRvcl9fYmxvY2sgLmZvcm0tZ3JvdXAtLXRleHRmaWVsZCB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAuY2FsY3VsYXRvcl9fYmxvY2sgLmZvcm0tZ3JvdXAtLXNlbGVjdCB7XG4gICAgd2lkdGg6IDQwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzODBweCkge1xuICAgICAgLmNhbGN1bGF0b3JfX2Jsb2NrIC5mb3JtLWdyb3VwLS1zZWxlY3Qge1xuICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLmNhbGN1bGF0b3JfX2Jsb2NrIGxhYmVsIHtcbiAgICBjb2xvcjogIzUwNTA1MDsgfVxuICAuY2FsY3VsYXRvcl9fYmxvY2sgaW5wdXRbdHlwZT0nbnVtYmVyJ10ge1xuICAgIHBhZGRpbmctbGVmdDogOXB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5jYWxjdWxhdG9yX19ibG9jayBpbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMThweDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAgIC5jYWxjdWxhdG9yX19ibG9jayBpbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDsgfSB9XG4gIC5jYWxjdWxhdG9yX19ibG9jayAuc2VsZWN0YWJpbGl0eV9fdGV4dGJveCB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDlweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuY2FsY3VsYXRvcl9fYmxvY2sgLnNlbGVjdGFiaWxpdHlfX3RleHRib3gge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgICAuY2FsY3VsYXRvcl9fYmxvY2sgLnNlbGVjdGFiaWxpdHlfX3RleHRib3gge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH0gfVxuXG4uY2FsY3VsYXRvcl9fc3dhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMS4yZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAuY2FsY3VsYXRvcl9fc3dhcCB7XG4gICAgICB3aWR0aDogMTAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yZW07IH0gfVxuICAuY2FsY3VsYXRvcl9fc3dhcCBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDYyZW0pIHtcbiAgICAgIC5jYWxjdWxhdG9yX19zd2FwIGEge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfSB9XG4gICAgLmNhbGN1bGF0b3JfX3N3YXAgYTpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAuY2FsY3VsYXRvcl9fc3dhcCBhOmZvY3VzIHN2ZyB7XG4gICAgICAgIGZpbGw6ICMyNTk1ZDk7IH1cbiAgLmNhbGN1bGF0b3JfX3N3YXAgc3ZnIHtcbiAgICBtYXgtd2lkdGg6IDQwcHg7XG4gICAgbWF4LWhlaWdodDogNDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmaWxsOiAjN2Q3ZDdkO1xuICAgIHRyYW5zaXRpb246IGZpbGwgMzAwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAuY2FsY3VsYXRvcl9fc3dhcCBzdmc6aG92ZXIge1xuICAgICAgZmlsbDogIzI1OTVkOTsgfVxuXG4vKipcbiAqIFN0cnVjdHVyZXNcbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEhFUk8gSEVBREVSXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5oZXJvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyOyB9XG4gIC5oZXJvIC5ncmlkX19pdGVtIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gODAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7IH1cbiAgICAuaGVybyAuZ3JpZF9faXRlbTpudGgtb2YtdHlwZSgyKSB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAyMDBtczsgfVxuICAgIC5tZW51LS12aXNpYmxlIC5oZXJvIC5ncmlkX19pdGVtIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTsgfVxuXG4uaGVyby0tbGFuZHNjYXBlIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMzBlbSkge1xuICAuaGVyby0tbGFuZHNjYXBlX19jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLmhlcm8tLWxhbmRzY2FwZV9fY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oZXJvLS1sYW5kc2NhcGVfX2NvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDQ4cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDQ4cHg7IH0gfVxuXG4uaGVyby0tbWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1icmFuY2hlcy5naWZcIik7IH1cbiAgLmhlcm8tLW1hcDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDgsIDI0OCwgMjQ4LCAwLjMpOyB9XG4gIC5oZXJvLS1tYXAgPiBkaXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG5cbi5oZXJvX190aXRsZSB7XG4gIGNvbG9yOiAjMjU5NWQ5OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLmhlcm9fX3RpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAuaGVyb19fc3VidGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9IH1cblxuLmhlcm9fX3N1YnRpdGxlIHAge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5oZXJvX19pbWFnZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogODB2aDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuaGVyb19faW1hZ2Uge1xuICAgICAgbWF4LWhlaWdodDogNjB2aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuaGVyb19faW1hZ2Uge1xuICAgICAgaGVpZ2h0OiBjYWxjKCAxMDAlICsgOTBweCk7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLTYwcHg7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZXJvX19pbWFnZSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoIDEwMCUgKyAxNDRweCk7XG4gICAgICBib3R0b206IC05NnB4OyB9IH1cblxuLmhlcm8tLWxvZ2luLWUtYmFua2luZyB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1mYWNldHMuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmhlcm8tdW5kZXJuZWF0aC1zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBwYWRkaW5nLXRvcDogMTQxcHg7XG4gIG1hcmdpbi10b3A6IC05NnB4OyB9XG5cbi8qKlxuICogQ29tcG9uZW50c1xuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTU9TQUlDXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tb3NhaWMge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm1vc2FpYy0tZml4ZWQge1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG5cbi5tb3NhaWNfX3JvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuXG4ubW9zYWljX19jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubW9zYWljLS10b3AgLm1vc2FpY19fY2VsbCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAubW9zYWljLS1ib3R0b20gLm1vc2FpY19fY2VsbCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuXG4ubW9zYWljX19jZWxsLS1maXQge1xuICB3aWR0aDogMXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNT1NBSUMgUkVTUE9OU0lWRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgKG1heC13aWR0aDogNjEuOTM3NWVtKSB7XG4gIC5tb3NhaWMtLXJlc3BvbnNpdmUsXG4gIC5tb3NhaWMtLXJlc3BvbnNpdmUgPiAubW9zYWljX19yb3csXG4gIC5tb3NhaWMtLXJlc3BvbnNpdmUgPiAubW9zYWljX19jZWxsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubW9zYWljLS1yZXNwb25zaXZlID4gLm1vc2FpY19fY2VsbC0tZml0IHtcbiAgICB3aWR0aDogYXV0bzsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSVNUIFNUQUNLRURcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpc3QtaW5saW5lID4gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubGlzdC1pbmxpbmUgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5saXN0LWlubGluZSA+IGxpOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLmxpc3QtaW5saW5lLS1ub3dyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMzBlbSkge1xuICAgIC5saXN0LWlubGluZS0tbm93cmFwID4gbGkge1xuICAgICAgcGFkZGluZzogMCAwLjY1ZW07IH1cbiAgICAubGlzdC1pbmxpbmUtLW5vd3JhcCAuaWNvbiB7XG4gICAgICB3aWR0aDogMmVtOyB9IH1cblxuLmxpc3QtaW5saW5lLS1kaXZpZGVkID4gbGkgKyBsaSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZmZmZjsgfVxuXG4vKipcbiAgICogU2l6ZXNcbiAgICovXG4ubGlzdC1pbmxpbmUtLXRpZ2h0ID4gbGkge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5saXN0LWlubGluZS0tdGlueSA+IGxpIHtcbiAgcGFkZGluZzogMCA0LjVweDsgfVxuXG4ubGlzdC1pbmxpbmUtLXNtYWxsID4gbGkge1xuICBwYWRkaW5nOiAwIDlweDsgfVxuXG4ubGlzdC1pbmxpbmUtLWxhcmdlID4gbGkge1xuICBwYWRkaW5nOiAwIDI0cHg7IH1cblxuLmxpc3QtaW5saW5lLS1odWdlID4gbGkge1xuICBwYWRkaW5nOiAwIDQ4LjVweDsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTElTVCBURUFTRURcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpc3QtdGVhc2VkIHtcbiAgbWFyZ2luOiA0OHB4IDA7IH1cbiAgLmxpc3QtdGVhc2VkID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDE4cHggMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDBkMGQwO1xuICAgIGJvcmRlci13aWR0aDogMXB4IDA7IH1cbiAgICAubGlzdC10ZWFzZWQgPiBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLmxpc3QtdGVhc2VkX19kYXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4ubGlzdC10ZWFzZWRfX3RpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjg7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmxpc3QtdGVhc2VkX190aXRsZSBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLmxpc3QtdGVhc2VkX19ib2R5IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogOXB4OyB9XG4gIC5saXN0LXRlYXNlZF9fYm9keSBwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5saXN0LXRlYXNlZF9fYm9keSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAubGlzdC10ZWFzZWQgPiBsaSB7XG4gICAgcGFkZGluZzogMThweCAwOyB9XG4gIC5saXN0LXRlYXNlZF9fZGF0ZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAyMC44cHg7IH1cbiAgLmxpc3QtdGVhc2VkX190aXRsZSxcbiAgLmxpc3QtdGVhc2VkX19ib2R5IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6IDgwJTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSVNUIENPTVBBQ1RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxpc3QtY29tcGFjdCB7XG4gIG1hcmdpbjogMThweCAwOyB9XG4gIC5saXN0LWNvbXBhY3QgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogOXB4IDA7IH1cbiAgICAubGlzdC1jb21wYWN0ID4gbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5saXN0LWNvbXBhY3RfX2RhdGUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubGlzdC1jb21wYWN0X190aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI4O1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5saXN0LWNvbXBhY3RfX3RpdGxlIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogIzUwNTA1MDsgfVxuICAgIC5saXN0LWNvbXBhY3RfX3RpdGxlIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICM3ZDdkN2Q7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFRBQlNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnRhYnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnRhYnMtLWRlZmF1bHQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBjb250ZW50OiAnICc7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTk1ZDk7IH1cblxuLnRhYnMtLWRlZmF1bHQgLnRhYnNfX2l0ZW1fX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC42cmVtIDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTk1ZDk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnRhYnNfX2l0ZW0ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgcGFkZGluZy1sZWZ0OiA1cHg7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFNURVBQRUQgTElTVFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAuc3RlcHBlZC1saXN0X19pdGVtIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAuc3RlcHBlZC1saXN0X19pdGVtLS1sYXN0IHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNVUxUSVNURVBcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm11bHRpc3RlcHMge1xuICBjb3VudGVyLXJlc2V0OiBzdGVwX2NvdW50ZXI7IH1cblxuLm11bHRpc3RlcCB7XG4gIHBhZGRpbmctdG9wOiA0OHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogOTdweDtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiA0OHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubXVsdGlzdGVwOmJlZm9yZSB7XG4gICAgY29udGVudDogY291bnRlcihzdGVwX2NvdW50ZXIpO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBzdGVwX2NvdW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxLjhlbTtcbiAgICBoZWlnaHQ6IDEuOGVtO1xuICAgIHBhZGRpbmc6IDAuNDJlbSAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xLjFlbTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTk1ZDk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxuXG4ubXVsdGlzdGVwX19pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDk3cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5ncmlkX19pdGVtIC5tdWx0aXN0ZXBfX2ltYWdlOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDEwcHgpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIC5ncmlkX19pdGVtOmhvdmVyIC5tdWx0aXN0ZXBfX2ltYWdlOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMXB4KTsgfVxuICAuZ3JpZF9faXRlbTpudGgtb2YtdHlwZSgxKSAubXVsdGlzdGVwX19pbWFnZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwOi8vZS5iY2YuY2gvdGhlbWVzL2N1c3RvbS9iY2YvaW1hZ2VzL2JnL2luc3RhbGwtc3RlcC0xLS1sYXJnZS5wbmcpOyB9XG4gIC5ncmlkX19pdGVtOm50aC1vZi10eXBlKDIpIC5tdWx0aXN0ZXBfX2ltYWdlOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGh0dHA6Ly9lLmJjZi5jaC90aGVtZXMvY3VzdG9tL2JjZi9pbWFnZXMvYmcvaW5zdGFsbC1zdGVwLTItLWxhcmdlLnBuZyk7IH1cbiAgLmdyaWRfX2l0ZW06bnRoLW9mLXR5cGUoMykgLm11bHRpc3RlcF9faW1hZ2U6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cDovL2UuYmNmLmNoL3RoZW1lcy9jdXN0b20vYmNmL2ltYWdlcy9iZy9pbnN0YWxsLXN0ZXAtMy0tbGFyZ2UucG5nKTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgQlJFQURDUlVNQlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy10b3A6IDE4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxOHB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkge1xuICAgIC5icmVhZGNydW1iIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYnJlYWRjcnVtYl9faXRlbSB7XG4gIGNvbG9yOiAjN2Q3ZDdkO1xuICBmb250LXNpemU6IDAuN2VtO1xuICBmb250LXdlaWdodDogMTAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDE1MG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5icmVhZGNydW1iX19pdGVtOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDAuN2VtO1xuICAgIGhlaWdodDogMC43ZW07XG4gICAgbWFyZ2luOiAwIDAuM2VtIDAgMC4xZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC4wNGVtO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9hcnJvdy1mYXQtcmlnaHQuc3ZnXCIpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgb3BhY2l0eTogMC4zOyB9XG4gIC5icmVhZGNydW1iX19pdGVtOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmJyZWFkY3J1bWJfX2l0ZW0gYSB7XG4gICAgY29sb3I6ICM3ZDdkN2Q7IH1cbiAgICAuYnJlYWRjcnVtYl9faXRlbSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMjU5NWQ5OyB9XG4gICAgICAubGUtY2x1YiAuYnJlYWRjcnVtYl9faXRlbSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNhMmFkMjQ7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIExBTkdVQUdFIFNXSVRDSEVSXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5sYW5ndWFnZS1zd2l0Y2hlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLmxhbmd1YWdlLXN3aXRjaGVyIC5saW5rcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmxhbmd1YWdlLXN3aXRjaGVyIGxpOm50aC1vZi10eXBlKDEpIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5sYW5ndWFnZS1zd2l0Y2hlciBsaTpudGgtb2YtdHlwZSgxKSBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogMC44ZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzUwNTA1MDsgfVxuICAubGFuZ3VhZ2Utc3dpdGNoZXIgbGk6bnRoLW9mLXR5cGUoMikgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjNyZW07IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFJBSU5CT1dCQVJcbiAgVG9vayBvdmVyIGZyb20gU0hLQlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucmFpbmJvd2Jhcl9fYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDE2cHg7XG4gIHBhZGRpbmc6IDAgMTRweCAwIDJweDtcbiAgbWFyZ2luLWJvdHRvbTogMi4yZW07XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIC8qIFBlcm1hbGluayAtIHVzZSB0byBlZGl0IGFuZCBzaGFyZSB0aGlzIGdyYWRpZW50OiBodHRwOi8vY29sb3J6aWxsYS5jb20vZ3JhZGllbnQtZWRpdG9yLyM4MWMxNDkrMCxiNmQ1NDcrNDAsZmZkZDNjKzUwLGZmM2MwMCsxMDAgKi9cbiAgYmFja2dyb3VuZDogIzgxYzE0OTtcbiAgLyogT2xkIGJyb3dzZXJzICovXG4gIC8qIElFOSBTVkcsIG5lZWRzIGNvbmRpdGlvbmFsIG92ZXJyaWRlIG9mICdmaWx0ZXInIHRvICdub25lJyAqL1xuICBiYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJeE1EQWxJaUI1TWowaU1DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJemd4WXpFME9TSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJalF3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJMkkyWkRVME55SWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJalV3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJMlptWkdRell5SWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU5tWmpOak1EQWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsICM4MWMxNDkgMCUsICNiNmQ1NDcgMzUlLCAjZmZkZDNjIDUwJSwgI2ZmM2MwMCAxMDAlKTtcbiAgLyogRkYzLjYtMTUgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgIzgxYzE0OSAwJSwgI2I2ZDU0NyAzNSUsICNmZmRkM2MgNTAlLCAjZmYzYzAwIDEwMCUpO1xuICAvKiBDaHJvbWUxMC0yNSxTYWZhcmk1LjEtNiAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM4MWMxNDkgMCUsICNiNmQ1NDcgMzUlLCAjZmZkZDNjIDUwJSwgI2ZmM2MwMCAxMDAlKTtcbiAgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyM4MWMxNDknLCBlbmRDb2xvcnN0cj0nI2ZmM2MwMCcsIEdyYWRpZW50VHlwZT0xKTtcbiAgLyogSUU2LTggKi8gfVxuXG4ucmFpbmJvd2Jhcl9faW5kaWNhdG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLWxlZnQ6IDIwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTJweDsgfVxuICAucmFpbmJvd2Jhcl9faW5kaWNhdG9yOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgbWFyZ2luLXRvcDogMThweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMCA4cHggMTBweCA4cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZjhmOGY4IHRyYW5zcGFyZW50OyB9XG5cbi5yYWluYm93YmFyX190b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDcycHg7XG4gIGhlaWdodDogMnJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICBtYXJnaW4tdG9wOiAyOHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZjhmOGY4OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBXWVNJV1lHXG5cbiAgVE9ETzogQWRkIHRob3NlIHN0eWxpbmcgYXMgYSBzdHlsZSBpbiB0aGUgd3lzaXd5Zy5cbiAgV2UgZGlkIGl0IGxpa2UgdGhpcyB0byBjb25zdW1lIGxlc3MgdGltZS5cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFNNQVJUQkFOTkVSXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zbWFydGJhbm5lci1hbmRyb2lkIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDc4cHg7XG4gIGJhY2tncm91bmQ6ICM1MDUwNTA7IH1cbiAgLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWJ1dHRvbiB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQ6ICMxYjE5MWM7IH1cbiAgLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWJ1dHRvbi10ZXh0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gIC5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1pbmZvLFxuICAuc21hcnRiYW5uZXItYW5kcm9pZCAuc21hcnRiYW5uZXItY2xvc2Uge1xuICAgIHRleHQtc2hhZG93OiBub25lOyB9XG4gIC5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1jbG9zZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRkxZT1VUXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5mbHlvdXRfX2NvbnRhaW5lciB7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjZzIGVhc2UtaW4tb3V0LCBib3R0b20gODAwbXMgZWFzZS1pbi1vdXQ7XG4gIGJveC1zaGFkb3c6IHJnYmEoMjcsIDI1LCAyOCwgMC4xKSAwIDFweCAxNXB4IDBweDtcbiAgcGVyc3BlY3RpdmU6IDE1MDBweDtcbiAgd2lsbC1jaGFuZ2U6IGhlaWdodCwgYm90dG9tO1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDM2JTtcbiAgei1pbmRleDogODAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDBkMGQwO1xuICBib3JkZXItd2lkdGg6IDFweCAwIDFweCAxcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBoZWlnaHQ6IDMzOHB4OyB9XG4gIC5mbHlvdXRfX2NvbnRhaW5lci5wcmVwYXJlLWhpZGluZyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuZmx5b3V0X19jb250YWluZXIuaXMtaGlkZGVuIHtcbiAgICBib3R0b206IDBweDtcbiAgICBoZWlnaHQ6IDYwcHg7IH1cbiAgICAuZmx5b3V0X19jb250YWluZXIuaXMtaGlkZGVuIC5mbHlvdXRfX3RvZ2dsZV9fYnV0dG9uIHtcbiAgICAgIGhlaWdodDogNjBweDsgfVxuICAuZmx5b3V0X19jb250YWluZXIuanMtcHJvY2Vzc2VkIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSBhbmQgKG1pbi1oZWlnaHQ6IDYwMHB4KSB7XG4gICAgaHRtbC5qcyAuZmx5b3V0X19jb250YWluZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uZmx5b3V0X19uYXYge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogODEwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA2NHB4OyB9XG4gIC5mbHlvdXRfX25hdjpob3ZlciAuZmx5b3V0X19uYXZfX2J1dHRvbiwgLmZseW91dC1pcy1vcGVuIC5mbHlvdXRfX25hdiAuZmx5b3V0X19uYXZfX2J1dHRvbiB7XG4gICAgb3BhY2l0eTogMC40OyB9XG5cbi5mbHlvdXRfX25hdl9faXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMGQwZDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHdpZHRoOiA2NHB4OyB9XG5cbi5mbHlvdXRfX25hdl9fYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxMHB4IDJweCA5cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2MHB4O1xuICB6LWluZGV4OiA4MjA7IH1cbiAgLmZseW91dF9fbmF2X19idXR0b246OmJlZm9yZSwgLmZseW91dF9fbmF2X19idXR0b246OmFmdGVyIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogN3B4IDAgN3B4IDdweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAtN3B4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAwO1xuICAgIHotaW5kZXg6IDgyMjsgfVxuICAuZmx5b3V0X19uYXZfX2J1dHRvbjo6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNkMGQwZDA7IH1cbiAgLmZseW91dF9fbmF2X19idXR0b246OmFmdGVyIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZmZmZmY7IH1cbiAgLmZseW91dF9fbmF2X19idXR0b24uYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAuZmx5b3V0X19uYXZfX2J1dHRvbi5hY3RpdmU6OmJlZm9yZSwgLmZseW91dF9fbmF2X19idXR0b24uYWN0aXZlOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLmZseW91dF9fbmF2X19idXR0b24uYWN0aXZlOjphZnRlciB7XG4gICAgICBsZWZ0OiAtMXB4OyB9XG4gIC5mbHlvdXRfX25hdl9fYnV0dG9uOmZvY3VzIHtcbiAgICB6LWluZGV4OiA4MjE7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuZmx5b3V0X19uYXZfX2J1dHRvbjpob3ZlciB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9XG5cbi5mbHlvdXRfX2J1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwIGF1dG8gNHB4OyB9XG5cbi5mbHlvdXRfX2J1dHRvbl9fdGl0bGUsXG4uZmx5b3V0X190b2dnbGVfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7IH1cblxuLmZseW91dF9fdG9nZ2xlX19idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogODIwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dCwgaGVpZ2h0IDAuNnMgZWFzZS1pbi1vdXQ7IH1cbiAgLmlzLWhpZGRlbiAuZmx5b3V0X190b2dnbGVfX2J1dHRvbiB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgxNTAwcHgpIHJvdGF0ZVooMTgwZGVnKSByb3RhdGVZKDE4MGRlZyk7IH1cbiAgLmZseW91dF9fdG9nZ2xlX19idXR0b246Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuLmZseW91dF9fcGFuZWwge1xuICBib3gtc2hhZG93OiByZ2JhKDI3LCAyNSwgMjgsIDAuMSkgMCAxcHggMTVweCAwcHg7XG4gIHRyYW5zaXRpb246IDAuNHMgY3ViaWMtYmV6aWVyKDAuNDYsIDAuMjQsIDAuMjQsIDEuMjYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDBkMGQwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTFweDtcbiAgcmlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA2NDBweDtcbiAgei1pbmRleDogODEwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTAuNzVyZW0pO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIG1pbi1oZWlnaHQ6IDMzOHB4O1xuICBmb250LXNpemU6IDAuODU3MTRlbTsgfVxuICAubWR6LW5vLWZsZXhib3ggLmZseW91dF9fcGFuZWwge1xuICAgIG1pbi1oZWlnaHQ6IDM2MHB4OyB9XG4gIC5kaXNwbGF5ZWQgKyAuZmx5b3V0X19wYW5lbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAuYWN0aXZlICsgLmZseW91dF9fcGFuZWwge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiA4MTE7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuZmx5b3V0X19wYW5lbCAuZ3JpZCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMGQwZDA7IH1cbiAgLmZseW91dF9fcGFuZWwgLmdyaWQtLXRpZ2h0IC5ib3gge1xuICAgIHBhZGRpbmc6IDQ4cHggMThweDtcbiAgICBib3JkZXItd2lkdGg6IDAgMXB4IDAgMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgICAuZmx5b3V0X19wYW5lbCAuZ3JpZC0tdGlnaHQgLmJveCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxOHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMThweDsgfSB9XG4gIC5mbHlvdXRfX3BhbmVsIC5kYXRlLWRpc3BsYXktc2luZ2xlIHtcbiAgICBmb250LXNpemU6IDAuN2VtOyB9XG4gIC5mbHlvdXRfX3BhbmVsIC5saXN0LWNvbXBhY3Qge1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5mbHlvdXRfX3BhbmVsIC5saXN0LWNvbXBhY3QgbGkge1xuICAgICAgcGFkZGluZzogMCAwIDMwcHggMDsgfVxuXG4uZmx5b3V0X19wYW5lbF9faGVhZGVyIHtcbiAgcGFkZGluZzogMThweDsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgU1BJTk5FUlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYWpheC1wcm9ncmVzcy1mdWxsc2NyZWVuIHtcbiAgd2lkdGg6IDNlbTtcbiAgaGVpZ2h0OiAzZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA5ODBweDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAxO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJveC1zaGFkb3c6IDBweCAxcHggMnB4IDBweCByZ2JhKDI3LCAyNSwgMjgsIDAuMSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5hamF4LXByb2dyZXNzLWZ1bGxzY3JlZW4ge1xuICAgICAgdG9wOiA2MDBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLmFqYXgtcHJvZ3Jlc3MtZnVsbHNjcmVlbiB7XG4gICAgICB0b3A6IDgwMHB4OyB9IH1cbiAgLmFqYXgtcHJvZ3Jlc3MtZnVsbHNjcmVlbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXRvcDogMC4xZW0gc29saWQgcmdiYSgzNywgMTQ5LCAyMTcsIDAuMSk7XG4gICAgYm9yZGVyLXJpZ2h0OiAwLjFlbSBzb2xpZCByZ2JhKDM3LCAxNDksIDIxNywgMC41KTtcbiAgICBib3JkZXItYm90dG9tOiAwLjFlbSBzb2xpZCByZ2JhKDM3LCAxNDksIDIxNywgMC44KTtcbiAgICBib3JkZXItbGVmdDogMC4xZW0gc29saWQgIzI1OTVkOTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgYW5pbWF0aW9uOiByb3RhdGlvbiAuNHMgaW5maW5pdGUgbGluZWFyOyB9XG5cbkBrZXlmcmFtZXMgcm90YXRpb24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgNTUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgQ0hBUlRTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogY29sb3IgbGVnZW5kc1xuICovXG4uY29sb3ItbGVnZW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMWVtO1xuICBoZWlnaHQ6IDFlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjE1ZW07IH1cblxuLmNvbG9yLWxlZ2VuZC0tYnJhbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU5NWQ5OyB9XG5cbi5jb2xvci1sZWdlbmQtLWJyYW5kLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTk2ODk3OyB9XG5cbi5jb2xvci1sZWdlbmQtLWFsdC1saWdodGVzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuLmNvbG9yLWxlZ2VuZC0tYWx0LWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4OyB9XG5cbi5jb2xvci1sZWdlbmQtLWFsdC1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4ZDhjOGQ7IH1cblxuLmNvbG9yLWxlZ2VuZC0tYWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdkN2Q3ZDsgfVxuXG4uY29sb3ItbGVnZW5kLS1hbHQtZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MDUwNTA7IH1cblxuLmNvbG9yLWxlZ2VuZC0tYWx0LWRhcmtlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYjE5MWM7IH1cblxuLmNvbG9yLWxlZ2VuZC0tZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMGQwZDA7IH1cblxuLmNvbG9yLWxlZ2VuZC0tbGUtY2x1YiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMmFkMjQ7IH1cblxuLmNvbG9yLWxlZ2VuZC0tbGUtY2x1Yi1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYzNmExNjsgfVxuXG4vKipcbiAqIGRvbnV0XG4gKi9cbi5kb251dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDE2ZW07XG4gIG1pbi1oZWlnaHQ6IDEwZW07XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBQSUxMU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucGlsbCB7XG4gIG1pbi13aWR0aDogMS42ZW07XG4gIHBhZGRpbmc6IDAuNGVtIDAuMjVlbSAwLjI1ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMC41ZW07XG4gIHJpZ2h0OiAtMC43NWVtO1xuICB6LWluZGV4OiAyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgbGluZS1oZWlnaHQ6IDAuOWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTk1ZDk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDAuOGVtO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MS45Mzc1ZW0pIHtcbiAgICAucGlsbCB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuNmVtOyB9IH1cblxuLnBpbGwtLW1lbnUge1xuICB0b3A6IDAuMWVtO1xuICByaWdodDogLTEuNWVtOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGT1JNIElORk8gQkxPQ0tcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEZJTFRFUlNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZvcm0taXRlbS1yYWRpby1jaGVja2JveC0tYXMtZmlsdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICN2aWV3cy1leHBvc2VkLWZvcm0tYnJhbmNoZXMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzhweDsgfSB9XG5cbiN2aWV3cy1leHBvc2VkLWZvcm0tYnJhbmNoZXMtbGlzdCAuZm9ybS1pdGVtLWZpZWxkLWJyYW5jaC1lci1kaXN0cmljdC10YXJnZXQtaWQge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgI3ZpZXdzLWV4cG9zZWQtZm9ybS1icmFuY2hlcy1saXN0IC5mb3JtLWl0ZW0tZmllbGQtYnJhbmNoLWVyLWRpc3RyaWN0LXRhcmdldC1pZCB7XG4gICAgICB3aWR0aDogMjIlOyB9IH1cbiAgI3ZpZXdzLWV4cG9zZWQtZm9ybS1icmFuY2hlcy1saXN0IC5mb3JtLWl0ZW0tZmllbGQtYnJhbmNoLWVyLWRpc3RyaWN0LXRhcmdldC1pZCBzZWxlY3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2Fycm93LWRvd24uc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDk2JSBjZW50ZXI7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lOyB9XG4gICAgI3ZpZXdzLWV4cG9zZWQtZm9ybS1icmFuY2hlcy1saXN0IC5mb3JtLWl0ZW0tZmllbGQtYnJhbmNoLWVyLWRpc3RyaWN0LXRhcmdldC1pZCBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgICAjdmlld3MtZXhwb3NlZC1mb3JtLWJyYW5jaGVzLWxpc3QgLmZvcm0taXRlbS1maWVsZC1icmFuY2gtZXItZGlzdHJpY3QtdGFyZ2V0LWlkIHNlbGVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDkzJSBjZW50ZXI7IH0gfVxuXG4jdmlld3MtZXhwb3NlZC1mb3JtLWJyYW5jaGVzLWxpc3QgLmZvcm0tZ3JvdXAtLWNoZWNrYm94LXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjJlbSkge1xuICAgICN2aWV3cy1leHBvc2VkLWZvcm0tYnJhbmNoZXMtbGlzdCAuZm9ybS1ncm91cC0tY2hlY2tib3gtd3JhcHBlciB7XG4gICAgICB3aWR0aDogNzglOyB9IH1cblxuI3ZpZXdzLWV4cG9zZWQtZm9ybS1icmFuY2hlcy1saXN0IC5mb3JtLWl0ZW0tcmFkaW8tY2hlY2tib3gtLWFzLWZpbHRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4jdmlld3MtZXhwb3NlZC1mb3JtLWJyYW5jaGVzLWxpc3QgLmZvcm0tY2hlY2tib3hlcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAjdmlld3MtZXhwb3NlZC1mb3JtLWJyYW5jaGVzLWxpc3QgLmZvcm0tY2hlY2tib3hlcyA+IGRpdiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNQVBcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm1hcF9kaXNwbGF5LXRvZ2dsZS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW4tYm90dG9tOiA1NXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgLm1hcF9kaXNwbGF5LXRvZ2dsZS13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDgwcHg7IH0gfVxuXG4ubWFwX2Rpc3BsYXktdG9nZ2xlLXdyYXBwZXItLW9wZW4ge1xuICBtYXJnaW4tYm90dG9tOiAxNTBweDsgfVxuXG4ubWFwX19jb250ZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiA4MDBweDtcbiAgbWFyZ2luLXRvcDogLTExMHB4O1xuICBtYXJnaW4tYm90dG9tOiA5N3B4OyB9XG5cbi5tYXBfX2NvbnRlbnQtLWNvbGxhcHNlZCB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubWFwX19pbmZvYm94IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMzAwcHg7XG4gIGxlZnQ6IC0zMDBweDtcbiAgbWluLWhlaWdodDogNDAwcHg7XG4gIG1hcmdpbi10b3A6IC0zNXB4O1xuICBwYWRkaW5nOiAxMnB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkMGQwZDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJveC1zaGFkb3c6IHJnYmEoMjcsIDI1LCAyOCwgMC4xKSAwIDFweCAxNXB4IDBweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcywgdHJhbnNmb3JtIDIwMG1zOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MmVtKSB7XG4gICAgLm1hcF9faW5mb2JveCB7XG4gICAgICB3aWR0aDogNDAwcHg7IH0gfVxuXG4ubWFwX19pbmZvYm94LS12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgbGVmdDogMTJweDsgfVxuXG4ubWFwX19pbmZvYm94LS1icmFuY2ggLmxvY2F0aW9uLXRpdGxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWFwX19pbmZvYm94LS1icmFuY2ggLmJveCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLm1hcF9faW5mb2JveC0tYnJhbmNoIC5ncmlkX19pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGRUFUVVJFU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZmVhdHVyZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDsgfVxuXG4uZmVhdHVyZSAuY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDMwdmg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHZoO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmZlYXR1cmUgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbWluLWhlaWdodDogMTAwdmg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjEuOTM3NWVtKSB7XG4gICAgLmZlYXR1cmUgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbWluLWhlaWdodDogNjh2aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MS45Mzc1ZW0pIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmZlYXR1cmUgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbWluLWhlaWdodDogNDV2aDsgfSB9XG4gIEBtZWRpYSAobWluLWhlaWdodDogMTIwMHB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuZmVhdHVyZSAuY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBtaW4taGVpZ2h0OiA1MnZoOyB9IH1cblxuLmZlYXR1cmUgaDIge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uZmVhdHVyZV9fY29udGVudCB7XG4gIHdpZHRoOiA4MCU7XG4gIG1heC13aWR0aDogNDAwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5mZWF0dXJlX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA0MCU7IH0gfVxuXG4uZmVhdHVyZXNfX2ltYWdlcyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkgYW5kIChtYXgtd2lkdGg6IDYxLjkzNzVlbSkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmZlYXR1cmVzX19pbWFnZXMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjEuOTM3NWVtKSB7XG4gICAgLmZlYXR1cmVzX19pbWFnZXMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ucGhvbmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cDovL2UuYmNmLmNoL3RoZW1lcy9jdXN0b20vYmNmL2ltYWdlcy9iZy9waG9uZS5wbmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDI5dmg7XG4gIHBhZGRpbmctdG9wOiA1OHZoO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTB2aDtcbiAgcmlnaHQ6IDN2dztcbiAgei1pbmRleDogMTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygxMnB4IDEycHggN3B4IHJnYmEoMCwgMCwgMCwgMC41KSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2Utb3V0OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MS45Mzc1ZW0pIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5waG9uZSB7XG4gICAgICByaWdodDogMTV2dzsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MS45Mzc1ZW0pIHtcbiAgICAucGhvbmUge1xuICAgICAgd2lkdGg6IDI5dmg7XG4gICAgICBwYWRkaW5nLXRvcDogNTh2aDtcbiAgICAgIHJpZ2h0OiAxNXZ3OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYxLjkzNzVlbSkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAucGhvbmUge1xuICAgICAgd2lkdGg6IDIydmg7XG4gICAgICBwYWRkaW5nLXRvcDogNDR2aDtcbiAgICAgIHJpZ2h0OiA4dnc7IH0gfVxuICBAbWVkaWEgKG1pbi1oZWlnaHQ6IDEyMDBweCkgYW5kIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAgIC5waG9uZSB7XG4gICAgICByaWdodDogMjB2dzsgfSB9XG4gIC5waG9uZTo6YmVmb3JlLCAucGhvbmU6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogNHZoO1xuICAgIGhlaWdodDogNHZoO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDEuOHZoO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcztcbiAgICB6LWluZGV4OiAyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5waG9uZS5zdGljay10by1jZW50ZXItLWlzLW92ZXI6OmJlZm9yZSwgLnBob25lLnN0aWNrLXRvLWNlbnRlci0taXMtb3Zlcjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmbGFzaDtcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcjsgfVxuICAucGhvbmUuc3RpY2stdG8tY2VudGVyLS1pcy1vdmVyOjphZnRlciB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxMDBtczsgfVxuXG5Aa2V5ZnJhbWVzIGZsYXNoIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlKDEpOyB9XG4gIDkwJSB7XG4gICAgb3BhY2l0eTogMC4yO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZSg1KTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSBzY2FsZSg0KTsgfSB9XG5cbi5zdGljay10by1jZW50ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMjF2aDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDQwMG1zIGN1YmljLWJlemllcigwLjc4NSwgMC4xMzUsIDAuMTUsIDAuODYpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjEuOTM3NWVtKSB7XG4gICAgLnN0aWNrLXRvLWNlbnRlciB7XG4gICAgICB0b3A6IDIxdmg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjEuOTM3NWVtKSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zdGljay10by1jZW50ZXIge1xuICAgICAgdG9wOiAyOHZoOyB9IH1cblxuLnN0aWNrLXRvLWNlbnRlci0taXMtb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIHRvcDogNDMydmg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDYxLjkzNzVlbSkge1xuICAgIC5zdGljay10by1jZW50ZXItLWlzLW92ZXIge1xuICAgICAgdG9wOiAyNzJ2aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2MS45Mzc1ZW0pIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnN0aWNrLXRvLWNlbnRlci0taXMtb3ZlciB7XG4gICAgICB0b3A6IDE3MXZoOyB9IH1cbiAgQG1lZGlhIChtaW4taGVpZ2h0OiAxMjAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zdGljay10by1jZW50ZXItLWlzLW92ZXIge1xuICAgICAgdG9wOiAxOTJ2aDsgfSB9XG5cbi5mZWF0dXJlLS0wIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMTJweCAxMnB4IDdweCByZ2JhKDAsIDAsIDAsIDAuNSkpOyB9XG5cbi5mZWF0dXJlLS0xIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMTJweCAxMnB4IDdweCByZ2JhKDAsIDAsIDAsIDAuNSkpOyB9XG5cbi5mZWF0dXJlLS0yIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygtMTJweCAxMnB4IDdweCByZ2JhKDAsIDAsIDAsIDAuNSkpOyB9XG5cbi5mZWF0dXJlLS0zIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMTJweCAxMnB4IDdweCByZ2JhKDAsIDAsIDAsIDAuNSkpOyB9XG5cbi5mZWF0dXJlLS00IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMTJweCAxMnB4IDdweCByZ2JhKDAsIDAsIDAsIDAuNSkpOyB9XG5cbi8qIGZhZGUgaW1hZ2UgaW4gYWZ0ZXIgbG9hZCAqL1xuLmxhenlsb2FkLFxuLmxhenlsb2FkaW5nIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubGF6eWxvYWRlZCB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNTAwbXM7XG4gIG9wYWNpdHk6IDE7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFNMSUNLIFNMSURFUiBERUZBVUxUUyxcbiAgU0VFIEJFTE9XIEZPUiBDVVNUT00gU0VUVElOR1NcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5zbGljay1saXN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uc2xpY2stbGlzdC5kcmFnZ2luZyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnNsaWNrLXRyYWNrOmJlZm9yZSxcbi5zbGljay10cmFjazphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnJzsgfVxuXG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4OyB9XG5cbltkaXI9J3J0bCddIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uc2xpY2stc2xpZGUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFNMSUNLIFNMSURFUiBDVVNUT00gU0VUVElOR1NcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNsaWNrLXNsaWRlciB7XG4gIHdpZHRoOiA4NiU7XG4gIGhlaWdodDogNzYuMyU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMiU7XG4gIGxlZnQ6IDcuNCU7XG4gIHotaW5kZXg6IDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5zbGljay1zbGlkZXIgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldixcbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ljb25zL2NoZXZyb24tLWxlZnQuc3ZnXCIpOyB9XG4gIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9jaGV2cm9uLS1yaWdodC5zdmdcIik7IH1cblxuLnNsaWNrLXNsaWRlcl9faXRlbSB7XG4gIHdpZHRoOiAyOXZoO1xuICBoZWlnaHQ6IDQ0LjN2aDsgfVxuXG4vKipcbiAqIFNraW5zIC8gT3ZlcnJpZGVzXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMRSBDTFVCXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5sZS1jbHViIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDE2MiwgMTczLCAzNiwgMC42KTsgfVxuICAubGUtY2x1YiBhOmZvY3VzIHtcbiAgICBvdXRsaW5lLWNvbG9yOiAjYTJhZDI0OyB9XG4gIC5sZS1jbHViIC5oZXJvX190aXRsZSxcbiAgLmxlLWNsdWIgLmhlYWRpbmctLXByaW1hcnkge1xuICAgIGNvbG9yOiAjYTJhZDI0OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAzMGVtKSB7XG4gICAgLmxlLWNsdWIgLmhlcm8tLWxhbmRzY2FwZV9fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMThweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMThweDsgfSB9XG4gIC5sZS1jbHViIC5saW5rLS1sZS1jbHViIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhMmFkMjQ7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5sZS1jbHViIC5uYXZpZ2F0aW9uLXByaW1hcnlfX21lbnUtaXRlbS0tYWN0aXZlOmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjYTJhZDI0OyB9XG4gIC5sZS1jbHViIC5uYXZpZ2F0aW9uLXNlY29uZGFyeSB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2EyYWQyNDsgfVxuICAubGUtY2x1YiAubmF2aWdhdGlvbi10ZXJ0aWFyeV9faGVhZGluZzpob3ZlcixcbiAgLmxlLWNsdWIgLm5hdmlnYXRpb24tcXVhdGVybmFyeV9faGVhZGluZzpob3ZlciB7XG4gICAgY29sb3I6ICNhMmFkMjQ7IH1cbiAgLmxlLWNsdWIgLnRhYnMtLWRlZmF1bHQ6OmFmdGVyLFxuICAubGUtY2x1YiAudGFic19faXRlbV9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2EyYWQyNDsgfVxuICAubGUtY2x1YiAuY291bnRkb3duIHtcbiAgICBjb2xvcjogI2EyYWQyNDsgfVxuICAubGUtY2x1YiAucGFyYWdyYXBoLS10eXBlLS1wZy1hZGRpdGlvbmFsLXRleHQge1xuICAgIGNvbG9yOiByZ2JhKDgwLCA4MCwgODAsIDAuNik7IH1cbiAgLmxlLWNsdWIgLmJyZWFkY3J1bWJfX2xpbms6aG92ZXIge1xuICAgIGNvbG9yOiAjYTJhZDI0OyB9XG5cbi5tZXRhLW5hdmlnYXRpb24td3JhcHBlciB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNhMmFkMjQ7IH1cbiIsIi8qIVxuICogIEJDRiBiYXNlZCBvbiBLYW5iYXN1IDEuNVxuICovXG5cbkBpbXBvcnQgJ2Jhc2UnO1xuXG5cbi8qKlxuICogQ29tcG9uZW50c1xuICovXG5cbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9zYWljJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9zYWljLXJlc3BvbnNpdmUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9saXN0LWlubGluZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xpc3QtdGVhc2VkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGlzdC1jb21wYWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0ZXBwZWQtbGlzdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL211bHRpc3RlcHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1iJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFuZ3VhZ2Utc3dpdGNoZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9yYWluYm93YmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd3lzeXdpZyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NtYXJ0YmFubmVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmx5b3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3Bpbm5lci5zY3NzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2hhcnRzLnNjc3MnO1xuQGltcG9ydCAnY29tcG9uZW50cy9waWxscy5zY3NzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9ybV9pbmZvX2Jsb2NrJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmlsdGVycy5zY3NzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWFwLnNjc3MnO1xuXG5AaW1wb3J0ICdjb21wb25lbnRzL2ZlYXR1cmVzLnNjc3MnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGljay1zbGlkZXIuc2Nzcyc7XG5cbi8qKlxuICogU2tpbnMgLyBPdmVycmlkZXNcbiAqL1xuXG4gQGltcG9ydCAnc2tpbnMvbGUtY2x1Yic7XG5cblxuIiwiLyohXG4gKiAgQkNGIGJhc2UgYmFzZWQgb24gS2FuYmFzdSAxLjVcbiAqL1xuXG4vKipcbiAqIFNldHRpbmdzXG4gKi9cblxuQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG5cbi8qKlxuICogVG9vbHNcbiAqL1xuXG5AaW1wb3J0ICd0b29scy9mdW5jdGlvbnMnO1xuQGltcG9ydCAndG9vbHMvbWl4aW5zJztcbkBpbXBvcnQgJ3Rvb2xzL2VmZmVjdHMnO1xuXG4vKipcbiAqIFZlbmRvcnNcbiAqL1xuXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJ3ZlbmRvci90aW5nbGUnO1xuQGltcG9ydCAndmVuZG9yL3NtYXJ0LWFwcC1iYW5uZXIuc2Nzcyc7XG5cbi8qKlxuICogRGVmYXVsdHNcbiAqL1xuXG5AaW1wb3J0ICdkZWZhdWx0cy9ib3gtbW9kZWwnO1xuQGltcG9ydCAnZGVmYXVsdHMvZWxlbWVudHMnO1xuQGltcG9ydCAnZGVmYXVsdHMvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdkZWZhdWx0cy90YWJsZSc7XG5AaW1wb3J0ICdkZWZhdWx0cy9mb3Jtcyc7XG5cblxuLyoqXG4gKiBIZWxwZXJzXG4gKi9cblxuQGltcG9ydCAnaGVscGVycy90ZXh0JztcbkBpbXBvcnQgJ2hlbHBlcnMvY29sb3JzJztcbkBpbXBvcnQgJ2hlbHBlcnMvdGV4dC1yZXNwb25zaXZlJztcbkBpbXBvcnQgJ2hlbHBlcnMvZmxvYXQnO1xuQGltcG9ydCAnaGVscGVycy9zcGFjaW5ncyc7XG5AaW1wb3J0ICdoZWxwZXJzL3NwYWNpbmdzLXJlc3BvbnNpdmUnO1xuQGltcG9ydCAnaGVscGVycy9pbWFnZXMnO1xuQGltcG9ydCAnaGVscGVycy9wb3NpdGlvbm5pbmcnO1xuQGltcG9ydCAnaGVscGVycy9lZGl0aW9uLW1vZGUnO1xuQGltcG9ydCAnaGVscGVycy9kaXNwbGF5JztcbkBpbXBvcnQgJ2hlbHBlcnMvYW5jaG9ycyc7XG5cblxuLyoqXG4gKiBDb21wb25lbnRzXG4gKi9cblxuQGltcG9ydCAnY29tcG9uZW50cy9ncmlkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ3JpZC1yZXNwb25zaXZlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd2lkdGhzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd2lkdGhzLXJlc3BvbnNpdmUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9lbWJlZC1yZXNwb25zaXZlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGluayc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J0bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JveCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLXJlc3BvbnNpdmUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb250YWluZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zZWN0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWFnbmV0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGlzdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xpc3Qtc3RhY2tlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xpc3QtaWNvbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mb290ZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9tYWluLXRlYXNlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL25hdmlnYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZXRhLW5hdmlnYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZWNvbW1lbmRhdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xvZ28nO1xuQGltcG9ydCAnY29tcG9uZW50cy9xdWljay1zZWFyY2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy9nZW5lcmljLW1vZGFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9ydGdhZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZXNzYWdlcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NvdW50ZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wb3BvdmVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd2l6YXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZGF0ZXRpbWVwaWNrZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2VhcmNoLWJsb2NrJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbmF2JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9kYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy91c2VyLWFjY291bnQuc2Nzcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsYWdzLnNjc3MnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb250ZXN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2VsZWN0Ym94LnNjc3MnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxjdWxhdG9yJztcblxuXG4vKipcbiAqIFN0cnVjdHVyZXNcbiAqL1xuXG5AaW1wb3J0ICdzdHJ1Y3R1cmVzL2hlcm8nO1xuXG5cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgR0xPQkFMIFNFVFRJTkdTXG5cbiAgQ2hlY2sgdGhlIGZvbGxvd2luZyBwYWdlIGZvciBkZXRhaWxzOlxuICBodHRwOi8vYmNmLXN0eWxlZ3VpZGUuZC5jbGllbnRzLmxpaXAuY2gvc2V0dGluZ3MuaHRtbFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vIFVzZSB0aGlzIHNldHRpbmcgdG8gcHJlZml4IGFsbCB0aGUgY29tcG9uZW50cyBjbGFzc2VzXG4kbmFtZXNwYWNlOiAgICAgICAgICAgICAgICAgICAgICAgICAnJyAhZGVmYXVsdDtcblxuXG4vKipcbiAqIENvbG9yc1xuICovXG5cbiRicmFuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICMyNTk1ZDkgIWRlZmF1bHQ7XG4kYnJhbmQtY29sb3ItZGFyazogICAgICAgICAgICAgICAgICAjMTk2ODk3ICFkZWZhdWx0O1xuJGJyYW5kLWNvbG9yLWxpZ2h0OiAgICAgICAgICAgICAgICAgI2UzZjFmYSAhZGVmYXVsdDtcbiRhbHQtY29sb3ItbGlnaHRlc3Q6ICAgICAgICAgICAgICAgICNmZmZmZmYgIWRlZmF1bHQ7XG4kYWx0LWNvbG9yLWxpZ2h0ZXI6ICAgICAgICAgICAgICAgICAjZjhmOGY4ICFkZWZhdWx0O1xuJGFsdC1jb2xvci1saWdodC0yOiAgICAgICAgICAgICAgICAgI2JmYmZiZiAhZGVmYXVsdDtcbiRhbHQtY29sb3ItbGlnaHQ6ICAgICAgICAgICAgICAgICAgICM4ZDhjOGQgIWRlZmF1bHQ7XG4kYWx0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAjN2Q3ZDdkICFkZWZhdWx0O1xuJGFsdC1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICAgIzUwNTA1MCAhZGVmYXVsdDtcbiRhbHQtY29sb3ItZGFya2VyOiAgICAgICAgICAgICAgICAgICMxYjE5MWMgIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICAgICAgICAgICAgICAjZDBkMGQwICFkZWZhdWx0O1xuJGxlLWNsdWItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2EyYWQyNCAhZGVmYXVsdDtcbiRsZS1jbHViLWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICM2MzZhMTYgIWRlZmF1bHQ7XG4kYmFzZS1ia2ctY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYWx0LWNvbG9yLWxpZ2h0ZXN0ICFkZWZhdWx0O1xuXG4kZXJyb3ItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjYzcwMDM5ICFkZWZhdWx0O1xuXG4vLyB2YXJpYW50czpcbiRicmFuZC1jb2xvci10cmFuc3BhcmVudDogICAgICAgICAgIHRyYW5zcGFyZW50aXplKCRicmFuZC1jb2xvciwgMC4xKTtcbiRsZS1jbHViLWNvbG9yLXRyYW5zcGFyZW50OiAgICAgICAgIHRyYW5zcGFyZW50aXplKCRsZS1jbHViLWNvbG9yLCAwLjEpO1xuJHNoYWRvdy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnRpemUoJGFsdC1jb2xvci1kYXJrZXIsIDAuOSk7XG4kc2hhZG93LWNvbG9yLWRlbnNlOiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudGl6ZSgkYWx0LWNvbG9yLWRhcmtlciwgMC43KTtcblxuLy8gbWVzc2FnZSBjb2xvcnM6XG4kY29sb3Itc3VjY2VzczogZ3JlZW4gIWRlZmF1bHQ7XG4kY29sb3Itd2FybmluZzogb3JhbmdlICFkZWZhdWx0O1xuJGNvbG9yLWRhbmdlcjogICRlcnJvci1jb2xvciAhZGVmYXVsdDtcblxuLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKi9cblxuJGZvbnQtZmFtaWx5LWRlZmF1bHQ6ICAgICAgICAgICAgICAgJ0ZydXRpZ2VyTmV4dCcsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbGUtY2x1YjogICAgICAgICAgICAgICAnQ29va2llJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuXG4kZm9udC1zaXplLWRlZmF1bHQ6ICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0OyAvLyBmb3IgZW0gY2FsY3VsYXRpb25zIG9ubHlcbiRsaW5lLWhlaWdodC1kZWZhdWx0OiAgICAgICAgICAgICAgIDEuMjggIWRlZmF1bHQ7XG4kZm9udC1saW5lLWhlaWdodC1jb3JyZWN0aW9uOiAgICAgICAwLjEwNmVtOyAgICAvLyB1c2VmdWwgZm9yIGZpbmUgdHVuaW5nIHZlcnRpY2FsbHkgY2VudGVyZWQgaXRlbXMgKGkuZSBidXR0b25zKVxuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkYWx0LWNvbG9yLWRhcmsgIWRlZmF1bHQ7XG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAkYnJhbmQtY29sb3IgIWRlZmF1bHQ7XG4kbXV0ZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudGl6ZSgkdGV4dC1jb2xvciwuNCkgIWRlZmF1bHQ7XG5cbi8vIHJlc3BvbnNpdmUgZm9udCBzaXplcywgc2V0IHRoZW0gaW4gZW06XG5cblxuXG4kbWluLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAxOHB4IC8gJGZvbnQtc2l6ZS1kZWZhdWx0ICogMWVtICFkZWZhdWx0O1xuJG1pbi1mb250LXNpemUteHM6ICAgICAgICAgICAgICAgICAgMTZweCAvICRmb250LXNpemUtZGVmYXVsdCAqIDFlbSAhZGVmYXVsdDsgLy8gZm9yIHZlcnkgc21hbGwgZGV2aWNlc1xuJG1heC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgMjFweCAvICRmb250LXNpemUtZGVmYXVsdCAqIDFlbSAhZGVmYXVsdDtcbiRtaW4tbWF4LXJhdGlvOiAgICAgICAgICAgICAgICAgICAgIDFlbSAgLyAkbWF4LWZvbnQtc2l6ZSAvICggMWVtICAvICRtYXgtZm9udC1zaXplICogMCArIDEpOyAvLyBzdHJpcCBlbSB1bml0O1xuXG4kbWluLWZvbnQtc2l6ZS1oMTogICAgICAgICAgICAgICAgICAzNnB4IC8gJGZvbnQtc2l6ZS1kZWZhdWx0ICogMWVtICFkZWZhdWx0O1xuJG1pbi1mb250LXNpemUtaDI6ICAgICAgICAgICAgICAgICAgMzBweCAvICRmb250LXNpemUtZGVmYXVsdCAqIDFlbSAhZGVmYXVsdDtcbiRtaW4tZm9udC1zaXplLWgzOiAgICAgICAgICAgICAgICAgIDI1cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAxZW0gIWRlZmF1bHQ7XG4kbWluLWZvbnQtc2l6ZS1oNDogICAgICAgICAgICAgICAgICAyMnB4IC8gJGZvbnQtc2l6ZS1kZWZhdWx0ICogMWVtICFkZWZhdWx0O1xuJG1pbi1mb250LXNpemUtaDU6ICAgICAgICAgICAgICAgICAgMThweCAvICRmb250LXNpemUtZGVmYXVsdCAqIDFlbSAhZGVmYXVsdDtcbiRtaW4tZm9udC1zaXplLWg2OiAgICAgICAgICAgICAgICAgIDE2cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAxZW0gIWRlZmF1bHQ7XG4kbWluLWZvbnQtc2l6ZS10aW55OiAgICAgICAgICAgICAgICAxMnB4IC8gJGZvbnQtc2l6ZS1kZWZhdWx0ICogMWVtICFkZWZhdWx0O1xuJG1pbi1mb250LXNpemUtc21hbGw6ICAgICAgICAgICAgICAgMTRweCAvICRmb250LXNpemUtZGVmYXVsdCAqIDFlbSAhZGVmYXVsdDtcbiRtaW4tZm9udC1zaXplLWxhcmdlOiAgICAgICAgICAgICAgIDE4cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAxZW0gIWRlZmF1bHQ7XG5cbiRtYXgtZm9udC1zaXplLWgxOiAgICAgICAgICAgICAgICAgIDU4cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLWgyOiAgICAgICAgICAgICAgICAgIDQ0cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLWgzOiAgICAgICAgICAgICAgICAgIDMycHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLWg0OiAgICAgICAgICAgICAgICAgIDI2cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLWg1OiAgICAgICAgICAgICAgICAgIDIxcHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLWg2OiAgICAgICAgICAgICAgICAgIDE4cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLXRpbnk6ICAgICAgICAgICAgICAgIDE1cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLXNtYWxsOiAgICAgICAgICAgICAgIDE4cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLWxhcmdlOiAgICAgICAgICAgICAgIDI0cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcblxuJG1pbi1mb250LXNpemUtaGVyby10aXRsZTogICAgICAgICAgMjJweCAvICRmb250LXNpemUtZGVmYXVsdCAqIDFlbSAhZGVmYXVsdDtcbiRtYXgtZm9udC1zaXplLWhlcm8tdGl0bGU6ICAgICAgICAgIDM4cHggLyAkZm9udC1zaXplLWRlZmF1bHQgKiAkbWluLW1heC1yYXRpbyAqIDFlbSAhZGVmYXVsdDtcblxuXG4vKipcbiAqIFNwYWNpbmdzXG4gKi9cblxuJHJhdGlvOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMS42MTgwMzM5ODg3NSAhZGVmYXVsdDtcblxuJHNwYWNpbmctdW5pdC1kZWZhdWx0OiAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRzcGFjaW5nLXVuaXQtdGlueTogICAgICAgICAgICAgICAgIGZsb29yKCRzcGFjaW5nLXVuaXQtZGVmYXVsdCAvICgkcmF0aW8gKiAyKSkgIWRlZmF1bHQ7XG4kc3BhY2luZy11bml0LXNtYWxsOiAgICAgICAgICAgICAgICBmbG9vcigkc3BhY2luZy11bml0LWRlZmF1bHQgLyAkcmF0aW8pICFkZWZhdWx0O1xuJHNwYWNpbmctdW5pdC1sYXJnZTogICAgICAgICAgICAgICAgZmxvb3IoJHNwYWNpbmctdW5pdC1kZWZhdWx0ICogJHJhdGlvKSAhZGVmYXVsdDtcbiRzcGFjaW5nLXVuaXQtaHVnZTogICAgICAgICAgICAgICAgIGZsb29yKCRzcGFjaW5nLXVuaXQtZGVmYXVsdCAqICgkcmF0aW8gKiAyKSkgIWRlZmF1bHQ7XG5cbiRzcGFjaW5nczogICAgICAgICAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3RpZ2h0JyAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGlueScgJHNwYWNpbmctdW5pdC10aW55LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc21hbGwnICRzcGFjaW5nLXVuaXQtc21hbGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsYXJnZScgJHNwYWNpbmctdW5pdC1sYXJnZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2h1Z2UnICRzcGFjaW5nLXVuaXQtaHVnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSAhZGVmYXVsdDtcblxuXG4vLyB3aGVuIGFsaWduaW5nIHRleHQgYW5kIGljb25zOlxuJHNwYWNpbmctaWNvbi13aWR0aDogICAgICAgICAgICAgICAgMS40ZW07XG5cbi8qKlxuICogUmVzcG9uc2l2ZW5lc3NcbiAqL1xuXG5cbi8vIFVzZSBFTSBtZWRpYS1xdWVyaWVzIGZvciBiZXR0ZXIgYnJvd3NlciBjb25zaXN0ZW5jeVxuLy8gU2VlIGh0dHA6Ly96ZWxsd2suY29tL2Jsb2cvbWVkaWEtcXVlcnktdW5pdHNcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgICAgICAgIDQ4MHB4ICAvIDE2cHggKiAxZW0gIWRlZmF1bHQ7XG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICAgICAgICA2MzlweCAgLyAxNnB4ICogMWVtICFkZWZhdWx0O1xuJHNjcmVlbi14c2wtbWluOiAgICAgICAgICAgICAgICAgICAgNjQwcHggIC8gMTZweCAqIDFlbSAhZGVmYXVsdDtcbiRzY3JlZW4teHNsLW1heDogICAgICAgICAgICAgICAgICAgIDc2OHB4ICAvIDE2cHggKiAxZW0gIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICAgICAgICA3NjlweCAgLyAxNnB4ICogMWVtICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAgICAgICAgOTkxcHggIC8gMTZweCAqIDFlbSAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgICAgICAgIDk5MnB4ICAvIDE2cHggKiAxZW0gIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICAgICAgICAxMTk5cHggLyAxNnB4ICogMWVtICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAgICAgICAgMTIwMHB4IC8gMTZweCAqIDFlbSAhZGVmYXVsdDtcblxuJG1xLXhzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyhtYXgtd2lkdGg6ICN7JHNjcmVlbi14cy1tYXh9KScgIWRlZmF1bHQ7IC8vIERFUFJFQ0FURURcbiRtcS1zbTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICcobWluLXdpZHRoOiAjeyRzY3JlZW4tc20tbWlufSkgYW5kIChtYXgtd2lkdGg6ICN7JHNjcmVlbi1zbS1tYXh9KScgIWRlZmF1bHQ7IC8vIERFUFJFQ0FURURcbiRtcS1tZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICcobWluLXdpZHRoOiAjeyRzY3JlZW4tbWQtbWlufSkgYW5kIChtYXgtd2lkdGg6ICN7JHNjcmVlbi1tZC1tYXh9KScgIWRlZmF1bHQ7IC8vIERFUFJFQ0FURURcbiRtcS1sZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICcobWluLXdpZHRoOiAjeyRzY3JlZW4tbGctbWlufSknICFkZWZhdWx0OyAvLyBERVBSRUNBVEVEXG5cbiRicmVha3BvaW50cy1kZWZhdWx0OiAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3hzJyAgJyhtaW4td2lkdGg6ICN7JHNjcmVlbi14cy1taW59KScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd4c2wnICcobWluLXdpZHRoOiAjeyRzY3JlZW4teHNsLW1pbn0pJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NtJyAgJyhtaW4td2lkdGg6ICN7JHNjcmVlbi1zbS1taW59KScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtZCcgICcobWluLXdpZHRoOiAjeyRzY3JlZW4tbWQtbWlufSknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGcnICAnKG1pbi13aWR0aDogI3skc2NyZWVuLWxnLW1pbn0pJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSAhZGVmYXVsdDtcbiRicmVha3BvaW50cy1kZXNjOiAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3hzJyAgJyhtYXgtd2lkdGg6ICN7JHNjcmVlbi14cy1tYXh9KScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd4c2wnICcobWF4LXdpZHRoOiAjeyRzY3JlZW4teHNsLW1heH0pJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NtJyAgJyhtYXgtd2lkdGg6ICN7JHNjcmVlbi1zbS1tYXh9KScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtZCcgICcobWF4LXdpZHRoOiAjeyRzY3JlZW4tbWQtbWF4fSknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApICFkZWZhdWx0O1xuXG4kc2NyZWVuLW1haWw6ICAgICAgICAgICAgICAgICAgICAgICA1NzBweCAhZGVmYXVsdDtcblxuXG4vKipcbiAqIE1pc2NlbGxhbmVvdXNcbiAqL1xuXG4kYm9yZGVyLXJhZGl1cy1kZWZhdWx0OiAgICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICAgICAgICA2cHggIWRlZmF1bHQ7XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIENPTVBPTkVOVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKipcbiAqIEJ1dHRvbnNcbiAqL1xuXG4kYnRuLXVzZS1wYWRkaW5nLXJhdGlvOiAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgMC43NWVtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgMS4yNWVtO1xuJGJ0bi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgI3skYnRuLXBhZGRpbmctdmVydGljYWwgKyAkZm9udC1saW5lLWhlaWdodC1jb3JyZWN0aW9uIH0gJGJ0bi1wYWRkaW5nLWhvcml6b250YWwgJGJ0bi1wYWRkaW5nLXZlcnRpY2FsICAhZGVmYXVsdDtcblxuJGJ0bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgIDAuODVlbSAhZGVmYXVsdDtcbiRidG4tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAxcHggc29saWQgJGFsdC1jb2xvci1kYXJrZXIgIWRlZmF1bHQ7XG4kYnRuLWJrZzogICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWRlZmF1bHQgIWRlZmF1bHQ7XG4kYnRuLWljb24tc2l6ZS1mYWN0b3I6ICAgICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kYnRuLWljb24tc3BhY2luZzogICAgICAgICAgICAgICAgICAwLjZlbSAhZGVmYXVsdDtcblxuJGJ0bi1zbWFsbC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgI3sgMC42NWVtICsgJGZvbnQtbGluZS1oZWlnaHQtY29ycmVjdGlvbiB9IDAuODVlbSAwLjZlbSAhZGVmYXVsdDtcbiRidG4tc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgIDAuNzVlbSAhZGVmYXVsdDtcbiRidG4tc21hbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4kYnRuLWxhcmdlLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAjeyAwLjc1ZW0gKyAkZm9udC1saW5lLWhlaWdodC1jb3JyZWN0aW9uIH0gMS40ZW0gMC43NWVtICFkZWZhdWx0O1xuJGJ0bi1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgMC45NWVtICFkZWZhdWx0O1xuJGJ0bi1sYXJnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtZGVmYXVsdCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGFsdC1jb2xvci1kYXJrZXIgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmtnLWNvbG9yOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWhvdmVyLWNvbG9yOiAgICAgICAgICAgJGFsdC1jb2xvci1saWdodGVzdCAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ob3Zlci1ia2ctY29sb3I6ICAgICAgICRhbHQtY29sb3ItZGFya2VyICFkZWZhdWx0O1xuXG4kYnRuLWRlZmF1bHQtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkYWx0LWNvbG9yLWxpZ2h0ZXN0ICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWFjdGl2ZS1ia2ctY29sb3I6ICAgICAgJGFsdC1jb2xvci1kYXJrZXIgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICAgICRhbHQtY29sb3ItbGlnaHRlc3QgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmtnLWNvbG9yOiAgICAgICAgICAgICAkYWx0LWNvbG9yLWRhcmtlciAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yOiAgICAgICAgICAgJGFsdC1jb2xvci1kYXJrZXIgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktaG92ZXItYmtnLWNvbG9yOiAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGFsdC1jb2xvci1kYXJrZXIgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYWN0aXZlLWJrZy1jb2xvcjogICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuXG5cblxuJGJ0bi1wb3J0YWwtY29sb3I6ICAgICAgICAgICAgICAgICAkYWx0LWNvbG9yLWxpZ2h0ZXN0ICFkZWZhdWx0O1xuJGJ0bi1wb3J0YWwtYmtnLWNvbG9yOiAgICAgICAgICAgICAkYnJhbmQtY29sb3IgIWRlZmF1bHQ7XG5cbiRidG4tcG9ydGFsLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJGFsdC1jb2xvci1saWdodGVzdCAhZGVmYXVsdDtcbiRidG4tcG9ydGFsLWhvdmVyLWJrZy1jb2xvcjogICAgICAgJGFsdC1jb2xvci1kYXJrZXIgIWRlZmF1bHQ7XG5cbiRidG4tcG9ydGFsLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGFsdC1jb2xvci1saWdodCAhZGVmYXVsdDtcbiRidG4tcG9ydGFsLWFjdGl2ZS1ia2ctY29sb3I6ICAgICAgJGJyYW5kLWNvbG9yLWRhcmsgIWRlZmF1bHQ7XG5cblxuXG5cbiRidG4tdG4tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRhbHQtY29sb3ItbGlnaHRlc3QgIWRlZmF1bHQ7XG4kYnRuLXRuLWJrZy1jb2xvcjogICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRidG4tdG4tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRhbHQtY29sb3ItbGlnaHRlc3QgIWRlZmF1bHQ7XG5cbiRidG4tdG4taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICRhbHQtY29sb3ItZGFya2VyICFkZWZhdWx0O1xuJGJ0bi10bi1ob3Zlci1ia2ctY29sb3I6ICAgICAgICAgICAgJGFsdC1jb2xvci1saWdodGVzdCAhZGVmYXVsdDtcbiRidG4tdG4taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICRhbHQtY29sb3ItZGFya2VyICFkZWZhdWx0O1xuXG4kYnRuLXRuLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAkYnRuLXRuLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi10bi1hY3RpdmUtYmtnLWNvbG9yOiAgICAgICAgICAgJGJ0bi10bi1ob3Zlci1ia2ctY29sb3IgIWRlZmF1bHQ7XG4kYnRuLXRuLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICAgICAkYnRuLXRuLWhvdmVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuLyoqXG4gKiBGb3Jtc1xuICovXG5cbiRmaWVsZC11c2UtcGFkZGluZy1yYXRpbzogICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuXG5cbiRmaWVsZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kZmllbGQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZmllbGQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGZpZWxkLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kZmllbGQtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAxLjFlbSAhZGVmYXVsdDtcbiRmaWVsZC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgIDAuNDJlbSAhZGVmYXVsdDtcbiRmaWVsZC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICN7ICRmaWVsZC1wYWRkaW5nLXZlcnRpY2FsICsgJGZvbnQtbGluZS1oZWlnaHQtY29ycmVjdGlvbiB9ICRmaWVsZC1wYWRkaW5nLWhvcml6b250YWwgJGZpZWxkLXBhZGRpbmctdmVydGljYWwgIWRlZmF1bHQ7XG5cblxuJGZpZWxkLWJrZy1jb2xvcjogICAgICAgICAgICAgICAgICAgJGJhc2UtYmtnLWNvbG9yICFkZWZhdWx0O1xuJGZpZWxkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgMXB4IHNvbGlkICRhbHQtY29sb3ItbGlnaHQtMiAhZGVmYXVsdDtcbiRmaWVsZC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICRhbHQtY29sb3ItZGFya2VyICFkZWZhdWx0O1xuJGZpZWxkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtZGVmYXVsdCAhZGVmYXVsdDtcblxuJGZpZWxkLWRpc2FibGVkLWJrZy1jb2xvcjogICAgICAgICAgJGFsdC1jb2xvci1saWdodGVzdCAhZGVmYXVsdDtcbiRmaWVsZC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgIHRyYW5zcGFyZW50aXplKCRhbHQtY29sb3ItbGlnaHQsLjQpICFkZWZhdWx0O1xuJGZpZWxkLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgdHJhbnNwYXJlbnRpemUoJGFsdC1jb2xvciwuNCkgIWRlZmF1bHQ7XG5cbiRmaWVsZC1zbWFsbC1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhZGVmYXVsdDtcbiRmaWVsZC1zbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIDAuODVlbSAhZGVmYXVsdDtcbiRmaWVsZC1zbWFsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4kZmllbGQtbGFyZ2UtcGFkZGluZzogICAgICAgICAgICAgICAyN3B4ICFkZWZhdWx0O1xuJGZpZWxkLWxhcmdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgMS4yZW0gIWRlZmF1bHQ7XG4kZmllbGQtbGFyZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcblxuJGZpZWxkLWhlbHAtY29sb3I6ICAgICAgICAgICAgICAgICAgJGFsdC1jb2xvci1saWdodCAhZGVmYXVsdDtcblxuLy8gSW5wdXRbdHlwZT1cInJhbmdlXCJdXG4kdGh1bWItd2lkdGg6ICAgICAgICAgICAgIDI0cHggIWRlZmF1bHQ7XG4kdGh1bWItaGVpZ2h0OiAgICAgICAgICAgIDI0cHggIWRlZmF1bHQ7XG4kdGh1bWItYm9yZGVyLXJhZGl1czogICAgIDEycHggIWRlZmF1bHQ7XG4kdGh1bWItYmtnLWNvbG9yOiAgICAgICAgICRicmFuZC1jb2xvciAhZGVmYXVsdDtcbiR0aHVtYi1ib3JkZXItd2lkdGg6ICAgICAgMCAhZGVmYXVsdDtcbiR0aHVtYi1ib3JkZXItY29sb3I6ICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kdGh1bWItc2hhZG93LXNpemU6ICAgICAgIDRweCAhZGVmYXVsdDtcbiR0aHVtYi1zaGFkb3ctYmx1cjogICAgICAgNHB4ICFkZWZhdWx0O1xuJHRodW1iLXNoYWRvdy1jb2xvcjogICAgICByZ2JhKDAsIDAsIDAsIC4yKSAhZGVmYXVsdDtcblxuJHRyYWNrLWhlaWdodDogICAgICAgICAgIDhweCAhZGVmYXVsdDtcbiR0cmFjay1ia2ctY29sb3I6ICAgICAgICAjZGJkYmRiICFkZWZhdWx0O1xuJHRyYWNrLWFjdGl2ZS1ia2ctY29sb3I6IGxpZ2h0ZW4oJHRyYWNrLWJrZy1jb2xvciwgNSUpICFkZWZhdWx0O1xuJHRyYWNrLXNoYWRvdy1zaXplOiAgICAgIDAgIWRlZmF1bHQ7XG4kdHJhY2stc2hhZG93LWJsdXI6ICAgICAgMCAhZGVmYXVsdDtcbiR0cmFjay1zaGFkb3ctY29sb3I6ICAgICByZ2JhKDAsIDAsIDAsIC4yKSAhZGVmYXVsdDtcbiR0cmFjay1ib3JkZXItd2lkdGg6ICAgICAwICFkZWZhdWx0O1xuJHRyYWNrLWJvcmRlci1jb2xvcjogICAgICRhbHQtY29sb3IgIWRlZmF1bHQ7XG4kdHJhY2stYm9yZGVyLXJhZGl1czogICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vIHNlbGVjdGJveGVzXG4kY29sb3ItcmVkLWVycm9yOiByZ2IoMTg1LCA3NCwgNzIpICFkZWZhdWx0O1xuJGNvbG9yLWdyZXktYXJyb3c6IHJnYmEoMjA0LCAyMDQsIDIwNCwgMC4yKSAhZGVmYXVsdDtcbiR3aWR0aC1kZWZhdWx0OiAyMjBweCAhZGVmYXVsdDsgLy8gMyA5NjBweC1ncmlkIGNvbHVtbnNcbiR6aW5kZXgtc2VsZWN0LWRyb3Bkb3duOiAxMDYwICFkZWZhdWx0OyAvLyBtdXN0IGJlIGhpZ2hlciB0aGFuIGEgbW9kYWwgYmFja2dyb3VuZCAoMTA1MClcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogIzk5OSAhZGVmYXVsdDtcblxuLyoqXG4gKiBMaXN0c1xuICovXG5cbiRsaXN0LXNlcGFyYXRvci1zdHlsZTogICAgICAgICAgICAgIDFweCBzb2xpZCAkYWx0LWNvbG9yLWxpZ2h0ZXN0ICFkZWZhdWx0O1xuXG5cbi8qKlxuICogQm94XG4gKi9cblxuJGJveC1zcGFjaW5nLXJhdGlvOiAgICAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGJveC1zcGFjaW5nLXVuaXQtZGVmYXVsdDogICAgICAgICAgMjVweCAhZGVmYXVsdDtcbiRib3gtc3BhY2luZy11bml0LXRpbnk6ICAgICAgICAgICAgIGZsb29yKCRib3gtc3BhY2luZy11bml0LWRlZmF1bHQgLyAoJGJveC1zcGFjaW5nLXJhdGlvICogMikpICFkZWZhdWx0O1xuJGJveC1zcGFjaW5nLXVuaXQtc21hbGw6ICAgICAgICAgICAgZmxvb3IoJGJveC1zcGFjaW5nLXVuaXQtZGVmYXVsdCAvICRib3gtc3BhY2luZy1yYXRpbykgIWRlZmF1bHQ7XG4kYm94LXNwYWNpbmctdW5pdC1sYXJnZTogICAgICAgICAgICBmbG9vcigkYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0ICogJGJveC1zcGFjaW5nLXJhdGlvKSAhZGVmYXVsdDtcbiRib3gtc3BhY2luZy11bml0LWh1Z2U6ICAgICAgICAgICAgIGZsb29yKCRib3gtc3BhY2luZy11bml0LWRlZmF1bHQgKiAoJGJveC1zcGFjaW5nLXJhdGlvICogMikpICFkZWZhdWx0O1xuXG4kYm94LWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbiRib3gtZGVmYXVsdC1ia2ctY29sb3I6ICAgICAgICAgICAgICRhbHQtY29sb3ItbGlnaHRlc3QgIWRlZmF1bHQ7XG4kYm94LWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAgICAxcHggc29saWQgJGJvcmRlci1jb2xvci1kZWZhdWx0ICFkZWZhdWx0O1xuXG4kYm94LXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAkYWx0LWNvbG9yLWxpZ2h0ZXN0ICFkZWZhdWx0O1xuJGJveC1wcmltYXJ5LWJrZy1jb2xvcjogICAgICAgICAgICAgJGJyYW5kLWNvbG9yLXRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kYm94LXN0ZXBwZWQtc3RlcC1jb2xvcjogICAgICAgICAgICAjZWNlY2VjO1xuXG5cbi8qKlxuICogR3JpZFxuICovXG5cbiRncmlkLWZsZXg6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cbiRncmlkLXJhdGlvOiAgICAgICAgICAgICAgICAgICAgICAgIDEuNjE4MDMzOTg4NzUgIWRlZmF1bHQ7XG5cbiRncmlkLXNwYWNpbmctdW5pdC1kZWZhdWx0OiAgICAgICAgIDQwcHggIWRlZmF1bHQ7XG4kZ3JpZC1zcGFjaW5nLXVuaXQtdGlueTogICAgICAgICAgICBmbG9vcigkZ3JpZC1zcGFjaW5nLXVuaXQtZGVmYXVsdCAvICgkZ3JpZC1yYXRpbyAqIDIpKSAhZGVmYXVsdDtcbiRncmlkLXNwYWNpbmctdW5pdC1zbWFsbDogICAgICAgICAgIGZsb29yKCRncmlkLXNwYWNpbmctdW5pdC1kZWZhdWx0IC8gJGdyaWQtcmF0aW8pICFkZWZhdWx0O1xuJGdyaWQtc3BhY2luZy11bml0LWxhcmdlOiAgICAgICAgICAgZmxvb3IoJGdyaWQtc3BhY2luZy11bml0LWRlZmF1bHQgKiAkZ3JpZC1yYXRpbykgIWRlZmF1bHQ7XG4kZ3JpZC1zcGFjaW5nLXVuaXQtaHVnZTogICAgICAgICAgICBmbG9vcigkZ3JpZC1zcGFjaW5nLXVuaXQtZGVmYXVsdCAqICgkZ3JpZC1yYXRpbyAqIDIpKSAhZGVmYXVsdDtcblxuJGdyaWQtc3BhY2luZ3M6ICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGlnaHQnIDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW55JyAkZ3JpZC1zcGFjaW5nLXVuaXQtdGlueSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NtYWxsJyAkZ3JpZC1zcGFjaW5nLXVuaXQtc21hbGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsYXJnZScgJGdyaWQtc3BhY2luZy11bml0LWxhcmdlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaHVnZScgJGdyaWQtc3BhY2luZy11bml0LWh1Z2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBXaWR0aHNcbiAqL1xuXG4kd2lkdGhzLWNvbHVtbnM6ICAgICAgICAgICAgICAgICAgICA2LDUsNCwzLDIsMSAhZGVmYXVsdDtcbiR3aWR0aHMtYnJlYWtwb2ludHM6ICAgICAgICAgICAgICAgICRicmVha3BvaW50cy1kZWZhdWx0ICFkZWZhdWx0O1xuXG5cbi8qKlxuICogTWVkaWFcbiAqL1xuXG4kbWVkaWEtZ3V0dGVyOiAgICAgICAgICAgICAgICAgICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBNZWRpYSByZXNwb25zaXZlXG4gKi9cblxuJG1lZGlhLWNvbGxhcHNlOiAgICAgICAgICAgICAgICAgICAgJHNjcmVlbi1zbS1tYXggIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBNb3NhaWMgcmVzcG9uc2l2ZVxuICovXG5cbiRtb3NhaWMtY29sbGFwc2U6ICAgICAgICAgICAgICAgICAgICRzY3JlZW4tc20tbWF4ICFkZWZhdWx0O1xuXG5cbi8qKlxuICogQ29udGFpbmVyXG4gKi9cblxuJGNvbnRhaW5lci1ndXR0ZXItd2lkdGgteHM6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRjb250YWluZXItZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG4kY29udGFpbmVyLW1heC13aWR0aDogICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcbiRjb250YWluZXItbWQtbWF4LXdpZHRoOiAgICAgICAgICAgIDExNDBweCArICRjb250YWluZXItZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuJGNvbnRhaW5lci1sZy1tYXgtd2lkdGg6ICAgICAgICAgICAgMTQwMHB4ICsgJGNvbnRhaW5lci1ndXR0ZXItd2lkdGggIWRlZmF1bHQ7XG4kY29udGFpbmVyLWh1Z2UtbWF4LXdpZHRoOiAgICAgICAgICAxODAwcHggKyAkY29udGFpbmVyLWd1dHRlci13aWR0aCAhZGVmYXVsdDtcbi8qKlxuICogTWFpbiBoZWFkZXJcbiAqL1xuJG1haW4taGVhZGVyLWhlaWdodDogICAgICAgICAgICAgICAgNC44ZW07XG4kbWFpbi1oZWFkZXItaGVpZ2h0LW1kOiAgICAgICAgICAgICA5LjRlbTsgIC8vIHdoZW4gc2Vjb25kYXJ5IG5hdmlnYXRpb24gaXMgZGlzcGxheWVkO1xuXG4vKipcbiAqIFNlY3Rpb25zXG4gKi9cblxuJHNlY3Rpb24tc3BhY2luZy1kZWZhdWx0OiAgICAgICAgICAgOTBweCAhZGVmYXVsdDtcbiRzZWN0aW9uLXNwYWNpbmctc21hbGw6ICAgICAgICAgICAgIDcwcHggIWRlZmF1bHQ7XG4kc2VjdGlvbi1zcGFjaW5nLWh1Z2U6ICAgICAgICAgICAgIDEwNnB4ICFkZWZhdWx0O1xuXG5cbi8qKlxuICogVGFic1xuICovXG5cbiR0YWJzLXNwYWNpbmctdW5pdDogICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vKipcbiAqIFRvb2x0aXBzIGFuZCBQb3BvdmVyc1xuICovXG5cbiR0b29sdGlwLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgMC41ZW0gMWVtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWFycm93LXNpemU6ICAgICAgICAgICAgICAgMTJweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGFsdC1jb2xvci1saWdodGVzdDtcbiR0b29sdGlwLWJrZy1jb2xvcjogICAgICAgICAgICAgICAgJGFsdC1jb2xvci1kYXJrZXI7XG4kdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIDJweDtcblxuJHBvcG92ZXItcGFkZGluZzogICAgICAgICAgICAgICAgICAxLjVlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1zaXplOiAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRhbHQtY29sb3ItZGFya2VyO1xuJHBvcG92ZXItdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAkYWx0LWNvbG9yLWRhcmtlcjtcbiRwb3BvdmVyLWJrZy1jb2xvcjogICAgICAgICAgICAgICAgJGFsdC1jb2xvci1saWdodGVzdDtcbiRwb3BvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgdHJhbnNwYXJlbnRpemUoJGFsdC1jb2xvci1saWdodCwgMC42KTtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgMHB4O1xuXG5cbi8qKlxuICogQWRtaW4gdG9vbGJhclxuICovXG5cbiRhZG1pbi10b29sYmFyLWhlaWdodDogICAgICAgICAgICAgMzlweCAhZGVmYXVsdDtcbiRhZG1pbi10b29sYmFyLW9wZW4taGVpZ2h0OiAgICAgICAgMTE4cHggIWRlZmF1bHQ7XG5cbi8qKlxuICogV2l6YXJkc1xuICovXG5cbiR3aXphcmQtaGVpZ2h0OiA2MHB4O1xuJHdpemFyZC1zbWFsbC1oZWlnaHQ6IDQwcHg7XG5cblxuLyoqXG4gKiBQZXJzcGVjdGl2ZVxuICovXG5cbiRwZXJzcGVjdGl2ZS1nbG9iYWw6ICAgICAgICAgICAgMTUwMHB4O1xuXG4vKipcbiAqIEZseW91dFxuICovXG4kZmx5b3V0LXdpZHRoOiA2NHB4O1xuJGZseW91dC1wYW5lbC13aWR0aDogNjQwcHg7XG4kZmx5b3V0LXBhbmVsLW1pbi1oZWlnaHQ6IDMzOHB4O1xuJGZseW91dC10b2dnbGVidXR0b24taGVpZ2h0OiAzMHB4O1xuJGZseW91dC1idXR0b24tcGFkZGluZ3M6IDEwcHggMnB4IDlweDtcbiRmbHlvdXQtc2hhZG93OiAkc2hhZG93LWNvbG9yIDAgMXB4IDE1cHggMHB4O1xuXG5cbi8qKlxuICogRWZmZWN0c1xuICovXG4kdHJhbnNpdGlvbi10aW1pbmctc21vb3RoOiAgICAgIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4kdHJhbnNpdGlvbi10aW1pbmctZmx5b3V0OiAgICAgIGN1YmljLWJlemllcigwLjQ2LCAwLjI0LCAwLjI0LCAxLjI2KTtcbiR0cmFuc2l0aW9uLXRpbWluZy1ob3ZlcjogICAgICAgY3ViaWMtYmV6aWVyKDAuNDYsIDAuMjQsIDAuMjQsIDEuMjYpO1xuJHRyYW5zaXRpb24tc3BlZWQtZmFzdDogICAgICAgICAwLjFzO1xuJHRyYW5zaXRpb24tc3BlZWQtZGVmYXVsdDogICAgICAwLjJzO1xuJHRyYW5zaXRpb24tc3BlZWQtc2xvdzogICAgICAgICAwLjRzO1xuJHRyYW5zaXRpb24tc3BlZWQtaG92ZXI6ICAgICAgICAwLjZzO1xuJHRyYW5zaXRpb24tc3BlZWQtaG92ZXItaW46ICAgICAwLjRzO1xuXG5cbi8qKlxuICogcm90YXRpbmcgcGhvbmUgcmVzcG9uc2l2ZVxuICovXG5cbiRuLWZlYXR1cmVzOiAgICAgICAgICAgICAgICAgICAgICAgIDU7XG4kZmVhdHVyZS1oZWlnaHQtLWhhbmR5LWxhbmRzY2FwZTogICAxMDB2aDtcbiRmZWF0dXJlLWhlaWdodC0tdGFibGV0OiAgICAgICAgICAgIDQ1dmg7XG4kZmVhdHVyZS1oZWlnaHQtLWRlc2t0b3A6ICAgICAgICAgICA2OHZoO1xuJGZlYXR1cmUtaGVpZ2h0LS1kZXNrdG9wLWxhcmdlOiAgICAgNTJ2aDtcblxuJHBob25lLXdpZHRoLS1oYW5keS1sYW5kc2NhcGU6ICAgICAgMjl2aDtcbiRwaG9uZS13aWR0aC0tdGFibGV0OiAgICAgICAgICAgICAgIDIydmg7XG4kcGhvbmUtd2lkdGgtLWRlc2t0b3A6ICAgICAgICAgICAgICAyOXZoO1xuJHBob25lLXJhdGlvOiAgICAgICAgICAgICAgICAgICAgICAgMjtcbiRwaG9uZS1vZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAgIDEwdmg7XG5cbi8qKlxuICogR3VpZGVkIHRvdXJcbiAqL1xuXG4kZHJpdmVyLXRleHQtY29sb3I6ICAgICAgICAgICAgICR0ZXh0LWNvbG9yICFkZWZhdWx0O1xuJGRyaXZlci1wb3BvdmVyLWJnOiAgICAgICAgICAgICAkYWx0LWNvbG9yLWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZHJpdmVyLWJ1dHRvbi1iZzogICAgICAgICAgICAgICRicmFuZC1jb2xvciAhZGVmYXVsdDtcbiRkcml2ZXItYnV0dG9uLWNvbG9yOiAgICAgICAgICAgJGFsdC1jb2xvci1saWdodGVzdCAhZGVmYXVsdDtcbiRkcml2ZXItZGlzYWJsZWQtYnRuLWNvbG9yOiAgICAgJGFsdC1jb2xvci1saWdodGVzdCAhZGVmYXVsdDtcbiRkcml2ZXItZGlzYWJsZWQtYnRuLWJnOiAgICAgICAgJGFsdC1jb2xvci1saWdodCAhZGVmYXVsdDtcbiRkcml2ZXItYW5pbWF0aW9uLW1zOiAgICAgICAgICAgMTIwMCAhZGVmYXVsdDtcbiRkcml2ZXItYW5pbWF0aW9uLXNlYzogICAgICAgICAgKCRkcml2ZXItYW5pbWF0aW9uLW1zIC8gMTAwMCkgKiAxcyAhZGVmYXVsdDtcblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRlVOQ1RJT05TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG4vKipcbiAqIENhbGN1bGF0ZSBSRU0gdmFsdWUgYmFzZWQgb24gdGhlIGRlZmF1bHQgZm9udC1zaXplXG4gKi9cbkBmdW5jdGlvbiByZW0oJHZhbHVlLCAkYmFzZTogJGZvbnQtc2l6ZS1kZWZhdWx0KSB7XG4gIEByZXR1cm4gKCR2YWx1ZSAvICRiYXNlKSAqIDFyZW07XG59XG5cblxuLyoqXG4gKiBSZXR1cm4gYSB2YWx1ZSBkaXZpZGVkIGJ5IGEgcmF0aW9cbiAqIEl0IHVzZXMgdGhlIGdvbGRlbiByYXRpbyBieSBkZWZhdWx0XG4gKlxuICogVXNlZnVsIHRvIGNyZWF0ZSBcInZpc3VhbGx5IGVxdWFsXCIgc3BhY2luZ3NcbiAqIEFzIG1hdGhlbWF0aWNhbGx5IGVxdWFsIHNwYWNpbmdzIG5ldmVyIFwidmlzdWFsbHlcIiBsb29rIGVxdWFsIGFyb3VuZCB0ZXh0XG4gKi9cbkBmdW5jdGlvbiByYXRpbygkdmFsdWUsICRyYXRpbzogJHJhdGlvKSB7XG4gIEByZXR1cm4gZmxvb3IoJHZhbHVlLyRyYXRpbyk7XG59XG5cblxuLyoqXG4gKiBSZXR1cm4gYSB1bml0bGVzcyB2YWx1ZVxuICovXG5AZnVuY3Rpb24gcGFyc2VJbnQoJHZhbHVlKSB7XG4gIEByZXR1cm4gJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKTtcbn1cblxuXG4vKipcbiAqIEFkZGl0aW9uIHRvcCBhbmQgYm90dG9tIHBhZGRpbmdcbiAqL1xuQGZ1bmN0aW9uIHRvdGFsLXZlcnRpY2FsLXBhZGRpbmcoJHBhZGRpbmcpIHtcbiAgJGxlbmd0aDogbGVuZ3RoKCRwYWRkaW5nKTtcblxuICBAaWYgKCRsZW5ndGggPT0gMSkge1xuICAgIEByZXR1cm4gJHBhZGRpbmcgKiAyO1xuICB9XG4gIEBpZiAoJGxlbmd0aCA9PSAyKSB7XG4gICAgQHJldHVybiBudGgoJHBhZGRpbmcsIDEpICogMjtcbiAgfVxuICBAaWYgKCRsZW5ndGggPT0gMyBvciAkbGVuZ3RoID09IDQpIHtcbiAgICBAcmV0dXJuIG50aCgkcGFkZGluZywgMSkgKyBudGgoJHBhZGRpbmcsIDMpO1xuICB9XG5cbiAgQGVycm9yIFwiUGFkZGluZyBpcyBpbnZhbGlkLCBtdXN0IGJlIDEgdG8gNCB2YWx1ZXMgd2l0aCB1bml0LlwiXG59XG5cblxuXG4vKipcbiAqIEZ1bmN0aW9ucyBmb3IgcG9seS1mbHVpZC1zaXppbmdcbiAqL1xuXG4vLy8gbGluZWFyLWludGVycG9sYXRpb25cbi8vLyBDYWxjdWxhdGUgdGhlIGRlZmluaXRpb24gb2YgYSBsaW5lIGJldHdlZW4gdHdvIHBvaW50c1xuLy8vIEBwYXJhbSAkbWFwIC0gQSBTQVNTIG1hcCBvZiB2aWV3cG9ydCB3aWR0aHMgYW5kIHNpemUgdmFsdWUgcGFpcnNcbi8vLyBAcmV0dXJucyBBIGxpbmVhciBlcXVhdGlvbiBhcyBhIGNhbGMoKSBmdW5jdGlvblxuLy8vIEBleGFtcGxlXG4vLy8gICBmb250LXNpemU6IGxpbmVhci1pbnRlcnBvbGF0aW9uKCgzMjBweDogMThweCwgNzY4cHg6IDI2cHgpKTtcbi8vLyBAYXV0aG9yIEpha2UgV2lsc29uIDxqYWtlLmUud2lsc29uQGdtYWlsLmNvbT5cbkBmdW5jdGlvbiBsaW5lYXItaW50ZXJwb2xhdGlvbigkbWFwKSB7XG4gICRrZXlzOiBtYXAta2V5cygkbWFwKTtcbiAgQGlmIChsZW5ndGgoJGtleXMpICE9IDIpIHtcbiAgICBAZXJyb3IgXCJsaW5lYXItaW50ZXJwb2xhdGlvbigpICRtYXAgbXVzdCBiZSBleGFjdGx5IDIgdmFsdWVzXCI7XG4gIH1cbiAgLy8gVGhlIHNsb3BlXG4gICRtOiAobWFwLWdldCgkbWFwLCBudGgoJGtleXMsIDIpKSAtIG1hcC1nZXQoJG1hcCwgbnRoKCRrZXlzLCAxKSkpLyhudGgoJGtleXMsIDIpIC0gbnRoKCRrZXlzLDEpKTtcblxuICAvLyBUaGUgeS1pbnRlcmNlcHRcbiAgJGI6IG1hcC1nZXQoJG1hcCwgbnRoKCRrZXlzLCAxKSkgLSAkbSAqIG50aCgka2V5cywgMSk7XG5cbiAgLy8gRGV0ZXJtaW5lIGlmIHRoZSBzaWduIHNob3VsZCBiZSBwb3NpdGl2ZSBvciBuZWdhdGl2ZVxuICAkc2lnbjogXCIrXCI7XG4gIEBpZiAoJGIgPCAwKSB7XG4gICAgJHNpZ246IFwiLVwiO1xuICAgICRiOiBhYnMoJGIpO1xuICB9XG5cbiAgQHJldHVybiBjYWxjKCN7JG0qMTAwfXZ3ICN7JHNpZ259ICN7JGJ9KTtcbn1cblxuLy8vIGxpc3Qtc29ydFxuLy8vIFNvcnQgYSBTQVNTIGxpc3Rcbi8vLyBAcGFyYW0gJGxpc3QgLSBBIFNBU1MgbGlzdFxuLy8vIEByZXR1cm5zIEEgc29ydGVkIFNBU1MgbGlzdFxuLy8vIEByZXF1aXJlcyBmdW5jdGlvbiBsaXN0LXJlbW92ZVxuLy8vIEBhdXRob3IgSmFrZSBXaWxzb24gPGpha2UuZS53aWxzb25AZ21haWwuY29tPlxuQGZ1bmN0aW9uIGxpc3Qtc29ydCgkbGlzdCkge1xuICAkc29ydGVkbGlzdDogKCk7XG4gIEB3aGlsZSBsZW5ndGgoJGxpc3QpID4gMCB7XG4gICAgJHZhbHVlOiBudGgoJGxpc3QsMSk7XG4gICAgQGVhY2ggJGl0ZW0gaW4gJGxpc3Qge1xuICAgICAgQGlmICRpdGVtIDwgJHZhbHVlIHtcbiAgICAgICAgJHZhbHVlOiAkaXRlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJHNvcnRlZGxpc3Q6IGFwcGVuZCgkc29ydGVkbGlzdCwgJHZhbHVlLCAnc3BhY2UnKTtcbiAgICAkbGlzdDogbGlzdC1yZW1vdmUoJGxpc3QsIGluZGV4KCRsaXN0LCAkdmFsdWUpKTtcbiAgfVxuICBAcmV0dXJuICRzb3J0ZWRsaXN0O1xufVxuXG4vLy8gbWFwLXNvcnRcbi8vLyBTb3J0IG1hcCBieSBrZXlzXG4vLy8gQHBhcmFtICRtYXAgLSBBIFNBU1MgbWFwXG4vLy8gQHJldHVybnMgQSBTQVNTIG1hcCBzb3J0ZWQgYnkga2V5c1xuLy8vIEByZXF1aXJlcyBmdW5jdGlvbiBsaXN0LXNvcnRcbi8vLyBAYXV0aG9yIEpha2UgV2lsc29uIDxqYWtlLmUud2lsc29uQGdtYWlsLmNvbT5cbkBmdW5jdGlvbiBtYXAtc29ydCgkbWFwKSB7XG4gICRrZXlzOiBsaXN0LXNvcnQobWFwLWtleXMoJG1hcCkpO1xuICAkc29ydGVkTWFwOiAoKTtcbiAgQGVhY2ggJGtleSBpbiAka2V5cyB7XG4gICAgJHNvcnRlZE1hcDogbWFwLW1lcmdlKCRzb3J0ZWRNYXAsICgka2V5OiBtYXAtZ2V0KCRtYXAsICRrZXkpKSk7XG4gIH1cbiAgQHJldHVybiAkc29ydGVkTWFwO1xufVxuXG4vLy8gbGlzdC1yZW1vdmVcbi8vLyBSZW1vdmUgYW4gaXRlbSBmcm9tIGEgbGlzdFxuLy8vIEBwYXJhbSAkbGlzdCAtIEEgU0FTUyBsaXN0XG4vLy8gQHBhcmFtICRpbmRleCAtIFRoZSBsaXN0IGluZGV4IHRvIHJlbW92ZVxuLy8vIEByZXR1cm5zIEEgU0FTUyBsaXN0XG4vLy8gQGF1dGhvciBKYWtlIFdpbHNvbiA8amFrZS5lLndpbHNvbkBnbWFpbC5jb20+XG5AZnVuY3Rpb24gbGlzdC1yZW1vdmUoJGxpc3QsICRpbmRleCkge1xuICAkbmV3TGlzdDogKCk7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRsaXN0KSB7XG4gICAgQGlmICRpICE9ICRpbmRleCB7XG4gICAgICAkbmV3TGlzdDogYXBwZW5kKCRuZXdMaXN0LCBudGgoJGxpc3QsJGkpLCAnc3BhY2UnKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbmV3TGlzdDtcbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIE1JWElOU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qKlxuICogUmVzcG9uc2l2ZVxuICovXG5cbi8vIE91dHB1dCBzb21ldGhpbmcgZm9yIGVhY2ggc3BhY2luZ3Ncbi8vICRzcGFjaW5nLW5hbWUgYW5kICRzcGFjaW5nLXZhbHVlIGFyZSBhdmFpbGFibGUgaW5zaWRlIEBjb250ZW50XG4vL1xuLy8gVXNhZ2U6IEBpbmNsdWRlIGZvcmVhY2gtYWx0ZXJuYXRpdmUtc3BhY2luZygpIHt9XG5cbkBtaXhpbiBmb3JlYWNoLWFsdGVybmF0aXZlLXNwYWNpbmcoJHNwYWNpbmdzOiAkc3BhY2luZ3MpIHtcbiAgQGVhY2ggJHNwYWNpbmcgaW4gJHNwYWNpbmdzIHtcbiAgICAvLyBTZXQgdGhlbSBhcyBnbG9iYWwgc28gaXQgY2FuIGJlIHVzZWQgaW5zaWRlIHRoZSBAY29udGVudFxuICAgICRzcGFjaW5nLW5hbWU6IG50aCgkc3BhY2luZywgMSkgIWdsb2JhbDtcbiAgICAkc3BhY2luZy12YWx1ZTogbnRoKCRzcGFjaW5nLCAyKSAhZ2xvYmFsO1xuXG4gICAgQGNvbnRlbnQ7XG5cbiAgICAvLyBSZXNldCBnbG9iYWwgdmFyaWFibGVzXG4gICAgJHNwYWNpbmctbmFtZTogbnVsbCAhZ2xvYmFsO1xuICAgICRzcGFjaW5nLXZhbHVlOiBudWxsICFnbG9iYWw7XG4gIH1cbn1cblxuLy8gT3V0cHV0IHNvbWV0aGluZyBmb3IgZWFjaCBicmVha3BvaW50XG4vLyAkYnJlYWtwb2ludC1uYW1lIGlzIGF2YWlsYWJsZSBpbnNpZGUgQGNvbnRlbnRcbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgZm9yZWFjaC1icmVha3BvaW50KCkge31cblxuQG1peGluIGZvcmVhY2gtYnJlYWtwb2ludCgkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cy1kZWZhdWx0LCAkcHJlZml4OiBudWxsKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XG4gICAgJGJyZWFrcG9pbnQtbmFtZTogbnRoKCRicmVha3BvaW50LCAxKSAhZ2xvYmFsOyAvLyBTZXQgaXQgYXMgZ2xvYmFsIHNvIGl0IGNhbiBiZSB1c2VkIGluc2lkZSB0aGUgQGNvbnRlbnRcbiAgICAkYnJlYWtwb2ludC1tcTogbnRoKCRicmVha3BvaW50LCAyKTtcblxuICAgIEBtZWRpYSAjeyRwcmVmaXh9ICN7JGJyZWFrcG9pbnQtbXF9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICRicmVha3BvaW50LW5hbWU6IG51bGwgIWdsb2JhbDsgLy8gUmVzZXQgZ2xvYmFsIHZhcmlhYmxlXG4gIH1cbn1cblxuXG4vLyBTY29wZSB0aGUgY29udGVudCBnaXZlbiBpbnRvIHRoZSBkZWZpbmVkIG1lZGlhIHF1ZXJ5XG4vLyAkbXEgICAge1N0cmluZ30gIFRoZSBJRCBvZiB0aGUgbWVkaWEgcXVlcnkgeW91ciBsaXN0IG9mIGJyZWFrcG9pbnRzICgkYnJlYWtwb2ludHMtZGVmYXVsdCBieSBkZWZhdWx0KVxuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7fVxuXG5AbWl4aW4gbWVkaWEoJG1xLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cy1kZWZhdWx0KSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XG4gICAgJGJyZWFrcG9pbnQtbmFtZTogbnRoKCRicmVha3BvaW50LCAxKTtcbiAgICAkYnJlYWtwb2ludC1tcTogbnRoKCRicmVha3BvaW50LCAyKTtcblxuICAgIEBpZiAoJGJyZWFrcG9pbnQtbmFtZSA9PSAkbXEpIHtcbiAgICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1xfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEdlbmVyYXRlIGZyYWN0aW9ucyBjbGFzc2VzIHRvIGJlIHVzZWQgYXMgZmx1aWQgd2lkdGhzXG4vLyAkY29sdW1ucyAgIHtMaXN0fSAgICBBIGxpc3Qgb2YgbnVtYmVycyBpbiByZXZlcnNlIG9yZGVyIGZvciB3aGljaCB5b3Ugd2FudCB0byBjcmVhdGUgZnJhY3Rpb25zXG4vLyAgICAgICAgICAgICAgICAgICAgICBcIjMsMiwxXCIgd2lsbCBjcmVhdGUgMS8xIDEvMiAxLzMgMi8zXG4vLyAgICAgICAgICAgICAgICAgICAgICBSZXZlcnNlIG9yZGVyIGlzIHJlcXVpcmVkIHRvIGtlZXAgb25seSAxLzEgaW5zdGVhZCBvZiAzLzMgZm9yIGV4YW1wbGVcbi8vICRwcmVmaXggICAge1N0cmluZ30gIEEgcHJlZml4IGZvciB0aGUgZ2VuZXJhdGVkIGNsYXNzZXNcblxuQG1peGluIHdpZHRocygkY29sdW1ucywgJHByZWZpeDogbnVsbCkge1xuICAkZnJhY3Rpb25zOiAoKTtcblxuICAvLyBMb29wIGluc2lkZSBlbnRyaWVzIGFuZCBwdXNoIHRoZW0gaW50byBhIG1hcFxuICAvLyBTbyBlbnRyaWVzIGFyZSB1bmlxdWUgYnkgd2lkdGhcbiAgQGVhY2ggJGNvbHVtbiBpbiAkY29sdW1ucyB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1uIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkaS8kY29sdW1uKTtcbiAgICAgICRmcmFjdGlvbnM6IG1hcC1tZXJnZSgkZnJhY3Rpb25zLCAoJHdpZHRoOiAjeyRpfVxcLyN7JGNvbHVtbn0pKTtcbiAgICB9XG4gIH1cblxuICAvLyBOb3cgZ2VuZXJhdGUgYWxsIHRoZSBjbGFzc2VzXG4gIEBlYWNoICR3aWR0aCwgJGZyYWN0aW9uIGluICRmcmFjdGlvbnMge1xuICAgIC4jeyRuYW1lc3BhY2V9I3skcHJlZml4fXctI3skZnJhY3Rpb259LFxuICAgICUjeyRwcmVmaXh9dy0jeyRmcmFjdGlvbn0ge1xuICAgICAgd2lkdGg6ICR3aWR0aCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBwb2x5LWZsdWlkLXNpemluZ1xuLy8vIEdlbmVyYXRlIGxpbmVhciBpbnRlcnBvbGF0ZWQgc2l6ZSB2YWx1ZXMgdGhyb3VnaCBtdWx0aXBsZSBicmVhayBwb2ludHNcbi8vLyBAcGFyYW0gJHByb3BlcnR5IC0gQSBzdHJpbmcgQ1NTIHByb3BlcnR5IG5hbWVcbi8vLyBAcGFyYW0gJG1hcCAtIEEgU0FTUyBtYXAgb2Ygdmlld3BvcnQgdW5pdCBhbmQgc2l6ZSB2YWx1ZSBwYWlyc1xuLy8vIEByZXF1aXJlcyBmdW5jdGlvbiBsaW5lYXItaW50ZXJwb2xhdGlvblxuLy8vIEByZXF1aXJlcyBmdW5jdGlvbiBtYXAtc29ydFxuLy8vIEBleGFtcGxlXG4vLy8gICBAaW5jbHVkZSBwb2x5LWZsdWlkLXNpemluZygnZm9udC1zaXplJywgKDU3NnB4OiAyMnB4LCA3NjhweDogMjRweCwgOTkycHg6IDM0cHgpKTtcbi8vLyBAYXV0aG9yIEpha2UgV2lsc29uIDxqYWtlLmUud2lsc29uQGdtYWlsLmNvbT5cbkBtaXhpbiBwb2x5LWZsdWlkLXNpemluZygkcHJvcGVydHksICRtYXApIHtcbiAgLy8gR2V0IHRoZSBudW1iZXIgb2YgcHJvdmlkZWQgYnJlYWtwb2ludHNcbiAgJGxlbmd0aDogbGVuZ3RoKG1hcC1rZXlzKCRtYXApKTtcblxuICAvLyBFcnJvciBpZiB0aGUgbnVtYmVyIG9mIGJyZWFrcG9pbnRzIGlzIDwgMlxuICBAaWYgKCRsZW5ndGggPCAyKSB7XG4gICAgQGVycm9yIFwicG9seS1mbHVpZC1zaXppbmcoKSAkbWFwIHJlcXVpcmVzIGF0IGxlYXN0IHZhbHVlc1wiXG4gIH1cblxuICAvLyBTb3J0IHRoZSBtYXAgYnkgdmlld3BvcnQgd2lkdGggKGtleSlcbiAgJG1hcDogbWFwLXNvcnQoJG1hcCk7XG4gICRrZXlzOiBtYXAta2V5cygkbWFwKTtcblxuICAvLyBNaW5pbXVtIHNpemVcbiAgI3skcHJvcGVydHl9OiBtYXAtZ2V0KCRtYXAsIG50aCgka2V5cywxKSk7XG5cbiAgLy8gSW50ZXJwb2xhdGVkIHNpemUgdGhyb3VnaCBicmVha3BvaW50c1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkbGVuZ3RoIC0gMSkge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOm50aCgka2V5cywkaSkpIHtcbiAgICAgICN7JHByb3BlcnR5fTogbGluZWFyLWludGVycG9sYXRpb24oKG50aCgka2V5cywkaSk6IG1hcC1nZXQoJG1hcCwgbnRoKCRrZXlzLCRpKSksIG50aCgka2V5cywoJGkrMSkpOiBtYXAtZ2V0KCRtYXAsIG50aCgka2V5cywoJGkgKyAxKSkpKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWF4bWltdW0gc2l6ZVxuICBAbWVkaWEgKG1pbi13aWR0aDpudGgoJGtleXMsJGxlbmd0aCkpIHtcbiAgICAjeyRwcm9wZXJ0eX06IG1hcC1nZXQoJG1hcCwgbnRoKCRrZXlzLCRsZW5ndGgpKTtcbiAgfVxufVxuXG5cbkBtaXhpbiBzdHJpcC1idXR0b24oKSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1peGluIGl0YWxpYy1wbGFjZWhvbGRlcigpe1xuICAvLyB3ZWlyZCwgYnV0IHdlIGhhdmUgdG8gd3JpdGUgdGhlIHNhbWUgcHJvcGVydGllcyBzZXBhcmF0ZWx5OlxuICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjogJGFsdC1jb2xvci1saWdodDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIH1cblxuICA6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgLy8gbm90aGluZyBoZXJlLCBhcyBJRTExIGlzIGhhbmRsaW5nIHJpZ2h0LWFsaWdubWVudHMgd2VpcmRseVxuICB9XG5cbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcbiAgfVxufVxuXG5cblxuQG1peGluIHBvcG92ZXIoKSB7XG4gIHBhZGRpbmc6ICRwb3BvdmVyLXBhZGRpbmc7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwNjA7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLWJrZy1jb2xvcjtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkcG9wb3Zlci1ib3JkZXItcmFkaXVzO1xuICBib3gtc2hhZG93OiAwIDFweCA1cHggJHNoYWRvdy1jb2xvci1kZW5zZTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBFRkZFQ1RTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtaXhpbiBmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OicnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudGl6ZSgkYnJhbmQtY29sb3IsIDAuMik7XG4gIH1cbn1cblxuQG1peGluIGZvY3VzLW91dGxpbmVkIHtcbiAgb3V0bGluZTogMXB4IHNvbGlkIHRyYW5zcGFyZW50aXplKCRicmFuZC1jb2xvciwgMC4yKTtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbn1cbiIsIi8qIVxuICogbm9ybWFsaXplLmNzcyB2My4wLjIgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemVcbiAqIENVU1RPTUlaRURcbiAqL1xuXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmdcbiAqICAgIHVzZXIgem9vbS5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gKiBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgLy8gQ1VTVE9NXG4gIC8vIE5vdCByZXF1aXJlZCBkdWUgdG8gZ2xvYmFsIGJvcmRlci1ib3hcbiAgLy8gLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLy8gLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xuICAvLyBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogPT0gdGluZ2xlIHYwLjEyLjAgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi50aW5nbGUtbW9kYWwgKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi50aW5nbGUtbW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdzogc2Nyb2xsO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgMjUwbXMgZWFzZS1pbi1vdXQ7XG59XG5cbi50aW5nbGUtbW9kYWwtLXNtYWxsIC50aW5nbGUtbW9kYWwtYm94IHtcbiAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbn1cblxuLyogY29uZmlybSBhbmQgYWxlcnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udGluZ2xlLW1vZGFsLS1jb25maXJtIC50aW5nbGUtbW9kYWwtYm94IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBtb2RhbFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnRpbmdsZS1tb2RhbC0tbm9PdmVybGF5Q2xvc2Uge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cblxuLnRpbmdsZS1tb2RhbC1ib3gge1xuICBmbGV4LXNocmluazogMDtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgd2lkdGg6IDgwJTtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgb3BhY2l0eTogMTtcbiAgY3Vyc29yOiBhdXRvO1xuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyAxMDBtcyBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxLjI3NSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcblxuICAudGluZ2xlLW1vZGFsLS1hdXRvLXdpZHRoICYge1xuICAgIG1heC13aWR0aDogJHNjcmVlbi14cy1taW47XG4gIH1cbn1cblxuLnRpbmdsZS1tb2RhbC1ib3hfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1sYXJnZTtcbiAgfVxufVxuXG5cbi50aW5nbGUtbW9kYWwtYm94X19mb290ZXIge1xuICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4udGluZ2xlLW1vZGFsLWJveF9fZm9vdGVyOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLnRpbmdsZS1tb2RhbC1ib3hfX2Zvb3Rlci0tc3RpY2t5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IC0yMDBweDsgLyogVE9ETyA6IGZpbmQgYSBiZXR0ZXIgd2F5ICovXG4gIHotaW5kZXg6IDEwMDAxO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBib3R0b20gLjNzIGVhc2UtaW4tb3V0IC4zcztcbn1cblxuLyogc3RhdGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi50aW5nbGUtZW5hYmxlZCB7XG4gIGhlaWdodDogMTAwJTtcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4udGluZ2xlLW1vZGFsLS12aXNpYmxlIC50aW5nbGUtbW9kYWwtYm94X19mb290ZXIge1xuICBib3R0b206IDA7XG59XG5cbi50aW5nbGUtZW5hYmxlZCAudGluZ2xlLWNvbnRlbnQtd3JhcHBlciB7XG4gIGZpbHRlcjogYmx1cigycHgpO1xufVxuXG4udGluZ2xlLW1vZGFsLS12aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnRpbmdsZS1tb2RhbC0tdmlzaWJsZSAudGluZ2xlLW1vZGFsLWJveCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnRpbmdsZS1tb2RhbC0tb3ZlcmZsb3cge1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIHBhZGRpbmctdG9wOiA4dmg7XG59XG5cblxuXG5cbi8qIHJlc3BvbnNpdmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAudGluZ2xlLW1vZGFsIHtcbiAgICB0b3A6IDBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC50aW5nbGUtbW9kYWwtYm94IHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG5cbiAgLnRpbmdsZS1tb2RhbC0tbm9DbG9zZSB7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLnRpbmdsZS1tb2RhbC0tbm9PdmVybGF5Q2xvc2Uge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgLnRpbmdsZS1tb2RhbC1ib3hfX2Zvb3RlciAudGluZ2xlLWJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udGluZ2xlLW1vZGFsX19jb250ZW50LW9mZnNldCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogLTE7XG4gIG1hcmdpbi10b3A6IC0yMDAwMHB4O1xufVxuIiwiLnNtYXJ0YmFubmVyLXNob3cge1xuXHRtYXJnaW4tdG9wOiA4MHB4O1xufVxuXG4uc21hcnRiYW5uZXItc2hvdyAuc21hcnRiYW5uZXIge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqIERlZmF1bHQgKiovXG4uc21hcnRiYW5uZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0ZGlzcGxheTogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogODBweDtcblx0bGluZS1oZWlnaHQ6IDgwcHg7XG5cdGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBzYW5zLXNlcmlmO1xuXHRiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuXHR6LWluZGV4OiA5OTk4O1xuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiBub25lO1xufVxuXG4uc21hcnRiYW5uZXItY29udGFpbmVyIHtcblx0bWFyZ2luOiAwIGF1dG87XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zbWFydGJhbm5lci1jbG9zZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0bWFyZ2luOiAwIDVweCAwIDVweDtcblx0Zm9udC1mYW1pbHk6ICdBcmlhbFJvdW5kZWRNVEJvbGQnLCBBcmlhbDtcblx0Zm9udC1zaXplOiAyMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGNvbG9yOiAjODg4O1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGJvcmRlcjogMDtcblx0Ym9yZGVyLXJhZGl1czogMTRweDtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG59XG5cbi5zbWFydGJhbm5lci1jbG9zZTphY3RpdmUsXG4uc21hcnRiYW5uZXItY2xvc2U6aG92ZXIge1xuXHRjb2xvcjogI2FhYTtcbn1cblxuLnNtYXJ0YmFubmVyLWljb24ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdHdpZHRoOiA1N3B4O1xuXHRoZWlnaHQ6IDU3cHg7XG5cdG1hcmdpbi1yaWdodDogMTJweDtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLnNtYXJ0YmFubmVyLWluZm8ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdHdpZHRoOiA0NCU7XG5cdGZvbnQtc2l6ZTogMTFweDtcblx0bGluZS1oZWlnaHQ6IDEuMmVtO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNtYXJ0YmFubmVyLXRpdGxlIHtcblx0Zm9udC1zaXplOiAxM3B4O1xuXHRsaW5lLWhlaWdodDogMThweDtcbn1cblxuLnNtYXJ0YmFubmVyLWJ1dHRvbiB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0cmlnaHQ6IDIwcHg7XG5cdHRvcDogMDtcblx0Ym90dG9tOiAwO1xuXHRtYXJnaW46IGF1dG8gMDtcblx0aGVpZ2h0OiAyNHB4O1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGxpbmUtaGVpZ2h0OiAyNHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogIzZhNmE2YTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0ZXh0LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG59XG5cbi5zbWFydGJhbm5lci1idXR0b246YWN0aXZlLFxuLnNtYXJ0YmFubmVyLWJ1dHRvbjpob3ZlciB7XG5cdGNvbG9yOiAjYWFhO1xufVxuXG4uc21hcnRiYW5uZXItYnV0dG9uLXRleHQge1xufVxuXG4uc21hcnRiYW5uZXItYnV0dG9uLXRleHQ6YWN0aXZlLFxuLnNtYXJ0YmFubmVyLWJ1dHRvbi10ZXh0OmhvdmVyIHtcbn1cblxuLyoqIGlPUyAqKi9cbi5zbWFydGJhbm5lci1pb3Mge1xuXHRiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjRmNGY0LCAjY2RjZGNkKTtcblx0Ym94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC41KTtcblx0bGluZS1oZWlnaHQ6IDgwcHg7XG59XG5cbi5zbWFydGJhbm5lci1pb3MgLnNtYXJ0YmFubmVyLWNsb3NlIHtcblx0Ym9yZGVyOiAwO1xuXHR3aWR0aDogMThweDtcblx0aGVpZ2h0OiAxOHB4O1xuXHRsaW5lLWhlaWdodDogMThweDtcblx0Y29sb3I6ICM4ODg7XG5cdHRleHQtc2hhZG93OiAwIDFweCAwIHdoaXRlO1xufVxuXG4uc21hcnRiYW5uZXItaW9zIC5zbWFydGJhbm5lci1jbG9zZTphY3RpdmUsXG4uc21hcnRiYW5uZXItaW9zIC5zbWFydGJhbm5lci1jbG9zZTpob3ZlciB7XG5cdGNvbG9yOiAjYWFhO1xufVxuXG4uc21hcnRiYW5uZXItaW9zIC5zbWFydGJhbm5lci1pY29uIHtcblx0YmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4uc21hcnRiYW5uZXItaW9zIC5zbWFydGJhbm5lci1pbmZvIHtcblx0Y29sb3I6ICM2YTZhNmE7XG5cdHRleHQtc2hhZG93OiAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbn1cblxuLnNtYXJ0YmFubmVyLWlvcyAuc21hcnRiYW5uZXItdGl0bGUge1xuXHRjb2xvcjogIzRkNGQ0ZDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zbWFydGJhbm5lci1pb3MgLnNtYXJ0YmFubmVyLWJ1dHRvbiB7XG5cdHBhZGRpbmc6IDAgMTBweDtcblx0bWluLXdpZHRoOiAxMCU7XG5cdGNvbG9yOiAjNmE2YTZhO1xuXHRiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWZlZmVmLCAjZGNkY2RjKTtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggI2JmYmZiZiwgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNiksIDAgMnB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpIGluc2V0O1xufVxuXG4uc21hcnRiYW5uZXItaW9zIC5zbWFydGJhbm5lci1idXR0b246YWN0aXZlLFxuLnNtYXJ0YmFubmVyLWlvcyAuc21hcnRiYW5uZXItYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZDogI2RjZGNkYztcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2RjZGNkYywgI2VmZWZlZik7XG59XG5cbi5zbWFydGJhbm5lci1pb3MgLnNtYXJ0YmFubmVyLWJ1dHRvbi10ZXh0IHtcbn1cblxuLnNtYXJ0YmFubmVyLWlvcyAuc21hcnRiYW5uZXItYnV0dG9uLXRleHQ6YWN0aXZlLFxuLnNtYXJ0YmFubmVyLWlvcyAuc21hcnRiYW5uZXItYnV0dG9uLXRleHQ6aG92ZXIge1xufVxuXG4vKiogQW5kcm9pZCAqKi9cbi5zbWFydGJhbm5lci1hbmRyb2lkIHtcblx0YmFja2dyb3VuZDogIzNkM2QzZCB1cmwoZGF0YTppbWFnZS9naWY7YmFzZTY0LFIwbEdPRGxoQ0FBSUFJQUJBRlZWVmYvLy95SDVCQUVIQUFFQUxBQUFBQUFJQUFnQUFBSU5SRzRYdWRyb0dKQlJzWWN4S0FBNyk7XG5cdGJveC1zaGFkb3c6IGluc2V0IDAgNHB4IDAgIzg4YjEzMTtcblx0bGluZS1oZWlnaHQ6IDgycHg7XG59XG5cbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1jbG9zZSB7XG5cdGJvcmRlcjogMDtcblx0d2lkdGg6IDE3cHg7XG5cdGhlaWdodDogMTdweDtcblx0bGluZS1oZWlnaHQ6IDE3cHg7XG5cdG1hcmdpbi1yaWdodDogN3B4O1xuXHRjb2xvcjogI2IxYjFiMztcblx0YmFja2dyb3VuZDogIzFjMWUyMTtcblx0dGV4dC1zaGFkb3c6IDAgMXB4IDFweCAjMDAwO1xuXHRib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjgpIGluc2V0LCAwIDFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xufVxuXG4uc21hcnRiYW5uZXItYW5kcm9pZCAuc21hcnRiYW5uZXItY2xvc2U6YWN0aXZlLFxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWNsb3NlOmhvdmVyIHtcblx0Y29sb3I6ICNlZWU7XG59XG5cbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1pY29uIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1pbmZvIHtcblx0Y29sb3I6ICNjY2M7XG5cdHRleHQtc2hhZG93OiAwIDFweCAycHggIzAwMDtcbn1cblxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLXRpdGxlIHtcblx0Y29sb3I6ICNmZmY7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc21hcnRiYW5uZXItYW5kcm9pZCAuc21hcnRiYW5uZXItYnV0dG9uIHtcblx0bWluLXdpZHRoOiAxMiU7XG5cdGNvbG9yOiAjZDFkMWQxO1xuXHRwYWRkaW5nOiAwO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggIzMzMywgMCAwIDAgMnB4ICNkZGRjZGM7XG59XG5cbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1idXR0b246YWN0aXZlLFxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWJ1dHRvbjpob3ZlciB7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1idXR0b24tdGV4dCB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IDAgMTBweDtcblx0YmFja2dyb3VuZDogIzQyYjZjOTtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzQyYjZjOSwgIzM5YTliYik7XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0Ym94LXNoYWRvdzogbm9uZTtcbn1cblxuLnNtYXJ0YmFubmVyLWFuZHJvaWQgLnNtYXJ0YmFubmVyLWJ1dHRvbi10ZXh0OmFjdGl2ZSxcbi5zbWFydGJhbm5lci1hbmRyb2lkIC5zbWFydGJhbm5lci1idXR0b24tdGV4dDpob3ZlciB7XG5cdGJhY2tncm91bmQ6ICMyYWM3ZTE7XG59XG5cbi8qKiBXaW5kb3dzICoqL1xuLnNtYXJ0YmFubmVyLXdpbmRvd3Mge1xuXHRiYWNrZ3JvdW5kOiAjZjRmNGY0O1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZjRmNGY0LCAjY2RjZGNkKTtcblx0Ym94LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC41KTtcblx0bGluZS1oZWlnaHQ6IDgwcHg7XG59XG5cbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1jbG9zZSB7XG5cdGJvcmRlcjogMDtcblx0d2lkdGg6IDE4cHg7XG5cdGhlaWdodDogMThweDtcblx0bGluZS1oZWlnaHQ6IDE4cHg7XG5cdGNvbG9yOiAjODg4O1xuXHR0ZXh0LXNoYWRvdzogMCAxcHggMCB3aGl0ZTtcbn1cblxuLnNtYXJ0YmFubmVyLXdpbmRvd3MgLnNtYXJ0YmFubmVyLWNsb3NlOmFjdGl2ZSxcbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1jbG9zZTpob3ZlciB7XG5cdGNvbG9yOiAjYWFhO1xufVxuXG4uc21hcnRiYW5uZXItd2luZG93cyAuc21hcnRiYW5uZXItaWNvbiB7XG5cdGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cblxuLnNtYXJ0YmFubmVyLXdpbmRvd3MgLnNtYXJ0YmFubmVyLWluZm8ge1xuXHRjb2xvcjogIzZhNmE2YTtcblx0dGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xufVxuXG4uc21hcnRiYW5uZXItd2luZG93cyAuc21hcnRiYW5uZXItdGl0bGUge1xuXHRjb2xvcjogIzRkNGQ0ZDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1idXR0b24ge1xuXHRwYWRkaW5nOiAwIDEwcHg7XG5cdG1pbi13aWR0aDogMTAlO1xuXHRjb2xvcjogIzZhNmE2YTtcblx0YmFja2dyb3VuZDogI2VmZWZlZjtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VmZWZlZiwgI2RjZGNkYyk7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICNiZmJmYmYsIDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpLCAwIDJweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSBpbnNldDtcbn1cblxuLnNtYXJ0YmFubmVyLXdpbmRvd3MgLnNtYXJ0YmFubmVyLWJ1dHRvbjphY3RpdmUsXG4uc21hcnRiYW5uZXItd2luZG93cyAuc21hcnRiYW5uZXItYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZDogI2RjZGNkYztcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2RjZGNkYywgI2VmZWZlZik7XG59XG5cbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1idXR0b24tdGV4dCB7XG59XG5cbi5zbWFydGJhbm5lci13aW5kb3dzIC5zbWFydGJhbm5lci1idXR0b24tdGV4dDphY3RpdmUsXG4uc21hcnRiYW5uZXItd2luZG93cyAuc21hcnRiYW5uZXItYnV0dG9uLXRleHQ6aG92ZXIge1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEJPWCBNT0RFTFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qKlxuICogVXNlIHRoZSBcInNtYXJ0XCIgYm94IG1vZGVsIGdsb2JhbGx5LlxuICpcbiAqIGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZVxuICovXG5cbmh0bWwge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qIHtcbiAgJixcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICAgICAgIC1tb3otYm94LXNpemluZzogaW5oZXJpdDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBFTEVNRU5UIERFRkFVTFQgQkVIQVZJT1JcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBQcmV2ZW50IGdob3N0IHNwYWNlIHVuZGVyIHVzdWFsbHkgYmxvY2sgZWxlbWVudHNcbmltZyxcbmlmcmFtZSxcbmVtYmVkLFxub2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVFlQT0dSQVBIWSBTQ0FGRk9MRElOR1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ZydXRpZ2VyTmV4dCc7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG5cbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL2ZydXRpZ2VybmV4dC1saWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgdXJsKCcuLi9mb250cy9mcnV0aWdlcm5leHQtbGlnaHQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ZydXRpZ2VyTmV4dCc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL2ZydXRpZ2VybmV4dC1yZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCcuLi9mb250cy9mcnV0aWdlcm5leHQtcmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRnJ1dGlnZXJOZXh0JztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL2ZydXRpZ2VybmV4dC1tZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnLi4vZm9udHMvZnJ1dGlnZXJuZXh0LW1lZGl1bS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ29va2llJztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICBzcmM6IHVybCgnLi4vZm9udHMvQ29va2llLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnLi4vZm9udHMvQ29va2llLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG59XG5cbmh0bWwge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWRlZmF1bHQ7XG4gIC8vIFVzZSBwZXJjZW50YWdlIHZhbHVlIGZvciByb290IGZvbnQtc2l6ZVxuICAvLyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2xpaXAva2FuYmFzdS9pc3N1ZXMvMjlcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWRlZmF1bHQ7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICAvLyBDbGVhbmVyIGZvbnQgcmVuZGVyaW5nXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG4gIC8vIENvbG9yIHRoZSBsaW5rIGJhY2tncm91bmQgd2hlbiBwcmVzc2luZyBvbiBpdCBvbiBtb2JpbGUuXG4gIC8vIFdvcmtzIG9ubHkgaW4gV2Via2l0LlxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRicmFuZC1jb2xvciwgMC40KTtcblxuICAvLyBhdm9pZCBsYXRlcmFsIGp1bXBzIGR1ZSB0byBzY3JvbGxiYXIgd2hlbiBvcGVuaW5nIHRoZSBtZW51XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgLy8gbmVlZGVkIGZvciBzZWN0aW9uLS1vdXRib3VuZFxuICAvLyBmb3IgbW9yZSBpbmZvIHNlZTogaHR0cHM6Ly9jb2RlcGVuLmlvL3RpZ3QvcG9zdC9idXN0LWVsZW1lbnRzLW91dC1vZi1jb250YWluZXJzLXdpdGgtb25lLWxpbmUtb2YtY3NzXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAmLm1lbnUtLXZpc2libGUgYm9keSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gIH1cbn1cblxuXG5ib2R5IHtcbiAgLy8gYXNzaWduIGZvbnQtc2l6ZXMgdG8gYnJlYWtwb2ludHMgYW5kIGludGVycG9sYXRlXG4gIC8vIGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTcvMDUvZmx1aWQtcmVzcG9uc2l2ZS10eXBvZ3JhcGh5LWNzcy1wb2x5LWZsdWlkLXNpemluZy9cbiAgJG1hcDogKFxuICAgICRzY3JlZW4teHMtbWluOiAkbWluLWZvbnQtc2l6ZS14cyxcbiAgICAkc2NyZWVuLXNtLW1pbjogJG1pbi1mb250LXNpemUsXG4gICAgJHNjcmVlbi1sZy1taW46ICRtYXgtZm9udC1zaXplXG4gICk7XG4gIEBpbmNsdWRlIHBvbHktZmx1aWQtc2l6aW5nKCdmb250LXNpemUnLCAkbWFwKTtcbn1cblxuXG4vKipcbiAqIExpbmtzXG4gKi9cblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogJGFsdC1jb2xvci1kYXJrZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICAvL0BpbmNsdWRlIGZvY3VzLW91dGxpbmVkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8qKlxuICogSGVhZGluZ3NcbiAqL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbjogMCAwIDAuNWVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG5cbmgxLFxuLmgxLFxuJWgxIHtcbiAgJG1hcDogKFxuICAgICRzY3JlZW4teHMtbWluOiAkbWluLWZvbnQtc2l6ZS1oMSxcbiAgICAkc2NyZWVuLWxnLW1pbjogJG1heC1mb250LXNpemUtaDFcbiAgKTtcbiAgQGluY2x1ZGUgcG9seS1mbHVpZC1zaXppbmcoJ2ZvbnQtc2l6ZScsICRtYXApO1xuXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xufVxuXG5cbmgyLFxuLmgyLFxuJWgyIHtcbiAgJG1hcDogKFxuICAgICRzY3JlZW4teHMtbWluOiAkbWluLWZvbnQtc2l6ZS1oMixcbiAgICAkc2NyZWVuLWxnLW1pbjogJG1heC1mb250LXNpemUtaDJcbiAgKTtcbiAgQGluY2x1ZGUgcG9seS1mbHVpZC1zaXppbmcoJ2ZvbnQtc2l6ZScsICRtYXApO1xuXG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cblxuaDMsXG4uaDMsXG4laDMge1xuICAkbWFwOiAoXG4gICAgJHNjcmVlbi14cy1taW46ICRtaW4tZm9udC1zaXplLWgzLFxuICAgICRzY3JlZW4tbGctbWluOiAkbWF4LWZvbnQtc2l6ZS1oM1xuICApO1xuICBAaW5jbHVkZSBwb2x5LWZsdWlkLXNpemluZygnZm9udC1zaXplJywgJG1hcCk7XG5cbiAgbGluZS1oZWlnaHQ6IDEuMjQ7XG59XG5cblxuaDQsXG4uaDQsXG4laDQge1xuICAkbWFwOiAoXG4gICAgJHNjcmVlbi14cy1taW46ICRtaW4tZm9udC1zaXplLWg0LFxuICAgICRzY3JlZW4tbGctbWluOiAkbWF4LWZvbnQtc2l6ZS1oNFxuICApO1xuICBAaW5jbHVkZSBwb2x5LWZsdWlkLXNpemluZygnZm9udC1zaXplJywgJG1hcCk7XG59XG5cblxuaDUsXG4uaDUsXG4laDUge1xuICAkbWFwOiAoXG4gICAgJHNjcmVlbi14cy1taW46ICRtaW4tZm9udC1zaXplLWg1LFxuICAgICRzY3JlZW4tbGctbWluOiAkbWF4LWZvbnQtc2l6ZS1oNVxuICApO1xuICBAaW5jbHVkZSBwb2x5LWZsdWlkLXNpemluZygnZm9udC1zaXplJywgJG1hcCk7XG59XG5cblxuaDYsXG4uaDYsXG4laDYge1xuICAkbWFwOiAoXG4gICAgJHNjcmVlbi14cy1taW46ICRtaW4tZm9udC1zaXplLWg2LFxuICAgICRzY3JlZW4tbGctbWluOiAkbWF4LWZvbnQtc2l6ZS1oNlxuICApO1xuICBAaW5jbHVkZSBwb2x5LWZsdWlkLXNpemluZygnZm9udC1zaXplJywgJG1hcCk7XG59XG5cbi5oZWFkaW5nLS1wcmltYXJ5IHtcbiAgY29sb3I6ICRicmFuZC1jb2xvcjtcbn1cblxuLmxpbmstLWxlLWNsdWIge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWxlLWNsdWI7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubGluay0tbGUtY2x1Yi1wb3J0YWwge1xuICBjb2xvcjogJGxlLWNsdWItY29sb3I7XG59XG5cblxuLyoqXG4gKiBQYXJhZ3JhcGhzXG4gKi9cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuM2VtO1xufVxuXG5cbi8qKlxuICogUHJlZm9ybWF0dGVkIHRleHRcbiAqL1xuXG5wcmUsXG5jb2RlIHtcbiAgZm9udC1mYW1pbHk6ICdNb25hY28nLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRhYi1zaXplOiA0O1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG59XG5cbnByZSB7XG4gIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgbWFyZ2luOiAwIDAgMmVtO1xuXG4gIGZvbnQtc2l6ZTogcmVtKDE0cHgpO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWRlZmF1bHQ7XG59XG5cbmNvZGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDFweCA1cHg7XG5cbiAgcHJlICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuXG4vKipcbiAqIExpc3RzXG4gKi9cblxudWwsXG5vbCB7XG4gIHBhZGRpbmctbGVmdDogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICBtYXJnaW46IDFlbSAwO1xuXG4gIHVsLFxuICBvbCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbmRsIHtcbiAgQGV4dGVuZCAlY2xlYXJmaXg7XG59XG4gIGR0IHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG4gIGRkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gIC5kbC0taW5saW5lIHtcbiAgICBkdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMGVtO1xuICAgIH1cblxuICAgIGRkIHtcbiAgICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwcHggKyAjeyRzcGFjaW5nLXVuaXQtc21hbGx9KTtcbiAgICB9XG4gIH1cblxuICAuZGwtLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMDtcblxuICAgIGR0IHtcbiAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgZGQge1xuICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljIGZvciB0aGUgYmFuay1yZWZlcmVuY2UgYmxvY2tcbiAgLy8gaHR0cHM6Ly9qaXJhLmxpaXAuY2gvYnJvd3NlL0JDRi0xNjVcbiAgLmRsLS1iYW5rLXJlZmVyZW5jZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgZHQge1xuICAgICAgd2lkdGg6IDE0NXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgZGQge1xuICAgICAgd2lkdGg6IDEzMHB4O1xuICAgIH1cbiAgfVxuXG5cbi8qKlxuICogTWlzY2VsbGFlbm91c1xuICovXG5cbmFiYnIge1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVEFCTEVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy11bml0LWxhcmdlO1xuXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xufVxuXG5jYXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtZGVmYXVsdDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxudHIge1xuICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2RkZGRkZDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbn1cblxudGgsXG50ZCB7XG4gIHBhZGRpbmc6IDAuOGVtO1xuXG4gIC8vIFRha2UgaW50byBhY2NvdW50IG5vbiBwbGFpbi10ZXh0IGNvbnRlbnRcbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbnRkIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5ncmlkLS1taWRkbGUgPiAmIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4udGFibGUtZm9vdG5vdGVzIHtcbiAgbWFyZ2luLXRvcDogLSRzcGFjaW5nLXVuaXQtbGFyZ2UgLyAyO1xuICBmb250LXNpemU6IDAuODVlbTtcbn1cblxuLnRhYmxlLS1zdHJpcHBlZCB7XG5cbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLnRhYmxlRmxvYXRpbmdIZWFkZXJPcmlnaW5hbCB7XG4gICAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjZGRkZGRkO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2RkZGRkZDtcbiAgICB9XG5cbiAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlcjtcbiAgICB9XG4gIH1cblxuICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblxuICAvLyBTdHlsZSB0aGUgdGFibGUgaGVhZGVyIGNvbWluZ1xuICAvLyBmcm9tIHRoZSBodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9zdGlja3ktdGFibGUtaGVhZGVycyBwbHVnaW4uXG4gIC50YWJsZUZsb2F0aW5nSGVhZGVyT3JpZ2luYWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAudGFibGVGbG9hdGluZ0hlYWRlciB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICB9XG59XG5cblxuXG4udGFibGUtLW5vLWJvcmRlciB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBwYWRkaW5nOiAwZW0gMC44ZW0gMC42ZW0gMDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEZPUk1TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1peGluIHRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHRyYWNrLWhlaWdodDtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2stYmtnLWNvbG9yO1xuICBib3JkZXI6ICR0cmFjay1ib3JkZXItd2lkdGggc29saWQgJHRyYWNrLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJHRyYWNrLWJvcmRlci1yYWRpdXM7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlO1xufVxuXG5AbWl4aW4gdGh1bWIge1xuICB3aWR0aDogJHRodW1iLXdpZHRoO1xuICBoZWlnaHQ6ICR0aHVtYi1oZWlnaHQ7XG5cbiAgYmFja2dyb3VuZDogJHRodW1iLWJrZy1jb2xvcjtcbiAgYm9yZGVyOiAkdGh1bWItYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYi1ib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYi1ib3JkZXItcmFkaXVzO1xuICBib3gtc2hhZG93OiAkdGh1bWItc2hhZG93LXNpemUgJHRodW1iLXNoYWRvdy1zaXplICR0aHVtYi1zaGFkb3ctYmx1ciAkdGh1bWItc2hhZG93LWNvbG9yLCAwIDAgJHRodW1iLXNoYWRvdy1zaXplIGxpZ2h0ZW4oJHRodW1iLXNoYWRvdy1jb2xvciwgNSUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFByZXBhcmUgc29tZSByZXF1aXJlZCB2YWx1ZXNcbi8vIEZpbmQgdGhlIGZpZWxkIGJvcmRlciB3aWR0aCBmcm9tICRmaWVsZC1ib3JkZXIgcGFyYW1ldGVyXG4kZmllbGQtYm9yZGVyLXdpZHRoOiAwcHg7XG5cbkBlYWNoICR2YWx1ZSBpbiAkZmllbGQtYm9yZGVyIHtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgJGZpZWxkLWJvcmRlci13aWR0aDogJHZhbHVlO1xuICB9XG59XG5cbi8vIERldGVybWluZSB0aGUgYW1vdW50IG9mIHZlcnRpY2FsIHBhZGRpbmcgZm9yIGZ1cnRoZXIgY2FsY3VsYXRpb25cbiRwYWRkaW5nLXZlcnRpY2FsOiAwcHg7XG4kcGFkZGluZy12ZXJ0aWNhbC1zbWFsbDogMHB4O1xuJHBhZGRpbmctdmVydGljYWwtbGFyZ2U6IDBweDtcblxuQGlmICgkZmllbGQtdXNlLXBhZGRpbmctcmF0aW8pIHtcbiAgJGxlbmd0aDogbGVuZ3RoKCRmaWVsZC1wYWRkaW5nKTtcblxuICBAaWYgKCRsZW5ndGggPT0gMSkge1xuICAgICRwYWRkaW5nLXZlcnRpY2FsOiByYXRpbygkZmllbGQtcGFkZGluZykgKiAyO1xuICAgICRwYWRkaW5nLXZlcnRpY2FsLXNtYWxsOiByYXRpbygkZmllbGQtc21hbGwtcGFkZGluZykgKiAyO1xuICAgICRwYWRkaW5nLXZlcnRpY2FsLWxhcmdlOiByYXRpbygkZmllbGQtbGFyZ2UtcGFkZGluZykgKiAyO1xuICB9XG4gIEBpZiAoJGxlbmd0aCA9PSAyKSB7XG4gICAgJHBhZGRpbmctdmVydGljYWw6IHJhdGlvKG50aCgkZmllbGQtcGFkZGluZywgMSkpICogMjtcbiAgICAkcGFkZGluZy12ZXJ0aWNhbC1zbWFsbDogcmF0aW8oJGZpZWxkLXNtYWxsLXBhZGRpbmcpICogMjtcbiAgICAkcGFkZGluZy12ZXJ0aWNhbC1sYXJnZTogcmF0aW8oJGZpZWxkLWxhcmdlLXBhZGRpbmcpICogMjtcbiAgfVxuICBAaWYgKCRsZW5ndGggPT0gMyBvciAkbGVuZ3RoID09IDQpIHtcbiAgICAkcGFkZGluZy12ZXJ0aWNhbDogcmF0aW8obnRoKCRmaWVsZC1wYWRkaW5nLCAxKSkgKyByYXRpbyhudGgoJGZpZWxkLXBhZGRpbmcsIDMpKTtcbiAgICAkcGFkZGluZy12ZXJ0aWNhbC1zbWFsbDogcmF0aW8oJGZpZWxkLXNtYWxsLXBhZGRpbmcpICogMjtcbiAgICAkcGFkZGluZy12ZXJ0aWNhbC1sYXJnZTogcmF0aW8oJGZpZWxkLWxhcmdlLXBhZGRpbmcpICogMjtcbiAgfVxufVxuQGVsc2Uge1xuICAkcGFkZGluZy12ZXJ0aWNhbDogdG90YWwtdmVydGljYWwtcGFkZGluZygkZmllbGQtcGFkZGluZyk7XG4gICRwYWRkaW5nLXZlcnRpY2FsLXNtYWxsOiB0b3RhbC12ZXJ0aWNhbC1wYWRkaW5nKCRmaWVsZC1zbWFsbC1wYWRkaW5nKTtcbiAgJHBhZGRpbmctdmVydGljYWwtbGFyZ2U6IHRvdGFsLXZlcnRpY2FsLXBhZGRpbmcoJGZpZWxkLWxhcmdlLXBhZGRpbmcpO1xufVxuXG5cbi8vIEluIGNhc2UgdGhlIGZpZWxkcyBmb250LXNpemUgaXMgYSBudW1iZXIgKGllLiBub3QgJ2luaGVyaXQnKSwgdXNlIGl0IGluc3RlYWQgb2YgZGVmYXVsdCBmb250LXNpemUgZm9yIGNhbGN1bGF0aW9uXG4kZmllbGQtY2FsYy1mb250LXNpemU6ICRmb250LXNpemUtZGVmYXVsdDtcblxuQGlmICh0eXBlLW9mKCRmaWVsZC1mb250LXNpemUpID09ICdudW1iZXInKSB7XG4gICRmaWVsZC1jYWxjLWZvbnQtc2l6ZTogJGZpZWxkLWZvbnQtc2l6ZTtcbn1cblxuXG4vKipcbiAqIEJhc2ljIGZvcm0gZWxlbWVudHNcbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcblxuICBib3JkZXI6IG5vbmU7XG59XG5cblxuLmlucHV0LFxuJWlucHV0LFxuaW5wdXRbdHlwZT0ndGV4dCddLFxuaW5wdXRbdHlwZT0nc2VhcmNoJ10sXG5pbnB1dFt0eXBlPSdlbWFpbCddLFxuaW5wdXRbdHlwZT0ndGVsJ10sXG5pbnB1dFt0eXBlPSd1cmwnXSxcbmlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sXG5pbnB1dFt0eXBlPSdkYXRlJ10sXG5pbnB1dFt0eXBlPSdkYXRldGltZSddLFxuaW5wdXRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbmlucHV0W3R5cGU9J21vbnRoJ10sXG5pbnB1dFt0eXBlPSd3ZWVrJ10sXG5pbnB1dFt0eXBlPSd0aW1lJ10sXG5pbnB1dFt0eXBlPSdudW1iZXInXSxcbmlucHV0W3R5cGU9J2ZpbGUnXSxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIEBpZiAoJGZpZWxkLXVzZS1wYWRkaW5nLXJhdGlvIGFuZCBsZW5ndGgoJGZpZWxkLXBhZGRpbmcpID09IDEpIHtcbiAgICBwYWRkaW5nOiByYXRpbygkZmllbGQtcGFkZGluZykgJGZpZWxkLXBhZGRpbmc7XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRmaWVsZC1wYWRkaW5nO1xuICB9XG5cbiAgY29sb3I6ICRmaWVsZC1jb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRmaWVsZC1mb250LWZhbWlseTtcbiAgbGluZS1oZWlnaHQ6ICRmaWVsZC1saW5lLWhlaWdodDtcblxuICBib3JkZXI6ICRmaWVsZC1ib3JkZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC1ia2ctY29sb3I7XG5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gIC8vIENsZWFuZXIgZm9udCByZW5kZXJpbmdcbiAgLy8gPGlucHV0PiBkb2VzbuKAmXQgaW5oZXJpdCBmcm9tIGJvZHlcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmaWVsZC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICZbZGlzYWJsZWRdIHtcbiAgICBjb2xvcjogJGZpZWxkLWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC1kaXNhYmxlZC1ia2ctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZmllbGQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBjb21pbmcgZnJvbSB2YWxpZGF0aW9uIHBsdWdpbiBpbiBEcnVwYWwuXG4gIC8vIE92ZXJyaWRlIERydXBhbCB0byB1c2UgdGhvc2UgY2xhc3Nlcy5cbiAgJi5lcnJvciB7XG4gICAgQGV4dGVuZCAlaW5wdXQtLWVycm9yO1xuICB9XG5cbn1cblxuLmZvcm0tZGlzYWJsZWQge1xuICBsYWJlbCB7XG4gICAgY29sb3I6ICRmaWVsZC1kaXNhYmxlZC1jb2xvclxuICB9XG59XG5cbi8vIFJhbmdlJ3MgaW5wdXQgYXJlIG5vdCBlYXN5IHRvIHN0eWxlLiBQbGVhc2UgdGVzdCBvbiBhbGwgYnJvd3NlciBpZiB5b3UgY2hhbmdlIGFueXRoaW5nIGJlbG93LlxuLy8gRm9yIG1vcmUgaW5mbzogaHR0cDovL2JyZW5uYW9icmllbi5jb20vYmxvZy8yMDE0LzA1L3N0eWxlLWlucHV0LXR5cGUtcmFuZ2UtaW4tZXZlcnktYnJvd3Nlci5odG1sXG5bdHlwZT0ncmFuZ2UnXSB7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgV2Via2l0ICYgQmxpbmsuXG5cbiAgLy8gSGFjayBmb3IgSUUxMSAmIE1TLUVkZ2UgdG8gcmVtb3ZlIHNwYWNpbmcgYWJvdmUgYW5kL29yIGJlbG93IHRoZSBpbnB1dC5cbiAgLy8gVGhvc2UgbnVtYmVycyBhcmUgZ3Vlc3NlZC4gV2UgdXNlIHRoZSBudW1iZXIgY29taW5nIGZyb20gdGhlIHRodW1iIGFuZCB0aGUgdHJhY2sgYnV0XG4gIC8vIHRoZSBzcGFjaW5nIGRvZXNuJ3Qgc2VlbXMgdG8gYmUgZGlyZWN0bHkgcmVsYXRlZCB3aXRoIHRoZW0uXG4gIC8vIFRPRE86IEZpbmQgYSBiZXR0ZXIgd2F5IHRvIGdldCByaWQgb2YgdGhlc2Ugc3BhY2luZ3MuXG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgbWFyZ2luLXRvcDogLSgkdGh1bWItaGVpZ2h0IC0gJHRyYWNrLWhlaWdodCk7XG4gICAgbWFyZ2luLWJvdHRvbTogLSAoJHRodW1iLWhlaWdodCArICgyICogJHRyYWNrLWhlaWdodCkpO1xuICB9XG5cbiAgLy8gSGFjayBmb3IgTVMtRWRnZS5cbiAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOmF1dG8pIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtKDIgKiAkdHJhY2staGVpZ2h0KTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2stYWN0aXZlLWJrZy1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjotbXMtZmlsbC1sb3dlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2stYWN0aXZlLWJrZy1jb2xvcjtcbiAgICB9XG5cbiAgICAmOjotbXMtZmlsbC11cHBlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdHJhY2stYWN0aXZlLWJrZy1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgQGluY2x1ZGUgdHJhY2s7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgQGluY2x1ZGUgdGh1bWI7XG5cbiAgICAvLyBWZXJ0aWNhbGx5IGFsaWduIHRoZSB0aHVtYi5cbiAgICBtYXJnaW4tdG9wOiAoKC0kdHJhY2stYm9yZGVyLXdpZHRoICogMiArICR0cmFjay1oZWlnaHQpIC8gMikgLSAoJHRodW1iLWhlaWdodCAvIDIpO1xuXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgJjo6LW1vei1yYW5nZS10cmFjayB7XG4gICAgQGluY2x1ZGUgdHJhY2s7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICBAaW5jbHVkZSB0aHVtYjtcbiAgfVxuXG4gICY6Oi1tcy10aHVtYiB7XG4gICAgQGluY2x1ZGUgdGh1bWI7XG5cbiAgICAvLyBSZW1vdmUgYm94IHNoYWRvdyBhcyBpdCBnZXQncyBjcm9wcGVkIHdoZW4gZ29pbmcgbmVhciB0aGUgYm9yZGVycy5cbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICAvLyBJbiBXaW5kb3dzIFVJIHNsaWRlciB0aGUgdHJhY2sgaGFzIHRoZSBzYW1lIGhlaWdodCBhcyB0aGUgc2xpZGVyLlxuICAgIC8vIFNlZTogaHR0cHM6Ly9kZXNpZ25tb2RvLmNvbS93cC1jb250ZW50L3VwbG9hZHMvMjAxMi8xMS9zbGlkZS0wOC1jb21tb24tY29udHJvbHMtMi5wbmdcbiAgICAvLyBUaGF0IG1lYW5zLCB0aGUgdGh1bWJzIGlzIGVuY2Fwc3VsZWQgaW5zaWRlIHRoZSB0cmFjay5cbiAgICAvLyBUaGVyZWZvcmUgd2UgY2FuJ3QgbWFrZSB0aGUgLW1zLXRyYWNrIHRvIGJlIHRoZSB0cmFjay5cbiAgICAvLyBXZSBtYWtlIHRoZSAtbXMtdHJhY2sgdHJhbnNwYXJlbnQgYW5kIHdpdGggdHJhbnNwYXJlbnQgYm9yZGVyIHdoaWNoIGFyZSBlcXVhbHMgdG8gdGhlIGhlaWdodCBvZiB0aGUgdGh1bWJcbiAgICAvLyBzbyB0aGF0IHRoZSB0aHVtYiBvdXRib3VuZHMgdGhlIHRyYWNrLlxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgLy8gQWRkIHRyYW5zcGFyZW50IGJvcmRlciBzbyB0aGUgdGh1bWIgaXMgZW50aXJlbHkgZGlzcGxheWVkLlxuICAgIGJvcmRlci13aWR0aDogKCR0aHVtYi1oZWlnaHQgLyAyKSAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBSZW1vdmUgc3RlcCBsaW5lcy5cbiAgfVxuXG4gIC8vIEJlZm9yZSB0aGUgdGh1bWIuXG4gICY6Oi1tcy1maWxsLWxvd2VyIHtcbiAgICBAaW5jbHVkZSB0cmFjaztcblxuICAgIC8vIEhhY2sgZm9yIE1TLUVkZ2UgdG8gdmVydGljYWxseSBhbGlnbiB0aGUgdHJhY2suXG4gICAgQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOmF1dG8pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICR0cmFjay1oZWlnaHQgLyAyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFmdGVyIHRoZSB0aHVtYi5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIEBpbmNsdWRlIHRyYWNrO1xuXG4gICAgLy8gSGFjayBmb3IgTVMtRWRnZSB0byB2ZXJ0aWNhbGx5IGFsaWduIHRoZSB0cmFjay5cbiAgICBAc3VwcG9ydHMgKC1tcy1pbWUtYWxpZ246YXV0bykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHRyYWNrLWhlaWdodCAvIDI7XG4gICAgfVxuICB9XG59XG5cbiVpbnB1dC0tZXJyb3IsXG4uaW5wdXQtLWVycm9yLmlucHV0LS1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogJGVycm9yLWNvbG9yO1xufVxuXG5cbnNlbGVjdCB7XG4gIC8vIFNlbGVjdCBkb2VzbuKAmXQgY2FyZSBhYm91dCB2ZXJ0aWNhbCBwYWRkaW5nLCB3ZSBoYXZlIHRvIHNldCB0aGUgaGVpZ2h0IGluc3RlYWRcbiAgLy8gQ2FsY3VsYXRlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIGZpZWxkcyBjb25maWd1cmF0aW9uXG4gIC8vIEZvbnQgc2l6ZSAqIGxpbmUgaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlclxuICBoZWlnaHQ6IGNhbGMoICN7IDFlbSAqICRmaWVsZC1saW5lLWhlaWdodCArICRmaWVsZC1wYWRkaW5nLXZlcnRpY2FsICoyIH0gKyAjeyRmaWVsZC1ib3JkZXItd2lkdGggKjggfSApO1xuXG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5pbnB1dFt0eXBlPSd0aW1lJ10ge1xuICBtYXgtd2lkdGg6IDllbTtcbn1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXVuaXQtdGlueTtcblxuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIFNwZWNpZmljaXR5IGNvbWluZyBmcm9tIHZhbGlkYXRpb24gcGx1Z2luIGluIERydXBhbC5cbiAgLy8gT3ZlcnJpZGUgRHJ1cGFsIHRvIHVzZSB0aG9zZSBjbGFzc2VzLlxuICAmLmVycm9yIHtcbiAgICBAZXh0ZW5kICV0ZXh0LXNtYWxsO1xuXG4gICAgY29sb3I6ICRlcnJvci1jb2xvcjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG5cbiAgLmVycm9yICsgJi5lcnJvciB7XG4gICAgbWFyZ2luLXRvcDogMC4zZW07XG4gIH1cbn1cblxuICAubGFiZWwtLWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiByYXRpbygkc3BhY2luZy11bml0LXNtYWxsKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8oJHNwYWNpbmctdW5pdC1zbWFsbCk7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgfVxuICB9XG5cbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHQ7XG4gIH1cblxuXG4vKipcbiAqIEZvcm1zIGxheW91dFxuICovXG5cbmZvcm0ge1xuICBAbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIC5zZWN0aW9uLFxuICAgIC5mb3JtLWFjdGlvbnMge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tZ3JvdXAtLXJhZGlvLFxuLmZvcm0tZ3JvdXAtLWNoZWNrYm94IHtcbiAgbWFyZ2luLXRvcDogMDtcblxuICB+IC5mb3JtLWdyb3VwLS1yYWRpbyxcbiAgfiAuZm9ybS1ncm91cC0tY2hlY2tib3gge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAuY2hlY2ttYXJrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAkc3BhY2luZy11bml0LXNtYWxsO1xuICAgIHdpZHRoOiAkc3BhY2luZy11bml0LXNtYWxsO1xuICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRhbHQtY29sb3ItbGlnaHQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuXG4gICAgLmNoZWNrbWFyay0taW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxNTBtcyBlYXNlLW91dDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQ6bm90KFtkaXNhYmxlZF0pIH4gbGFiZWw6aG92ZXIge1xuICAgIC5jaGVja21hcmstLWlubmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICBpbnB1dDpub3QoW2Rpc2FibGVkXSk6Y2hlY2tlZCB+IGxhYmVsIHtcbiAgICAuY2hlY2ttYXJrLS1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIGlucHV0W2Rpc2FibGVkXSB+IGxhYmVsIHtcbiAgICBjb2xvcjogJGZpZWxkLWRpc2FibGVkLWNvbG9yO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICAuY2hlY2ttYXJrIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGZpZWxkLWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAkc3BhY2luZy11bml0LXNtYWxsICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAwIDA7XG5cbiAgICBsYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmLmZvcm0tZ3JvdXAtLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZm9ybS1ncm91cC0tcmFkaW8gLmNoZWNrbWFyayB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIC5jaGVja21hcmstLWlubmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB9XG59XG5cbi5maWVsZC1sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiByYXRpbygkc3BhY2luZy11bml0LXNtYWxsKSAwO1xufVxuXG4uZmllbGQtaGVscCB7XG4gIG1hcmdpbi10b3A6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICBjb2xvcjogJGZpZWxkLWhlbHAtY29sb3I7XG59XG5cbi5maWVsZGdyb3VwIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tbGVmdDogLSRncmlkLXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiByYXRpbygkc3BhY2luZy11bml0LXNtYWxsKSAwO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIHJhdGlvKCRmaWVsZC1sYXJnZS1wYWRkaW5nKSAwICRncmlkLXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICAgIH1cbiAgfVxuXG4gIC5maWVsZHNldC13cmFwcGVyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1zcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tYWN0aW9ucyB7XG4gIC5idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIC5idXR0b24ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbmxhYmVsLmZvcm0tcmVxdWlyZWQsXG4uZm9ybV9fbGFiZWwuZm9ybS1yZXF1aXJlZCxcbmxlZ2VuZCAuZm9ybS1yZXF1aXJlZCB7XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnKic7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICB9XG59XG5cbi5jaGVja2JveGVzLS1tZC1zcGFjZWQge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAub3B0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogU3BlY2lmaWMgZm9ybXNcbiAqIFRPRE86IHJlZmFjdG9yIHRvIGFwcGx5IHRoaXMgaW4gYSBtb3JlIGdlbmVyaWMgd2F5XG4gKi9cbi5mb3JtLWl0ZW0tcmVhY2hhYmxlLWJ5LXBob25lLWZyb20sXG4uZm9ybS1pdGVtLXJlYWNoYWJsZS1ieS1waG9uZS10byB7XG4gIGxhYmVsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4jZWRpdC1jb250YWN0LWJ5LWNvbnRhaW5lci1hdmFpbGFiaWxpdGllcyB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgICYgPiAqIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2luZy11bml0LWxhcmdlO1xuICAgIH1cbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgQGV4dGVuZCAudmlzaWJsZS1zcjtcbiAgfVxuXG4gIGxhYmVsLmZvcm0tcmVxdWlyZWQge1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuI2VkaXQtcmVhY2hhYmxlLWJ5LXBob25lLWZyb20tdG8tY29udGFpbmVyIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLm9yZGVyLWJhY2stYnV0dG9uIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi10b3A6IC04MHB4O1xuICB9XG59XG5cblxuLyoqXG4gKiBTaXplc1xuICovXG5cbi5pbnB1dC0tc21hbGwsXG4uc2VsZWN0LS1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogJGZpZWxkLXNtYWxsLWZvbnQtc2l6ZSAhaW1wb3J0YW50O1xufVxuXG4uaW5wdXQtLXNtYWxsIHtcbiAgQGlmICgkZmllbGQtdXNlLXBhZGRpbmctcmF0aW8gYW5kIGxlbmd0aCgkZmllbGQtc21hbGwtcGFkZGluZykgPT0gMSkge1xuICAgIHBhZGRpbmc6IHJhdGlvKCRmaWVsZC1zbWFsbC1wYWRkaW5nKSAkZmllbGQtc21hbGwtcGFkZGluZyAhaW1wb3J0YW50O1xuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkZmllbGQtc21hbGwtcGFkZGluZyAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zZWxlY3QtLXNtYWxsIHtcbiAgaGVpZ2h0OiBmbG9vcigkZm9udC1zaXplLWRlZmF1bHQqcGFyc2VJbnQoJGZpZWxkLXNtYWxsLWZvbnQtc2l6ZSkqJGZpZWxkLWxpbmUtaGVpZ2h0ICsgJHBhZGRpbmctdmVydGljYWwtc21hbGwgKyAkZmllbGQtYm9yZGVyLXdpZHRoKjIpICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogJGZpZWxkLXNtYWxsLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogJGZpZWxkLXNtYWxsLXBhZGRpbmcgIWltcG9ydGFudDtcbn1cblxuXG5cbiVpbnB1dC0tbGFyZ2UsXG4uaW5wdXQtLWxhcmdlIHtcbiAgZm9udC1zaXplOiAkZmllbGQtbGFyZ2UtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMS4yO1xuXG4gIEBpZiAoJGZpZWxkLXVzZS1wYWRkaW5nLXJhdGlvIGFuZCBsZW5ndGgoJGZpZWxkLWxhcmdlLXBhZGRpbmcpID09IDEpIHtcbiAgICBwYWRkaW5nOiByYXRpbygkZmllbGQtbGFyZ2UtcGFkZGluZykgJGZpZWxkLWxhcmdlLXBhZGRpbmc7XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRmaWVsZC1sYXJnZS1wYWRkaW5nO1xuICB9XG59XG5cbi5zZWxlY3QtLWxhcmdlIHtcbiAgZm9udC1zaXplOiAkZmllbGQtbGFyZ2UtZm9udC1zaXplICFpbXBvcnRhbnQ7XG5cbiAgaGVpZ2h0OiBmbG9vcigkZm9udC1zaXplLWRlZmF1bHQqcGFyc2VJbnQoJGZpZWxkLWxhcmdlLWZvbnQtc2l6ZSkqJGZpZWxkLWxpbmUtaGVpZ2h0ICsgJHBhZGRpbmctdmVydGljYWwtbGFyZ2UgKyAkZmllbGQtYm9yZGVyLXdpZHRoKjIpICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogJGZpZWxkLWxhcmdlLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgcGFkZGluZy1yaWdodDogJGZpZWxkLWxhcmdlLXBhZGRpbmcgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gKiAgQ29uY2VhbGVkIGlucHV0XG4gKi9cblxuaW5wdXQuY29uY2VhbGVkLWlucHV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6IDU4cHg7XG4gIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtdGlueSAwICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICBjb2xvcjogJGFsdC1jb2xvci1kYXJrZXI7XG4gIH1cbn1cblxuLnRvb2x0aXAtd3JhcHBlciB7XG4gIGlucHV0OjotbXMtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmZvcm0tdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gIHRvcDogMWVtO1xuICBtYXJnaW4tdG9wOiAtMC41ZW07IC8vIEhhbGYgb2YgaWNvbi0tc21hbGwgaGVpZ2h0XG5cbiAgQG1lZGlhKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogLTMgKiAkc3BhY2luZy11bml0LXNtYWxsO1xuICB9XG5cbiAgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5mb3JtLWVsZW1lbnQtLXN0YWNrZWQgJiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bztcbiAgICB0b3A6IDVweDtcbiAgfVxufVxuXG4uZm9ybS1pdGVtLS1oYXMtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZvcm0taXRlbS0taGFzLWlubGluZS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy11bml0LXRpbnkgLyAyO1xuICB9XG59XG5cbi5mb3JtLS1mYXEtaW5saW5lLXNlYXJjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjphZnRlciB7XG4gICAgQGV4dGVuZCAlc2VhcmNoLWljb24taW5uZXI7XG4gICAgY29udGVudDogJyc7XG4gIH1cbn1cblxuXG5pbnB1dFt0eXBlPSdkYXRlJ10ge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMi4xZW0pO1xuXG4gICYgKyBzdmcge1xuICAgIHdpZHRoOiAxLjNlbTtcbiAgICBoZWlnaHQ6IDEuM2VtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgfVxufVxuXG5cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVEVYVFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qKlxuICogQWxpZ25tZW50XG4gKi9cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuXG4vKipcbiAqIENhc2VcbiAqL1xuXG4udGV4dC11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNDVlbTtcbn1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG5cbi8qKlxuICogU3R5bGluZ1xuICovXG5cbi50ZXh0LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnRleHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udGV4dC1tZWRpdW0ge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4udGV4dC1ub3JtYWwge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4udGV4dC1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cblxuXG4vKipcbiAqIFNpemVcbiAqL1xuXG4udGV4dC10aW55LFxuJXRleHQtdGlueSB7XG4gICRtYXA6IChcbiAgICAkc2NyZWVuLXhzLW1pbjogJG1pbi1mb250LXNpemUtdGlueSxcbiAgICAkc2NyZWVuLWxnLW1pbjogJG1heC1mb250LXNpemUtdGlueVxuICApO1xuICBAaW5jbHVkZSBwb2x5LWZsdWlkLXNpemluZygnZm9udC1zaXplJywgJG1hcCk7XG59XG5cbi50ZXh0LXNtYWxsLFxuJXRleHQtc21hbGwge1xuICAkbWFwOiAoXG4gICAgJHNjcmVlbi14cy1taW46ICRtaW4tZm9udC1zaXplLXNtYWxsLFxuICAgICRzY3JlZW4tbGctbWluOiAkbWF4LWZvbnQtc2l6ZS1zbWFsbFxuICApO1xuICBAaW5jbHVkZSBwb2x5LWZsdWlkLXNpemluZygnZm9udC1zaXplJywgJG1hcCk7XG59XG5cbi50ZXh0LWxhcmdlLFxuJXRleHQtbGFyZ2Uge1xuICAkbWFwOiAoXG4gICAgJHNjcmVlbi14cy1taW46ICRtaW4tZm9udC1zaXplLWxhcmdlLFxuICAgICRzY3JlZW4tbGctbWluOiAkbWF4LWZvbnQtc2l6ZS1sYXJnZVxuICApO1xuICBAaW5jbHVkZSBwb2x5LWZsdWlkLXNpemluZygnZm9udC1zaXplJywgJG1hcCk7XG59XG5cbi8qKlxuICogQ29sb3JzXG4gKi9cblxuLnRleHQtbmV1dHJhbCB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbn1cblxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogJG11dGVkLWNvbG9yO1xufVxuXG4udGV4dC1jLWxpZ2h0IHtcbiAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHQ7XG59XG5cbi50ZXh0LWMtd2FybmluZyB7XG4gIGNvbG9yOiAkY29sb3Itd2FybmluZztcbn1cblxuLnRleHQtYy1lcnJvciB7XG4gIGNvbG9yOiAkY29sb3ItZGFuZ2VyO1xufVxuXG5cbi50ZXh0LWMtYnJhbmQge1xuICBjb2xvcjogJGJyYW5kLWNvbG9yO1xufVxuXG4udGV4dC1lcnJvcixcbiV0ZXh0LWVycm9yIHtcbiAgY29sb3I6ICRlcnJvci1jb2xvcjtcbiAgbWFyZ2luLXRvcDogJHNwYWNpbmctdW5pdC10aW55O1xufVxuXG4vKipcbiAqIE1pc2NcbiAqL1xuXG4udGV4dC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIENPTE9SU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLmJrZy0taGlnaGxpZ2h0ZWQge1xuICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yO1xufVxuXG4uYmtnLS1oaWdobGlnaHRlZC1kYXJrIHtcbiAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1kYXJrO1xufVxuXG4uYmtnLS1saWdodGVzdCB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbn1cblxuLmJrZy0tbGlnaHRlciB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVyO1xufVxuXG4uYmtnLS1saWdodCB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0O1xufVxuXG4uYmtnLS1hbHQge1xuICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvcjtcbn1cblxuLmJrZy0tZGFyayB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG59XG5cbi5ia2ctLWRhcmtlciB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlcjtcbn1cblxuLmJrZy0tbGUtY2x1YiB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGUtY2x1Yi1jb2xvcjtcbn1cblxuLmJrZy0tYmFzZSB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2UtYmtnLWNvbG9yO1xufVxuXG4uYmtnLS1lcnJvciB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3ItY29sb3I7XG59XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBURVhUIFJFU1BPTlNJVkVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKipcbiAqIEFsaWdubWVudFxuICovXG5cbkBpbmNsdWRlIGZvcmVhY2gtYnJlYWtwb2ludCgpIHtcbiAgLiN7JGJyZWFrcG9pbnQtbmFtZX0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLiN7JGJyZWFrcG9pbnQtbmFtZX0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC4jeyRicmVha3BvaW50LW5hbWV9LXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRkxPQVRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uY2xlYXJmaXgsXG4lY2xlYXJmaXgge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFNQQUNJTkdTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyoqXG4gKiBNQVJHSU5TXG4gKiBHZW5lcmF0ZSBtYXJnaW4gY2xhc3NlcyBiYXNlZCBvbiBzcGFjaW5nIHVuaXRzXG4gKlxuICogbXJnKHx0fHJ8YnxsfGh8dikwICAgPT4gbm8gbWFyZ2luXG4gKiBtcmcofHR8cnxifGx8aHx2KS0tICA9PiAxLzRcbiAqIG1yZyh8dHxyfGJ8bHxofHYpLSAgID0+IDEvMlxuICogbXJnKHx0fHJ8YnxsfGh8dikgICAgPT4gMXhcbiAqIG1yZyh8dHxyfGJ8bHxofHYpKyAgID0+IDJ4XG4gKiBtcmcofHR8cnxifGx8aHx2KSsrICA9PiA0eFxuICpcbiAqIHtub3RoaW5nfSAgPT4gYWxsXG4gKiB0ICAgICAgICAgID0+IHRvcFxuICogciAgICAgICAgICA9PiByaWdodFxuICogYiAgICAgICAgICA9PiBib3R0b21cbiAqIGwgICAgICAgICAgPT4gbGVmdFxuICogaCAgICAgICAgICA9PiBob3Jpem9udGFsIChsZWZ0ICsgcmlnaHQpXG4gKiB2ICAgICAgICAgID0+IHZlcnRpY2FsICh0b3AgKyBib3R0b20pXG4gKi9cblxuQG1peGluIHNwYWNpbmctbWFyZ2lucygkcHJlZml4OiBudWxsKSB7XG4gIC4jeyRwcmVmaXh9bXJnMCAgICAgICB7IG1hcmdpbjogICAgICAgICAgIDAgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3QwICAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdyMCAgICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgMCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJnYjAgICAgICB7IG1hcmdpbi1ib3R0b206ICAgIDAgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2wwICAgICAgeyBtYXJnaW4tbGVmdDogICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdoMCAgICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd2MCAgICAgIHsgbWFyZ2luLXRvcDogICAgICAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAgICAwICFpbXBvcnRhbnQ7IH1cblxuICAuI3skcHJlZml4fW1yZyAgICAgICAgeyBtYXJnaW46ICAgICAgICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3QgICAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3IgICAgICAgeyBtYXJnaW4tcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2IgICAgICAgeyBtYXJnaW4tYm90dG9tOiAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2wgICAgICAgeyBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2ggICAgICAgeyBtYXJnaW4tcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd2ICAgICAgIHsgbWFyZ2luLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhaW1wb3J0YW50OyB9XG5cbiAgLiN7JHByZWZpeH1tcmctLSAgICAgIHsgbWFyZ2luOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd0LS0gICAgIHsgbWFyZ2luLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdyLS0gICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdiLS0gICAgIHsgbWFyZ2luLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdsLS0gICAgIHsgbWFyZ2luLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdoLS0gICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJndi0tICAgICB7IG1hcmdpbi10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAgICAkc3BhY2luZy11bml0LXRpbnkgIWltcG9ydGFudDsgfVxuXG4gIC4jeyRwcmVmaXh9bXJnLSAgICAgICB7IG1hcmdpbjogICAgICAgICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3QtICAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdyLSAgICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJnYi0gICAgICB7IG1hcmdpbi1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2wtICAgICAgeyBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdoLSAgICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd2LSAgICAgIHsgbWFyZ2luLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cblxuICAuI3skcHJlZml4fW1yZ1xcKyAgICAgIHsgbWFyZ2luOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJndFxcKyAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LWxhcmdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdyXFwrICAgICB7IG1hcmdpbi1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtbGFyZ2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2JcXCsgICAgIHsgbWFyZ2luLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJnbFxcKyAgICAgeyBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LWxhcmdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdoXFwrICAgICB7IG1hcmdpbi1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtbGFyZ2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJndlxcKyAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LWxhcmdlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtbGFyZ2UgIWltcG9ydGFudDsgfVxuXG4gIC4jeyRwcmVmaXh9bXJnXFwrXFwrICAgIHsgbWFyZ2luOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd0XFwrXFwrICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3JcXCtcXCsgICB7IG1hcmdpbi1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtaHVnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJnYlxcK1xcKyAgIHsgbWFyZ2luLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdsXFwrXFwrICAgeyBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2hcXCtcXCsgICB7IG1hcmdpbi1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtaHVnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3ZcXCtcXCsgICB7IG1hcmdpbi10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtaHVnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxufVxuXG5AaW5jbHVkZSBzcGFjaW5nLW1hcmdpbnMoKTtcblxuXG4vKipcbiAqIFBBRERJTkdTXG4gKiBHZW5lcmF0ZSBwYWRkaW5nIGNsYXNzZXMgYmFzZWQgb24gc3BhY2luZyB1bml0c1xuICpcbiAqIHBkZyh8dHxyfGJ8bHxofHYpMCAgID0+IG5vIG1hcmdpblxuICogcGRnKHx0fHJ8YnxsfGh8diktLSAgPT4gMS80XG4gKiBwZGcofHR8cnxifGx8aHx2KS0gICA9PiAxLzJcbiAqIHBkZyh8dHxyfGJ8bHxofHYpICAgID0+IDF4XG4gKiBwZGcofHR8cnxifGx8aHx2KSsgICA9PiAyeFxuICogcGRnKHx0fHJ8YnxsfGh8dikrKyAgPT4gNHhcbiAqXG4gKiB7bm90aGluZ30gID0+IGFsbFxuICogdCAgICAgICAgICA9PiB0b3BcbiAqIHIgICAgICAgICAgPT4gcmlnaHRcbiAqIGIgICAgICAgICAgPT4gYm90dG9tXG4gKiBsICAgICAgICAgID0+IGxlZnRcbiAqIGggICAgICAgICAgPT4gaG9yaXpvbnRhbCAobGVmdCArIHJpZ2h0KVxuICogdiAgICAgICAgICA9PiB2ZXJ0aWNhbCAodG9wICsgYm90dG9tKVxuICovXG5cbkBtaXhpbiBzcGFjaW5nLXBhZGRpbmdzKCRwcmVmaXg6IG51bGwpIHtcbiAgLiN7JHByZWZpeH1wZGcwICAgICAgIHsgcGFkZGluZzogICAgICAgICAgIDAgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ3QwICAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgMCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRncjAgICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdiMCAgICAgIHsgcGFkZGluZy1ib3R0b206ICAgIDAgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ2wwICAgICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgMCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnaDAgICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd2MCAgICAgIHsgcGFkZGluZy10b3A6ICAgICAgIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICAgIDAgIWltcG9ydGFudDsgfVxuXG4gIC4jeyRwcmVmaXh9cGRnICAgICAgICB7IHBhZGRpbmc6ICAgICAgICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ3QgICAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdyICAgICAgIHsgcGFkZGluZy1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnYiAgICAgICB7IHBhZGRpbmctYm90dG9tOiAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ2wgICAgICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdoICAgICAgIHsgcGFkZGluZy1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd2ICAgICAgIHsgcGFkZGluZy10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cblxuICAuI3skcHJlZml4fXBkZy0tICAgICAgeyBwYWRkaW5nOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd0LS0gICAgIHsgcGFkZGluZy10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnci0tICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LXRpbnkgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ2ItLSAgICAgeyBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdsLS0gICAgIHsgcGFkZGluZy1sZWZ0OiAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnaC0tICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LXRpbnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRndi0tICAgICB7IHBhZGRpbmctdG9wOiAgICAgICAkc3BhY2luZy11bml0LXRpbnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG5cbiAgLiN7JHByZWZpeH1wZGctICAgICAgIHsgcGFkZGluZzogICAgICAgICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ3QtICAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnci0gICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdiLSAgICAgIHsgcGFkZGluZy1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ2wtICAgICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnaC0gICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd2LSAgICAgIHsgcGFkZGluZy10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuXG4gIC4jeyRwcmVmaXh9cGRnXFwrICAgICAgeyBwYWRkaW5nOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRndFxcKyAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnclxcKyAgICAgeyBwYWRkaW5nLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnYlxcKyAgICAgeyBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnbFxcKyAgICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnaFxcKyAgICAgeyBwYWRkaW5nLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRndlxcKyAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG5cbiAgLiN7JHByZWZpeH1wZGdcXCtcXCsgICAgeyBwYWRkaW5nOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd0XFwrXFwrICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdyXFwrXFwrICAgeyBwYWRkaW5nLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdiXFwrXFwrICAgeyBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdsXFwrXFwrICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdoXFwrXFwrICAgeyBwYWRkaW5nLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ3ZcXCtcXCsgICB7IHBhZGRpbmctdG9wOiAgICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtaHVnZSAhaW1wb3J0YW50OyB9XG59XG5cbkBpbmNsdWRlIHNwYWNpbmctcGFkZGluZ3MoKTtcbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBTUEFDSU5HUyBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLy8gQnVpbGQgc3BhY2luZ3MgdmFsdWVzIGZvciBlYWNoIGJyZWFrcG9pbnRcbi8vIEV4dGVuZCB0aGUgdXN1YWwgY2xhc3NlcyBwcmVmaXhlZCB3aXRoIHRoZSBicmVha3BvaW50IG5hbWVcbi8vIEZvciBleGFtcGxlIGBzbS1tcmd0KytgXG5cbi8qKlxuICogTWFyZ2luc1xuICovXG5cbkBpbmNsdWRlIGZvcmVhY2gtYnJlYWtwb2ludCgpIHtcbiAgQGluY2x1ZGUgc3BhY2luZy1tYXJnaW5zKCcjeyRicmVha3BvaW50LW5hbWV9LScpO1xufVxuXG5cbi8qKlxuICogUGFkZGluZ3NcbiAqL1xuXG5AaW5jbHVkZSBmb3JlYWNoLWJyZWFrcG9pbnQoKSB7XG4gIEBpbmNsdWRlIHNwYWNpbmctcGFkZGluZ3MoJyN7JGJyZWFrcG9pbnQtbmFtZX0tJyk7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgSU1BR0VTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmltZy1yZXNwb25zaXZlLFxuLmltZy1yZXNwb25zaXZlID4gaW1nLFxuLmltZy1yZXNwb25zaXZlID4gcCA+IGltZyxcbiVpbWctcmVzcG9uc2l2ZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaW1nLWJsb2NrLFxuJWltZy1ibG9jayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVkVSVElDQUwgJiBIT1JJWk9OVEFMIEFMSUdOXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLy8gQWxpZ24gZWxlbWVudCB0byB0aGUgcmlnaHQgb24gdGhlIGhvcml6b250YWwgYXhpcy5cbi8vIEVsZW1lbnQgc2hvdWxkIGJlIGEgYmxvY2tcbi8vIE90aGVyd2lzZSB1c2UgLnRleHQtcmlnaHRcbi5yLWFsaWduLFxuJXItYWxpZ24ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLy8gQWxpZ24gZWxlbWVudCB0byB0aGUgbGVmdCBvbiB0aGUgaG9yaXpvbnRhbCBheGlzLlxuLy8gRWxlbWVudCBzaG91bGQgYmUgYSBibG9ja1xuLy8gT3RoZXJ3aXNlIHVzZSAudGV4dC1sZWZ0XG4ubC1hbGlnbixcbiVsLWFsaWduIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBIb3Jpem9udGFsbHkgYWxpZ24gZWxlbWVudCBpbiB0aGUgbWlkZGxlXG4vLyBFbGVtZW50IHNob3VsZCBiZSBhIGJsb2NrXG4vLyBPdGhlcndpc2UgdXNlIC50ZXh0LWNlbnRlclxuLmgtYWxpZ24sXG4laC1hbGlnbiB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vIFZlcnRpY2FsbHkgYWxpZ24gYW4gZWxlbWVudCBpbiB0aGUgbWlkZGxlXG4vLyBUaGUgcmVmZXJlbnQgY29udGFpbmVyIGhhcyB0byBiZSByZWxhdGl2ZVxuLnYtYWxpZ24sXG4ldi1hbGlnbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG5cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLyBWZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHkgYWxpZ24gYW4gZWxlbWVudCBpbiB0aGUgbWlkZGxlXG4vLyBUaGUgcmVmZXJlbnQgY29udGFpbmVyIGhhcyB0byBiZSByZWxhdGl2ZVxuLnZoLWFsaWduLFxuJXZoLWFsaWduIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ucmVsYXRpdmUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5cbi8vIHNldCBoZWlnaHQgdG8gMTAwJSBvZiB0aGUgcGFyZW50J3MgaGVpZ2h0OlxuLmgtMTAwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEVESVRJT04gTU9ERVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5hZG1pbmltYWwtYWRtaW4tdG9vbGJhciB7XG5cbiAgLm1haW4taGVhZGVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoI3skbWFpbi1oZWFkZXItaGVpZ2h0fSArICN7JGFkbWluLXRvb2xiYXItaGVpZ2h0fSk7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIGhlaWdodDogY2FsYygjeyRtYWluLWhlYWRlci1oZWlnaHQtbWR9ICsgI3skYWRtaW4tdG9vbGJhci1oZWlnaHR9KTtcbiAgICB9XG4gIH1cblxuICAubmF2aWdhdGlvbiB7XG4gICAgdG9wOiAkYWRtaW4tdG9vbGJhci1oZWlnaHQ7XG4gIH1cblxuICAmLnRvb2xiYXItdHJheS1vcGVuIHtcblxuICAgIC5tYWluLWhlYWRlciB7XG4gICAgICBoZWlnaHQ6IGNhbGMoI3skbWFpbi1oZWFkZXItaGVpZ2h0fSArICN7JGFkbWluLXRvb2xiYXItb3Blbi1oZWlnaHR9KTtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyRtYWluLWhlYWRlci1oZWlnaHQtbWR9ICsgI3skYWRtaW4tdG9vbGJhci1vcGVuLWhlaWdodH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uIHtcbiAgICAgIHRvcDogJGFkbWluLXRvb2xiYXItb3Blbi1oZWlnaHQ7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRElTUExBWVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vIEhJREVcblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4vLyBHZW5lcmF0ZSBoaWRkZW4gY2xhc3NlcyBzY29wZWQgdG8gZWFjaCBicmVha3BvaW50XG5AaW5jbHVkZSBmb3JlYWNoLWJyZWFrcG9pbnQoKSB7XG4gIC5oaWRkZW4tI3skYnJlYWtwb2ludC1uYW1lfS11cCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AaW5jbHVkZSBmb3JlYWNoLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnRzLWRlc2MpIHtcbiAgLmhpZGRlbi0jeyRicmVha3BvaW50LW5hbWV9LWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBQcmV2ZW50IGNvbnRlbnQgdG8gYmUgcHJpbnRlZFxuQG1lZGlhIHByaW50IHtcbiAgLmhpZGRlbi1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZS1wcmludCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLyBTSE9XXG5cbi8vIERpc3BsYXkgYSBibG9jayBvbmx5IHdoZW4gcHJpbnRlZFxuQG1lZGlhIG5vdCBwcmludCB7XG4gIC52aXNpYmxlLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLyBQcm92aWRlIGNvbnRlbnQgdG8gc2NyZWVuIHJlYWRlcnMgb25seVxuLy8gaHR0cHM6Ly9kZXZlbG9wZXIueWFob28uY29tL2Jsb2dzL3lkbi9jbGlwLWhpZGRlbi1jb250ZW50LWJldHRlci1hY2Nlc3NpYmlsaXR5LTUzNDU2Lmh0bWxcbi52aXNpYmxlLXNyLFxuJXZpc2libGUtc3Ige1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCkgIWltcG9ydGFudDtcbn1cblxuLy8gUHJvdmlkZSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzIG9ubHksXG4vLyB3aGlsZSBrZWVwaW5nIHRoZSBlbGVtZW50J3MgbGF5b3V0IGluIHRoZSBkb2N1bWVudCBmbG93XG4udmlzaWJsZS1zci13aXRoLWxheW91dCB7XG4gIG9wYWNpdHk6IDA7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgQU5DSE9SU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLmFuY2hvciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtMmVtO1xufVxuXG4uYW5jaG9yLS1sZS1jbHViLWNvbnRlc3Qge1xuICB0b3A6IC04ZW07XG59XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBHUklEXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyoqXG4gKiBNb2Rlcm4gZ3JpZCB1c2luZyBmbGV4Ym94XG4gKi9cblxuQGlmICgkZ3JpZC1mbGV4ID09IHRydWUpIHtcblxuICAuI3skbmFtZXNwYWNlfWdyaWQsXG4gICVncmlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tbGVmdDogLSRncmlkLXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICB9XG5cbiAgICAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0sXG4gICAgJWdyaWRfX2l0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogJGdyaWQtc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgfVxuXG5cbiAgLyoqXG4gICAqIEd1dHRlcnMgc2l6ZVxuICAgKi9cblxuICAuI3skbmFtZXNwYWNlfWdyaWQtLXRpZ2h0LFxuICAlZ3JpZC0tdGlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICArIC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tdGlueSxcbiAgJWdyaWQtLXRpbnkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGdyaWQtc3BhY2luZy11bml0LXRpbnk7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLXNwYWNpbmctdW5pdC10aW55O1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tc21hbGwsXG4gICVncmlkLS1zbWFsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1zcGFjaW5nLXVuaXQtc21hbGw7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLXNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICB9XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfWdyaWQtLWxhcmdlLFxuICAlZ3JpZC0tbGFyZ2Uge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGdyaWQtc3BhY2luZy11bml0LWxhcmdlO1xuXG4gICAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1zcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1odWdlLFxuICAlZ3JpZC0taHVnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1zcGFjaW5nLXVuaXQtaHVnZTtcblxuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGdyaWQtc3BhY2luZy11bml0LWh1Z2U7XG4gICAgfVxuICB9XG5cblxuICAvKipcbiAgICogQWxpZ25tZW50XG4gICAqL1xuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tY2VudGVyLFxuICAlZ3JpZC0tY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tcmlnaHQsXG4gICVncmlkLS1yaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tbWlkZGxlLFxuICAlZ3JpZC0tbWlkZGxlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1ib3R0b20sXG4gICVncmlkLS1ib3R0b20ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIE9yZGVyXG4gICAqL1xuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tcmV2LFxuICAlZ3JpZC0tcmV2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfWdyaWQtLWV2ZW4sXG4gICVncmlkLS1ldmVuIHtcbiAgICA+IC5ncmlkX19pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTm9uIHdpZHRoLWxpbWl0ZWQgZ3JpZFxuICAgKi9cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1mbGV4LFxuICAlZ3JpZC0tZmxleCB7XG4gICAgLmdyaWRfX2l0ZW0ge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cblxuLyoqXG4gKiBMZWdhY3kgZ3JpZCB1c2luZyBpbmxpbmUtYmxvY2tcbiAqL1xuXG5AZWxzZSB7XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLFxuICAlZ3JpZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1zcGFjaW5nLXVuaXQtZGVmYXVsdDtcblxuICAgIC8vIFJlbW92ZSBleHRyYS1zcGFjZSBiZXR3ZWVuIGl0ZW1zIGR1ZSB0byBpbmxpbmUgYmxvY2tcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAgIC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSxcbiAgICAlZ3JpZF9faXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogJGdyaWQtc3BhY2luZy11bml0LWRlZmF1bHQ7XG5cbiAgICAgIC8vIFJlc2V0IGZvbnQgc2l6ZSB0byBkZWZhdWx0IChzZWUgY29tbWVudCBhYm92ZSlcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1kZWZhdWx0O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG5cblxuICAvKipcbiAgICogR3V0dGVycyBzaXplXG4gICAqL1xuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tdGlnaHQsXG4gICVncmlkLS10aWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS10aW55LFxuICAlZ3JpZC0tdGlueSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1zcGFjaW5nLXVuaXQtdGlueTtcblxuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGdyaWQtc3BhY2luZy11bml0LXRpbnk7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1zbWFsbCxcbiAgJWdyaWQtLXNtYWxsIHtcbiAgICBtYXJnaW4tbGVmdDogLSRncmlkLXNwYWNpbmctdW5pdC1zbWFsbDtcblxuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGdyaWQtc3BhY2luZy11bml0LXNtYWxsO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tbGFyZ2UsXG4gICVncmlkLS1sYXJnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1zcGFjaW5nLXVuaXQtbGFyZ2U7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLXNwYWNpbmctdW5pdC1sYXJnZTtcbiAgICB9XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfWdyaWQtLWh1Z2UsXG4gICVncmlkLS1odWdlIHtcbiAgICBtYXJnaW4tbGVmdDogLSRncmlkLXNwYWNpbmctdW5pdC1odWdlO1xuXG4gICAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1zcGFjaW5nLXVuaXQtaHVnZTtcbiAgICB9XG4gIH1cblxuXG4gIC8qKlxuICAgKiBBbGlnbm1lbnRcbiAgICovXG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1jZW50ZXIsXG4gICVncmlkLS1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1yaWdodCxcbiAgJWdyaWQtLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1taWRkbGUsXG4gICVncmlkLS1taWRkbGUge1xuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1ib3R0b20sXG4gICVncmlkLS1ib3R0b20ge1xuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxuICB9XG5cblxuICAvKipcbiAgICogT3JkZXJcbiAgICovXG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1yZXYsXG4gICVncmlkLS1yZXYge1xuICAgIGRpcmVjdGlvbjogcnRsO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbn1cblxuLyoqXG4gKiBBZGQgc3BhY2luZyBiZXR3ZWVuIHJvd3NcbiAqL1xuXG4uI3skbmFtZXNwYWNlfWdyaWQtLW11bHRpbGluZSxcbiVncmlkLS1tdWx0aWxpbmUge1xuICBtYXJnaW4tdG9wOiAtJGdyaWQtc3BhY2luZy11bml0LWRlZmF1bHQ7XG5cbiAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctdG9wOiAkZ3JpZC1zcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvcmVhY2gtYWx0ZXJuYXRpdmUtc3BhY2luZygkZ3JpZC1zcGFjaW5ncykge1xuICAgICYuI3skbmFtZXNwYWNlfWdyaWQtLSN7JHNwYWNpbmctbmFtZX0ge1xuICAgICAgbWFyZ2luLXRvcDogLSN7JHNwYWNpbmctdmFsdWV9O1xuXG4gICAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy12YWx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmdyaWQtLXBvcnRhbC1uYXZpZ2F0aW9uIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgR1JJRCBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyoqXG4gKiBHdXR0ZXIgU2l6ZXMgd2l0aCBtZWRpYSBxdWVyeVxuICovXG5cbi4jeyRuYW1lc3BhY2V9bGctZ3JpZC0tZGVmYXVsdCxcbiVsZy1ncmlkLS1kZWZhdWx0IHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1zcGFjaW5nLXVuaXQtZGVmYXVsdDtcblxuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGdyaWQtc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJi5ncmlkLS1tdWx0aWxpbmUge1xuICAgICAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy10b3A6ICRncmlkLXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFdJRFRIU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbmNsdWRlIHdpZHRocygkd2lkdGhzLWNvbHVtbnMpO1xuXG4uI3skbmFtZXNwYWNlfXctYXV0byxcbiV3LWF1dG8ge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFdJRFRIUyBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQGluY2x1ZGUgZm9yZWFjaC1icmVha3BvaW50KCR3aWR0aHMtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgd2lkdGhzKCR3aWR0aHMtY29sdW1ucywgJyN7JGJyZWFrcG9pbnQtbmFtZX0tJyk7XG59XG5cbkBpbmNsdWRlIGZvcmVhY2gtYnJlYWtwb2ludCgkd2lkdGhzLWJyZWFrcG9pbnRzKSB7XG4gIC4jeyRuYW1lc3BhY2V9I3skYnJlYWtwb2ludC1uYW1lfS13LWF1dG8sXG4gICUjeyRicmVha3BvaW50LW5hbWV9dy1hdXRvIHtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRU1CRUQgUkVTUE9OU0lWRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uI3skbmFtZXNwYWNlfWVtYmVkLXJlc3BvbnNpdmUsXG4lZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gID4gaWZyYW1lLFxuICA+IG9iamVjdCxcbiAgPiBlbWJlZCB7XG4gICAgQGV4dGVuZCAlZW1iZWQtcmVzcG9uc2l2ZV9faXRlbTtcbiAgfVxufVxuXG4gIC4jeyRuYW1lc3BhY2V9ZW1iZWQtcmVzcG9uc2l2ZV9faXRlbSxcbiAgJWVtYmVkLXJlc3BvbnNpdmVfX2l0ZW0ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG5cbiAgICBib3JkZXI6IDA7XG4gIH1cblxuLiN7JG5hbWVzcGFjZX1lbWJlZC1yZXNwb25zaXZlLS0xNlxcLzksXG4lZW1iZWQtcmVzcG9uc2l2ZS0tMTZcXC85IHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLiN7JG5hbWVzcGFjZX1lbWJlZC1yZXNwb25zaXZlLS00XFwvMyxcbiVlbWJlZC1yZXNwb25zaXZlLS00XFwvMyB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG5cbi4jeyRuYW1lc3BhY2V9ZW1iZWQtcmVzcG9uc2l2ZS0tMVxcLzEsXG4lZW1iZWQtcmVzcG9uc2l2ZS0tMVxcLzEge1xuICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSU5LU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLiN7JG5hbWVzcGFjZX1saW5rLFxuJWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzO1xuICB9XG59XG5cbiAgLmxpbmtfX2ljb24ge1xuICAgIHdpZHRoOiAxLjJlbTtcbiAgICBoZWlnaHQ6IDEuMmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4yZW07XG5cbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gIH1cblxuXG4vKipcbiAqIFZhcmlhbnRzXG4gKi9cblxuLiN7JG5hbWVzcGFjZX1saW5rLS11bmRlcmxpbmUsXG4lbGluay0tdW5kZXJsaW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBjb2xvcjogJGFsdC1jb2xvci1kYXJrO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY3VycmVudENvbG9yO1xufVxuXG4uI3skbmFtZXNwYWNlfWxpbmstLW5ha2VkLFxuJWxpbmstLW5ha2VkIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uI3skbmFtZXNwYWNlfWxpbmstLW5lZ2F0aXZlLFxuJWxpbmstLW5lZ2F0aXZlIHtcbiAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9bGluay0tbmV1dHJhbCxcbiVsaW5rLS1uZXV0cmFsIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB0cmFuc2l0aW9uOiBjb2xvciAyNTBtcyBlYXNlLWluLW91dDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGJyYW5kLWNvbG9yO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9bGluay0tcGhvbmUsXG4lbGluay0tcGhvbmUge1xuICAvLyBpZiB0aGUgZGV2aWNlIGlzIG5vdCB0b3VjaHksIGRpc2FibGUgdGhlIGxpbmtcbiAgQG1lZGlhIG5vdCBhbGwgYW5kIChwb2ludGVyOmNvYXJzZSkge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9bGluay0tb3ZlcmFsbCxcbiVsaW5rLS1vdmVyYWxsIHtcbiAgcG9zaXRpb246IHN0YXRpYztcblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAwO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcyBlYXNlLWluLW91dDtcbiAgfVxuXG4gICY6aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkYWx0LWNvbG9yLWxpZ2h0LCAwLjk1KTtcbiAgfVxuXG4gICYtYWN0aXZlOjphZnRlcixcbiAgJi1hY3RpdmU6aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkYnJhbmQtY29sb3IsIDAuOTUpO1xuICB9XG59XG5cbi8qKlxuICogU2l6ZXNcbiAqL1xuXG4uI3skbmFtZXNwYWNlfWxpbmstLXNtYWxsLFxuJWxpbmstLXNtYWxsIHtcbiAgZm9udC1zaXplOiAkYnRuLXNtYWxsLWZvbnQtc2l6ZTtcbn1cblxuLiN7JG5hbWVzcGFjZX1saW5rLS1sYXJnZSxcbiVsaW5rLS1sYXJnZSB7XG4gIEBleHRlbmQgJWg0O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNHJlbTtcblxuICAubGlua19faWNvbiB7XG4gICAgd2lkdGg6IDAuOWVtO1xuICAgIGhlaWdodDogMC45ZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjFlbTtcbiAgICB0b3A6IDAuMWVtO1xuICB9XG5cbiAgLmxpbmtfX2ljb24tLXYtYWxpZ25lZCB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNpbmctdW5pdC10aW55IC8gMjtcbiAgfVxufVxuXG5cblxuXG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBCVVRUT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi4jeyRuYW1lc3BhY2V9YnRuLFxuJWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGlmICgkYnRuLXVzZS1wYWRkaW5nLXJhdGlvIGFuZCBsZW5ndGgoJGJ0bi1wYWRkaW5nKSA9PSAxKSB7XG4gICAgcGFkZGluZzogcmF0aW8oJGJ0bi1wYWRkaW5nKSAkYnRuLXBhZGRpbmc7XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidG4tcGFkZGluZztcbiAgfVxuXG4gIGNvbG9yOiAkYnRuLWNvbG9yO1xuXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6ICRidG4tbGluZS1oZWlnaHQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6ICRidG4tZm9udC1zaXplO1xuXG4gIGJvcmRlcjogJGJ0bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcbiAgYmFja2dyb3VuZDogJGJ0bi1ia2c7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBDbGVhbmVyIGZvbnQgcmVuZGVyaW5nXG4gIC8vIDxidXR0b24+IGRvZXNu4oCZdCBpbmhlcml0XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblxuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlLWluLW91dCxcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAyMDBtcyBlYXNlLWluLW91dCxcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmVkO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0wLjM1ZW07XG4gICAgbGVmdDogLTAuMWVtO1xuICB9XG59XG5cbi5idG5fX3RleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogVmFyaWFudHNcbiAqL1xuXG4vLyBVc2UgYWxsIHRoZSB3aWR0aCBhdmFpbGFibGVcbi4jeyRuYW1lc3BhY2V9YnRuLS1ibG9jayxcbiVidG4tLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBVc2UgYWxsIHRoZSB3aWR0aCBhdmFpbGFibGUgb24gc21hbGwgZGV2aWNlc1xuLiN7JG5hbWVzcGFjZX1idG4tLXNtLWJsb2NrLFxuJWJ0bi0tc20tYmxvY2sge1xuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIGRlZmF1bHQgc3R5bGluZyBmb3Igc3BlY2lhbCBidXR0b25zXG4uI3skbmFtZXNwYWNlfWJ0bi0tYmFyZSxcbiVidG4tLWJhcmUge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uI3skbmFtZXNwYWNlfWJ0bi0taWNvbixcbiVidG4tLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmJ0bl9faWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAkYnRuLWZvbnQtc2l6ZSAqICRidG4taWNvbi1zaXplLWZhY3RvcjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gIC5idG5fX3RleHQge1xuICAgIHBhZGRpbmctbGVmdDogJGJ0bi1mb250LXNpemUgKiAkYnRuLWljb24tc2l6ZS1mYWN0b3IgKyAkYnRuLWljb24tc3BhY2luZztcbiAgfVxufVxuXG5cbi8qKlxuICogU3R5bGVzXG4gKi9cblxuLiN7JG5hbWVzcGFjZX1idG4tLWRlZmF1bHQsXG4lYnRuLS1kZWZhdWx0IHtcbiAgY29sb3I6ICRidG4tZGVmYXVsdC1jb2xvcjtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWRlZmF1bHQtYmtnLWNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1kZWZhdWx0LWhvdmVyLWJrZy1jb2xvcjtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGJ0bi1kZWZhdWx0LWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLWRlZmF1bHQtYWN0aXZlLWJrZy1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1kZWZhdWx0LWhvdmVyLWJrZy1jb2xvcjtcbiAgfVxuXG4gICYuYnRuLS1hY3RpdmUge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1kZWZhdWx0LWhvdmVyLWJrZy1jb2xvcjtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfWJ0bi0tcHJpbWFyeSxcbiVidG4tLXByaW1hcnkge1xuICBjb2xvcjogJGJ0bi1wcmltYXJ5LWNvbG9yO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRidG4tcHJpbWFyeS1ia2ctY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRidG4tcHJpbWFyeS1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLXByaW1hcnktaG92ZXItYmtnLWNvbG9yO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkYnRuLXByaW1hcnktYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidG4tcHJpbWFyeS1hY3RpdmUtYmtnLWNvbG9yO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRidG4tcHJpbWFyeS1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLXByaW1hcnktaG92ZXItYmtnLWNvbG9yO1xuICB9XG5cbiAgJi5idG4tLXNvbGlkLWJnIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYnRuLXByaW1hcnktaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGJ0bi1wcmltYXJ5LWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVyO1xuICAgIH1cbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfWJ0bi0tcG9ydGFsLFxuJWJ0bi0tcG9ydGFsIHtcbiAgY29sb3I6ICRidG4tcG9ydGFsLWNvbG9yO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRidG4tcG9ydGFsLWJrZy1jb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkYnRuLXBvcnRhbC1ia2ctY29sb3I7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRidG4tcG9ydGFsLWhvdmVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidG4tcG9ydGFsLWhvdmVyLWJrZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRidG4tcG9ydGFsLWhvdmVyLWJrZy1jb2xvcjtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGJ0bi1wb3J0YWwtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidG4tcG9ydGFsLWFjdGl2ZS1ia2ctY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGJ0bi1wb3J0YWwtaG92ZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1wb3J0YWwtaG92ZXItYmtnLWNvbG9yO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9YnRuLS1wb3J0YWwtbmF2aWdhdGlvbixcbiVidG4tLXBvcnRhbC1uYXZpZ2F0aW9uIHtcbiAgZmxvYXQ6IGxlZnQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9YnRuLS1wb3J0YWwtbGUtY2x1YixcbiVidG4tLXBvcnRhbC1sZS1jbHViIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxlLWNsdWItY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGxlLWNsdWItY29sb3I7XG59XG5cbi4jeyRuYW1lc3BhY2V9YnRuLS10cmFuc3BhcmVudC1uZWdhdGl2ZSxcbiVidG4tLXRyYW5zcGFyZW50LW5lZ2F0aXZlIHtcbiAgY29sb3I6ICRidG4tdG4tY29sb3I7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRidG4tdG4tYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGJ0bi10bi1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLXRuLWhvdmVyLWJrZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRidG4tdG4taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkYnRuLXRuLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLXRuLWFjdGl2ZS1ia2ctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnRuLXRuLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGJ0bi10bi1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLXRuLWhvdmVyLWJrZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRidG4tdG4taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9YnRuLS10cmFuc3BhcmVudCxcbiVidG4tLXRyYW5zcGFyZW50IHtcbiAgY29sb3I6ICRidG4tdG4tY29sb3I7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRidG4tdG4tYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGJ0bi10bi1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLXRuLWhvdmVyLWJrZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRidG4tdG4taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkYnRuLXRuLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLXRuLWFjdGl2ZS1ia2ctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnRuLXRuLWFjdGl2ZS1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGJ0bi10bi1ob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnRuLXRuLWhvdmVyLWJrZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRidG4tdG4taG92ZXItYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9YnRuLS1yZXNldCxcbiVidG4tLXJlc2V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5idG5fX3RleHQge1xuICAgIHdpZHRoOiAyZW07XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAzNiU7XG4gICAgd2lkdGg6IDI2JTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuXG4gICAgdHJhbnNpdGlvbjogNDAwbXMgYWxsIGVhc2UtaW4tb3V0O1xuICAgIGJhY2tncm91bmQ6ICMxZDFkMWI7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIHRvcDogNDclO1xuICAgIHRyYW5zZm9ybTogcm90YXRlWig0NWRlZyk7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBib3R0b206IDQ4JTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTQ1ZGVnKTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJ0bi1kZWZhdWx0LWhvdmVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogU3RhdGVzXG4gKi9cblxuLiN7JG5hbWVzcGFjZX1idG4tLWRpc2FibGVkLFxuLiN7JG5hbWVzcGFjZX1idG5bZGlzYWJsZWRdLFxuJWJ0bi0tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG5cbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuXG4vKipcbiAqIFNpemVzXG4gKi9cblxuLiN7JG5hbWVzcGFjZX1idG4tLXNtYWxsLFxuJWJ0bi0tc21hbGwge1xuICBAaWYgKCRidG4tdXNlLXBhZGRpbmctcmF0aW8gYW5kIGxlbmd0aCgkYnRuLXNtYWxsLXBhZGRpbmcpID09IDEpIHtcbiAgICBwYWRkaW5nOiByYXRpbygkYnRuLXNtYWxsLXBhZGRpbmcpICRidG4tc21hbGwtcGFkZGluZztcbiAgfVxuICBAZWxzZSB7XG4gICAgcGFkZGluZzogJGJ0bi1zbWFsbC1wYWRkaW5nO1xuICB9XG5cbiAgZm9udC1zaXplOiAkYnRuLXNtYWxsLWZvbnQtc2l6ZTtcblxuICBib3JkZXItcmFkaXVzOiAkYnRuLXNtYWxsLWJvcmRlci1yYWRpdXM7XG59XG5cbi4jeyRuYW1lc3BhY2V9YnRuLS1sYXJnZSxcbiVidG4tLWxhcmdlIHtcblxuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuXG4gIEBpZiAoJGJ0bi11c2UtcGFkZGluZy1yYXRpbyBhbmQgbGVuZ3RoKCRidG4tbGFyZ2UtcGFkZGluZykgPT0gMSkge1xuICAgIHBhZGRpbmc6IHJhdGlvKCRidG4tbGFyZ2UtcGFkZGluZykgJGJ0bi1sYXJnZS1wYWRkaW5nO1xuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnRuLWxhcmdlLXBhZGRpbmc7XG4gIH1cblxuICBmb250LXNpemU6ICRidG4tbGFyZ2UtZm9udC1zaXplO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRidG4tbGFyZ2UtYm9yZGVyLXJhZGl1cztcbn1cblxuXG4uI3skbmFtZXNwYWNlfWJ0bi0tY2xvc2UsXG4lYnRuLS1jbG9zZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIHBhZGRpbmc6IDA7XG4gIGhlaWdodDogMS4xZW07XG4gIHdpZHRoOiAxLjJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkYnJhbmQtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlLWluLW91dDtcblxuICAmLnB1bGwtcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuM2VtO1xuICAgIHJpZ2h0OiAwLjJlbTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gIH1cbn1cblxuLy8gd2hlbiBhIGJ1dHRvbiBpcyBkaXNwbGF5ZWQgaW4gdGhlIG1haW5tZW51IGZvciBleGFtcGxlXG4uI3skbmFtZXNwYWNlfWJ0bi0tc2hhcnAsXG4lYnRuLS1zaGFycCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cblxuLiN7JG5hbWVzcGFjZX1idG4tLXBhcnR5LFxuJWJ0bi0tcGFydHkge1xuICBib3JkZXI6IDFweCBzb2xpZCByZWQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogNTEycHg7XG4gIGhlaWdodDogMzUwcHg7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcblxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgyMCUpO1xufVxuXG5cbi4jeyRuYW1lc3BhY2V9YnRuLS10aWxlLFxuJWJ0bi0tdGlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgcGFkZGluZzogJGJveC1zcGFjaW5nLXVuaXQtdGlueTtcblxuICBib3JkZXI6ICRib3gtZGVmYXVsdC1ib3JkZXI7XG4gIGJvcmRlci13aWR0aDogMXB4IDFweCAwIDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlLWluLW91dDtcblxuICBmb250LXNpemU6IDFlbTtcblxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBmb2N1cy1vdXRsaW5lZDtcbiAgfVxuXG4gIC5idG5fX2ljb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luOiAwLjEwZW0gMC4xMmVtIDAuMTRlbSAwLjEyZW07XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gIH1cblxuICAuYnRuX190ZXh0IHtcbiAgICBwYWRkaW5nOiAwLjJlbSAwIDAuNGVtO1xuXG4gICAgY29sb3I6ICRhbHQtY29sb3ItZGFyaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjU1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgJi1ob3Jpem9udGFsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgIC5idG5fX2ljb24ge1xuICAgICAgICBtYXJnaW46IDAgMC4zZW0gMC4yZW07XG4gICAgICB9XG5cbiAgICAgIC5idG5fX3RleHQge1xuICAgICAgICBwYWRkaW5nOiAwLjNlbSAwIDAuM2VtO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEJPWFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi4jeyRuYW1lc3BhY2V9Ym94LFxuJWJveCB7XG4gIGRpc3BsYXk6IGJsb2NrOyAgICAgLy8gaW4gY2FzZSAuYm94IGlzIGEgbGlua1xuICBwYWRkaW5nOiAkYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYsXG4gICoge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgIC8vIGluIGNhc2UgLmJveCBpcyBhIGxpbmtcbiAgfVxufVxuXG4uYm94X19ib2R5IHtcblxuICAvLyBSZW1vdmUgdGhpcyBzcGFjaW5nIHNvIHRoZSBjb250ZW50IG9mIHRoZSBib3ggbG9va3MgYWx3YXlzIHZlcnRpY2FsbHkgY2VudGVyZWQuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJveF9fYnRuIHtcblxuICAvLyBBZGQgc3BhY2luZyBiZXR3ZWVuIHRoZSBidXR0b24gYW5kIHRoZSBib2R5LlxuICBtYXJnaW4tdG9wOiAkYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0O1xufVxuXG5cbi8qKlxuICogVmFyaWFudHNcbiAqL1xuXG4uI3skbmFtZXNwYWNlfWJveC0tY2xpY2thYmxlLFxuJWJveC0tY2xpY2thYmxlIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlLWluLW91dCxcbiAgICAgICAgICAgICAgdHJhbnNmb3JtIDMwMG1zIGVhc2UtaW4tb3V0LFxuICAgICAgICAgICAgICBib3gtc2hhZG93IDMwMG1zIGVhc2UtaW4tb3V0O1xuXG4gIGJveC1zaGFkb3c6IDAgMC4zcmVtIDAuM3JlbSB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zcmVtKTtcbiAgICBib3gtc2hhZG93OiAwIDAuM3JlbSAwLjNyZW0gJHNoYWRvdy1jb2xvcjtcblxuICAgIC5idG4tLWRlZmF1bHQge1xuICAgICAgQGV4dGVuZCAlYnRuLS1kZWZhdWx0OmhvdmVyO1xuICAgIH1cblxuICAgIC5idG4tLXByaW1hcnkge1xuICAgICAgQGV4dGVuZCAlYnRuLS1wcmltYXJ5OmhvdmVyO1xuICAgIH1cblxuICAgIC5idG4ge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMXJlbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5ib3gtLWRlZmF1bHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlcjtcbiAgfVxuXG4gICYuYm94LS1wcmltYXJ5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3I7XG4gICAgY29sb3I6ICRiYXNlLWJrZy1jb2xvcjtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzBtcyBlYXNlLW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMTVyZW0pO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgZm9jdXMtb3V0bGluZWQ7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1ib3gtLWNsaWNrYWJsZS1vdmVyYWxsLFxuJWJveC0tY2xpY2thYmxlLW92ZXJhbGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgPiBhIHtcbiAgICBAZXh0ZW5kICVsaW5rLS1vdmVyYWxsO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9Ym94LS1jbGlja2FibGUtbm8tdHJhbnNmb3JtLFxuJWJveC0tY2xpY2thYmxlLW5vLXRyYW5zZm9ybSB7XG4gICY6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9Ym94LS1ldmVuLFxuJWJveC0tZXZlbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IGluaGVyaXQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgLmJveF9fYnRuIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9Ym94LS13aXRoLWljb24sXG4lYm94LS13aXRoLWljb24ge1xuXG4gIC5ib3hfX2JvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAuYm94X190ZXh0IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkYm94LXNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAuYm94X19pY29uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IDM5cHg7XG5cbiAgICAvLyBXZSBhbHdheXMgaGF2ZSB0byBzZXQgdGhlIHdpZHRoIG9uIHRoZSBTVkcgb3RoZXJ3aXNlXG4gICAgLy8gaXQgZnVja3MgdXAgaW4gZGlmZmVyZW50IGJyb3dzZXJzLlxuICAgIHN2ZyB7XG4gICAgICAvLyBWZXJ0aWNhbGx5IGNlbnRlciB0aGUgaWNvbi5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgICB3aWR0aDogaW5oZXJpdDtcbiAgICAgIGhlaWdodDogMzlweDtcbiAgICB9XG4gIH1cblxuICAuYm94X19idG4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgLiN7JG5hbWVzcGFjZX1ib3gtLXdpdGgtaWNvbixcbiAgJWJveC0td2l0aC1pY29uIHtcblxuICAgIC5ib3hfX2ljb24ge1xuICAgICAgd2lkdGg6IDQ4cHg7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gIC4jeyRuYW1lc3BhY2V9Ym94LS13aXRoLWljb24sXG4gICVib3gtLXdpdGgtaWNvbiB7XG5cbiAgICAuYm94X19ib2R5IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICB9XG5cbiAgICAuYm94X19pY29uICB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvICRib3gtc3BhY2luZy11bml0LWRlZmF1bHQ7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJveF9fYnRuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1ib3gtLXdpdGgtZm9vdGVyLFxuJWJveC0td2l0aC1mb290ZXIge1xuICBAZXh0ZW5kICVib3gtLXdpdGgtZm9vdGVyO1xuICBAZXh0ZW5kICVib3gtLXRpZ2h0O1xuXG4gIC5ib3hfX2JvZHkge1xuICAgIHBhZGRpbmc6ICRib3gtc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmJveF9fZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAkYm94LXNwYWNpbmctdW5pdC1zbWFsbCAkYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICAgIGJvcmRlci10b3A6ICRib3gtZGVmYXVsdC1ib3JkZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cblxuLiN7JG5hbWVzcGFjZX1ib3gtLXdpdGgtZm9vdGVyLXRpbGVzLFxuJWJveC0td2l0aC1mb290ZXItdGlsZXMge1xuICBAZXh0ZW5kICVib3gtLXRpZ2h0O1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgLmJveF9fYm9keSB7XG4gICAgcGFkZGluZzogJGJveC1zcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuYm94X19mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICB9XG59XG5cblxuLiN7JG5hbWVzcGFjZX1ib3gtLXdpdGgtaW1hZ2UsXG4lYm94LS13aXRoLWltYWdlIHtcblxuICAuYm94X19pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKCAxMDAlICsgI3skYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0fSAqIDIgKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAoLSRib3gtc3BhY2luZy11bml0LWRlZmF1bHQpO1xuICAgIG1hcmdpbi1ib3R0b206ICRib3gtc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gIH1cblxuICAuYm94X19pbWdfX2JnIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjMlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICB9XG5cbiAgJi5ib3gtLXRpZ2h0IC5ib3hfX2ltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJi5ib3gtLXRpbnkgLmJveF9faW1nIHtcbiAgICB3aWR0aDogY2FsYyggMTAwJSArICN7JGJveC1zcGFjaW5nLXVuaXQtdGlueX0gKiAyKTtcbiAgICBtYXJnaW46ICgtJGJveC1zcGFjaW5nLXVuaXQtdGlueSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJGJveC1zcGFjaW5nLXVuaXQtdGlueTtcbiAgfVxuXG4gICYuYm94LS1zbWFsbCAuYm94X19pbWcge1xuICAgIHdpZHRoOiBjYWxjKCAxMDAlICsgI3skYm94LXNwYWNpbmctdW5pdC1zbWFsbH0gKiAyICk7XG4gICAgbWFyZ2luOiAoLSRib3gtc3BhY2luZy11bml0LXNtYWxsKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkYm94LXNwYWNpbmctdW5pdC1zbWFsbDtcbiAgfVxuXG4gICYuYm94LS1sYXJnZSAuYm94X19pbWcge1xuICAgIHdpZHRoOiBjYWxjKCAxMDAlICsgI3skYm94LXNwYWNpbmctdW5pdC1sYXJnZX0gKiAyICk7XG4gICAgbWFyZ2luOiAoLSRib3gtc3BhY2luZy11bml0LWxhcmdlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkYm94LXNwYWNpbmctdW5pdC1sYXJnZTtcbiAgfVxuXG4gICYuYm94LS1odWdlIC5ib3hfX2ltZyB7XG4gICAgd2lkdGg6IGNhbGMoIDEwMCUgKyAjeyRib3gtc3BhY2luZy11bml0LWh1Z2V9ICogMiApO1xuICAgIG1hcmdpbjogKC0kYm94LXNwYWNpbmctdW5pdC1odWdlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkYm94LXNwYWNpbmctdW5pdC1odWdlO1xuICB9XG59XG5cblxuLiN7JG5hbWVzcGFjZX1ib3gtLXN0ZXBwZWQsXG4lYm94LS1zdGVwcGVkIHtcbiAgbWluLWhlaWdodDogNXJlbTtcbiAgcGFkZGluZzogJGJveC1zcGFjaW5nLXVuaXQtc21hbGw7XG5cbiAgLmJveF9fYm9keSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5ib3hfX3RleHQge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogM3JlbTtcblxuICAgIC8vIE1ha2Ugc3VyZSBwcm9iYWJsZSA8cD4gdGFnIGNoaWxkIHdvbid0IGJyZWFrIHRoZSBsYXlvdXQuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyBjbGFzcyBpc24ndCBkaXJlY3RseSBhcHBseSBvbiB0aGUgYnV0dG9uIGJ1dCBvbiB0aGUgd3JhcHBlci5cbiAgLy8gSXQncyB1c2VkIHNvIHRoYXQgdGhlIGJ1dHRvbiBuZXZlciBvdmVybGFwcyB0aGUgc3RlcCBudW1iZXIuXG4gIC5ib3hfX2J0biB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAuYm94X19zdGVwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMCAwIGF1dG87XG5cbiAgICBmb250LXNpemU6ICRmb250LXNpemUtZGVmYXVsdCAqIDQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRib3gtc3RlcHBlZC1zdGVwLWNvbG9yO1xuXG4gICAgc3BhbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC01cHg7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBtaW4taGVpZ2h0OiA4LjVyZW07XG4gICAgcGFkZGluZzogJGJveC1zcGFjaW5nLXVuaXQtZGVmYXVsdDtcblxuICAgIC5ib3hfX3RleHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0LjdyZW07XG4gICAgfVxuXG4gICAgLmJveF9fc3RlcCB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtZGVmYXVsdCAqIDcuNTtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIHRvcDogLTEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ib3gtLXN0ZXBwZWQtaW5hY3RpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTAsMjU1LDI1MCwwLjUpO1xuICB9XG59XG5cbi5ib3gtLXN0ZXBwZWQtdmFsaWRhdGVkIHtcbiAgQGV4dGVuZCAuYm94LS1zdGVwcGVkLWluYWN0aXZlO1xuXG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZSgkY29sb3Itc3VjY2VzcywgMC45KTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMmVtO1xuICAgIGhlaWdodDogMmVtO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAkYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICAgIGJvdHRvbTogJGJveC1zcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9jaGVjay1uZWdhdGl2ZS5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxZW0gMWVtO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIH1cbn1cblxuLyoqXG4gKiBTcGFjaW5nc1xuICovXG5cbi4jeyRuYW1lc3BhY2V9Ym94LS10aWdodCxcbiVib3gtLXRpZ2h0IHtcbiAgcGFkZGluZzogMDtcbn1cblxuLiN7JG5hbWVzcGFjZX1ib3gtLXRpbnksXG4lYm94LS10aW55IHtcbiAgcGFkZGluZzogJGJveC1zcGFjaW5nLXVuaXQtdGlueTtcbn1cblxuLiN7JG5hbWVzcGFjZX1ib3gtLXNtYWxsLFxuJWJveC0tc21hbGwge1xuICBwYWRkaW5nOiAkYm94LXNwYWNpbmctdW5pdC1zbWFsbDtcbn1cblxuLiN7JG5hbWVzcGFjZX1ib3gtLWxhcmdlLFxuJWJveC0tbGFyZ2Uge1xuICBwYWRkaW5nOiAkYm94LXNwYWNpbmctdW5pdC1sYXJnZTtcbn1cblxuLiN7JG5hbWVzcGFjZX1ib3gtLWh1Z2UsXG4lYm94LS1odWdlIHtcbiAgcGFkZGluZzogJGJveC1zcGFjaW5nLXVuaXQtaHVnZTtcbn1cblxuLyoqXG4gKiBTdHlsZXNcbiAqL1xuXG4uI3skbmFtZXNwYWNlfWJveC0tZGVmYXVsdCxcbiVib3gtLWRlZmF1bHQge1xuICBjb2xvcjogJGJveC1kZWZhdWx0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm94LWRlZmF1bHQtYmtnLWNvbG9yO1xuICBib3JkZXI6ICRib3gtZGVmYXVsdC1ib3JkZXI7XG59XG5cbi4jeyRuYW1lc3BhY2V9Ym94LS1wcmltYXJ5LFxuJWJveC0tcHJpbWFyeSB7XG4gIGNvbG9yOiAkYm94LXByaW1hcnktY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib3gtcHJpbWFyeS1ia2ctY29sb3I7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcGFkZGluZzogJGJveC1zcGFjaW5nLXVuaXQtbGFyZ2U7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1ib3gtLXVuZGVybGluZWQsXG4lYm94LS11bmRlcmxpbmVkIHtcbiAgQGV4dGVuZCAlYm94LS1kZWZhdWx0O1xuXG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcblxuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4uI3skbmFtZXNwYWNlfWJveC0taGVybyxcbiVib3gtLWhlcm8ge1xuICBAZXh0ZW5kICVib3gtLXByaW1hcnk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWluLWhlaWdodDogMzAwcHg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtaW4taGVpZ2h0OiAzODBweDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYmFzZS1ia2ctY29sb3I7XG4gIH1cblxuICAuYm94X190aXRsZSB7XG4gICAgJG1hcDogKFxuICAgICAgJHNjcmVlbi14cy1taW46ICRtaW4tZm9udC1zaXplLWhlcm8tdGl0bGUsXG4gICAgICAkc2NyZWVuLWxnLW1pbjogJG1heC1mb250LXNpemUtaGVyby10aXRsZVxuICAgICk7XG4gICAgQGluY2x1ZGUgcG9seS1mbHVpZC1zaXppbmcoJ2ZvbnQtc2l6ZScsICRtYXApO1xuXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNmVtO1xuICB9XG5cbiAgLmJveF9fc3VidGl0bGUge1xuICAgIEBleHRlbmQgJXRleHQtbGFyZ2U7XG5cbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAwNWVtO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9Ym94LS1sYXN0LFxuJWJveC0tbGFzdCB7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLiN7JG5hbWVzcGFjZX1ib3gtLWhpZ2hsaWdodGVkLFxuJWJveC0taGlnaGxpZ2h0ZWQge1xuICAvL2JhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRicmFuZC1jb2xvciwgMC45NSk7XG4gIGJveC1zaGFkb3c6IDAgMC4zcmVtIDAuM3JlbSAkc2hhZG93LWNvbG9yO1xuICBvdXRsaW5lOiAycHggc29saWQgJGJyYW5kLWNvbG9yO1xufVxuXG4uI3skbmFtZXNwYWNlfWJveC0tbGUtY2x1YixcbiVib3gtLWxlLWNsdWIge1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmJveF9fb3ZlcmxheS10aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRib3gtc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgbWFyZ2luLXRvcDogLTNlbTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGUtY2x1Yi1jb2xvci10cmFuc3BhcmVudDtcbiAgICBmb250LWZhbWlseTogJ0Nvb2tpZSc7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICB9XG5cbiAgJi5ib3gtLXRpZ2h0IC5ib3hfX292ZXJsYXktdGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgJi5ib3gtLXRpbnkgLmJveF9fb3ZlcmxheS10aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYm94LXNwYWNpbmctdW5pdC10aW55O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRib3gtc3BhY2luZy11bml0LXRpbnk7XG4gIH1cblxuICAmLmJveC0tc21hbGwgLmJveF9fb3ZlcmxheS10aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYm94LXNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkYm94LXNwYWNpbmctdW5pdC1zbWFsbDtcbiAgfVxuXG4gICYuYm94LS1sYXJnZSAuYm94X19vdmVybGF5LXRpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRib3gtc3BhY2luZy11bml0LWxhcmdlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRib3gtc3BhY2luZy11bml0LWxhcmdlO1xuICB9XG5cbiAgJi5ib3gtLWh1Z2UgLmJveF9fb3ZlcmxheS10aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkYm94LXNwYWNpbmctdW5pdC1odWdlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRib3gtc3BhY2luZy11bml0LWh1Z2U7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmIC5idG46Zm9jdXMge1xuICAgIG91dGxpbmUtY29sb3I6ICRsZS1jbHViLWNvbG9yO1xuICB9XG5cbiAgLmJveF9faW1nX19iZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDYzJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfWJveC0tbGUtY2x1Yi1oZXJvLFxuJWJveC0tbGUtY2x1Yi1oZXJvIHtcbiAgQGV4dGVuZCAlYm94LS1sZS1jbHViO1xuXG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxlLWNsdWItY29sb3ItdHJhbnNwYXJlbnQ7XG5cbiAgJi5ib3gtLWNsaWNrYWJsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxlLWNsdWItY29sb3I7XG4gIH1cblxuICAuYm94X19pbWdfX2JnIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDUuNDUlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICB9XG5cbiAgaDMge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIHAsXG4gIC5sZS1jbHViICYgLmNvdW50ZG93biB7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gIH1cbn1cblxuXG5cbi8vIFBIWUxBQ1RFUllcbi8vIGFkZCB0cmlhbmdsZSB0byB0aGUgaGVybyBib3hcblxuLiN7JG5hbWVzcGFjZX1ib3gtLXBoeWxhY3RlcnksXG4lYm94LS1waHlsYWN0ZXJ5IHtcbiAgQGV4dGVuZCAlYm94LS1oZXJvO1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICBib3R0b206IC00MHB4O1xuXG4gICAgYm9yZGVyLXRvcDogICAgIDQwcHggc29saWQgJGJveC1wcmltYXJ5LWJrZy1jb2xvcjtcbiAgICBib3JkZXItcmlnaHQ6ICAgMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAgbm9uZTtcbiAgICBib3JkZXItbGVmdDogICAgMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXG4gICAgJjphZnRlciB7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgICBsZWZ0OiAtNDBweDtcblxuICAgICAgYm9yZGVyLXRvcDogICAgMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogIDQwcHggc29saWQgJGJveC1wcmltYXJ5LWJrZy1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b206IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItbGVmdDogICBub25lO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIElDT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uI3skbmFtZXNwYWNlfWljb24sXG4laWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4uI3skbmFtZXNwYWNlfWljb24tLXNtYWxsLFxuJWljb24tLXNtYWxsIHtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG59XG5cbi4jeyRuYW1lc3BhY2V9aWNvbi0tbWlkLXNtYWxsLFxuJWljb24tLW1pZC1zbWFsbCB7XG4gIHdpZHRoOiAyZW07XG4gIGhlaWdodDogMmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi4jeyRuYW1lc3BhY2V9aWNvbi0tZGVmYXVsdCxcbiVpY29uLS1kZWZhdWx0IHtcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbn1cblxuLiN7JG5hbWVzcGFjZX1pY29uLS1tZWRpdW0sXG4laWNvbi0tbWVkaXVtIHtcbiAgd2lkdGg6IDQ4cHg7XG4gIGhlaWdodDogNDhweDtcbn1cblxuLiN7JG5hbWVzcGFjZX1pY29uLS1sYXJnZSxcbiVpY29uLS1sYXJnZSB7XG4gIHdpZHRoOiA2N3B4O1xuICBoZWlnaHQ6IDY3cHg7XG59XG5cbi4jeyRuYW1lc3BhY2V9aWNvbi0taHVnZSxcbiVpY29uLS1odWdlIHtcbiAgd2lkdGg6IDIzMHB4O1xuICBoZWlnaHQ6IDIzMHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cblxuLy8gU1RZTEVTXG5cbi4jeyRuYW1lc3BhY2V9aWNvbi0tcHJpbWFyeSxcbiVpY29uLS1wcmltYXJ5IHtcbiAgZmlsbDogJGJyYW5kLWNvbG9yO1xufVxuXG4uI3skbmFtZXNwYWNlfWljb24tLXNoYWRvdy1kZW5zZSxcbiVpY29uLS1zaGFkb3ctZGVuc2Uge1xuICBmaWxsOiAkYnJhbmQtY29sb3ItZGFyaztcbn1cblxuLiN7JG5hbWVzcGFjZX1pY29uLS1saWdodCxcbiVpY29uLS1wcmltYXJ5IHtcbiAgZmlsbDogJGFsdC1jb2xvci1saWdodDtcbn1cblxuLiN7JG5hbWVzcGFjZX1pY29uLS10b29sdGlwLFxuJWljb24tLXRvb2x0aXAge1xuICBmaWxsOiAkYWx0LWNvbG9yLWRhcms7XG4gIHRyYW5zaXRpb246IGZpbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgZmlsbDogJGJyYW5kLWNvbG9yO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5cbi8vIFdFSUdIVFxuXG4uI3skbmFtZXNwYWNlfXN0cm9rZS0tcmVndWxhcixcbiVzdHJva2UtLXJlZ3VsYXIge1xuICBzdHJva2Utd2lkdGg6IDBweDtcbn1cblxuLiN7JG5hbWVzcGFjZX1zdHJva2UtLW1lZGl1bSxcbiVzdHJva2UtLW1lZGl1bSB7XG4gIHN0cm9rZTogY3VycmVudENvbG9yO1xuICBzdHJva2Utd2lkdGg6IDAuM3B4O1xufVxuXG4uI3skbmFtZXNwYWNlfXN0cm9rZS0tYm9sZCxcbiVzdHJva2UtLWJvbGQge1xuICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgc3Ryb2tlLXdpZHRoOiAwLjZweDtcbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFRIRSBNRURJQSBPQkpFQ1RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBUaGUgZmFtb3VzIE1lZGlhIG9iamVjdCBjcmVhdGVkIGJ5IE5pY29sZSBTdWxsaXZhblxuLy8gaHR0cDovL3d3dy5zdHViYm9ybmVsbGEub3JnL2NvbnRlbnQvMjAxMC8wNi8yNS90aGUtbWVkaWEtb2JqZWN0LXNhdmVzLWh1bmRyZWRzLW9mLWxpbmVzLW9mLWNvZGUvXG5cbi4jeyRuYW1lc3BhY2V9bWVkaWEsXG4lbWVkaWEge1xuICBAZXh0ZW5kICVjbGVhcmZpeDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiAgLiN7JG5hbWVzcGFjZX1tZWRpYV9fbGVmdCxcbiAgJW1lZGlhX19sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6ICRtZWRpYS1ndXR0ZXI7XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfW1lZGlhX19yaWdodCxcbiAgJW1lZGlhX19yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAkbWVkaWEtZ3V0dGVyO1xuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1tZWRpYV9faW1hZ2UsXG4gICVtZWRpYV9faW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1tZWRpYV9fYm9keSxcbiAgJW1lZGlhX19ib2R5IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG5cbi4jeyRuYW1lc3BhY2V9bWVkaWEtLWNsaWNrYWJsZSxcbiVtZWRpYS0tY2xpY2thYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uI3skbmFtZXNwYWNlfW1lZGlhLS1jbGlja2FibGUtdmlkZW8tdGh1bWIsXG4lbWVkaWEtLWNsaWNrYWJsZS12aWRlby10aHVtYiB7XG5cbiAgLm1lZGlhX19sZWZ0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogLTE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHNoYWRvdy1jb2xvci1kZW5zZTtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93LWNvbG9yLWRlbnNlIDAgMnB4IDJweCAwcHg7XG5cbiAgICB0cmFuc2l0aW9uOiAwLjZzIGN1YmljLWJlemllcigwLjE2NSwwLjg0LDAuNDQsMSk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICAubWVkaWFfX2xlZnQge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNRURJQSBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZWRpYS1jb2xsYXBzZSkge1xuICAuI3skbmFtZXNwYWNlfW1lZGlhLS1yZXNwb25zaXZlIHtcbiAgICAuI3skbmFtZXNwYWNlfW1lZGlhX19sZWZ0LFxuICAgIC4jeyRuYW1lc3BhY2V9bWVkaWFfX3JpZ2h0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuI3skbmFtZXNwYWNlfW1lZGlhX19pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBDT05UQUlORVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uI3skbmFtZXNwYWNlfWNvbnRhaW5lcixcbiVjb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAkY29udGFpbmVyLW1heC13aWR0aDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lci1ndXR0ZXItd2lkdGgteHM7XG4gIHBhZGRpbmctbGVmdDogJGNvbnRhaW5lci1ndXR0ZXItd2lkdGgteHM7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgcGFkZGluZy1yaWdodDogJGNvbnRhaW5lci1ndXR0ZXItd2lkdGg7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29udGFpbmVyLWd1dHRlci13aWR0aDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tZC1tYXgtd2lkdGg7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1jb250YWluZXItLWxhcmdlLFxuJWNvbnRhaW5lci0tbGFyZ2Uge1xuICBtYXgtd2lkdGg6ICRjb250YWluZXItbGctbWF4LXdpZHRoO1xufVxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgU0VDVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbixcbiVzZWN0aW9uIHtcbiAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXNwYWNpbmctZGVmYXVsdC8yO1xuICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tc3BhY2luZy1kZWZhdWx0LzI7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXNwYWNpbmctZGVmYXVsdDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tc3BhY2luZy1kZWZhdWx0O1xuICB9XG5cbiAgLnNlY3Rpb24sXG4gIC5zZWN0aW9uIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLyoqXG4gKiBTcGFjaW5nc1xuICovXG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0tc21hbGwsXG4lc2VjdGlvbi0tc21hbGwge1xuICBwYWRkaW5nLXRvcDogJHNlY3Rpb24tc3BhY2luZy1zbWFsbC8yO1xuICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tc3BhY2luZy1zbWFsbC8yO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHBhZGRpbmctdG9wOiAkc2VjdGlvbi1zcGFjaW5nLXNtYWxsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2VjdGlvbi1zcGFjaW5nLXNtYWxsO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0taHVnZSxcbiVzZWN0aW9uLS1odWdlIHtcbiAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXNwYWNpbmctaHVnZS8yO1xuICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tc3BhY2luZy1odWdlLzI7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcGFkZGluZy10b3A6ICRzZWN0aW9uLXNwYWNpbmctaHVnZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHNlY3Rpb24tc3BhY2luZy1odWdlO1xuICB9XG59XG5cblxuLyoqXG4gKiBWYXJpYW50c1xuICovXG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0tb3V0Ym91bmQsXG4lc2VjdGlvbi0tb3V0Ym91bmQge1xuICB3aWR0aDogY2FsYygxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlO1xuICByaWdodDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTUwdnc7XG4gIG1hcmdpbi1yaWdodDogLTUwdnc7XG59XG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0taGlnaGxpZ2h0LFxuJXNlY3Rpb24tLWhpZ2hsaWdodCB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3I7XG59XG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0taGlnaGxpZ2h0LWxpZ2h0LFxuJXNlY3Rpb24tLWhpZ2hsaWdodC1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1saWdodDtcbn1cblxuLiN7JG5hbWVzcGFjZX1zZWN0aW9uLS1saWdodGVyLFxuJXNlY3Rpb24tLWxpZ2h0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG59XG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0tbGlnaHRlc3QsXG4lc2VjdGlvbi0tbGlnaHRlc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xufVxuXG4uI3skbmFtZXNwYWNlfXNlY3Rpb24tLWRhcmssXG4lc2VjdGlvbi0tZGFyayB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlcjtcbn1cblxuLiN7JG5hbWVzcGFjZX1zZWN0aW9uLS1sZS1jbHViLFxuJXNlY3Rpb24tLWxlLWNsdWIge1xuICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxlLWNsdWItY29sb3I7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2JhY2tncm91bmRzL3NlY3Rpb24tbGUtY2x1Yi5zdmcnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCBib3R0b207XG59XG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0taGV4YSxcbiVzZWN0aW9uLS1oZXhhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1oZXhhLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggODBweDtcblxuICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRlbigkYWx0LWNvbG9yLWxpZ2h0ICwgNDAlKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGxpZ2h0ZW4oJGFsdC1jb2xvci1saWdodCAsIDQwJSk7XG5cbiAgJiArICYge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1zZWN0aW9uLS1oZXhhLWxpZ2h0LFxuJXNlY3Rpb24tLWhleGEtbGlnaHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9zZWN0aW9uLWhleGEtbGlnaHQuc3ZnJyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGFsdC1jb2xvci1saWdodCAsIDQwJSk7XG4gIGJhY2tncm91bmQtc2l6ZTogNzBweCA4MHB4O1xuXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKCRhbHQtY29sb3ItbGlnaHQgLCA0MCUpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbGlnaHRlbigkYWx0LWNvbG9yLWxpZ2h0ICwgNDAlKTtcblxuICAmICsgJiB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfXNlY3Rpb24tLWhleGEtZGFyayxcbiVzZWN0aW9uLS1oZXhhLWRhcmsge1xuICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1oZXhhLWRhcmsuc3ZnJyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDcwcHggODBweDtcblxuICAmICsgJiB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfXNlY3Rpb24tLWhhbGZ0b25lLFxuJXNlY3Rpb24tLWhhbGZ0b25lIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1oYWxmdG9uZS5wbmcnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRhbHQtY29sb3ItbGlnaHRlciwgMiUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuXG4gICYgKyAmIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0taGFsZnRvbmUtZGVuc2UsXG4lc2VjdGlvbi0taGFsZnRvbmUtZGVuc2Uge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9iYWNrZ3JvdW5kcy9zZWN0aW9uLWhhbGZ0b25lLWRlbnNlLnBuZycpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGFsdC1jb2xvci1saWdodGVyLCA2JSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG5cbiAgJiArICYge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1zZWN0aW9uLS11cHBlci1saW5lZCxcbiVzZWN0aW9uLS11cHBlci1saW5lZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG59XG5cblxuLiN7JG5hbWVzcGFjZX1zZWN0aW9uLS1oYWxmdG9uZS1mYWNldHMge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1mYWNldHMuc3ZnJyksXG4gICAgICAgICAgICAgICAgICAgIHVybCgnLi4vaW1hZ2VzL2JhY2tncm91bmRzL3NlY3Rpb24taGFsZnRvbmUucG5nJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICBjZW50ZXIgYm90dG9tLCBsZWZ0IHRvcDtcbiAgYmFja2dyb3VuZC1zaXplOiAgICAgIGNvbnRhaW4sIDQwMHB4IDQwMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogICAgbm8tcmVwZWF0LCByZXBlYXQ7XG59XG5cbi4jeyRuYW1lc3BhY2V9c2VjdGlvbi0tZmFjZXRzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1mYWNldHMuc3ZnJyk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246ICBjZW50ZXIgYm90dG9tO1xuICBiYWNrZ3JvdW5kLXNpemU6ICAgICAgY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiAgICBuby1yZXBlYXQ7XG59XG5cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTUFHTkVUXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG4uI3skbmFtZXNwYWNlfW1hZ25ldCxcbiVtYWduZXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDgwdnc7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgbWF4LXdpZHRoOiA2MHZ3O1xuICB9XG59XG5cbiAgLm1hZ25ldF9faWNvbiB7XG4gICAgd2lkdGg6IDRyZW07XG4gICAgaGVpZ2h0OiA0cmVtO1xuICAgIG1heC13aWR0aDogMzAlO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdG9wOiAtMnJlbTtcbiAgICBsZWZ0OiAyMCU7XG5cbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICB9XG5cbiAgLm1hZ25ldF9faW1hZ2Uge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBib3gtc2hhZG93OiAzcHggM3B4IDVweCAkc2hhZG93LWNvbG9yLWRlbnNlO1xuXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMzAlIC0xcmVtO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0yZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAubWFnbmV0X19vdmVybGF5LXRpdGxlIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRib3gtc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgcGFkZGluZy1yaWdodDogJGJveC1zcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgICBtYXJnaW4tdG9wOiAtMi41ZW07XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yLXRyYW5zcGFyZW50O1xuICAgIGZvbnQtZmFtaWx5OiAnQ29va2llJztcbiAgICBmb250LXNpemU6IDEuNGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gIH1cblxuXG4vKipcbiAqIFN0eWxlc1xuICovXG5cbi5tYWduZXQtLXByaW1hcnkge1xuICBjb2xvcjogJGJyYW5kLWNvbG9yO1xufVxuXG4ubWFnbmV0LS1sZS1jbHViIHtcbiAgY29sb3I6ICRsZS1jbHViLWNvbG9yO1xuXG4gIC5tYWduZXRfX292ZXJsYXktdGl0bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsZS1jbHViLWNvbG9yLXRyYW5zcGFyZW50O1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTElTVFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi4jeyRuYW1lc3BhY2V9bGlzdCxcbiVsaXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi4jeyRuYW1lc3BhY2V9bGlzdC0tcHJpbWFyeSxcbiVsaXN0LS1wcmltYXJ5IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nLXVuaXQtdGlueTtcblxuICAgICAgLy8gVE9ETzogSW52ZXN0aWdhdGUgYW5kIHVzZSBlbSB1bml0IGZvciB0aGUgY2lyY2xlLlxuICAgICAgLy8gV2Ugc3dpdGNoZWQgdG8gcGl4ZWwgZm9udC1zaXplIGJlY2F1c2UgZW0gZG9lc24ndCB3b3JrIGdvb2Qgb24gSUUxMSBpbiB0aGlzIHBhcnRpY3VsYXIgY2FzZS5cbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjc7XG4gICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3I7XG4gICAgfVxuICB9XG59XG5cblxuLiN7JG5hbWVzcGFjZX1saXN0LS1sZS1jbHViLFxuJWxpc3QtLWxlLWNsdWIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nLXVuaXQtdGlueTtcblxuICAgICAgLy8gVE9ETzogSW52ZXN0aWdhdGUgYW5kIHVzZSBlbSB1bml0IGZvciB0aGUgY2lyY2xlLlxuICAgICAgLy8gV2Ugc3dpdGNoZWQgdG8gcGl4ZWwgZm9udC1zaXplIGJlY2F1c2UgZW0gZG9lc24ndCB3b3JrIGdvb2Qgb24gSUUxMSBpbiB0aGlzIHBhcnRpY3VsYXIgY2FzZS5cbiAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjc7XG4gICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgIGNvbG9yOiAkbGUtY2x1Yi1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIExJU1QgU1RBQ0tFRFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi4jeyRuYW1lc3BhY2V9bGlzdC1zdGFja2VkLFxuJWxpc3Qtc3RhY2tlZCB7XG4gIEBleHRlbmQgJWxpc3Q7XG5cbiAgPiBsaSB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1kZWZhdWx0LzIgMDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4gIC8vIEFkZCBzZXBhcmF0b3JzXG4gIC4jeyRuYW1lc3BhY2V9bGlzdC1zdGFja2VkLS1kaXZpZGVkLFxuICAlbGlzdC1zdGFja2VkLS1kaXZpZGVkIHtcbiAgICA+IGxpICsgbGkge1xuICAgICAgYm9yZGVyLXRvcDogJGxpc3Qtc2VwYXJhdG9yLXN0eWxlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTaXplc1xuICAgKi9cblxuICAuI3skbmFtZXNwYWNlfWxpc3Qtc3RhY2tlZC0tdGlnaHQsXG4gICVsaXN0LXN0YWNrZWQtLXRpZ2h0IHtcbiAgICA+IGxpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1saXN0LXN0YWNrZWQtLXRpbnksXG4gICVsaXN0LXN0YWNrZWQtLXRpbnkge1xuICAgID4gbGkge1xuICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC10aW55LzIgMDtcbiAgICB9XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfWxpc3Qtc3RhY2tlZC0tc21hbGwsXG4gICVsaXN0LXN0YWNrZWQtLXNtYWxsIHtcbiAgICA+IGxpIHtcbiAgICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtc21hbGwvMiAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9bGlzdC1zdGFja2VkLS1sYXJnZSxcbiAgJWxpc3Qtc3RhY2tlZC0tbGFyZ2Uge1xuICAgID4gbGkge1xuICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1sYXJnZS8yIDA7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1saXN0LXN0YWNrZWQtLWh1Z2UsXG4gICVsaXN0LXN0YWNrZWQtLWh1Z2Uge1xuICAgID4gbGkge1xuICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1odWdlLzIgMDtcbiAgICB9XG4gIH1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSVNUIElDT05TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmxpc3QtLWljb24ge1xuICBAZXh0ZW5kICVsaXN0O1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG5cbiAgLmxpc3RfX2ljb24ge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cblxuICAubGlzdF9fY29udGVudCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfWxpc3QtLWNoZWNrbWFyayxcbiVsaXN0LS1jaGVja21hcmsge1xuICBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjZlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9jaGVjay5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEuMmVtIDEuMmVtO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLjRlbTtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfWxpc3QtLWNoZWNrbWFyay1uZWdhdGl2ZSxcbiVsaXN0LS1jaGVja21hcmstbmVnYXRpdmUge1xuICBAZXh0ZW5kICVsaXN0LS1jaGVja21hcms7XG5cbiAgbGkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2NoZWNrLW5lZ2F0aXZlLnN2ZycpO1xuICB9XG59XG5cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRk9PVEVSXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZvb3RlciB7XG4gIEBleHRlbmQgJXNlY3Rpb247XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1kYXJrZXI7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXJfX2xpbmstLWxpZ2h0IHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5mb290ZXJfX2xvZ28ge1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogNjVweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uZm9vdGVyX19pbmZvLFxuLmZvb3Rlcl9fY29udGVudCB7XG4gICRtYXA6IChcbiAgICAkc2NyZWVuLXhzLW1pbjogJG1pbi1mb250LXNpemUtc21hbGwsXG4gICAgJHNjcmVlbi1sZy1taW46ICRtYXgtZm9udC1zaXplLXNtYWxsXG4gICk7XG4gIEBpbmNsdWRlIHBvbHktZmx1aWQtc2l6aW5nKCdmb250LXNpemUnLCAkbWFwKTtcbn1cblxuXG4uZm9vdGVyX19jb250ZW50IHtcbiAgdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHQ7XG4gIH1cbn1cblxuLy8gVE9ETzogRGVjcmVhc2Ugc3BlY2lmaWNpdHkuXG4uZm9vdGVyX19uYXZpZ2F0aW9uIHtcbiAgdWwge1xuICAgIEBleHRlbmQgJWxpc3Q7XG4gIH1cblxuICBzcGFuLFxuICBhIHtcbiAgICBjb2xvcjogJGFsdC1jb2xvci1saWdodDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAxMDBtcyBlYXNlLWluLW91dDtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByaW1hcnkgbWVudS5cbiAgLm1lbnUtbGV2ZWwtMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGhlaWdodDogNjVweDtcblxuICAgID4gLm1lbnUtaXRlbSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG5cbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBleHRlbmQgJWg0O1xuXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgJi5tZW51LWl0ZW0tLWFjdGl2ZS10cmFpbCxcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgc3BhbntcbiAgICAgICAgICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2Vjb25kYXJ5IG1lbnUuXG4gIC5tZW51LWxldmVsLTEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcblxuICAgIHNwYW4sXG4gICAgYSB7XG4gICAgICAkbWFwOiAoXG4gICAgICAgICRzY3JlZW4teHMtbWluOiAkbWluLWZvbnQtc2l6ZS1zbWFsbCxcbiAgICAgICAgJHNjcmVlbi1sZy1taW46ICRtYXgtZm9udC1zaXplLXNtYWxsXG4gICAgICApO1xuICAgICAgQGluY2x1ZGUgcG9seS1mbHVpZC1zaXppbmcoJ2ZvbnQtc2l6ZScsICRtYXApO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc3BsYXkgc2Vjb25kIGxldmVsIG5hdmlnYXRpb24gd2hlbiBwcmltYXJ5IG1lbnUgaXRlbSBpcyBhY3RpdmUuXG4gIC5tZW51LWl0ZW0tLWFjdGl2ZS10cmFpbCAubWVudS1sZXZlbC0xLFxuICAuYWN0aXZlIC5tZW51LWxldmVsLTEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiAubWVudS1pdGVtIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgICBwYWRkaW5nOiAwICRzcGFjaW5nLXVuaXQtc21hbGwgJHNwYWNpbmctdW5pdC1kZWZhdWx0IDA7XG5cbiAgICAgID4gYSB7XG4gICAgICAgIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXJfX2Rpc2NsYWltZXIge1xuICBjb2xvcjogJGFsdC1jb2xvci1saWdodDtcbn1cblxuLmZvb3Rlcl9fc29jaWFsLWxpc3QgYSB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0O1xufVxuXG4uZm9vdGVyLS1maXhlZCB7XG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuICB9XG59XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNQUlOIFRFQVNFUlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi4jeyRuYW1lc3BhY2V9bWFpbi10ZWFzZXIsXG4lbWFpbi10ZWFzZXIge1xuICBAZXh0ZW5kICVzZWN0aW9uO1xuICBAZXh0ZW5kICVzZWN0aW9uLS1zbWFsbDtcbiAgQGV4dGVuZCAlc2VjdGlvbi0taGlnaGxpZ2h0O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi10b3A6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tdG9wOiAkc3BhY2luZy11bml0LWh1Z2U7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1tYWluLXRlYXNlcl9faW1hZ2UsXG4lbWFpbi10ZWFzZXJfX2ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0jeyRzZWN0aW9uLXNwYWNpbmctc21hbGwvMiArICRzcGFjaW5nLXVuaXQtbGFyZ2V9O1xuICByaWdodDogMDtcbiAgYm90dG9tOiAtI3skc2VjdGlvbi1zcGFjaW5nLXNtYWxsLzIgfTtcbiAgbGVmdDogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuXG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgYm90dG9tO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHRvcDogLSN7JHNlY3Rpb24tc3BhY2luZy1zbWFsbCArICRzcGFjaW5nLXVuaXQtbGFyZ2V9O1xuICAgIGJvdHRvbTogLSN7JHNlY3Rpb24tc3BhY2luZy1zbWFsbCB9O1xuICAgIGxlZnQ6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICB0b3A6IC0jeyRzZWN0aW9uLXNwYWNpbmctc21hbGwgKyAkc3BhY2luZy11bml0LWh1Z2V9O1xuICAgIGxlZnQ6ICRzcGFjaW5nLXVuaXQtaHVnZTtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfW1haW4tdGVhc2VyX19pbWFnZS1ib3gsXG4lbWFpbi10ZWFzZXJfX2ltYWdlLWJveCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtI3skYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0ICsgJHNwYWNpbmctdW5pdC1zbWFsbH07XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IC0jeyRib3gtc3BhY2luZy11bml0LWRlZmF1bHR9O1xuICBsZWZ0OiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG5cbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBib3R0b207XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTkFWSUdBVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vXG4vLyBTVFlMRVMgdG8gaW5oZXJpdFxuLy9cbi5uYXZpZ2F0aW9uLXByaW1hcnktbGluayxcbiVuYXZpZ2F0aW9uLXByaW1hcnktbGluayB7XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMWVtIDAuMmVtO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlcjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICRtYXA6IChcbiAgICAgICRzY3JlZW4teHMtbWluOiAkbWluLWZvbnQtc2l6ZS1sYXJnZSswLjA1LFxuICAgICAgJHNjcmVlbi1sZy1taW46ICRtYXgtZm9udC1zaXplLWxhcmdlKzAuMVxuICAgICk7XG4gICAgQGluY2x1ZGUgcG9seS1mbHVpZC1zaXppbmcoJ2ZvbnQtc2l6ZScsICRtYXApO1xuXG4gICAgcGFkZGluZzogMC42ZW07XG4gIH1cbn1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5LWxpbmssXG4lbmF2aWdhdGlvbi1zZWNvbmRhcnktbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjNlbSAwO1xuICBmb250LXNpemU6ICRtaW4tZm9udC1zaXplLWgzO1xuICBjb2xvcjogJGFsdC1jb2xvci1kYXJrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgdHJhbnNpdGlvbjogY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBmb250LXNpemU6IDAuOTVlbTtcbiAgICBwYWRkaW5nOiAwLjg0ZW0gMCAwLjhlbTtcbiAgfVxufVxuXG4ubmF2aWdhdGlvbi10ZXJ0aWFyeS1saW5rLFxuJW5hdmlnYXRpb24tdGVydGlhcnktbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMC4zNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zNWVtO1xuXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIGNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICB0cmFuc2l0aW9uOiBjb2xvciAyMDBtcyBlYXNlLWluLW91dDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkYnJhbmQtY29sb3I7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogMC4xNWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjE1ZW07XG4gICAgZm9udC1zaXplOiAxZW07XG4gIH1cbn1cblxuLm5hdmlnYXRpb24tcXVhdGVybmFyeS1saW5rLFxuJW5hdmlnYXRpb24tcXVhdGVybmFyeS1saW5rIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZy10b3A6IDAuMTVlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMTVlbTtcblxuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogJGFsdC1jb2xvci1kYXJrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgdHJhbnNpdGlvbjogY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gIH1cbn1cblxuXG4vL1xuLy8gTEFZT1VUXG4vL1xuLmhlYWRlci1jb250cm9scyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAwO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIH1cbn1cblxuLmhlYWRlci1jb250cm9sc19faXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uaGVhZGVyLWNvbnRyb2xzX19pdGVtLS1pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG59XG5cbi5oZWFkZXItY29udHJvbHNfX2l0ZW0tLXB1c2hlZC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5cbi5tYWluLWhlYWRlciB7XG4gICBoZWlnaHQ6ICRtYWluLWhlYWRlci1oZWlnaHQ7XG5cbiAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgaGVpZ2h0OiAkbWFpbi1oZWFkZXItaGVpZ2h0LW1kO1xuICAgIH1cbn1cblxuLm5hdmlnYXRpb24ge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDIwO1xuICBwYWRkaW5nLXRvcDogMTBweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogJGNvbnRhaW5lci1ndXR0ZXItd2lkdGg7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBwYWRkaW5nLXRvcDogJGNvbnRhaW5lci1ndXR0ZXItd2lkdGggKyAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gIH1cblxuICAubWVudS0tdmlzaWJsZSAmIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMjA7XG4gIH1cblxuICA+IC5jb250YWluZXIge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEJBQ0tHUk9VTkQgT1ZFUkxBWVxuXG4ubmF2aWdhdGlvbi1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDY7XG5cbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xuXG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2UtaW4tb3V0IDgwMG1zO1xuXG4gIC5tZW51LS12aXNpYmxlICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIC5tb2RhbC1pcy1pbiAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuXG4vL1xuLy8gRklSU1QgTEVWRUwgTkFWSUdBVElPTlxuLy9cblxuLm5hdmlnYXRpb24tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKCRhbHQtY29sb3ItbGlnaHQsIDM1JSk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBsaWdodGVuKCRhbHQtY29sb3ItbGlnaHQsIDM1JSk7XG5cbiAgb3BhY2l0eTogMDtcblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgMjAwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgMjAwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7XG5cbiAgLm1lbnUtLXZpc2libGUgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAucXVpY2stc2VhcmNoLS1mb2N1c2VkICYge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHB4KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgNDAwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgNDAwbXM7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbn1cblxuLm5hdmlnYXRpb24tcHJpbWFyeV9fbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMDtcblxuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24tcHJpbWFyeV9fbWVudS1pdGVtIHtcbiAgQGV4dGVuZCAlbmF2aWdhdGlvbi1wcmltYXJ5LWxpbms7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cbn1cblxuLy8gQXJyb3dcbi5uYXZpZ2F0aW9uLXByaW1hcnlfX21lbnUtaXRlbS0tYWN0aXZlIHtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBjb2xvcjogJGFsdC1jb2xvci1kYXJrZXI7XG4gIH1cblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG5cbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYm90dG9tOiAtMC42MnJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjJyZW07XG5cbiAgICBib3JkZXItd2lkdGg6IDAuNjJyZW0gMC42MnJlbSAwIDAuNjJyZW07XG4gICAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRhbHQtY29sb3ItbGlnaHQsIDM1JSkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjphZnRlciB7XG4gICAgYm90dG9tOiAtMC41cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41cmVtO1xuXG4gICAgYm9yZGVyLXdpZHRoOiAwLjVyZW0gMC41cmVtIDAgMC41cmVtO1xuICAgIGJvcmRlci1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgdG9wOiBpbmhlcml0O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG5cbiAgICAgIGJvcmRlci13aWR0aDogMCAwLjVyZW0gMC41cmVtIDAuNXJlbTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGJyYW5kLWNvbG9yIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG5cblxuLy9cbi8vIFNFQ09ORCBMRVZFTCBOQVZJR0FUSU9OXG4vL1xuXG4vLyB3cmFwcyB0aGUgbmF2aWdhdGlvbi1zZWNvbmRhcnkgYmxvY2s6XG4ubmF2aWdhdGlvbi1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gIG9wYWNpdHk6IDA7XG5cbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDBtcyA0MDBtcywgb3BhY2l0eSBlYXNlLWluLW91dCAyMDBtcyAwbXMsIHZpc2libGl0eSBlYXNlLWluLW91dCAwbXMgMjAwbXM7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdG9wOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC5tZW51LS12aXNpYmxlICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5MDtcbiAgICAvLyBIZWlnaHQgaXMgYmFzaWNhbGx5IHRoZSBhbGwgaGVpZ2h0IC0gaGVpZ2h0IG9mIHRoZSBmb290ZXIgLSBoZWlnaHQgb2YgdGhlIGhlYWRlci5cbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAzLjVlbSAtIDQuOGVtKTtcblxuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgIHRyYW5zaXRpb246IGhlaWdodCAwbXMgMG1zLCBvcGFjaXR5IGVhc2UtaW4tb3V0IDMwMG1zIDQwMG1zLCB2aXNpYmlsaXR5IGVhc2UtaW4tb3V0IDMwMG1zIDQwMG1zO1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uLXNlY29uZGFyeSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogNDAwbXMgdHJhbnNmb3JtIGVhc2UtaW4tb3V0LCBvcGFjaXR5IGVhc2UtaW4tb3V0IDQwMG1zOyAvLyBhbGxvdyBsZWZ0LXJpZ2h0IGNhcnJvdXNlbFxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYnJhbmQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgICBib3gtc2hhZG93OiByZ2JhKDE5MSwxODksMTgxLDAuMTUpIDAgMnB4IDJweCAwO1xuICB9XG5cbiAgLnF1aWNrLXNlYXJjaC0tZm9jdXNlZCAmIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGVhc2UtaW4tb3V0IDYwMG1zLCBvcGFjaXR5IGVhc2UtaW4tb3V0IDYwMG1zO1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uLXNlY29uZGFyeS0tMS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uLXNlY29uZGFyeS0tMi1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnktLTMtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAlKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogNDAwbXMgdHJhbnNmb3JtIGVhc2UtaW4tb3V0O1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gICAgLy8gQWRkIHNvbWUgc3BhY2luZyBiZWxvdyB0aGUgbWVudSBzbyBpdCdzIG5ldmVyIGhpZGRlbiBieSB0aGUgcHJpbWFyeSBtZW51LlxuICAgIHBhZGRpbmctYm90dG9tOiA0LjVlbTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDQwMG1zIGVhc2UtaW4tb3V0LCAgdmlzaWJpbGl0eSAwbXMgMG1zIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgPiAubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtaXRlbSB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDYwMG1zIGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG5cbiAgICAubWVudS0tdmlzaWJsZSAmIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAxIHRvIDEwIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICRpICogMTAwbXMgKyA1MG1zO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLWFjdGl2ZSB7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gNDAwbXMgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMG1zIDBtcyBlYXNlLWluLW91dDtcbiAgICB9XG4gIH1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LS0xIHtcbiAgbGVmdDogMDtcbn1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19tZW51LS0yIHtcbiAgbGVmdDogMTAwJTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS0tMyB7XG4gIGxlZnQ6IDIwMCU7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX21lbnUtLXBvcnRhbCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgbGk6bGFzdC1jaGlsZCBhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cblxuICA+IC5uYXZpZ2F0aW9uLXNlY29uZGFyeV9fbWVudS1pdGVtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuXG4gICAgLm1lbnUtLXZpc2libGUgJiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAuODVlbSAxLjJ2dztcblxuICAgICAgJjpob3ZlcixcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xuICAgICAgICBjb2xvcjogJGJyYW5kLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgICAgcGFkZGluZzogLjRlbSAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX2hlYWRpbmcge1xuICBAZXh0ZW5kICVuYXZpZ2F0aW9uLXNlY29uZGFyeS1saW5rO1xuXG4gIHN2ZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDI1MG1zIGVhc2UtaW4tb3V0O1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uLXNlY29uZGFyeV9faGVhZGluZy0taGlnaGxpZ2h0IHtcbiAgY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xufVxuXG4ubmF2aWdhdGlvbi1zZWNvbmRhcnlfX2hlYWRpbmctLXN0YW5kLWJhY2sge1xuICBjb2xvcjogJGFsdC1jb2xvci1saWdodDtcbn1cblxuLm5hdmlnYXRpb24tc2Vjb25kYXJ5X19oZWFkaW5nLS1pcy1vcGVuIHtcbiAgc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19oZWFkaW5nIHtcbiAgQGV4dGVuZCAlbmF2aWdhdGlvbi10ZXJ0aWFyeS1saW5rO1xufVxuXG5cblxuXG5cbi8vXG4vLyBUSElSRCBMRVZFTCBOQVZJR0FUSU9OXG4vL1xuXG4vLyBjYXJkXG4ubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvci1kZWZhdWx0O1xuICAgIGJveC1zaGFkb3c6IHJnYmEoMTkxLDE4OSwxODEsMC4xNSkgMCAycHggMnB4IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuNWVtKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gNDAwbXMgZWFzZS1pbi1vdXQsIGhlaWdodCAwbXMgNDAxbXMgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMG1zIDQwMW1zIGVhc2UtaW4tb3V0O1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS1hY3RpdmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBoZWlnaHQ6IDE4ZW07XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gNDAwbXMgZWFzZS1pbi1vdXQsIGhlaWdodCAwbXMgMG1zIGVhc2UtaW4tb3V0LCB2aXNpYmlsaXR5IDBtcyAwbXMgZWFzZS1pbi1vdXQ7XG4gIH1cbn1cblxuLy8gY29sdW1uXG4ubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS1pdGVtIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItY29sb3ItZGVmYXVsdDtcbiAgICBwYWRkaW5nOiAxZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gaWYgNSBtZW51IGl0ZW1zOlxuICAgIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS01LWl0ZW1zICY6bnRoLWNoaWxkKG4rNCkge1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgfVxuICAgIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS01LWl0ZW1zICY6bnRoLWNoaWxkKDUpIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgLy8gaWYgNiBtZW51IGl0ZW1zOlxuICAgIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS02LWl0ZW1zICY6bnRoLWNoaWxkKG4rMykge1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgfVxuICAgIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS02LWl0ZW1zICY6bnRoLWNoaWxkKDJuKzQpIHtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICB9XG4gICAgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtLTYtaXRlbXMgJjpudGgtY2hpbGQobis1KSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlci1jb2xvci1kZWZhdWx0O1xuICAgIH1cblxuICAgIC8vIGlmIDcgbWVudSBpdGVtczpcbiAgICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS0tNy1pdGVtcyAmOm50aC1jaGlsZChuKzIpIHtcbiAgICAgIGhlaWdodDogNTAlO1xuICAgIH1cbiAgICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS0tNy1pdGVtcyAmOm50aC1jaGlsZCgzbis0KSB7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgfVxuICAgIC5uYXZpZ2F0aW9uLXRlcnRpYXJ5X19tZW51LS03LWl0ZW1zICY6bnRoLWNoaWxkKG4rNSkge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3ItZGVmYXVsdDtcbiAgICB9XG5cbiAgICAvLyBpZiA4IG1lbnUgaXRlbXM6XG4gICAgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtLTgtaXRlbXMgJiB7XG4gICAgICBoZWlnaHQ6IDUwJTtcbiAgICB9XG4gICAgLm5hdmlnYXRpb24tdGVydGlhcnlfX21lbnUtLTgtaXRlbXMgJjpudGgtY2hpbGQoNG4rNCkge1xuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIH1cbiAgICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudS0tOC1pdGVtcyAmOm50aC1jaGlsZChuKzUpIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4gICAgfVxuXG4gIH1cbn1cblxuXG5cbi8vIFN0eWxlcyBmb3IgbGV2ZWwtMyBsaW5rc1xuLm5hdmlnYXRpb24tdGVydGlhcnlfX2hlYWRpbmcge1xuICBAZXh0ZW5kICVuYXZpZ2F0aW9uLXRlcnRpYXJ5LWxpbms7XG59XG5cbi8vIFN0eWxlcyBmb3IgbGV2ZWwtNCBsaW5rc1xuLm5hdmlnYXRpb24tcXVhdGVybmFyeV9faGVhZGluZyB7XG4gIEBleHRlbmQgJW5hdmlnYXRpb24tcXVhdGVybmFyeS1saW5rO1xufVxuXG4ubmF2aWdhdGlvbi10ZXJ0aWFyeV9fbWVudSxcbi5tZW51LWxldmVsLTIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cblxuLy8gY2FsbCB0byBhY3Rpb24gYm94ZXM6XG4ubWVudS1pdGVtLS1jb250ZW50LWV4dHJhcyB7XG4gIEBleHRlbmQgJXRleHQtc21hbGw7XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3ItZGVmYXVsdDtcbiAgfVxufVxuXG5cblxuXG5cblxuLy8gU1BFQ0lGSUMgQlVUVE9OUyBBTkQgTElOS1NcblxuLy8gYnV0dG9uIGZvciB0aGUgbWVudVxuLm1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBtYXJnaW4tbGVmdDogODBweDtcbiAgdHJhbnNpdGlvbjogNDAwbXMgYWxsIGVhc2UtaW4tb3V0O1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICB0b3A6IDRweDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGJvdHRvbTogNHB4O1xuICB9XG59XG5cbi5tZW51LXRvZ2dsZTpiZWZvcmUsXG4ubWVudS10b2dnbGU6YWZ0ZXIsXG4ubWVudS10b2dnbGVfX2xpbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcblxuICB0cmFuc2l0aW9uOiA0MDBtcyBhbGwgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQ6ICMxZDFkMWI7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLm1lbnUtdG9nZ2xlX19saW5lIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgdG9wOiA1MCU7XG59XG5cbi5tZW51LXRvZ2dsZV9fdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA2NHB4O1xuICBtYXJnaW4tdG9wOiAtMC40NzVlbTtcbiAgb3BhY2l0eTogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgdHJhbnNpdGlvbjogNDAwbXMgYWxsIGVhc2UtaW4tb3V0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubWVudS10b2dnbGVfX3RleHQtLTEge1xuICByaWdodDogNDRweDtcbiAgb3BhY2l0eTogMTtcblxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4ubWVudS10b2dnbGUtLXRvZ2dsZWQge1xuICBtYXJnaW4tbGVmdDogODBweDtcblxuICAmOmJlZm9yZSB7XG4gICAgdG9wOiAxNnB4O1xuICAgIHRyYW5zZm9ybTogcm90YXRlWig0NWRlZyk7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBib3R0b206IDE2cHg7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC00NWRlZyk7XG4gIH1cblxuICAubWVudS10b2dnbGVfX2xpbmUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIH1cblxuICAubWVudS10b2dnbGVfX3RleHQtLTEge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcmlnaHQ6IDY0cHg7XG4gIH1cblxuICAubWVudS10b2dnbGVfX3RleHQtLTIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcmlnaHQ6IDM2cHg7XG4gIH1cbn1cblxuLmUtYmFua2luZy1saW5rIHtcbiAgQGV4dGVuZCAlbmF2aWdhdGlvbi1wcmltYXJ5LWxpbms7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogLSRzcGFjaW5nLXVuaXQtZGVmYXVsdCAvIDI7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0wLjJlbTtcbiAgfVxufVxuXG4uc2ltcGxlLW1lbnUge1xuICAmLFxuICAmIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJiA+IGxpID4gYSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuXG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCAwO1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDIwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGJyYW5kLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4ucXVpY2stc2VhcmNoLW9wZW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAyZW07XG4gIGhlaWdodDogM2VtO1xuICBtYXJnaW4tbGVmdDogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuXG4gIHRleHQtaW5kZW50OiAtMjAwMDBweDtcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL3NlYXJjaC5zdmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEuM2VtIDEuM2VtO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuXG4gIG9wYWNpdHk6IDAuNjtcblxuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICY6aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ubmF2aWdhdGlvbi1jb250YWluZXItLWV4cGFuZGVkIHtcbiAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xufVxuXG5cblxuXG4vL1xuLy8gRFJPUERPV04gTUVOVVxuLy9cblxuLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMCAxZW0gMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLy8gbW9iaWxlXG4gIGEge1xuICAgQGV4dGVuZCAlbmF2aWdhdGlvbi1xdWF0ZXJuYXJ5LWxpbms7XG5cbiAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gZGVza3RvcFxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBAaW5jbHVkZSBwb3BvdmVyKCk7XG5cbiAgICBtYXgtd2lkdGg6IDkwdnc7XG4gICAgcGFkZGluZzogMC41ZW0gMDtcbiAgICB0b3A6IDIuOGVtO1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxufVxuXG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNRVRBLU5BVklHQVRJT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubWV0YS1uYXZpZ2F0aW9uLXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTAxO1xuXG4gIC5tZW51LS12aXNpYmxlICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjMjU5NWQ5O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiAtMmVtO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICByaWdodDogJGNvbnRhaW5lci1ndXR0ZXItd2lkdGg7XG4gICAgbGVmdDogYXV0bztcbiAgfVxufVxuXG4ubWV0YS1uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAubWVudS0tdmlzaWJsZSAmIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG5cbiAgLm1ldGEtbWF2aWdhdGlvbl9fYmxvY2sge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxleDogMCAwIGF1dG87XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgfVxuICB9XG5cbiAgICAubWV0YS1uYXZpZ2F0aW9uX19tZW51IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG5cblxuLm1ldGEtbmF2aWdhdGlvbl9fbGluayxcbiVtZXRhLW5hdmlnYXRpb25fX2xpbmsge1xuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC42ZW0gMCAwLjU2ZW07XG5cbiAgY29sb3I6ICRhbHQtY29sb3ItZGFyaztcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgdHJhbnNpdGlvbjogY29sb3IgMjAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcGFkZGluZzogMC4xZW07XG4gICAgZm9udC1zaXplOiAkbWF4LWZvbnQtc2l6ZS1zbWFsbDtcbiAgfVxuXG4gIC5pcy1hY3RpdmUgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5tZXRhLW5hdmlnYXRpb25fX2xpbmstYmFjay10by1tZW51LFxuJW1ldGEtbmF2aWdhdGlvbl9fbGluay1iYWNrLXRvLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcblxuICAucXVpY2stc2VhcmNoLS1mb2N1c2VkICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogMC43NXMgb3BhY2l0eSBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTYycHgpO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ubWV0YS1uYXZpZ2F0aW9uX19saW5rLWxlLWNsdWIsXG4lbWV0YS1uYXZpZ2F0aW9uX19saW5rLWxlLWNsdWIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAxcyBvcGFjaXR5IGVhc2UtaW4tb3V0O1xuXG4gIC5xdWljay1zZWFyY2gtLWZvY3VzZWQgJiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAwLjc1cyBvcGFjaXR5IGVhc2UtaW4tb3V0O1xuICB9XG59XG5cbi5tZXRhLW1hdmlnYXRpb25fX2Jsb2NrLS1wb3J0YWwge1xuXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICBiYWNrZ3JvdW5kOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkYnJhbmQtY29sb3I7XG4gICAgYm94LXNoYWRvdzogMCAwLjNyZW0gMC4zcmVtICRzaGFkb3ctY29sb3I7XG5cbiAgICA+IHVsIGxpIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgfVxuICB9XG59XG5cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgUkVDT01NRU5EQVRJT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucmVjb21tZW5kYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDMwMG1zIGVhc2UtaW4tb3V0LFxuICB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbi1vdXQsXG4gIGJveC1zaGFkb3cgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgYm94LXNoYWRvdzogMCAwLjNyZW0gMC4zcmVtIHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjNyZW0pO1xuICAgIGJveC1zaGFkb3c6IDAgMC4zcmVtIDAuM3JlbSAkc2hhZG93LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzBtcyBlYXNlLW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMTVyZW0pO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGZvY3VzLW91dGxpbmVkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4gIC5yZWNvbW1lbmRhdGlvbl9faW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAucmVjb21tZW5kYXRpb25fX3RpdGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1zbWFsbDtcblxuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci10cmFuc3BhcmVudDtcblxuICAgIGZvbnQtc2l6ZTogJG1pbi1mb250LXNpemUteHM7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICBmb250LXNpemU6ICRtaW4tZm9udC1zaXplLXhzO1xuICAgIH1cblxuICB9XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTE9HTyAvIEJSQU5EXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmxvZ28ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuOWVtIDAgMC40ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxvZ29fX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMi4zZW07XG4gIHdpZHRoOiA4ZW07XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nb3MvbG9nby0taW5pdGlhbHMtRlIuc3ZnJyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICBib3JkZXI6IG5vbmU7IC8vIElFMTEuLi5cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICBoZWlnaHQ6IDIuNWVtO1xuICAgIHdpZHRoOiAxMmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2xvZ29zL2xvZ28tLWZ1bGwtRlIuc3ZnJyk7XG4gIH1cblxuICBbbGFuZz0nZGUnXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9sb2dvcy9sb2dvLS1pbml0aWFscy1ERS5zdmcnKTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nb3MvbG9nby0tZnVsbC1ERS5zdmcnKTtcbiAgICB9XG4gIH1cbn1cblxuICAubG9nb19fbmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyLjRyZW07XG4gICAgbGVmdDogMi4zNXJlbTtcblxuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xuICB9XG5cblxuLmxvZ28tLXBvcnRhbCB7XG4gIHBhZGRpbmc6IDBlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuXG4gIC5sb2dvX19pY29uIHtcbiAgICBoZWlnaHQ6IDMuNTVlbTtcbiAgICB3aWR0aDogOGVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2xvZ29zL2xvZ28tLXBvcnRhbC1GUi5zdmcnKTtcblxuICAgIFtsYW5nPSdkZSddICYge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nb3MvbG9nby0tcG9ydGFsLURFLnN2ZycpO1xuICAgIH1cbiAgfVxufVxuXG4ubG9nby0tcGljdG8ge1xuICBwYWRkaW5nOiAwZW07XG4gIG1hcmdpbjogJHNwYWNpbmctdW5pdC10aW55ICRzcGFjaW5nLXVuaXQtc21hbGwgMDtcblxuICAubG9nb19faWNvbiB7XG4gICAgaGVpZ2h0OiAxLjdlbTtcbiAgICB3aWR0aDogMS43ZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nb3MvbG9nby0tcGljdG8uc3ZnJyk7XG4gIH1cbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFFVSUNLIFNFQVJDSFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5xdWljay1zZWFyY2gtbW9iaWxlIHtcbiAgcGFkZGluZy10b3A6IDFlbTtcblxuICBvcGFjaXR5OiAwO1xuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSBlYXNlLWluLW91dCAyMDBtcyAxMG1zLCBvcGFjaXR5IGVhc2UtaW4tb3V0IDIwMG1zIDEwbXM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0ZW0pO1xuXG4gIC5tZW51LS12aXNpYmxlICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgMzAwbXMgMTAwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgMzAwbXMgMTAwbXM7XG4gIH1cblxuICAucXVpY2stc2VhcmNoLWJsb2NrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAucXVpY2stc2VhcmNoLWJsb2NrIC5ncmlkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMjAwMHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbWFyZ2luLXRvcDogLSRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuXG4gICAgLmdyaWRfX2l0ZW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgcGFkZGluZy10b3A6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgICB9XG5cbiAgICAucXVpY2stc2VhcmNoLS1mb2N1c2VkICYge1xuICAgICAgdG9wOiAwO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweCk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQgNDAwbXMsIG9wYWNpdHkgZWFzZS1pbi1vdXQgNDAwbXM7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gICAgICAuYm94IHtcbiAgICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBHRU5FUklDIE1PREFMXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG5cbi5nZW5lcmljLW1vZGFsIHtcbiAgei1pbmRleDogOTAwO1xuICBwYWRkaW5nLXRvcDogJGNvbnRhaW5lci1ndXR0ZXItd2lkdGg7XG4gIGRpc3BsYXk6IG5vbmU7XG5cblxuICAubW9kYWwtaXMtaW4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAubG9nbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8vIGV4YW1wbGUgZnJvbSBzaGtiOlxuXG4ubW9kYWxfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tb2RhbF9faXRlbS0tYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1vZGFsLWlzLWluIGJvZHkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tb2RhbC1pcy1pbiAuZ2VuZXJpYy1tb2RhbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xufVxuXG4vLyAubW9kYWwtaXMtaW4gLmFkbWluLW1lbnUgLmdlbmVyaWMtbW9kYWwge1xuLy8gICAgIHRvcDogMjlweDtcbi8vIH1cblxuLy8gLm1vZGFsLWlzLWluIC5oZWFkZXIgLmhlYWRlcl9fbG9nbyBpbWcge1xuLy8gICAgIG9wYWNpdHk6IDA7XG4vLyB9XG5cbi8vIC5tb2RhbC1pcy1pbiAuZ2VuZXJpYy1vdmVybGF5IHtcbi8vICAgICBkaXNwbGF5OiBibG9jaztcbi8vICAgICBwb3NpdGlvbjogZml4ZWQ7XG4vLyAgICAgdG9wOiAwO1xuLy8gICAgIGxlZnQ6IDA7XG4vLyAgICAgYm90dG9tOiAwO1xuLy8gICAgIHJpZ2h0OiAwO1xuLy8gfVxuXG4vLyAubW9kYWxfX2JvZHkge1xuLy8gICAgIHBhZGRpbmctYm90dG9tOiAyNnB4O1xuLy8gICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuLy8gfVxuXG4vLyAubW9kYWxfX2hlYWRlciB7XG4vLyAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gfVxuXG4vLyAubW9kYWxfX2hlYWRlcjpiZWZvcmUsLm1vZGFsX19oZWFkZXI6YWZ0ZXIge1xuLy8gICAgIGNvbnRlbnQ6ICcgJztcbi8vICAgICBkaXNwbGF5OiB0YWJsZTtcbi8vIH1cblxuLy8gLm1vZGFsX19oZWFkZXI6YWZ0ZXIge1xuLy8gICAgIGNsZWFyOiBib3RoO1xuLy8gfVxuXG4vLyAubW9kYWxfX2hlYWRlciAuaGVhZGVyX19sb2dvIHtcbi8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyB9XG5cbi8vIC5tb2RhbF9faGVhZGVyIC5oZWFkZXJfX2xvZ28gaW1nIHtcbi8vICAgICBtYXJnaW46IDA7XG4vLyB9XG5cbi5tb2RhbF9fY2xvc2UtLXgge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMTNweCAwIDA7XG4gICAgbWFyZ2luOiAxcmVtIDAgMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgIC5tb2RhbC1pcy1pbiAmIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtM2VtO1xuICAgIH1cbn1cblxuLm1vZGFsX19jbG9zZS0teCAuY2xvc2UteCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMTVlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjA1ZW07XG59XG5cbi8vIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuLy8gICAgIC5tb2RhbF9fdGl0bGUgaDEge1xuLy8gICAgICAgICBkaXNwbGF5Om5vbmU7XG4vLyAgICAgfVxuLy8gfVxuXG4vLyBAbWVkaWEgKG1pbi13aWR0aDogMzUwcHgpIHtcbi8vICAgICAuaGVhZGVyX19sb2dvIHtcbi8vICAgICAgICAgZmxvYXQ6bGVmdDtcbi8vICAgICB9XG5cbi8vICAgICAubW9kYWxfX2Nsb3NlLS14IHtcbi8vICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICAgICBib3R0b206IC0wLjE1ZW07XG4vLyAgICAgICAgIHJpZ2h0OiAxNXB4O1xuLy8gICAgIH1cbi8vIH1cblxuLy8gLm1vZGFsX190aXRsZSB7XG4vLyAgICAgbWFyZ2luOiAyNnB4IDAgMDtcbi8vICAgICBtYXJnaW46IDJyZW0gMCAwO1xuLy8gfVxuXG4vLyAjbWFwLWNvbnRhaW5lciB7XG4vLyAgICAgZGlzcGxheTogbm9uZTtcbi8vIH1cblxuLy8gLmdlbmVyaWMtb3ZlcmxheSB7XG4vLyAgICAgZGlzcGxheTogbm9uZTtcbi8vICAgICBvcGFjaXR5OiAwO1xuLy8gICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC42cyBjdWJpYy1iZXppZXIoMC4xNjUsMC44NCwwLjQ0LDEpO1xuLy8gICAgIC1tb3otdHJhbnNpdGlvbjogMC42cyBjdWJpYy1iZXppZXIoMC4xNjUsMC44NCwwLjQ0LDEpO1xuLy8gICAgIC1tcy10cmFuc2l0aW9uOiAwLjZzIGN1YmljLWJlemllcigwLjE2NSwwLjg0LDAuNDQsMSk7XG4vLyAgICAgLW8tdHJhbnNpdGlvbjogMC42cyBjdWJpYy1iZXppZXIoMC4xNjUsMC44NCwwLjQ0LDEpO1xuLy8gICAgIHRyYW5zaXRpb246IDAuNnMgY3ViaWMtYmV6aWVyKDAuMTY1LDAuODQsMC40NCwxKTtcbi8vIH1cblxuLy8gLm1vZGFsLWlzLWluIC5nZW5lcmljLW92ZXJsYXkge1xuLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8gfVxuXG4vLyAubW9kYWwtcmV2ZWFsIC5nZW5lcmljLW92ZXJsYXkge1xuLy8gICAgIG9wYWNpdHk6IDE7XG4vLyB9XG5cbi8vIC5nZW5lcmljLW1vZGFsIHtcbi8vICAgICBkaXNwbGF5OiBub25lO1xuLy8gfVxuXG4vLyAuZ2VuZXJpYy1tb2RhbCAubW9kYWxfX3RpdGxlLC5nZW5lcmljLW1vZGFsIC5mb3JtLWl0ZW0tc2VhcmNoLWZpZWxkLC5nZW5lcmljLW1vZGFsIC5xdWljay1zZWFyY2gtcmVzdWx0cywuZ2VuZXJpYy1tb2RhbCAubW9kYWxfX2Nsb3NlLS14LC5nZW5lcmljLW1vZGFsICNtYXAtLWFnZW5jeSB7XG4vLyAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjZzIGN1YmljLWJlemllcigwLjE2NSwwLjg0LDAuNDQsMSk7XG4vLyAgICAgLW1vei10cmFuc2l0aW9uOiAwLjZzIGN1YmljLWJlemllcigwLjE2NSwwLjg0LDAuNDQsMSk7XG4vLyAgICAgLW1zLXRyYW5zaXRpb246IDAuNnMgY3ViaWMtYmV6aWVyKDAuMTY1LDAuODQsMC40NCwxKTtcbi8vICAgICAtby10cmFuc2l0aW9uOiAwLjZzIGN1YmljLWJlemllcigwLjE2NSwwLjg0LDAuNDQsMSk7XG4vLyAgICAgdHJhbnNpdGlvbjogMC42cyBjdWJpYy1iZXppZXIoMC4xNjUsMC44NCwwLjQ0LDEpO1xuLy8gICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sb3BhY2l0eTtcbi8vIH1cblxuLy8gLmdlbmVyaWMtbW9kYWwgLm1vZGFsX190aXRsZSwuZ2VuZXJpYy1tb2RhbCAuZm9ybS1pdGVtLXNlYXJjaC1maWVsZCwuZ2VuZXJpYy1tb2RhbCAucXVpY2stc2VhcmNoLXJlc3VsdHMsLmdlbmVyaWMtbW9kYWwgI21hcC0tYWdlbmN5IHtcbi8vICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cmVtKTtcbi8vICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cmVtKTtcbi8vICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVyZW0pO1xuLy8gICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cmVtKTtcbi8vICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXJlbSk7XG4vLyAgICAgb3BhY2l0eTogMDtcbi8vIH1cblxuLy8gLm1vZGFsLXJldmVhbCAuZ2VuZXJpYy1tb2RhbCAubW9kYWxfX3RpdGxlLC5tb2RhbC1yZXZlYWwgLmdlbmVyaWMtbW9kYWwgLmZvcm0taXRlbS1zZWFyY2gtZmllbGQsLm1vZGFsLXJldmVhbCAuZ2VuZXJpYy1tb2RhbCAucXVpY2stc2VhcmNoLXJlc3VsdHMsLm1vZGFsLXJldmVhbCAuZ2VuZXJpYy1tb2RhbCAjbWFwLS1hZ2VuY3kge1xuLy8gICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuLy8gICAgIC1tb3otdHJhbnNmb3JtOiBub25lO1xuLy8gICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4vLyAgICAgLW8tdHJhbnNmb3JtOiBub25lO1xuLy8gICAgIHRyYW5zZm9ybTogbm9uZTtcbi8vICAgICBvcGFjaXR5OiAxO1xuLy8gfVxuXG4vLyAuZ2VuZXJpYy1tb2RhbCAubW9kYWxfX2Nsb3NlLS14IHtcbi8vICAgICBvcGFjaXR5OiAwO1xuLy8gfVxuXG4vLyAubW9kYWwtcmV2ZWFsIC5nZW5lcmljLW1vZGFsIC5tb2RhbF9fY2xvc2UtLXgge1xuLy8gICAgIG9wYWNpdHk6IDE7XG4vLyB9XG5cbi8vIC5tb2RhbC1pcy1pbiAuZ2VuZXJpYy1tb2RhbCB7XG4vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLyB9XG5cbi8vIC5tb2RhbC1yZXZlYWwgLmdlbmVyaWMtbW9kYWwgLm1vZGFsX190aXRsZSB7XG4vLyAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuLy8gICAgIC1tb3otdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbi8vICAgICAtbXMtdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbi8vICAgICAtby10cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuLy8gICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4vLyB9XG5cbi8vIC5tb2RhbC1yZXZlYWwgLmdlbmVyaWMtbW9kYWwgLmZvcm0taXRlbS1zZWFyY2gtZmllbGQge1xuLy8gICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMC4ycztcbi8vICAgICAtbW96LXRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4vLyAgICAgLW1zLXRyYW5zaXRpb24tZGVsYXk6IDAuMnM7XG4vLyAgICAgLW8tdHJhbnNpdGlvbi1kZWxheTogMC4ycztcbi8vICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjJzO1xuLy8gfVxuXG4vLyAubW9kYWwtcmV2ZWFsIC5nZW5lcmljLW1vZGFsIC5xdWljay1zZWFyY2gtcmVzdWx0cyB7XG4vLyAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xuLy8gICAgIC1tb3otdHJhbnNpdGlvbi1kZWxheTogMC4zcztcbi8vICAgICAtbXMtdHJhbnNpdGlvbi1kZWxheTogMC4zcztcbi8vICAgICAtby10cmFuc2l0aW9uLWRlbGF5OiAwLjNzO1xuLy8gICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG4vLyB9IiwiXG4jbW9ydGdhZ2UtZm9ybV9fcmVzdWx0cy13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDMwMG1zIGVhc2UtaW47XG5cbiAgJi5jb2xsYXBzZWQge1xuICAgIGhlaWdodDogMDtcbiAgfVxufVxuXG4ubW9ydGdhZ2Utb3ZlcmxheSB7XG4gIHRyYW5zaXRpb246IDAuM3MgYWxsIGVhc2UtaW4tb3V0O1xufVxuXG4uaW5wdXQtd3JhcHBlci0tYnVtcCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbn1cblxuXG4vKlxuICAgIG92ZXJsYXlcbiovXG5cbi5tb3J0Z2FnZS1vdmVybGF5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuXG4gIGlucHV0IHtcbiAgICBwYWRkaW5nLXRvcDogMTEuNXB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDExLjVweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG5cbiAgJi5tb3J0Z2FnZS1vdmVybGF5X193aXRoLWN1cnJlbmN5IGlucHV0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDYwcHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4ubW9ydGdhZ2Utb3ZlcmxheV9fY3VycmVuY3kge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDM7XG4gIHRvcDogMXB4O1xuICBib3R0b206IDFweDtcbiAgbGVmdDogMXB4O1xuICB3aWR0aDogNTBweDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIHBhZGRpbmctdG9wOiAxOHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIGNvbG9yOiAkYWx0LWNvbG9yO1xufVxuXG4ubW9ydGdhZ2Utb3ZlcmxheV9faW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIHRvcDogMXB4O1xuICByaWdodDogMXB4O1xuICBib3R0b206IDFweDtcbiAgbGVmdDogMXB4O1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBwYWRkaW5nLXRvcDogMTEuNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTEuNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFzZS1ia2ctY29sb3I7XG5cbiAgLm1vcnRnYWdlLW92ZXJsYXlfX3dpdGgtY3VycmVuY3kgJiB7XG4gICAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTUVTU0FHRVNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi5tZXNzYWdlcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0NDQ0NDQztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDRyZW07XG4gIG1hcmdpbi10b3A6ICRzcGFjaW5nLXVuaXQtaHVnZTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBwYWRkaW5nOiAxZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgLm1lc3NhZ2VzX19saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMC41ZW0gMWVtO1xuICB9XG5cbiAgLm1lc3NhZ2VzX19pdGVtIHtcbiAgICBsaXN0LXN0eWxlOiBzcXVhcmU7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIGxlZnQ6IC0zcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDAuNWVtO1xuICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICB9XG59XG5cbi5tZXNzYWdlcy0tc3VjY2VzcyxcbiVtZXNzYWdlcy0tc3VjY2VzcyB7XG4gIGNvbG9yOiBkYXJrZW4oJGNvbG9yLXN1Y2Nlc3MsIDEwJSk7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKck1wiO1xuICAgIGNvbG9yOiAkYmFzZS1ia2ctY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXN1Y2Nlc3M7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgfVxufVxuXG4ubWVzc2FnZXMtLWluZm8sXG4lbWVzc2FnZXMtLWluZm8ge1xuICBjb2xvcjogJGFsdC1jb2xvci1kYXJrO1xuICBib3JkZXItY29sb3I6ICRicmFuZC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiaVwiO1xuICAgIGNvbG9yOiAkYmFzZS1ia2ctY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yO1xuICB9XG59XG5cbi5tZXNzYWdlcy0td2FybmluZyxcbiVtZXNzYWdlcy0td2FybmluZyB7XG4gIGNvbG9yOiBkYXJrZW4oJGNvbG9yLXdhcm5pbmcsIDEwJSk7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yLXdhcm5pbmc7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIiFcIjtcbiAgICBjb2xvcjogJGJhc2UtYmtnLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13YXJuaW5nO1xuICB9XG59XG5cbi5tZXNzYWdlcy0tZXJyb3IsXG4lbWVzc2FnZXMtLWVycm9yIHtcbiAgY29sb3I6ICRjb2xvci1kYW5nZXI7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yLWRhbmdlcjtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiw5dcIjtcbiAgICBjb2xvcjogJGJhc2UtYmtnLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1kYW5nZXI7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBDT1VOVERPV05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi4jeyRuYW1lc3BhY2V9Y291bnRkb3duLFxuJWNvdW50ZG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMS41ZW07XG59XG5cbi5jb3VudGRvd25fX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG5cbiAgbWFyZ2luLXJpZ2h0OiAwLjJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDAuMDVlbTtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG5cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEFDQ09SRElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLiN7JG5hbWVzcGFjZX1hY2NvcmRpb24sXG4lYWNjb3JkaW9uIHtcblxufVxuXG5AbWVkaWEobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAuI3skbmFtZXNwYWNlfWFjY29yZGlvbi0tZm9ybSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfWFjY29yZGlvbl9faXRlbSB7XG4gIG1hcmdpbjogMCAwICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRhbHQtY29sb3ItbGlnaHQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyMDBtcyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDAuM3JlbSAwLjNyZW0gJHNoYWRvdy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gIH1cblxuICAmLm5vLXJlc3VsdHMge1xuICAgIGZvbnQtc2l6ZTogJG1pbi1mb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1hY2NvcmRpb25fX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXNtYWxsICRzcGFjaW5nLXVuaXQtbGFyZ2UgJHNwYWNpbmctdW5pdC1zbWFsbCAkc3BhY2luZy11bml0LXNtYWxsO1xuXG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0LXNtYWxsO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcGFkZGluZzogMWVtO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAxLjJlbTtcbiAgICBoZWlnaHQ6IDEuMmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2Fycm93LWRvd24uc3ZnJyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICB0b3A6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG5cbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHJpZ2h0OiAxZW07XG4gICAgICB0b3A6IDFlbTtcbiAgICB9XG4gIH1cblxuXG4gID4gc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcblxuICAgIGhlaWdodDogMS4yZW07XG4gICAgd2lkdGg6IDEuMmVtO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTAuMDVlbTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmLmV4cGFuZGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgfVxuICB9XG5cbn1cblxuLiN7JG5hbWVzcGFjZX1hY2NvcmRpb25fX2hlYWRlci10ZXh0IHtcbiAgbWF4LXdpZHRoOiA5MiU7XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfWFjY29yZGlvbl9fcGFuZWwge1xuICBwYWRkaW5nOiAwICRzcGFjaW5nLXVuaXQtc21hbGwgJHNwYWNpbmctdW5pdC1zbWFsbCAkc3BhY2luZy11bml0LXNtYWxsO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG5cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuOWVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuOWVtO1xuICB9XG5cbiAgLmV4cGFuZGVkICsgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgfVxuXG4gIHVsIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICB9XG59XG5cblxuLiN7JG5hbWVzcGFjZX1hY2NvcmRpb24tLW5vLWJvcmRlcixcbiVhY2NvcmRpb24tLW5vLWJvcmRlciB7XG5cbiAgLmFjY29yZGlvbl9faXRlbSB7XG4gICAgYm9yZGVyOiBub25lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLmFjY29yZGlvbl9faGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIH1cblxuICAuYWNjb3JkaW9uX19wYW5lbCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5hY2NvcmRpb25fX2hlYWRlcjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogLTFlbTtcbiAgICB0b3A6IDA7XG4gIH1cblxufVxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVE9PTFRJUFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4udG9vbHRpcCB7XG4gIEBleHRlbmQgJXRleHQtc21hbGw7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA3MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDA7XG59XG4udG9vbHRpcC5pbiB7XG4gIG9wYWNpdHk6IDAuOTtcbn1cbi50b29sdGlwLnRvcCB7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHBhZGRpbmc6IDVweCAwO1xufVxuLnRvb2x0aXAucmlnaHQge1xuICBtYXJnaW4tbGVmdDogM3B4O1xuICBwYWRkaW5nOiAwIDVweDtcbn1cbi50b29sdGlwLmJvdHRvbSB7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgcGFkZGluZzogNXB4IDA7XG59XG4udG9vbHRpcC5sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gIHBhZGRpbmc6IDAgNXB4O1xufVxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZztcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJrZy1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cztcbn1cbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuLnRvb2x0aXAudG9wIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweCA1cHggMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYmtnLWNvbG9yO1xufVxuLnRvb2x0aXAudG9wLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1ia2ctY29sb3I7XG59XG4udG9vbHRpcC50b3AtcmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiA1cHggNXB4IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWJrZy1jb2xvcjtcbn1cbi50b29sdGlwLnJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IC01cHg7XG4gIGJvcmRlci13aWR0aDogNXB4IDVweCA1cHggMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1ia2ctY29sb3I7XG59XG4udG9vbHRpcC5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDVweCAwIDVweCA1cHg7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAkdG9vbHRpcC1ia2ctY29sb3I7XG59XG4udG9vbHRpcC5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gIGJvcmRlci13aWR0aDogMCA1cHggNXB4O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1ia2ctY29sb3I7XG59XG4udG9vbHRpcC5ib3R0b20tbGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTVweDtcbiAgYm9yZGVyLXdpZHRoOiAwIDVweCA1cHg7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWJrZy1jb2xvcjtcbn1cbi50b29sdGlwLmJvdHRvbS1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gIHRvcDogMDtcbiAgbGVmdDogNXB4O1xuICBtYXJnaW4tdG9wOiAtNXB4O1xuICBib3JkZXItd2lkdGg6IDAgNXB4IDVweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYmtnLWNvbG9yO1xufVxuXG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDVweCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBsaW5lYXIsIHRyYW5zZm9ybSAuMTVzO1xuXG4gICYuaW4ge1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAmLnRvcCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuICB9XG59XG5cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFBPUE9WRVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4lcG9wb3Zlcixcbi5wb3BvdmVyIHtcbiAgQGluY2x1ZGUgcG9wb3ZlcigpO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucG9wb3Zlci50b3Age1xuICBtYXJnaW4tdG9wOiAoLSRwb3BvdmVyLWFycm93LXNpemUpKygtNCk7XG59XG4ucG9wb3Zlci5yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy1zaXplICs0O1xufVxuLnBvcG92ZXIuYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctc2l6ZSArNDtcbn1cbi5wb3BvdmVyLmxlZnQge1xuICBtYXJnaW4tbGVmdDogKC0kcG9wb3Zlci1hcnJvdy1zaXplKSsoLTQpO1xufVxuLnBvcG92ZXItdGl0bGUge1xuICBAZXh0ZW5kICV0ZXh0LXNtYWxsO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICRwb3BvdmVyLXRpdGxlLWNvbG9yO1xufVxuLnBvcG92ZXItY29udGVudCB7XG4gIEBleHRlbmQgJXRleHQtc21hbGw7XG4gIGNvbG9yOiAkcG9wb3Zlci1jb2xvcjtcbn1cblxuXG4ucG9wb3ZlciA+IC5hcnJvdyxcbi5wb3BvdmVyID4gLmFycm93OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbn1cbi5wb3BvdmVyID4gLmFycm93IHtcbiAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1zaXplICsxO1xufVxuLnBvcG92ZXIgPiAuYXJyb3c6YWZ0ZXIge1xuICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LXNpemU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4ucG9wb3Zlci50b3AgPiAuYXJyb3cge1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAoLSRwb3BvdmVyLWFycm93LXNpemUpKygtMSk7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWJvcmRlci1jb2xvcjtcbiAgYm90dG9tOiAoLSRwb3BvdmVyLWFycm93LXNpemUpKygtMSk7XG59XG4ucG9wb3Zlci50b3AgPiAuYXJyb3c6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgYm90dG9tOiAxcHg7XG4gIG1hcmdpbi1sZWZ0OiAoLSRwb3BvdmVyLWFycm93LXNpemUpO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1ia2ctY29sb3I7XG59XG4ucG9wb3Zlci5yaWdodCA+IC5hcnJvdyB7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAoLSRwb3BvdmVyLWFycm93LXNpemUpKygtMSk7XG4gIG1hcmdpbi10b3A6ICgtJHBvcG92ZXItYXJyb3ctc2l6ZSkrKC0xKTtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xufVxuLnBvcG92ZXIucmlnaHQgPiAuYXJyb3c6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgbGVmdDogMXB4O1xuICBib3R0b206ICgtJHBvcG92ZXItYXJyb3ctc2l6ZSk7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWJrZy1jb2xvcjtcbn1cbi5wb3BvdmVyLmJvdHRvbSA+IC5hcnJvdyB7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6ICgtJHBvcG92ZXItYXJyb3ctc2l6ZSkrKC0xKTtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICB0b3A6ICgtJHBvcG92ZXItYXJyb3ctc2l6ZSkrKC0xKTtcbn1cbi5wb3BvdmVyLmJvdHRvbSA+IC5hcnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICB0b3A6IDFweDtcbiAgbWFyZ2luLWxlZnQ6ICgtJHBvcG92ZXItYXJyb3ctc2l6ZSk7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWJrZy1jb2xvcjtcbn1cbi5wb3BvdmVyLmxlZnQgPiAuYXJyb3cge1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6ICgtJHBvcG92ZXItYXJyb3ctc2l6ZSkrKC0xKTtcbiAgbWFyZ2luLXRvcDogKC0kcG9wb3Zlci1hcnJvdy1zaXplKSsoLTEpO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1ib3JkZXItY29sb3I7XG59XG4ucG9wb3Zlci5sZWZ0ID4gLmFycm93OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHJpZ2h0OiAxcHg7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWJrZy1jb2xvcjtcbiAgYm90dG9tOiAoLSRwb3BvdmVyLWFycm93LXNpemUpO1xufVxuXG4ucG9wb3Zlci0tZS1iYW5raW5nIHtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDM1MHB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDMuNWVtO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcblxuICAucG9wb3Zlci5ib3R0b20gPiAuYXJyb3cge1xuICAgIGxlZnQ6IDQ1JTtcbiAgfVxuXG4gICYuYm90dG9tID4gLmFycm93OmFmdGVye1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlcjtcbiAgfVxuXG4gIC5vcGVuaW5nLXRpbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctaWNvbi13aWR0aDtcbiAgICBjb2xvcjogJGFsdC1jb2xvci1saWdodDtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICB9XG5cbiAgLnNpbXBsZS1tZW51IHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLWljb24td2lkdGg7XG4gIH1cblxuICAucmVnaXN0ZXItbGluayB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy1pY29uLXdpZHRoICsgMC4yZW07XG4gIH1cbn1cblxuLnBvcG92ZXItLWUtYmFua2luZ19fbWVudSB7XG4gIGgyIHtcbiAgICBAZXh0ZW5kICVuYXZpZ2F0aW9uLXRlcnRpYXJ5LWxpbms7XG4gICAgbWFyZ2luOiAwO1xuICAgIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGFsdC1jb2xvci1kYXJrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIHVsIHtcbiAgICBhIHtcbiAgICAgIEBleHRlbmQgJW5hdmlnYXRpb24tcXVhdGVybmFyeS1saW5rO1xuXG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi5wb3BvdmVyLS1teWJjZiB7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAzNTBweDtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAyZW0pO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiA5ZW07XG4gIHJpZ2h0OiAxZW07XG4gIGxlZnQ6IGF1dG87XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgdG9wOiA2LjllbTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG59XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBXSVpBUkRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi53aXphcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy11bml0LXNtYWxsO1xuXG4gIGJvZHkgJiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4gIC5zdGVwIHtcbiAgICBmbGV4LWdyb3c6IDE7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAZm9yICRpdGVtIGZyb20gMSB0aHJvdWdoIDEwe1xuICAgICAgJjpudGgtY2hpbGQoI3skaXRlbX0pe1xuICAgICAgICB6LWluZGV4OiBjYWxjKDEwMC0jeyRpdGVtfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcblxuXG4gICAgLnN0ZXBfX2NvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZzogNXB4IDBweCA1cHggMzVweDtcbiAgICAgIGhlaWdodDogJHdpemFyZC1oZWlnaHQ7XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHQtMjtcblxuICAgICAgY29sb3I6JGFsdC1jb2xvci1saWdodGVzdDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVye1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogLSR3aXphcmQtaGVpZ2h0LzU7XG5cbiAgICAgICAgYm9yZGVyLXRvcDogJHdpemFyZC1oZWlnaHQvMiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJHdpemFyZC1oZWlnaHQvMiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICR3aXphcmQtaGVpZ2h0LzUgc29saWQgJGFsdC1jb2xvci1saWdodGVzdDtcbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZXtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMHB4O1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICByaWdodDogLSgkd2l6YXJkLWhlaWdodC81LTEpO1xuXG4gICAgICAgIGJvcmRlci10b3A6ICR3aXphcmQtaGVpZ2h0LzIgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICR3aXphcmQtaGVpZ2h0LzIgIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItbGVmdDogJHdpemFyZC1oZWlnaHQvNSBzb2xpZCAkYWx0LWNvbG9yLWxpZ2h0LTI7XG4gICAgICB9XG5cblxuICAgIH1cblxuICAgIC5zdGVwX19udW1iZXJ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuM2VtO1xuICAgIH1cblxuICAgIC5zdGVwX19sYWJlbHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQgLnN0ZXBfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCAuc3RlcF9fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxZW07XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVye1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgYS5zdGVwX19jb250ZW50OmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gIH1cblxuXG4gIC5zdGVwLS12YWxpZGF0ZWQge1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuXG4gICAgJiAuc3RlcF9fY29udGVudCB7XG4gICAgICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvci1kYXJrO1xuICAgIH1cbiAgICAmIC5zdGVwX19jb250ZW50OjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRicmFuZC1jb2xvci1kYXJrO1xuICAgIH1cbiAgICAmIC5zdGVwX19jaGVja21hcmsge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEuM2VtO1xuICAgICAgaGVpZ2h0OiAxLjNlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcblxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvaWNvbnMvY2hlY2stbmVnYXRpdmUuc3ZnJyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbiAgfVxuXG5cblxuXG4gIC5zdGVwLS1jbGlja2FibGUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG5cbiAgICAgICYgLnN0ZXBfX2NvbnRlbnQge1xuICAgICAgICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yO1xuICAgICAgfVxuICAgICAgJiAuc3RlcF9fY29udGVudDo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3RlcC0tY3VycmVudCxcbiAgLnN0ZXAtLWN1cnJlbnQgLnN0ZXBfX2NvbnRlbnR7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yO1xuICAgIGN1cnNvcjogbm9ybWFsO1xuXG4gICAgJiAuc3RlcF9fY29udGVudDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkYnJhbmQtY29sb3I7XG4gICAgfVxuICB9XG5cblxuLndpemFyZC0tc21hbGwge1xuICAuc3RlcF9fY29udGVudCB7XG5cbiAgICBoZWlnaHQ6ICR3aXphcmQtc21hbGwtaGVpZ2h0O1xuXG4gICAgJjo6YWZ0ZXJ7XG4gICAgICByaWdodDogLSR3aXphcmQtc21hbGwtaGVpZ2h0LzU7XG5cbiAgICAgIGJvcmRlci10b3Atd2lkdGg6ICR3aXphcmQtc21hbGwtaGVpZ2h0LzI7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkd2l6YXJkLXNtYWxsLWhlaWdodC8yO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICR3aXphcmQtc21hbGwtaGVpZ2h0LzU7XG4gICAgfVxuICAgICY6OmJlZm9yZXtcbiAgICAgIHJpZ2h0OiAtKCR3aXphcmQtc21hbGwtaGVpZ2h0LzUtMSk7XG5cbiAgICAgIGJvcmRlci10b3Atd2lkdGg6ICR3aXphcmQtc21hbGwtaGVpZ2h0LzI7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkd2l6YXJkLXNtYWxsLWhlaWdodC8yO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6ICR3aXphcmQtc21hbGwtaGVpZ2h0LzU7XG4gICAgfVxuICB9XG59XG5cblxuLy8vLy8vLy8vXG5cbi5wcm9ncmVzcy1iYXIge1xuICBwYWRkaW5nOjJweDtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRhbHQtY29sb3ItbGlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWRlZmF1bHQ7XG5cbiAgLnByb2dyZXNzLWJhcl9fZmlsbCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdWNjZXNzO1xuICAgIGJvcmRlci1yYWRpdXM6IC0xKyRib3JkZXItcmFkaXVzLWRlZmF1bHQ7XG4gIH1cbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIERBVEUgJiBUSU1FIFBJQ0tFUlxuICBodHRwOi8vYW1zdWwuY2EvcGlja2FkYXRlLmpzXG4gIGNsYXNzaWMgdGhlbWVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAkQkFTRS1QSUNLRVJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIE5vdGU6IHRoZSByb290IHBpY2tlciBlbGVtZW50IHNob3VsZCAqTk9UKiBiZSBzdHlsZWQgbW9yZSB0aGFuIHdoYXTigJlzIGhlcmUuXG4gKi9cbi5waWNrZXIge1xuICBmb250LXNpemU6IDE2cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDAwO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLyoqXG4gKiBUaGUgcGlja2VyIGlucHV0IGVsZW1lbnQuXG4gKi9cbi5waWNrZXJfX2lucHV0IHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLyoqXG4gKiBXaGVuIHRoZSBwaWNrZXIgaXMgb3BlbmVkLCB0aGUgaW5wdXQgZWxlbWVudCBpcyDigJxhY3RpdmF0ZWTigJ0uXG4gKi9cbi5waWNrZXJfX2lucHV0LnBpY2tlcl9faW5wdXQtLWFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogIzAwODllYztcbn1cbi8qKlxuICogVGhlIGhvbGRlciBpcyB0aGUgb25seSDigJxzY3JvbGxhYmxl4oCdIHRvcC1sZXZlbCBjb250YWluZXIgZWxlbWVudC5cbiAqL1xuLnBpY2tlcl9faG9sZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLyohXG4gKiBDbGFzc2ljIHBpY2tlciBzdHlsaW5nIGZvciBwaWNrYWRhdGUuanNcbiAqIERlbW86IGh0dHA6Ly9hbXN1bC5naXRodWIuaW8vcGlja2FkYXRlLmpzXG4gKi9cbi8qKlxuICogTm90ZTogdGhlIHJvb3QgcGlja2VyIGVsZW1lbnQgc2hvdWxkICpOT1QqIGJlIHN0eWxlZCBtb3JlIHRoYW4gd2hhdOKAmXMgaGVyZS5cbiAqL1xuLnBpY2tlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLyoqXG4gKiBUaGUgaG9sZGVyIGlzIHRoZSBiYXNlIG9mIHRoZSBwaWNrZXIuXG4gKi9cbi5waWNrZXJfX2hvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYWFhYTtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi13aWR0aDogMTc2cHg7XG4gIG1heC13aWR0aDogNDY2cHg7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkFscGhhKE9wYWNpdHk9MClcIjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAtbW96LW9wYWNpdHk6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xZW0pIHBlcnNwZWN0aXZlKDYwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xZW0pIHBlcnNwZWN0aXZlKDYwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4xNXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQsIG1heC1oZWlnaHQgMHMgMC4xNXMsIGJvcmRlci13aWR0aCAwcyAwLjE1cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMTVzIGVhc2Utb3V0LCBtYXgtaGVpZ2h0IDBzIDAuMTVzLCBib3JkZXItd2lkdGggMHMgMC4xNXM7XG59XG4vKipcbiAqIFRoZSBmcmFtZSBhbmQgd3JhcCB3b3JrIHRvZ2V0aGVyIHRvIGVuc3VyZSB0aGF0XG4gKiBjbGlja3Mgd2l0aGluIHRoZSBwaWNrZXIgZG9u4oCZdCByZWFjaCB0aGUgaG9sZGVyLlxuICovXG4ucGlja2VyX19mcmFtZSB7XG4gIHBhZGRpbmc6IDFweDtcbn1cbi5waWNrZXJfX3dyYXAge1xuICBtYXJnaW46IC0xcHg7XG59XG4vKipcbiAqIFdoZW4gdGhlIHBpY2tlciBvcGVucy4uLlxuICovXG4ucGlja2VyLS1vcGVuZWQgLnBpY2tlcl9faG9sZGVyIHtcbiAgbWF4LWhlaWdodDogMjVlbTtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0xMDApXCI7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICAtbW96LW9wYWNpdHk6IDE7XG4gIG9wYWNpdHk6IDE7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBwZXJzcGVjdGl2ZSg2MDBweCkgcm90YXRlWCgwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHBlcnNwZWN0aXZlKDYwMHB4KSByb3RhdGVYKDApO1xuICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjE1cyBlYXNlLW91dCwgb3BhY2l0eSAwLjE1cyBlYXNlLW91dCwgbWF4LWhlaWdodCAwcywgYm9yZGVyLXdpZHRoIDBzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xNXMgZWFzZS1vdXQsIG1heC1oZWlnaHQgMHMsIGJvcmRlci13aWR0aCAwcztcbiAgYm94LXNoYWRvdzogMCA2cHggMThweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICRCQVNFLURBVEUtUElDS0VSXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBUaGUgcGlja2VyIGJveC5cbiAqL1xuLnBpY2tlcl9fYm94IHtcbiAgcGFkZGluZzogMCAxZW07XG59XG4vKipcbiAqIFRoZSBoZWFkZXIgY29udGFpbmluZyB0aGUgbW9udGggYW5kIHllYXIgc3R1ZmYuXG4gKi9cbi5waWNrZXJfX2hlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAuNzVlbTtcbn1cbi8qKlxuICogVGhlIG1vbnRoIGFuZCB5ZWFyIGxhYmVscy5cbiAqL1xuLnBpY2tlcl9fbW9udGgsXG4ucGlja2VyX195ZWFyIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogLjI1ZW07XG4gIG1hcmdpbi1yaWdodDogLjI1ZW07XG59XG4ucGlja2VyX195ZWFyIHtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGZvbnQtc2l6ZTogLjhlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLyoqXG4gKiBUaGUgbW9udGggYW5kIHllYXIgc2VsZWN0b3JzLlxuICovXG4ucGlja2VyX19zZWxlY3QtLW1vbnRoLFxuLnBpY2tlcl9fc2VsZWN0LS15ZWFyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I3YjdiNztcbiAgaGVpZ2h0OiAyZW07XG4gIHBhZGRpbmc6IC41ZW07XG4gIG1hcmdpbi1sZWZ0OiAuMjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMjVlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAyNC41ZW0pIHtcbiAgLnBpY2tlcl9fc2VsZWN0LS1tb250aCxcbiAgLnBpY2tlcl9fc2VsZWN0LS15ZWFyIHtcbiAgICBtYXJnaW4tdG9wOiAtMC41ZW07XG4gIH1cbn1cbi5waWNrZXJfX3NlbGVjdC0tbW9udGgge1xuICB3aWR0aDogMzUlO1xufVxuLnBpY2tlcl9fc2VsZWN0LS15ZWFyIHtcbiAgd2lkdGg6IDIyLjUlO1xufVxuLnBpY2tlcl9fc2VsZWN0LS1tb250aDpmb2N1cyxcbi5waWNrZXJfX3NlbGVjdC0teWVhcjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzAwODllYztcbn1cbi8qKlxuICogVGhlIG1vbnRoIG5hdmlnYXRpb24gYnV0dG9ucy5cbiAqL1xuLnBpY2tlcl9fbmF2LS1wcmV2LFxuLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nOiAuNWVtIDEuMjVlbTtcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB0b3A6IC0wLjI1ZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMjQuNWVtKSB7XG4gIC5waWNrZXJfX25hdi0tcHJldixcbiAgLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgICB0b3A6IC0wLjMzZW07XG4gIH1cbn1cbi5waWNrZXJfX25hdi0tcHJldiB7XG4gIGxlZnQ6IC0xZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAyNC41ZW0pIHtcbiAgLnBpY2tlcl9fbmF2LS1wcmV2IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVlbTtcbiAgfVxufVxuLnBpY2tlcl9fbmF2LS1uZXh0IHtcbiAgcmlnaHQ6IC0xZW07XG4gIHBhZGRpbmctbGVmdDogMS4yNWVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDI0LjVlbSkge1xuICAucGlja2VyX19uYXYtLW5leHQge1xuICAgIHBhZGRpbmctbGVmdDogMS41ZW07XG4gIH1cbn1cbi5waWNrZXJfX25hdi0tcHJldjpiZWZvcmUsXG4ucGlja2VyX19uYXYtLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGJvcmRlci10b3A6IC41ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IC41ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMC43NWVtIHNvbGlkICMwMDAwMDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5waWNrZXJfX25hdi0tbmV4dDpiZWZvcmUge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAwLjc1ZW0gc29saWQgIzAwMDAwMDtcbn1cbi5waWNrZXJfX25hdi0tcHJldjpob3Zlcixcbi5waWNrZXJfX25hdi0tbmV4dDpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG59XG4ucGlja2VyX19uYXYtLWRpc2FibGVkLFxuLnBpY2tlcl9fbmF2LS1kaXNhYmxlZDpob3Zlcixcbi5waWNrZXJfX25hdi0tZGlzYWJsZWQ6YmVmb3JlLFxuLnBpY2tlcl9fbmF2LS1kaXNhYmxlZDpiZWZvcmU6aG92ZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICNmNWY1ZjU7XG59XG4vKipcbiAqIFRoZSBjYWxlbmRhciB0YWJsZSBvZiBkYXRlc1xuICovXG4ucGlja2VyX190YWJsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IC43NWVtO1xuICBtYXJnaW4tYm90dG9tOiAuNWVtO1xufVxuQG1lZGlhIChtaW4taGVpZ2h0OiAzMy44NzVlbSkge1xuICAucGlja2VyX190YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLjc1ZW07XG4gIH1cbn1cbi5waWNrZXJfX3RhYmxlIHRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLyoqXG4gKiBUaGUgd2Vla2RheSBsYWJlbHNcbiAqL1xuLnBpY2tlcl9fd2Vla2RheSB7XG4gIHdpZHRoOiAxNC4yODU3MTQyODYlO1xuICBmb250LXNpemU6IC43NWVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjI1ZW07XG4gIGNvbG9yOiAjOTk5OTk5O1xuICBmb250LXdlaWdodDogNTAwO1xuICAvKiBJbmNyZWFzZSB0aGUgc3BhY2luZyBhIHRhZCAqL1xufVxuQG1lZGlhIChtaW4taGVpZ2h0OiAzMy44NzVlbSkge1xuICAucGlja2VyX193ZWVrZGF5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTtcbiAgfVxufVxuLyoqXG4gKiBUaGUgZGF5cyBvbiB0aGUgY2FsZW5kYXJcbiAqL1xuLnBpY2tlcl9fZGF5IHtcbiAgcGFkZGluZzogLjMxMjVlbSAwO1xuICBmb250LXdlaWdodDogMjAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5waWNrZXJfX2RheS0tdG9kYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucGlja2VyX19kYXktLXRvZGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMnB4O1xuICByaWdodDogMnB4O1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAwLjVlbSBzb2xpZCAjMDA1OWJjO1xuICBib3JkZXItbGVmdDogLjVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5waWNrZXJfX2RheS0tZGlzYWJsZWQ6YmVmb3JlIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2FhYWFhYTtcbn1cbi5waWNrZXJfX2RheS0tb3V0Zm9jdXMge1xuICBjb2xvcjogI2RkZGRkZDtcbn1cbi5waWNrZXJfX2RheS0taW5mb2N1czpob3Zlcixcbi5waWNrZXJfX2RheS0tb3V0Zm9jdXM6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xufVxuLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZCB7XG4gIGJvcmRlci1jb2xvcjogIzAwODllYztcbn1cbi5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQ6aG92ZXIsXG4ucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2RheS0taGlnaGxpZ2h0ZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xufVxuLnBpY2tlcl9fZGF5LS1zZWxlY3RlZCxcbi5waWNrZXJfX2RheS0tc2VsZWN0ZWQ6aG92ZXIsXG4ucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2RheS0tc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kOiAjMDA4OWVjO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5waWNrZXJfX2RheS0tZGlzYWJsZWQsXG4ucGlja2VyX19kYXktLWRpc2FibGVkOmhvdmVyLFxuLnBpY2tlci0tZm9jdXNlZCAucGlja2VyX19kYXktLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjVmNWY1O1xuICBjb2xvcjogI2RkZGRkZDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLnBpY2tlcl9fZGF5LS1oaWdobGlnaHRlZC5waWNrZXJfX2RheS0tZGlzYWJsZWQsXG4ucGlja2VyX19kYXktLWhpZ2hsaWdodGVkLnBpY2tlcl9fZGF5LS1kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNiYmJiYmI7XG59XG4vKipcbiAqIFRoZSBmb290ZXIgY29udGFpbmluZyB0aGUgXCJ0b2RheVwiLCBcImNsZWFyXCIsIGFuZCBcImNsb3NlXCIgYnV0dG9ucy5cbiAqL1xuLnBpY2tlcl9fZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheSxcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXIsXG4ucGlja2VyX19idXR0b24tLWNsb3NlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAuOGVtO1xuICBwYWRkaW5nOiAuNjZlbSAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgd2lkdGg6IDMzJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuLnBpY2tlcl9fYnV0dG9uLS10b2RheTpob3Zlcixcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6aG92ZXIsXG4ucGlja2VyX19idXR0b24tLWNsb3NlOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZDogI2IxZGNmYjtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2IxZGNmYjtcbn1cbi5waWNrZXJfX2J1dHRvbi0tdG9kYXk6Zm9jdXMsXG4ucGlja2VyX19idXR0b24tLWNsZWFyOmZvY3VzLFxuLnBpY2tlcl9fYnV0dG9uLS1jbG9zZTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG4gIGJvcmRlci1jb2xvcjogIzAwODllYztcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5waWNrZXJfX2J1dHRvbi0tdG9kYXk6YmVmb3JlLFxuLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpiZWZvcmUsXG4ucGlja2VyX19idXR0b24tLWNsb3NlOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDA7XG59XG4ucGlja2VyX19idXR0b24tLXRvZGF5OmJlZm9yZSxcbi5waWNrZXJfX2J1dHRvbi0tY2xlYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIG1hcmdpbi1yaWdodDogLjQ1ZW07XG59XG4ucGlja2VyX19idXR0b24tLXRvZGF5OmJlZm9yZSB7XG4gIHRvcDogLTAuMDVlbTtcbiAgd2lkdGg6IDA7XG4gIGJvcmRlci10b3A6IDAuNjZlbSBzb2xpZCAjMDA1OWJjO1xuICBib3JkZXItbGVmdDogLjY2ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4ucGlja2VyX19idXR0b24tLWNsZWFyOmJlZm9yZSB7XG4gIHRvcDogLTAuMjVlbTtcbiAgd2lkdGg6IC42NmVtO1xuICBib3JkZXItdG9wOiAzcHggc29saWQgI2VlMjIwMDtcbn1cbi5waWNrZXJfX2J1dHRvbi0tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXEQ3XCI7XG4gIHRvcDogLTAuMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBmb250LXNpemU6IDEuMWVtO1xuICBtYXJnaW4tcmlnaHQ6IC4zNWVtO1xuICBjb2xvcjogIzc3Nzc3Nztcbn1cbi5waWNrZXJfX2J1dHRvbi0tdG9kYXlbZGlzYWJsZWRdLFxuLnBpY2tlcl9fYnV0dG9uLS10b2RheVtkaXNhYmxlZF06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBib3JkZXItY29sb3I6ICNmNWY1ZjU7XG4gIGNvbG9yOiAjZGRkZGRkO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucGlja2VyX19idXR0b24tLXRvZGF5W2Rpc2FibGVkXTpiZWZvcmUge1xuICBib3JkZXItdG9wLWNvbG9yOiAjYWFhYWFhO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgJENMQVNTSUMtREFURS1QSUNLRVJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICRCQVNFLVRJTUUtUElDS0VSXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBUaGUgbGlzdCBvZiB0aW1lcy5cbiAqL1xuLnBpY2tlcl9fbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNzVlbSAwIDQuMmVtO1xuICBtYXJnaW46IDA7XG59XG4vKipcbiAqIFRoZSB0aW1lcyBvbiB0aGUgY2xvY2suXG4gKi9cbi5waWNrZXJfX2xpc3QtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkZGRkO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZGRkZDtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAuNzVlbSAxLjI1ZW07XG59XG5AbWVkaWEgKG1pbi1oZWlnaHQ6IDQ2Ljc1ZW0pIHtcbiAgLnBpY2tlcl9fbGlzdC1pdGVtIHtcbiAgICBwYWRkaW5nOiAuNWVtIDFlbTtcbiAgfVxufVxuLyogSG92ZXJlZCB0aW1lICovXG4ucGlja2VyX19saXN0LWl0ZW06aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xuICBib3JkZXItY29sb3I6ICMwMDg5ZWM7XG4gIHotaW5kZXg6IDEwO1xufVxuLyogSGlnaGxpZ2h0ZWQgYW5kIGhvdmVyZWQvZm9jdXNlZCB0aW1lICovXG4ucGlja2VyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDA4OWVjO1xuICB6LWluZGV4OiAxMDtcbn1cbi5waWNrZXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQ6aG92ZXIsXG4ucGlja2VyLS1mb2N1c2VkIC5waWNrZXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjYjFkY2ZiO1xufVxuLyogU2VsZWN0ZWQgYW5kIGhvdmVyZWQvZm9jdXNlZCB0aW1lICovXG4ucGlja2VyX19saXN0LWl0ZW0tLXNlbGVjdGVkLFxuLnBpY2tlcl9fbGlzdC1pdGVtLS1zZWxlY3RlZDpob3Zlcixcbi5waWNrZXItLWZvY3VzZWQgLnBpY2tlcl9fbGlzdC1pdGVtLS1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICMwMDg5ZWM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB6LWluZGV4OiAxMDtcbn1cbi8qIERpc2FibGVkIHRpbWUgKi9cbi5waWNrZXJfX2xpc3QtaXRlbS0tZGlzYWJsZWQsXG4ucGlja2VyX19saXN0LWl0ZW0tLWRpc2FibGVkOmhvdmVyLFxuLnBpY2tlci0tZm9jdXNlZCAucGlja2VyX19saXN0LWl0ZW0tLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgYm9yZGVyLWNvbG9yOiAjZjVmNWY1O1xuICBjb2xvcjogI2RkZGRkZDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBib3JkZXItY29sb3I6ICNkZGRkZGQ7XG4gIHotaW5kZXg6IGF1dG87XG59XG4vKipcbiAqIFRoZSBjbGVhciBidXR0b25cbiAqL1xuLnBpY2tlci0tdGltZSAucGlja2VyX19idXR0b24tLWNsZWFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA4MCU7XG4gIG1hcmdpbjogMWVtIGF1dG8gMDtcbiAgcGFkZGluZzogMWVtIDEuMjVlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IC42N2VtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjNjY2O1xufVxuLnBpY2tlci0tdGltZSAucGlja2VyX19idXR0b24tLWNsZWFyOmhvdmVyLFxuLnBpY2tlci0tdGltZSAucGlja2VyX19idXR0b24tLWNsZWFyOmZvY3VzIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNiMWRjZmI7XG4gIGJhY2tncm91bmQ6ICNlZTIyMDA7XG4gIGJvcmRlci1jb2xvcjogI2VlMjIwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5waWNrZXItLXRpbWUgLnBpY2tlcl9fYnV0dG9uLS1jbGVhcjpiZWZvcmUge1xuICB0b3A6IC0wLjI1ZW07XG4gIGNvbG9yOiAjNjY2O1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ucGlja2VyLS10aW1lIC5waWNrZXJfX2J1dHRvbi0tY2xlYXI6aG92ZXI6YmVmb3JlLFxuLnBpY2tlci0tdGltZSAucGlja2VyX19idXR0b24tLWNsZWFyOmZvY3VzOmJlZm9yZSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAkQ0xBU1NJQy1USU1FLVBJQ0tFUlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogTm90ZTogdGhlIHJvb3QgcGlja2VyIGVsZW1lbnQgc2hvdWxkIF9fTk9UX18gYmUgc3R5bGVkXG4gKiBtb3JlIHRoYW4gd2hhdOKAmXMgaGVyZS4gU3R5bGUgdGhlIGAucGlja2VyX19ob2xkZXJgIGluc3RlYWQuXG4gKi9cbi5waWNrZXItLXRpbWUge1xuICBtaW4td2lkdGg6IDI1NnB4O1xuICBtYXgtd2lkdGg6IDMyMHB4O1xufVxuLyoqXG4gKiBUaGUgaG9sZGVyIGlzIHRoZSBiYXNlIG9mIHRoZSBwaWNrZXIuXG4gKi9cbi5waWNrZXItLXRpbWUgLnBpY2tlcl9faG9sZGVyIHtcbiAgYmFja2dyb3VuZDogI2YyZjJmMjtcbn1cbkBtZWRpYSAobWluLWhlaWdodDogNDAuMTI1ZW0pIHtcbiAgLnBpY2tlci0tdGltZSAucGlja2VyX19ob2xkZXIge1xuICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICB9XG59XG4vKipcbiAqIFRoZSBib3ggY29udGFpbnMgdGhlIGxpc3Qgb2YgdGltZXMuXG4gKi9cbi5waWNrZXItLXRpbWUgLnBpY2tlcl9fYm94IHtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5cbi8vIE92ZXJyaWRlcyBmcm9tIGRlZmF1bHQgdGFibGVzLlxuLnBpY2tlcl9fdGFibGUge1xuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgfVxuXG4gIHRoIHtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB9XG5cbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICB0ZCB7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cbiAgfVxufVxuXG4vLyBSZWR1Y2Ugc2l6ZSBvZiBmaWVsZC5cbi8vIFBpY2thZGF0ZSBzd2l0Y2ggaW5wdXRbdHlwZT1cImRhdGVcIl0gYW5kIGlucHV0W3R5cGU9XCJ0aW1lXCJdIHRvIGlucHV0W3R5cGU9XCJ0ZXh0XCJdXG4vLyB0aGVyZWZvcmUgd2UgaGF2ZSB0byBzZXQgdGhlIHNhbWUgd2lkdGggYXMgZm9yIHRob3NlIGZpZWxkcyB0eXBlLlxuLnBpY2tlcl9faW5wdXQucGlja2VyX19pbnB1dC5waWNrZXJfX2lucHV0IHtcbiAgbWF4LXdpZHRoOiA1ZW07XG59XG5cbi5waWNrZXJfX2lucHV0LS1kYXRlIHtcbiAgbWF4LXdpZHRoOiA4ZW07XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgUEFHSU5BVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5wYWdlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5wYWdlcl9faXRlbXMge1xuICBwYWRkaW5nOiAkc3BhY2luZy11bml0LWRlZmF1bHQgMCAkc3BhY2luZy11bml0LWxhcmdlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ucGFnZXJfX2l0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTFweDtcblxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjZlbSAwLjllbSAwLjU1ZW07XG5cbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMCAxcHggMXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlcjtcbiAgICAgIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlcjtcbiAgICB9XG4gIH1cblxuICAmOmZpcnN0LW9mLXR5cGUgYSB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDNweDtcbiAgfVxuXG4gICY6bGFzdC1vZi10eXBlIGEge1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAzcHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDNweDtcbiAgfVxufVxuXG4vLyBIaWRlIGVsbGlwc2lzLlxuLnBhZ2VyX19pdGVtLS1lbGxpcHNpcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgUVVJQ0sgU0VBUkNIIC0gQ3VzdG9tIHN0eWxlIGZvciBzZWFyY2hcbiAgVE9ETzogR2V0IHJpZCBvZiB0aGlzIHNwZWNpZmljIENTU1xuICBTZWUgaHR0cHM6Ly9qaXJhLmxpaXAuY2gvYnJvd3NlL0JDRi00OTdcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4lc2VhcmNoLWljb24taW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuOGVtO1xuICByaWdodDogMC43ZW07XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvaWNvbnMvc2VhcmNoLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDFlbSAxZW07XG5cbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFNlYXJjaCBibG9jayBvbiBob21lcGFnZS5cbltpZD1cImJsb2NrLWV4cG9zZWQtZm9ybS1zZWFyY2gtaHBcIl0ge1xuICAuZm9ybS1ncm91cC0tdGV4dGZpZWxkIHtcbiAgICBAZXh0ZW5kIC5tcmdiKztcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIFtpZD1cImljb24tc2VhcmNoLWZvcm1cIl0ge1xuICAgICAgQGV4dGVuZCAlc2VhcmNoLWljb24taW5uZXI7XG4gICAgfVxuICB9XG5cbiAgW2lkPVwiZWRpdC1zdWJtaXQtc2VhcmNoXCJdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgW2lkPVwiaWNvbi1zZWFyY2gtZm9ybVwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBTZWFyY2ggZm9ybSBpbiB0aGUgbW9iaWxlIG1lbnUuXG5baWQ9XCJxdWljay1zZWFyY2gtbW9iaWxlLWZvcm1cIl0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIEBleHRlbmQgJXNlYXJjaC1pY29uLWlubmVyO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIH1cbn1cblxuXG4vLyBTZWFyY2ggYmxvY2sgb24gc2VhcmNoIHBhZ2UuXG5baWQ9XCJibG9jay1leHBvc2VkLWZvcm0tc2VhcmNoLXBhZ2VcIl0ge1xuXG4gIFtpZD1cInZpZXdzLWV4cG9zZWQtZm9ybS1zZWFyY2gtcGFnZS0xXCJdIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctdW5pdC1sYXJnZTtcbiAgfVxuXG4gIC5mb3JtLWdyb3VwLS10ZXh0ZmllbGQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLXVuaXQtc21hbGw7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1ncm91cC0tdGV4dGZpZWxkIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIE5BVlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG5cbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY29sb3I6ICRhbHQtY29sb3ItZGFyaztcblxuICAuYWN0aXZlIC5uYXZfX2l0ZW1fX2xpbmsge1xuICAgIEBleHRlbmQgJW5hdl9faXRlbV9fbGluay0tYWN0aXZlO1xuICB9XG59XG5cbiVuYXYtd3JhcHBlci0tc3RpY2t5LFxuLm5hdi13cmFwcGVyLS1zdGlja3kge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcblxuICBiYWNrZ3JvdW5kOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gIGJveC1zaGFkb3c6IHJnYmEoMTI5LDEyNiwxMTcsMC4yNSkgMCAxcHggMjBweCAwO1xuICB6LWluZGV4OiAzMDAwO1xuXG4gIC5uYXZfX2NvbnRhaW5lciB7XG4gICAgQGV4dGVuZCAlY29udGFpbmVyO1xuICB9XG59XG5cbi5hZmZpeCB7XG4gIEBleHRlbmQgJW5hdi13cmFwcGVyLS1zdGlja3k7XG59XG5cbi5uYXZfX2l0ZW0ge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLm5hdl9faXRlbV9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogMC41ZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVlbTtcblxuICBib3JkZXItdG9wOiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlLW91dDtcblxuICAmOmhvdmVyIHtcbiAgICBAZXh0ZW5kICVuYXZfX2l0ZW1fX2xpbmstLWFjdGl2ZTtcbiAgfVxufVxuXG4lbmF2X19pdGVtX19saW5rLS1hY3RpdmUsXG4ubmF2X19pdGVtX19saW5rLS1hY3RpdmUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlcjtcbiAgY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIE1PREFMXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLiN7JG5hbWVzcGFjZX1tb2RhbCxcbiVtb2RhbCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoZGFya2VuKCRhbHQtY29sb3ItbGlnaHRlciwgMiUpLCAwLjk1KTtcblxuICAmLnRpbmdsZS1tb2RhbCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxuICAudGluZ2xlLW1vZGFsLWJveCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luOiAyM3B4IDAgMDtcbiAgfVxuXG4gIC50aW5nbGUtbW9kYWwtYm94LS1yZXNpemVkIHtcbiAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWQtbWF4LXdpZHRoIC0gJGNvbnRhaW5lci1ndXR0ZXItd2lkdGgqMjtcbiAgfVxuXG4gIC5sb2dvX19pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGFsdC1jb2xvci1saWdodGVyLCAyJSk7XG4gICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXVuaXQtc21hbGw7IC8vIHRoZSBwZGdiIGNsYXNzIGRvZXMgbm90IHNlZW0gdG8gd29ya1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgLnRpbmdsZS1tb2RhbC1ib3gge1xuICAgICAgbWFyZ2luLXRvcDogMzNweDtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAudGluZ2xlLW1vZGFsLWJveCB7XG4gICAgICBtYXJnaW4tdG9wOiAzN3B4O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIC50aW5nbGUtbW9kYWwtYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IDY3cHg7XG4gICAgfVxuXG4gICAgLmdlb2xvY2F0aW9uLWdvb2dsZS1tYXAge1xuICAgICAgaGVpZ2h0OiA2MDBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi4jeyRuYW1lc3BhY2V9bW9kYWwtLWdhcGxlc3MsXG4lbW9kYWwtLWdhcGxlc3Mge1xuICAudGluZ2xlLW1vZGFsLWJveF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfW1vZGFsX19oZWFkZXIsXG4lbW9kYWxfaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi4jeyRuYW1lc3BhY2V9bW9kYWxfX2Nsb3NlcixcbiVtb2RhbF9jbG9zZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi50aW5nbGUtbW9kYWxfX2NvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IC0yMDAwcHg7IC8vIHdlIG5lZWQgdGhpcyB0byBub3QgaW50ZXJmZXJlIHdpdGggdGhlIHBhZ2UgbGF5b3V0XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVVNFUiBBQ0NPVU5UXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnVzZXItYWNjb3VudCB7fVxuXG4udXNlci1hY2NvdW50X19saW5rIHtcbiAgQGV4dGVuZCAlbGluay0tbGFyZ2U7XG5cbiAgbWFyZ2luLXRvcDogJHNwYWNpbmctdW5pdC1zbWFsbDtcblxuICAmOmhvdmVyLFxuICAudXNlci1hY2NvdW50LW1lbnUtLWlzLW9wZW4gJiB7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItZGFya2VyO1xuICB9XG5cbiAgJiBzdmcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlLWluLW91dDtcbiAgfVxuXG4gIC51c2VyLWFjY291bnQtbWVudS0taXMtb3BlbiAmIHN2ZyB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuXG4udXNlci1hY2NvdW50X19tZW51IHtcbiAgYSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGJyYW5kLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xuICAgIH1cbiAgfVxufVxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRkxBR1NcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZmxhZyB7XG4gIHdpZHRoOiAxNWVtO1xuICBoZWlnaHQ6IDdlbTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5mbGFnLS10b3AtcmlnaHQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuICAuZmxhZ19fdGV4dCB7XG4gICAgcGFkZGluZy10b3A6IDAuMmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjFlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjUwbXMgMTIwbXMgY3ViaWMtYmV6aWVyKDAuNiwyLjUxLDAuNywwLjcpO1xuXG4gICAgLmZsYWctLXRvcC1sZWZ0ICYge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTM1JSwgLTUwJSkgcm90YXRlKC0yMGRlZykgdHJhbnNsYXRlWSg3NSUpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICB9XG5cbiAgICAuZmxhZy0tdG9wLXJpZ2h0ICYge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTUlLC01MCUpIHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSgxMzAlKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmJveDpob3ZlciAuZmxhZy0tdG9wLWxlZnQgJiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzUlLCAtNTAlKSByb3RhdGUoLTIwZGVnKSB0cmFuc2xhdGVZKDgwJSkgc2NhbGUoMS4yKTtcbiAgICB9XG5cbiAgICAuYm94OmhvdmVyIC5mbGFnLS10b3AtcmlnaHQgJiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1NSUsLTUwJSkgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKDEzNSUpIHNjYWxlKDEuMik7XG4gICAgfVxuICAgIC5mbGFnLS1sZS1jbHViICYge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxlLWNsdWItY29sb3I7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWxlLWNsdWI7XG4gICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgIH1cblxuICAgIC5mbGFnLS1leGNsdXNpdmUgJiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0O1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1sZS1jbHViO1xuICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICB9XG5cbiAgICAuZmxhZy0tZG91YmxlICYge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxlLWNsdWItY29sb3I7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWxlLWNsdWI7XG4gICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICAgIH1cblxuICAgIC5mbGFnLS1kb3VibGUgJiArICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjRlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHQ7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWxlLWNsdWI7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zNSUsIC01MCUpIHJvdGF0ZSgtMjBkZWcpIHRyYW5zbGF0ZVgoNzQlKSB0cmFuc2xhdGVZKDE2MiUpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICB9XG5cbiAgICAuYm94OmhvdmVyIC5mbGFnLS1kb3VibGUgJiArICYge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTM1JSwgLTUwJSkgcm90YXRlKC0yMGRlZykgdHJhbnNsYXRlWCg4NSUpIHRyYW5zbGF0ZVkoMTkwJSkgc2NhbGUoMS4yKTtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuICAgIH1cblxuICAgIC5mbGFnLS1idG4gJiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNDElLC0yMCUpIHJvdGF0ZSgtMjBkZWcpIHRyYW5zbGF0ZVkoMjklKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG5cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIENPTlRFU1QgQk9YXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLiN7JG5hbWVzcGFjZX1jb250ZXN0LFxuJWNvbnRlc3Qge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjAxKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMCUgOTAlO1xuXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAzMDBtcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDMwMG1zIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgLmNvbnRlc3RfX2luZm9zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzAwbXMgMjAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgfVxuXG4gIC5jb250ZXN0X19tZXNzYWdlIHtcbiAgICBwYWRkaW5nOiAkYm94LXNwYWNpbmctdW5pdC1sYXJnZSAkYm94LXNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICAgIG1hcmdpbi10b3A6IC0xMDAwMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDUwMG1zIDgwMG1zIGVhc2UtaW4tb3V0O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmLS1pcy1wYXJ0aWNpcGF0aW5nIHtcbiAgICBhbmltYXRpb246IHBvdW5kIDUwMG1zO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsZS1jbHViLWNvbG9yLXRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgIHAsXG4gICAgLmxlLWNsdWIgJiAuY291bnRkb3duIHtcbiAgICAgIGNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICAgIH1cblxuICAgIC5hY2NvcmRpb25fX2l0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAubWFnbmV0IHtcbiAgICAgIGNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gICAgfVxuXG4gICAgLm1hZ25ldF9faW1hZ2Uge1xuICAgICAgYW5pbWF0aW9uOiB3YXZ5IDEyMDBtcztcbiAgICB9XG5cbiAgICAuY29udGVzdF9faW5mb3Mge1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLmNvbnRlc3RfX21lc3NhZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLmZsYWcge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubWFnbmV0X19vdmVybGF5LXRpdGxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItZGFyaztcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwb3VuZCB7XG4gIGZyb20geyB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgMjUlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsgfVxuICB0byB7IHRyYW5zZm9ybTogbm9uZTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHdhdnkge1xuICAwJSB7ICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgMjUlIHsgICB0cmFuc2Zvcm06IHJvdGF0ZSg4ZGVnKTsgfVxuICA3NSUgeyAgIHRyYW5zZm9ybTogcm90YXRlKC0zZGVnKTsgfVxuICAxMDAlIHsgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMmRlZyk7IH1cbn1cblxuIiwiLnNlbGVjdGFiaWxpdHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICZbYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIGN1cnNvcjogbm9uZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4uc2VsZWN0YWJpbGl0eV9fdGV4dGJveCB7XG4gIEBleHRlbmQgJWlucHV0O1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC5zZWxlY3RhYmlsaXR5OmZvY3VzICYge1xuICAgIGJvcmRlci1jb2xvcjogJGFsdC1jb2xvci1kYXJrZXI7XG4gIH1cbn1cblxuLnNlbGVjdGFiaWxpdHlfX3RleHRib3hfX2lubmVyIHt9XG5cbi5zZWxlY3RhYmlsaXR5X190ZXh0Ym94X190ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC5zZWxlY3RhYmlsaXR5LS1kb3VibGVMYWJlbCAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgfVxufVxuXG5cbi5zZWxlY3RhYmlsaXR5X190ZXh0Ym94X19zbWFsbHRleHQge1xuICB3aWR0aDogODUlO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxLjFlbTtcblxuXG4gIGZvbnQtc2l6ZTogMC42NWVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbi5zZWxlY3RhYmlsaXR5X190ZXh0Ym94X19pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDYzJTtcbiAgcmlnaHQ6IDAuN2VtO1xuXG4gIGZpbGw6ICRicmFuZC1jb2xvcjtcbiAgc3Ryb2tlOiAkYnJhbmQtY29sb3I7XG4gIHN0cm9rZS13aWR0aDogMS40cHg7XG5cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgIHRvcDogNTAlO1xuICB9XG5cbiAgLnNlbGVjdGFiaWxpdHlfX3RleHRib3g6aG92ZXIgJiB7XG4gICAgZmlsbDogJGFsdC1jb2xvci1kYXJrZXI7XG4gICAgc3Ryb2tlOiAkYWx0LWNvbG9yLWRhcmtlcjtcbiAgfVxuXG4gIFthcmlhLWRpc2FibGVkPXRydWVdICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNlbGVjdGFiaWxpdHlfX2xpc3Rib3gge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDM0dmg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDtcblxuXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBmb250LXNpemU6ICRmaWVsZC1mb250LXNpemU7XG5cbiAgYm9yZGVyOiAkZmllbGQtYm9yZGVyO1xuICBib3JkZXItdG9wLXdpZHRoOiAwcHg7XG5cbiAgYm94LXNoYWRvdzogJGZseW91dC1zaGFkb3c7XG5cbiAgW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJiA+IGRpdiB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC10aW55ICRzcGFjaW5nLXVuaXQtc21hbGw7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYWx0LWNvbG9yLWRhcmtlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGZpZWxkLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBjb2xvcjogJGJyYW5kLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVyO1xuICAgIH1cbiAgfVxufVxuXG4uc2VsZWN0YWJpbGl0eS1vZmZzY3JlZW4ge1xuICBAZXh0ZW5kICV2aXNpYmxlLXNyO1xufVxuXG4uc2VsZWN0YWJpbGl0eS1vZmZzY3JlZW4tdG91Y2gge1xuICBvcGFjaXR5OiAwLjAwMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIENBTENVTEFUT1JcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi5jYWxjdWxhdG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZy10b3A6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgbWF4LXdpZHRoOiA4NXZ3OyAvLyBhdm9pZCBzdXBlcnBvc2l0aW9uIHdpdGggdGhlIGZseW91dCBtZW51XG4gIH1cblxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgfVxuICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICB9XG5cbiAgQGluY2x1ZGUgaXRhbGljLXBsYWNlaG9sZGVyO1xufVxuXG4uY2FsY3VsYXRvci13aWR0aCB7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG4uY2FsY3VsYXRvcl9fYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgd2lkdGg6IDQ1JTtcbiAgfVxuXG4gIC5mb3JtLWdyb3VwLS10ZXh0ZmllbGQge1xuICAgIHdpZHRoOiA2MCU7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzgwcHgpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tZ3JvdXAtLXNlbGVjdCB7XG4gICAgd2lkdGg6IDQwJTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzODBweCkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gIH1cblxuXG5cbiAgbGFiZWwge1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gIH1cblxuICBpbnB1dFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGV4dGVuZCAlaW5wdXQtLWxhcmdlO1xuXG4gICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgICB9XG4gIH1cblxuICAuc2VsZWN0YWJpbGl0eV9fdGV4dGJveCB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctdW5pdC10aW55O1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgfVxuICB9XG59XG5cbi5jYWxjdWxhdG9yX19zd2FwIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDEuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHdpZHRoOiAxMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yZW07XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICYgc3ZnIHtcbiAgICAgICAgZmlsbDogJGJyYW5kLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHN2ZyB7XG4gICAgbWF4LXdpZHRoOiA0MHB4O1xuICAgIG1heC1oZWlnaHQ6IDQwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmlsbDogJGFsdC1jb2xvcjtcblxuICAgIHRyYW5zaXRpb246IGZpbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGZpbGw6ICRicmFuZC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBIRVJPIEhFQURFUlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLiN7JG5hbWVzcGFjZX1oZXJvLFxuJWhlcm8ge1xuICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRhbHQtY29sb3ItbGlnaHRlciwgMiUpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7IC8vIE1ha2UgdGhlIGhlcm8gaW1hZ2UgZ29lcyBhYm92ZSB0aGUgbmV4dCBzZWN0aW9uLlxuXG4gICAgLmdyaWRfX2l0ZW0ge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDgwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG5cbiAgICAgICY6bnRoLW9mLXR5cGUoMil7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDIwMG1zO1xuICAgICAgfVxuICAgICAgLm1lbnUtLXZpc2libGUgJiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MHB4KTtcbiAgICAgIH1cbiAgICB9XG5cbn1cblxuLmhlcm8tLWRlZmF1bHQgIHtcbiAgQGV4dGVuZCAlc2VjdGlvbi0taGFsZnRvbmU7XG59XG5cbi5oZXJvLS1sYW5kc2NhcGUge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xufVxuXG4gIC8vIGFzIHNldmVyYWwgLmNvbnRhaW5lciBhcmUgaW4gdGhlIC5oZXJvIHNlY3Rpb24sXG4gIC8vIHdlIGhhdmUgdG8gZGVmaW5lIGEgc3BlY2lmaWMgb25lIGZvciB3cmFwcGluZyB0aGUgYm94IGFuZCB0aGUgZnJvbnQgaW1hZ2VcbiAgLmhlcm8tLWxhbmRzY2FwZV9fY29udGFpbmVyIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICAgICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy11bml0LWxhcmdlO1xuICAgICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgfVxuICB9XG5cbi5oZXJvLS1tYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYmFja2dyb3VuZHMvc2VjdGlvbi1icmFuY2hlcy5naWYnKTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMDtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRhbHQtY29sb3ItbGlnaHRlciwgMC43KTtcbiAgfVxuXG4gICYgPiBkaXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbiAgLmhlcm9fX3RpdGxlIHtcbiAgICBjb2xvcjogJGJyYW5kLWNvbG9yO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICBtYXJnaW4tdG9wOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgfVxuICB9XG5cbiAgLmhlcm9fX3N1YnRpdGxlIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuaGVyb19faW1hZ2Uge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiA4MHZoO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG4gICAgICBtYXgtaGVpZ2h0OiA2MHZoO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgICAgaGVpZ2h0OiBjYWxjKCAxMDAlICsgI3skc3BhY2luZy11bml0LWRlZmF1bHQqM30pO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWF4LWhlaWdodDogMTAwdmg7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogLSN7JHNwYWNpbmctdW5pdC1kZWZhdWx0KjJ9O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgICAgaGVpZ2h0OiBjYWxjKCAxMDAlICsgI3skc3BhY2luZy11bml0LWxhcmdlKjN9KTtcbiAgICAgIGJvdHRvbTogLSN7JHNwYWNpbmctdW5pdC1sYXJnZSoyfTtcbiAgICB9XG4gIH1cblxuXG4uaGVyby0tbG9naW4tZS1iYW5raW5nIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2JhY2tncm91bmRzL3NlY3Rpb24tZmFjZXRzLnN2ZycgKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBBcyB0aGUgaGVyb19faW1hZ2UgYXMgYSBwb3NpdGl2ZSBvZmZzZXQgb24gdGhlIGJvdHRvbSBvZiB0aGUgaGVybyBzZWN0aW9uLlxuLy8gV2UgaGF2ZSB0byBtb3ZlIHRoZSBuZXh0IHNlY3Rpb24gYmVoaW5kIHRoZSBvZmZzZXQgb2YgdGhlIGhlcm9fX2ltYWdlLiBPdGhlcndpc2Ugd2UgaGF2ZSBhIGJsYW5rIGxpbmUuXG4vLyBUaGlzIGNsYXNzIGFzIGEgc3Ryb25nIHJlbGF0aW9uIHdpdGggLnNlY3Rpb24uXG4uaGVyby11bmRlcm5lYXRoLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHBhZGRpbmctdG9wOiAoJHNlY3Rpb24tc3BhY2luZy1kZWZhdWx0LzIpICsgKCRzcGFjaW5nLXVuaXQtbGFyZ2UqMik7IC8vIHNlY3Rpb24gcGFkZGluZyArIGhlcm9fX2ltYWdlIG9mZnNldC5cbiAgbWFyZ2luLXRvcDogLSN7JHNwYWNpbmctdW5pdC1sYXJnZSoyfTsgLy8gaXMgZXF1YWwgdG8gdGhlIG9mZnNldCBvZiB0aGUgaGVyb19faW1hZ2UuXG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTU9TQUlDXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLiN7JG5hbWVzcGFjZX1tb3NhaWMsXG4lbW9zYWljIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBFcXVhbCB3aWR0aCBmb3IgYWxsIGNlbGxzXG4uI3skbmFtZXNwYWNlfW1vc2FpYy0tZml4ZWQsXG4lbW9zYWljLS1maXhlZCB7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG5cbiAgLiN7JG5hbWVzcGFjZX1tb3NhaWNfX3JvdyxcbiAgJW1vc2FpY19fcm93IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfW1vc2FpY19fY2VsbCxcbiAgJW1vc2FpY19fY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLm1vc2FpYy0tdG9wICYge1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG5cbiAgICAubW9zYWljLS1ib3R0b20gJiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbiAgfVxuXG4gICAgLy8gTWFrZSB0aGUgY2VsbCBmaXQgaXRzIGNvbnRlbnRcbiAgICAuI3skbmFtZXNwYWNlfW1vc2FpY19fY2VsbC0tZml0LFxuICAgICVtb3NhaWNfX2NlbGwtLWZpdCB7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTU9TQUlDIFJFU1BPTlNJVkVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWVkaWEgKG1heC13aWR0aDogJG1vc2FpYy1jb2xsYXBzZSkge1xuICAuI3skbmFtZXNwYWNlfW1vc2FpYy0tcmVzcG9uc2l2ZSB7XG4gICAgJixcbiAgICA+IC4jeyRuYW1lc3BhY2V9bW9zYWljX19yb3csXG4gICAgPiAuI3skbmFtZXNwYWNlfW1vc2FpY19fY2VsbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9bW9zYWljX19jZWxsLS1maXQge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTElTVCBTVEFDS0VEXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLiN7JG5hbWVzcGFjZX1saXN0LWlubGluZSxcbiVsaXN0LWlubGluZSB7XG4gIEBleHRlbmQgJWxpc3Q7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctdW5pdC1kZWZhdWx0LzI7XG5cbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbiAgLy8gRm9yY2UgbGlzdCB0byB0YWtlIDEwMCUgYW5kIGF2b2lkIHdyYXBwaW5nXG4gIC4jeyRuYW1lc3BhY2V9bGlzdC1pbmxpbmUtLW5vd3JhcCxcbiAgJWxpc3QtaW5saW5lLS1ub3dyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMC42NWVtO1xuICAgICAgfVxuXG4gICAgICAmIC5pY29uIHtcbiAgICAgICAgd2lkdGg6IDJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBBZGQgc2VwYXJhdG9yc1xuICAuI3skbmFtZXNwYWNlfWxpc3QtaW5saW5lLS1kaXZpZGVkLFxuICAlbGlzdC1pbmxpbmUtLWRpdmlkZWQge1xuICAgID4gbGkgKyBsaSB7XG4gICAgICBib3JkZXItbGVmdDogJGxpc3Qtc2VwYXJhdG9yLXN0eWxlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTaXplc1xuICAgKi9cblxuICAuI3skbmFtZXNwYWNlfWxpc3QtaW5saW5lLS10aWdodCxcbiAgJWxpc3QtaW5saW5lLS10aWdodCB7XG4gICAgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9bGlzdC1pbmxpbmUtLXRpbnksXG4gICVsaXN0LWlubGluZS0tdGlueSB7XG4gICAgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwICRzcGFjaW5nLXVuaXQtdGlueS8yO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9bGlzdC1pbmxpbmUtLXNtYWxsLFxuICAlbGlzdC1pbmxpbmUtLXNtYWxsIHtcbiAgICA+IGxpIHtcbiAgICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctdW5pdC1zbWFsbC8yO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9bGlzdC1pbmxpbmUtLWxhcmdlLFxuICAlbGlzdC1pbmxpbmUtLWxhcmdlIHtcbiAgICA+IGxpIHtcbiAgICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctdW5pdC1sYXJnZS8yO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9bGlzdC1pbmxpbmUtLWh1Z2UsXG4gICVsaXN0LWlubGluZS0taHVnZSB7XG4gICAgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwICRzcGFjaW5nLXVuaXQtaHVnZS8yO1xuICAgIH1cbiAgfVxuXG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSVNUIFRFQVNFRFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi4jeyRuYW1lc3BhY2V9bGlzdC10ZWFzZWQsXG4lbGlzdC10ZWFzZWQge1xuICBAZXh0ZW5kICVsaXN0O1xuXG4gIG1hcmdpbjogJHNwYWNpbmctdW5pdC1sYXJnZSAwO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtc21hbGwgMDtcbiAgICBib3JkZXI6ICRib3gtZGVmYXVsdC1ib3JkZXI7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uI3skbmFtZXNwYWNlfWxpc3QtdGVhc2VkX19kYXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1kZWZhdWx0O1xufVxuXG4uI3skbmFtZXNwYWNlfWxpc3QtdGVhc2VkX190aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtZGVmYXVsdDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1saXN0LXRlYXNlZF9fYm9keSB7XG4gIC8vIGhpZGUgdGhlIGJvZHkgb24gcmVhbGx5IHNtYWxsIGRldmljZSB0byBlYXJuIHNwYWNlLlxuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkc3BhY2luZy11bml0LXRpbnk7XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi14cy1taW4pIHtcbiAgLiN7JG5hbWVzcGFjZX1saXN0LXRlYXNlZF9fYm9keSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gIC4jeyRuYW1lc3BhY2V9bGlzdC10ZWFzZWQsXG4gICVsaXN0LXRlYXNlZCB7XG4gICAgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXNtYWxsIDA7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1saXN0LXRlYXNlZF9fZGF0ZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWRlZmF1bHQgKiAxLjM7XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfWxpc3QtdGVhc2VkX190aXRsZSxcbiAgLiN7JG5hbWVzcGFjZX1saXN0LXRlYXNlZF9fYm9keSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA4MCU7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSVNUIENPTVBBQ1RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uI3skbmFtZXNwYWNlfWxpc3QtY29tcGFjdCxcbiVsaXN0LWNvbXBhY3Qge1xuICBAZXh0ZW5kICVsaXN0O1xuXG4gIG1hcmdpbjogJHNwYWNpbmctdW5pdC1zbWFsbCAwO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtdGlueSAwO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9bGlzdC1jb21wYWN0X19kYXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi4jeyRuYW1lc3BhY2V9bGlzdC1jb21wYWN0X190aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtZGVmYXVsdDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRhbHQtY29sb3ItZGFyaztcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRhbHQtY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVEFCU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi4jeyRuYW1lc3BhY2V9dGFicyxcbiV0YWJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAtJHRhYnMtc3BhY2luZy11bml0O1xuXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4gIC4jeyRuYW1lc3BhY2V9dGFicy0tZGVmYXVsdCxcbiAgJXRhYnMtLWRlZmF1bHQge1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6ICR0YWJzLXNwYWNpbmctdW5pdDtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgICB9XG5cbiAgICAuI3skbmFtZXNwYWNlfXRhYnNfX2l0ZW1fX2xpbmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwLjZyZW0gMXJlbTtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWNvbG9yO1xuICAgICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX10YWJzX19pdGVtLFxuICAldGFic19faXRlbSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgcGFkZGluZy1sZWZ0OiAkdGFicy1zcGFjaW5nLXVuaXQ7XG4gIH1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBTVEVQUEVEIExJU1RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi5zdGVwcGVkLWxpc3Qge1xufVxuXG4vLyBSZW1vdmUgYm9yZGVyIGFzIHRoZXkgYXJlIGdsdWVkIHRvZ2V0aGVyLlxuLnN0ZXBwZWQtbGlzdF9faXRlbSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgfVxufVxuXG4uc3RlcHBlZC1saXN0X19pdGVtLS1sYXN0IHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gIH1cbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIE1VTFRJU1RFUFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLm11bHRpc3RlcHMge1xuICBjb3VudGVyLXJlc2V0OiBzdGVwX2NvdW50ZXI7XG59XG5cbi5tdWx0aXN0ZXAge1xuICBwYWRkaW5nLXRvcDogJHNwYWNpbmctdW5pdC1sYXJnZTtcbiAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctdW5pdC1odWdlO1xuICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtZGVmYXVsdDtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmctdW5pdC1sYXJnZTtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogY291bnRlcihzdGVwX2NvdW50ZXIpO1xuICAgIGNvdW50ZXItaW5jcmVtZW50OiBzdGVwX2NvdW50ZXI7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEuOGVtO1xuICAgIGhlaWdodDogMS44ZW07XG4gICAgcGFkZGluZzogMC40MmVtIDA7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMS4xZW07XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggMnB4IHJnYmEoMCwwLDAsMC40KTtcbiAgfVxufVxuXG4gIC5tdWx0aXN0ZXBfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICRzcGFjaW5nLXVuaXQtaHVnZTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuZ3JpZF9faXRlbSAmOjphZnRlciB7XG4gICAgICBjb250ZW50OicnO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDEwcHgpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG4gICAgLmdyaWRfX2l0ZW06aG92ZXIgJjo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoMXB4KTtcbiAgICB9XG5cbiAgICAuZ3JpZF9faXRlbTpudGgtb2YtdHlwZSgxKSAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cDovL2UuYmNmLmNoL3RoZW1lcy9jdXN0b20vYmNmL2ltYWdlcy9iZy9pbnN0YWxsLXN0ZXAtMS0tbGFyZ2UucG5nKTtcbiAgICB9XG4gICAgLmdyaWRfX2l0ZW06bnRoLW9mLXR5cGUoMikgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGh0dHA6Ly9lLmJjZi5jaC90aGVtZXMvY3VzdG9tL2JjZi9pbWFnZXMvYmcvaW5zdGFsbC1zdGVwLTItLWxhcmdlLnBuZyk7XG4gICAgfVxuICAgIC5ncmlkX19pdGVtOm50aC1vZi10eXBlKDMpICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwOi8vZS5iY2YuY2gvdGhlbWVzL2N1c3RvbS9iY2YvaW1hZ2VzL2JnL2luc3RhbGwtc3RlcC0zLS1sYXJnZS5wbmcpO1xuICAgIH1cbiAgfSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBCUkVBRENSVU1CXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG4uI3skbmFtZXNwYWNlfWJyZWFkY3J1bWIsXG4lYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy10b3A6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy11bml0LXNtYWxsO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbiAgLmJyZWFkY3J1bWJfX2l0ZW0ge1xuICAgIGNvbG9yOiAkYWx0LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICB0cmFuc2l0aW9uOiBjb2xvciAxNTBtcyBlYXNlLWluLW91dDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgIHdpZHRoOiAwLjdlbTtcbiAgICAgIGhlaWdodDogMC43ZW07XG4gICAgICBtYXJnaW46IDAgMC4zZW0gMCAwLjFlbTtcblxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAwLjA0ZW07XG4gICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvaWNvbnMvYXJyb3ctZmF0LXJpZ2h0LnN2ZycpO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgb3BhY2l0eTogMC4zO1xuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgYSB7XG4gICAgICBjb2xvcjogJGFsdC1jb2xvcjtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtY29sb3I7XG5cbiAgICAgICAgLmxlLWNsdWIgJiB7XG4gICAgICAgICAgY29sb3I6ICRsZS1jbHViLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMQU5HVUFHRSBTV0lUQ0hFUlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLmxhbmd1YWdlLXN3aXRjaGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblxuICAubGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIGEge1xuICAgIEBleHRlbmQgJW1ldGEtbmF2aWdhdGlvbl9fbGluaztcbiAgfVxuXG4gIGxpOm50aC1vZi10eXBlKDEpIGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNGVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAwLjhlbTtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6NTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gICAgfVxuICB9XG5cbiAgbGk6bnRoLW9mLXR5cGUoMikgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjNyZW07XG4gIH1cblxufVxuXG5cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFJBSU5CT1dCQVJcbiAgVG9vayBvdmVyIGZyb20gU0hLQlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5yYWluYm93YmFyX19iYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTZweDtcbiAgcGFkZGluZzogMCAxNHB4IDAgMnB4O1xuICBtYXJnaW4tYm90dG9tOiAyLjJlbTtcblxuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAvKiBQZXJtYWxpbmsgLSB1c2UgdG8gZWRpdCBhbmQgc2hhcmUgdGhpcyBncmFkaWVudDogaHR0cDovL2NvbG9yemlsbGEuY29tL2dyYWRpZW50LWVkaXRvci8jODFjMTQ5KzAsYjZkNTQ3KzQwLGZmZGQzYys1MCxmZjNjMDArMTAwICovXG4gIGJhY2tncm91bmQ6ICM4MWMxNDk7XG4gIC8qIE9sZCBicm93c2VycyAqL1xuICAvKiBJRTkgU1ZHLCBuZWVkcyBjb25kaXRpb25hbCBvdmVycmlkZSBvZiAnZmlsdGVyJyB0byAnbm9uZScgKi9cbiAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlBL1BnbzhjM1puSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZDJsa2RHZzlJakV3TUNVaUlHaGxhV2RvZEQwaU1UQXdKU0lnZG1sbGQwSnZlRDBpTUNBd0lERWdNU0lnY0hKbGMyVnlkbVZCYzNCbFkzUlNZWFJwYnowaWJtOXVaU0krQ2lBZ1BHeHBibVZoY2tkeVlXUnBaVzUwSUdsa1BTSm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJakFsSWlCNU1UMGlNQ1VpSUhneVBTSXhNREFsSWlCNU1qMGlNQ1VpUGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJd0pTSWdjM1J2Y0MxamIyeHZjajBpSXpneFl6RTBPU0lnYzNSdmNDMXZjR0ZqYVhSNVBTSXhJaTgrQ2lBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpRd0pTSWdjM1J2Y0MxamIyeHZjajBpSTJJMlpEVTBOeUlnYzNSdmNDMXZjR0ZqYVhSNVBTSXhJaTgrQ2lBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpVd0pTSWdjM1J2Y0MxamIyeHZjajBpSTJabVpHUXpZeUlnYzNSdmNDMXZjR0ZqYVhSNVBTSXhJaTgrQ2lBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpFd01DVWlJSE4wYjNBdFkyOXNiM0k5SWlObVpqTmpNREFpSUhOMGIzQXRiM0JoWTJsMGVUMGlNU0l2UGdvZ0lEd3ZiR2x1WldGeVIzSmhaR2xsYm5RK0NpQWdQSEpsWTNRZ2VEMGlNQ0lnZVQwaU1DSWdkMmxrZEdnOUlqRWlJR2hsYVdkb2REMGlNU0lnWm1sc2JEMGlkWEpzS0NObmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0tTSWdMejRLUEM5emRtYyspO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCAjODFjMTQ5IDAlLCAjYjZkNTQ3IDM1JSwgI2ZmZGQzYyA1MCUsICNmZjNjMDAgMTAwJSk7XG4gIC8qIEZGMy42LTE1ICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICM4MWMxNDkgMCUsICNiNmQ1NDcgMzUlLCAjZmZkZDNjIDUwJSwgI2ZmM2MwMCAxMDAlKTtcbiAgLyogQ2hyb21lMTAtMjUsU2FmYXJpNS4xLTYgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjODFjMTQ5IDAlLCAjYjZkNTQ3IDM1JSwgI2ZmZGQzYyA1MCUsICNmZjNjMDAgMTAwJSk7XG4gIC8qIFczQywgSUUxMCssIEZGMTYrLCBDaHJvbWUyNissIE9wZXJhMTIrLCBTYWZhcmk3KyAqL1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjODFjMTQ5JywgZW5kQ29sb3JzdHI9JyNmZjNjMDAnLCBHcmFkaWVudFR5cGU9MSk7XG4gIC8qIElFNi04ICovXG59XG4ucmFpbmJvd2Jhcl9faW5kaWNhdG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLWxlZnQ6IDIwJTtcblxuICBiYWNrZ3JvdW5kOiAkYmFzZS1ia2ctY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG5cbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICAgIG1hcmdpbi10b3A6IDE4cHg7XG5cbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMCA4cHggMTBweCA4cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkYWx0LWNvbG9yLWxpZ2h0ZXIgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLnJhaW5ib3diYXJfX3Rvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNzJweDtcbiAgaGVpZ2h0OiAycmVtO1xuICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gIG1hcmdpbi10b3A6IDI4cHg7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFdZU0lXWUdcblxuICBUT0RPOiBBZGQgdGhvc2Ugc3R5bGluZyBhcyBhIHN0eWxlIGluIHRoZSB3eXNpd3lnLlxuICBXZSBkaWQgaXQgbGlrZSB0aGlzIHRvIGNvbnN1bWUgbGVzcyB0aW1lLlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi53eXNpd3lnIHtcbiAgdWwge1xuICAgIEBleHRlbmQgJWxpc3Q7XG4gICAgQGV4dGVuZCAlbGlzdC1zdGFja2VkO1xuICAgIEBleHRlbmQgJWxpc3QtLXByaW1hcnk7XG4gIH1cbn1cblxuLnd5c2l3eWctLWxlLWNsdWIge1xuICB1bCB7XG4gICAgQGV4dGVuZCAlbGlzdDtcbiAgICBAZXh0ZW5kICVsaXN0LXN0YWNrZWQ7XG4gICAgQGV4dGVuZCAlbGlzdC0tbGUtY2x1YjtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFNNQVJUQkFOTkVSXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnNtYXJ0YmFubmVyLWFuZHJvaWQge1xuICBib3gtc2hhZG93OiBub25lO1xuICBsaW5lLWhlaWdodDogNzhweDtcbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1kYXJrO1xuXG4gIC5zbWFydGJhbm5lci1idXR0b24ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGJ0bi1ib3JkZXItcmFkaXVzO1xuICAgIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkYnRuLXByaW1hcnktYmtnLWNvbG9yO1xuICB9XG5cbiAgLnNtYXJ0YmFubmVyLWJ1dHRvbi10ZXh0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgLnNtYXJ0YmFubmVyLWluZm8sXG4gIC5zbWFydGJhbm5lci1jbG9zZSB7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuc21hcnRiYW5uZXItY2xvc2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEZMWU9VVFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi4jeyRuYW1lc3BhY2V9Zmx5b3V0X19jb250YWluZXIge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC42cyBlYXNlLWluLW91dCwgYm90dG9tIDgwMG1zIGVhc2UtaW4tb3V0O1xuICBib3gtc2hhZG93OiAkZmx5b3V0LXNoYWRvdztcbiAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZS1nbG9iYWw7XG5cbiAgd2lsbC1jaGFuZ2U6IGhlaWdodCwgYm90dG9tO1xuXG4gIGRpc3BsYXk6IG5vbmU7IC8vIFdpbGwgYmUgc2hvd24gY29uZGl0aW9uYWxseSwgbGF0ZXIuXG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMzYlO1xuICB6LWluZGV4OiA4MDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3ItZGVmYXVsdDtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMCAxcHggMXB4O1xuICBwYWRkaW5nLWJvdHRvbTogJGZseW91dC10b2dnbGVidXR0b24taGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuXG4gIGhlaWdodDogJGZseW91dC1wYW5lbC1taW4taGVpZ2h0O1xuXG4gICYucHJlcGFyZS1oaWRpbmcge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgJi5pcy1oaWRkZW4ge1xuICAgIGJvdHRvbTogMHB4O1xuICAgIGhlaWdodDogJGZseW91dC10b2dnbGVidXR0b24taGVpZ2h0ICogMjtcblxuICAgIC5mbHlvdXRfX3RvZ2dsZV9fYnV0dG9uIHtcbiAgICAgIGhlaWdodDogJGZseW91dC10b2dnbGVidXR0b24taGVpZ2h0ICogMjtcbiAgICB9XG4gIH1cbiAgJi5qcy1wcm9jZXNzZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuXG4gIC8vIFNob3cgb25seSBvbiBiaWcgZW5vdWdoIHNjcmVlbnMuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtaW4taGVpZ2h0OiA2MDBweCkge1xuICAgIGh0bWwuanMgJiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1mbHlvdXRfX25hdiB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB6LWluZGV4OiA4MTA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6ICRmbHlvdXQtd2lkdGg7XG5cbiAgJjpob3ZlciwgLmZseW91dC1pcy1vcGVuICYge1xuICAgIC5mbHlvdXRfX25hdl9fYnV0dG9uIHtcbiAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICB9XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1mbHlvdXRfX25hdl9faXRlbSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3ItZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgd2lkdGg6ICRmbHlvdXQtd2lkdGg7XG59XG5cbi4jeyRuYW1lc3BhY2V9Zmx5b3V0X19uYXZfX2J1dHRvbiB7XG4gIEBpbmNsdWRlIHN0cmlwLWJ1dHRvbigpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRmbHlvdXQtYnV0dG9uLXBhZGRpbmdzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjBweDtcbiAgei1pbmRleDogODIwO1xuXG4gIC8vIEJlZm9yZSBhbmQgYWZ0ZXIgbWFrZSB0aGUgbGl0dGxlIFwiYm9yZGVyLWFycm93XCIuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA3cHggMCA3cHggN3B4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC03cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDA7XG4gICAgei1pbmRleDogODIyO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGFsdC1jb2xvci1saWdodGVzdDtcbiAgfVxuXG4gIC8vIFwiQm9yZGVyLWFycm93XCIgdmlzaWJsZS5cbiAgJi5hY3RpdmUge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogLTFweDtcbiAgICB9XG5cbiAgfVxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiA4MjE7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1mbHlvdXRfX2J1dHRvbl9faWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwIGF1dG8gNHB4O1xufVxuXG4uI3skbmFtZXNwYWNlfWZseW91dF9fYnV0dG9uX190aXRsZSxcbi4jeyRuYW1lc3BhY2V9Zmx5b3V0X190b2dnbGVfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi4jeyRuYW1lc3BhY2V9Zmx5b3V0X190b2dnbGVfX2J1dHRvbiB7XG4gIEBpbmNsdWRlIHN0cmlwLWJ1dHRvbigpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuXG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiAkYWx0LWNvbG9yLWxpZ2h0ZXN0O1xuICBoZWlnaHQ6ICRmbHlvdXQtdG9nZ2xlYnV0dG9uLWhlaWdodDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDgyMDtcblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBlYXNlLWluLW91dCwgaGVpZ2h0IDAuNnMgZWFzZS1pbi1vdXQ7XG5cbiAgLmlzLWhpZGRlbiAmIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZS1nbG9iYWwpIHJvdGF0ZVooMTgwZGVnKSByb3RhdGVZKDE4MGRlZyk7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9Zmx5b3V0X19wYW5lbCB7XG4gIGJveC1zaGFkb3c6ICRmbHlvdXQtc2hhZG93O1xuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1zcGVlZC1zbG93ICR0cmFuc2l0aW9uLXRpbWluZy1mbHlvdXQ7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvci1kZWZhdWx0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTFweDtcbiAgcmlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAkZmx5b3V0LXBhbmVsLXdpZHRoO1xuICB6LWluZGV4OiA4MTA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMC43NXJlbSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgbWluLWhlaWdodDogJGZseW91dC1wYW5lbC1taW4taGVpZ2h0O1xuICBmb250LXNpemU6ICRtYXgtZm9udC1zaXplLXNtYWxsO1xuXG4gIC5tZHotbm8tZmxleGJveCAmIHtcbiAgICBtaW4taGVpZ2h0OiAzNjBweDtcbiAgfVxuICAuZGlzcGxheWVkICsgJiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICAuYWN0aXZlICsgJiB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIC8vIFRoZSBvcGVuaW5nIG9uZSBpcyBhbHdheXMgb3ZlciB0aGUgY2xvc2luZyBvbmUuXG4gICAgei1pbmRleDogODExO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuXG5cbiAgLmdyaWQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4gIH1cblxuICAuZ3JpZC0tdGlnaHQge1xuICAgIC5ib3gge1xuICAgICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1sYXJnZSAkc3BhY2luZy11bml0LXNtYWxsO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDFweCAwIDA7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgICAgICBwYWRkaW5nLXRvcDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmRhdGUtZGlzcGxheS1zaW5nbGUge1xuICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gIH1cblxuICAubGlzdC1jb21wYWN0IHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAwIDAgJHNwYWNpbmctdW5pdC1kZWZhdWx0IDA7XG4gICAgfVxuICB9XG59XG5cblxuLiN7JG5hbWVzcGFjZX1mbHlvdXRfX3BhbmVsX19oZWFkZXIge1xuICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXNtYWxsO1xufVxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgU1BJTk5FUlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLmFqYXgtcHJvZ3Jlc3MtZnVsbHNjcmVlbiB7XG4gIHdpZHRoOiAzZW07XG4gIGhlaWdodDogM2VtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOTgwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgb3BhY2l0eTogMTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICB0b3A6IDYwMHB4O1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgdG9wOiA4MDBweDtcbiAgfVxuXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAycHggMHB4ICRzaGFkb3ctY29sb3I7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDowO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlci10b3A6ICAgICAwLjFlbSBzb2xpZCB0cmFuc3BhcmVudGl6ZSgkYnJhbmQtY29sb3IsIDAuOSk7XG4gICAgYm9yZGVyLXJpZ2h0OiAgIDAuMWVtIHNvbGlkIHRyYW5zcGFyZW50aXplKCRicmFuZC1jb2xvciwgMC41KTtcbiAgICBib3JkZXItYm90dG9tOiAgMC4xZW0gc29saWQgdHJhbnNwYXJlbnRpemUoJGJyYW5kLWNvbG9yLCAwLjIpO1xuICAgIGJvcmRlci1sZWZ0OiAgICAwLjFlbSBzb2xpZCB0cmFuc3BhcmVudGl6ZSgkYnJhbmQtY29sb3IsIDApO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIGFuaW1hdGlvbjogcm90YXRpb24gLjRzIGluZmluaXRlIGxpbmVhcjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0aW9uIHtcbiAgMCUgeyAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwMDBkZWcpOyB9XG4gIDU1JSB7ICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAxMDAlIHsgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBDSEFSVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qKlxuICogY29sb3IgbGVnZW5kc1xuICovXG5cbi4jeyRuYW1lc3BhY2V9Y29sb3ItbGVnZW5kLFxuJWNvbG9yLWxlZ2VuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDFlbTtcbiAgaGVpZ2h0OiAxZW07XG4gIG1hcmdpbi1yaWdodDogMC4yNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC4xNWVtO1xufVxuXG4uY29sb3ItbGVnZW5kLS1icmFuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvcjtcbn1cbi5jb2xvci1sZWdlbmQtLWJyYW5kLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3ItZGFyaztcbn1cbi5jb2xvci1sZWdlbmQtLWFsdC1saWdodGVzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG59XG4uY29sb3ItbGVnZW5kLS1hbHQtbGlnaHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlcjtcbn1cbi5jb2xvci1sZWdlbmQtLWFsdC1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHQ7XG59XG4uY29sb3ItbGVnZW5kLS1hbHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yO1xufVxuLmNvbG9yLWxlZ2VuZC0tYWx0LWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG59XG4uY29sb3ItbGVnZW5kLS1hbHQtZGFya2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1kYXJrZXI7XG59XG4uY29sb3ItbGVnZW5kLS1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlci1jb2xvci1kZWZhdWx0O1xufVxuLmNvbG9yLWxlZ2VuZC0tbGUtY2x1YiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsZS1jbHViLWNvbG9yO1xufVxuLmNvbG9yLWxlZ2VuZC0tbGUtY2x1Yi1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxlLWNsdWItY29sb3ItZGFyaztcbn1cblxuLyoqXG4gKiBkb251dFxuICovXG5cbiAuZG9udXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxNmVtO1xuICBtaW4taGVpZ2h0OiAxMGVtO1xuICBtYXJnaW46IDAgYXV0bztcbiB9XG5cblxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgUElMTFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucGlsbCB7XG4gIG1pbi13aWR0aDogMS42ZW07XG4gIHBhZGRpbmc6IDAuNGVtIDAuMjVlbSAwLjI1ZW07XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0wLjVlbTtcbiAgcmlnaHQ6IC0wLjc1ZW07XG4gIHotaW5kZXg6IDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlc3Q7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjllbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGFsdC1jb2xvci1saWdodGVzdDtcbiAgYm9yZGVyLXJhZGl1czogMC44ZW07XG5cbiAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggcmdiYSgwLDAsMCwwLjI1KTtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDAuNmVtO1xuICB9XG59XG5cbi5waWxsLS1tZW51IHtcbiAgdG9wOiAwLjFlbTtcbiAgcmlnaHQ6IC0xLjVlbTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGT1JNIElORk8gQkxPQ0tcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi5wYXJhZ3JhcGgtLXR5cGUtLXBnLWJsb2NrID4gY29udGFpbmVyIHtcblxufSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGSUxURVJTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmZvcm0taXRlbS1yYWRpby1jaGVja2JveC0tYXMtZmlsdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jdmlld3MtZXhwb3NlZC1mb3JtLWJyYW5jaGVzLWxpc3Qge1xuICBAZXh0ZW5kICVncmlkO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi1ib3R0b206IDM4cHg7XG4gIH1cblxuICAuZm9ybS1pdGVtLWZpZWxkLWJyYW5jaC1lci1kaXN0cmljdC10YXJnZXQtaWQsXG4gIC5mb3JtLWdyb3VwLS1jaGVja2JveC13cmFwcGVyIHtcbiAgICBAZXh0ZW5kICVncmlkX19pdGVtO1xuICB9XG5cbiAgLmZvcm0taXRlbS1maWVsZC1icmFuY2gtZXItZGlzdHJpY3QtdGFyZ2V0LWlkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHdpZHRoOiAyMiU7XG4gICAgfVxuXG4gICAgc2VsZWN0IHtcbiAgICAgIEBleHRlbmQgJWJ0bjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nOiAkc3BhY2luZy11bml0LXRpbnkgKyAxcHg7XG5cbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2Fycm93LWRvd24uc3ZnJyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTYlIGNlbnRlcjtcblxuICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuXG4gICAgICAmOjotbXMtZXhwYW5kIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDkzJSBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tZ3JvdXAtLWNoZWNrYm94LXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICAgIHdpZHRoOiA3OCU7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0taXRlbS1yYWRpby1jaGVja2JveC0tYXMtZmlsdGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICAuZm9ybS1jaGVja2JveGVzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICA+IGRpdiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNQVBcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uI3skbmFtZXNwYWNlfW1hcCxcbiVtYXAge1xuXG59XG5cbi4jeyRuYW1lc3BhY2V9bWFwX2Rpc3BsYXktdG9nZ2xlLXdyYXBwZXIsXG4lbWFwX2Rpc3BsYXktdG9nZ2xlLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIG1hcmdpbi1ib3R0b206IDU1cHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xuICB9XG59XG5cbi4jeyRuYW1lc3BhY2V9bWFwX2Rpc3BsYXktdG9nZ2xlLXdyYXBwZXItLW9wZW4sXG4lbWFwX2Rpc3BsYXktdG9nZ2xlLXdyYXBwZXItLW9wZW4ge1xuICBtYXJnaW4tYm90dG9tOiAxNTBweDtcbn1cblxuLiN7JG5hbWVzcGFjZX1tYXBfX2NvbnRlbnQsXG4lbWFwX19jb250ZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiA4MDBweDtcbiAgbWFyZ2luLXRvcDogLTExMHB4O1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy11bml0LWh1Z2U7XG59XG5cbi4jeyRuYW1lc3BhY2V9bWFwX19jb250ZW50LS1jb2xsYXBzZWQsXG4lbWFwX19jb250ZW50LS1jb2xsYXBzZWQge1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi4jeyRuYW1lc3BhY2V9bWFwX19pbmZvYm94LFxuJW1hcF9faW5mb2JveCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDMwMHB4O1xuICBsZWZ0OiAtMzAwcHg7XG4gIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICBtYXJnaW4tdG9wOiAtMzVweDtcbiAgcGFkZGluZzogJGdyaWQtc3BhY2luZy11bml0LXRpbnk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKCRhbHQtY29sb3ItbGlnaHRlc3QsIDAuMSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3ItZGVmYXVsdDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm94LXNoYWRvdzogJGZseW91dC1zaGFkb3c7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMsIHRyYW5zZm9ybSAyMDBtcztcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gIH1cbn1cblxuLiN7JG5hbWVzcGFjZX1tYXBfX2luZm9ib3gtLXZpc2libGUsXG4lbWFwX19pbmZvYm94LS12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgbGVmdDogJGdyaWQtc3BhY2luZy11bml0LXRpbnk7XG59XG5cbi4jeyRuYW1lc3BhY2V9bWFwX19pbmZvYm94LS1icmFuY2gsXG4lbWFwX19pbmZvYm94LS1icmFuY2gge1xuICAubG9jYXRpb24tdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBUT0RPOiBtb3ZlIHRvIGEgZGVkaWNhdGVkIGJveCB2YXJpYW50XG4gIC5ib3gge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGRUFUVVJFU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5mZWF0dXJlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAwO1xufVxuXG4gIC5mZWF0dXJlIHtcblxuICAgIC5jb250YWluZXIge1xuICAgICAgcGFkZGluZy10b3A6IDMwdmg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzB2aDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSAgIGFuZCAgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpICB7IC8vIDc2OHB4OiBwaG9uZSBsYW5kc2NhcGVcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAkZmVhdHVyZS1oZWlnaHQtLWhhbmR5LWxhbmRzY2FwZTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7IC8vIDEwMjRweCBpcGFkIGxhbmRzY2FwZSwgZGVza3RvcHNcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAkZmVhdHVyZS1oZWlnaHQtLWRlc2t0b3A7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgIGFuZCAgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkgIHsgLy8gNzY4cHg6IGlwYWQgcG9ydHJhaXRcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiAkZmVhdHVyZS1oZWlnaHQtLXRhYmxldDtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChtaW4taGVpZ2h0OiAxMjAwcHgpICBhbmQgIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSAgeyAvLyBiaWctc2NyZWVucywgbGFyZ2UgaGVpZ2h0XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgbWluLWhlaWdodDogJGZlYXR1cmUtaGVpZ2h0LS1kZXNrdG9wLWxhcmdlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAgIC5mZWF0dXJlX19jb250ZW50IHtcbiAgICAgIEBleHRlbmQgLnYtYWxpZ247XG5cbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmVhdHVyZXNfX2ltYWdlcyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgICAucGhvbmUge1xuXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwOi8vZS5iY2YuY2gvdGhlbWVzL2N1c3RvbS9iY2YvaW1hZ2VzL2JnL3Bob25lLnBuZyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuXG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgd2lkdGg6ICRwaG9uZS13aWR0aC0taGFuZHktbGFuZHNjYXBlO1xuICAgICAgICBwYWRkaW5nLXRvcDogJHBob25lLXdpZHRoLS1oYW5keS1sYW5kc2NhcGUgKiAkcGhvbmUtcmF0aW87XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6ICRwaG9uZS1vZmZzZXQgO1xuICAgICAgICByaWdodDogM3Z3O1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgICAgcmlnaHQ6IDE1dnc7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHsgIC8vIGRlc2t0b3BcbiAgICAgICAgICB3aWR0aDogJHBob25lLXdpZHRoLS1kZXNrdG9wO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAkcGhvbmUtd2lkdGgtLWRlc2t0b3AgKiAkcGhvbmUtcmF0aW87XG4gICAgICAgICAgcmlnaHQ6IDE1dnc7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7ICAvLyB0YWJsZXQgdmVydGljYWxcbiAgICAgICAgICB3aWR0aDogJHBob25lLXdpZHRoLS10YWJsZXQ7XG4gICAgICAgICAgcGFkZGluZy10b3A6ICRwaG9uZS13aWR0aC0tdGFibGV0ICogJHBob25lLXJhdGlvO1xuICAgICAgICAgIHJpZ2h0OiA4dnc7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi1oZWlnaHQ6IDEyMDBweCkgIGFuZCAgKG1pbi13aWR0aDogMTQwMHB4KSAgeyAvLyBiaWctc2NyZWVuc1xuICAgICAgICAgIHJpZ2h0OiAyMHZ3O1xuICAgICAgICB9XG5cblxuXG4gICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMTJweCAxMnB4IDdweCByZ2JhKDAsMCwwLDAuNSkpO1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMwMG1zIGVhc2Utb3V0O1xuXG4gICAgICAgICY6OmJlZm9yZSAsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB3aWR0aDogNHZoO1xuICAgICAgICAgIGhlaWdodDogNHZoO1xuXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMS44dmg7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zO1xuICAgICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc3RpY2stdG8tY2VudGVyLS1pcy1vdmVyOjpiZWZvcmUsXG4gICAgICAgICYuc3RpY2stdG8tY2VudGVyLS1pcy1vdmVyOjphZnRlciB7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zdGljay10by1jZW50ZXItLWlzLW92ZXI6OmFmdGVyIHtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6IDEwMG1zO1xuICAgICAgICB9XG4gICAgICB9XG5cblxuXG5cbkBrZXlmcmFtZXMgZmxhc2gge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGUoMSk7XG4gIH1cbiAgOTAlIHtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlKDUpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlKDQpO1xuICB9XG59XG5cblxuLnN0aWNrLXRvLWNlbnRlcixcbiVzdGljay10by1jZW50ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogKDEwMCAtICRwaG9uZS13aWR0aC0taGFuZHktbGFuZHNjYXBlICogMikgLyAyIDtcblxuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNDAwbXMgY3ViaWMtYmV6aWVyKDAuNzg1LCAwLjEzNSwgMC4xNSwgMC44Nik7XG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgeyAvLyAxMDI0cHggaXBhZCBsYW5kc2NhcGUsIGRlc2t0b3BzXG4gICAgdG9wOiAoMTAwIC0gJHBob25lLXdpZHRoLS1kZXNrdG9wICogMikgLyAyO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWF4KSBhbmQgIChvcmllbnRhdGlvbjogcG9ydHJhaXQpICB7IC8vIDc2OHB4OiBpcGFkIHBvcnRyYWl0XG4gICAgdG9wOiAoMTAwIC0gJHBob25lLXdpZHRoLS10YWJsZXQgKiAyKSAvIDI7XG4gIH1cbn1cblxuLnN0aWNrLXRvLWNlbnRlci0taXMtb3ZlcixcbiVzdGljay10by1jZW50ZXItLWlzLW92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuXG4gIHRvcDogJG4tZmVhdHVyZXMgKiAkZmVhdHVyZS1oZWlnaHQtLWhhbmR5LWxhbmRzY2FwZSAtICRwaG9uZS13aWR0aC0tZGVza3RvcCAqICRwaG9uZS1yYXRpbyAtICRwaG9uZS1vZmZzZXQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7IC8vIDEwMjRweCBpcGFkIGxhbmRzY2FwZSwgZGVza3RvcHNcbiAgICB0b3A6ICRuLWZlYXR1cmVzICogJGZlYXR1cmUtaGVpZ2h0LS1kZXNrdG9wIC0gJHBob25lLXdpZHRoLS1kZXNrdG9wICogJHBob25lLXJhdGlvIC0gJHBob25lLW9mZnNldDsgLy8gcmVsYXRlZCB0byAuZmVhdHVyZSAuY29udGFpbmVyIGluIF9mZWF0dXJlcy5zY3NzXG4gIH1cblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1tYXgpIGFuZCAgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkgIHsgLy8gNzY4cHg6IGlwYWQgcG9ydHJhaXRcbiAgICB0b3A6ICRuLWZlYXR1cmVzICogJGZlYXR1cmUtaGVpZ2h0LS10YWJsZXQgLSAkcGhvbmUtd2lkdGgtLXRhYmxldCAqICRwaG9uZS1yYXRpbyAtICRwaG9uZS1vZmZzZXQ7IC8vIHJlbGF0ZWQgdG8gLmZlYXR1cmUgLmNvbnRhaW5lciBpbiBfZmVhdHVyZXMuc2Nzc1xuICB9XG5cbiAgQG1lZGlhIChtaW4taGVpZ2h0OiAxMjAwcHgpICBhbmQgIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSAgeyAvLyBiaWctc2NyZWVucywgbGFyZ2UgaGVpZ2h0XG4gICAgdG9wOiAkbi1mZWF0dXJlcyAqICRmZWF0dXJlLWhlaWdodC0tZGVza3RvcC1sYXJnZSAtICRwaG9uZS13aWR0aC0tZGVza3RvcCAqICRwaG9uZS1yYXRpbyAtICRwaG9uZS1vZmZzZXQ7IC8vIHJlbGF0ZWQgdG8gLmZlYXR1cmUgLmNvbnRhaW5lciBpbiBfZmVhdHVyZXMuc2Nzc1xuICB9XG59XG5cbi8vIHJlbWFyazogZG8gbm90IHNpbXBsaWZ5IHRoZSBmb2xsb3dpbmc6XG4uZmVhdHVyZS0tMCB7dHJhbnNmb3JtOiByb3RhdGUoMGRlZykgIDsgICBmaWx0ZXI6IGRyb3Atc2hhZG93KCAxMnB4IDEycHggN3B4IHJnYmEoMCwwLDAsMC41KSk7O31cbi5mZWF0dXJlLS0xIHt0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSAgOyAgIGZpbHRlcjogZHJvcC1zaGFkb3coIDEycHggMTJweCA3cHggcmdiYSgwLDAsMCwwLjUpKTs7fVxuLmZlYXR1cmUtLTIge3RyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7ICAgZmlsdGVyOiBkcm9wLXNoYWRvdygtMTJweCAxMnB4IDdweCByZ2JhKDAsMCwwLDAuNSkpOzt9XG4uZmVhdHVyZS0tMyB7dHJhbnNmb3JtOiByb3RhdGUoMGRlZykgIDsgICBmaWx0ZXI6IGRyb3Atc2hhZG93KCAxMnB4IDEycHggN3B4IHJnYmEoMCwwLDAsMC41KSk7O31cbi5mZWF0dXJlLS00IHt0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSAgOyAgIGZpbHRlcjogZHJvcC1zaGFkb3coIDEycHggMTJweCA3cHggcmdiYSgwLDAsMCwwLjUpKTs7fVxuXG5cblxuLyogZmFkZSBpbWFnZSBpbiBhZnRlciBsb2FkICovXG4ubGF6eWxvYWQsXG4ubGF6eWxvYWRpbmcge1xuICAgIG9wYWNpdHk6IDA7XG59XG4ubGF6eWxvYWRlZCB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA1MDBtcztcbiAgICBvcGFjaXR5OiAxO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFNMSUNLIFNMSURFUiBERUZBVUxUUyxcbiAgU0VFIEJFTE9XIEZPUiBDVVNUT00gU0VUVElOR1NcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXJcbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWxpc3RcbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG4uc2xpY2stbGlzdDpmb2N1c1xue1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG4uc2xpY2stbGlzdC5kcmFnZ2luZ1xue1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdFxue1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFja1xue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSxcbi5zbGljay10cmFjazphZnRlclxue1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuXG4gICAgY29udGVudDogJyc7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXJcbntcbiAgICBjbGVhcjogYm90aDtcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFja1xue1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlXG57XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG59XG5bZGlyPSdydGwnXSAuc2xpY2stc2xpZGVcbntcbiAgICBmbG9hdDogcmlnaHQ7XG59XG4uc2xpY2stc2xpZGUgaW1nXG57XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWdcbntcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZ1xue1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZVxue1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlXG57XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZVxue1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5cblxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBTTElDSyBTTElERVIgQ1VTVE9NIFNFVFRJTkdTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gIHdpZHRoOiA4NiU7XG4gIGhlaWdodDogNzYuMyU7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEyJTtcbiAgbGVmdDogNy40JTtcbiAgei1pbmRleDogMjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6IDA7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcblxuICAmIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSBwcmV2LiBhbmQgbmV4dCBidXR0b24gYXMgYXJyb3cuXG4gIC5zbGljay1wcmV2LFxuICAuc2xpY2stbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICBib3JkZXI6IG5vbmU7XG5cbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgNTAlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAuc2xpY2stcHJldiB7XG4gICAgbGVmdDogMDtcblxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ljb25zL2NoZXZyb24tLWxlZnQuc3ZnJyk7XG4gIH1cblxuICAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG5cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9jaGV2cm9uLS1yaWdodC5zdmcnKTtcbiAgfVxufVxuXG4gIC5zbGljay1zbGlkZXJfX2l0ZW0ge1xuICAgIHdpZHRoOiAyOXZoO1xuICAgIGhlaWdodDogNDQuM3ZoO1xuICB9XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTEUgQ0xVQlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cblxuLmxlLWNsdWIge1xuXG4gIC8vIGRlZmF1bHRzOlxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRsZS1jbHViLWNvbG9yLCAwLjQpO1xuXG4gIGE6Zm9jdXMge1xuICAgIG91dGxpbmUtY29sb3I6ICRsZS1jbHViLWNvbG9yO1xuICB9XG5cbiAgLmhlcm9fX3RpdGxlLFxuICAuaGVhZGluZy0tcHJpbWFyeSB7XG4gICAgY29sb3I6ICRsZS1jbHViLWNvbG9yO1xuICB9XG5cblxuICAvL3N0cnVjdHVyZTpcbiAgLmhlcm8tLWxhbmRzY2FwZV9fY29udGFpbmVye1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0LXNtYWxsO1xuICAgICAgcGFkZGluZy1yaWdodDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy11bml0LXNtYWxsO1xuICAgIH1cbiAgfVxuXG4gIC8vIG5hdmlnYXRpb25zOlxuXG4gIC5saW5rLS1sZS1jbHViIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsZS1jbHViLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBjb2xvcjogJGFsdC1jb2xvci1saWdodGVzdDtcbiAgfVxuXG4gIC5uYXZpZ2F0aW9uLXByaW1hcnlfX21lbnUtaXRlbS0tYWN0aXZlOmFmdGVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbGUtY2x1Yi1jb2xvcjtcbiAgfVxuXG4gIC5uYXZpZ2F0aW9uLXNlY29uZGFyeSB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGxlLWNsdWItY29sb3I7XG4gIH1cblxuICAubmF2aWdhdGlvbi10ZXJ0aWFyeV9faGVhZGluZzpob3ZlcixcbiAgLm5hdmlnYXRpb24tcXVhdGVybmFyeV9faGVhZGluZzpob3ZlciB7XG4gICAgY29sb3I6ICRsZS1jbHViLWNvbG9yO1xuICB9XG5cbiAgLnRhYnMtLWRlZmF1bHQ6OmFmdGVyLFxuICAudGFic19faXRlbV9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxlLWNsdWItY29sb3I7XG4gIH1cblxuICAuY291bnRkb3duIHtcbiAgICBjb2xvcjogJGxlLWNsdWItY29sb3I7XG4gIH1cblxuICAucGFyYWdyYXBoLS10eXBlLS1wZy1hZGRpdGlvbmFsLXRleHQge1xuICAgIGNvbG9yOiAkbXV0ZWQtY29sb3I7XG4gIH1cblxuICAuYnJlYWRjcnVtYl9fbGluazpob3ZlciB7XG4gICAgY29sb3I6ICRsZS1jbHViLWNvbG9yO1xuICB9XG59XG4gIC5tZXRhLW5hdmlnYXRpb24td3JhcHBlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxlLWNsdWItY29sb3I7XG4gIH1cblxuIl19 */
