@charset "UTF-8";
/**
 * Tools
 */
/*----------------------------------------*  MIXINS
\*----------------------------------------*/
/**
 * Return font-size and line-height for a font.
 * When adding the $force parameter, it will add !important
 * in order to override it HARD.
 */
/*----------------------------------------*  FUNCTIONS
\*----------------------------------------*/
/**
 * Convert number to px value
 */
/**
 * 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
 */
/**
 * Settings
 */
/*----------------------------------------*  GLOBAL SETTINGS

  Check the following page for details:
  kanbasu.liip.ch/settings.html
\*----------------------------------------*/
/**
 * Colors
 */
/**
 * Typography
 */
/**
 * Spacings
 */
/**
 * Responsiveness
 */
/**
 * Miscellaneous
 */
/*----------------------------------------*  COMPONENTS
\*----------------------------------------*/
/**
 * Buttons
 */
/**
 * Forms
 */
/**
 * Lists
 */
/**
 * Box
 */
/**
 * Grid
 */
/**
 * Widths
 */
/**
 * Media
 */
/**
 * Media responsive
 */
/**
 * Mosaic responsive
 */
/**
 * Layout
 */
/**
 * Colors
 */
/**
 * Spacing & Typography
 */
/**
 * Shadows
 */
/**
 * Transitions
 */
/*----------------------------------------*  Z-INDEX
\*----------------------------------------*/
/**
 * 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; }

/**
 * Swiper 3.4.2 - Custom Build
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * 
 * Included modules: 
 * 
 * http://www.idangero.us/swiper/
 * 
 * Copyright 2017, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 * 
 * Licensed under MIT
 * 
 * Released on: May 23, 2017
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  z-index: 1; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -ms-flex-direction: column;
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  transform: translate3d(0, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex: 0 0 auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  -ms-flex-align: start;
  align-items: flex-start;
  transition-property: transform,height; }

.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat; }

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: .3s;
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%; }

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: .2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 5px 0;
  display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 5px; }

.swiper-pagination-progress {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progress .swiper-pagination-progressbar {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progress {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progress {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progress.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }

.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar {
  background: #fff; }

.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar {
  background: #000; }

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

/**
 * Animations
 */
/*----------------------------------------*  ROTATE
\*----------------------------------------*/
/**
 * Counterclockwise
 */
@keyframes rotate-counterclockwise {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(-360deg); } }

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

/*----------------------------------------*  TABLE
\*----------------------------------------*/
table {
  width: 100%;
  margin-bottom: 3rem;
  border-collapse: collapse; }

caption {
  text-align: left;
  font-style: italic; }

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

th,
td {
  padding: 1rem; }

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

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

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

@media (min-width: 88.5em) {
  .xl-text-left {
    text-align: left; }
  .xl-text-center {
    text-align: center; }
  .xl-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: 3rem !important; }

.mrgt {
  margin-top: 3rem !important; }

.mrgr {
  margin-right: 3rem !important; }

.mrgb {
  margin-bottom: 3rem !important; }

.mrgl {
  margin-left: 3rem !important; }

.mrgh {
  margin-right: 3rem !important;
  margin-left: 3rem !important; }

.mrgv {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important; }

.mrg-- {
  margin: 1rem !important; }

.mrgt-- {
  margin-top: 1rem !important; }

.mrgr-- {
  margin-right: 1rem !important; }

.mrgb-- {
  margin-bottom: 1rem !important; }

.mrgl-- {
  margin-left: 1rem !important; }

.mrgh-- {
  margin-right: 1rem !important;
  margin-left: 1rem !important; }

.mrgv-- {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important; }

.mrg- {
  margin: 2rem !important; }

.mrgt- {
  margin-top: 2rem !important; }

.mrgr- {
  margin-right: 2rem !important; }

.mrgb- {
  margin-bottom: 2rem !important; }

.mrgl- {
  margin-left: 2rem !important; }

.mrgh- {
  margin-right: 2rem !important;
  margin-left: 2rem !important; }

.mrgv- {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important; }

.mrg\+ {
  margin: 5rem !important; }

.mrgt\+ {
  margin-top: 5rem !important; }

.mrgr\+ {
  margin-right: 5rem !important; }

.mrgb\+ {
  margin-bottom: 5rem !important; }

.mrgl\+ {
  margin-left: 5rem !important; }

.mrgh\+ {
  margin-right: 5rem !important;
  margin-left: 5rem !important; }

.mrgv\+ {
  margin-top: 5rem !important;
  margin-bottom: 5rem !important; }

.mrg\+\+ {
  margin: 7rem !important; }

.mrgt\+\+ {
  margin-top: 7rem !important; }

.mrgr\+\+ {
  margin-right: 7rem !important; }

.mrgb\+\+ {
  margin-bottom: 7rem !important; }

.mrgl\+\+ {
  margin-left: 7rem !important; }

.mrgh\+\+ {
  margin-right: 7rem !important;
  margin-left: 7rem !important; }

.mrgv\+\+ {
  margin-top: 7rem !important;
  margin-bottom: 7rem !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: 3rem !important; }

.pdgt {
  padding-top: 3rem !important; }

.pdgr {
  padding-right: 3rem !important; }

.pdgb {
  padding-bottom: 3rem !important; }

.pdgl {
  padding-left: 3rem !important; }

.pdgh {
  padding-right: 3rem !important;
  padding-left: 3rem !important; }

.pdgv {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important; }

.pdg-- {
  padding: 1rem !important; }

.pdgt-- {
  padding-top: 1rem !important; }

.pdgr-- {
  padding-right: 1rem !important; }

.pdgb-- {
  padding-bottom: 1rem !important; }

.pdgl-- {
  padding-left: 1rem !important; }

.pdgh-- {
  padding-right: 1rem !important;
  padding-left: 1rem !important; }

.pdgv-- {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important; }

.pdg- {
  padding: 2rem !important; }

.pdgt- {
  padding-top: 2rem !important; }

.pdgr- {
  padding-right: 2rem !important; }

.pdgb- {
  padding-bottom: 2rem !important; }

.pdgl- {
  padding-left: 2rem !important; }

.pdgh- {
  padding-right: 2rem !important;
  padding-left: 2rem !important; }

.pdgv- {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important; }

.pdg\+ {
  padding: 5rem !important; }

.pdgt\+ {
  padding-top: 5rem !important; }

.pdgr\+ {
  padding-right: 5rem !important; }

.pdgb\+ {
  padding-bottom: 5rem !important; }

.pdgl\+ {
  padding-left: 5rem !important; }

.pdgh\+ {
  padding-right: 5rem !important;
  padding-left: 5rem !important; }

.pdgv\+ {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important; }

.pdg\+\+ {
  padding: 7rem !important; }

.pdgt\+\+ {
  padding-top: 7rem !important; }

.pdgr\+\+ {
  padding-right: 7rem !important; }

.pdgb\+\+ {
  padding-bottom: 7rem !important; }

.pdgl\+\+ {
  padding-left: 7rem !important; }

.pdgh\+\+ {
  padding-right: 7rem !important;
  padding-left: 7rem !important; }

.pdgv\+\+ {
  padding-top: 7rem !important;
  padding-bottom: 7rem !important; }

/*----------------------------------------*  SPACINGS RESPONSIVE
\*----------------------------------------*/
/**
 * Margins
 */
@media (min-width: 40.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: 3rem !important; }
  .sm-mrgt {
    margin-top: 3rem !important; }
  .sm-mrgr {
    margin-right: 3rem !important; }
  .sm-mrgb {
    margin-bottom: 3rem !important; }
  .sm-mrgl {
    margin-left: 3rem !important; }
  .sm-mrgh {
    margin-right: 3rem !important;
    margin-left: 3rem !important; }
  .sm-mrgv {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important; }
  .sm-mrg-- {
    margin: 1rem !important; }
  .sm-mrgt-- {
    margin-top: 1rem !important; }
  .sm-mrgr-- {
    margin-right: 1rem !important; }
  .sm-mrgb-- {
    margin-bottom: 1rem !important; }
  .sm-mrgl-- {
    margin-left: 1rem !important; }
  .sm-mrgh-- {
    margin-right: 1rem !important;
    margin-left: 1rem !important; }
  .sm-mrgv-- {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important; }
  .sm-mrg- {
    margin: 2rem !important; }
  .sm-mrgt- {
    margin-top: 2rem !important; }
  .sm-mrgr- {
    margin-right: 2rem !important; }
  .sm-mrgb- {
    margin-bottom: 2rem !important; }
  .sm-mrgl- {
    margin-left: 2rem !important; }
  .sm-mrgh- {
    margin-right: 2rem !important;
    margin-left: 2rem !important; }
  .sm-mrgv- {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important; }
  .sm-mrg\+ {
    margin: 5rem !important; }
  .sm-mrgt\+ {
    margin-top: 5rem !important; }
  .sm-mrgr\+ {
    margin-right: 5rem !important; }
  .sm-mrgb\+ {
    margin-bottom: 5rem !important; }
  .sm-mrgl\+ {
    margin-left: 5rem !important; }
  .sm-mrgh\+ {
    margin-right: 5rem !important;
    margin-left: 5rem !important; }
  .sm-mrgv\+ {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important; }
  .sm-mrg\+\+ {
    margin: 7rem !important; }
  .sm-mrgt\+\+ {
    margin-top: 7rem !important; }
  .sm-mrgr\+\+ {
    margin-right: 7rem !important; }
  .sm-mrgb\+\+ {
    margin-bottom: 7rem !important; }
  .sm-mrgl\+\+ {
    margin-left: 7rem !important; }
  .sm-mrgh\+\+ {
    margin-right: 7rem !important;
    margin-left: 7rem !important; }
  .sm-mrgv\+\+ {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important; } }

@media (min-width: 48.0625em) {
  .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: 3rem !important; }
  .md-mrgt {
    margin-top: 3rem !important; }
  .md-mrgr {
    margin-right: 3rem !important; }
  .md-mrgb {
    margin-bottom: 3rem !important; }
  .md-mrgl {
    margin-left: 3rem !important; }
  .md-mrgh {
    margin-right: 3rem !important;
    margin-left: 3rem !important; }
  .md-mrgv {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important; }
  .md-mrg-- {
    margin: 1rem !important; }
  .md-mrgt-- {
    margin-top: 1rem !important; }
  .md-mrgr-- {
    margin-right: 1rem !important; }
  .md-mrgb-- {
    margin-bottom: 1rem !important; }
  .md-mrgl-- {
    margin-left: 1rem !important; }
  .md-mrgh-- {
    margin-right: 1rem !important;
    margin-left: 1rem !important; }
  .md-mrgv-- {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important; }
  .md-mrg- {
    margin: 2rem !important; }
  .md-mrgt- {
    margin-top: 2rem !important; }
  .md-mrgr- {
    margin-right: 2rem !important; }
  .md-mrgb- {
    margin-bottom: 2rem !important; }
  .md-mrgl- {
    margin-left: 2rem !important; }
  .md-mrgh- {
    margin-right: 2rem !important;
    margin-left: 2rem !important; }
  .md-mrgv- {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important; }
  .md-mrg\+ {
    margin: 5rem !important; }
  .md-mrgt\+ {
    margin-top: 5rem !important; }
  .md-mrgr\+ {
    margin-right: 5rem !important; }
  .md-mrgb\+ {
    margin-bottom: 5rem !important; }
  .md-mrgl\+ {
    margin-left: 5rem !important; }
  .md-mrgh\+ {
    margin-right: 5rem !important;
    margin-left: 5rem !important; }
  .md-mrgv\+ {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important; }
  .md-mrg\+\+ {
    margin: 7rem !important; }
  .md-mrgt\+\+ {
    margin-top: 7rem !important; }
  .md-mrgr\+\+ {
    margin-right: 7rem !important; }
  .md-mrgb\+\+ {
    margin-bottom: 7rem !important; }
  .md-mrgl\+\+ {
    margin-left: 7rem !important; }
  .md-mrgh\+\+ {
    margin-right: 7rem !important;
    margin-left: 7rem !important; }
  .md-mrgv\+\+ {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important; } }

@media (min-width: 64.0625em) {
  .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: 3rem !important; }
  .lg-mrgt {
    margin-top: 3rem !important; }
  .lg-mrgr {
    margin-right: 3rem !important; }
  .lg-mrgb {
    margin-bottom: 3rem !important; }
  .lg-mrgl {
    margin-left: 3rem !important; }
  .lg-mrgh {
    margin-right: 3rem !important;
    margin-left: 3rem !important; }
  .lg-mrgv {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important; }
  .lg-mrg-- {
    margin: 1rem !important; }
  .lg-mrgt-- {
    margin-top: 1rem !important; }
  .lg-mrgr-- {
    margin-right: 1rem !important; }
  .lg-mrgb-- {
    margin-bottom: 1rem !important; }
  .lg-mrgl-- {
    margin-left: 1rem !important; }
  .lg-mrgh-- {
    margin-right: 1rem !important;
    margin-left: 1rem !important; }
  .lg-mrgv-- {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important; }
  .lg-mrg- {
    margin: 2rem !important; }
  .lg-mrgt- {
    margin-top: 2rem !important; }
  .lg-mrgr- {
    margin-right: 2rem !important; }
  .lg-mrgb- {
    margin-bottom: 2rem !important; }
  .lg-mrgl- {
    margin-left: 2rem !important; }
  .lg-mrgh- {
    margin-right: 2rem !important;
    margin-left: 2rem !important; }
  .lg-mrgv- {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important; }
  .lg-mrg\+ {
    margin: 5rem !important; }
  .lg-mrgt\+ {
    margin-top: 5rem !important; }
  .lg-mrgr\+ {
    margin-right: 5rem !important; }
  .lg-mrgb\+ {
    margin-bottom: 5rem !important; }
  .lg-mrgl\+ {
    margin-left: 5rem !important; }
  .lg-mrgh\+ {
    margin-right: 5rem !important;
    margin-left: 5rem !important; }
  .lg-mrgv\+ {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important; }
  .lg-mrg\+\+ {
    margin: 7rem !important; }
  .lg-mrgt\+\+ {
    margin-top: 7rem !important; }
  .lg-mrgr\+\+ {
    margin-right: 7rem !important; }
  .lg-mrgb\+\+ {
    margin-bottom: 7rem !important; }
  .lg-mrgl\+\+ {
    margin-left: 7rem !important; }
  .lg-mrgh\+\+ {
    margin-right: 7rem !important;
    margin-left: 7rem !important; }
  .lg-mrgv\+\+ {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important; } }

@media (min-width: 88.5em) {
  .xl-mrg0 {
    margin: 0 !important; }
  .xl-mrgt0 {
    margin-top: 0 !important; }
  .xl-mrgr0 {
    margin-right: 0 !important; }
  .xl-mrgb0 {
    margin-bottom: 0 !important; }
  .xl-mrgl0 {
    margin-left: 0 !important; }
  .xl-mrgh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .xl-mrgv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; }
  .xl-mrg {
    margin: 3rem !important; }
  .xl-mrgt {
    margin-top: 3rem !important; }
  .xl-mrgr {
    margin-right: 3rem !important; }
  .xl-mrgb {
    margin-bottom: 3rem !important; }
  .xl-mrgl {
    margin-left: 3rem !important; }
  .xl-mrgh {
    margin-right: 3rem !important;
    margin-left: 3rem !important; }
  .xl-mrgv {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important; }
  .xl-mrg-- {
    margin: 1rem !important; }
  .xl-mrgt-- {
    margin-top: 1rem !important; }
  .xl-mrgr-- {
    margin-right: 1rem !important; }
  .xl-mrgb-- {
    margin-bottom: 1rem !important; }
  .xl-mrgl-- {
    margin-left: 1rem !important; }
  .xl-mrgh-- {
    margin-right: 1rem !important;
    margin-left: 1rem !important; }
  .xl-mrgv-- {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important; }
  .xl-mrg- {
    margin: 2rem !important; }
  .xl-mrgt- {
    margin-top: 2rem !important; }
  .xl-mrgr- {
    margin-right: 2rem !important; }
  .xl-mrgb- {
    margin-bottom: 2rem !important; }
  .xl-mrgl- {
    margin-left: 2rem !important; }
  .xl-mrgh- {
    margin-right: 2rem !important;
    margin-left: 2rem !important; }
  .xl-mrgv- {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important; }
  .xl-mrg\+ {
    margin: 5rem !important; }
  .xl-mrgt\+ {
    margin-top: 5rem !important; }
  .xl-mrgr\+ {
    margin-right: 5rem !important; }
  .xl-mrgb\+ {
    margin-bottom: 5rem !important; }
  .xl-mrgl\+ {
    margin-left: 5rem !important; }
  .xl-mrgh\+ {
    margin-right: 5rem !important;
    margin-left: 5rem !important; }
  .xl-mrgv\+ {
    margin-top: 5rem !important;
    margin-bottom: 5rem !important; }
  .xl-mrg\+\+ {
    margin: 7rem !important; }
  .xl-mrgt\+\+ {
    margin-top: 7rem !important; }
  .xl-mrgr\+\+ {
    margin-right: 7rem !important; }
  .xl-mrgb\+\+ {
    margin-bottom: 7rem !important; }
  .xl-mrgl\+\+ {
    margin-left: 7rem !important; }
  .xl-mrgh\+\+ {
    margin-right: 7rem !important;
    margin-left: 7rem !important; }
  .xl-mrgv\+\+ {
    margin-top: 7rem !important;
    margin-bottom: 7rem !important; } }

/**
 * Paddings
 */
@media (min-width: 40.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: 3rem !important; }
  .sm-pdgt {
    padding-top: 3rem !important; }
  .sm-pdgr {
    padding-right: 3rem !important; }
  .sm-pdgb {
    padding-bottom: 3rem !important; }
  .sm-pdgl {
    padding-left: 3rem !important; }
  .sm-pdgh {
    padding-right: 3rem !important;
    padding-left: 3rem !important; }
  .sm-pdgv {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important; }
  .sm-pdg-- {
    padding: 1rem !important; }
  .sm-pdgt-- {
    padding-top: 1rem !important; }
  .sm-pdgr-- {
    padding-right: 1rem !important; }
  .sm-pdgb-- {
    padding-bottom: 1rem !important; }
  .sm-pdgl-- {
    padding-left: 1rem !important; }
  .sm-pdgh-- {
    padding-right: 1rem !important;
    padding-left: 1rem !important; }
  .sm-pdgv-- {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important; }
  .sm-pdg- {
    padding: 2rem !important; }
  .sm-pdgt- {
    padding-top: 2rem !important; }
  .sm-pdgr- {
    padding-right: 2rem !important; }
  .sm-pdgb- {
    padding-bottom: 2rem !important; }
  .sm-pdgl- {
    padding-left: 2rem !important; }
  .sm-pdgh- {
    padding-right: 2rem !important;
    padding-left: 2rem !important; }
  .sm-pdgv- {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important; }
  .sm-pdg\+ {
    padding: 5rem !important; }
  .sm-pdgt\+ {
    padding-top: 5rem !important; }
  .sm-pdgr\+ {
    padding-right: 5rem !important; }
  .sm-pdgb\+ {
    padding-bottom: 5rem !important; }
  .sm-pdgl\+ {
    padding-left: 5rem !important; }
  .sm-pdgh\+ {
    padding-right: 5rem !important;
    padding-left: 5rem !important; }
  .sm-pdgv\+ {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important; }
  .sm-pdg\+\+ {
    padding: 7rem !important; }
  .sm-pdgt\+\+ {
    padding-top: 7rem !important; }
  .sm-pdgr\+\+ {
    padding-right: 7rem !important; }
  .sm-pdgb\+\+ {
    padding-bottom: 7rem !important; }
  .sm-pdgl\+\+ {
    padding-left: 7rem !important; }
  .sm-pdgh\+\+ {
    padding-right: 7rem !important;
    padding-left: 7rem !important; }
  .sm-pdgv\+\+ {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important; } }

@media (min-width: 48.0625em) {
  .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: 3rem !important; }
  .md-pdgt {
    padding-top: 3rem !important; }
  .md-pdgr {
    padding-right: 3rem !important; }
  .md-pdgb {
    padding-bottom: 3rem !important; }
  .md-pdgl {
    padding-left: 3rem !important; }
  .md-pdgh {
    padding-right: 3rem !important;
    padding-left: 3rem !important; }
  .md-pdgv {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important; }
  .md-pdg-- {
    padding: 1rem !important; }
  .md-pdgt-- {
    padding-top: 1rem !important; }
  .md-pdgr-- {
    padding-right: 1rem !important; }
  .md-pdgb-- {
    padding-bottom: 1rem !important; }
  .md-pdgl-- {
    padding-left: 1rem !important; }
  .md-pdgh-- {
    padding-right: 1rem !important;
    padding-left: 1rem !important; }
  .md-pdgv-- {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important; }
  .md-pdg- {
    padding: 2rem !important; }
  .md-pdgt- {
    padding-top: 2rem !important; }
  .md-pdgr- {
    padding-right: 2rem !important; }
  .md-pdgb- {
    padding-bottom: 2rem !important; }
  .md-pdgl- {
    padding-left: 2rem !important; }
  .md-pdgh- {
    padding-right: 2rem !important;
    padding-left: 2rem !important; }
  .md-pdgv- {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important; }
  .md-pdg\+ {
    padding: 5rem !important; }
  .md-pdgt\+ {
    padding-top: 5rem !important; }
  .md-pdgr\+ {
    padding-right: 5rem !important; }
  .md-pdgb\+ {
    padding-bottom: 5rem !important; }
  .md-pdgl\+ {
    padding-left: 5rem !important; }
  .md-pdgh\+ {
    padding-right: 5rem !important;
    padding-left: 5rem !important; }
  .md-pdgv\+ {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important; }
  .md-pdg\+\+ {
    padding: 7rem !important; }
  .md-pdgt\+\+ {
    padding-top: 7rem !important; }
  .md-pdgr\+\+ {
    padding-right: 7rem !important; }
  .md-pdgb\+\+ {
    padding-bottom: 7rem !important; }
  .md-pdgl\+\+ {
    padding-left: 7rem !important; }
  .md-pdgh\+\+ {
    padding-right: 7rem !important;
    padding-left: 7rem !important; }
  .md-pdgv\+\+ {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important; } }

@media (min-width: 64.0625em) {
  .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: 3rem !important; }
  .lg-pdgt {
    padding-top: 3rem !important; }
  .lg-pdgr {
    padding-right: 3rem !important; }
  .lg-pdgb {
    padding-bottom: 3rem !important; }
  .lg-pdgl {
    padding-left: 3rem !important; }
  .lg-pdgh {
    padding-right: 3rem !important;
    padding-left: 3rem !important; }
  .lg-pdgv {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important; }
  .lg-pdg-- {
    padding: 1rem !important; }
  .lg-pdgt-- {
    padding-top: 1rem !important; }
  .lg-pdgr-- {
    padding-right: 1rem !important; }
  .lg-pdgb-- {
    padding-bottom: 1rem !important; }
  .lg-pdgl-- {
    padding-left: 1rem !important; }
  .lg-pdgh-- {
    padding-right: 1rem !important;
    padding-left: 1rem !important; }
  .lg-pdgv-- {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important; }
  .lg-pdg- {
    padding: 2rem !important; }
  .lg-pdgt- {
    padding-top: 2rem !important; }
  .lg-pdgr- {
    padding-right: 2rem !important; }
  .lg-pdgb- {
    padding-bottom: 2rem !important; }
  .lg-pdgl- {
    padding-left: 2rem !important; }
  .lg-pdgh- {
    padding-right: 2rem !important;
    padding-left: 2rem !important; }
  .lg-pdgv- {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important; }
  .lg-pdg\+ {
    padding: 5rem !important; }
  .lg-pdgt\+ {
    padding-top: 5rem !important; }
  .lg-pdgr\+ {
    padding-right: 5rem !important; }
  .lg-pdgb\+ {
    padding-bottom: 5rem !important; }
  .lg-pdgl\+ {
    padding-left: 5rem !important; }
  .lg-pdgh\+ {
    padding-right: 5rem !important;
    padding-left: 5rem !important; }
  .lg-pdgv\+ {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important; }
  .lg-pdg\+\+ {
    padding: 7rem !important; }
  .lg-pdgt\+\+ {
    padding-top: 7rem !important; }
  .lg-pdgr\+\+ {
    padding-right: 7rem !important; }
  .lg-pdgb\+\+ {
    padding-bottom: 7rem !important; }
  .lg-pdgl\+\+ {
    padding-left: 7rem !important; }
  .lg-pdgh\+\+ {
    padding-right: 7rem !important;
    padding-left: 7rem !important; }
  .lg-pdgv\+\+ {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important; } }

@media (min-width: 88.5em) {
  .xl-pdg0 {
    padding: 0 !important; }
  .xl-pdgt0 {
    padding-top: 0 !important; }
  .xl-pdgr0 {
    padding-right: 0 !important; }
  .xl-pdgb0 {
    padding-bottom: 0 !important; }
  .xl-pdgl0 {
    padding-left: 0 !important; }
  .xl-pdgh0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .xl-pdgv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; }
  .xl-pdg {
    padding: 3rem !important; }
  .xl-pdgt {
    padding-top: 3rem !important; }
  .xl-pdgr {
    padding-right: 3rem !important; }
  .xl-pdgb {
    padding-bottom: 3rem !important; }
  .xl-pdgl {
    padding-left: 3rem !important; }
  .xl-pdgh {
    padding-right: 3rem !important;
    padding-left: 3rem !important; }
  .xl-pdgv {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important; }
  .xl-pdg-- {
    padding: 1rem !important; }
  .xl-pdgt-- {
    padding-top: 1rem !important; }
  .xl-pdgr-- {
    padding-right: 1rem !important; }
  .xl-pdgb-- {
    padding-bottom: 1rem !important; }
  .xl-pdgl-- {
    padding-left: 1rem !important; }
  .xl-pdgh-- {
    padding-right: 1rem !important;
    padding-left: 1rem !important; }
  .xl-pdgv-- {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important; }
  .xl-pdg- {
    padding: 2rem !important; }
  .xl-pdgt- {
    padding-top: 2rem !important; }
  .xl-pdgr- {
    padding-right: 2rem !important; }
  .xl-pdgb- {
    padding-bottom: 2rem !important; }
  .xl-pdgl- {
    padding-left: 2rem !important; }
  .xl-pdgh- {
    padding-right: 2rem !important;
    padding-left: 2rem !important; }
  .xl-pdgv- {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important; }
  .xl-pdg\+ {
    padding: 5rem !important; }
  .xl-pdgt\+ {
    padding-top: 5rem !important; }
  .xl-pdgr\+ {
    padding-right: 5rem !important; }
  .xl-pdgb\+ {
    padding-bottom: 5rem !important; }
  .xl-pdgl\+ {
    padding-left: 5rem !important; }
  .xl-pdgh\+ {
    padding-right: 5rem !important;
    padding-left: 5rem !important; }
  .xl-pdgv\+ {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important; }
  .xl-pdg\+\+ {
    padding: 7rem !important; }
  .xl-pdgt\+\+ {
    padding-top: 7rem !important; }
  .xl-pdgr\+\+ {
    padding-right: 7rem !important; }
  .xl-pdgb\+\+ {
    padding-bottom: 7rem !important; }
  .xl-pdgl\+\+ {
    padding-left: 7rem !important; }
  .xl-pdgh\+\+ {
    padding-right: 7rem !important;
    padding-left: 7rem !important; }
  .xl-pdgv\+\+ {
    padding-top: 7rem !important;
    padding-bottom: 7rem !important; } }

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

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

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

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

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

.relative-parent {
  position: relative; }

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

.invisible {
  visibility: hidden !important; }

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

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

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

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

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

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

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

@media (max-width: 88.4375em) {
  .hidden-lg-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 {
  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; }

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

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

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

/**
 * Case
 */
.text-uppercase {
  text-transform: uppercase; }

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

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

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

/**
 * Colors
 */
.text-muted {
  color: rgba(17, 17, 17, 0.6); }

.text-white {
  color: white; }

/*----------------------------------------*  LINKS
\*----------------------------------------*/
a {
  text-decoration: none; }

a.b-color:not(.link-inverted):hover, a.b-color:not(.link-inverted):focus, a.b-color:not(.link-inverted):active {
  color: #111111; }

a.link-inverted:not(:hover) {
  color: #111111; }

.link-muted {
  color: rgba(17, 17, 17, 0.6); }
  .link-muted:hover, .link-muted:focus, .link-muted:active {
    color: #111111; }

.link-unstyled {
  color: inherit; }

/*----------------------------------------*  BORDERS
\*----------------------------------------*/
.brd {
  border: 1px solid #E3E7E6;
  border-width: 0; }

.brd--t {
  border-top-width: 1px; }

.brd--r {
  border-right-width: 1px; }

.brd--b {
  border-bottom-width: 1px; }

.brd--l {
  border-left-width: 1px; }

.brd--v {
  border-top-width: 1px;
  border-bottom-width: 1px; }

.brd--h {
  border-right-width: 1px;
  border-left-width: 1px; }

/*----------------------------------------*  DISPLAY
\*----------------------------------------*/
.d-inline-block {
  display: inline-block; }

/**
 * Base
 */
/*----------------------------------------*  PAGE
\*----------------------------------------*/
body {
  overflow-x: hidden; }
  body.b-group {
    padding-top: 6rem; }
    @media (min-width: 48.0625em) {
      body.b-group {
        padding-top: 8rem; } }
    @media (min-width: 64.0625em) {
      body.b-group {
        padding-top: 0; } }
  body.b-organization {
    padding-top: 10rem; }
    @media (min-width: 48.0625em) {
      body.b-organization {
        padding-top: 13rem; } }
    @media (min-width: 64.0625em) {
      body.b-organization {
        padding-top: 0; } }

.stop-transitions *, .stop-transitions *:before, .stop-transitions *:after {
  transition: none !important; }

/*----------------------------------------*  FONTS
\*----------------------------------------*/
@font-face {
  font-family: 'EKW Helvetica';
  src: url("../fonts/helvetica-roman.woff") format("woff"); }

@font-face {
  font-family: 'EKW Helvetica';
  font-weight: 200;
  src: url("../fonts/helvetica-light.woff") format("woff"); }

@font-face {
  font-family: 'EKW Helvetica';
  font-weight: bold;
  src: url("../fonts/helvetica-bold.woff") format("woff"); }

@font-face {
  font-family: 'EKW Helvetica Condensed';
  font-weight: bold;
  src: url("../fonts/helvetica-condensed-bold.woff") format("woff"); }

@font-face {
  font-family: 'EKW Roboto Mono';
  font-weight: bold;
  src: url("../fonts/roboto-mono-custom.woff") format("woff"); }

/*----------------------------------------*  TYPOGRAPHY SCAFFOLDING
\*----------------------------------------*/
html {
  font-family: "EKW Helvetica", Helvetica, Arial, sans-serif;
  font-size: 50%;
  color: #111111;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body {
  font-size: 2rem;
  line-height: 3rem; }

.grid-overlay:before {
  position: absolute;
  z-index: 8999;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  width: auto;
  height: auto;
  content: '';
  pointer-events: none;
  background: url(//basehold.it/i/8/aaaaaa) repeat top left; }
  @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
    .grid-overlay:before {
      background: url(//basehold.it/i/16/aaaaaa) repeat top left;
      background-size: 2px 8px; } }

/**
 * Links
 */
a {
  color: inherit; }
  a:hover, a:focus {
    text-decoration: none; }

/**
 * Headings
 */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin: 0;
  font-weight: bold;
  word-break: break-word; }

.text-h1,
h1,
.h1 {
  font-size: 4.25rem;
  line-height: 5rem; }
  @media (min-width: 64.0625em) {
    .text-h1,
    h1,
    .h1 {
      font-size: 7rem;
      line-height: 7rem; } }

.text-h2,
h2,
.h2 {
  font-size: 2.875rem;
  line-height: 4rem; }
  @media (min-width: 40.0625em) {
    .text-h2,
    h2,
    .h2 {
      font-size: 3.625rem;
      line-height: 5rem; } }
  @media (min-width: 48.0625em) {
    .text-h2,
    h2,
    .h2 {
      font-size: 4.25rem;
      line-height: 5rem; } }
  @media (min-width: 64.0625em) {
    .text-h2,
    h2,
    .h2 {
      font-size: 5.75rem;
      line-height: 6rem; } }

.text-h3,
h3,
.h3,
.bubble__title {
  font-size: 2.875rem;
  line-height: 4rem; }
  @media (min-width: 64.0625em) {
    .text-h3,
    h3,
    .h3,
    .bubble__title {
      font-size: 4.25rem;
      line-height: 5rem; } }

.text-h4,
h4,
.h4 {
  font-size: 2.5rem;
  line-height: 4rem; }
  @media (min-width: 64.0625em) {
    .text-h4,
    h4,
    .h4 {
      font-size: 3.625rem;
      line-height: 5rem; } }

.text-h5,
h5,
.h5 {
  font-size: 2rem;
  line-height: 3rem; }
  @media (min-width: 48.0625em) {
    .text-h5,
    h5,
    .h5 {
      font-size: 2.5rem;
      line-height: 4rem; } }
  @media (min-width: 88.5em) {
    .text-h5,
    h5,
    .h5 {
      font-size: 2.875rem;
      line-height: 4rem; } }

.text-h6,
h6,
.h6,
.bubble__text {
  font-size: 2rem;
  line-height: 3rem; }
  @media (min-width: 88.5em) {
    .text-h6,
    h6,
    .h6,
    .bubble__text {
      font-size: 2.5rem;
      line-height: 4rem; } }

h1,
.h1 {
  margin-bottom: 2rem;
  transform: translateY(-1px);
  letter-spacing: -.015em; }
  @media (min-width: 88.5em) {
    h1,
    .h1 {
      margin-bottom: 5rem; } }

h2,
.h2 {
  margin-top: 1rem;
  margin-bottom: 4rem;
  transform: translateY(-1px);
  letter-spacing: -.01em; }

h3,
.h3 {
  margin: 2rem 0; }

h4,
.h4 {
  margin: 2rem 0 1rem; }

h5,
.h5 {
  margin: 2rem 0; }

h6,
.h6 {
  margin: 2rem 0; }

.text-large {
  font-size: 2rem;
  line-height: 3rem; }
  @media (min-width: 40.0625em) {
    .text-large {
      font-size: 2.5rem;
      line-height: 4rem; } }

@media (min-width: 64.0625em) {
  .lg-text-large {
    font-size: 2rem;
    line-height: 3rem; } }
  @media (min-width: 64.0625em) and (min-width: 40.0625em) {
    .lg-text-large {
      font-size: 2.5rem;
      line-height: 4rem; } }

.text-small {
  font-size: 1.75rem;
  line-height: 2rem; }

.md-down-text-small {
  font-size: 1.75rem;
  line-height: 2rem; }
  @media (min-width: 48.0625em) {
    .md-down-text-small {
      font-size: 2rem;
      line-height: 3rem; } }

.text-quote {
  font-size: 2.5rem;
  line-height: 4rem; }
  @media (min-width: 64.0625em) {
    .text-quote {
      font-size: 3.625rem;
      line-height: 5rem; } }

/**
 * Paragraphs
 */
p {
  margin: 2rem 0 4rem; }

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

pre {
  margin: 0;
  padding: 0;
  border-radius: 2px; }

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

/**
 * Lists
 */
ul,
ol {
  margin: 0;
  padding-left: 3rem; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin: 0; }

dl {
  margin: 0; }

dt {
  font-weight: bold; }

dd {
  margin-bottom: 0;
  margin-left: 0; }

.dl--inline dt {
  float: left;
  width: 100px; }

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

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

blockquote {
  margin: 0; }

figure {
  margin: 0; }

cite {
  font-style: normal; }

hr {
  box-sizing: border-box;
  height: 1px;
  margin: 0;
  margin: 1rem 0 0.875rem;
  border: none;
  border-top: 1px solid #E3E7E6; }

code,
kbd,
pre,
samp {
  font-family: 'EKW Roboto Mono', 'Roboto Mono', 'Monaco', 'Courier New', Courier, monospace; }

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

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.875rem 1.5rem;
  vertical-align: bottom;
  color: inherit;
  border: 1px solid #E3E7E6;
  border-radius: 2px;
  background-color: white;
  font-size: 2rem;
  line-height: 3rem;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }
  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: #B5BBB9;
    outline: none; }
  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] {
    cursor: not-allowed;
    color: #B5BBB9;
    background-color: #f5f7f6; }

input[type='file'] {
  font-size: 2.5rem; }

input::-webkit-datetime-edit-fields-wrapper {
  padding: 0; }

select {
  height: 5rem;
  padding-top: 0;
  padding-bottom: 0; }

textarea {
  overflow-x: hidden;
  resize: vertical; }

input[type='checkbox'],
input[type='radio'] {
  display: inline-block; }
  label input[type='checkbox'], label
  input[type='radio'] {
    margin-right: 1rem; }

label {
  display: block;
  padding-bottom: 2rem;
  cursor: pointer; }

.label--inline {
  display: inline-block;
  padding-top: 1rem;
  padding-bottom: 1rem; }
  .label--inline:not(:last-child) {
    margin-right: 3rem; }

/**
 * Forms layout
 */
.form-group ~ .form-group {
  margin-top: 2rem; }

.field-label {
  font-weight: bold;
  padding-bottom: 1rem; }

.field-help {
  margin-top: 1rem;
  margin-bottom: 0;
  color: #E3E7E6; }

/**
 * Sizes
 */
.input--small,
.select--small {
  border-radius: 2px !important;
  font-size: 1.75rem !important;
  line-height: 2rem !important; }

.input--small {
  padding: 0.875rem 1rem !important; }

.select--small {
  height: 5.75rem;
  padding-right: 1rem !important;
  padding-left: 1rem !important; }

.input--large,
.select--large {
  border-radius: 2px !important;
  font-size: 2rem !important;
  line-height: 3rem !important; }
  @media (min-width: 88.5em) {
    .input--large,
    .select--large {
      font-size: 2.5rem !important;
      line-height: 4rem !important; } }

.input--large {
  padding: 1.375rem 2rem !important; }

.select--large {
  height: 7.75rem;
  padding-right: 2rem !important;
  padding-left: 2rem !important; }

@media (min-width: 64.0625em) {
  .input--responsive {
    padding: 1.375rem 2rem !important;
    font-size: 2rem !important;
    line-height: 3rem !important; } }
  @media (min-width: 64.0625em) and (min-width: 88.5em) {
    .input--responsive {
      font-size: 2.5rem !important;
      line-height: 4rem !important; } }

/*----------------------------------------*  TABLE
\*----------------------------------------*/
table {
  margin-bottom: 0; }

th,
td {
  padding: 0; }

.table {
  border-collapse: separate; }
  .table thead th {
    padding: 0.875rem 0;
    border-bottom: 2px solid #f5f7f6; }
  .table td {
    padding: 0.875rem 0; }
  .table tbody tr td {
    border-top: 1px solid transparent;
    border-bottom: 1px solid #f5f7f6; }
  .table tfoot th {
    padding: 0.875rem 0 0.875rem;
    border-top: 2px solid #f5f7f6; }

.table--small td,
.table--small th {
  font-size: 2rem;
  line-height: 3rem; }
  @media (min-width: 88.5em) {
    .table--small td,
    .table--small th {
      font-size: 2.5rem;
      line-height: 4rem; } }

/*----------------------------------------*  BRAND
\*----------------------------------------*/
.b-group .b-color, .b-group .b-color:before, .b-group .b-color:after, .b-group .b-color-before:before, .b-group .b-color-after:after {
  color: #41B297; }

.b-group .b-background {
  background-color: #41B297; }

.b-group .b-border {
  border-color: #41B297; }

.b-group .b-fill {
  fill: #41B297; }

/**
 * Group Brand Classes
 */
.b-group-background {
  background: #41B297 !important; }

.b-group-color, .b-group-color:before, .b-group-color:after {
  color: #41B297; }

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

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

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

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

.w-5\/6 {
  width: 83.3333333333% !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; }

/*----------------------------------------*  WIDTHS RESPONSIVE
\*----------------------------------------*/
@media (min-width: 40.0625em) {
  .sm-w-1\/6 {
    width: 16.6666666667% !important; }
  .sm-w-1\/3 {
    width: 33.3333333333% !important; }
  .sm-w-1\/2 {
    width: 50% !important; }
  .sm-w-2\/3 {
    width: 66.6666666667% !important; }
  .sm-w-5\/6 {
    width: 83.3333333333% !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: 48.0625em) {
  .md-w-1\/6 {
    width: 16.6666666667% !important; }
  .md-w-1\/3 {
    width: 33.3333333333% !important; }
  .md-w-1\/2 {
    width: 50% !important; }
  .md-w-2\/3 {
    width: 66.6666666667% !important; }
  .md-w-5\/6 {
    width: 83.3333333333% !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: 64.0625em) {
  .lg-w-1\/6 {
    width: 16.6666666667% !important; }
  .lg-w-1\/3 {
    width: 33.3333333333% !important; }
  .lg-w-1\/2 {
    width: 50% !important; }
  .lg-w-2\/3 {
    width: 66.6666666667% !important; }
  .lg-w-5\/6 {
    width: 83.3333333333% !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: 88.5em) {
  .xl-w-1\/6 {
    width: 16.6666666667% !important; }
  .xl-w-1\/3 {
    width: 33.3333333333% !important; }
  .xl-w-1\/2 {
    width: 50% !important; }
  .xl-w-2\/3 {
    width: 66.6666666667% !important; }
  .xl-w-5\/6 {
    width: 83.3333333333% !important; }
  .xl-w-1\/1 {
    width: 100% !important; }
  .xl-w-1\/5 {
    width: 20% !important; }
  .xl-w-2\/5 {
    width: 40% !important; }
  .xl-w-3\/5 {
    width: 60% !important; }
  .xl-w-4\/5 {
    width: 80% !important; }
  .xl-w-1\/4 {
    width: 25% !important; }
  .xl-w-3\/4 {
    width: 75% !important; } }

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

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

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

.media__image {
  display: block; }

.media__body {
  overflow: hidden;
  display: block; }

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

/*----------------------------------------*  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: 48em) {
  .mosaic--responsive,
  .mosaic--responsive > .mosaic__row,
  .mosaic--responsive > .mosaic__cell {
    display: block; }
  .mosaic--responsive > .mosaic__cell--fit {
    width: auto; } }

/*----------------------------------------*  BUTTON
\*----------------------------------------*/
.btn {
  font-weight: bold;
  line-height: inherit;
  position: relative;
  display: inline-block;
  padding: 0;
  cursor: pointer;
  text-align: center;
  vertical-align: bottom;
  white-space: nowrap;
  text-decoration: none;
  text-overflow: ellipsis;
  border: none;
  border-radius: 0;
  background: none;
  font-size: 2rem;
  line-height: 3rem;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }
  .btn:hover, .btn:focus, .btn:active {
    text-decoration: none; }
  .btn:focus {
    outline: none; }

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

.btn--link {
  white-space: normal;
  text-align: left;
  transition: 0.2s ease-in;
  font-size: 2rem;
  line-height: 3rem; }
  @media (min-width: 88.5em) {
    .btn--link {
      font-size: 2.5rem;
      line-height: 4rem; } }
  .btn--link:after, .btn--link:before {
    transition: 0.2s ease-in; }
  .btn--link:after {
    content: "→";
    display: inline-block;
    margin-left: 0.3em; }
  .btn--link:before {
    content: "—";
    display: block;
    position: absolute;
    right: 0em;
    width: 1em;
    opacity: 0; }
  .btn--link:hover, .box:hover .btn--link {
    color: #111111; }
    .btn--link:hover:after, .btn--link:hover:before, .box:hover .btn--link:after, .box:hover .btn--link:before {
      transition: 0.35s cubic-bezier(0.65, 0.62, 0.12, 2.06); }
    .btn--link:hover:after, .box:hover .btn--link:after {
      transform: translateX(1.5rem); }
    .btn--link:hover:before, .box:hover .btn--link:before {
      opacity: 1;
      transform: translateX(1.4rem); }

/**
 * Styles
 */
.btn--default,
.btn--secondary,
.btn--alt {
  overflow: hidden;
  padding: 0.875rem 1.5rem;
  transition: 0.2s ease-in;
  border: 1px solid;
  border-radius: 2px; }

.btn--default:hover, .btn--default:focus, .btn--default:active,
.btn--secondary:hover,
.btn--secondary:focus,
.btn--secondary:active {
  opacity: .8; }

.btn--default {
  color: white; }

.btn--alt {
  background: #f5f7f6;
  border-color: #f5f7f6;
  color: #111111; }

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

/**
 * Sizes
 */
.btn--small {
  padding: 0.875rem 1rem;
  border-radius: 2px;
  font-size: 1.75rem;
  line-height: 2rem; }

.btn--large {
  padding: 1.375rem 2rem;
  border-radius: 2px;
  font-size: 2rem;
  line-height: 3rem; }
  @media (min-width: 88.5em) {
    .btn--large {
      font-size: 2.5rem;
      line-height: 4rem; } }

@media (min-width: 64.0625em) {
  .btn--responsive {
    padding: 1.375rem 2rem;
    border-radius: 2px;
    font-size: 2rem;
    line-height: 3rem; } }
  @media (min-width: 64.0625em) and (min-width: 88.5em) {
    .btn--responsive {
      font-size: 2.5rem;
      line-height: 4rem; } }

/**
 * Button Groups
 */
.btn-group {
  display: -ms-flexbox;
  display: flex; }
  .btn-group .btn {
    border-radius: 0;
    padding: 1.5rem 2rem;
    font-size: 1.75rem;
    background: rgba(255, 255, 255, 0.8);
    display: block;
    -ms-flex: 1;
        flex: 1;
    border-radius: 0;
    color: #6E6E64; }
    .backdropfilter .btn-group .btn {
      -webkit-backdrop-filter: blur(12px); }
    @media (min-width: 375px) {
      .btn-group .btn {
        padding: 2rem; } }
    @media (min-width: 40.0625em) {
      .btn-group .btn {
        font-size: 2rem;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
        .btn-group .btn:first-child {
          border-top-left-radius: 2px; }
        .btn-group .btn:last-child {
          border-top-right-radius: 2px; } }
    .btn-group .btn .pill {
      display: none; }
      @media (min-width: 375px) {
        .btn-group .btn .pill {
          display: inline-block; } }
    .btn-group .btn:hover {
      opacity: 0.8; }
    .btn-group .btn:not(.active) .pill {
      background: #B5BBB9; }
    .btn-group .btn.active {
      background: white;
      color: #111111; }
      .btn-group .btn.active .pill {
        display: none; }
      .btn-group .btn.active:after {
        content: "";
        display: block;
        position: absolute;
        height: 2rem;
        width: 2rem;
        bottom: -1.5rem;
        left: 50%;
        transform: translateX(-50%) rotate(45deg); }
        @media (min-width: 40.0625em) {
          .btn-group .btn.active:after {
            bottom: -1rem; } }
        .b-group .btn-group .btn.active:after {
          background: #41B297; }
        .b-organization .btn-group .btn.active:after {
          background: #f5f7f6; }
          @media (min-width: 40.0625em) {
            .b-organization .btn-group .btn.active:after {
              background: white; } }
      .btn-group .btn.active:hover {
        opacity: 1; }

/**
 * Button with icon
 */
.btn--icon .icon {
  max-height: 1em;
  max-width: 1em;
  float: left;
  margin-right: 0.3em;
  margin-top: 0.2em; }

/**
 * Login Button
 */
.btn--login {
  font-family: 'EKW Helvetica Condensed';
  font-size: 1.33333333333rem;
  line-height: 2rem;
  padding: .4rem 1rem .2rem;
  text-transform: uppercase;
  border-color: #C6CCCA;
  background: white; }
  .btn--login .icon {
    max-width: 2.2rem;
    margin-right: .75rem;
    padding-right: .75rem;
    border-right: 1px solid #C6CCCA; }

/*----------------------------------------*  LIST
\*----------------------------------------*/
li {
  padding: 0.5rem 0; }

.list,
.list-inline,
.list-stacked {
  margin: 0;
  padding: 0;
  list-style: none; }

/*----------------------------------------*  LIST STACKED
\*----------------------------------------*/
.list-inline > li {
  display: inline-block;
  padding: 0 1.5rem; }
  .list-inline > li:first-child {
    padding-left: 0; }
  .list-inline > li:last-child {
    padding-right: 0; }

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

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

.list-inline--tiny > li {
  padding: 0 0.5rem; }

.list-inline--small > li {
  padding: 0 1rem; }

.list-inline--large > li {
  padding: 0 2.5rem; }

.list-inline--huge > li {
  padding: 0 3.5rem; }

/*----------------------------------------*  LIST STACKED
\*----------------------------------------*/
/*
  TODO: Check interaction with .colums
  for list-stacked--divied, so no :not
  selector is needed.
*/
.list-stacked > li {
  padding: 1rem 0; }

.list-stacked:not(.list-stacked--divided) li:first-child {
  padding-top: 0; }

.list-stacked:not(.list-stacked--divided) li:last-child {
  padding-bottom: 0; }

.list-stacked--divided li {
  border-bottom: 1px solid #eee; }
  @media (min-width: 40.0625em) {
    .list-stacked--divided li {
      border-top: 1px solid #eee;
      margin-bottom: -1px; } }

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

.list-stacked--tiny > li {
  padding: 0.5rem 0; }

.list-stacked--small > li {
  padding: 1rem 0; }

.list-stacked--large > li {
  padding: 2.5rem 0; }

.list-stacked--huge > li {
  padding: 3.5rem 0; }

/**
 * With Icons
 */
.list-stacked--icon > li {
  position: relative;
  padding-left: 3rem; }
  .list-stacked--icon > li:before {
    font-size: .8em;
    font-weight: bold;
    display: block;
    width: 3rem;
    content: '✓';
    position: absolute;
    left: 0; }

/*----------------------------------------*  BOX
\*----------------------------------------*/
.box-container {
  margin: 0; }
  @media (min-width: 64.0625em) {
    .box-container {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  .box-container .box {
    margin-bottom: 2rem; }
    .box-container .box:last-child {
      margin-bottom: 0; }
    @media (min-width: 40.0625em) {
      .box-container .box {
        margin-bottom: 4rem; } }
    @media (min-width: 48.0625em) {
      .box-container .box {
        margin-bottom: 3rem; } }
    @media (min-width: 64.0625em) {
      .box-container .box {
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
        margin-bottom: 0;
        margin-right: 3rem; }
        .box-container .box:last-child {
          margin-right: 0; } }

.box {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  transition: 0.2s ease-in;
  color: #111111;
  border-radius: 2px;
  background: white; }
  .box:before {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: '';
    transition: 0.2s ease-in;
    box-shadow: 0 2px 2px 0px rgba(128, 140, 136, 0.13); }
  .section--default .box {
    background: #f5f7f6;
    box-shadow: none; }
  @media (min-width: 32.5em) {
    .box {
      -ms-flex-direction: row;
          flex-direction: row; } }
  @media (min-width: 64.0625em) {
    .box:hover {
      transform: translateY(2px); }
      .box:hover:before {
        transform: translateY(-4px); }
      .box:hover .box__header:after {
        opacity: .1; } }

.box--default {
  background: #E3E7E6;
  padding: 1rem;
  display: block; }
  .box--default:before {
    display: none; }
  .box--default:hover {
    transform: none; }

/**
 * Elements
 */
.box__header {
  position: relative;
  z-index: 303;
  height: 27rem;
  transition: 0.2s ease-in;
  overflow: visible; }
  .box__header .responsive-image {
    height: 100%; }
  .box__header:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: '';
    transition: 0.2s ease-in;
    opacity: 0;
    background: black; }
  @media (min-width: 40.0625em) {
    .box__header {
      height: auto;
      min-height: 28rem;
      -ms-flex: 1 1 50%;
          flex: 1 1 50%;
      -ms-flex-order: 1;
          order: 1; } }
  @media (min-width: 64.0625em) {
    .box__header {
      min-height: 27rem;
      -ms-flex: 1 1;
          flex: 1 1; } }
  @media (min-width: 88.5em) {
    .box__header {
      min-height: 38rem; } }

.box__header img {
  width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  height: 100%;
  min-height: 27rem; }
  @media (min-width: 40.0625em) {
    .box__header img {
      min-height: 28rem; } }
  @media (min-width: 48.0625em) {
    .box__header img {
      min-height: 28rem; } }
  @media (min-width: 64.0625em) {
    .box__header img {
      min-height: 27rem; } }
  @media (min-width: 88.5em) {
    .box__header img {
      min-height: 38rem; } }

.box__body {
  z-index: 300;
  padding: 1.5rem 2rem;
  background: white;
  -ms-flex: 1 1;
      flex: 1 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column; }
  .section--default .box__body {
    background: #f5f7f6; }
  @media (min-width: 64.0625em) {
    .box__body {
      -ms-flex: 1 1;
          flex: 1 1;
      padding: 2.5rem 3rem 2rem; } }
  @media (min-width: 88.5em) {
    .box--with-image .box__body {
      min-height: 38rem; } }
  @media (min-width: 32.5em) {
    .box__body {
      -ms-flex: 1 1 50%;
          flex: 1 1 50%; } }

.box__title {
  margin-bottom: 2rem;
  -ms-flex: 1 1;
      flex: 1 1; }
  @media (min-width: 40.0625em) {
    .box__title {
      -ms-flex: none;
          flex: none; } }
  .box__title > * {
    margin: 0; }

.box__text {
  margin-bottom: 2rem;
  -ms-flex: 1 1 0px;
      flex: 1 1 0; }
  .box__text > :first-child {
    margin-top: 0; }
  .box__text > :last-child {
    margin-bottom: 0; }

.box__addon {
  z-index: 310; }

.box--with-image .box__text:not(.box__text--important) {
  display: none; }
  @media (min-width: 40.0625em) {
    .box--with-image .box__text:not(.box__text--important) {
      display: block; } }

/**
 * Styles
 */
.box--material {
  box-shadow: 0 2px 2px 0px rgba(128, 140, 136, 0.13); }

.box--alt {
  color: inherit;
  background-color: #f5f7f6; }

/**
 * Box Variations
 */
@media (min-width: 64.0625em) {
  .box-container--v .box {
    -ms-flex-direction: column;
        flex-direction: column; }
    .box-container--v .box .box__header {
      -ms-flex-order: 0;
          order: 0;
      -ms-flex: none;
          flex: none; } }

@media (min-width: 64.0625em) {
  .box-container--v .box .box__text {
    margin-bottom: 4rem; } }

@media (min-width: 48.0625em) {
  .box-container--h .box .box__header {
    -ms-flex: 1 1 50%;
        flex: 1 1 50%; }
  .box-container--h .box .box__body {
    -ms-flex: 1 1 50%;
        flex: 1 1 50%; } }

@media (min-width: 32.5em) {
  .box-container--h .box .box__header {
    -ms-flex-order: 0;
        order: 0; } }

@media (min-width: 64.0625em) {
  .box-container--small.box-container--h .box .box__header {
    -ms-flex: 1 1;
        flex: 1 1; }
  .box-container--small.box-container--h .box .box__body {
    -ms-flex: 2 1 6rem;
        flex: 2 1 6rem; } }

@media (min-width: 32.5em) {
  .box-container--right.box-container--h .box .box__header {
    -ms-flex-order: 2;
        order: 2; } }

.box--video .box__header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }
  @media (min-width: 64.0625em) {
    .box--video .box__header {
      min-height: 52rem; } }
  @media (min-width: 88.5em) {
    .box--video .box__header {
      min-height: 60rem; } }

.box--video .box__bubble {
  opacity: 0; }

.box--video:hover .box__bubble {
  opacity: 1;
  transform: scale(1); }

.box--with-bubble .box__title {
  padding-right: 7rem; }
  @media (min-width: 32.5em) {
    .box--with-bubble .box__title {
      padding-right: 3rem; } }
  @media (min-width: 64.0625em) {
    .box--with-bubble .box__title {
      padding-right: 8rem; } }
  @media (min-width: 64.0625em) {
    .box--with-bubble .box__title {
      padding-right: 11rem; } }

.box--with-bubble .box__text p:before {
  content: "";
  float: right;
  display: block;
  width: 4rem;
  height: 6rem; }
  @media (min-width: 64.0625em) {
    .box--with-bubble .box__text p:before {
      height: 3rem; } }

.box--with-bubble .box__bubble {
  position: absolute;
  z-index: 310;
  right: 1rem;
  bottom: 0;
  width: 8rem;
  height: 8rem;
  padding: 1.75rem;
  transform: translateY(50%);
  border: .5rem solid white; }
  .box--with-bubble .box__bubble .icon {
    fill: white; }
  @media (min-width: 32.5em) {
    .box--with-bubble .box__bubble {
      top: 1rem;
      right: initial;
      bottom: initial;
      left: 0;
      transform: translateX(-50%); } }
  @media (min-width: 40.0625em) {
    .box--with-bubble .box__bubble {
      width: 10rem;
      height: 10rem; } }
  @media (min-width: 64.0625em) {
    .box--with-bubble .box__bubble {
      top: initial;
      right: 2rem;
      bottom: 0;
      left: initial;
      padding: 2.25rem;
      width: 10rem;
      height: 10rem;
      transform: translateY(50%); } }
  @media (min-width: 88.5em) {
    .box--with-bubble .box__bubble {
      width: 13rem;
      height: 13rem;
      border-width: 1rem;
      right: 1.5rem; } }
  .box--with-bubble .box__bubble:after {
    z-index: -1; }

.box--benefits {
  margin-top: 2rem; }
  @media (min-width: 40.0625em) {
    .box--benefits {
      padding-right: 15rem; } }
  @media (min-width: 48.0625em) {
    .box--benefits {
      margin-top: 0;
      padding-right: 9rem; } }
  @media (min-width: 64.0625em) {
    .box--benefits {
      margin-right: 4rem; } }

/*----------------------------------------*  SECTION
\*----------------------------------------*/
.section {
  position: relative;
  overflow: hidden;
  background-color: white; }

.section__body {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1416px;
  margin: 2rem auto;
  padding: 0 2rem;
  box-sizing: border-box; }
  @media (min-width: 40.0625em) {
    .section__body {
      margin-top: 4rem;
      margin-bottom: 4rem;
      padding-right: 4rem;
      padding-left: 4rem; } }
  @media (min-width: 48.0625em) {
    .section__body {
      margin-top: 3rem;
      margin-bottom: 3rem;
      padding-right: 6rem;
      padding-left: 6rem; }
      .section__body:first-child {
        margin-top: 6rem; }
      .section__body:last-child {
        margin-bottom: 6rem; } }
  @media (min-width: 64.0625em) {
    .section__body {
      margin-top: 6rem;
      margin-bottom: 6rem; }
      .section__body:first-child {
        margin-top: 12rem; }
      .section__body:last-child {
        margin-bottom: 12rem; } }
  @media (min-width: 88.5em) {
    .section__body {
      margin-top: 8rem;
      margin-bottom: 8rem; }
      .section__body:first-child {
        margin-top: 16rem; }
      .section__body:last-child {
        margin-bottom: 16rem; } }
  .section__body > :first-child {
    margin-top: 0; }
  .section__body > :last-child {
    margin-bottom: 0; }

.section__body--full {
  width: 100%;
  max-width: none;
  padding: 0; }

.section__body--wide {
  width: 100%;
  max-width: 1800px; }

.section__body--narrow {
  width: 100%;
  max-width: 1416px; }

.section__title {
  margin-bottom: 12rem; }
  .section__title > :first-child {
    margin-top: 0; }

/**
 * Display modifiers
 */
.section--bottom {
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 5rem;
  -ms-flex-align: end;
      align-items: flex-end; }

.section--hero {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 38rem;
  padding-bottom: 4rem; }
  @media (min-width: 40.0625em) {
    .section--hero {
      height: 50rem;
      padding-bottom: 4rem; } }
  @media (min-width: 48.0625em) {
    .section--hero {
      height: 75rem;
      padding-bottom: 9rem; } }
  @media (min-width: 64.0625em) {
    .section--hero {
      height: 70rem;
      padding-bottom: 12rem; } }
  @media (min-width: 88.5em) {
    .section--hero {
      height: 70rem;
      padding-bottom: 14rem; } }

.section--hero img {
  width: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  height: 38rem; }
  @media (min-width: 40.0625em) {
    .section--hero img {
      height: 50rem; } }
  @media (min-width: 48.0625em) {
    .section--hero img {
      height: 75rem; } }
  @media (min-width: 64.0625em) {
    .section--hero img {
      height: 70rem; } }
  @media (min-width: 88.5em) {
    .section--hero img {
      height: 70rem; } }

.section--image {
  background: transparent; }
  .section--image picture {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }

/**
 * Alternative colors
 */
.section--transparent {
  background-color: transparent; }

.section--alt {
  background-color: #f5f7f6; }

.section--medium {
  background-color: #B5BBB9; }

.section--dark {
  color: white;
  background-color: #393e48; }

.section-collection--h .section-collection__title {
  position: -webkit-sticky;
  position: sticky;
  z-index: 10;
  top: -10rem;
  margin-bottom: calc(100vh - 24rem);
  background: rgba(255, 255, 255, 0.97); }
  .section-collection--h .section-collection__title .section__body {
    padding-bottom: 2rem; }

.section-collection--h .section-collection__title + .section {
  margin-top: calc((100vh - 24rem) * -1); }
  .section-collection--h .section-collection__title + .section .section__body {
    padding-top: 0; }

.section-collection--h .section-collection__image {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  height: 100vh;
  transition: .55s ease-in-out; }
  .section-collection--h .section-collection__image.appear .section-collection__content {
    transform: none;
    opacity: 1; }
  .section-collection--h .section-collection__image.appear .section-collection__image-default {
    opacity: 0; }
  .section-collection--h .section-collection__image.appear .section-collection__image-overlay {
    opacity: .2; }

.section-collection--h .section-collection__image-default,
.section-collection--h .section-collection__image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: .85s ease-in-out;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }

.section-collection--h .section-collection__image-default {
  opacity: 1; }

.section-collection--h .section-collection__image-overlay {
  opacity: 0; }

.section-collection--h .section-collection__content {
  display: -ms-flexbox;
  display: flex;
  height: 100vh;
  transition: .85s ease-in-out;
  transform: translateY(10rem);
  opacity: 0;
  background: transparent;
  -ms-flex-align: center;
      align-items: center; }

.section-collection--v {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start; }
  .section-collection--v .section-collection__title {
    position: -webkit-sticky;
    position: sticky;
    top: calc(50% - 25vh);
    -ms-flex: 0 0 50%;
        flex: 0 0 50%; }
  .section-collection--v .section-collection__content {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%; }

.section-collection--article {
  width: 1416px;
  max-width: 100%;
  margin: 0 auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: start;
      align-items: flex-start; }
  .section-collection--article .section-collection__aside {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    -ms-flex: 5 0 0px;
        flex: 5 0 0; }
  .section-collection--article .section-collection__content {
    -ms-flex: 8 0 0px;
        flex: 8 0 0; }

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

.icon--full {
  width: 100%;
  height: 100%; }

.icon--large {
  width: 8rem;
  height: auto;
  max-height: 8rem; }

.icon--tiny {
  width: 3rem;
  height: auto;
  max-height: 3rem; }

.icon--match-text {
  width: 1em;
  height: 1em;
  vertical-align: middle; }

/*----------------------------------------*  MATERIAL
\*----------------------------------------*/
.material {
  color: #111111;
  border-radius: 2px;
  background: white;
  box-shadow: 0 2px 2px 0px rgba(128, 140, 136, 0.13); }

/**
 * Material States
 */
.material--elevated {
  box-shadow: 0 2px 16px 0 rgba(131, 144, 140, 0.21); }

.material--active {
  box-shadow: 0 1px 2px 0 rgba(131, 144, 140, 0.21); }

/*----------------------------------------*  HEADLINE
\*----------------------------------------*/
.headline {
  font-family: 'EKW Helvetica Condensed';
  position: relative;
  overflow: hidden;
  padding-left: .24em;
  max-width: 70%; }
  @media (min-width: 40.0625em) {
    .headline {
      max-width: 50%; } }
  @media (min-width: 48.0625em) {
    .headline {
      max-width: 60%; } }
  @media (min-width: 64.0625em) {
    .headline {
      max-width: 42%; } }
  @media (min-width: 88.5em) {
    .headline {
      max-width: 40%; } }

.headline__text div,
.headline__text h1,
.headline__padding div,
.headline__padding h1 {
  display: inline;
  white-space: pre-wrap;
  box-shadow: 0 2px 0px rgba(0, 0, 0, 0.12); }
  .b-group .headline__text div, .b-group
  .headline__text h1, .b-group
  .headline__padding div, .b-group
  .headline__padding h1 {
    color: white;
    background: #41B297; }
  .b-organization .headline__text div, .b-organization
  .headline__text h1, .b-organization
  .headline__padding div, .b-organization
  .headline__padding h1 {
    background: white; }

.headline__text {
  position: relative;
  z-index: 1000; }

.headline__padding {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }
  .headline__padding div span:after,
  .headline__padding h1 span:after {
    content: '\00a0\A\00a0\A\00a0\A\00a0\A\00a0\A\00a0\A\00a0\A'; }

/**
 * Headline Styles
 */
.headline--h1 {
  letter-spacing: 0;
  font-size: 2.75rem;
  line-height: 4rem; }
  @media (min-width: 40.0625em) {
    .headline--h1 {
      font-size: 3.5rem;
      line-height: 5rem; } }
  @media (min-width: 48.0625em) {
    .headline--h1 {
      font-size: 4.25rem;
      line-height: 6rem; } }
  @media (min-width: 64.0625em) {
    .headline--h1 {
      font-size: 5rem;
      line-height: 7rem; } }
  @media (min-width: 88.5em) {
    .headline--h1 {
      font-size: 5.75rem;
      line-height: 8rem; } }

/*----------------------------------------*  NAVIGATION
\*----------------------------------------*/
.nav {
  position: fixed;
  z-index: 486;
  top: 0;
  width: 100%;
  transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .nav.nav--prepare-open {
    height: 100vh !important; }
  @media (min-width: 64.0625em) {
    .nav {
      transition: none;
      position: relative;
      height: auto !important; }
      .nav.nav--open {
        height: auto; } }
  .nav .b-group {
    background-color: rgba(250, 250, 250, 0.98);
    box-shadow: 0 1px 0 0 rgba(181, 187, 185, 0.2); }

.nav-overlay {
  background-color: rgba(227, 231, 230, 0);
  -webkit-backdrop-filter: blur(0px);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 450;
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1);
  display: none; }
  .nav--prepare-open .nav-overlay {
    display: block; }
    @media (min-width: 48.0625em) {
      .nav--prepare-open .nav-overlay {
        display: none; } }
  .nav--open .nav-overlay {
    background-color: rgba(227, 231, 230, 0.9);
    -webkit-backdrop-filter: blur(10px); }
    .no-backdropfilter .nav--open .nav-overlay {
      background-color: #E3E7E6; }

.nav-group__logo {
  display: block;
  width: 7rem;
  height: 6rem;
  background-image: url("../images/logo.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 100%; }
  .b-organization .nav-group__logo {
    -ms-flex: 0 0 7rem;
        flex: 0 0 7rem; }
    @media (min-width: 64.0625em) {
      .b-organization .nav-group__logo {
        height: 4rem; } }
  .b-group .nav-group__logo {
    border-radius: 2px;
    background-color: white;
    background-image: url("../images/logo.png");
    background-position: center center;
    background-size: 85%;
    box-shadow: 0 2px 2px 0px rgba(128, 140, 136, 0.13);
    -ms-flex: 0 0 14rem;
        flex: 0 0 14rem;
    height: 9rem;
    margin-top: 0rem;
    margin-bottom: -5rem; }
    @media (min-width: 48.0625em) {
      .b-group .nav-group__logo {
        -ms-flex: 0 0 20rem;
            flex: 0 0 20rem;
        height: 12rem;
        margin-bottom: -10rem;
        margin-top: -1.5rem; } }
    @media (min-width: 64.0625em) {
      .b-group .nav-group__logo {
        -ms-flex: 0 0 20rem;
            flex: 0 0 20rem;
        height: 12rem;
        margin-bottom: -10rem;
        margin-top: -2.5rem; } }
    @media (min-width: 88.5em) {
      .b-group .nav-group__logo {
        -ms-flex: 0 0 24rem;
            flex: 0 0 24rem;
        height: 15rem; } }

.nav-group__menu {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  overflow: hidden;
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1);
  opacity: 0; }
  .b-organization .nav-group__menu {
    max-height: 4rem; }
  .b-group .nav-group__menu {
    height: 0; }
    @media (min-width: 64.0625em) {
      .b-group .nav-group__menu {
        height: auto; } }
  .nav--open .nav-group__menu {
    opacity: 1; }
    .b-organization .nav--open .nav-group__menu {
      max-height: 30rem; }
    .b-group .nav--open .nav-group__menu {
      height: calc(100vh - 12rem); }
  @media (min-width: 64.0625em) {
    .nav-group__menu {
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
      margin-left: 2rem;
      opacity: 1;
      height: none;
      height: initial;
      max-height: none;
      max-height: initial;
      margin-left: 2rem; } }
  @media (min-width: 64.0625em) {
    .b-organization .nav-group__menu {
      padding-left: 16rem; } }

.nav-group {
  z-index: 487;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .b-group .nav-group .nav__menu-list {
    margin-top: 3rem; }
  .nav-group .nav__menu-list li {
    padding: 1rem 0;
    font-size: 2rem;
    line-height: 3rem; }
    @media (min-width: 64.0625em) {
      .nav-group .nav__menu-list li {
        font-size: 1.75rem;
        line-height: 2rem; } }
    @media (min-width: 88.5em) {
      .nav-group .nav__menu-list li {
        font-size: 2rem;
        line-height: 3rem; } }
    .nav-group .nav__menu-list li:last-child {
      margin-bottom: 1rem; }
  @media (min-width: 48.0625em) {
    .b-group .nav-group .nav__menu-list {
      margin-top: 6rem; }
    .nav-group .nav__menu-list li {
      display: inline-block;
      margin-right: 1rem; } }
  @media (min-width: 64.0625em) {
    .nav-group .nav__menu-list li {
      margin-right: 2rem; }
      .nav-group .nav__menu-list li:last-child {
        margin-bottom: 0; }
    .b-group .nav-group .nav__menu-list {
      padding-left: 2rem;
      margin-top: 0; }
    .b-organization .nav-group .nav__menu-list {
      padding-left: 1rem; } }
  .nav-group .nav__menu-list a {
    padding: 2rem 0;
    opacity: 0.5; }
    .nav-group .nav__menu-list a:hover {
      opacity: 1; }
    .nav-group .nav__menu-list a.is-active {
      opacity: 1; }
    .path-frontpage .nav-group .nav__menu-list a {
      opacity: 1; }
  .b-organization .nav-group .nav__menu-list {
    padding-bottom: 5rem; }
    @media (min-width: 64.0625em) {
      .b-organization .nav-group .nav__menu-list {
        padding-bottom: 0; } }

.section--nav-meta {
  position: fixed;
  z-index: 490;
  background-color: transparent;
  bottom: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 5.5rem;
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1);
  transition-timing-function: cubic-bezier(0.88, -0.15, 0.47, 1.3);
  transform: translateY(100%);
  opacity: 0; }
  @media (min-width: 48.0625em) {
    .section--nav-meta {
      position: relative;
      height: 0;
      display: block;
      width: auto;
      margin-right: 1rem;
      background-color: #f7f7f7;
      opacity: 1;
      transform: none;
      transition: none; } }
  .nav--prepare-open .section--nav-meta {
    display: block; }
  .nav--open .section--nav-meta {
    transform: none;
    opacity: 1; }

.nav-meta {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between; }
  .nav-meta li {
    padding: 1rem; }
  @media (min-width: 48.0625em) {
    .nav-meta {
      position: absolute;
      top: 1.5rem;
      right: 16rem; } }
  @media (min-width: 64.0625em) {
    .nav-meta {
      right: 0; } }
  @media (min-width: 88.5em) {
    .nav-meta {
      top: 2rem; } }

.nav-group__menu-btn {
  -ms-flex: 0 0 12rem;
      flex: 0 0 12rem;
  margin-left: auto;
  padding: 1.5rem 1.25rem 1.5rem 2rem;
  transform: translateX(2rem);
  line-height: 3rem; }
  .nav-group__menu-btn .icon {
    width: 3rem;
    height: 3rem; }
  .nav-group__menu-btn #menu__line-1,
  .nav-group__menu-btn #menu__line-2,
  .nav-group__menu-btn #menu__line-3 {
    transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1); }
  .nav-group__menu-btn #menu__line-1 {
    transform-origin: 2px 6px; }
  .nav-group__menu-btn #menu__line-2 {
    transform-origin: center center; }
  .nav-group__menu-btn #menu__line-3 {
    transform-origin: 22px 18px; }
  .nav--open .nav-group__menu-btn #menu__line-1 {
    transform: translate(3px, -1px) rotate(45deg) scaleX(0.5); }
  .nav--open .nav-group__menu-btn #menu__line-2 {
    transform: rotate(-45deg); }
  .nav--open .nav-group__menu-btn #menu__line-3 {
    transform: translate(-3px, 1px) rotate(45deg) scaleX(0.5); }
  @media (min-width: 64.0625em) {
    .nav-group__menu-btn {
      display: none; } }

.section--nav-group {
  background-color: rgba(247, 247, 247, 0.93);
  -webkit-backdrop-filter: blur(10px);
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1);
  z-index: 487; }
  .no-backdropfilter .section--nav-group {
    background-color: #f7f7f7; }
  @media (min-width: 48.0625em) {
    .section--nav-group {
      padding: 1rem 0; }
      .b-organization .section--nav-group {
        height: 8rem; }
      .b-group .section--nav-group {
        height: 8rem; }
      .b-organization .nav--open .section--nav-group {
        height: 18rem; }
      .b-group .nav--open .section--nav-group {
        height: 20rem; } }
  @media (min-width: 64.0625em) {
    .section--nav-group {
      padding-top: 2rem; }
      .b-organization .section--nav-group {
        height: 15rem; }
      .b-group .section--nav-group {
        height: 8rem; } }
  @media (min-width: 88.5em) {
    .b-group .section--nav-group {
      height: 9rem; } }

.section--nav-organization {
  display: none;
  z-index: 488;
  box-shadow: 0 2px 8px 0 rgba(128, 140, 136, 0.18);
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1);
  position: absolute;
  width: 100%;
  top: 6rem; }
  .nav--open .section--nav-organization {
    transform: translateY(26rem); }
    @media (min-width: 48.0625em) {
      .nav--open .section--nav-organization {
        transform: none; } }
  @media (min-width: 48.0625em) {
    .section--nav-organization {
      position: relative;
      top: initial; } }
  .b-organization .section--nav-organization {
    display: block; }

.nav-organization {
  position: relative;
  z-index: 488; }

.nav-organization__name {
  font-size: 1.75rem;
  display: block;
  padding: .5rem 0;
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1);
  z-index: 1;
  position: relative; }
  .nav--open .nav-organization__name {
    transform: translateY(1rem); }
    @media (min-width: 48.0625em) {
      .nav--open .nav-organization__name {
        transform: none; } }
  @media (min-width: 48.0625em) {
    .nav-organization__name {
      transition: none;
      font-size: 2rem;
      position: absolute;
      top: -4.5rem;
      left: 24rem;
      padding: 0; } }
  @media (min-width: 64.0625em) {
    .nav-organization__name {
      left: 26rem; } }

.nav-organization__logo {
  position: absolute;
  top: -4rem;
  left: 50%;
  display: block;
  width: 12rem;
  height: 6rem;
  margin-left: -6rem;
  padding: 1rem;
  border-radius: 2px;
  background-color: white; }
  .nav-organization__logo div {
    background-repeat: no-repeat;
    background-position: left center;
    background-position: center center;
    background-size: contain;
    height: 100%;
    width: 100%; }
  @media (min-width: 48.0625em) {
    .nav-organization__logo {
      top: -6rem;
      left: 10rem;
      margin-left: 0; } }
  @media (min-width: 64.0625em) {
    .nav-organization__logo {
      top: -7rem;
      left: 0;
      width: 24rem;
      height: 12rem;
      padding: 1.5rem; } }
  .nav-organization__logo:before {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 50%;
    content: '';
    border-radius: 2px;
    box-shadow: 0 2px 8px 0 rgba(128, 140, 136, 0.1); }

.nav-organization__menu {
  overflow: hidden;
  max-height: 0;
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1); }
  @media (min-width: 48.0625em) {
    .nav-organization__menu {
      overflow: visible;
      max-height: none;
      max-height: initial; } }
  @media (min-width: 64.0625em) {
    .nav-organization__menu {
      padding-left: 26rem; } }
  .nav--open .nav-organization__menu {
    max-height: 50rem; }
  @media (min-width: 48.0625em) {
    .nav-organization__menu .nav__menu-list {
      overflow: hidden; } }
  .nav-organization__menu .nav__menu-list li {
    padding: 0; }
    .nav-organization__menu .nav__menu-list li:first-child {
      margin-top: 1rem; }
    .nav-organization__menu .nav__menu-list li:last-child {
      margin-bottom: 1rem; }
    @media (min-width: 48.0625em) {
      .nav-organization__menu .nav__menu-list li {
        display: block;
        float: left;
        margin-right: 2rem; }
        .nav-organization__menu .nav__menu-list li:first-child {
          margin-top: 0; }
        .nav-organization__menu .nav__menu-list li:last-child {
          margin-bottom: 0; } }
    @media (min-width: 48.0625em) {
      .nav-organization__menu .nav__menu-list li {
        margin-right: 3rem; } }
  .nav-organization__menu .nav__menu-list a {
    font-weight: bold;
    display: block;
    width: 100%;
    padding: 1rem 0;
    font-size: 2rem;
    line-height: 3rem; }
    @media (min-width: 64.0625em) {
      .nav-organization__menu .nav__menu-list a {
        font-size: 1.75rem;
        line-height: 2rem; } }
    @media (min-width: 88.5em) {
      .nav-organization__menu .nav__menu-list a {
        font-size: 2rem;
        line-height: 3rem; } }
    @media (min-width: 48.0625em) {
      .nav-organization__menu .nav__menu-list a {
        opacity: 0.5;
        padding: 1.5rem 0; } }
    .nav-organization__menu .nav__menu-list a:hover, .nav-organization__menu .nav__menu-list a.is-active {
      opacity: 1; }

/**
 * Possible Refactoring
 */
/*----------------------------------------*  SECTOR
\*----------------------------------------*/
.sector a:hover .sector__icon {
  opacity: .7; }

.sector-collection {
  -webkit-columns: 1;
          columns: 1;
  -webkit-column-gap: 4rem;
          column-gap: 4rem;
  font-size: 0;
  line-height: 0; }
  @media (min-width: 40.0625em) {
    .sector-collection {
      -webkit-columns: 2;
              columns: 2;
      -webkit-column-rule: 1px solid #E3E7E6;
              column-rule: 1px solid #E3E7E6; } }
  @media (min-width: 64.0625em) {
    .sector-collection {
      -webkit-columns: 3;
              columns: 3; } }
  .sector-collection .sector {
    display: inline-block;
    padding: 0;
    width: 100%;
    font-size: 2rem;
    line-height: 3rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-right: 0rem; }
    .sector-collection .sector:hover {
      background: #f7f7f7; }
    .sector-collection .sector a {
      display: block; }
    .sector-collection .sector .pill {
      float: right; }

/**
 * Elements
 */
.sector__checkbox {
  visibility: hidden;
  position: absolute; }

.sector__icon {
  width: 5rem;
  height: 5rem;
  padding: 1rem;
  border: 1px solid #E3E7E6;
  border-radius: 100%;
  margin-right: 1.5rem;
  position: relative; }
  @media (min-width: 48.0625em) {
    .sector__icon {
      width: 6rem;
      height: 6rem;
      padding: 1.25rem; } }
  .sector__icon svg {
    fill: black; }

.sector__label {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 0;
  color: #6E6E64; }
  .sector__label span {
    display: inline-block; }

.sector__count {
  width: 3rem;
  height: 3rem;
  background: #E3E7E6;
  color: #111111;
  font-size: 1.5rem;
  border-radius: 100%;
  line-height: 3rem;
  font-weight: bold;
  text-align: center;
  margin-left: auto; }

.sector__checkbox:checked + .sector__label {
  color: #111111; }
  .sector__checkbox:checked + .sector__label .sector__icon {
    background: currentColor;
    border-color: currentColor; }
    .sector__checkbox:checked + .sector__label .sector__icon svg {
      fill: white; }

/*----------------------------------------*  LAYOUTBREAKER
\*----------------------------------------*/
.layoutbreaker {
  margin: 0 !important; }

.layoutbreaker__aside {
  height: 75vw; }
  .layoutbreaker__aside .responsive-image {
    width: 100%;
    height: 100%; }
  @media (min-width: 40.0625em) {
    .layoutbreaker__aside {
      height: 50rem; } }
  @media (min-width: 48.0625em) {
    .layoutbreaker__aside {
      height: 70rem; } }
  @media (min-width: 64.0625em) {
    .layoutbreaker__aside {
      height: 80rem; } }
  @media (min-width: 88.5em) {
    .layoutbreaker__aside {
      height: 100rem; } }

.layoutbreaker__text > :first-child {
  margin-top: 0; }

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

@media (min-width: 48.0625em) {
  .layoutbreaker--left,
  .layoutbreaker--right {
    display: -ms-flexbox;
    display: flex; } }

@media (min-width: 48.0625em) {
  .layoutbreaker--left .layoutbreaker__main,
  .layoutbreaker--right .layoutbreaker__main {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex: 1;
        flex: 1; } }

@media (min-width: 88.5em) {
  .layoutbreaker--left .layoutbreaker__main,
  .layoutbreaker--right .layoutbreaker__main {
    -ms-flex-pack: end;
        justify-content: flex-end; } }

@media (min-width: 48.0625em) {
  .layoutbreaker--left .layoutbreaker__aside,
  .layoutbreaker--right .layoutbreaker__aside {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%; } }

@media (min-width: 88.5em) {
  .layoutbreaker--left .layoutbreaker__aside,
  .layoutbreaker--right .layoutbreaker__aside {
    -ms-flex: 0 0 33.3333333333%;
        flex: 0 0 33.3333333333%;
    -ms-flex: 0 0 calc(50% - 29.5rem);
        flex: 0 0 calc(50% - 29.5rem); } }

@media (min-width: 88.5em) {
  .layoutbreaker--right .layoutbreaker__main {
    -ms-flex-pack: end;
        justify-content: flex-end; } }

@media (min-width: 88.5em) {
  .layoutbreaker--left .layoutbreaker__main {
    -ms-flex-pack: start;
        justify-content: flex-start; } }

@media (min-width: 88.5em) {
  .layoutbreaker--left .layoutbreaker__text {
    margin-left: 31rem;
    max-width: 81rem; } }

@media (min-width: 48.0625em) {
  .layoutbreaker--right .layoutbreaker__aside {
    -ms-flex-order: 2;
        order: 2; } }

@media (min-width: 88.5em) {
  .layoutbreaker--right .layoutbreaker__text {
    margin: 0 31rem 0 auto;
    max-width: 81rem; } }

/*----------------------------------------*  COLUMNS
\*----------------------------------------*/
@media (min-width: 40.0625em) {
  .columns {
    -webkit-columns: 2;
            columns: 2;
    -webkit-column-gap: 3rem;
            column-gap: 3rem; }
    .columns li {
      display: inline-block;
      width: 100%; } }

/*----------------------------------------*  DRUPAL LANGUAGESWITCHER
\*----------------------------------------*/
#block-languagedropdownswitcher select {
  font-size: 2rem;
  font-weight: bold;
  width: auto !important;
  padding: 0;
  height: 3rem;
  text-transform: uppercase;
  border: none;
  background: none; }

#block-languagedropdownswitcher option {
  padding: 0;
  min-height: initial; }

/*----------------------------------------*  GRID
\*----------------------------------------*/
/**
 * Modern grid using flexbox
 */
.grid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -3rem; }

.grid__item {
  width: 100%;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  padding-left: 3rem; }

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

.grid--tiny {
  margin-left: -1rem; }
  .grid--tiny > .grid__item {
    padding-left: 1rem; }

.grid--small {
  margin-left: -2rem; }
  .grid--small > .grid__item {
    padding-left: 2rem; }

.grid--large {
  margin-left: -5rem; }
  .grid--large > .grid__item {
    padding-left: 5rem; }

.grid--huge {
  margin-left: -7rem; }
  .grid--huge > .grid__item {
    padding-left: 7rem; }

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

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

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

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

.grid--stretch {
  -ms-flex-align: stretch;
      align-items: stretch; }

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

@media (min-width: 64.0625em) {
  .grid--lg-rev {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; } }

/*----------------------------------------*  SWIPE SLIDER
\*----------------------------------------*/
.swipe__item .section__body {
  width: auto; }

/**
 * Elements
 */
.slider__controls {
  display: -ms-flexbox;
  display: flex; }

.slider__control-btn {
  font-size: 3.6rem;
  line-height: 5.4rem;
  display: none;
  width: 6rem;
  height: 6rem;
  border-radius: 100%;
  background: white; }
  @media (min-width: 48.0625em) {
    .slider__control-btn {
      z-index: 1;
      display: block; } }
  .slider__control-btn span {
    line-height: 1;
    display: inline-block;
    vertical-align: .05em; }

.slider__indicator {
  line-height: 0;
  margin-bottom: 2rem;
  text-align: center;
  -ms-flex: 1 1 0px;
      flex: 1 1 0; }
  @media (min-width: 48.0625em) {
    .slider__indicator {
      margin-bottom: 0; } }

.swiper-pagination-bullet {
  display: inline-block;
  width: 4rem;
  height: 4rem;
  margin-right: 1rem;
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1);
  transform: scale(0.75);
  opacity: .5;
  border-radius: 100%;
  background-position: center;
  background-size: cover; }
  @media (min-width: 48.0625em) {
    .swiper-pagination-bullet {
      width: 6rem;
      height: 6rem;
      margin-right: 1.5rem; } }
  .swiper-pagination-bullet:last-child {
    margin-right: 0; }
  .swiper-pagination-bullet:hover {
    transform: scale(0.9); }
  .swiper-pagination-bullet.swiper-pagination-bullet-active, .swiper-pagination-bullet.swiper-pagination-bullet-active:hover {
    transform: none;
    opacity: 1; }

.slider__overlay {
  position: absolute;
  z-index: -1;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #f5f7f6;
  -webkit-filter: blur(36px);
          filter: blur(36px); }

.slider__overlay-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1);
  transition-property: opacity;
  opacity: 0;
  background-position: center;
  background-size: cover; }
  .slider__overlay-image.active {
    opacity: .08; }

/*----------------------------------------*  BUBBLES
\*----------------------------------------*/
.bubble {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -ms-flex-direction: column;
      flex-direction: column;
  width: 15rem;
  height: 15rem;
  padding: 2rem;
  text-align: center;
  border-radius: 100%;
  background-color: white;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }

.bubble__title {
  font-weight: bold; }

.bubble__text {
  color: rgba(17, 17, 17, 0.6); }

/**
 * Display modifiers
 */
.bubble--tiny {
  width: 6rem;
  height: 6rem;
  padding: 1.5rem; }

.bubble--small {
  width: 11rem;
  height: 11rem; }

.bubble--large {
  width: 19rem;
  height: 19rem; }

.bubble--huge {
  width: 23rem;
  height: 23rem; }

.bubble__transparent {
  padding: 4rem;
  transition: 0.2s ease-in;
  transform: scale(1.1);
  background: rgba(17, 17, 17, 0.2); }
  .bubble__transparent .icon {
    fill: white; }

.bubble--benefits {
  position: absolute;
  top: 0;
  right: 0;
  display: none; }
  @media (min-width: 40.0625em) {
    .bubble--benefits {
      display: -ms-flexbox;
      display: flex; } }
  @media (min-width: 48.0625em) {
    .bubble--benefits {
      transform: translate(25%, -25%);
      box-shadow: 0 2px 16px 0 rgba(131, 144, 140, 0.21); } }

/**
 * Alternative colors
 */
.bubble-collection {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 50rem;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }

.bubble-collection__content {
  position: relative;
  width: 19rem;
  height: 19rem; }
  .bubble-collection__content .bubble {
    position: absolute;
    top: 0;
    left: 0; }
    .bubble-collection__content .bubble:nth-child(1) {
      transform: translate(-18rem, -15rem); }
    .bubble-collection__content .bubble:nth-child(2) {
      transform: translate(-3rem, 15rem); }
    .bubble-collection__content .bubble:nth-child(3) {
      transform: translate(12rem, -8rem); }

/*----------------------------------------*  IMAGE
\*----------------------------------------*/
.img-contact-thumbnail {
  width: 6rem;
  height: 6rem; }
  @media (min-width: 40.0625em) {
    .img-contact-thumbnail {
      width: 13rem;
      height: 13rem; } }
  @media (min-width: 88.5em) {
    .img-contact-thumbnail {
      width: 18rem;
      height: 18rem; } }

.responsive-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

/*----------------------------------------*  PILL
\*----------------------------------------*/
.pill {
  display: inline-block;
  margin-left: 1rem;
  padding: .3rem 1rem;
  vertical-align: middle;
  color: white;
  border-radius: 1em;
  background: #d82243;
  font-size: 1.75rem;
  line-height: 2rem; }

/*----------------------------------------*  ARTICLE
\*----------------------------------------*/
.article {
  margin-top: 5rem; }

.article__hero {
  height: 40rem;
  background-size: cover;
  background-position: center; }
  .article__hero .responsive-image {
    height: 100%; }
  @media (min-width: 48.0625em) {
    .article__hero {
      height: 50rem; } }
  @media (min-width: 88.5em) {
    .article__hero {
      height: 35vw; } }

/**
 * Display modifiers
 */
/**
 * Alternative colors
 */
/*----------------------------------------*  INPUT RANGE
\*----------------------------------------*/
/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.input-range__target,
.input-range__target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -ms-touch-action: none;
      touch-action: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  box-sizing: border-box; }

.input-range__target {
  position: relative;
  direction: ltr; }

.input-range__base {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
  /* Fix 401 */ }

.input-range__connect {
  position: absolute;
  right: 0;
  top: 0;
  left: 0;
  bottom: 0; }

.input-range__origin {
  position: absolute;
  height: 0;
  width: 0; }

.input-range__handle {
  position: relative;
  z-index: 1; }
  .input-range__handle:focus {
    outline: none; }

.input-range--state-tap .input-range__connect,
.input-range--state-tap .input-range__origin {
  transition: top 0.3s, right 0.3s, bottom 0.3s, left 0.3s; }

.input-range--state-drag * {
  cursor: inherit !important; }

/* Painting and performance;
 * Browsers can paint handles in their own layer.
 */
.input-range__base,
.input-range__handle {
  transform: translate3d(0, 0, 0); }

/* Slider size and handle placement;
 */
.input-range--horizontal {
  height: 1rem; }

.input-range--horizontal .input-range__handle {
  width: 3rem;
  height: 3rem;
  left: -1rem;
  top: -1rem; }

.input-range--vertical {
  width: 18px; }

.input-range__vertical .input-range__handle {
  width: 28px;
  height: 34px;
  left: -6px;
  top: -17px; }

/* Styling;
 */
.input-range__target {
  background: #E3E7E6;
  border-radius: 2px; }

.input-range__connect {
  background: currentColor;
  border-radius: 2px;
  transition: background 450ms; }

/* Handles and cursors;
 */
.input-range__draggable {
  cursor: ew-resize; }

.input-range--vertical .input-range__draggable {
  cursor: ns-resize; }

.input-range__handle {
  border: 1px solid #f5f7f6;
  border-radius: 100%;
  background: white;
  cursor: default;
  box-shadow: 0 2px 2px 0px rgba(128, 140, 136, 0.13);
  transition: 0.2s ease-in; }
  .input-range__handle:after {
    content: "";
    display: block;
    background: #B5BBB9;
    position: absolute;
    top: 0;
    left: 0;
    width: 1rem;
    height: 1rem;
    border-radius: 100%;
    top: 0.875rem;
    left: 0.875rem;
    transition: 0.2s ease-in; }

.input-range__active {
  box-shadow: 0 2px 16px 0 rgba(131, 144, 140, 0.21);
  transform: scale(1.2); }
  .input-range__active:after {
    background: currentColor; }

/* Disabled state;
 */
[disabled] .input-range__connect {
  background: #B8B8B8; }

[disabled].input-range__target,
[disabled].input-range__handle,
[disabled] .input-range__handle {
  cursor: not-allowed; }

/* Base;
 *
 */
.input-range__pips,
.input-range__pips * {
  box-sizing: border-box; }

.input-range__pips {
  position: absolute;
  color: #999; }

/* Values;
 *
 */
.input-range__value {
  position: absolute;
  white-space: nowrap;
  text-align: center; }

.input-range__value-sub {
  color: #ccc;
  font-size: 10px; }

/* Markings;
 *
 */
.input-range__marker {
  position: absolute;
  background: #CCC; }

.input-range__marker-sub {
  background: #AAA; }

.input-range__marker-large {
  background: #AAA; }

/* Horizontal layout;
 *
 */
.input-range__pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%; }

.input-range__value-horizontal {
  transform: translate3d(-50%, 50%, 0); }

.input-range__marker-horizontal.input-range__marker {
  margin-left: -1px;
  width: 2px;
  height: 5px; }

.input-range__marker-horizontal.input-range__marker-sub {
  height: 10px; }

.input-range__marker-horizontal.input-range__marker-large {
  height: 15px; }

/* Vertical layout;
 *
 */
.input-range__pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%; }

.input-range__value-vertical {
  transform: translate3d(0, 50%, 0);
  padding-left: 25px; }

.input-range__marker-vertical.input-range__marker {
  width: 5px;
  height: 2px;
  margin-top: -1px; }

.input-range__marker-vertical.input-range__marker-sub {
  width: 10px; }

.input-range__marker-vertical.input-range__marker-large {
  width: 15px; }

.input-range__tooltip {
  display: block;
  position: absolute;
  border: 1px solid #D9D9D9;
  border-radius: 2px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap; }

.input-range--horizontal .input-range__tooltip {
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%; }

.input-range--vertical .input-range__tooltip {
  transform: translate(0, -50%);
  top: 50%;
  right: 120%; }

/**
 * Structures
 */
/*----------------------------------------*  SEARCHBOX
\*----------------------------------------*/
.b-group .no-backdropfilter .section--nav-group {
  background: rgba(255, 255, 255, 0.8); }

.searchbox-gutter {
  padding: 2rem; }
  @media (min-width: 88.5em) {
    .searchbox-gutter {
      padding: 3rem; } }

.section--searchbox {
  overflow: visible;
  padding: 2rem 0; }
  .section--searchbox .section__body {
    margin-top: 0; }
    @media (max-width: 40em) {
      .section--searchbox .section__body {
        padding: 0; } }

.searchbox {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  margin-top: -9rem !important; }
  @media (min-width: 40.0625em) {
    .searchbox {
      margin-top: -17rem !important; } }
  @media (min-width: 48.0625em) {
    .searchbox {
      margin-top: -19rem !important; } }
  @media (min-width: 1280px) {
    .searchbox {
      margin-top: -21rem !important; } }
  @media (min-width: 88.5em) {
    .searchbox {
      margin-top: -24rem !important; } }

.searchbox__tabs {
  padding-top: 0;
  padding-bottom: 0; }
  @media (min-width: 40.0625em) {
    .searchbox__tabs {
      background: transparent; } }

.searchbox__title {
  margin: 0;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  -ms-flex-order: 3;
      order: 3;
  font-size: 1.5rem;
  line-height: 0;
  transform: none;
  margin-top: 0.5rem; }
  @media (min-width: 375px) {
    .searchbox__title {
      font-size: 2rem; } }
  @media (min-width: 40.0625em) {
    .searchbox__title {
      -ms-flex-order: 2;
          order: 2;
      -ms-flex: 0 0 66%;
          flex: 0 0 66%;
      margin-top: 0;
      font-size: 2.5rem; } }
  @media (min-width: 48.0625em) {
    .searchbox__title {
      -ms-flex-order: 0;
          order: 0;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
      margin-bottom: 2rem; } }
  @media (min-width: 1280px) {
    .searchbox__title {
      margin-bottom: 0;
      margin-top: 1rem;
      -ms-flex: 0 0 33.3333333333%;
          flex: 0 0 33.3333333333%; } }
  .searchbox__title span {
    margin: 0;
    line-height: 2rem; }
    @media (min-width: 375px) {
      .searchbox__title span {
        line-height: 2.5rem; } }
    @media (min-width: 40.0625em) {
      .searchbox__title span {
        line-height: 3rem; } }
  .b-group .searchbox__title .count, .b-group .searchbox__title .title {
    color: white; }
  .searchbox__title .count {
    float: left;
    font-size: 4.5rem;
    line-height: 4rem;
    margin-right: 1rem; }
    @media (min-width: 375px) {
      .searchbox__title .count {
        font-size: 5.5rem;
        line-height: 5rem; } }
    @media (min-width: 40.0625em) {
      .searchbox__title .count {
        line-height: 6rem;
        font-size: 6.75rem; } }
  .searchbox__title .subtext {
    font-weight: normal; }
    .searchbox__title .subtext:before {
      content: "\A";
      white-space: pre; }
    .b-group .searchbox__title .subtext {
      color: rgba(255, 255, 255, 0.9); }

@media (min-width: 40.0625em) {
  .searchbox__header {
    border-radius: 2px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; } }

.b-group .searchbox__header {
  background: #41B297; }

.b-organization .searchbox__header {
  background-color: #f5f7f6; }
  @media (min-width: 40.0625em) {
    .b-organization .searchbox__header {
      background: rgba(255, 255, 255, 0.95); } }

.csspositionsticky .searchbox__header {
  position: -webkit-sticky;
  position: sticky;
  top: -8rem;
  z-index: 400; }
  @media (min-width: 375px) {
    .csspositionsticky .searchbox__header {
      top: -10rem; } }
  @media (min-width: 40.0625em) {
    .csspositionsticky .searchbox__header {
      top: -2rem; } }
  @media (min-width: 48.0625em) {
    .csspositionsticky .searchbox__header {
      top: 0rem; } }

.searchbox__form {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: start;
      align-items: flex-start; }

.searchbox__field {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  position: relative;
  margin-bottom: 2rem; }
  @media (min-width: 40.0625em) {
    .searchbox__field {
      -ms-flex: 1 0 40%;
          flex: 1 0 40%; } }
  @media (min-width: 48.0625em) {
    .searchbox__field {
      -ms-flex: 1;
          flex: 1;
      margin-bottom: 0; } }
  @media (min-width: 1280px) {
    .searchbox__field {
      -ms-flex: 1;
          flex: 1;
      margin-right: 2rem; } }
  .searchbox__field label {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 4rem;
    padding: 1rem;
    font-size: 1.75rem !important;
    line-height: 2rem !important; }
    @media (min-width: 375px) {
      .searchbox__field label {
        width: 6rem;
        padding: 1.5rem; } }
    .b-group .searchbox__field label {
      color: white; }
  .searchbox__field input[type='text'] {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    font-weight: bold;
    padding: 0 !important;
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
    padding-left: 4rem !important;
    padding-right: 3rem !important;
    line-height: 3rem !important;
    border-width: 2px; }
    @media (min-width: 375px) {
      .searchbox__field input[type='text'] {
        line-height: 4rem !important;
        padding-left: 6rem !important; } }
    @media (min-width: 1280px) {
      .searchbox__field input[type='text'] {
        padding-top: 1.75rem !important;
        padding-bottom: 1.75rem !important; } }
    .b-group .searchbox__field input[type='text'] {
      background: #41B297 !important;
      border-color: rgba(255, 255, 255, 0.5) !important;
      color: white; }
    .b-organization .searchbox__field input[type='text'] {
      background: white !important;
      border-color: #E3E7E6 !important; }
    .searchbox__field input[type='text']::-webkit-input-placeholder {
      font-weight: normal; }
      .b-group .searchbox__field input[type='text']::-webkit-input-placeholder {
        color: rgba(255, 255, 255, 0.8); }
    .b-group .searchbox__field input[type='text']:focus {
      border-color: rgba(255, 255, 255, 0.8) !important;
      box-shadow: 0 0 0 2px rgba(50, 151, 127, 0.5) !important; }
    .b-organization .searchbox__field input[type='text']:focus {
      border-color: #B5BBB9 !important;
      box-shadow: 0 0 0 2px rgba(80, 80, 77, 0.05) !important; }
  .searchbox__field .icon {
    width: 100%;
    height: 100%; }
    .b-group .searchbox__field .icon {
      fill: white; }

@media (min-width: 40.0625em) {
  .searchbox__field--term {
    margin-right: 1rem; } }

@media (min-width: 40.0625em) {
  .searchbox__field--location {
    margin-left: 1rem; } }

.searchbox__button {
  -ms-flex-order: 4;
      order: 4;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }
  @media (min-width: 40.0625em) {
    .searchbox__button {
      -ms-flex: 1;
          flex: 1; } }
  @media (min-width: 48.0625em) {
    .searchbox__button {
      margin-left: 2rem;
      -ms-flex: 0;
          flex: 0; } }
  @media (min-width: 1280px) {
    .searchbox__button {
      margin-left: 0; } }
  .searchbox__button .btn {
    line-height: 3rem;
    width: 100%;
    padding: 0.875rem 1rem;
    font-size: 1.75rem; }
    @media (min-width: 375px) {
      .searchbox__button .btn {
        font-size: 2rem;
        line-height: 4rem;
        padding: 0.875rem 1.5rem; } }
    @media (min-width: 40.0625em) {
      .searchbox__button .btn {
        width: auto; } }
    @media (min-width: 64.0625em) {
      .searchbox__button .btn {
        padding-left: 2.5rem;
        padding-right: 2.5rem; } }
    @media (min-width: 1280px) {
      .searchbox__button .btn {
        padding-top: 1.875rem;
        padding-bottom: 1.875rem; } }
    @media (min-width: 88.5em) {
      .searchbox__button .btn {
        font-size: 2.5rem; } }
    .b-group .searchbox__button .btn {
      background: white;
      color: #41B297;
      border-color: white; }

.searchbox__filter {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  background: #ffffff;
  border-bottom: 1px solid #E3E7E6;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem; }
  @media (max-width: 40em) {
    .searchbox__filter {
      padding: 0; }
      .searchbox__filter .searchbox__filter-list .searchbox__filter-item:last-child {
        padding-right: 1rem; }
      .searchbox__filter:after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        height: 100%;
        width: 2rem;
        background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9) 60%); } }

.searchbox__filter-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }
  @media (min-width: 40.0625em) {
    .searchbox__filter-list {
      padding: 0; } }
  @media (min-width: 48.0625em) {
    .searchbox__filter-list {
      overflow: hidden; } }

.searchbox__filter-item .btn {
  font-weight: normal;
  background: white;
  border-radius: 10rem;
  margin-right: 1rem;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  padding-left: 1.8rem;
  padding-right: 1.5rem;
  border: 1px solid white;
  transition: 0.2s ease-in;
  font-size: 2rem; }
  .searchbox__filter-item .btn:hover {
    background: #f5f7f6; }
  .searchbox__filter-item .btn:after {
    content: "↓";
    font-weight: bold;
    display: inline-block;
    margin-left: 0.4em;
    font-size: 2rem;
    line-height: 1rem;
    vertical-align: -.125em;
    transition: 0.6s cubic-bezier(0.74, 0.33, 0.15, 1); }
  .searchbox__filter-item .btn.active {
    color: #111111;
    background: #f5f7f6; }
    .searchbox__filter-item .btn.active:after {
      transform: rotateX(180deg) translateY(0.5px); }

.searchbox__filter-title {
  display: none; }
  @media (min-width: 48.0625em) {
    .searchbox__filter-title {
      display: block; } }
  @media (min-width: 1280px) {
    .searchbox__filter-title {
      margin: 0;
      -ms-flex: 0 0 33.3333333333%;
          flex: 0 0 33.3333333333%; } }

.searchbox__filter-detail {
  background: white; }

.filter {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.filter__icon {
  width: 8rem;
  height: 8rem;
  border: 1px solid #E3E7E6;
  border-radius: 100%;
  padding: 4rem; }
  @media (min-width: 48.0625em) {
    .filter__icon {
      width: 16rem;
      height: 16rem; } }
  .filter__icon svg {
    width: 100%;
    height: 100%; }

.filter__title {
  text-align: center;
  margin-top: 2rem; }

.different .searchbox {
  margin-top: -9rem !important; }
  @media (min-width: 88.5em) {
    .different .searchbox {
      margin-top: -10rem !important; } }

.different .section--searchbox .section__body {
  max-width: 100%;
  width: 100%;
  margin: 0 !important;
  padding: 0; }

/*----------------------------------------*  TEASER ORGANIZATION
\*----------------------------------------*/
@keyframes row1 {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-100%); } }

.teaser-organization {
  position: relative;
  overflow-x: auto;
  overflow-y: auto;
  height: 16rem;
  margin-top: 4rem;
  transition: 1.9s cubic-bezier(0.12, 0.43, 0.38, 1);
  -webkit-overflow-scrolling: touch; }
  @media (min-width: 40.0625em) {
    .teaser-organization {
      height: 21rem; } }
  @media (min-width: 48.0625em) {
    .teaser-organization {
      height: 26rem; } }
  @media (min-width: 64.0625em) {
    .teaser-organization {
      overflow: visible;
      height: 32rem;
      margin: 12rem 0 16rem;
      -webkit-overflow-scrolling: auto; } }
  @media (min-width: 88.5em) {
    .teaser-organization {
      height: 36rem; } }

/**
 * Elements
 */
.teaser-organization__row {
  position: absolute;
  top: 0;
  left: 1rem;
  padding-right: 1rem;
  display: -ms-flexbox;
  display: flex; }
  @media (min-width: 40.0625em) {
    .teaser-organization__row {
      left: 3rem;
      padding-right: 3rem; } }
  @media (min-width: 48.0625em) {
    .teaser-organization__row {
      left: 4.5rem;
      padding-right: 4.5rem; } }
  @media (min-width: 64.0625em) {
    .teaser-organization__row {
      will-change: transform;
      padding-right: 0; } }
  @media (min-width: 40.0625em) {
    .teaser-organization__row:nth-child(1) {
      left: 3rem; } }
  @media (min-width: 48.0625em) {
    .teaser-organization__row:nth-child(1) {
      left: 4.5rem; } }
  @media (min-width: 64.0625em) {
    .teaser-organization__row:nth-child(1) {
      top: 0rem;
      left: 0rem; } }
  .teaser-organization__row:nth-child(1) .teaser-organization__item:before {
    top: 0;
    padding-bottom: 2rem;
    transform: translateY(-80%); }
  .teaser-organization__row:nth-child(1) .teaser-organization__item:hover:before {
    transform: translateY(-100%);
    opacity: 1; }
  .teaser-organization__row:nth-child(2) {
    top: 8rem;
    left: 8rem; }
    @media (min-width: 40.0625em) {
      .teaser-organization__row:nth-child(2) {
        top: 10rem;
        left: 12rem; } }
    @media (min-width: 48.0625em) {
      .teaser-organization__row:nth-child(2) {
        top: 13rem;
        left: 16rem; } }
    @media (min-width: 64.0625em) {
      .teaser-organization__row:nth-child(2) {
        top: 18rem;
        left: 0rem; } }
    @media (min-width: 88.5em) {
      .teaser-organization__row:nth-child(2) {
        top: 20rem; } }
    .teaser-organization__row:nth-child(2) .teaser-organization__item:before {
      bottom: 0;
      padding-top: 2rem;
      transform: translateY(80%); }
    .teaser-organization__row:nth-child(2) .teaser-organization__item:hover:before {
      transform: translateY(100%);
      opacity: 1; }

.teaser-organization__item {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  width: 12rem;
  height: 6rem;
  margin: 0 1rem;
  margin-bottom: 2rem;
  background: white;
  box-shadow: 0 2px 2px 0px rgba(128, 140, 136, 0.13);
  -ms-flex: 0 0 12rem;
      flex: 0 0 12rem;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center; }
  @media (min-width: 40.0625em) {
    .teaser-organization__item {
      height: 8rem;
      width: 16rem;
      -ms-flex: 0 0 16rem;
          flex: 0 0 16rem; } }
  @media (min-width: 48.0625em) {
    .teaser-organization__item {
      margin: 0 1.5rem;
      height: 10rem;
      width: 20rem;
      -ms-flex: 0 0 20rem;
          flex: 0 0 20rem; } }
  @media (min-width: 64.0625em) {
    .teaser-organization__item {
      width: 28rem;
      height: 14rem;
      margin: 0 2rem;
      transition: 0.2s ease-in;
      -ms-flex: 0 0 28rem;
          flex: 0 0 28rem;
      will-change: opacity; }
      .teaser-organization:hover .teaser-organization__item {
        opacity: 0.5; }
        .teaser-organization:hover .teaser-organization__item .teaser-organization__logo--color {
          opacity: 0; }
      .teaser-organization__item:hover {
        opacity: 1 !important; }
        .teaser-organization__item:hover .teaser-organization__logo--color {
          opacity: 1 !important; }
      .teaser-organization__item:before {
        font-weight: bold;
        position: absolute;
        left: 0;
        display: block;
        width: 100%;
        content: attr(data-name);
        transition: 0.35s cubic-bezier(0.65, 0.62, 0.12, 2.06);
        text-align: center;
        opacity: 0;
        will-change: transform, opacity; }
      .teaser-organization__item:after {
        content: "";
        display: block;
        position: absolute;
        top: -2rem;
        left: -2rem;
        right: -2rem;
        bottom: -2rem; } }
  @media (min-width: 88.5em) {
    .teaser-organization__item {
      width: 32rem;
      height: 16rem;
      -ms-flex: 0 0 32rem;
          flex: 0 0 32rem; } }

.teaser-organization__logo {
  position: absolute;
  top: 1rem;
  left: 2rem;
  right: 2rem;
  bottom: 1rem;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat; }
  @media (min-width: 64.0625em) {
    .teaser-organization__logo {
      top: 2rem;
      left: 5rem;
      right: 5rem;
      bottom: 2rem; } }

.teaser-organization__logo--color {
  transition: 0.2s ease-in; }

.teaser-organization__logo--monochrome {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  z-index: -1; }

/*----------------------------------------*  FOOTER
\*----------------------------------------*/
.footer-links ul {
  -webkit-column-count: 2;
          column-count: 2;
  -webkit-column-gap: 3rem;
          column-gap: 3rem; }
  @media (min-width: 64.0625em) {
    .footer-links ul {
      -webkit-column-count: 3;
              column-count: 3; } }
  .footer-links ul li {
    display: inline-block;
    width: 100%; }

/**
 * Drupal Stuff
 */
/*----------------------------------------*  DRUPAL SPECIFIC
\*----------------------------------------*/
#block-ekw-local-tasks {
  position: absolute;
  z-index: 498;
  top: 0;
  left: 0;
  width: 100%;
  background: none; }
  #block-ekw-local-tasks ul {
    overflow: hidden;
    padding: 0;
    list-style: none; }
  #block-ekw-local-tasks li {
    float: right;
    margin-left: 2rem;
    font-size: 1.75rem;
    line-height: 2rem; }
  #block-ekw-local-tasks a {
    opacity: .5;
    color: #111111; }
    #block-ekw-local-tasks a:hover {
      opacity: 1; }

.layout-content {
  position: relative; }

@media (min-width: 48.0625em) {
  .paragraph--type--companies h2 {
    white-space: pre; } }

/**
 * Helper
 */
.relative {
  position: relative; }

.overflow-visible {
  overflow: visible !important; }

.visually-hidden {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  height: 1px;
  width: 1px;
  word-wrap: normal; }

.pin {
  position: absolute; }

.position-static {
  position: static; }

.pin--t-r {
  top: 0;
  right: 0; }

.pin--b-l {
  top: 0;
  left: 0; }

.pin--b-r {
  top: 0;
  right: 0; }

.pin--center-off {
  transform: translate(25%, -25%); }

.flex {
  display: -ms-flexbox;
  display: flex; }

.flex--column {
  -ms-flex-direction: column;
      flex-direction: column; }

.flex-item--grow-1 {
  -ms-flex-positive: 1;
      flex-grow: 1; }

@media (min-width: 40.0625em) {
  .sm-flex--reverse {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvb2xraXQuY3NzIiwidG9vbGtpdC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL3Rvb2xzL19taXhpbnMuc2NzcyIsInRvb2xzL19taXhpbnMuc2NzcyIsInRvb2xzL19mdW5jdGlvbnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9zZXR0aW5ncy9fc2V0dGluZ3Muc2NzcyIsInNldHRpbmdzL19zZXR0aW5ncy5zY3NzIiwic2V0dGluZ3MvX3otaW5kZXguc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy92ZW5kb3IvX25vcm1hbGl6ZS5zY3NzIiwiLi4vdmVuZG9yL3N3aXBlci9fc3dpcGVyLnNjc3MiLCJhbmltYXRpb25zL19yb3RhdGUuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9kZWZhdWx0cy9fYm94LW1vZGVsLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvZGVmYXVsdHMvX2VsZW1lbnRzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvZGVmYXVsdHMvX3RhYmxlLnNjc3MiLCJzZXR0aW5ncy9fa2FuYmFzdS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2hlbHBlcnMvX3RleHQtcmVzcG9uc2l2ZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2hlbHBlcnMvX2Zsb2F0LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy9fc3BhY2luZ3Muc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9oZWxwZXJzL19zcGFjaW5ncy1yZXNwb25zaXZlLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy9faW1hZ2VzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy9fcG9zaXRpb25uaW5nLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy9fZGlzcGxheS5zY3NzIiwiaGVscGVycy9fdGV4dC5zY3NzIiwiaGVscGVycy9fbGlua3Muc2NzcyIsImhlbHBlcnMvX2JvcmRlci5zY3NzIiwiaGVscGVycy9fZGlzcGxheS5zY3NzIiwiYmFzZS9fcGFnZS5zY3NzIiwiYmFzZS9fZm9udHMuc2NzcyIsImJhc2UvX3R5cG9ncmFwaHkuc2NzcyIsImJhc2UvX2Zvcm1zLnNjc3MiLCJiYXNlL190YWJsZS5zY3NzIiwiYmFzZS9fYnJhbmQuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9jb21wb25lbnRzL193aWR0aHMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9jb21wb25lbnRzL193aWR0aHMtcmVzcG9uc2l2ZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtcmVzcG9uc2l2ZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX21vc2FpYy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvX21vc2FpYy1yZXNwb25zaXZlLnNjc3MiLCJjb21wb25lbnRzL19idG4uc2NzcyIsImNvbXBvbmVudHMvX2xpc3Quc2NzcyIsImNvbXBvbmVudHMvX2xpc3QtaW5saW5lLnNjc3MiLCJjb21wb25lbnRzL19saXN0LXN0YWNrZWQuc2NzcyIsImNvbXBvbmVudHMvX2JveC5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9faWNvbi5zY3NzIiwiY29tcG9uZW50cy9fbWF0ZXJpYWwuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRsaW5lLnNjc3MiLCJjb21wb25lbnRzL19uYXZiYXIuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rvci5zY3NzIiwiY29tcG9uZW50cy9fbGF5b3V0YnJlYWtlci5zY3NzIiwiY29tcG9uZW50cy9fY29sdW1ucy5zY3NzIiwiY29tcG9uZW50cy9fZHJ1cGFsLWxhbmd1YWdlc3dpdGNoZXIuc2NzcyIsImNvbXBvbmVudHMvX2dyaWQuc2NzcyIsImNvbXBvbmVudHMvX3NlY3Rpb24tc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL19idWJibGVzLnNjc3MiLCJjb21wb25lbnRzL19pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9fcGlsbC5zY3NzIiwiY29tcG9uZW50cy9fYXJ0aWNsZS5zY3NzIiwiY29tcG9uZW50cy9faW5wdXQtcmFuZ2Uuc2NzcyIsInN0cnVjdHVyZXMvX3NlYXJjaGJveC5zY3NzIiwic3RydWN0dXJlcy9fdGVhc2VyLW9yZ2FuaXphdGlvbi5zY3NzIiwic3RydWN0dXJlcy9fZm9vdGVyLnNjc3MiLCJkcnVwYWwvX2RydXBhbC5zY3NzIiwiYmFzZS9faGVscGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOztHQUVHO0FDRkg7NENBRTRDO0FDRjVDOzs7O0dBSUc7QUNKSDs0Q0FFNEM7QUFHNUM7O0dBRUc7QUFNSDs7R0FFRztBQU1IOzs7Ozs7R0FNRztBQU1IOztHQUVHO0FBTUg7O0dBRUc7QUhqQ0g7O0dBRUc7QUlaSDs7Ozs0Q0FLNEM7QUFNNUM7O0dBRUc7QUFVSDs7R0FFRztBQWVIOztHQUVHO0FBbUJIOztHQUVHO0FBNEJIOztHQUVHO0FBT0g7NENBRTRDO0FBRTVDOztHQUVHO0FBOEJIOztHQUVHO0FBOEJIOztHQUVHO0FBS0g7O0dBRUc7QUFTSDs7R0FFRztBQUtIOztHQUVHO0FBTUg7O0dBRUc7QUFLSDs7R0FFRztBQUtIOztHQUVHO0FDek5IOztHQUVHO0FBVUg7O0dBRUc7QUE0Qkg7O0dBRUc7QUE0SUg7O0dBRUc7QUFNSDs7R0FFRztBQ2xNSDs0Q0FFNEM7QU5tQjVDOztHQUVHO0FPdkJIOzs7R0FHRztBQUVIOzs7O0dBSUc7QUFFSDtFQUNFLHdCQUF1QjtFQUFHLE9BQU87RUFDakMsMkJBQTBCO0VBQUcsT0FBTztFQUNwQywrQkFBOEI7RUFBRyxPQUFPLEVBQ3pDOztBQUVEOztHQUVHO0FBRUg7RUFDRSxVQUFTLEVBQ1Y7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOzs7OztHQUtHO0FBRUg7Ozs7Ozs7Ozs7Ozs7RUFhRSxlQUFjLEVBQ2Y7O0FBRUQ7OztHQUdHO0FBRUg7Ozs7RUFJRSxzQkFBcUI7RUFBRyxPQUFPO0VBQy9CLHlCQUF3QjtFQUFHLE9BQU8sRUFDbkM7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSxjQUFhO0VBQ2IsVUFBUyxFQUNWOztBQUVEOzs7R0FHRztBUmtHSDs7RVE5RkUsY0FBYSxFQUNkOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIO0VB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RUc7QThEcElIO0VBQ0UsbUJBQWtCLEVBQ25COztBQUVEO0VBQ0UsNkJBQTRCLEVBQzdCOztBQUVEO0VBQ0UsOEJBQTZCO0VBQzdCLCtCQUE4QjtFQUM5QixpQkFBZ0I7RUFDaEIsWUFBVztFQUNYLFdBQVU7RUFDVixrQkFBaUIsRUFDbEI7O0FBQ0Q7RUFDRSxtQkFBa0IsRUFDbkI7O0FBRUQ7RUFDRSxpQkFBZ0IsRUFDakI7O0FBRUQ7RUFDRSxPQUFNO0VBQ04sU0FBUSxFQUNUOztBQUVEO0VBQ0UsT0FBTTtFQUNOLFFBQU8sRUFDUjs7QUFFRDtFQUNFLE9BQU07RUFDTixTQUFRLEVBQ1Q7O0FBRUQ7RUFDRSxnQ0FBOEIsRUFDL0I7O0FBRUQ7RUFDRSxxQkFBYTtFQUFiLGNBQWEsRUFDZDs7QUFFRDtFQUNFLDJCQUFzQjtNQUF0Qix1QkFBc0IsRUFDdkI7O0FBRUQ7RUFDRSxxQkFBWTtNQUFaLGFBQVksRUFDYjs7QTdEQ0s7RTZEQ047SUFFSSxnQ0FBMkI7UUFBM0IsNEJBQTJCLEVBRTlCLEVBQUEiLCJmaWxlIjoidG9vbGtpdC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIFRvb2xzXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIE1JWElOU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIFJldHVybiBmb250LXNpemUgYW5kIGxpbmUtaGVpZ2h0IGZvciBhIGZvbnQuXG4gKiBXaGVuIGFkZGluZyB0aGUgJGZvcmNlIHBhcmFtZXRlciwgaXQgd2lsbCBhZGQgIWltcG9ydGFudFxuICogaW4gb3JkZXIgdG8gb3ZlcnJpZGUgaXQgSEFSRC5cbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgRlVOQ1RJT05TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQ29udmVydCBudW1iZXIgdG8gcHggdmFsdWVcbiAqL1xuLyoqXG4gKiBDYWxjdWxhdGUgUkVNIHZhbHVlIGJhc2VkIG9uIHRoZSBkZWZhdWx0IGZvbnQtc2l6ZVxuICovXG4vKipcbiAqIFJldHVybiBhIHZhbHVlIGRpdmlkZWQgYnkgYSByYXRpb1xuICogSXQgdXNlcyB0aGUgZ29sZGVuIHJhdGlvIGJ5IGRlZmF1bHRcbiAqXG4gKiBVc2VmdWwgdG8gY3JlYXRlIFwidmlzdWFsbHkgZXF1YWxcIiBzcGFjaW5nc1xuICogQXMgbWF0aGVtYXRpY2FsbHkgZXF1YWwgc3BhY2luZ3MgbmV2ZXIgXCJ2aXN1YWxseVwiIGxvb2sgZXF1YWwgYXJvdW5kIHRleHRcbiAqL1xuLyoqXG4gKiBSZXR1cm4gYSB1bml0bGVzcyB2YWx1ZVxuICovXG4vKipcbiAqIEFkZGl0aW9uIHRvcCBhbmQgYm90dG9tIHBhZGRpbmdcbiAqL1xuLyoqXG4gKiBTZXR0aW5nc1xuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBHTE9CQUwgU0VUVElOR1NcblxuICBDaGVjayB0aGUgZm9sbG93aW5nIHBhZ2UgZm9yIGRldGFpbHM6XG4gIGthbmJhc3UubGlpcC5jaC9zZXR0aW5ncy5odG1sXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQ29sb3JzXG4gKi9cbi8qKlxuICogVHlwb2dyYXBoeVxuICovXG4vKipcbiAqIFNwYWNpbmdzXG4gKi9cbi8qKlxuICogUmVzcG9uc2l2ZW5lc3NcbiAqL1xuLyoqXG4gKiBNaXNjZWxsYW5lb3VzXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIENPTVBPTkVOVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBCdXR0b25zXG4gKi9cbi8qKlxuICogRm9ybXNcbiAqL1xuLyoqXG4gKiBMaXN0c1xuICovXG4vKipcbiAqIEJveFxuICovXG4vKipcbiAqIEdyaWRcbiAqL1xuLyoqXG4gKiBXaWR0aHNcbiAqL1xuLyoqXG4gKiBNZWRpYVxuICovXG4vKipcbiAqIE1lZGlhIHJlc3BvbnNpdmVcbiAqL1xuLyoqXG4gKiBNb3NhaWMgcmVzcG9uc2l2ZVxuICovXG4vKipcbiAqIExheW91dFxuICovXG4vKipcbiAqIENvbG9yc1xuICovXG4vKipcbiAqIFNwYWNpbmcgJiBUeXBvZ3JhcGh5XG4gKi9cbi8qKlxuICogU2hhZG93c1xuICovXG4vKipcbiAqIFRyYW5zaXRpb25zXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFotSU5ERVhcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBWZW5kb3JzXG4gKi9cbi8qIVxuICogbm9ybWFsaXplLmNzcyB2My4wLjIgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemVcbiAqIENVU1RPTUlaRURcbiAqL1xuLyoqXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICogMi4gUHJldmVudCBpT1MgdGV4dCBzaXplIGFkanVzdCBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2UsIHdpdGhvdXQgZGlzYWJsaW5nXG4gKiAgICB1c2VyIHpvb20uXG4gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlcjogMDsgfVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cbmhyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG4gIG1hcmdpbjogMDtcbiAgLyogMyAqLyB9XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLyogMyAqLyB9XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7IH1cblxuLyoqXG4gKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICpcbiAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuICovXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgYW5kIENocm9tZVxuICogICAgKGluY2x1ZGUgYC1tb3pgIHRvIGZ1dHVyZS1wcm9vZikuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAqL1xubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiBUYWJsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcbiAqIFN3aXBlciAzLjQuMiAtIEN1c3RvbSBCdWlsZFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIFxuICogSW5jbHVkZWQgbW9kdWxlczogXG4gKiBcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICogXG4gKiBDb3B5cmlnaHQgMjAxNywgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqIFRoZSBpRGFuZ2Vyby51c1xuICogaHR0cDovL3d3dy5pZGFuZ2Vyby51cy9cbiAqIFxuICogTGljZW5zZWQgdW5kZXIgTUlUXG4gKiBcbiAqIFJlbGVhc2VkIG9uOiBNYXkgMjMsIDIwMTdcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7IH1cblxuLnN3aXBlci1jb250YWluZXItbm8tZmxleGJveCAuc3dpcGVyLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtbW96LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IC1tb3otdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiAtby10cmFuc2Zvcm07XG4gIC1tcy10cmFuc2l0aW9uLXByb3BlcnR5OiAtbXMtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSwgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1tdWx0aXJvdyA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LWxpbmVzOiBtdWx0aXBsZTtcbiAgLW1vei1ib3gtbGluZXM6IG11bHRpcGxlO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAtbXMtZmxleDogMCAwIGF1dG87XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCwgLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRlIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtLGhlaWdodDtcbiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiAtbW96LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW8tdHJhbnNmb3JtO1xuICAtbXMtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1zLXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLGhlaWdodDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTEwMDA7IH1cblxuLnN3aXBlci13cDgtaG9yaXpvbnRhbCB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15OyB9XG5cbi5zd2lwZXItd3A4LXZlcnRpY2FsIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7IH1cblxuLnN3aXBlci1idXR0b24tbmV4dCwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAyN3B4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIG1hcmdpbi10b3A6IC0yMnB4O1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogMjdweCA0NHB4O1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMjdweCA0NHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsIC5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyMzAwN2FmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gIGxlZnQ6IDEwcHg7XG4gIHJpZ2h0OiBhdXRvOyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjaywgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSwgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQsIC5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyMzAwN2FmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gIHJpZ2h0OiAxMHB4O1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjaywgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSwgLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC4zcztcbiAgLW1vei10cmFuc2l0aW9uOiAuM3M7XG4gIC1vLXRyYW5zaXRpb246IC4zcztcbiAgdHJhbnNpdGlvbjogLjNzO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsIC5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sIC5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbiB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IC4yOyB9XG5cbmJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTUwJSwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNTAlLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogNXB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIDVweDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6ICMwMDdhZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtby10cmFuc2Zvcm06IHNjYWxlKDApO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1vLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgLW8tdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7IH1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzIHtcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzcy5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzcy5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgbWFyZ2luLXRvcDogLTIxcHg7XG4gIHotaW5kZXg6IDEwO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7IH1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMTIwJTIwMTIwJyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB4bWxucyUzQXhsaW5rJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJyUzRSUzQ2RlZnMlM0UlM0NsaW5lJTIwaWQlM0QnbCclMjB4MSUzRCc2MCclMjB4MiUzRCc2MCclMjB5MSUzRCc3JyUyMHkyJTNEJzI3JyUyMHN0cm9rZSUzRCclMjM2YzZjNmMnJTIwc3Ryb2tlLXdpZHRoJTNEJzExJyUyMHN0cm9rZS1saW5lY2FwJTNEJ3JvdW5kJyUyRiUzRSUzQyUyRmRlZnMlM0UlM0NnJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoNjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDkwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxMjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE1MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjM3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTgwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNDYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyMTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy41NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI0MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjY2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjcwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNzUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy44NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMzMCUyMDYwJTJDNjApJyUyRiUzRSUzQyUyRmclM0UlM0MlMkZzdmclM0VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzZmZmJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG4vKipcbiAqIEFuaW1hdGlvbnNcbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgUk9UQVRFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQ291bnRlcmNsb2Nrd2lzZVxuICovXG5Aa2V5ZnJhbWVzIHJvdGF0ZS1jb3VudGVyY2xvY2t3aXNlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpOyB9IH1cblxuLyoqXG4gKiBEZWZhdWx0c1xuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBCT1ggTU9ERUxcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBVc2UgdGhlIFwic21hcnRcIiBib3ggbW9kZWwgZ2xvYmFsbHkuXG4gKlxuICogY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlXG4gKi9cbmh0bWwge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qLCAqOjpiZWZvcmUsICo6OmFmdGVyIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICAtbW96LWJveC1zaXppbmc6IGluaGVyaXQ7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgRUxFTUVOVCBERUZBVUxUIEJFSEFWSU9SXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmltZyxcbmlmcmFtZSxcbmVtYmVkLFxub2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgVEFCTEVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgfVxuXG5jYXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxudGgsXG50ZCB7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLyoqXG4gKiBIZWxwZXJzXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFRFWFQgUkVTUE9OU0lWRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIEFsaWdubWVudFxuICovXG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5zbS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnNtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAubWQtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZC10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZC10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgLmxnLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGctdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGctdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gIC54bC10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnhsLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnhsLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgRkxPQVRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jbGVhcmZpeDphZnRlcixcbmRsOmFmdGVyLFxuLmRsLS1pbmxpbmUgZGQ6YWZ0ZXIsXG4ubWVkaWE6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFNQQUNJTkdTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogTUFSR0lOU1xuICogR2VuZXJhdGUgbWFyZ2luIGNsYXNzZXMgYmFzZWQgb24gc3BhY2luZyB1bml0c1xuICpcbiAqIG1yZyh8dHxyfGJ8bHxofHYpMCAgID0+IG5vIG1hcmdpblxuICogbXJnKHx0fHJ8YnxsfGh8diktLSAgPT4gMS80XG4gKiBtcmcofHR8cnxifGx8aHx2KS0gICA9PiAxLzJcbiAqIG1yZyh8dHxyfGJ8bHxofHYpICAgID0+IDF4XG4gKiBtcmcofHR8cnxifGx8aHx2KSsgICA9PiAyeFxuICogbXJnKHx0fHJ8YnxsfGh8dikrKyAgPT4gNHhcbiAqXG4gKiB7bm90aGluZ30gID0+IGFsbFxuICogdCAgICAgICAgICA9PiB0b3BcbiAqIHIgICAgICAgICAgPT4gcmlnaHRcbiAqIGIgICAgICAgICAgPT4gYm90dG9tXG4gKiBsICAgICAgICAgID0+IGxlZnRcbiAqIGggICAgICAgICAgPT4gaG9yaXpvbnRhbCAobGVmdCArIHJpZ2h0KVxuICogdiAgICAgICAgICA9PiB2ZXJ0aWNhbCAodG9wICsgYm90dG9tKVxuICovXG4ubXJnMCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi5tcmd0MCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ubXJncjAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubXJnYjAge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2wwIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubXJnaDAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubXJndjAge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ubXJnIHtcbiAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3Qge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3Ige1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnYiB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnbCB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2gge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJndiB7XG4gIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmctLSB7XG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmd0LS0ge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3ItLSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmdiLS0ge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2wtLSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2gtLSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmd2LS0ge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnLSB7XG4gIG1hcmdpbjogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmd0LSB7XG4gIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnci0ge1xuICBtYXJnaW4tcmlnaHQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnYi0ge1xuICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2wtIHtcbiAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnaC0ge1xuICBtYXJnaW4tcmlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJndi0ge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnXFwrIHtcbiAgbWFyZ2luOiA1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3RcXCsge1xuICBtYXJnaW4tdG9wOiA1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ3JcXCsge1xuICBtYXJnaW4tcmlnaHQ6IDVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnYlxcKyB7XG4gIG1hcmdpbi1ib3R0b206IDVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnbFxcKyB7XG4gIG1hcmdpbi1sZWZ0OiA1cmVtICFpbXBvcnRhbnQ7IH1cblxuLm1yZ2hcXCsge1xuICBtYXJnaW4tcmlnaHQ6IDVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDVyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJndlxcKyB7XG4gIG1hcmdpbi10b3A6IDVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmdcXCtcXCsge1xuICBtYXJnaW46IDdyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJndFxcK1xcKyB7XG4gIG1hcmdpbi10b3A6IDdyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnclxcK1xcKyB7XG4gIG1hcmdpbi1yaWdodDogN3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmdiXFwrXFwrIHtcbiAgbWFyZ2luLWJvdHRvbTogN3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmdsXFwrXFwrIHtcbiAgbWFyZ2luLWxlZnQ6IDdyZW0gIWltcG9ydGFudDsgfVxuXG4ubXJnaFxcK1xcKyB7XG4gIG1hcmdpbi1yaWdodDogN3JlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tbGVmdDogN3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tcmd2XFwrXFwrIHtcbiAgbWFyZ2luLXRvcDogN3JlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiA3cmVtICFpbXBvcnRhbnQ7IH1cblxuLyoqXG4gKiBQQURESU5HU1xuICogR2VuZXJhdGUgcGFkZGluZyBjbGFzc2VzIGJhc2VkIG9uIHNwYWNpbmcgdW5pdHNcbiAqXG4gKiBwZGcofHR8cnxifGx8aHx2KTAgICA9PiBubyBtYXJnaW5cbiAqIHBkZyh8dHxyfGJ8bHxofHYpLS0gID0+IDEvNFxuICogcGRnKHx0fHJ8YnxsfGh8diktICAgPT4gMS8yXG4gKiBwZGcofHR8cnxifGx8aHx2KSAgICA9PiAxeFxuICogcGRnKHx0fHJ8YnxsfGh8dikrICAgPT4gMnhcbiAqIHBkZyh8dHxyfGJ8bHxofHYpKysgID0+IDR4XG4gKlxuICoge25vdGhpbmd9ICA9PiBhbGxcbiAqIHQgICAgICAgICAgPT4gdG9wXG4gKiByICAgICAgICAgID0+IHJpZ2h0XG4gKiBiICAgICAgICAgID0+IGJvdHRvbVxuICogbCAgICAgICAgICA9PiBsZWZ0XG4gKiBoICAgICAgICAgID0+IGhvcml6b250YWwgKGxlZnQgKyByaWdodClcbiAqIHYgICAgICAgICAgPT4gdmVydGljYWwgKHRvcCArIGJvdHRvbSlcbiAqL1xuLnBkZzAge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3QwIHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuXG4ucGRncjAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2IwIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ucGRnbDAge1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ucGRnaDAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG5cbi5wZGd2MCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLnBkZyB7XG4gIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRndCB7XG4gIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3Ige1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2Ige1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wZGdsIHtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2gge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wZGd2IHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnLS0ge1xuICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3QtLSB7XG4gIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3ItLSB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnYi0tIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnbC0tIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2gtLSB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3YtLSB7XG4gIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZy0ge1xuICBwYWRkaW5nOiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3QtIHtcbiAgcGFkZGluZy10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnci0ge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2ItIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnbC0ge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnaC0ge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wZGd2LSB7XG4gIHBhZGRpbmctdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ1xcKyB7XG4gIHBhZGRpbmc6IDVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRndFxcKyB7XG4gIHBhZGRpbmctdG9wOiA1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3JcXCsge1xuICBwYWRkaW5nLXJpZ2h0OiA1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2JcXCsge1xuICBwYWRkaW5nLWJvdHRvbTogNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wZGdsXFwrIHtcbiAgcGFkZGluZy1sZWZ0OiA1cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2hcXCsge1xuICBwYWRkaW5nLXJpZ2h0OiA1cmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogNXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wZGd2XFwrIHtcbiAgcGFkZGluZy10b3A6IDVyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDVyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnXFwrXFwrIHtcbiAgcGFkZGluZzogN3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wZGd0XFwrXFwrIHtcbiAgcGFkZGluZy10b3A6IDdyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnclxcK1xcKyB7XG4gIHBhZGRpbmctcmlnaHQ6IDdyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnYlxcK1xcKyB7XG4gIHBhZGRpbmctYm90dG9tOiA3cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ2xcXCtcXCsge1xuICBwYWRkaW5nLWxlZnQ6IDdyZW0gIWltcG9ydGFudDsgfVxuXG4ucGRnaFxcK1xcKyB7XG4gIHBhZGRpbmctcmlnaHQ6IDdyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiA3cmVtICFpbXBvcnRhbnQ7IH1cblxuLnBkZ3ZcXCtcXCsge1xuICBwYWRkaW5nLXRvcDogN3JlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogN3JlbSAhaW1wb3J0YW50OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFNQQUNJTkdTIFJFU1BPTlNJVkVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBNYXJnaW5zXG4gKi9cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLnNtLW1yZzAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd0MCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdyMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2IwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2wwIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdoMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAuc20tbXJndjAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZyB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3Qge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2Ige1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnaCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJndiB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnLS0ge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd0LS0ge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnci0tIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnYi0tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2wtLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnaC0tIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd2LS0ge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZy0ge1xuICAgIG1hcmdpbjogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd0LSB7XG4gICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdyLSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2ItIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2wtIHtcbiAgICBtYXJnaW4tbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdoLSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJndi0ge1xuICAgIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ1xcKyB7XG4gICAgbWFyZ2luOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ3RcXCsge1xuICAgIG1hcmdpbi10b3A6IDVyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnclxcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLW1yZ2JcXCsge1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnbFxcKyB7XG4gICAgbWFyZ2luLWxlZnQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnaFxcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJndlxcKyB7XG4gICAgbWFyZ2luLXRvcDogNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnXFwrXFwrIHtcbiAgICBtYXJnaW46IDdyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJndFxcK1xcKyB7XG4gICAgbWFyZ2luLXRvcDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdyXFwrXFwrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdyZW0gIWltcG9ydGFudDsgfVxuICAuc20tbXJnYlxcK1xcKyB7XG4gICAgbWFyZ2luLWJvdHRvbTogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdsXFwrXFwrIHtcbiAgICBtYXJnaW4tbGVmdDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmdoXFwrXFwrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1tcmd2XFwrXFwrIHtcbiAgICBtYXJnaW4tdG9wOiA3cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogN3JlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAubWQtbXJnMCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3QwIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3IwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAubWQtbXJnYjAge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAubWQtbXJnbDAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2gwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd2MCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAubWQtbXJnIHtcbiAgICBtYXJnaW46IDNyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJndCB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJnYiB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdsIHtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdoIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd2IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmctLSB7XG4gICAgbWFyZ2luOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3QtLSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdyLS0ge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdiLS0ge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJnbC0tIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdoLS0ge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3YtLSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJnLSB7XG4gICAgbWFyZ2luOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3QtIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3ItIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDJyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJnYi0ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJnbC0ge1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2gtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd2LSB7XG4gICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJnXFwrIHtcbiAgICBtYXJnaW46IDVyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJndFxcKyB7XG4gICAgbWFyZ2luLXRvcDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdyXFwrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAubWQtbXJnYlxcKyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdsXFwrIHtcbiAgICBtYXJnaW4tbGVmdDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdoXFwrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd2XFwrIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdcXCtcXCsge1xuICAgIG1hcmdpbjogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmd0XFwrXFwrIHtcbiAgICBtYXJnaW4tdG9wOiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3JcXCtcXCsge1xuICAgIG1hcmdpbi1yaWdodDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1tcmdiXFwrXFwrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2xcXCtcXCsge1xuICAgIG1hcmdpbi1sZWZ0OiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ2hcXCtcXCsge1xuICAgIG1hcmdpbi1yaWdodDogN3JlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLW1yZ3ZcXCtcXCsge1xuICAgIG1hcmdpbi10b3A6IDdyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA3cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gIC5sZy1tcmcwIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAubGctbXJndDAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubGctbXJncjAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdiMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdsMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubGctbXJnaDAge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3YwIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmcge1xuICAgIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmd0IHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3Ige1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdiIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2wge1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2gge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3Yge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZy0tIHtcbiAgICBtYXJnaW46IDFyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJndC0tIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3ItLSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2ItLSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdsLS0ge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2gtLSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJndi0tIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmctIHtcbiAgICBtYXJnaW46IDJyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJndC0ge1xuICAgIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJnci0ge1xuICAgIG1hcmdpbi1yaWdodDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdiLSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdsLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJnaC0ge1xuICAgIG1hcmdpbi1yaWdodDogMnJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3YtIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdcXCsge1xuICAgIG1hcmdpbjogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmd0XFwrIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3JcXCsge1xuICAgIG1hcmdpbi1yaWdodDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1tcmdiXFwrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2xcXCsge1xuICAgIG1hcmdpbi1sZWZ0OiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2hcXCsge1xuICAgIG1hcmdpbi1yaWdodDogNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3ZcXCsge1xuICAgIG1hcmdpbi10b3A6IDVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ1xcK1xcKyB7XG4gICAgbWFyZ2luOiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ3RcXCtcXCsge1xuICAgIG1hcmdpbi10b3A6IDdyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJnclxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLW1yZ2JcXCtcXCsge1xuICAgIG1hcmdpbi1ib3R0b206IDdyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJnbFxcK1xcKyB7XG4gICAgbWFyZ2luLWxlZnQ6IDdyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJnaFxcK1xcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDdyZW0gIWltcG9ydGFudDsgfVxuICAubGctbXJndlxcK1xcKyB7XG4gICAgbWFyZ2luLXRvcDogN3JlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDdyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgLnhsLW1yZzAge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmd0MCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmdyMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ2IwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ2wwIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmdoMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAueGwtbXJndjAge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZyB7XG4gICAgbWFyZ2luOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ3Qge1xuICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ2Ige1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnaCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJndiB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnLS0ge1xuICAgIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmd0LS0ge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnci0tIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnYi0tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ2wtLSB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnaC0tIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmd2LS0ge1xuICAgIG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZy0ge1xuICAgIG1hcmdpbjogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmd0LSB7XG4gICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmdyLSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ2ItIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ2wtIHtcbiAgICBtYXJnaW4tbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmdoLSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJndi0ge1xuICAgIG1hcmdpbi10b3A6IDJyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ1xcKyB7XG4gICAgbWFyZ2luOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ3RcXCsge1xuICAgIG1hcmdpbi10b3A6IDVyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnclxcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLW1yZ2JcXCsge1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnbFxcKyB7XG4gICAgbWFyZ2luLWxlZnQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnaFxcKyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJndlxcKyB7XG4gICAgbWFyZ2luLXRvcDogNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnXFwrXFwrIHtcbiAgICBtYXJnaW46IDdyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJndFxcK1xcKyB7XG4gICAgbWFyZ2luLXRvcDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmdyXFwrXFwrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdyZW0gIWltcG9ydGFudDsgfVxuICAueGwtbXJnYlxcK1xcKyB7XG4gICAgbWFyZ2luLWJvdHRvbTogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmdsXFwrXFwrIHtcbiAgICBtYXJnaW4tbGVmdDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmdoXFwrXFwrIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDdyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1tcmd2XFwrXFwrIHtcbiAgICBtYXJnaW4tdG9wOiA3cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogN3JlbSAhaW1wb3J0YW50OyB9IH1cblxuLyoqXG4gKiBQYWRkaW5nc1xuICovXG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5zbS1wZGcwIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3QwIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdyMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdiMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAuc20tcGRnbDAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdoMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGd2MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGcge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRndCB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRnciB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdiIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRnaCB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGd2IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZy0tIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3QtLSB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRnci0tIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ2ItLSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRnbC0tIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRnaC0tIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3YtLSB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGctIHtcbiAgICBwYWRkaW5nOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3QtIHtcbiAgICBwYWRkaW5nLXRvcDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdyLSB7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdiLSB7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRnbC0ge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdoLSB7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGd2LSB7XG4gICAgcGFkZGluZy10b3A6IDJyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdcXCsge1xuICAgIHBhZGRpbmc6IDVyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRndFxcKyB7XG4gICAgcGFkZGluZy10b3A6IDVyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRnclxcKyB7XG4gICAgcGFkZGluZy1yaWdodDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdiXFwrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdsXFwrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAuc20tcGRnaFxcKyB7XG4gICAgcGFkZGluZy1yaWdodDogNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGd2XFwrIHtcbiAgICBwYWRkaW5nLXRvcDogNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ1xcK1xcKyB7XG4gICAgcGFkZGluZzogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGd0XFwrXFwrIHtcbiAgICBwYWRkaW5nLXRvcDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdyXFwrXFwrIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ2JcXCtcXCsge1xuICAgIHBhZGRpbmctYm90dG9tOiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ2xcXCtcXCsge1xuICAgIHBhZGRpbmctbGVmdDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5zbS1wZGdoXFwrXFwrIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXBkZ3ZcXCtcXCsge1xuICAgIHBhZGRpbmctdG9wOiA3cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDdyZW0gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLm1kLXBkZzAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAubWQtcGRndDAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3IwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2IwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdsMCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2gwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3YwIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZyB7XG4gICAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGd0IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2Ige1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2wge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdoIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3Yge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRnLS0ge1xuICAgIHBhZGRpbmc6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRndC0tIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdyLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRnYi0tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdsLS0ge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdoLS0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRndi0tIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZy0ge1xuICAgIHBhZGRpbmc6IDJyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRndC0ge1xuICAgIHBhZGRpbmctdG9wOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3ItIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2ItIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdsLSB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2gtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3YtIHtcbiAgICBwYWRkaW5nLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ1xcKyB7XG4gICAgcGFkZGluZzogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGd0XFwrIHtcbiAgICBwYWRkaW5nLXRvcDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdyXFwrIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2JcXCsge1xuICAgIHBhZGRpbmctYm90dG9tOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2xcXCsge1xuICAgIHBhZGRpbmctbGVmdDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5tZC1wZGdoXFwrIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3ZcXCsge1xuICAgIHBhZGRpbmctdG9wOiA1cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDVyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRnXFwrXFwrIHtcbiAgICBwYWRkaW5nOiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3RcXCtcXCsge1xuICAgIHBhZGRpbmctdG9wOiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ3JcXCtcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDdyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRnYlxcK1xcKyB7XG4gICAgcGFkZGluZy1ib3R0b206IDdyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRnbFxcK1xcKyB7XG4gICAgcGFkZGluZy1sZWZ0OiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXBkZ2hcXCtcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDdyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDdyZW0gIWltcG9ydGFudDsgfVxuICAubWQtcGRndlxcK1xcKyB7XG4gICAgcGFkZGluZy10b3A6IDdyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogN3JlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAubGctcGRnMCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGd0MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRncjAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRnYjAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2wwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRnaDAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRndjAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAubGctcGRnIHtcbiAgICBwYWRkaW5nOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3Qge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3Ige1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnYiB7XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRndiB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGctLSB7XG4gICAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGd0LS0ge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3ItLSB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdiLS0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2wtLSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2gtLSB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGd2LS0ge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnLSB7XG4gICAgcGFkZGluZzogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGd0LSB7XG4gICAgcGFkZGluZy10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnci0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnYi0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2wtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnaC0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRndi0ge1xuICAgIHBhZGRpbmctdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnXFwrIHtcbiAgICBwYWRkaW5nOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3RcXCsge1xuICAgIHBhZGRpbmctdG9wOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ3JcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnYlxcKyB7XG4gICAgcGFkZGluZy1ib3R0b206IDVyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnbFxcKyB7XG4gICAgcGFkZGluZy1sZWZ0OiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXBkZ2hcXCsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRndlxcKyB7XG4gICAgcGFkZGluZy10b3A6IDVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdcXCtcXCsge1xuICAgIHBhZGRpbmc6IDdyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRndFxcK1xcKyB7XG4gICAgcGFkZGluZy10b3A6IDdyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnclxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdiXFwrXFwrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGdsXFwrXFwrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDdyZW0gIWltcG9ydGFudDsgfVxuICAubGctcGRnaFxcK1xcKyB7XG4gICAgcGFkZGluZy1yaWdodDogN3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC5sZy1wZGd2XFwrXFwrIHtcbiAgICBwYWRkaW5nLXRvcDogN3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA3cmVtICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gIC54bC1wZGcwIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ3QwIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdyMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdiMCB7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAueGwtcGRnbDAge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdoMCB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGd2MCB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGcge1xuICAgIHBhZGRpbmc6IDNyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRndCB7XG4gICAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRnciB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdiIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRnaCB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGd2IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZy0tIHtcbiAgICBwYWRkaW5nOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ3QtLSB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRnci0tIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ2ItLSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRnbC0tIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRnaC0tIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ3YtLSB7XG4gICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGctIHtcbiAgICBwYWRkaW5nOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ3QtIHtcbiAgICBwYWRkaW5nLXRvcDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdyLSB7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdiLSB7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRnbC0ge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdoLSB7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGd2LSB7XG4gICAgcGFkZGluZy10b3A6IDJyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdcXCsge1xuICAgIHBhZGRpbmc6IDVyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRndFxcKyB7XG4gICAgcGFkZGluZy10b3A6IDVyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRnclxcKyB7XG4gICAgcGFkZGluZy1yaWdodDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdiXFwrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdsXFwrIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW0gIWltcG9ydGFudDsgfVxuICAueGwtcGRnaFxcKyB7XG4gICAgcGFkZGluZy1yaWdodDogNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogNXJlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGd2XFwrIHtcbiAgICBwYWRkaW5nLXRvcDogNXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ1xcK1xcKyB7XG4gICAgcGFkZGluZzogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGd0XFwrXFwrIHtcbiAgICBwYWRkaW5nLXRvcDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdyXFwrXFwrIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ2JcXCtcXCsge1xuICAgIHBhZGRpbmctYm90dG9tOiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ2xcXCtcXCsge1xuICAgIHBhZGRpbmctbGVmdDogN3JlbSAhaW1wb3J0YW50OyB9XG4gIC54bC1wZGdoXFwrXFwrIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA3cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA3cmVtICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXBkZ3ZcXCtcXCsge1xuICAgIHBhZGRpbmctdG9wOiA3cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDdyZW0gIWltcG9ydGFudDsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIElNQUdFU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaW1nLXJlc3BvbnNpdmUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uaW1nLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBWRVJUSUNBTCAmIEhPUklaT05UQUwgQUxJR05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmgtYWxpZ24ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi52LWFsaWduIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi52aC1hbGlnbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cblxuLnJlbGF0aXZlLXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBESVNQTEFZXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLmhpZGRlbi1zbS11cCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAuaGlkZGVuLW1kLXVwIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gIC5oaWRkZW4tbGctdXAge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgLmhpZGRlbi14bC11cCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgLmhpZGRlbi14cy1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDhlbSkge1xuICAuaGlkZGVuLXNtLWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRkZW4tbWQtZG93biB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDg4LjQzNzVlbSkge1xuICAuaGlkZGVuLWxnLWRvd24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCB7XG4gIC5oaWRkZW4tcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuaW52aXNpYmxlLXByaW50IHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBub3QgcHJpbnQge1xuICAudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnZpc2libGUtc3Ige1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KSAhaW1wb3J0YW50OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFRFWFRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBBbGlnbm1lbnRcbiAqL1xuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLyoqXG4gKiBDYXNlXG4gKi9cbi50ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi8qKlxuICogU3R5bGluZ1xuICovXG4udGV4dC1pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLnRleHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICogQ29sb3JzXG4gKi9cbi50ZXh0LW11dGVkIHtcbiAgY29sb3I6IHJnYmEoMTcsIDE3LCAxNywgMC42KTsgfVxuXG4udGV4dC13aGl0ZSB7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBMSU5LU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmEuYi1jb2xvcjpub3QoLmxpbmstaW52ZXJ0ZWQpOmhvdmVyLCBhLmItY29sb3I6bm90KC5saW5rLWludmVydGVkKTpmb2N1cywgYS5iLWNvbG9yOm5vdCgubGluay1pbnZlcnRlZCk6YWN0aXZlIHtcbiAgY29sb3I6ICMxMTExMTE7IH1cblxuYS5saW5rLWludmVydGVkOm5vdCg6aG92ZXIpIHtcbiAgY29sb3I6ICMxMTExMTE7IH1cblxuLmxpbmstbXV0ZWQge1xuICBjb2xvcjogcmdiYSgxNywgMTcsIDE3LCAwLjYpOyB9XG4gIC5saW5rLW11dGVkOmhvdmVyLCAubGluay1tdXRlZDpmb2N1cywgLmxpbmstbXV0ZWQ6YWN0aXZlIHtcbiAgICBjb2xvcjogIzExMTExMTsgfVxuXG4ubGluay11bnN0eWxlZCB7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIEJPUkRFUlNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJyZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFM0U3RTY7XG4gIGJvcmRlci13aWR0aDogMDsgfVxuXG4uYnJkLS10IHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyB9XG5cbi5icmQtLXIge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDsgfVxuXG4uYnJkLS1iIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4OyB9XG5cbi5icmQtLWwge1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4OyB9XG5cbi5icmQtLXYge1xuICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDsgfVxuXG4uYnJkLS1oIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgRElTUExBWVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gKiBCYXNlXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFBBR0VcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuICBib2R5LmItZ3JvdXAge1xuICAgIHBhZGRpbmctdG9wOiA2cmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgYm9keS5iLWdyb3VwIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDhyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAgIGJvZHkuYi1ncm91cCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgYm9keS5iLW9yZ2FuaXphdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDEwcmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgYm9keS5iLW9yZ2FuaXphdGlvbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxM3JlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgICAgYm9keS5iLW9yZ2FuaXphdGlvbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cblxuLnN0b3AtdHJhbnNpdGlvbnMgKiwgLnN0b3AtdHJhbnNpdGlvbnMgKjpiZWZvcmUsIC5zdG9wLXRyYW5zaXRpb25zICo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgRk9OVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRUtXIEhlbHZldGljYSc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaGVsdmV0aWNhLXJvbWFuLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdFS1cgSGVsdmV0aWNhJztcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9oZWx2ZXRpY2EtbGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0VLVyBIZWx2ZXRpY2EnO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9oZWx2ZXRpY2EtYm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRUtXIEhlbHZldGljYSBDb25kZW5zZWQnO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9oZWx2ZXRpY2EtY29uZGVuc2VkLWJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0VLVyBSb2JvdG8gTW9ubyc7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3JvYm90by1tb25vLWN1c3RvbS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgVFlQT0dSQVBIWSBTQ0FGRk9MRElOR1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IFwiRUtXIEhlbHZldGljYVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDUwJTtcbiAgY29sb3I6ICMxMTExMTE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmJvZHkge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAzcmVtOyB9XG5cbi5ncmlkLW92ZXJsYXk6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA4OTk5O1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBjb250ZW50OiAnJztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHVybCgvL2Jhc2Vob2xkLml0L2kvOC9hYWFhYWEpIHJlcGVhdCB0b3AgbGVmdDsgfVxuICBAbWVkaWEgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIC5ncmlkLW92ZXJsYXk6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgvL2Jhc2Vob2xkLml0L2kvMTYvYWFhYWFhKSByZXBlYXQgdG9wIGxlZnQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDJweCA4cHg7IH0gfVxuXG4vKipcbiAqIExpbmtzXG4gKi9cbmEge1xuICBjb2xvcjogaW5oZXJpdDsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyoqXG4gKiBIZWFkaW5nc1xuICovXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cblxuLnRleHQtaDEsXG5oMSxcbi5oMSB7XG4gIGZvbnQtc2l6ZTogNC4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC50ZXh0LWgxLFxuICAgIGgxLFxuICAgIC5oMSB7XG4gICAgICBmb250LXNpemU6IDdyZW07XG4gICAgICBsaW5lLWhlaWdodDogN3JlbTsgfSB9XG5cbi50ZXh0LWgyLFxuaDIsXG4uaDIge1xuICBmb250LXNpemU6IDIuODc1cmVtO1xuICBsaW5lLWhlaWdodDogNHJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLnRleHQtaDIsXG4gICAgaDIsXG4gICAgLmgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMy42MjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAudGV4dC1oMixcbiAgICBoMixcbiAgICAuaDIge1xuICAgICAgZm9udC1zaXplOiA0LjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLnRleHQtaDIsXG4gICAgaDIsXG4gICAgLmgyIHtcbiAgICAgIGZvbnQtc2l6ZTogNS43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2cmVtOyB9IH1cblxuLnRleHQtaDMsXG5oMyxcbi5oMyxcbi5idWJibGVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAyLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDRyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC50ZXh0LWgzLFxuICAgIGgzLFxuICAgIC5oMyxcbiAgICAuYnViYmxlX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDQuMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogNXJlbTsgfSB9XG5cbi50ZXh0LWg0LFxuaDQsXG4uaDQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDRyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC50ZXh0LWg0LFxuICAgIGg0LFxuICAgIC5oNCB7XG4gICAgICBmb250LXNpemU6IDMuNjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDVyZW07IH0gfVxuXG4udGV4dC1oNSxcbmg1LFxuLmg1IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogM3JlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnRleHQtaDUsXG4gICAgaDUsXG4gICAgLmg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDRyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLnRleHQtaDUsXG4gICAgaDUsXG4gICAgLmg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMi44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogNHJlbTsgfSB9XG5cbi50ZXh0LWg2LFxuaDYsXG4uaDYsXG4uYnViYmxlX190ZXh0IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogM3JlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLnRleHQtaDYsXG4gICAgaDYsXG4gICAgLmg2LFxuICAgIC5idWJibGVfX3RleHQge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogNHJlbTsgfSB9XG5cbmgxLFxuLmgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBsZXR0ZXItc3BhY2luZzogLS4wMTVlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgaDEsXG4gICAgLmgxIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVyZW07IH0gfVxuXG5oMixcbi5oMiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDFlbTsgfVxuXG5oMyxcbi5oMyB7XG4gIG1hcmdpbjogMnJlbSAwOyB9XG5cbmg0LFxuLmg0IHtcbiAgbWFyZ2luOiAycmVtIDAgMXJlbTsgfVxuXG5oNSxcbi5oNSB7XG4gIG1hcmdpbjogMnJlbSAwOyB9XG5cbmg2LFxuLmg2IHtcbiAgbWFyZ2luOiAycmVtIDA7IH1cblxuLnRleHQtbGFyZ2Uge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAzcmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAudGV4dC1sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAubGctdGV4dC1sYXJnZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkgYW5kIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5sZy10ZXh0LWxhcmdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDRyZW07IH0gfVxuXG4udGV4dC1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07IH1cblxuLm1kLWRvd24tdGV4dC1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5tZC1kb3duLXRleHQtc21hbGwge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDNyZW07IH0gfVxuXG4udGV4dC1xdW90ZSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogNHJlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLnRleHQtcXVvdGUge1xuICAgICAgZm9udC1zaXplOiAzLjYyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1cmVtOyB9IH1cblxuLyoqXG4gKiBQYXJhZ3JhcGhzXG4gKi9cbnAge1xuICBtYXJnaW46IDJyZW0gMCA0cmVtOyB9XG5cbi8qKlxuICogUHJlZm9ybWF0dGVkIHRleHRcbiAqL1xucHJlLFxuY29kZSB7XG4gIGZvbnQtZmFtaWx5OiAnTW9uYWNvJywgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0YWItc2l6ZTogNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmNjsgfVxuXG5wcmUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG5jb2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwOyB9XG4gIHByZSBjb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogTGlzdHNcbiAqL1xudWwsXG5vbCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG4gIHVsIHVsLFxuICB1bCBvbCxcbiAgb2wgdWwsXG4gIG9sIG9sIHtcbiAgICBtYXJnaW46IDA7IH1cblxuZGwge1xuICBtYXJnaW46IDA7IH1cblxuZHQge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kbC0taW5saW5lIGR0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDBweDsgfVxuXG4uZGwtLWlubGluZSBkZCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMHB4ICsgMnJlbSk7IH1cblxuLyoqXG4gKiBNaXNjZWxsYWVub3VzXG4gKi9cbmFiYnIge1xuICBjdXJzb3I6IGhlbHA7IH1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuY2l0ZSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbjogMXJlbSAwIDAuODc1cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTNFN0U2OyB9XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICdFS1cgUm9ib3RvIE1vbm8nLCAnUm9ib3RvIE1vbm8nLCAnTW9uYWNvJywgJ0NvdXJpZXIgTmV3JywgQ291cmllciwgbW9ub3NwYWNlOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIEZPUk1TXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogQmFzaWMgZm9ybSBlbGVtZW50c1xuICovXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwOyB9XG5cbmlucHV0W3R5cGU9J3RleHQnXSxcbmlucHV0W3R5cGU9J3NlYXJjaCddLFxuaW5wdXRbdHlwZT0nZW1haWwnXSxcbmlucHV0W3R5cGU9J3RlbCddLFxuaW5wdXRbdHlwZT0ndXJsJ10sXG5pbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuaW5wdXRbdHlwZT0nZGF0ZSddLFxuaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXSxcbmlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG5pbnB1dFt0eXBlPSdtb250aCddLFxuaW5wdXRbdHlwZT0nd2VlayddLFxuaW5wdXRbdHlwZT0ndGltZSddLFxuaW5wdXRbdHlwZT0nbnVtYmVyJ10sXG5pbnB1dFt0eXBlPSdmaWxlJ10sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjg3NXJlbSAxLjVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIGNvbG9yOiBpbmhlcml0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTNFN0U2O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuICBpbnB1dFt0eXBlPSd0ZXh0J106Zm9jdXMsXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSdlbWFpbCddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSd0ZWwnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0ndXJsJ106Zm9jdXMsXG4gIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsXG4gIGlucHV0W3R5cGU9J2RhdGUnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0nbW9udGgnXTpmb2N1cyxcbiAgaW5wdXRbdHlwZT0nd2VlayddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSd0aW1lJ106Zm9jdXMsXG4gIGlucHV0W3R5cGU9J251bWJlciddOmZvY3VzLFxuICBpbnB1dFt0eXBlPSdmaWxlJ106Zm9jdXMsXG4gIHNlbGVjdDpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI0I1QkJCOTtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIGlucHV0W3R5cGU9J3RleHQnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0nZW1haWwnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J3RlbCddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0ndXJsJ11bZGlzYWJsZWRdLFxuICBpbnB1dFt0eXBlPSdwYXNzd29yZCddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0nZGF0ZSddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXVtkaXNhYmxlZF0sXG4gIGlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ11bZGlzYWJsZWRdLFxuICBpbnB1dFt0eXBlPSdtb250aCddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0nd2VlayddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0ndGltZSddW2Rpc2FibGVkXSxcbiAgaW5wdXRbdHlwZT0nbnVtYmVyJ11bZGlzYWJsZWRdLFxuICBpbnB1dFt0eXBlPSdmaWxlJ11bZGlzYWJsZWRdLFxuICBzZWxlY3RbZGlzYWJsZWRdLFxuICB0ZXh0YXJlYVtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgY29sb3I6ICNCNUJCQjk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmNjsgfVxuXG5pbnB1dFt0eXBlPSdmaWxlJ10ge1xuICBmb250LXNpemU6IDIuNXJlbTsgfVxuXG5pbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyIHtcbiAgcGFkZGluZzogMDsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDVyZW07XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgfVxuXG5pbnB1dFt0eXBlPSdjaGVja2JveCddLFxuaW5wdXRbdHlwZT0ncmFkaW8nXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBsYWJlbCBpbnB1dFt0eXBlPSdjaGVja2JveCddLCBsYWJlbFxuICBpbnB1dFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubGFiZWwtLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gIC5sYWJlbC0taW5saW5lOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogM3JlbTsgfVxuXG4vKipcbiAqIEZvcm1zIGxheW91dFxuICovXG4uZm9ybS1ncm91cCB+IC5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG4uZmllbGQtbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cblxuLmZpZWxkLWhlbHAge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogI0UzRTdFNjsgfVxuXG4vKipcbiAqIFNpemVzXG4gKi9cbi5pbnB1dC0tc21hbGwsXG4uc2VsZWN0LS1zbWFsbCB7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuNzVyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4uaW5wdXQtLXNtYWxsIHtcbiAgcGFkZGluZzogMC44NzVyZW0gMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5zZWxlY3QtLXNtYWxsIHtcbiAgaGVpZ2h0OiA1Ljc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5pbnB1dC0tbGFyZ2UsXG4uc2VsZWN0LS1sYXJnZSB7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDNyZW0gIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmlucHV0LS1sYXJnZSxcbiAgICAuc2VsZWN0LS1sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDRyZW0gIWltcG9ydGFudDsgfSB9XG5cbi5pbnB1dC0tbGFyZ2Uge1xuICBwYWRkaW5nOiAxLjM3NXJlbSAycmVtICFpbXBvcnRhbnQ7IH1cblxuLnNlbGVjdC0tbGFyZ2Uge1xuICBoZWlnaHQ6IDcuNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAuaW5wdXQtLXJlc3BvbnNpdmUge1xuICAgIHBhZGRpbmc6IDEuMzc1cmVtIDJyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogM3JlbSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkgYW5kIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAgIC5pbnB1dC0tcmVzcG9uc2l2ZSB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDRyZW0gIWltcG9ydGFudDsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFRBQkxFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbnRhYmxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG50aCxcbnRkIHtcbiAgcGFkZGluZzogMDsgfVxuXG4udGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyB9XG4gIC50YWJsZSB0aGVhZCB0aCB7XG4gICAgcGFkZGluZzogMC44NzVyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2Y1ZjdmNjsgfVxuICAudGFibGUgdGQge1xuICAgIHBhZGRpbmc6IDAuODc1cmVtIDA7IH1cbiAgLnRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmNWY3ZjY7IH1cbiAgLnRhYmxlIHRmb290IHRoIHtcbiAgICBwYWRkaW5nOiAwLjg3NXJlbSAwIDAuODc1cmVtO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZjVmN2Y2OyB9XG5cbi50YWJsZS0tc21hbGwgdGQsXG4udGFibGUtLXNtYWxsIHRoIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogM3JlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLnRhYmxlLS1zbWFsbCB0ZCxcbiAgICAudGFibGUtLXNtYWxsIHRoIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDRyZW07IH0gfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBCUkFORFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYi1ncm91cCAuYi1jb2xvciwgLmItZ3JvdXAgLmItY29sb3I6YmVmb3JlLCAuYi1ncm91cCAuYi1jb2xvcjphZnRlciwgLmItZ3JvdXAgLmItY29sb3ItYmVmb3JlOmJlZm9yZSwgLmItZ3JvdXAgLmItY29sb3ItYWZ0ZXI6YWZ0ZXIge1xuICBjb2xvcjogIzQxQjI5NzsgfVxuXG4uYi1ncm91cCAuYi1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQxQjI5NzsgfVxuXG4uYi1ncm91cCAuYi1ib3JkZXIge1xuICBib3JkZXItY29sb3I6ICM0MUIyOTc7IH1cblxuLmItZ3JvdXAgLmItZmlsbCB7XG4gIGZpbGw6ICM0MUIyOTc7IH1cblxuLyoqXG4gKiBHcm91cCBCcmFuZCBDbGFzc2VzXG4gKi9cbi5iLWdyb3VwLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiAjNDFCMjk3ICFpbXBvcnRhbnQ7IH1cblxuLmItZ3JvdXAtY29sb3IsIC5iLWdyb3VwLWNvbG9yOmJlZm9yZSwgLmItZ3JvdXAtY29sb3I6YWZ0ZXIge1xuICBjb2xvcjogIzQxQjI5NzsgfVxuXG4vKipcbiAqIENvbXBvbmVudHNcbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgV0lEVEhTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi53LTFcXC82IHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclICFpbXBvcnRhbnQ7IH1cblxuLnctMVxcLzMge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyUgIWltcG9ydGFudDsgfVxuXG4udy0xXFwvMiB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuXG4udy0yXFwvMyB7XG4gIHdpZHRoOiA2Ni42NjY2NjY2NjY3JSAhaW1wb3J0YW50OyB9XG5cbi53LTVcXC82IHtcbiAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlICFpbXBvcnRhbnQ7IH1cblxuLnctMVxcLzEge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi53LTFcXC81IHtcbiAgd2lkdGg6IDIwJSAhaW1wb3J0YW50OyB9XG5cbi53LTJcXC81IHtcbiAgd2lkdGg6IDQwJSAhaW1wb3J0YW50OyB9XG5cbi53LTNcXC81IHtcbiAgd2lkdGg6IDYwJSAhaW1wb3J0YW50OyB9XG5cbi53LTRcXC81IHtcbiAgd2lkdGg6IDgwJSAhaW1wb3J0YW50OyB9XG5cbi53LTFcXC80IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi53LTNcXC80IHtcbiAgd2lkdGg6IDc1JSAhaW1wb3J0YW50OyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFdJRFRIUyBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgLnNtLXctMVxcLzYge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JSAhaW1wb3J0YW50OyB9XG4gIC5zbS13LTFcXC8zIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyUgIWltcG9ydGFudDsgfVxuICAuc20tdy0xXFwvMiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9XG4gIC5zbS13LTJcXC8zIHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyUgIWltcG9ydGFudDsgfVxuICAuc20tdy01XFwvNiB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXctMVxcLzEge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXctMVxcLzUge1xuICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDsgfVxuICAuc20tdy0yXFwvNSB7XG4gICAgd2lkdGg6IDQwJSAhaW1wb3J0YW50OyB9XG4gIC5zbS13LTNcXC81IHtcbiAgICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7IH1cbiAgLnNtLXctNFxcLzUge1xuICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDsgfVxuICAuc20tdy0xXFwvNCB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG4gIC5zbS13LTNcXC80IHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5tZC13LTFcXC82IHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyUgIWltcG9ydGFudDsgfVxuICAubWQtdy0xXFwvMyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXctMVxcLzIge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuICAubWQtdy0yXFwvMyB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXctNVxcLzYge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJSAhaW1wb3J0YW50OyB9XG4gIC5tZC13LTFcXC8xIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIC5tZC13LTFcXC81IHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXctMlxcLzUge1xuICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDsgfVxuICAubWQtdy0zXFwvNSB7XG4gICAgd2lkdGg6IDYwJSAhaW1wb3J0YW50OyB9XG4gIC5tZC13LTRcXC81IHtcbiAgICB3aWR0aDogODAlICFpbXBvcnRhbnQ7IH1cbiAgLm1kLXctMVxcLzQge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDsgfVxuICAubWQtdy0zXFwvNCB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAubGctdy0xXFwvNiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXctMVxcLzMge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJSAhaW1wb3J0YW50OyB9XG4gIC5sZy13LTFcXC8yIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXctMlxcLzMge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JSAhaW1wb3J0YW50OyB9XG4gIC5sZy13LTVcXC82IHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyUgIWltcG9ydGFudDsgfVxuICAubGctdy0xXFwvMSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAubGctdy0xXFwvNSB7XG4gICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50OyB9XG4gIC5sZy13LTJcXC81IHtcbiAgICB3aWR0aDogNDAlICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXctM1xcLzUge1xuICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDsgfVxuICAubGctdy00XFwvNSB7XG4gICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50OyB9XG4gIC5sZy13LTFcXC80IHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7IH1cbiAgLmxnLXctM1xcLzQge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgLnhsLXctMVxcLzYge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JSAhaW1wb3J0YW50OyB9XG4gIC54bC13LTFcXC8zIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyUgIWltcG9ydGFudDsgfVxuICAueGwtdy0xXFwvMiB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50OyB9XG4gIC54bC13LTJcXC8zIHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyUgIWltcG9ydGFudDsgfVxuICAueGwtdy01XFwvNiB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXctMVxcLzEge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXctMVxcLzUge1xuICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDsgfVxuICAueGwtdy0yXFwvNSB7XG4gICAgd2lkdGg6IDQwJSAhaW1wb3J0YW50OyB9XG4gIC54bC13LTNcXC81IHtcbiAgICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7IH1cbiAgLnhsLXctNFxcLzUge1xuICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDsgfVxuICAueGwtdy0xXFwvNCB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG4gIC54bC13LTNcXC80IHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7IH0gfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBUSEUgTUVESUEgT0JKRUNUXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tZWRpYSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tZWRpYV9fbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDI0cHg7IH1cblxuLm1lZGlhX19yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDI0cHg7IH1cblxuLm1lZGlhX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tZWRpYV9fYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIE1FRElBIFJFU1BPTlNJVkVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGlhLS1yZXNwb25zaXZlIC5tZWRpYV9fbGVmdCxcbiAgLm1lZGlhLS1yZXNwb25zaXZlIC5tZWRpYV9fcmlnaHQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpYS0tcmVzcG9uc2l2ZSAubWVkaWFfX2ltYWdlIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgTU9TQUlDXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tb3NhaWMge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm1vc2FpYy0tZml4ZWQge1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG5cbi5tb3NhaWNfX3JvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuXG4ubW9zYWljX19jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubW9zYWljLS10b3AgLm1vc2FpY19fY2VsbCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAubW9zYWljLS1ib3R0b20gLm1vc2FpY19fY2VsbCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuXG4ubW9zYWljX19jZWxsLS1maXQge1xuICB3aWR0aDogMXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIE1PU0FJQyBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA0OGVtKSB7XG4gIC5tb3NhaWMtLXJlc3BvbnNpdmUsXG4gIC5tb3NhaWMtLXJlc3BvbnNpdmUgPiAubW9zYWljX19yb3csXG4gIC5tb3NhaWMtLXJlc3BvbnNpdmUgPiAubW9zYWljX19jZWxsIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubW9zYWljLS1yZXNwb25zaXZlID4gLm1vc2FpY19fY2VsbC0tZml0IHtcbiAgICB3aWR0aDogYXV0bzsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIEJVVFRPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYnRuIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogM3JlbTtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IH1cbiAgLmJ0bjpob3ZlciwgLmJ0bjpmb2N1cywgLmJ0bjphY3RpdmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuYnRuOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG5cbi8qKlxuICogVmFyaWFudHNcbiAqL1xuLmJ0bi0tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmJ0bi0tbGluayB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogM3JlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmJ0bi0tbGluayB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtOyB9IH1cbiAgLmJ0bi0tbGluazphZnRlciwgLmJ0bi0tbGluazpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjsgfVxuICAuYnRuLS1saW5rOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIuKGklwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMC4zZW07IH1cbiAgLmJ0bi0tbGluazpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCUXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwZW07XG4gICAgd2lkdGg6IDFlbTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5idG4tLWxpbms6aG92ZXIsIC5ib3g6aG92ZXIgLmJ0bi0tbGluayB7XG4gICAgY29sb3I6ICMxMTExMTE7IH1cbiAgICAuYnRuLS1saW5rOmhvdmVyOmFmdGVyLCAuYnRuLS1saW5rOmhvdmVyOmJlZm9yZSwgLmJveDpob3ZlciAuYnRuLS1saW5rOmFmdGVyLCAuYm94OmhvdmVyIC5idG4tLWxpbms6YmVmb3JlIHtcbiAgICAgIHRyYW5zaXRpb246IDAuMzVzIGN1YmljLWJlemllcigwLjY1LCAwLjYyLCAwLjEyLCAyLjA2KTsgfVxuICAgIC5idG4tLWxpbms6aG92ZXI6YWZ0ZXIsIC5ib3g6aG92ZXIgLmJ0bi0tbGluazphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMS41cmVtKTsgfVxuICAgIC5idG4tLWxpbms6aG92ZXI6YmVmb3JlLCAuYm94OmhvdmVyIC5idG4tLWxpbms6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMS40cmVtKTsgfVxuXG4vKipcbiAqIFN0eWxlc1xuICovXG4uYnRuLS1kZWZhdWx0LFxuLmJ0bi0tc2Vjb25kYXJ5LFxuLmJ0bi0tYWx0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMC44NzVyZW0gMS41cmVtO1xuICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLmJ0bi0tZGVmYXVsdDpob3ZlciwgLmJ0bi0tZGVmYXVsdDpmb2N1cywgLmJ0bi0tZGVmYXVsdDphY3RpdmUsXG4uYnRuLS1zZWNvbmRhcnk6aG92ZXIsXG4uYnRuLS1zZWNvbmRhcnk6Zm9jdXMsXG4uYnRuLS1zZWNvbmRhcnk6YWN0aXZlIHtcbiAgb3BhY2l0eTogLjg7IH1cblxuLmJ0bi0tZGVmYXVsdCB7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuXG4uYnRuLS1hbHQge1xuICBiYWNrZ3JvdW5kOiAjZjVmN2Y2O1xuICBib3JkZXItY29sb3I6ICNmNWY3ZjY7XG4gIGNvbG9yOiAjMTExMTExOyB9XG5cbi8qKlxuICogU3RhdGVzXG4gKi9cbi5idG4tLWRpc2FibGVkLFxuLmJ0bltkaXNhYmxlZF0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAuMjsgfVxuXG4vKipcbiAqIFNpemVzXG4gKi9cbi5idG4tLXNtYWxsIHtcbiAgcGFkZGluZzogMC44NzVyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtOyB9XG5cbi5idG4tLWxhcmdlIHtcbiAgcGFkZGluZzogMS4zNzVyZW0gMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAzcmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAuYnRuLS1sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAuYnRuLS1yZXNwb25zaXZlIHtcbiAgICBwYWRkaW5nOiAxLjM3NXJlbSAycmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSBhbmQgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmJ0bi0tcmVzcG9uc2l2ZSB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtOyB9IH1cblxuLyoqXG4gKiBCdXR0b24gR3JvdXBzXG4gKi9cbi5idG4tZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsZXg6IDE7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzZFNkU2NDsgfVxuICAgIC5iYWNrZHJvcGZpbHRlciAuYnRuLWdyb3VwIC5idG4ge1xuICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAgIC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAgICAgLmJ0bi1ncm91cCAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7IH1cbiAgICAgICAgLmJ0bi1ncm91cCAuYnRuOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7IH0gfVxuICAgIC5idG4tZ3JvdXAgLmJ0biAucGlsbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgICAgLmJ0bi1ncm91cCAuYnRuIC5waWxsIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAgIC5idG4tZ3JvdXAgLmJ0bjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjg7IH1cbiAgICAuYnRuLWdyb3VwIC5idG46bm90KC5hY3RpdmUpIC5waWxsIHtcbiAgICAgIGJhY2tncm91bmQ6ICNCNUJCQjk7IH1cbiAgICAuYnRuLWdyb3VwIC5idG4uYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgY29sb3I6ICMxMTExMTE7IH1cbiAgICAgIC5idG4tZ3JvdXAgLmJ0bi5hY3RpdmUgLnBpbGwge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuYnRuLWdyb3VwIC5idG4uYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICB3aWR0aDogMnJlbTtcbiAgICAgICAgYm90dG9tOiAtMS41cmVtO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSByb3RhdGUoNDVkZWcpOyB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAgICAgICAuYnRuLWdyb3VwIC5idG4uYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgICAgIGJvdHRvbTogLTFyZW07IH0gfVxuICAgICAgICAuYi1ncm91cCAuYnRuLWdyb3VwIC5idG4uYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjNDFCMjk3OyB9XG4gICAgICAgIC5iLW9yZ2FuaXphdGlvbiAuYnRuLWdyb3VwIC5idG4uYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjVmN2Y2OyB9XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgICAgICAgICAgLmItb3JnYW5pemF0aW9uIC5idG4tZ3JvdXAgLmJ0bi5hY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfSB9XG4gICAgICAuYnRuLWdyb3VwIC5idG4uYWN0aXZlOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuXG4vKipcbiAqIEJ1dHRvbiB3aXRoIGljb25cbiAqL1xuLmJ0bi0taWNvbiAuaWNvbiB7XG4gIG1heC1oZWlnaHQ6IDFlbTtcbiAgbWF4LXdpZHRoOiAxZW07XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDAuM2VtO1xuICBtYXJnaW4tdG9wOiAwLjJlbTsgfVxuXG4vKipcbiAqIExvZ2luIEJ1dHRvblxuICovXG4uYnRuLS1sb2dpbiB7XG4gIGZvbnQtZmFtaWx5OiAnRUtXIEhlbHZldGljYSBDb25kZW5zZWQnO1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzMzNyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBwYWRkaW5nOiAuNHJlbSAxcmVtIC4ycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItY29sb3I6ICNDNkNDQ0E7XG4gIGJhY2tncm91bmQ6IHdoaXRlOyB9XG4gIC5idG4tLWxvZ2luIC5pY29uIHtcbiAgICBtYXgtd2lkdGg6IDIuMnJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC43NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAuNzVyZW07XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0M2Q0NDQTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBMSVNUXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmxpIHtcbiAgcGFkZGluZzogMC41cmVtIDA7IH1cblxuLmxpc3QsXG4ubGlzdC1pbmxpbmUsXG4ubGlzdC1zdGFja2VkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIExJU1QgU1RBQ0tFRFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ubGlzdC1pbmxpbmUgPiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAxLjVyZW07IH1cbiAgLmxpc3QtaW5saW5lID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAubGlzdC1pbmxpbmUgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5saXN0LWlubGluZS0tZGl2aWRlZCA+IGxpICsgbGkge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlZWU7IH1cblxuLyoqXG4gICogU2l6ZXNcbiAgKi9cbi5saXN0LWlubGluZS0tdGlnaHQgPiBsaSB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmxpc3QtaW5saW5lLS10aW55ID4gbGkge1xuICBwYWRkaW5nOiAwIDAuNXJlbTsgfVxuXG4ubGlzdC1pbmxpbmUtLXNtYWxsID4gbGkge1xuICBwYWRkaW5nOiAwIDFyZW07IH1cblxuLmxpc3QtaW5saW5lLS1sYXJnZSA+IGxpIHtcbiAgcGFkZGluZzogMCAyLjVyZW07IH1cblxuLmxpc3QtaW5saW5lLS1odWdlID4gbGkge1xuICBwYWRkaW5nOiAwIDMuNXJlbTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBMSVNUIFNUQUNLRURcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbiAgVE9ETzogQ2hlY2sgaW50ZXJhY3Rpb24gd2l0aCAuY29sdW1zXG4gIGZvciBsaXN0LXN0YWNrZWQtLWRpdmllZCwgc28gbm8gOm5vdFxuICBzZWxlY3RvciBpcyBuZWVkZWQuXG4qL1xuLmxpc3Qtc3RhY2tlZCA+IGxpIHtcbiAgcGFkZGluZzogMXJlbSAwOyB9XG5cbi5saXN0LXN0YWNrZWQ6bm90KC5saXN0LXN0YWNrZWQtLWRpdmlkZWQpIGxpOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDA7IH1cblxuLmxpc3Qtc3RhY2tlZDpub3QoLmxpc3Qtc3RhY2tlZC0tZGl2aWRlZCkgbGk6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5saXN0LXN0YWNrZWQtLWRpdmlkZWQgbGkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLmxpc3Qtc3RhY2tlZC0tZGl2aWRlZCBsaSB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VlZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7IH0gfVxuXG4vKipcbiAqIFNpemVzXG4gKi9cbi5saXN0LXN0YWNrZWQtLXRpZ2h0ID4gbGkge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5saXN0LXN0YWNrZWQtLXRpbnkgPiBsaSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwOyB9XG5cbi5saXN0LXN0YWNrZWQtLXNtYWxsID4gbGkge1xuICBwYWRkaW5nOiAxcmVtIDA7IH1cblxuLmxpc3Qtc3RhY2tlZC0tbGFyZ2UgPiBsaSB7XG4gIHBhZGRpbmc6IDIuNXJlbSAwOyB9XG5cbi5saXN0LXN0YWNrZWQtLWh1Z2UgPiBsaSB7XG4gIHBhZGRpbmc6IDMuNXJlbSAwOyB9XG5cbi8qKlxuICogV2l0aCBJY29uc1xuICovXG4ubGlzdC1zdGFja2VkLS1pY29uID4gbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuICAubGlzdC1zdGFja2VkLS1pY29uID4gbGk6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IC44ZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgY29udGVudDogJ+Kckyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgQk9YXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5ib3gtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAuYm94LWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgLmJveC1jb250YWluZXIgLmJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIC5ib3gtY29udGFpbmVyIC5ib3g6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgICAgLmJveC1jb250YWluZXIgLmJveCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAgIC5ib3gtY29udGFpbmVyIC5ib3gge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgICAuYm94LWNvbnRhaW5lciAuYm94IHtcbiAgICAgICAgZmxleDogMSAxIDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogM3JlbTsgfVxuICAgICAgICAuYm94LWNvbnRhaW5lciAuYm94Omxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjtcbiAgY29sb3I6ICMxMTExMTE7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgLmJveDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW47XG4gICAgYm94LXNoYWRvdzogMCAycHggMnB4IDBweCByZ2JhKDEyOCwgMTQwLCAxMzYsIDAuMTMpOyB9XG4gIC5zZWN0aW9uLS1kZWZhdWx0IC5ib3gge1xuICAgIGJhY2tncm91bmQ6ICNmNWY3ZjY7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzIuNWVtKSB7XG4gICAgLmJveCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5ib3g6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7IH1cbiAgICAgIC5ib3g6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpOyB9XG4gICAgICAuYm94OmhvdmVyIC5ib3hfX2hlYWRlcjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IC4xOyB9IH1cblxuLmJveC0tZGVmYXVsdCB7XG4gIGJhY2tncm91bmQ6ICNFM0U3RTY7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5ib3gtLWRlZmF1bHQ6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5ib3gtLWRlZmF1bHQ6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAqIEVsZW1lbnRzXG4gKi9cbi5ib3hfX2hlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMzAzO1xuICBoZWlnaHQ6IDI3cmVtO1xuICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW47XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gIC5ib3hfX2hlYWRlciAucmVzcG9uc2l2ZS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5ib3hfX2hlYWRlcjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBiYWNrZ3JvdW5kOiBibGFjazsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLmJveF9faGVhZGVyIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IDI4cmVtO1xuICAgICAgZmxleDogMSAxIDUwJTtcbiAgICAgIG9yZGVyOiAxOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5ib3hfX2hlYWRlciB7XG4gICAgICBtaW4taGVpZ2h0OiAyN3JlbTtcbiAgICAgIGZsZXg6IDEgMTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAuYm94X19oZWFkZXIge1xuICAgICAgbWluLWhlaWdodDogMzhyZW07IH0gfVxuXG4uYm94X19oZWFkZXIgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMjdyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5ib3hfX2hlYWRlciBpbWcge1xuICAgICAgbWluLWhlaWdodDogMjhyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLmJveF9faGVhZGVyIGltZyB7XG4gICAgICBtaW4taGVpZ2h0OiAyOHJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAuYm94X19oZWFkZXIgaW1nIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDI3cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAgIC5ib3hfX2hlYWRlciBpbWcge1xuICAgICAgbWluLWhlaWdodDogMzhyZW07IH0gfVxuXG4uYm94X19ib2R5IHtcbiAgei1pbmRleDogMzAwO1xuICBwYWRkaW5nOiAxLjVyZW0gMnJlbTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGZsZXg6IDEgMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAuc2VjdGlvbi0tZGVmYXVsdCAuYm94X19ib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjVmN2Y2OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAuYm94X19ib2R5IHtcbiAgICAgIGZsZXg6IDEgMTtcbiAgICAgIHBhZGRpbmc6IDIuNXJlbSAzcmVtIDJyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmJveC0td2l0aC1pbWFnZSAuYm94X19ib2R5IHtcbiAgICAgIG1pbi1oZWlnaHQ6IDM4cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMyLjVlbSkge1xuICAgIC5ib3hfX2JvZHkge1xuICAgICAgZmxleDogMSAxIDUwJTsgfSB9XG5cbi5ib3hfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgZmxleDogMSAxOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAuYm94X190aXRsZSB7XG4gICAgICBmbGV4OiBub25lOyB9IH1cbiAgLmJveF9fdGl0bGUgPiAqIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLmJveF9fdGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGZsZXg6IDEgMSAwOyB9XG4gIC5ib3hfX3RleHQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmJveF9fdGV4dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ib3hfX2FkZG9uIHtcbiAgei1pbmRleDogMzEwOyB9XG5cbi5ib3gtLXdpdGgtaW1hZ2UgLmJveF9fdGV4dDpub3QoLmJveF9fdGV4dC0taW1wb3J0YW50KSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5ib3gtLXdpdGgtaW1hZ2UgLmJveF9fdGV4dDpub3QoLmJveF9fdGV4dC0taW1wb3J0YW50KSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi8qKlxuICogU3R5bGVzXG4gKi9cbi5ib3gtLW1hdGVyaWFsIHtcbiAgYm94LXNoYWRvdzogMCAycHggMnB4IDBweCByZ2JhKDEyOCwgMTQwLCAxMzYsIDAuMTMpOyB9XG5cbi5ib3gtLWFsdCB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmN2Y2OyB9XG5cbi8qKlxuICogQm94IFZhcmlhdGlvbnNcbiAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAuYm94LWNvbnRhaW5lci0tdiAuYm94IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmJveC1jb250YWluZXItLXYgLmJveCAuYm94X19oZWFkZXIge1xuICAgICAgb3JkZXI6IDA7XG4gICAgICBmbGV4OiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAuYm94LWNvbnRhaW5lci0tdiAuYm94IC5ib3hfX3RleHQge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5ib3gtY29udGFpbmVyLS1oIC5ib3ggLmJveF9faGVhZGVyIHtcbiAgICBmbGV4OiAxIDEgNTAlOyB9XG4gIC5ib3gtY29udGFpbmVyLS1oIC5ib3ggLmJveF9fYm9keSB7XG4gICAgZmxleDogMSAxIDUwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMi41ZW0pIHtcbiAgLmJveC1jb250YWluZXItLWggLmJveCAuYm94X19oZWFkZXIge1xuICAgIG9yZGVyOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAuYm94LWNvbnRhaW5lci0tc21hbGwuYm94LWNvbnRhaW5lci0taCAuYm94IC5ib3hfX2hlYWRlciB7XG4gICAgZmxleDogMSAxOyB9XG4gIC5ib3gtY29udGFpbmVyLS1zbWFsbC5ib3gtY29udGFpbmVyLS1oIC5ib3ggLmJveF9fYm9keSB7XG4gICAgZmxleDogMiAxIDZyZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzIuNWVtKSB7XG4gIC5ib3gtY29udGFpbmVyLS1yaWdodC5ib3gtY29udGFpbmVyLS1oIC5ib3ggLmJveF9faGVhZGVyIHtcbiAgICBvcmRlcjogMjsgfSB9XG5cbi5ib3gtLXZpZGVvIC5ib3hfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAuYm94LS12aWRlbyAuYm94X19oZWFkZXIge1xuICAgICAgbWluLWhlaWdodDogNTJyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmJveC0tdmlkZW8gLmJveF9faGVhZGVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDYwcmVtOyB9IH1cblxuLmJveC0tdmlkZW8gLmJveF9fYnViYmxlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uYm94LS12aWRlbzpob3ZlciAuYm94X19idWJibGUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG5cbi5ib3gtLXdpdGgtYnViYmxlIC5ib3hfX3RpdGxlIHtcbiAgcGFkZGluZy1yaWdodDogN3JlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMzIuNWVtKSB7XG4gICAgLmJveC0td2l0aC1idWJibGUgLmJveF9fdGl0bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogM3JlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAuYm94LS13aXRoLWJ1YmJsZSAuYm94X190aXRsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA4cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5ib3gtLXdpdGgtYnViYmxlIC5ib3hfX3RpdGxlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDExcmVtOyB9IH1cblxuLmJveC0td2l0aC1idWJibGUgLmJveF9fdGV4dCBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGZsb2F0OiByaWdodDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDZyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5ib3gtLXdpdGgtYnViYmxlIC5ib3hfX3RleHQgcDpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiAzcmVtOyB9IH1cblxuLmJveC0td2l0aC1idWJibGUgLmJveF9fYnViYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAzMTA7XG4gIHJpZ2h0OiAxcmVtO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiA4cmVtO1xuICBoZWlnaHQ6IDhyZW07XG4gIHBhZGRpbmc6IDEuNzVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICBib3JkZXI6IC41cmVtIHNvbGlkIHdoaXRlOyB9XG4gIC5ib3gtLXdpdGgtYnViYmxlIC5ib3hfX2J1YmJsZSAuaWNvbiB7XG4gICAgZmlsbDogd2hpdGU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDMyLjVlbSkge1xuICAgIC5ib3gtLXdpdGgtYnViYmxlIC5ib3hfX2J1YmJsZSB7XG4gICAgICB0b3A6IDFyZW07XG4gICAgICByaWdodDogaW5pdGlhbDtcbiAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLmJveC0td2l0aC1idWJibGUgLmJveF9fYnViYmxlIHtcbiAgICAgIHdpZHRoOiAxMHJlbTtcbiAgICAgIGhlaWdodDogMTByZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLmJveC0td2l0aC1idWJibGUgLmJveF9fYnViYmxlIHtcbiAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgIHJpZ2h0OiAycmVtO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgIHBhZGRpbmc6IDIuMjVyZW07XG4gICAgICB3aWR0aDogMTByZW07XG4gICAgICBoZWlnaHQ6IDEwcmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmJveC0td2l0aC1idWJibGUgLmJveF9fYnViYmxlIHtcbiAgICAgIHdpZHRoOiAxM3JlbTtcbiAgICAgIGhlaWdodDogMTNyZW07XG4gICAgICBib3JkZXItd2lkdGg6IDFyZW07XG4gICAgICByaWdodDogMS41cmVtOyB9IH1cbiAgLmJveC0td2l0aC1idWJibGUgLmJveF9fYnViYmxlOmFmdGVyIHtcbiAgICB6LWluZGV4OiAtMTsgfVxuXG4uYm94LS1iZW5lZml0cyB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5ib3gtLWJlbmVmaXRzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5ib3gtLWJlbmVmaXRzIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA5cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5ib3gtLWJlbmVmaXRzIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNHJlbTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFNFQ1RJT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi5zZWN0aW9uX19ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxNDE2cHg7XG4gIG1hcmdpbjogMnJlbSBhdXRvO1xuICBwYWRkaW5nOiAwIDJyZW07XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5zZWN0aW9uX19ib2R5IHtcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogNHJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuc2VjdGlvbl9fYm9keSB7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDZyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDZyZW07IH1cbiAgICAgIC5zZWN0aW9uX19ib2R5OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNnJlbTsgfVxuICAgICAgLnNlY3Rpb25fX2JvZHk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDZyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLnNlY3Rpb25fX2JvZHkge1xuICAgICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDZyZW07IH1cbiAgICAgIC5zZWN0aW9uX19ib2R5OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJyZW07IH1cbiAgICAgIC5zZWN0aW9uX19ib2R5Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAuc2VjdGlvbl9fYm9keSB7XG4gICAgICBtYXJnaW4tdG9wOiA4cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHJlbTsgfVxuICAgICAgLnNlY3Rpb25fX2JvZHk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnJlbTsgfVxuICAgICAgLnNlY3Rpb25fX2JvZHk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE2cmVtOyB9IH1cbiAgLnNlY3Rpb25fX2JvZHkgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnNlY3Rpb25fX2JvZHkgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2VjdGlvbl9fYm9keS0tZnVsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnNlY3Rpb25fX2JvZHktLXdpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxODAwcHg7IH1cblxuLnNlY3Rpb25fX2JvZHktLW5hcnJvdyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0MTZweDsgfVxuXG4uc2VjdGlvbl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxMnJlbTsgfVxuICAuc2VjdGlvbl9fdGl0bGUgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLyoqXG4gKiBEaXNwbGF5IG1vZGlmaWVyc1xuICovXG4uc2VjdGlvbi0tYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy1ib3R0b206IDVyZW07XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uc2VjdGlvbi0taGVybyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMzhyZW07XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAuc2VjdGlvbi0taGVybyB7XG4gICAgICBoZWlnaHQ6IDUwcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnNlY3Rpb24tLWhlcm8ge1xuICAgICAgaGVpZ2h0OiA3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5zZWN0aW9uLS1oZXJvIHtcbiAgICAgIGhlaWdodDogNzByZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTJyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLnNlY3Rpb24tLWhlcm8ge1xuICAgICAgaGVpZ2h0OiA3MHJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNHJlbTsgfSB9XG5cbi5zZWN0aW9uLS1oZXJvIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xuICBoZWlnaHQ6IDM4cmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAuc2VjdGlvbi0taGVybyBpbWcge1xuICAgICAgaGVpZ2h0OiA1MHJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuc2VjdGlvbi0taGVybyBpbWcge1xuICAgICAgaGVpZ2h0OiA3NXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAuc2VjdGlvbi0taGVybyBpbWcge1xuICAgICAgaGVpZ2h0OiA3MHJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAuc2VjdGlvbi0taGVybyBpbWcge1xuICAgICAgaGVpZ2h0OiA3MHJlbTsgfSB9XG5cbi5zZWN0aW9uLS1pbWFnZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5zZWN0aW9uLS1pbWFnZSBwaWN0dXJlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwOyB9XG5cbi8qKlxuICogQWx0ZXJuYXRpdmUgY29sb3JzXG4gKi9cbi5zZWN0aW9uLS10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zZWN0aW9uLS1hbHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmN2Y2OyB9XG5cbi5zZWN0aW9uLS1tZWRpdW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQjVCQkI5OyB9XG5cbi5zZWN0aW9uLS1kYXJrIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzkzZTQ4OyB9XG5cbi5zZWN0aW9uLWNvbGxlY3Rpb24tLWggLnNlY3Rpb24tY29sbGVjdGlvbl9fdGl0bGUge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB6LWluZGV4OiAxMDtcbiAgdG9wOiAtMTByZW07XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoMTAwdmggLSAyNHJlbSk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Nyk7IH1cbiAgLnNlY3Rpb24tY29sbGVjdGlvbi0taCAuc2VjdGlvbi1jb2xsZWN0aW9uX190aXRsZSAuc2VjdGlvbl9fYm9keSB7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07IH1cblxuLnNlY3Rpb24tY29sbGVjdGlvbi0taCAuc2VjdGlvbi1jb2xsZWN0aW9uX190aXRsZSArIC5zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogY2FsYygoMTAwdmggLSAyNHJlbSkgKiAtMSk7IH1cbiAgLnNlY3Rpb24tY29sbGVjdGlvbi0taCAuc2VjdGlvbi1jb2xsZWN0aW9uX190aXRsZSArIC5zZWN0aW9uIC5zZWN0aW9uX19ib2R5IHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuXG4uc2VjdGlvbi1jb2xsZWN0aW9uLS1oIC5zZWN0aW9uLWNvbGxlY3Rpb25fX2ltYWdlIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB0cmFuc2l0aW9uOiAuNTVzIGVhc2UtaW4tb3V0OyB9XG4gIC5zZWN0aW9uLWNvbGxlY3Rpb24tLWggLnNlY3Rpb24tY29sbGVjdGlvbl9faW1hZ2UuYXBwZWFyIC5zZWN0aW9uLWNvbGxlY3Rpb25fX2NvbnRlbnQge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5zZWN0aW9uLWNvbGxlY3Rpb24tLWggLnNlY3Rpb24tY29sbGVjdGlvbl9faW1hZ2UuYXBwZWFyIC5zZWN0aW9uLWNvbGxlY3Rpb25fX2ltYWdlLWRlZmF1bHQge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLnNlY3Rpb24tY29sbGVjdGlvbi0taCAuc2VjdGlvbi1jb2xsZWN0aW9uX19pbWFnZS5hcHBlYXIgLnNlY3Rpb24tY29sbGVjdGlvbl9faW1hZ2Utb3ZlcmxheSB7XG4gICAgb3BhY2l0eTogLjI7IH1cblxuLnNlY3Rpb24tY29sbGVjdGlvbi0taCAuc2VjdGlvbi1jb2xsZWN0aW9uX19pbWFnZS1kZWZhdWx0LFxuLnNlY3Rpb24tY29sbGVjdGlvbi0taCAuc2VjdGlvbi1jb2xsZWN0aW9uX19pbWFnZS1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IC44NXMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuXG4uc2VjdGlvbi1jb2xsZWN0aW9uLS1oIC5zZWN0aW9uLWNvbGxlY3Rpb25fX2ltYWdlLWRlZmF1bHQge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zZWN0aW9uLWNvbGxlY3Rpb24tLWggLnNlY3Rpb24tY29sbGVjdGlvbl9faW1hZ2Utb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNlY3Rpb24tY29sbGVjdGlvbi0taCAuc2VjdGlvbi1jb2xsZWN0aW9uX19jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgdHJhbnNpdGlvbjogLjg1cyBlYXNlLWluLW91dDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcmVtKTtcbiAgb3BhY2l0eTogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLnNlY3Rpb24tY29sbGVjdGlvbi0tdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5zZWN0aW9uLWNvbGxlY3Rpb24tLXYgLnNlY3Rpb24tY29sbGVjdGlvbl9fdGl0bGUge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDI1dmgpO1xuICAgIGZsZXg6IDAgMCA1MCU7IH1cbiAgLnNlY3Rpb24tY29sbGVjdGlvbi0tdiAuc2VjdGlvbi1jb2xsZWN0aW9uX19jb250ZW50IHtcbiAgICBmbGV4OiAwIDAgNTAlOyB9XG5cbi5zZWN0aW9uLWNvbGxlY3Rpb24tLWFydGljbGUge1xuICB3aWR0aDogMTQxNnB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5zZWN0aW9uLWNvbGxlY3Rpb24tLWFydGljbGUgLnNlY3Rpb24tY29sbGVjdGlvbl9fYXNpZGUge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIGZsZXg6IDUgMCAwOyB9XG4gIC5zZWN0aW9uLWNvbGxlY3Rpb24tLWFydGljbGUgLnNlY3Rpb24tY29sbGVjdGlvbl9fY29udGVudCB7XG4gICAgZmxleDogOCAwIDA7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgSUNPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZmlsbDogY3VycmVudENvbG9yOyB9XG5cbi5pY29uLS1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uaWNvbi0tbGFyZ2Uge1xuICB3aWR0aDogOHJlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiA4cmVtOyB9XG5cbi5pY29uLS10aW55IHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogM3JlbTsgfVxuXG4uaWNvbi0tbWF0Y2gtdGV4dCB7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIE1BVEVSSUFMXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5tYXRlcmlhbCB7XG4gIGNvbG9yOiAjMTExMTExO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDJweCAycHggMHB4IHJnYmEoMTI4LCAxNDAsIDEzNiwgMC4xMyk7IH1cblxuLyoqXG4gKiBNYXRlcmlhbCBTdGF0ZXNcbiAqL1xuLm1hdGVyaWFsLS1lbGV2YXRlZCB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE2cHggMCByZ2JhKDEzMSwgMTQ0LCAxNDAsIDAuMjEpOyB9XG5cbi5tYXRlcmlhbC0tYWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4IDAgcmdiYSgxMzEsIDE0NCwgMTQwLCAwLjIxKTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBIRUFETElORVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaGVhZGxpbmUge1xuICBmb250LWZhbWlseTogJ0VLVyBIZWx2ZXRpY2EgQ29uZGVuc2VkJztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWxlZnQ6IC4yNGVtO1xuICBtYXgtd2lkdGg6IDcwJTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLmhlYWRsaW5lIHtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5oZWFkbGluZSB7XG4gICAgICBtYXgtd2lkdGg6IDYwJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAuaGVhZGxpbmUge1xuICAgICAgbWF4LXdpZHRoOiA0MiU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmhlYWRsaW5lIHtcbiAgICAgIG1heC13aWR0aDogNDAlOyB9IH1cblxuLmhlYWRsaW5lX190ZXh0IGRpdixcbi5oZWFkbGluZV9fdGV4dCBoMSxcbi5oZWFkbGluZV9fcGFkZGluZyBkaXYsXG4uaGVhZGxpbmVfX3BhZGRpbmcgaDEge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgYm94LXNoYWRvdzogMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cbiAgLmItZ3JvdXAgLmhlYWRsaW5lX190ZXh0IGRpdiwgLmItZ3JvdXBcbiAgLmhlYWRsaW5lX190ZXh0IGgxLCAuYi1ncm91cFxuICAuaGVhZGxpbmVfX3BhZGRpbmcgZGl2LCAuYi1ncm91cFxuICAuaGVhZGxpbmVfX3BhZGRpbmcgaDEge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjNDFCMjk3OyB9XG4gIC5iLW9yZ2FuaXphdGlvbiAuaGVhZGxpbmVfX3RleHQgZGl2LCAuYi1vcmdhbml6YXRpb25cbiAgLmhlYWRsaW5lX190ZXh0IGgxLCAuYi1vcmdhbml6YXRpb25cbiAgLmhlYWRsaW5lX19wYWRkaW5nIGRpdiwgLmItb3JnYW5pemF0aW9uXG4gIC5oZWFkbGluZV9fcGFkZGluZyBoMSB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7IH1cblxuLmhlYWRsaW5lX190ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDAwOyB9XG5cbi5oZWFkbGluZV9fcGFkZGluZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAuaGVhZGxpbmVfX3BhZGRpbmcgZGl2IHNwYW46YWZ0ZXIsXG4gIC5oZWFkbGluZV9fcGFkZGluZyBoMSBzcGFuOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFwwMGEwXFxBXFwwMGEwXFxBXFwwMGEwXFxBXFwwMGEwXFxBXFwwMGEwXFxBXFwwMGEwXFxBXFwwMGEwXFxBJzsgfVxuXG4vKipcbiAqIEhlYWRsaW5lIFN0eWxlc1xuICovXG4uaGVhZGxpbmUtLWgxIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDRyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5oZWFkbGluZS0taDEge1xuICAgICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuaGVhZGxpbmUtLWgxIHtcbiAgICAgIGZvbnQtc2l6ZTogNC4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5oZWFkbGluZS0taDEge1xuICAgICAgZm9udC1zaXplOiA1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDdyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmhlYWRsaW5lLS1oMSB7XG4gICAgICBmb250LXNpemU6IDUuNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogOHJlbTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIE5BVklHQVRJT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLm5hdiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNDg2O1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm5hdi5uYXYtLXByZXBhcmUtb3BlbiB7XG4gICAgaGVpZ2h0OiAxMDB2aCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAubmF2IHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgICAgLm5hdi5uYXYtLW9wZW4ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAubmF2IC5iLWdyb3VwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1MCwgMjUwLCAyNTAsIDAuOTgpO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDAgMCByZ2JhKDE4MSwgMTg3LCAxODUsIDAuMik7IH1cblxuLm5hdi1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjcsIDIzMSwgMjMwLCAwKTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMHB4KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB6LWluZGV4OiA0NTA7XG4gIHRyYW5zaXRpb246IDAuNnMgY3ViaWMtYmV6aWVyKDAuNzQsIDAuMzMsIDAuMTUsIDEpO1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5uYXYtLXByZXBhcmUtb3BlbiAubmF2LW92ZXJsYXkge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLm5hdi0tcHJlcGFyZS1vcGVuIC5uYXYtb3ZlcmxheSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAubmF2LS1vcGVuIC5uYXYtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjcsIDIzMSwgMjMwLCAwLjkpO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpOyB9XG4gICAgLm5vLWJhY2tkcm9wZmlsdGVyIC5uYXYtLW9wZW4gLm5hdi1vdmVybGF5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFM0U3RTY7IH1cblxuLm5hdi1ncm91cF9fbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogN3JlbTtcbiAgaGVpZ2h0OiA2cmVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvbG9nby5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7IH1cbiAgLmItb3JnYW5pemF0aW9uIC5uYXYtZ3JvdXBfX2xvZ28ge1xuICAgIGZsZXg6IDAgMCA3cmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgICAgLmItb3JnYW5pemF0aW9uIC5uYXYtZ3JvdXBfX2xvZ28ge1xuICAgICAgICBoZWlnaHQ6IDRyZW07IH0gfVxuICAuYi1ncm91cCAubmF2LWdyb3VwX19sb2dvIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2xvZ28ucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4NSU7XG4gICAgYm94LXNoYWRvdzogMCAycHggMnB4IDBweCByZ2JhKDEyOCwgMTQwLCAxMzYsIDAuMTMpO1xuICAgIGZsZXg6IDAgMCAxNHJlbTtcbiAgICBoZWlnaHQ6IDlyZW07XG4gICAgbWFyZ2luLXRvcDogMHJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAtNXJlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAgIC5iLWdyb3VwIC5uYXYtZ3JvdXBfX2xvZ28ge1xuICAgICAgICBmbGV4OiAwIDAgMjByZW07XG4gICAgICAgIGhlaWdodDogMTJyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0xMHJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEuNXJlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgICAgLmItZ3JvdXAgLm5hdi1ncm91cF9fbG9nbyB7XG4gICAgICAgIGZsZXg6IDAgMCAyMHJlbTtcbiAgICAgICAgaGVpZ2h0OiAxMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMi41cmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgICAuYi1ncm91cCAubmF2LWdyb3VwX19sb2dvIHtcbiAgICAgICAgZmxleDogMCAwIDI0cmVtO1xuICAgICAgICBoZWlnaHQ6IDE1cmVtOyB9IH1cblxuLm5hdi1ncm91cF9fbWVudSB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiAwLjZzIGN1YmljLWJlemllcigwLjc0LCAwLjMzLCAwLjE1LCAxKTtcbiAgb3BhY2l0eTogMDsgfVxuICAuYi1vcmdhbml6YXRpb24gLm5hdi1ncm91cF9fbWVudSB7XG4gICAgbWF4LWhlaWdodDogNHJlbTsgfVxuICAuYi1ncm91cCAubmF2LWdyb3VwX19tZW51IHtcbiAgICBoZWlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgICAuYi1ncm91cCAubmF2LWdyb3VwX19tZW51IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgLm5hdi0tb3BlbiAubmF2LWdyb3VwX19tZW51IHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgLmItb3JnYW5pemF0aW9uIC5uYXYtLW9wZW4gLm5hdi1ncm91cF9fbWVudSB7XG4gICAgICBtYXgtaGVpZ2h0OiAzMHJlbTsgfVxuICAgIC5iLWdyb3VwIC5uYXYtLW9wZW4gLm5hdi1ncm91cF9fbWVudSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMnJlbSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5uYXYtZ3JvdXBfX21lbnUge1xuICAgICAgZmxleDogMSAxIDA7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBoZWlnaHQ6IG5vbmU7XG4gICAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgbWF4LWhlaWdodDogaW5pdGlhbDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5iLW9yZ2FuaXphdGlvbiAubmF2LWdyb3VwX19tZW51IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTZyZW07IH0gfVxuXG4ubmF2LWdyb3VwIHtcbiAgei1pbmRleDogNDg3O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLmItZ3JvdXAgLm5hdi1ncm91cCAubmF2X19tZW51LWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IDNyZW07IH1cbiAgLm5hdi1ncm91cCAubmF2X19tZW51LWxpc3QgbGkge1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgICAubmF2LWdyb3VwIC5uYXZfX21lbnUtbGlzdCBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAgIC5uYXYtZ3JvdXAgLm5hdl9fbWVudS1saXN0IGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogM3JlbTsgfSB9XG4gICAgLm5hdi1ncm91cCAubmF2X19tZW51LWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuYi1ncm91cCAubmF2LWdyb3VwIC5uYXZfX21lbnUtbGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiA2cmVtOyB9XG4gICAgLm5hdi1ncm91cCAubmF2X19tZW51LWxpc3QgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5uYXYtZ3JvdXAgLm5hdl9fbWVudS1saXN0IGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMnJlbTsgfVxuICAgICAgLm5hdi1ncm91cCAubmF2X19tZW51LWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuYi1ncm91cCAubmF2LWdyb3VwIC5uYXZfX21lbnUtbGlzdCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmItb3JnYW5pemF0aW9uIC5uYXYtZ3JvdXAgLm5hdl9fbWVudS1saXN0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTsgfSB9XG4gIC5uYXYtZ3JvdXAgLm5hdl9fbWVudS1saXN0IGEge1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICAubmF2LWdyb3VwIC5uYXZfX21lbnUtbGlzdCBhOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAubmF2LWdyb3VwIC5uYXZfX21lbnUtbGlzdCBhLmlzLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLnBhdGgtZnJvbnRwYWdlIC5uYXYtZ3JvdXAgLm5hdl9fbWVudS1saXN0IGEge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuYi1vcmdhbml6YXRpb24gLm5hdi1ncm91cCAubmF2X19tZW51LWxpc3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgICAgLmItb3JnYW5pemF0aW9uIC5uYXYtZ3JvdXAgLm5hdl9fbWVudS1saXN0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4uc2VjdGlvbi0tbmF2LW1ldGEge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDQ5MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNS41cmVtO1xuICB0cmFuc2l0aW9uOiAwLjZzIGN1YmljLWJlemllcigwLjc0LCAwLjMzLCAwLjE1LCAxKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjg4LCAtMC4xNSwgMC40NywgMS4zKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICBvcGFjaXR5OiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuc2VjdGlvbi0tbmF2LW1ldGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTsgfSB9XG4gIC5uYXYtLXByZXBhcmUtb3BlbiAuc2VjdGlvbi0tbmF2LW1ldGEge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5uYXYtLW9wZW4gLnNlY3Rpb24tLW5hdi1tZXRhIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4ubmF2LW1ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLm5hdi1tZXRhIGxpIHtcbiAgICBwYWRkaW5nOiAxcmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAubmF2LW1ldGEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxLjVyZW07XG4gICAgICByaWdodDogMTZyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLm5hdi1tZXRhIHtcbiAgICAgIHJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAgIC5uYXYtbWV0YSB7XG4gICAgICB0b3A6IDJyZW07IH0gfVxuXG4ubmF2LWdyb3VwX19tZW51LWJ0biB7XG4gIGZsZXg6IDAgMCAxMnJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmc6IDEuNXJlbSAxLjI1cmVtIDEuNXJlbSAycmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnJlbSk7XG4gIGxpbmUtaGVpZ2h0OiAzcmVtOyB9XG4gIC5uYXYtZ3JvdXBfX21lbnUtYnRuIC5pY29uIHtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDNyZW07IH1cbiAgLm5hdi1ncm91cF9fbWVudS1idG4gI21lbnVfX2xpbmUtMSxcbiAgLm5hdi1ncm91cF9fbWVudS1idG4gI21lbnVfX2xpbmUtMixcbiAgLm5hdi1ncm91cF9fbWVudS1idG4gI21lbnVfX2xpbmUtMyB7XG4gICAgdHJhbnNpdGlvbjogMC42cyBjdWJpYy1iZXppZXIoMC43NCwgMC4zMywgMC4xNSwgMSk7IH1cbiAgLm5hdi1ncm91cF9fbWVudS1idG4gI21lbnVfX2xpbmUtMSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMnB4IDZweDsgfVxuICAubmF2LWdyb3VwX19tZW51LWJ0biAjbWVudV9fbGluZS0yIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5uYXYtZ3JvdXBfX21lbnUtYnRuICNtZW51X19saW5lLTMge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDIycHggMThweDsgfVxuICAubmF2LS1vcGVuIC5uYXYtZ3JvdXBfX21lbnUtYnRuICNtZW51X19saW5lLTEge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDNweCwgLTFweCkgcm90YXRlKDQ1ZGVnKSBzY2FsZVgoMC41KTsgfVxuICAubmF2LS1vcGVuIC5uYXYtZ3JvdXBfX21lbnUtYnRuICNtZW51X19saW5lLTIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7IH1cbiAgLm5hdi0tb3BlbiAubmF2LWdyb3VwX19tZW51LWJ0biAjbWVudV9fbGluZS0zIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtM3B4LCAxcHgpIHJvdGF0ZSg0NWRlZykgc2NhbGVYKDAuNSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5uYXYtZ3JvdXBfX21lbnUtYnRuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uc2VjdGlvbi0tbmF2LWdyb3VwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDcsIDI0NywgMjQ3LCAwLjkzKTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIHRyYW5zaXRpb246IDAuNnMgY3ViaWMtYmV6aWVyKDAuNzQsIDAuMzMsIDAuMTUsIDEpO1xuICB6LWluZGV4OiA0ODc7IH1cbiAgLm5vLWJhY2tkcm9wZmlsdGVyIC5zZWN0aW9uLS1uYXYtZ3JvdXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5zZWN0aW9uLS1uYXYtZ3JvdXAge1xuICAgICAgcGFkZGluZzogMXJlbSAwOyB9XG4gICAgICAuYi1vcmdhbml6YXRpb24gLnNlY3Rpb24tLW5hdi1ncm91cCB7XG4gICAgICAgIGhlaWdodDogOHJlbTsgfVxuICAgICAgLmItZ3JvdXAgLnNlY3Rpb24tLW5hdi1ncm91cCB7XG4gICAgICAgIGhlaWdodDogOHJlbTsgfVxuICAgICAgLmItb3JnYW5pemF0aW9uIC5uYXYtLW9wZW4gLnNlY3Rpb24tLW5hdi1ncm91cCB7XG4gICAgICAgIGhlaWdodDogMThyZW07IH1cbiAgICAgIC5iLWdyb3VwIC5uYXYtLW9wZW4gLnNlY3Rpb24tLW5hdi1ncm91cCB7XG4gICAgICAgIGhlaWdodDogMjByZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLnNlY3Rpb24tLW5hdi1ncm91cCB7XG4gICAgICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuICAgICAgLmItb3JnYW5pemF0aW9uIC5zZWN0aW9uLS1uYXYtZ3JvdXAge1xuICAgICAgICBoZWlnaHQ6IDE1cmVtOyB9XG4gICAgICAuYi1ncm91cCAuc2VjdGlvbi0tbmF2LWdyb3VwIHtcbiAgICAgICAgaGVpZ2h0OiA4cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAgIC5iLWdyb3VwIC5zZWN0aW9uLS1uYXYtZ3JvdXAge1xuICAgICAgaGVpZ2h0OiA5cmVtOyB9IH1cblxuLnNlY3Rpb24tLW5hdi1vcmdhbml6YXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiA0ODg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoMTI4LCAxNDAsIDEzNiwgMC4xOCk7XG4gIHRyYW5zaXRpb246IDAuNnMgY3ViaWMtYmV6aWVyKDAuNzQsIDAuMzMsIDAuMTUsIDEpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDZyZW07IH1cbiAgLm5hdi0tb3BlbiAuc2VjdGlvbi0tbmF2LW9yZ2FuaXphdGlvbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI2cmVtKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAgIC5uYXYtLW9wZW4gLnNlY3Rpb24tLW5hdi1vcmdhbml6YXRpb24ge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnNlY3Rpb24tLW5hdi1vcmdhbml6YXRpb24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBpbml0aWFsOyB9IH1cbiAgLmItb3JnYW5pemF0aW9uIC5zZWN0aW9uLS1uYXYtb3JnYW5pemF0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubmF2LW9yZ2FuaXphdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNDg4OyB9XG5cbi5uYXYtb3JnYW5pemF0aW9uX19uYW1lIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogLjVyZW0gMDtcbiAgdHJhbnNpdGlvbjogMC42cyBjdWJpYy1iZXppZXIoMC43NCwgMC4zMywgMC4xNSwgMSk7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubmF2LS1vcGVuIC5uYXYtb3JnYW5pemF0aW9uX19uYW1lIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXJlbSk7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgICAubmF2LS1vcGVuIC5uYXYtb3JnYW5pemF0aW9uX19uYW1lIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5uYXYtb3JnYW5pemF0aW9uX19uYW1lIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC00LjVyZW07XG4gICAgICBsZWZ0OiAyNHJlbTtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLm5hdi1vcmdhbml6YXRpb25fX25hbWUge1xuICAgICAgbGVmdDogMjZyZW07IH0gfVxuXG4ubmF2LW9yZ2FuaXphdGlvbl9fbG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNHJlbTtcbiAgbGVmdDogNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEycmVtO1xuICBoZWlnaHQ6IDZyZW07XG4gIG1hcmdpbi1sZWZ0OiAtNnJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuICAubmF2LW9yZ2FuaXphdGlvbl9fbG9nbyBkaXYge1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAubmF2LW9yZ2FuaXphdGlvbl9fbG9nbyB7XG4gICAgICB0b3A6IC02cmVtO1xuICAgICAgbGVmdDogMTByZW07XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAubmF2LW9yZ2FuaXphdGlvbl9fbG9nbyB7XG4gICAgICB0b3A6IC03cmVtO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAyNHJlbTtcbiAgICAgIGhlaWdodDogMTJyZW07XG4gICAgICBwYWRkaW5nOiAxLjVyZW07IH0gfVxuICAubmF2LW9yZ2FuaXphdGlvbl9fbG9nbzpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgxMjgsIDE0MCwgMTM2LCAwLjEpOyB9XG5cbi5uYXYtb3JnYW5pemF0aW9uX19tZW51IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LWhlaWdodDogMDtcbiAgdHJhbnNpdGlvbjogMC42cyBjdWJpYy1iZXppZXIoMC43NCwgMC4zMywgMC4xNSwgMSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5uYXYtb3JnYW5pemF0aW9uX19tZW51IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLm5hdi1vcmdhbml6YXRpb25fX21lbnUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNnJlbTsgfSB9XG4gIC5uYXYtLW9wZW4gLm5hdi1vcmdhbml6YXRpb25fX21lbnUge1xuICAgIG1heC1oZWlnaHQ6IDUwcmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAubmF2LW9yZ2FuaXphdGlvbl9fbWVudSAubmF2X19tZW51LWxpc3Qge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG4gIC5uYXYtb3JnYW5pemF0aW9uX19tZW51IC5uYXZfX21lbnUtbGlzdCBsaSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5uYXYtb3JnYW5pemF0aW9uX19tZW51IC5uYXZfX21lbnUtbGlzdCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gICAgLm5hdi1vcmdhbml6YXRpb25fX21lbnUgLm5hdl9fbWVudS1saXN0IGxpOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAgIC5uYXYtb3JnYW5pemF0aW9uX19tZW51IC5uYXZfX21lbnUtbGlzdCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9XG4gICAgICAgIC5uYXYtb3JnYW5pemF0aW9uX19tZW51IC5uYXZfX21lbnUtbGlzdCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgICAgICAubmF2LW9yZ2FuaXphdGlvbl9fbWVudSAubmF2X19tZW51LWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLm5hdi1vcmdhbml6YXRpb25fX21lbnUgLm5hdl9fbWVudS1saXN0IGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcmVtOyB9IH1cbiAgLm5hdi1vcmdhbml6YXRpb25fX21lbnUgLm5hdl9fbWVudS1saXN0IGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgICAubmF2LW9yZ2FuaXphdGlvbl9fbWVudSAubmF2X19tZW51LWxpc3QgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAgIC5uYXYtb3JnYW5pemF0aW9uX19tZW51IC5uYXZfX21lbnUtbGlzdCBhIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogM3JlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLm5hdi1vcmdhbml6YXRpb25fX21lbnUgLm5hdl9fbWVudS1saXN0IGEge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAwOyB9IH1cbiAgICAubmF2LW9yZ2FuaXphdGlvbl9fbWVudSAubmF2X19tZW51LWxpc3QgYTpob3ZlciwgLm5hdi1vcmdhbml6YXRpb25fX21lbnUgLm5hdl9fbWVudS1saXN0IGEuaXMtYWN0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cblxuLyoqXG4gKiBQb3NzaWJsZSBSZWZhY3RvcmluZ1xuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBTRUNUT1JcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnNlY3RvciBhOmhvdmVyIC5zZWN0b3JfX2ljb24ge1xuICBvcGFjaXR5OiAuNzsgfVxuXG4uc2VjdG9yLWNvbGxlY3Rpb24ge1xuICBjb2x1bW5zOiAxO1xuICBjb2x1bW4tZ2FwOiA0cmVtO1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAuc2VjdG9yLWNvbGxlY3Rpb24ge1xuICAgICAgY29sdW1uczogMjtcbiAgICAgIGNvbHVtbi1ydWxlOiAxcHggc29saWQgI0UzRTdFNjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAuc2VjdG9yLWNvbGxlY3Rpb24ge1xuICAgICAgY29sdW1uczogMzsgfSB9XG4gIC5zZWN0b3ItY29sbGVjdGlvbiAuc2VjdG9yIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMHJlbTsgfVxuICAgIC5zZWN0b3ItY29sbGVjdGlvbiAuc2VjdG9yOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cbiAgICAuc2VjdG9yLWNvbGxlY3Rpb24gLnNlY3RvciBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnNlY3Rvci1jb2xsZWN0aW9uIC5zZWN0b3IgLnBpbGwge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi8qKlxuICogRWxlbWVudHNcbiAqL1xuLnNlY3Rvcl9fY2hlY2tib3gge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uc2VjdG9yX19pY29uIHtcbiAgd2lkdGg6IDVyZW07XG4gIGhlaWdodDogNXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UzRTdFNjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnNlY3Rvcl9faWNvbiB7XG4gICAgICB3aWR0aDogNnJlbTtcbiAgICAgIGhlaWdodDogNnJlbTtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07IH0gfVxuICAuc2VjdG9yX19pY29uIHN2ZyB7XG4gICAgZmlsbDogYmxhY2s7IH1cblxuLnNlY3Rvcl9fbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzZFNkU2NDsgfVxuICAuc2VjdG9yX19sYWJlbCBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnNlY3Rvcl9fY291bnQge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBiYWNrZ3JvdW5kOiAjRTNFN0U2O1xuICBjb2xvcjogIzExMTExMTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4uc2VjdG9yX19jaGVja2JveDpjaGVja2VkICsgLnNlY3Rvcl9fbGFiZWwge1xuICBjb2xvcjogIzExMTExMTsgfVxuICAuc2VjdG9yX19jaGVja2JveDpjaGVja2VkICsgLnNlY3Rvcl9fbGFiZWwgLnNlY3Rvcl9faWNvbiB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogY3VycmVudENvbG9yOyB9XG4gICAgLnNlY3Rvcl9fY2hlY2tib3g6Y2hlY2tlZCArIC5zZWN0b3JfX2xhYmVsIC5zZWN0b3JfX2ljb24gc3ZnIHtcbiAgICAgIGZpbGw6IHdoaXRlOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIExBWU9VVEJSRUFLRVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmxheW91dGJyZWFrZXIge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4ubGF5b3V0YnJlYWtlcl9fYXNpZGUge1xuICBoZWlnaHQ6IDc1dnc7IH1cbiAgLmxheW91dGJyZWFrZXJfX2FzaWRlIC5yZXNwb25zaXZlLWltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5sYXlvdXRicmVha2VyX19hc2lkZSB7XG4gICAgICBoZWlnaHQ6IDUwcmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5sYXlvdXRicmVha2VyX19hc2lkZSB7XG4gICAgICBoZWlnaHQ6IDcwcmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC5sYXlvdXRicmVha2VyX19hc2lkZSB7XG4gICAgICBoZWlnaHQ6IDgwcmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAgIC5sYXlvdXRicmVha2VyX19hc2lkZSB7XG4gICAgICBoZWlnaHQ6IDEwMHJlbTsgfSB9XG5cbi5sYXlvdXRicmVha2VyX190ZXh0ID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4ubGF5b3V0YnJlYWtlcl9fdGV4dCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5sYXlvdXRicmVha2VyLS1sZWZ0LFxuICAubGF5b3V0YnJlYWtlci0tcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gIC5sYXlvdXRicmVha2VyLS1sZWZ0IC5sYXlvdXRicmVha2VyX19tYWluLFxuICAubGF5b3V0YnJlYWtlci0tcmlnaHQgLmxheW91dGJyZWFrZXJfX21haW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4OiAxOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAubGF5b3V0YnJlYWtlci0tbGVmdCAubGF5b3V0YnJlYWtlcl9fbWFpbixcbiAgLmxheW91dGJyZWFrZXItLXJpZ2h0IC5sYXlvdXRicmVha2VyX19tYWluIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAubGF5b3V0YnJlYWtlci0tbGVmdCAubGF5b3V0YnJlYWtlcl9fYXNpZGUsXG4gIC5sYXlvdXRicmVha2VyLS1yaWdodCAubGF5b3V0YnJlYWtlcl9fYXNpZGUge1xuICAgIGZsZXg6IDAgMCA1MCU7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gIC5sYXlvdXRicmVha2VyLS1sZWZ0IC5sYXlvdXRicmVha2VyX19hc2lkZSxcbiAgLmxheW91dGJyZWFrZXItLXJpZ2h0IC5sYXlvdXRicmVha2VyX19hc2lkZSB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzMzMlO1xuICAgIGZsZXg6IDAgMCBjYWxjKDUwJSAtIDI5LjVyZW0pOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAubGF5b3V0YnJlYWtlci0tcmlnaHQgLmxheW91dGJyZWFrZXJfX21haW4ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gIC5sYXlvdXRicmVha2VyLS1sZWZ0IC5sYXlvdXRicmVha2VyX19tYWluIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gIC5sYXlvdXRicmVha2VyLS1sZWZ0IC5sYXlvdXRicmVha2VyX190ZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogMzFyZW07XG4gICAgbWF4LXdpZHRoOiA4MXJlbTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgLmxheW91dGJyZWFrZXItLXJpZ2h0IC5sYXlvdXRicmVha2VyX19hc2lkZSB7XG4gICAgb3JkZXI6IDI7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gIC5sYXlvdXRicmVha2VyLS1yaWdodCAubGF5b3V0YnJlYWtlcl9fdGV4dCB7XG4gICAgbWFyZ2luOiAwIDMxcmVtIDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDgxcmVtOyB9IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgQ09MVU1OU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5jb2x1bW5zIHtcbiAgICBjb2x1bW5zOiAyO1xuICAgIGNvbHVtbi1nYXA6IDNyZW07IH1cbiAgICAuY29sdW1ucyBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIERSVVBBTCBMQU5HVUFHRVNXSVRDSEVSXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNibG9jay1sYW5ndWFnZWRyb3Bkb3duc3dpdGNoZXIgc2VsZWN0IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiAzcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuI2Jsb2NrLWxhbmd1YWdlZHJvcGRvd25zd2l0Y2hlciBvcHRpb24ge1xuICBwYWRkaW5nOiAwO1xuICBtaW4taGVpZ2h0OiBpbml0aWFsOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIEdSSURcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBNb2Rlcm4gZ3JpZCB1c2luZyBmbGV4Ym94XG4gKi9cbi5ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tbGVmdDogLTNyZW07IH1cblxuLmdyaWRfX2l0ZW0ge1xuICB3aWR0aDogMTAwJTtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuXG4vKipcbiAgICogR3V0dGVycyBzaXplXG4gICAqL1xuLmdyaWQtLXRpZ2h0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmdyaWQtLXRpZ2h0ID4gLmdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uZ3JpZC0tdGlueSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXJlbTsgfVxuICAuZ3JpZC0tdGlueSA+IC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cblxuLmdyaWQtLXNtYWxsIHtcbiAgbWFyZ2luLWxlZnQ6IC0ycmVtOyB9XG4gIC5ncmlkLS1zbWFsbCA+IC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07IH1cblxuLmdyaWQtLWxhcmdlIHtcbiAgbWFyZ2luLWxlZnQ6IC01cmVtOyB9XG4gIC5ncmlkLS1sYXJnZSA+IC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW07IH1cblxuLmdyaWQtLWh1Z2Uge1xuICBtYXJnaW4tbGVmdDogLTdyZW07IH1cbiAgLmdyaWQtLWh1Z2UgPiAuZ3JpZF9faXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiA3cmVtOyB9XG5cbi8qKlxuICAgKiBBbGlnbm1lbnRcbiAgICovXG4uZ3JpZC0tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmdyaWQtLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uZ3JpZC0tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uZ3JpZC0tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5ncmlkLS1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLyoqXG4gICAqIE9yZGVyXG4gICAqL1xuLmdyaWQtLXJldiB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gIC5ncmlkLS1sZy1yZXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfSB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFNXSVBFIFNMSURFUlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uc3dpcGVfX2l0ZW0gLnNlY3Rpb25fX2JvZHkge1xuICB3aWR0aDogYXV0bzsgfVxuXG4vKipcbiAqIEVsZW1lbnRzXG4gKi9cbi5zbGlkZXJfX2NvbnRyb2xzIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uc2xpZGVyX19jb250cm9sLWJ0biB7XG4gIGZvbnQtc2l6ZTogMy42cmVtO1xuICBsaW5lLWhlaWdodDogNS40cmVtO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogNnJlbTtcbiAgaGVpZ2h0OiA2cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnNsaWRlcl9fY29udHJvbC1idG4ge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLnNsaWRlcl9fY29udHJvbC1idG4gc3BhbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiAuMDVlbTsgfVxuXG4uc2xpZGVyX19pbmRpY2F0b3Ige1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmbGV4OiAxIDEgMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnNsaWRlcl9faW5kaWNhdG9yIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiA0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIHRyYW5zaXRpb246IDAuNnMgY3ViaWMtYmV6aWVyKDAuNzQsIDAuMzMsIDAuMTUsIDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICBvcGFjaXR5OiAuNTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgIHdpZHRoOiA2cmVtO1xuICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07IH0gfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0OmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7IH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLCAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmU6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5zbGlkZXJfX292ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0xO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY3ZjY7XG4gIGZpbHRlcjogYmx1cigzNnB4KTsgfVxuXG4uc2xpZGVyX19vdmVybGF5LWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IDAuNnMgY3ViaWMtYmV6aWVyKDAuNzQsIDAuMzMsIDAuMTUsIDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgLnNsaWRlcl9fb3ZlcmxheS1pbWFnZS5hY3RpdmUge1xuICAgIG9wYWNpdHk6IC4wODsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBCVUJCTEVTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5idWJibGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxNXJlbTtcbiAgaGVpZ2h0OiAxNXJlbTtcbiAgcGFkZGluZzogMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmJ1YmJsZV9fdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uYnViYmxlX190ZXh0IHtcbiAgY29sb3I6IHJnYmEoMTcsIDE3LCAxNywgMC42KTsgfVxuXG4vKipcbiAqIERpc3BsYXkgbW9kaWZpZXJzXG4gKi9cbi5idWJibGUtLXRpbnkge1xuICB3aWR0aDogNnJlbTtcbiAgaGVpZ2h0OiA2cmVtO1xuICBwYWRkaW5nOiAxLjVyZW07IH1cblxuLmJ1YmJsZS0tc21hbGwge1xuICB3aWR0aDogMTFyZW07XG4gIGhlaWdodDogMTFyZW07IH1cblxuLmJ1YmJsZS0tbGFyZ2Uge1xuICB3aWR0aDogMTlyZW07XG4gIGhlaWdodDogMTlyZW07IH1cblxuLmJ1YmJsZS0taHVnZSB7XG4gIHdpZHRoOiAyM3JlbTtcbiAgaGVpZ2h0OiAyM3JlbTsgfVxuXG4uYnViYmxlX190cmFuc3BhcmVudCB7XG4gIHBhZGRpbmc6IDRyZW07XG4gIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDE3LCAxNywgMTcsIDAuMik7IH1cbiAgLmJ1YmJsZV9fdHJhbnNwYXJlbnQgLmljb24ge1xuICAgIGZpbGw6IHdoaXRlOyB9XG5cbi5idWJibGUtLWJlbmVmaXRzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAuYnViYmxlLS1iZW5lZml0cyB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5idWJibGUtLWJlbmVmaXRzIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDI1JSwgLTI1JSk7XG4gICAgICBib3gtc2hhZG93OiAwIDJweCAxNnB4IDAgcmdiYSgxMzEsIDE0NCwgMTQwLCAwLjIxKTsgfSB9XG5cbi8qKlxuICogQWx0ZXJuYXRpdmUgY29sb3JzXG4gKi9cbi5idWJibGUtY29sbGVjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUwcmVtO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYnViYmxlLWNvbGxlY3Rpb25fX2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxOXJlbTtcbiAgaGVpZ2h0OiAxOXJlbTsgfVxuICAuYnViYmxlLWNvbGxlY3Rpb25fX2NvbnRlbnQgLmJ1YmJsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwOyB9XG4gICAgLmJ1YmJsZS1jb2xsZWN0aW9uX19jb250ZW50IC5idWJibGU6bnRoLWNoaWxkKDEpIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xOHJlbSwgLTE1cmVtKTsgfVxuICAgIC5idWJibGUtY29sbGVjdGlvbl9fY29udGVudCAuYnViYmxlOm50aC1jaGlsZCgyKSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtM3JlbSwgMTVyZW0pOyB9XG4gICAgLmJ1YmJsZS1jb2xsZWN0aW9uX19jb250ZW50IC5idWJibGU6bnRoLWNoaWxkKDMpIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDEycmVtLCAtOHJlbSk7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgSU1BR0VcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmltZy1jb250YWN0LXRodW1ibmFpbCB7XG4gIHdpZHRoOiA2cmVtO1xuICBoZWlnaHQ6IDZyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5pbWctY29udGFjdC10aHVtYm5haWwge1xuICAgICAgd2lkdGg6IDEzcmVtO1xuICAgICAgaGVpZ2h0OiAxM3JlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAuaW1nLWNvbnRhY3QtdGh1bWJuYWlsIHtcbiAgICAgIHdpZHRoOiAxOHJlbTtcbiAgICAgIGhlaWdodDogMThyZW07IH0gfVxuXG4ucmVzcG9uc2l2ZS1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSogIFBJTExcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnBpbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nOiAuM3JlbSAxcmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDFlbTtcbiAgYmFja2dyb3VuZDogI2Q4MjI0MztcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMnJlbTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBBUlRJQ0xFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5hcnRpY2xlIHtcbiAgbWFyZ2luLXRvcDogNXJlbTsgfVxuXG4uYXJ0aWNsZV9faGVybyB7XG4gIGhlaWdodDogNDByZW07XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuICAuYXJ0aWNsZV9faGVybyAucmVzcG9uc2l2ZS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuYXJ0aWNsZV9faGVybyB7XG4gICAgICBoZWlnaHQ6IDUwcmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAgIC5hcnRpY2xlX19oZXJvIHtcbiAgICAgIGhlaWdodDogMzV2dzsgfSB9XG5cbi8qKlxuICogRGlzcGxheSBtb2RpZmllcnNcbiAqL1xuLyoqXG4gKiBBbHRlcm5hdGl2ZSBjb2xvcnNcbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgSU5QVVQgUkFOR0VcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyogRnVuY3Rpb25hbCBzdHlsaW5nO1xuICogVGhlc2Ugc3R5bGVzIGFyZSByZXF1aXJlZCBmb3Igbm9VaVNsaWRlciB0byBmdW5jdGlvbi5cbiAqIFlvdSBkb24ndCBuZWVkIHRvIGNoYW5nZSB0aGVzZSBydWxlcyB0byBhcHBseSB5b3VyIGRlc2lnbi5cbiAqL1xuLmlucHV0LXJhbmdlX190YXJnZXQsXG4uaW5wdXQtcmFuZ2VfX3RhcmdldCAqIHtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5pbnB1dC1yYW5nZV9fdGFyZ2V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4uaW5wdXQtcmFuZ2VfX2Jhc2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIC8qIEZpeCA0MDEgKi8gfVxuXG4uaW5wdXQtcmFuZ2VfX2Nvbm5lY3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDsgfVxuXG4uaW5wdXQtcmFuZ2VfX29yaWdpbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDsgfVxuXG4uaW5wdXQtcmFuZ2VfX2hhbmRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTsgfVxuICAuaW5wdXQtcmFuZ2VfX2hhbmRsZTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG4uaW5wdXQtcmFuZ2UtLXN0YXRlLXRhcCAuaW5wdXQtcmFuZ2VfX2Nvbm5lY3QsXG4uaW5wdXQtcmFuZ2UtLXN0YXRlLXRhcCAuaW5wdXQtcmFuZ2VfX29yaWdpbiB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjNzLCByaWdodCAwLjNzLCBib3R0b20gMC4zcywgbGVmdCAwLjNzOyB9XG5cbi5pbnB1dC1yYW5nZS0tc3RhdGUtZHJhZyAqIHtcbiAgY3Vyc29yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cblxuLyogUGFpbnRpbmcgYW5kIHBlcmZvcm1hbmNlO1xuICogQnJvd3NlcnMgY2FuIHBhaW50IGhhbmRsZXMgaW4gdGhlaXIgb3duIGxheWVyLlxuICovXG4uaW5wdXQtcmFuZ2VfX2Jhc2UsXG4uaW5wdXQtcmFuZ2VfX2hhbmRsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLyogU2xpZGVyIHNpemUgYW5kIGhhbmRsZSBwbGFjZW1lbnQ7XG4gKi9cbi5pbnB1dC1yYW5nZS0taG9yaXpvbnRhbCB7XG4gIGhlaWdodDogMXJlbTsgfVxuXG4uaW5wdXQtcmFuZ2UtLWhvcml6b250YWwgLmlucHV0LXJhbmdlX19oYW5kbGUge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBsZWZ0OiAtMXJlbTtcbiAgdG9wOiAtMXJlbTsgfVxuXG4uaW5wdXQtcmFuZ2UtLXZlcnRpY2FsIHtcbiAgd2lkdGg6IDE4cHg7IH1cblxuLmlucHV0LXJhbmdlX192ZXJ0aWNhbCAuaW5wdXQtcmFuZ2VfX2hhbmRsZSB7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGxlZnQ6IC02cHg7XG4gIHRvcDogLTE3cHg7IH1cblxuLyogU3R5bGluZztcbiAqL1xuLmlucHV0LXJhbmdlX190YXJnZXQge1xuICBiYWNrZ3JvdW5kOiAjRTNFN0U2O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLmlucHV0LXJhbmdlX19jb25uZWN0IHtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgNDUwbXM7IH1cblxuLyogSGFuZGxlcyBhbmQgY3Vyc29ycztcbiAqL1xuLmlucHV0LXJhbmdlX19kcmFnZ2FibGUge1xuICBjdXJzb3I6IGV3LXJlc2l6ZTsgfVxuXG4uaW5wdXQtcmFuZ2UtLXZlcnRpY2FsIC5pbnB1dC1yYW5nZV9fZHJhZ2dhYmxlIHtcbiAgY3Vyc29yOiBucy1yZXNpemU7IH1cblxuLmlucHV0LXJhbmdlX19oYW5kbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjVmN2Y2O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBib3gtc2hhZG93OiAwIDJweCAycHggMHB4IHJnYmEoMTI4LCAxNDAsIDEzNiwgMC4xMyk7XG4gIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjsgfVxuICAuaW5wdXQtcmFuZ2VfX2hhbmRsZTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAjQjVCQkI5O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICB0b3A6IDAuODc1cmVtO1xuICAgIGxlZnQ6IDAuODc1cmVtO1xuICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjsgfVxuXG4uaW5wdXQtcmFuZ2VfX2FjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDE2cHggMCByZ2JhKDEzMSwgMTQ0LCAxNDAsIDAuMjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7IH1cbiAgLmlucHV0LXJhbmdlX19hY3RpdmU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjsgfVxuXG4vKiBEaXNhYmxlZCBzdGF0ZTtcbiAqL1xuW2Rpc2FibGVkXSAuaW5wdXQtcmFuZ2VfX2Nvbm5lY3Qge1xuICBiYWNrZ3JvdW5kOiAjQjhCOEI4OyB9XG5cbltkaXNhYmxlZF0uaW5wdXQtcmFuZ2VfX3RhcmdldCxcbltkaXNhYmxlZF0uaW5wdXQtcmFuZ2VfX2hhbmRsZSxcbltkaXNhYmxlZF0gLmlucHV0LXJhbmdlX19oYW5kbGUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi8qIEJhc2U7XG4gKlxuICovXG4uaW5wdXQtcmFuZ2VfX3BpcHMsXG4uaW5wdXQtcmFuZ2VfX3BpcHMgKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLmlucHV0LXJhbmdlX19waXBzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogIzk5OTsgfVxuXG4vKiBWYWx1ZXM7XG4gKlxuICovXG4uaW5wdXQtcmFuZ2VfX3ZhbHVlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmlucHV0LXJhbmdlX192YWx1ZS1zdWIge1xuICBjb2xvcjogI2NjYztcbiAgZm9udC1zaXplOiAxMHB4OyB9XG5cbi8qIE1hcmtpbmdzO1xuICpcbiAqL1xuLmlucHV0LXJhbmdlX19tYXJrZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICNDQ0M7IH1cblxuLmlucHV0LXJhbmdlX19tYXJrZXItc3ViIHtcbiAgYmFja2dyb3VuZDogI0FBQTsgfVxuXG4uaW5wdXQtcmFuZ2VfX21hcmtlci1sYXJnZSB7XG4gIGJhY2tncm91bmQ6ICNBQUE7IH1cblxuLyogSG9yaXpvbnRhbCBsYXlvdXQ7XG4gKlxuICovXG4uaW5wdXQtcmFuZ2VfX3BpcHMtaG9yaXpvbnRhbCB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgaGVpZ2h0OiA4MHB4O1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5pbnB1dC1yYW5nZV9fdmFsdWUtaG9yaXpvbnRhbCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgNTAlLCAwKTsgfVxuXG4uaW5wdXQtcmFuZ2VfX21hcmtlci1ob3Jpem9udGFsLmlucHV0LXJhbmdlX19tYXJrZXIge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiA1cHg7IH1cblxuLmlucHV0LXJhbmdlX19tYXJrZXItaG9yaXpvbnRhbC5pbnB1dC1yYW5nZV9fbWFya2VyLXN1YiB7XG4gIGhlaWdodDogMTBweDsgfVxuXG4uaW5wdXQtcmFuZ2VfX21hcmtlci1ob3Jpem9udGFsLmlucHV0LXJhbmdlX19tYXJrZXItbGFyZ2Uge1xuICBoZWlnaHQ6IDE1cHg7IH1cblxuLyogVmVydGljYWwgbGF5b3V0O1xuICpcbiAqL1xuLmlucHV0LXJhbmdlX19waXBzLXZlcnRpY2FsIHtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTsgfVxuXG4uaW5wdXQtcmFuZ2VfX3ZhbHVlLXZlcnRpY2FsIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1MCUsIDApO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cblxuLmlucHV0LXJhbmdlX19tYXJrZXItdmVydGljYWwuaW5wdXQtcmFuZ2VfX21hcmtlciB7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW4tdG9wOiAtMXB4OyB9XG5cbi5pbnB1dC1yYW5nZV9fbWFya2VyLXZlcnRpY2FsLmlucHV0LXJhbmdlX19tYXJrZXItc3ViIHtcbiAgd2lkdGg6IDEwcHg7IH1cblxuLmlucHV0LXJhbmdlX19tYXJrZXItdmVydGljYWwuaW5wdXQtcmFuZ2VfX21hcmtlci1sYXJnZSB7XG4gIHdpZHRoOiAxNXB4OyB9XG5cbi5pbnB1dC1yYW5nZV9fdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEOUQ5RDk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5pbnB1dC1yYW5nZS0taG9yaXpvbnRhbCAuaW5wdXQtcmFuZ2VfX3Rvb2x0aXAge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgbGVmdDogNTAlO1xuICBib3R0b206IDEyMCU7IH1cblxuLmlucHV0LXJhbmdlLS12ZXJ0aWNhbCAuaW5wdXQtcmFuZ2VfX3Rvb2x0aXAge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxMjAlOyB9XG5cbi8qKlxuICogU3RydWN0dXJlc1xuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBTRUFSQ0hCT1hcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmItZ3JvdXAgLm5vLWJhY2tkcm9wZmlsdGVyIC5zZWN0aW9uLS1uYXYtZ3JvdXAge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7IH1cblxuLnNlYXJjaGJveC1ndXR0ZXIge1xuICBwYWRkaW5nOiAycmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAuc2VhcmNoYm94LWd1dHRlciB7XG4gICAgICBwYWRkaW5nOiAzcmVtOyB9IH1cblxuLnNlY3Rpb24tLXNlYXJjaGJveCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiAycmVtIDA7IH1cbiAgLnNlY3Rpb24tLXNlYXJjaGJveCAuc2VjdGlvbl9fYm9keSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2VjdGlvbi0tc2VhcmNoYm94IC5zZWN0aW9uX19ib2R5IHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5zZWFyY2hib3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW4tdG9wOiAtOXJlbSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAuc2VhcmNoYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IC0xN3JlbSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5zZWFyY2hib3gge1xuICAgICAgbWFyZ2luLXRvcDogLTE5cmVtICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLnNlYXJjaGJveCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMjFyZW0gIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAuc2VhcmNoYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IC0yNHJlbSAhaW1wb3J0YW50OyB9IH1cblxuLnNlYXJjaGJveF9fdGFicyB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLnNlYXJjaGJveF9fdGFicyB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfSB9XG5cbi5zZWFyY2hib3hfX3RpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgb3JkZXI6IDM7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgLnNlYXJjaGJveF9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5zZWFyY2hib3hfX3RpdGxlIHtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgZmxleDogMCAwIDY2JTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuc2VhcmNoYm94X190aXRsZSB7XG4gICAgICBvcmRlcjogMDtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAuc2VhcmNoYm94X190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTsgfSB9XG4gIC5zZWFyY2hib3hfX3RpdGxlIHNwYW4ge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMnJlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNzVweCkge1xuICAgICAgLnNlYXJjaGJveF9fdGl0bGUgc3BhbiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAgIC5zZWFyY2hib3hfX3RpdGxlIHNwYW4ge1xuICAgICAgICBsaW5lLWhlaWdodDogM3JlbTsgfSB9XG4gIC5iLWdyb3VwIC5zZWFyY2hib3hfX3RpdGxlIC5jb3VudCwgLmItZ3JvdXAgLnNlYXJjaGJveF9fdGl0bGUgLnRpdGxlIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgLnNlYXJjaGJveF9fdGl0bGUgLmNvdW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogNHJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5zZWFyY2hib3hfX3RpdGxlIC5jb3VudCB7XG4gICAgICAgIGZvbnQtc2l6ZTogNS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogNXJlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgICAgLnNlYXJjaGJveF9fdGl0bGUgLmNvdW50IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDZyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogNi43NXJlbTsgfSB9XG4gIC5zZWFyY2hib3hfX3RpdGxlIC5zdWJ0ZXh0IHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgLnNlYXJjaGJveF9fdGl0bGUgLnN1YnRleHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxBXCI7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlOyB9XG4gICAgLmItZ3JvdXAgLnNlYXJjaGJveF9fdGl0bGUgLnN1YnRleHQge1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5zZWFyY2hib3hfX2hlYWRlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH0gfVxuXG4uYi1ncm91cCAuc2VhcmNoYm94X19oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjNDFCMjk3OyB9XG5cbi5iLW9yZ2FuaXphdGlvbiAuc2VhcmNoYm94X19oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmN2Y2OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAuYi1vcmdhbml6YXRpb24gLnNlYXJjaGJveF9faGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSk7IH0gfVxuXG4uY3NzcG9zaXRpb25zdGlja3kgLnNlYXJjaGJveF9faGVhZGVyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAtOHJlbTtcbiAgei1pbmRleDogNDAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAzNzVweCkge1xuICAgIC5jc3Nwb3NpdGlvbnN0aWNreSAuc2VhcmNoYm94X19oZWFkZXIge1xuICAgICAgdG9wOiAtMTByZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLmNzc3Bvc2l0aW9uc3RpY2t5IC5zZWFyY2hib3hfX2hlYWRlciB7XG4gICAgICB0b3A6IC0ycmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5jc3Nwb3NpdGlvbnN0aWNreSAuc2VhcmNoYm94X19oZWFkZXIge1xuICAgICAgdG9wOiAwcmVtOyB9IH1cblxuLnNlYXJjaGJveF9fZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLnNlYXJjaGJveF9fZmllbGQge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0MC4wNjI1ZW0pIHtcbiAgICAuc2VhcmNoYm94X19maWVsZCB7XG4gICAgICBmbGV4OiAxIDAgNDAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5zZWFyY2hib3hfX2ZpZWxkIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgIC5zZWFyY2hib3hfX2ZpZWxkIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07IH0gfVxuICAuc2VhcmNoYm94X19maWVsZCBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogNHJlbTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAgIC5zZWFyY2hib3hfX2ZpZWxkIGxhYmVsIHtcbiAgICAgICAgd2lkdGg6IDZyZW07XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTsgfSB9XG4gICAgLmItZ3JvdXAgLnNlYXJjaGJveF9fZmllbGQgbGFiZWwge1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gIC5zZWFyY2hib3hfX2ZpZWxkIGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDAuNzVyZW0gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogNHJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci13aWR0aDogMnB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuc2VhcmNoYm94X19maWVsZCBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgICBsaW5lLWhlaWdodDogNHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDZyZW0gIWltcG9ydGFudDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xuICAgICAgLnNlYXJjaGJveF9fZmllbGQgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuNzVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNzVyZW0gIWltcG9ydGFudDsgfSB9XG4gICAgLmItZ3JvdXAgLnNlYXJjaGJveF9fZmllbGQgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgIGJhY2tncm91bmQ6ICM0MUIyOTcgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAuYi1vcmdhbml6YXRpb24gLnNlYXJjaGJveF9fZmllbGQgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItY29sb3I6ICNFM0U3RTYgIWltcG9ydGFudDsgfVxuICAgIC5zZWFyY2hib3hfX2ZpZWxkIGlucHV0W3R5cGU9J3RleHQnXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gICAgICAuYi1ncm91cCAuc2VhcmNoYm94X19maWVsZCBpbnB1dFt0eXBlPSd0ZXh0J106Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOyB9XG4gICAgLmItZ3JvdXAgLnNlYXJjaGJveF9fZmllbGQgaW5wdXRbdHlwZT0ndGV4dCddOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSg1MCwgMTUxLCAxMjcsIDAuNSkgIWltcG9ydGFudDsgfVxuICAgIC5iLW9yZ2FuaXphdGlvbiAuc2VhcmNoYm94X19maWVsZCBpbnB1dFt0eXBlPSd0ZXh0J106Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjQjVCQkI5ICFpbXBvcnRhbnQ7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSg4MCwgODAsIDc3LCAwLjA1KSAhaW1wb3J0YW50OyB9XG4gIC5zZWFyY2hib3hfX2ZpZWxkIC5pY29uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuYi1ncm91cCAuc2VhcmNoYm94X19maWVsZCAuaWNvbiB7XG4gICAgICBmaWxsOiB3aGl0ZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5zZWFyY2hib3hfX2ZpZWxkLS10ZXJtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gIC5zZWFyY2hib3hfX2ZpZWxkLS1sb2NhdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH0gfVxuXG4uc2VhcmNoYm94X19idXR0b24ge1xuICBvcmRlcjogNDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgZmxleDogMCAwIGF1dG87IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5zZWFyY2hib3hfX2J1dHRvbiB7XG4gICAgICBmbGV4OiAxOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5zZWFyY2hib3hfX2J1dHRvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICAgIGZsZXg6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLnNlYXJjaGJveF9fYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgLnNlYXJjaGJveF9fYnV0dG9uIC5idG4ge1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuODc1cmVtIDFyZW07XG4gICAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDM3NXB4KSB7XG4gICAgICAuc2VhcmNoYm94X19idXR0b24gLmJ0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDRyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDEuNXJlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgICAgLnNlYXJjaGJveF9fYnV0dG9uIC5idG4ge1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgICAgLnNlYXJjaGJveF9fYnV0dG9uIC5idG4ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgICAuc2VhcmNoYm94X19idXR0b24gLmJ0biB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgICAuc2VhcmNoYm94X19idXR0b24gLmJ0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9IH1cbiAgICAuYi1ncm91cCAuc2VhcmNoYm94X19idXR0b24gLmJ0biB7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIGNvbG9yOiAjNDFCMjk3O1xuICAgICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTsgfVxuXG4uc2VhcmNoYm94X19maWx0ZXIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFM0U3RTY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAuc2VhcmNoYm94X19maWx0ZXIge1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnNlYXJjaGJveF9fZmlsdGVyIC5zZWFyY2hib3hfX2ZpbHRlci1saXN0IC5zZWFyY2hib3hfX2ZpbHRlci1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gICAgICAuc2VhcmNoYm94X19maWx0ZXI6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSA2MCUpOyB9IH1cblxuLnNlYXJjaGJveF9fZmlsdGVyLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC5zZWFyY2hib3hfX2ZpbHRlci1saXN0IHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnNlYXJjaGJveF9fZmlsdGVyLWxpc3Qge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbi5zZWFyY2hib3hfX2ZpbHRlci1pdGVtIC5idG4ge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogMTByZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgcGFkZGluZy10b3A6IDAuMzc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMS44cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW47XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuICAuc2VhcmNoYm94X19maWx0ZXItaXRlbSAuYnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjVmN2Y2OyB9XG4gIC5zZWFyY2hib3hfX2ZpbHRlci1pdGVtIC5idG46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaTXCI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjRlbTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgdmVydGljYWwtYWxpZ246IC0uMTI1ZW07XG4gICAgdHJhbnNpdGlvbjogMC42cyBjdWJpYy1iZXppZXIoMC43NCwgMC4zMywgMC4xNSwgMSk7IH1cbiAgLnNlYXJjaGJveF9fZmlsdGVyLWl0ZW0gLmJ0bi5hY3RpdmUge1xuICAgIGNvbG9yOiAjMTExMTExO1xuICAgIGJhY2tncm91bmQ6ICNmNWY3ZjY7IH1cbiAgICAuc2VhcmNoYm94X19maWx0ZXItaXRlbSAuYnRuLmFjdGl2ZTphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSB0cmFuc2xhdGVZKDAuNXB4KTsgfVxuXG4uc2VhcmNoYm94X19maWx0ZXItdGl0bGUge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAuc2VhcmNoYm94X19maWx0ZXItdGl0bGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gICAgLnNlYXJjaGJveF9fZmlsdGVyLXRpdGxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTsgfSB9XG5cbi5zZWFyY2hib3hfX2ZpbHRlci1kZXRhaWwge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuXG4uZmlsdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmZpbHRlcl9faWNvbiB7XG4gIHdpZHRoOiA4cmVtO1xuICBoZWlnaHQ6IDhyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFM0U3RTY7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHBhZGRpbmc6IDRyZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC5maWx0ZXJfX2ljb24ge1xuICAgICAgd2lkdGg6IDE2cmVtO1xuICAgICAgaGVpZ2h0OiAxNnJlbTsgfSB9XG4gIC5maWx0ZXJfX2ljb24gc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLmZpbHRlcl9fdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuLmRpZmZlcmVudCAuc2VhcmNoYm94IHtcbiAgbWFyZ2luLXRvcDogLTlyZW0gIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgLmRpZmZlcmVudCAuc2VhcmNoYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IC0xMHJlbSAhaW1wb3J0YW50OyB9IH1cblxuLmRpZmZlcmVudCAuc2VjdGlvbi0tc2VhcmNoYm94IC5zZWN0aW9uX19ib2R5IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgVEVBU0VSIE9SR0FOSVpBVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5Aa2V5ZnJhbWVzIHJvdzEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH0gfVxuXG4udGVhc2VyLW9yZ2FuaXphdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgaGVpZ2h0OiAxNnJlbTtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgdHJhbnNpdGlvbjogMS45cyBjdWJpYy1iZXppZXIoMC4xMiwgMC40MywgMC4zOCwgMSk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLnRlYXNlci1vcmdhbml6YXRpb24ge1xuICAgICAgaGVpZ2h0OiAyMXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAudGVhc2VyLW9yZ2FuaXphdGlvbiB7XG4gICAgICBoZWlnaHQ6IDI2cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgaGVpZ2h0OiAzMnJlbTtcbiAgICAgIG1hcmdpbjogMTJyZW0gMCAxNnJlbTtcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiBhdXRvOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDg4LjVlbSkge1xuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uIHtcbiAgICAgIGhlaWdodDogMzZyZW07IH0gfVxuXG4vKipcbiAqIEVsZW1lbnRzXG4gKi9cbi50ZWFzZXItb3JnYW5pemF0aW9uX19yb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgZGlzcGxheTogZmxleDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLnRlYXNlci1vcmdhbml6YXRpb25fX3JvdyB7XG4gICAgICBsZWZ0OiAzcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogM3JlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA0OC4wNjI1ZW0pIHtcbiAgICAudGVhc2VyLW9yZ2FuaXphdGlvbl9fcm93IHtcbiAgICAgIGxlZnQ6IDQuNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQuNXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NC4wNjI1ZW0pIHtcbiAgICAudGVhc2VyLW9yZ2FuaXphdGlvbl9fcm93IHtcbiAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19yb3c6bnRoLWNoaWxkKDEpIHtcbiAgICAgIGxlZnQ6IDNyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDguMDYyNWVtKSB7XG4gICAgLnRlYXNlci1vcmdhbml6YXRpb25fX3JvdzpudGgtY2hpbGQoMSkge1xuICAgICAgbGVmdDogNC41cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19yb3c6bnRoLWNoaWxkKDEpIHtcbiAgICAgIHRvcDogMHJlbTtcbiAgICAgIGxlZnQ6IDByZW07IH0gfVxuICAudGVhc2VyLW9yZ2FuaXphdGlvbl9fcm93Om50aC1jaGlsZCgxKSAudGVhc2VyLW9yZ2FuaXphdGlvbl9faXRlbTpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTgwJSk7IH1cbiAgLnRlYXNlci1vcmdhbml6YXRpb25fX3JvdzpudGgtY2hpbGQoMSkgLnRlYXNlci1vcmdhbml6YXRpb25fX2l0ZW06aG92ZXI6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnRlYXNlci1vcmdhbml6YXRpb25fX3JvdzpudGgtY2hpbGQoMikge1xuICAgIHRvcDogOHJlbTtcbiAgICBsZWZ0OiA4cmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAgICAgLnRlYXNlci1vcmdhbml6YXRpb25fX3JvdzpudGgtY2hpbGQoMikge1xuICAgICAgICB0b3A6IDEwcmVtO1xuICAgICAgICBsZWZ0OiAxMnJlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgICAgLnRlYXNlci1vcmdhbml6YXRpb25fX3JvdzpudGgtY2hpbGQoMikge1xuICAgICAgICB0b3A6IDEzcmVtO1xuICAgICAgICBsZWZ0OiAxNnJlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgICAgLnRlYXNlci1vcmdhbml6YXRpb25fX3JvdzpudGgtY2hpbGQoMikge1xuICAgICAgICB0b3A6IDE4cmVtO1xuICAgICAgICBsZWZ0OiAwcmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODguNWVtKSB7XG4gICAgICAudGVhc2VyLW9yZ2FuaXphdGlvbl9fcm93Om50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRvcDogMjByZW07IH0gfVxuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19yb3c6bnRoLWNoaWxkKDIpIC50ZWFzZXItb3JnYW5pemF0aW9uX19pdGVtOmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4MCUpOyB9XG4gICAgLnRlYXNlci1vcmdhbml6YXRpb25fX3JvdzpudGgtY2hpbGQoMikgLnRlYXNlci1vcmdhbml6YXRpb25fX2l0ZW06aG92ZXI6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgIG9wYWNpdHk6IDE7IH1cblxuLnRlYXNlci1vcmdhbml6YXRpb25fX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMnJlbTtcbiAgaGVpZ2h0OiA2cmVtO1xuICBtYXJnaW46IDAgMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDJweCAwcHggcmdiYSgxMjgsIDE0MCwgMTM2LCAwLjEzKTtcbiAgZmxleDogMCAwIDEycmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgLnRlYXNlci1vcmdhbml6YXRpb25fX2l0ZW0ge1xuICAgICAgaGVpZ2h0OiA4cmVtO1xuICAgICAgd2lkdGg6IDE2cmVtO1xuICAgICAgZmxleDogMCAwIDE2cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19pdGVtIHtcbiAgICAgIG1hcmdpbjogMCAxLjVyZW07XG4gICAgICBoZWlnaHQ6IDEwcmVtO1xuICAgICAgd2lkdGg6IDIwcmVtO1xuICAgICAgZmxleDogMCAwIDIwcmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19pdGVtIHtcbiAgICAgIHdpZHRoOiAyOHJlbTtcbiAgICAgIGhlaWdodDogMTRyZW07XG4gICAgICBtYXJnaW46IDAgMnJlbTtcbiAgICAgIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjtcbiAgICAgIGZsZXg6IDAgMCAyOHJlbTtcbiAgICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG4gICAgICAudGVhc2VyLW9yZ2FuaXphdGlvbjpob3ZlciAudGVhc2VyLW9yZ2FuaXphdGlvbl9faXRlbSB7XG4gICAgICAgIG9wYWNpdHk6IDAuNTsgfVxuICAgICAgICAudGVhc2VyLW9yZ2FuaXphdGlvbjpob3ZlciAudGVhc2VyLW9yZ2FuaXphdGlvbl9faXRlbSAudGVhc2VyLW9yZ2FuaXphdGlvbl9fbG9nby0tY29sb3Ige1xuICAgICAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19pdGVtOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19pdGVtOmhvdmVyIC50ZWFzZXItb3JnYW5pemF0aW9uX19sb2dvLS1jb2xvciB7XG4gICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9XG4gICAgICAudGVhc2VyLW9yZ2FuaXphdGlvbl9faXRlbTpiZWZvcmUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1uYW1lKTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zNXMgY3ViaWMtYmV6aWVyKDAuNjUsIDAuNjIsIDAuMTIsIDIuMDYpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7IH1cbiAgICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19pdGVtOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMnJlbTtcbiAgICAgICAgbGVmdDogLTJyZW07XG4gICAgICAgIHJpZ2h0OiAtMnJlbTtcbiAgICAgICAgYm90dG9tOiAtMnJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA4OC41ZW0pIHtcbiAgICAudGVhc2VyLW9yZ2FuaXphdGlvbl9faXRlbSB7XG4gICAgICB3aWR0aDogMzJyZW07XG4gICAgICBoZWlnaHQ6IDE2cmVtO1xuICAgICAgZmxleDogMCAwIDMycmVtOyB9IH1cblxuLnRlYXNlci1vcmdhbml6YXRpb25fX2xvZ28ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMXJlbTtcbiAgbGVmdDogMnJlbTtcbiAgcmlnaHQ6IDJyZW07XG4gIGJvdHRvbTogMXJlbTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0LjA2MjVlbSkge1xuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19sb2dvIHtcbiAgICAgIHRvcDogMnJlbTtcbiAgICAgIGxlZnQ6IDVyZW07XG4gICAgICByaWdodDogNXJlbTtcbiAgICAgIGJvdHRvbTogMnJlbTsgfSB9XG5cbi50ZWFzZXItb3JnYW5pemF0aW9uX19sb2dvLS1jb2xvciB7XG4gIHRyYW5zaXRpb246IDAuMnMgZWFzZS1pbjsgfVxuXG4udGVhc2VyLW9yZ2FuaXphdGlvbl9fbG9nby0tbW9ub2Nocm9tZSB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICB6LWluZGV4OiAtMTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qICBGT09URVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmZvb3Rlci1saW5rcyB1bCB7XG4gIGNvbHVtbi1jb3VudDogMjtcbiAgY29sdW1uLWdhcDogM3JlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQuMDYyNWVtKSB7XG4gICAgLmZvb3Rlci1saW5rcyB1bCB7XG4gICAgICBjb2x1bW4tY291bnQ6IDM7IH0gfVxuICAuZm9vdGVyLWxpbmtzIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLyoqXG4gKiBEcnVwYWwgU3R1ZmZcbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiAgRFJVUEFMIFNQRUNJRklDXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNibG9jay1la3ctbG9jYWwtdGFza3Mge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDQ5ODtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAjYmxvY2stZWt3LWxvY2FsLXRhc2tzIHVsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAjYmxvY2stZWt3LWxvY2FsLXRhc2tzIGxpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtOyB9XG4gICNibG9jay1la3ctbG9jYWwtdGFza3MgYSB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgY29sb3I6ICMxMTExMTE7IH1cbiAgICAjYmxvY2stZWt3LWxvY2FsLXRhc2tzIGE6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuXG4ubGF5b3V0LWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4LjA2MjVlbSkge1xuICAucGFyYWdyYXBoLS10eXBlLS1jb21wYW5pZXMgaDIge1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7IH0gfVxuXG4vKipcbiAqIEhlbHBlclxuICovXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLm92ZXJmbG93LXZpc2libGUge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50OyB9XG5cbi52aXN1YWxseS1oaWRkZW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgd29yZC13cmFwOiBub3JtYWw7IH1cblxuLnBpbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ucG9zaXRpb24tc3RhdGljIHtcbiAgcG9zaXRpb246IHN0YXRpYzsgfVxuXG4ucGluLS10LXIge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwOyB9XG5cbi5waW4tLWItbCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuXG4ucGluLS1iLXIge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwOyB9XG5cbi5waW4tLWNlbnRlci1vZmYge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyNSUsIC0yNSUpOyB9XG5cbi5mbGV4IHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmxleC0tY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uZmxleC1pdGVtLS1ncm93LTEge1xuICBmbGV4LWdyb3c6IDE7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQwLjA2MjVlbSkge1xuICAuc20tZmxleC0tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cbiIsIi8qKlxuICogVG9vbHNcbiAqL1xuXG4vLyBAaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvdG9vbHMvZnVuY3Rpb25zJztcbkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy90b29scy9taXhpbnMnO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9tYXRoc2Fzcy9kaXN0L21hdGhcIjtcbkBpbXBvcnQgJ3Rvb2xzL21peGlucyc7XG5AaW1wb3J0ICd0b29scy9mdW5jdGlvbnMnO1xuXG4vKipcbiAqIFNldHRpbmdzXG4gKi9cblxuQGltcG9ydCAnLi4vLi4vLi4vLi4vdG1wL2dsb2JhbHNldHRpbmdzL2dsb2JhbHNldHRpbmdzJztcbkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9zZXR0aW5ncy9zZXR0aW5ncyc7XG5AaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5AaW1wb3J0ICdzZXR0aW5ncy9rYW5iYXN1JztcbkBpbXBvcnQgJ3NldHRpbmdzL3otaW5kZXgnO1xuXG5cbi8qKlxuICogVmVuZG9yc1xuICovXG5cbkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL3ZlbmRvci9zd2lwZXIvc3dpcGVyJztcblxuLyoqXG4gKiBBbmltYXRpb25zXG4gKi9cblxuQGltcG9ydCAnYW5pbWF0aW9ucy9yb3RhdGUnO1xuXG5cbi8qKlxuICogRGVmYXVsdHNcbiAqL1xuXG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvZGVmYXVsdHMvYm94LW1vZGVsJztcbkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9kZWZhdWx0cy9lbGVtZW50cyc7XG4vLyBAaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvZGVmYXVsdHMvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvZGVmYXVsdHMvdGFibGUnO1xuLy8gQGltcG9ydCAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2RlZmF1bHRzL2Zvcm1zJztcblxuXG4vKipcbiAqIEhlbHBlcnNcbiAqL1xuXG4vLyBAaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy90ZXh0JztcbkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9oZWxwZXJzL3RleHQtcmVzcG9uc2l2ZSc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy9mbG9hdCc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy9zcGFjaW5ncyc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy9zcGFjaW5ncy1yZXNwb25zaXZlJztcbkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9oZWxwZXJzL2ltYWdlcyc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvaGVscGVycy9wb3NpdGlvbm5pbmcnO1xuQGltcG9ydCAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2hlbHBlcnMvZGlzcGxheSc7XG5cbkBpbXBvcnQgJ2hlbHBlcnMvdGV4dCc7XG5AaW1wb3J0ICdoZWxwZXJzL2xpbmtzJztcbkBpbXBvcnQgJ2hlbHBlcnMvYm9yZGVyJztcbkBpbXBvcnQgJ2hlbHBlcnMvZGlzcGxheSc7XG5cblxuLyoqXG4gKiBCYXNlXG4gKi9cblxuQGltcG9ydCAnYmFzZS9wYWdlJztcbkBpbXBvcnQgJ2Jhc2UvZm9udHMnO1xuQGltcG9ydCAnYmFzZS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Jhc2UvZm9ybXMnO1xuQGltcG9ydCAnYmFzZS90YWJsZSc7XG5AaW1wb3J0ICdiYXNlL2JyYW5kJztcblxuLyoqXG4gKiBDb21wb25lbnRzXG4gKi9cblxuLy8gQGltcG9ydCAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvZ3JpZCc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvY29tcG9uZW50cy93aWR0aHMnO1xuQGltcG9ydCAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvd2lkdGhzLXJlc3BvbnNpdmUnO1xuLy8gQGltcG9ydCAnLi4vLi4vLi4vLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2thbmJhc3Uvc3JjL2Fzc2V0cy9zY3NzL2NvbXBvbmVudHMvYnRuJztcbi8vIEBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9jb21wb25lbnRzL2JveCc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9tZWRpYSc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9tZWRpYS1yZXNwb25zaXZlJztcbkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9jb21wb25lbnRzL21vc2FpYyc7XG5AaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9tb3NhaWMtcmVzcG9uc2l2ZSc7XG4vLyBAaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9saXN0Jztcbi8vIEBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9jb21wb25lbnRzL2xpc3QtaW5saW5lJztcbi8vIEBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9rYW5iYXN1L3NyYy9hc3NldHMvc2Nzcy9jb21wb25lbnRzL2xpc3Qtc3RhY2tlZCc7XG4vLyBAaW1wb3J0ICcuLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMva2FuYmFzdS9zcmMvYXNzZXRzL3Njc3MvY29tcG9uZW50cy9lbWJlZC1yZXNwb25zaXZlJztcblxuQGltcG9ydCAnY29tcG9uZW50cy9idG4nO1xuQGltcG9ydCAnY29tcG9uZW50cy9saXN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGlzdC1pbmxpbmUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9saXN0LXN0YWNrZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9ib3gnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zZWN0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL21hdGVyaWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaGVhZGxpbmUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9uYXZiYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zZWN0b3InO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYXlvdXRicmVha2VyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29sdW1ucyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RydXBhbC1sYW5ndWFnZXN3aXRjaGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ3JpZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NlY3Rpb24tc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnViYmxlcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ltYWdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGlsbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FydGljbGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9pbnB1dC1yYW5nZSc7XG5cbi8qKlxuICogU3RydWN0dXJlc1xuICovXG5AaW1wb3J0ICdzdHJ1Y3R1cmVzL3NlYXJjaGJveCc7XG5AaW1wb3J0ICdzdHJ1Y3R1cmVzL3RlYXNlci1vcmdhbml6YXRpb24nO1xuQGltcG9ydCAnc3RydWN0dXJlcy9mb290ZXInO1xuXG5cbi8qKlxuICogRHJ1cGFsIFN0dWZmXG4gKi9cbkBpbXBvcnQgJ2RydXBhbC9kcnVwYWwnO1xuXG5cbi8qKlxuICogSGVscGVyXG4gKi9cbkBpbXBvcnQgJ2Jhc2UvaGVscGVyJztcbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNSVhJTlNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBPdXRwdXQgc29tZXRoaW5nIGZvciBlYWNoIHNwYWNpbmdzXG4vLyAkc3BhY2luZy1uYW1lIGFuZCAkc3BhY2luZy12YWx1ZSBhcmUgYXZhaWxhYmxlIGluc2lkZSBAY29udGVudFxuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSBmb3JlYWNoLWFsdGVybmF0aXZlLXNwYWNpbmcoKSB7fVxuXG5AbWl4aW4gZm9yZWFjaC1hbHRlcm5hdGl2ZS1zcGFjaW5nKCRzcGFjaW5nczogJHNwYWNpbmdzKSB7XG4gIEBlYWNoICRzcGFjaW5nIGluICRzcGFjaW5ncyB7XG4gICAgLy8gU2V0IHRoZW0gYXMgZ2xvYmFsIHNvIGl0IGNhbiBiZSB1c2VkIGluc2lkZSB0aGUgQGNvbnRlbnRcbiAgICAkc3BhY2luZy1uYW1lOiBudGgoJHNwYWNpbmcsIDEpICFnbG9iYWw7XG4gICAgJHNwYWNpbmctdmFsdWU6IG50aCgkc3BhY2luZywgMikgIWdsb2JhbDtcblxuICAgIEBjb250ZW50O1xuXG4gICAgLy8gUmVzZXQgZ2xvYmFsIHZhcmlhYmxlc1xuICAgICRzcGFjaW5nLW5hbWU6IG51bGwgIWdsb2JhbDtcbiAgICAkc3BhY2luZy12YWx1ZTogbnVsbCAhZ2xvYmFsO1xuICB9XG59XG5cblxuLy8gT3V0cHV0IHNvbWV0aGluZyBmb3IgZWFjaCBicmVha3BvaW50XG4vLyAkYnJlYWtwb2ludC1uYW1lIGlzIGF2YWlsYWJsZSBpbnNpZGUgQGNvbnRlbnRcbi8vXG4vLyBVc2FnZTogQGluY2x1ZGUgZm9yZWFjaC1icmVha3BvaW50KCkge31cblxuQG1peGluIGZvcmVhY2gtYnJlYWtwb2ludCgkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cy1kZWZhdWx0LCAkcHJlZml4OiBudWxsKSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XG4gICAgJGJyZWFrcG9pbnQtbmFtZTogbnRoKCRicmVha3BvaW50LCAxKSAhZ2xvYmFsOyAvLyBTZXQgaXQgYXMgZ2xvYmFsIHNvIGl0IGNhbiBiZSB1c2VkIGluc2lkZSB0aGUgQGNvbnRlbnRcbiAgICAkYnJlYWtwb2ludC1tcTogbnRoKCRicmVha3BvaW50LCAyKTtcblxuICAgIEBtZWRpYSAjeyRwcmVmaXh9ICN7JGJyZWFrcG9pbnQtbXF9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgICRicmVha3BvaW50LW5hbWU6IG51bGwgIWdsb2JhbDsgLy8gUmVzZXQgZ2xvYmFsIHZhcmlhYmxlXG4gIH1cbn1cblxuXG4vLyBTY29wZSB0aGUgY29udGVudCBnaXZlbiBpbnRvIHRoZSBkZWZpbmVkIG1lZGlhIHF1ZXJ5XG4vLyAkbXEgICAge1N0cmluZ30gIFRoZSBJRCBvZiB0aGUgbWVkaWEgcXVlcnkgeW91ciBsaXN0IG9mIGJyZWFrcG9pbnRzICgkYnJlYWtwb2ludHMtZGVmYXVsdCBieSBkZWZhdWx0KVxuLy9cbi8vIFVzYWdlOiBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7fVxuXG5AbWl4aW4gbWVkaWEoJG1xLCAkYnJlYWtwb2ludHM6ICRicmVha3BvaW50cy1kZWZhdWx0KSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XG4gICAgJGJyZWFrcG9pbnQtbmFtZTogbnRoKCRicmVha3BvaW50LCAxKTtcbiAgICAkYnJlYWtwb2ludC1tcTogbnRoKCRicmVha3BvaW50LCAyKTtcblxuICAgIEBpZiAoJGJyZWFrcG9pbnQtbmFtZSA9PSAkbXEpIHtcbiAgICAgIEBtZWRpYSAjeyRicmVha3BvaW50LW1xfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIEdlbmVyYXRlIGZyYWN0aW9ucyBjbGFzc2VzIHRvIGJlIHVzZWQgYXMgZmx1aWQgd2lkdGhzXG4vLyAkY29sdW1ucyAgIHtMaXN0fSAgICBBIGxpc3Qgb2YgbnVtYmVycyBpbiByZXZlcnNlIG9yZGVyIGZvciB3aGljaCB5b3Ugd2FudCB0byBjcmVhdGUgZnJhY3Rpb25zXG4vLyAgICAgICAgICAgICAgICAgICAgICBcIjMsMiwxXCIgd2lsbCBjcmVhdGUgMS8yIDEvMyAyLzNcbi8vICAgICAgICAgICAgICAgICAgICAgIFJldmVyc2Ugb3JkZXIgaXMgcmVxdWlyZWQgdG8ga2VlcCBvbmx5IDEvMiBpbnN0ZWFkIG9mIDIvNCBmb3IgZXhhbXBsZVxuLy8gJHByZWZpeCAgICB7U3RyaW5nfSAgQSBwcmVmaXggZm9yIHRoZSBnZW5lcmF0ZWQgY2xhc3Nlc1xuXG5AbWl4aW4gd2lkdGhzKCRjb2x1bW5zLCAkcHJlZml4OiBudWxsKSB7XG4gICRmcmFjdGlvbnM6ICgpO1xuXG4gIC8vIExvb3AgaW5zaWRlIGVudHJpZXMgYW5kIHB1c2ggdGhlbSBpbnRvIGEgbWFwXG4gIC8vIFNvIGVudHJpZXMgYXJlIHVuaXF1ZSBieSB3aWR0aFxuICBAZWFjaCAkY29sdW1uIGluICRjb2x1bW5zIHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW4ge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRpLyRjb2x1bW4pO1xuICAgICAgJGZyYWN0aW9uczogbWFwLW1lcmdlKCRmcmFjdGlvbnMsICgkd2lkdGg6ICN7JGl9XFwvI3skY29sdW1ufSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE5vdyBnZW5lcmF0ZSBhbGwgdGhlIGNsYXNzZXNcbiAgQGVhY2ggJHdpZHRoLCAkZnJhY3Rpb24gaW4gJGZyYWN0aW9ucyB7XG4gICAgLiN7JG5hbWVzcGFjZX0jeyRwcmVmaXh9dy0jeyRmcmFjdGlvbn0sXG4gICAgJSN7JHByZWZpeH13LSN7JGZyYWN0aW9ufSB7XG4gICAgICB3aWR0aDogJHdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFJldHVybiBmb250LXNpemUgYW5kIGxpbmUtaGVpZ2h0IGZvciBhIGZvbnQuXG4gKiBXaGVuIGFkZGluZyB0aGUgJGZvcmNlIHBhcmFtZXRlciwgaXQgd2lsbCBhZGQgIWltcG9ydGFudFxuICogaW4gb3JkZXIgdG8gb3ZlcnJpZGUgaXQgSEFSRC5cbiAqL1xuQG1peGluIGZvbnQtdmFsdWVzKCRmb250LCAkZm9yY2U6IG51bGwpIHtcbiAgQGlmICgkZm9yY2UgPT0gZm9yY2UpIHtcbiAgICAkZm9yY2U6ICFpbXBvcnRhbnQ7XG4gIH1cbiAgXG4gIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWVzIGluICRmb250IHtcbiAgICAkZm9udHNpemU6ICN7bWFwLWdldCgkdmFsdWVzLCBzaXplKSAvICRyaHl0aG0tc3BhY2luZy1iYXNlfXJlbSAkZm9yY2U7XG4gICAgJGxpbmVoZWlnaHQ6ICN7bWFwLWdldCgkdmFsdWVzLCBsZWFkaW5nKX1yZW0gJGZvcmNlO1xuXG4gICAgQGlmICgkYnJlYWtwb2ludCA9PSB4cykge1xuICAgICAgZm9udC1zaXplOiAkZm9udHNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmVoZWlnaHQ7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludCkge1xuICAgICAgICBmb250LXNpemU6ICRmb250c2l6ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5laGVpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGVU5DVElPTlNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5cbi8qKlxuICogQ29udmVydCBudW1iZXIgdG8gcHggdmFsdWVcbiAqL1xuQGZ1bmN0aW9uIHB4KCR2YWx1ZSkge1xuICBAcmV0dXJuICR2YWx1ZSArIDBweDtcbn1cblxuXG4vKipcbiAqIENhbGN1bGF0ZSBSRU0gdmFsdWUgYmFzZWQgb24gdGhlIGRlZmF1bHQgZm9udC1zaXplXG4gKi9cbkBmdW5jdGlvbiByZW0oJHZhbHVlLCAkYmFzZTogJHJoeXRobS1zcGFjaW5nLWJhc2UpIHtcbiAgQHJldHVybiAocHgoJHZhbHVlKSAvIHB4KCRiYXNlKSkgKiAxcmVtO1xufVxuXG5cbi8qKlxuICogUmV0dXJuIGEgdmFsdWUgZGl2aWRlZCBieSBhIHJhdGlvXG4gKiBJdCB1c2VzIHRoZSBnb2xkZW4gcmF0aW8gYnkgZGVmYXVsdFxuICpcbiAqIFVzZWZ1bCB0byBjcmVhdGUgXCJ2aXN1YWxseSBlcXVhbFwiIHNwYWNpbmdzXG4gKiBBcyBtYXRoZW1hdGljYWxseSBlcXVhbCBzcGFjaW5ncyBuZXZlciBcInZpc3VhbGx5XCIgbG9vayBlcXVhbCBhcm91bmQgdGV4dFxuICovXG5AZnVuY3Rpb24gcmF0aW8oJHZhbHVlLCAkcmF0aW86ICRyYXRpbykge1xuICBAcmV0dXJuIGZsb29yKCR2YWx1ZS8kcmF0aW8pO1xufVxuXG5cbi8qKlxuICogUmV0dXJuIGEgdW5pdGxlc3MgdmFsdWVcbiAqL1xuQGZ1bmN0aW9uIHBhcnNlSW50KCR2YWx1ZSkge1xuICBAcmV0dXJuICR2YWx1ZSAvICgkdmFsdWUgKiAwICsgMSk7XG59XG5cblxuLyoqXG4gKiBBZGRpdGlvbiB0b3AgYW5kIGJvdHRvbSBwYWRkaW5nXG4gKi9cbkBmdW5jdGlvbiB0b3RhbC12ZXJ0aWNhbC1wYWRkaW5nKCRwYWRkaW5nKSB7XG4gICRsZW5ndGg6IGxlbmd0aCgkcGFkZGluZyk7XG5cbiAgQGlmICgkbGVuZ3RoID09IDEpIHtcbiAgICBAcmV0dXJuICRwYWRkaW5nICogMjtcbiAgfVxuICBAaWYgKCRsZW5ndGggPT0gMikge1xuICAgIEByZXR1cm4gbnRoKCRwYWRkaW5nLCAxKSAqIDI7XG4gIH1cbiAgQGlmICgkbGVuZ3RoID09IDMgb3IgJGxlbmd0aCA9PSA0KSB7XG4gICAgQHJldHVybiBudGgoJHBhZGRpbmcsIDEpICsgbnRoKCRwYWRkaW5nLCAzKTtcbiAgfVxuXG4gIEBlcnJvciBcIlBhZGRpbmcgaXMgaW52YWxpZCwgbXVzdCBiZSAxIHRvIDQgdmFsdWVzIHdpdGggdW5pdC5cIlxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEdMT0JBTCBTRVRUSU5HU1xuXG4gIENoZWNrIHRoZSBmb2xsb3dpbmcgcGFnZSBmb3IgZGV0YWlsczpcbiAga2FuYmFzdS5saWlwLmNoL3NldHRpbmdzLmh0bWxcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBVc2UgdGhpcyBzZXR0aW5nIHRvIHByZWZpeCBhbGwgdGhlIGNvbXBvbmVudHMgY2xhc3Nlc1xuJG5hbWVzcGFjZTogICAgICAgICAgICAgICAgICAgICAgICAgJycgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBDb2xvcnNcbiAqL1xuXG4kYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjNmVhNjQ0ICFkZWZhdWx0O1xuJGFsdC1jb2xvci1saWdodGVyOiAgICAgICAgICAgICAgICAgI2VlZSAhZGVmYXVsdDtcbiRhbHQtY29sb3ItbGlnaHQ6ICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG4kYWx0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJGFsdC1jb2xvci1kYXJrOiAgICAgICAgICAgICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRhbHQtY29sb3ItZGFya2VyOiAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBUeXBvZ3JhcGh5XG4gKi9cblxuJGZvbnQtZmFtaWx5LWRlZmF1bHQ6ICAgICAgICAgICAgICAgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1kZWZhdWx0OiAgICAgICAgICAgICAgICAgMTZweCAhZGVmYXVsdDtcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgICAgICAgICAgIDAuNzVyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1kZWZhdWx0OiAgICAgICAgICAgICAgIDEuNDUgIWRlZmF1bHQ7XG5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRhbHQtY29sb3ItZGFya2VyICFkZWZhdWx0O1xuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWNvbG9yICFkZWZhdWx0O1xuJG11dGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnRpemUoJHRleHQtY29sb3IsLjQpICFkZWZhdWx0O1xuXG5cbi8qKlxuICogU3BhY2luZ3NcbiAqL1xuXG4kcmF0aW86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjYxODAzMzk4ODc1ICFkZWZhdWx0O1xuXG4kc3BhY2luZy11bml0LWRlZmF1bHQ6ICAgICAgICAgICAgICAyNHB4ICFkZWZhdWx0O1xuJHNwYWNpbmctdW5pdC10aW55OiAgICAgICAgICAgICAgICAgZmxvb3IoJHNwYWNpbmctdW5pdC1kZWZhdWx0IC8gKCRyYXRpbyAqIDIpKSAhZGVmYXVsdDtcbiRzcGFjaW5nLXVuaXQtc21hbGw6ICAgICAgICAgICAgICAgIGZsb29yKCRzcGFjaW5nLXVuaXQtZGVmYXVsdCAvICRyYXRpbykgIWRlZmF1bHQ7XG4kc3BhY2luZy11bml0LWxhcmdlOiAgICAgICAgICAgICAgICBmbG9vcigkc3BhY2luZy11bml0LWRlZmF1bHQgKiAkcmF0aW8pICFkZWZhdWx0O1xuJHNwYWNpbmctdW5pdC1odWdlOiAgICAgICAgICAgICAgICAgZmxvb3IoJHNwYWNpbmctdW5pdC1kZWZhdWx0ICogKCRyYXRpbyAqIDIpKSAhZGVmYXVsdDtcblxuJHNwYWNpbmdzOiAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAndGlnaHQnIDAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd0aW55JyAkc3BhY2luZy11bml0LXRpbnksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzbWFsbCcgJHNwYWNpbmctdW5pdC1zbWFsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2xhcmdlJyAkc3BhY2luZy11bml0LWxhcmdlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaHVnZScgJHNwYWNpbmctdW5pdC1odWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApICFkZWZhdWx0O1xuXG5cbi8qKlxuICogUmVzcG9uc2l2ZW5lc3NcbiAqL1xuXG4vLyBVc2UgRU0gbWVkaWEtcXVlcmllcyBmb3IgYmV0dGVyIGJyb3dzZXIgY29uc2lzdGVuY3lcbi8vIFNlZSBodHRwOi8vemVsbHdrLmNvbS9ibG9nL21lZGlhLXF1ZXJ5LXVuaXRzXG4kc2NyZWVuLXhzLW1heDogICAgICAgICAgICAgICAgICAgICA2NDBweCAgLyAxNnB4ICogMWVtICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAgICAgICAgNjQxcHggIC8gMTZweCAqIDFlbSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgICAgICAgIDc2OHB4ICAvIDE2cHggKiAxZW0gIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICAgICAgICA3NjlweCAgLyAxNnB4ICogMWVtICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAgICAgICAgMTAyNHB4IC8gMTZweCAqIDFlbSAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgICAgICAgIDEwMjVweCAvIDE2cHggKiAxZW0gIWRlZmF1bHQ7XG5cbiRtcS14czogICAgICAgICAgICAgICAgICAgICAgICAgICAgICcobWF4LXdpZHRoOiAjeyRzY3JlZW4teHMtbWF4fSknICFkZWZhdWx0OyAvLyBERVBSRUNBVEVEXG4kbXEtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKG1pbi13aWR0aDogI3skc2NyZWVuLXNtLW1pbn0pIGFuZCAobWF4LXdpZHRoOiAjeyRzY3JlZW4tc20tbWF4fSknICFkZWZhdWx0OyAvLyBERVBSRUNBVEVEXG4kbXEtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKG1pbi13aWR0aDogI3skc2NyZWVuLW1kLW1pbn0pIGFuZCAobWF4LXdpZHRoOiAjeyRzY3JlZW4tbWQtbWF4fSknICFkZWZhdWx0OyAvLyBERVBSRUNBVEVEXG4kbXEtbGc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKG1pbi13aWR0aDogI3skc2NyZWVuLWxnLW1pbn0pJyAhZGVmYXVsdDsgLy8gREVQUkVDQVRFRFxuXG4kYnJlYWtwb2ludHMtZGVmYXVsdDogICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzbScgJyhtaW4td2lkdGg6ICN7JHNjcmVlbi1zbS1taW59KScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtZCcgJyhtaW4td2lkdGg6ICN7JHNjcmVlbi1tZC1taW59KScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdsZycgJyhtaW4td2lkdGg6ICN7JHNjcmVlbi1sZy1taW59KSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgIWRlZmF1bHQ7XG4kYnJlYWtwb2ludHMtZGVzYzogICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICd4cycgJyhtYXgtd2lkdGg6ICN7JHNjcmVlbi14cy1tYXh9KScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzbScgJyhtYXgtd2lkdGg6ICN7JHNjcmVlbi1zbS1tYXh9KScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdtZCcgJyhtYXgtd2lkdGg6ICN7JHNjcmVlbi1tZC1tYXh9KSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBNaXNjZWxsYW5lb3VzXG4gKi9cblxuJGJvcmRlci1yYWRpdXMtZGVmYXVsdDogICAgICAgICAgICAgNHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAgICAgICAgMnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgICAgICAgICAgNnB4ICFkZWZhdWx0O1xuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBDT01QT05FTlRTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyoqXG4gKiBCdXR0b25zXG4gKi9cblxuJGJ0bi11c2UtcGFkZGluZy1yYXRpbzogICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kYnRuLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgMXB4IHNvbGlkIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ0bi1ia2c6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1kZWZhdWx0ICFkZWZhdWx0O1xuXG4kYnRuLXNtYWxsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAkc3BhY2luZy11bml0LXRpbnkgIWRlZmF1bHQ7XG4kYnRuLXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAkZm9udC1zaXplLXNtYWxsICFkZWZhdWx0O1xuJGJ0bi1zbWFsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbiRidG4tbGFyZ2UtcGFkZGluZzogICAgICAgICAgICAgICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhZGVmYXVsdDtcbiRidG4tbGFyZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICRmb250LXNpemUtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWxhcmdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmtnLWNvbG9yOiAgICAgICAgICAgICAkYWx0LWNvbG9yLWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtaG92ZXItYmtnLWNvbG9yOiAgICAgICBsaWdodGVuKCRidG4tZGVmYXVsdC1ia2ctY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1hY3RpdmUtYmtnLWNvbG9yOiAgICAgIGRhcmtlbigkYnRuLWRlZmF1bHQtYmtnLWNvbG9yLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICAgIHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJrZy1jb2xvcjogICAgICAgICAgICAgJGJyYW5kLWNvbG9yICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWhvdmVyLWJrZy1jb2xvcjogICAgICAgbGlnaHRlbigkYnRuLXByaW1hcnktYmtnLWNvbG9yLCA4JSkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYWN0aXZlLWJrZy1jb2xvcjogICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJrZy1jb2xvciwgNSUpICFkZWZhdWx0O1xuXG5cbi8qKlxuICogRm9ybXNcbiAqL1xuXG4kZmllbGQtdXNlLXBhZGRpbmctcmF0aW86ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG4kZmllbGQtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAkc3BhY2luZy11bml0LXNtYWxsICFkZWZhdWx0O1xuXG4kZmllbGQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGZpZWxkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRmaWVsZC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kZmllbGQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAkbGluZS1oZWlnaHQtZGVmYXVsdCAhZGVmYXVsdDtcblxuJGZpZWxkLWJrZy1jb2xvcjogICAgICAgICAgICAgICAgICAgd2hpdGUgIWRlZmF1bHQ7XG4kZmllbGQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAxcHggc29saWQgJGFsdC1jb2xvci1saWdodCAhZGVmYXVsdDtcbiRmaWVsZC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICRhbHQtY29sb3ItZGFya2VyICFkZWZhdWx0O1xuJGZpZWxkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtZGVmYXVsdCAhZGVmYXVsdDtcblxuJGZpZWxkLWRpc2FibGVkLWJrZy1jb2xvcjogICAgICAgICAgJGFsdC1jb2xvci1saWdodGVyICFkZWZhdWx0O1xuJGZpZWxkLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgJGFsdC1jb2xvciAhZGVmYXVsdDtcblxuJGZpZWxkLXNtYWxsLXBhZGRpbmc6ICAgICAgICAgICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFkZWZhdWx0O1xuJGZpZWxkLXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbWFsbCAhZGVmYXVsdDtcbiRmaWVsZC1zbWFsbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4kZmllbGQtbGFyZ2UtcGFkZGluZzogICAgICAgICAgICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWRlZmF1bHQ7XG4kZmllbGQtbGFyZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAkZm9udC1zaXplLWxhcmdlICFkZWZhdWx0O1xuJGZpZWxkLWxhcmdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG5cbiRmaWVsZC1oZWxwLWNvbG9yOiAgICAgICAgICAgICAgICAgICRhbHQtY29sb3ItbGlnaHQgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBMaXN0c1xuICovXG5cbiRsaXN0LXNlcGFyYXRvci1zdHlsZTogICAgICAgICAgICAgIDFweCBzb2xpZCAkYWx0LWNvbG9yLWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBCb3hcbiAqL1xuXG4kYm94LWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGJveC1kZWZhdWx0LWJrZy1jb2xvcjogICAgICAgICAgICAgJGFsdC1jb2xvci1saWdodGVyICFkZWZhdWx0O1xuXG4kYm94LXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICB3aGl0ZSAhZGVmYXVsdDtcbiRib3gtcHJpbWFyeS1ia2ctY29sb3I6ICAgICAgICAgICAgICRicmFuZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vKipcbiAqIEdyaWRcbiAqL1xuXG4kZ3JpZC1mbGV4OiAgICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcblxuXG4vKipcbiAqIFdpZHRoc1xuICovXG5cbiR3aWR0aHMtY29sdW1uczogICAgICAgICAgICAgICAgICAgIDYsNSw0LDMsMiwxICFkZWZhdWx0O1xuJHdpZHRocy1icmVha3BvaW50czogICAgICAgICAgICAgICAgJGJyZWFrcG9pbnRzLWRlZmF1bHQgIWRlZmF1bHQ7XG5cblxuLyoqXG4gKiBNZWRpYVxuICovXG5cbiRtZWRpYS1ndXR0ZXI6ICAgICAgICAgICAgICAgICAgICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhZGVmYXVsdDtcblxuXG4vKipcbiAqIE1lZGlhIHJlc3BvbnNpdmVcbiAqL1xuXG4kbWVkaWEtY29sbGFwc2U6ICAgICAgICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1heCAhZGVmYXVsdDtcblxuXG4vKipcbiAqIE1vc2FpYyByZXNwb25zaXZlXG4gKi9cblxuJG1vc2FpYy1jb2xsYXBzZTogICAgICAgICAgICAgICAgICAgJHNjcmVlbi1zbS1tYXggIWRlZmF1bHQ7XG4iLCIvKipcbiAqIExheW91dFxuICovXG5cbiRjb250YWluZXItd2lkdGg6ICAgICAgIDE0MTZweDtcblxuJGd1dHRlci14czogICAgICAgICAgICAgMnJlbTtcbiRndXR0ZXItc206ICAgICAgICAgICAgIDRyZW07XG4kZ3V0dGVyLW1kOiAgICAgICAgICAgICA2cmVtO1xuJGd1dHRlci1sZzogICAgICAgICAgICAgMTJyZW07XG4kZ3V0dGVyLXhsOiAgICAgICAgICAgICAxNnJlbTtcblxuLyoqXG4gKiBDb2xvcnNcbiAqL1xuXG4kY29sb3Itd2ViLWJsYWNrOiAgICAgICAjMzMzMzMzO1xuJGNvbG9yLWJsYWNrOiAgICAgICAgICAgIzAwMDAwMDtcbiRjb2xvci13ZWItd2hpdGU6ICAgICAgICNGN0Y3RjU7XG4kY29sb3Itd2hpdGU6ICAgICAgICAgICAjRkZGRkZGO1xuJGNvbG9yLXdoaXRlLWx1Y2VudDogICAgcmdiYSh3aGl0ZSwgMC44KTs7XG5cbiRjb2xvci1ncmV5LTUwOiAgICAgICAgICNmN2Y3Zjc7XG4kY29sb3ItZ3JleS0xMDA6ICAgICAgICAjZjVmN2Y2O1xuJGNvbG9yLWdyZXktMjAwOiAgICAgICAgI0UzRTdFNjtcbiRjb2xvci1ncmV5LTMwMDogICAgICAgICNEM0RBRDg7XG4kY29sb3ItZ3JleS00MDA6ICAgICAgICAjQzZDQ0NBO1xuJGNvbG9yLWdyZXktNTAwOiAgICAgICAgI0I1QkJCOTtcbiRjb2xvci1ncmV5LTYwMDogICAgICAgICM4OThBODE7XG4kY29sb3ItZ3JleS03MDA6ICAgICAgICAjNkU2RTY0O1xuJGNvbG9yLWdyZXktODAwOiAgICAgICAgIzVGNUY1ODtcbiRjb2xvci1ncmV5LTkwMDogICAgICAgICM1MDUwNEQ7XG4kY29sb3ItZ3JleS0xMDAwOiAgICAgICAjNDE0MTQxO1xuXG4kY29sb3ItbWludDogICAgICAgICAgICAjNDFCMjk3O1xuJGNvbG9yLW1pbnQtbGlnaHQ6ICAgICAgIzgyYzdiMTtcbiRjb2xvci1taW50LWRhcms6ICAgICAgIzMyOTc3ZjtcblxuJGNvbG9yLXN0cmF3YmVycnk6ICAgICAgI2Q4MjI0MztcblxuJGNvbG9yLXBhbGxhZGl1bTogICAgICAgIzM5M2U0ODtcblxuLyoqXG4gKiBTcGFjaW5nICYgVHlwb2dyYXBoeVxuICovXG5cbiRyaHl0aG0tc3BhY2luZy1iYXNlOiAgICA4O1xuJHJoeXRobS1mb250LWJhc2U6ICAgICAgIDE2O1xuXG5cblxuLy8gTGV0J3MgZGVmaW5lIG91ciBmb250IHNpemVzIHdlIHdpbGwgdXNlIGFjcm9zc1xuLy8gYWxsIGJyZWFrcG9pbnRzXG4kcmh5dGhtLXNpemUteHh4bDogKFxuICBzaXplOiA1NixcbiAgbGVhZGluZzogN1xuKTtcblxuJHJoeXRobS1zaXplLXh4bDogKFxuICBzaXplOiA0NixcbiAgbGVhZGluZzogNlxuKTtcblxuJHJoeXRobS1zaXplLXhsOiAoXG4gIHNpemU6IDM0LFxuICBsZWFkaW5nOiA1XG4pO1xuXG4kcmh5dGhtLXNpemUtbDogKFxuICBzaXplOiAyOSxcbiAgbGVhZGluZzogNVxuKTtcblxuJHJoeXRobS1zaXplLW06IChcbiAgc2l6ZTogMjMsXG4gIGxlYWRpbmc6IDRcbik7XG5cbiRyaHl0aG0tc2l6ZS1zOiAoXG4gIHNpemU6IDIwLFxuICBsZWFkaW5nOiA0XG4pO1xuXG4kcmh5dGhtLXNpemUteHM6IChcbiAgc2l6ZTogMTYsXG4gIGxlYWRpbmc6IDNcbik7XG5cbiRyaHl0aG0tc2l6ZS14eHM6IChcbiAgc2l6ZTogMTQsXG4gIGxlYWRpbmc6IDJcbik7XG5cbiRyaHl0aG0tc2l6ZS14eHhzOiAoXG4gIHNpemU6IDEyLFxuICBsZWFkaW5nOiAyXG4pO1xuXG4vLyBBc3NpZ24gdGhlIGZvbnQgc2l6ZXMgdG8gc3BlY2lmaWMgYnJlYWtwb2ludHNcbi8vIGZvciBoZWFkaW5ncyBhbmQgcmVndWxhciB0ZXh0XG4kZm9udC1oZWFkbGluZTogKFxuICB4czogKFxuICAgIHNpemU6IDIyLFxuICAgIGxlYWRpbmc6IDRcbiAgKSxcbiAgc206IChcbiAgICBzaXplOiAyOCxcbiAgICBsZWFkaW5nOiA1XG4gICksXG4gIG1kOiAoXG4gICAgc2l6ZTogMzQsXG4gICAgbGVhZGluZzogNlxuICApLFxuICBsZzogKFxuICAgIHNpemU6IDQwLFxuICAgIGxlYWRpbmc6IDdcbiAgKSxcbiAgeGw6IChcbiAgICBzaXplOiA0NixcbiAgICBsZWFkaW5nOiA4XG4gIClcbik7XG5cbiRmb250LWgxOiAoXG4gIHhzOiAkcmh5dGhtLXNpemUteGwsXG4gIGxnOiAkcmh5dGhtLXNpemUteHh4bFxuKTtcblxuJGZvbnQtaDI6IChcbiAgeHM6ICRyaHl0aG0tc2l6ZS1tLFxuICBzbTogJHJoeXRobS1zaXplLWwsXG4gIG1kOiAkcmh5dGhtLXNpemUteGwsXG4gIGxnOiAkcmh5dGhtLXNpemUteHhsXG4pO1xuXG4kZm9udC1oMzogKFxuICB4czogJHJoeXRobS1zaXplLW0sXG4gIGxnOiAkcmh5dGhtLXNpemUteGxcbik7XG5cbiRmb250LWg0OiAoXG4gIHhzOiAkcmh5dGhtLXNpemUtcyxcbiAgbGc6ICRyaHl0aG0tc2l6ZS1sXG4pO1xuXG4kZm9udC1sYXJnZTogKFxuICB4czogJHJoeXRobS1zaXplLXhzLFxuICBzbTogJHJoeXRobS1zaXplLXNcbik7XG5cbiRmb250LWg1OiAoXG4gIHhzOiAkcmh5dGhtLXNpemUteHMsXG4gIG1kOiAkcmh5dGhtLXNpemUtcyxcbiAgeGw6ICRyaHl0aG0tc2l6ZS1tXG4pO1xuXG4kZm9udC1oNjogKFxuICB4czogJHJoeXRobS1zaXplLXhzLFxuICB4bDogJHJoeXRobS1zaXplLXNcbik7XG5cbiRmb250LWRlZmF1bHQ6IChcbiAgeHM6IChcbiAgICAkcmh5dGhtLXNpemUteHNcbiAgKVxuKTtcblxuJGZvbnQtc21hbGw6IChcbiAgeHM6IChcbiAgICAkcmh5dGhtLXNpemUteHhzXG4gIClcbik7XG5cbiRmb250LXNtYWxsLW1vYmlsZTogKFxuICB4czogJHJoeXRobS1zaXplLXh4cyxcbiAgbWQ6ICRyaHl0aG0tc2l6ZS14c1xuKTtcblxuJGZvbnQtbWVudTogKFxuICB4czogJHJoeXRobS1zaXplLXhzLFxuICBsZzogJHJoeXRobS1zaXplLXh4cyxcbiAgeGw6ICRyaHl0aG0tc2l6ZS14c1xuKTtcblxuLyoqXG4gKiBTaGFkb3dzXG4gKi9cblxuJG1hdGVyaWFsLXNoYWRvdy1kZWZhdWx0OiAgICAgMCAycHggMnB4IDBweCByZ2JhKDEyOCwgMTQwLCAxMzYsIDAuMTMpO1xuJG1hdGVyaWFsLXNoYWRvdy1hY3RpdmU6ICAgICAgMCAxcHggMnB4IDAgcmdiYSgjODM5MDhjLCAuMjEpO1xuJG1hdGVyaWFsLXNoYWRvdy1lbGV2YXRlZDogICAgMCAycHggMTZweCAwIHJnYmEoIzgzOTA4YywgLjIxKTtcblxuLyoqXG4gKiBUcmFuc2l0aW9uc1xuICovXG4kdHJhbnNpdGlvbi1ob3ZlcjogICAgICAgICAgIDAuMjBzIGVhc2UtaW47XG4vLyAkdHJhbnNpdGlvbi1jb250ZXh0LWNoYW5nZTogIDAuNjBzIGN1YmljLWJlemllcigwLjY1LCAwLjYyLCAwLjEyLCAxLjAwKTtcbi8vICR0cmFuc2l0aW9uLWNvbnRleHQtY2hhbmdlOiAgMC42cyBjdWJpYy1iZXppZXIoMC44OCwgLTAuMTUsIDAuNDcsIDEuMCk7XG4kdHJhbnNpdGlvbi1jb250ZXh0LWNoYW5nZTogIDAuNnMgY3ViaWMtYmV6aWVyKDAuNzQsIDAuMzMsIDAuMTUsIDEuMCk7XG4kdHJhbnNpdGlvbi1ob3Zlci1ib3VuY2U6ICAgIDAuMzVzIGN1YmljLWJlemllcigwLjY1LCAwLjYyLCAwLjEyLCAyLjA2KTtcblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFotSU5ERVhcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4kei1pbmRleC1ib3hfX2JvZHk6ICAgICAgICAgMzAwO1xuJHotaW5kZXgtYm94X19oZWFkZXI6ICAgICAgIDMwMztcbiR6LWluZGV4LWJveF9fYWRkb246ICAgICAgICAzMTA7XG4kei1pbmRleC1ib3hfX2J1YmJsZTogICAgICAgMzEwO1xuXG4kei1pbmRleC1zZWFyY2hib3hfX2hlYWRlcjogNDAwO1xuXG4kei1pbmRleC1wYWdlLW92ZXJsYXk6ICAgICAgNDUwO1xuXG4kei1pbmRleC1uYXY6ICAgICAgICAgICAgICAgNDg2O1xuJHotaW5kZXgtbmF2LWdyb3VwOiAgICAgICAgIDQ4NztcbiR6LWluZGV4LW5hdi1vcmdhbml6YXRpb246ICA0ODg7XG4kei1pbmRleC1uYXYtbWV0YTogICAgICAgICAgNDkwO1xuXG4kei1pbmRleC1hZG1pbi1wYW5lbDogICAgICAgNDk5O1xuJHotaW5kZXgtbG9jYWwtdGFza3M6ICAgICAgIDQ5ODtcbiIsIi8qIVxuICogbm9ybWFsaXplLmNzcyB2My4wLjIgfCBNSVQgTGljZW5zZSB8IGdpdC5pby9ub3JtYWxpemVcbiAqIENVU1RPTUlaRURcbiAqL1xuXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmdcbiAqICAgIHVzZXIgem9vbS5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gKiBhbmQgRmlyZWZveC5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgaW5saW5lLWJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGluIElFIDgvOS5cbiAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cbiAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAqL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cbiAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbiAgbWFyZ2luOiAwOyAvKiAzICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKi9cblxuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqL1xuXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cblxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgLy8gQ1VTVE9NXG4gIC8vIE5vdCByZXF1aXJlZCBkdWUgdG8gZ2xvYmFsIGJvcmRlci1ib3hcbiAgLy8gLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLy8gLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xuICAvLyBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7XG59XG4iLCIvKipcbiAqIFN3aXBlciAzLjQuMiAtIEN1c3RvbSBCdWlsZFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIFxuICogSW5jbHVkZWQgbW9kdWxlczogXG4gKiBcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICogXG4gKiBDb3B5cmlnaHQgMjAxNywgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqIFRoZSBpRGFuZ2Vyby51c1xuICogaHR0cDovL3d3dy5pZGFuZ2Vyby51cy9cbiAqIFxuICogTGljZW5zZWQgdW5kZXIgTUlUXG4gKiBcbiAqIFJlbGVhc2VkIG9uOiBNYXkgMjMsIDIwMTdcbiAqL1xuLnN3aXBlci1jb250YWluZXJ7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDoxfS5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZXtmbG9hdDpsZWZ0fS5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlcnstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7LW1vei1ib3gtb3JpZW50OnZlcnRpY2FsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47LXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5zd2lwZXItd3JhcHBlcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3otaW5kZXg6MTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1vei1ib3g7ZGlzcGxheTotbXMtZmxleGJveDtkaXNwbGF5Oi13ZWJraXQtZmxleDtkaXNwbGF5OmZsZXg7LXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5Oi13ZWJraXQtdHJhbnNmb3JtOy1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTotbW96LXRyYW5zZm9ybTstby10cmFuc2l0aW9uLXByb3BlcnR5Oi1vLXRyYW5zZm9ybTstbXMtdHJhbnNpdGlvbi1wcm9wZXJ0eTotbXMtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtOy13ZWJraXQtYm94LXNpemluZzpjb250ZW50LWJveDstbW96LWJveC1zaXppbmc6Y29udGVudC1ib3g7Ym94LXNpemluZzpjb250ZW50LWJveH0uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsLnN3aXBlci13cmFwcGVyey13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTstbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7LW8tdHJhbnNmb3JtOnRyYW5zbGF0ZSgwLDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCl9LnN3aXBlci1jb250YWluZXItbXVsdGlyb3c+LnN3aXBlci13cmFwcGVyey13ZWJraXQtYm94LWxpbmVzOm11bHRpcGxlOy1tb3otYm94LWxpbmVzOm11bHRpcGxlOy1tcy1mbGV4LXdyYXA6d3JhcDstd2Via2l0LWZsZXgtd3JhcDp3cmFwO2ZsZXgtd3JhcDp3cmFwfS5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZT4uc3dpcGVyLXdyYXBwZXJ7LXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dDstbW96LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0Oy1tcy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dDstby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dDt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dDttYXJnaW46MCBhdXRvfS5zd2lwZXItc2xpZGV7LXdlYmtpdC1mbGV4LXNocmluazowOy1tcy1mbGV4OjAgMCBhdXRvO2ZsZXgtc2hyaW5rOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZX0uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0LC5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZXtoZWlnaHQ6YXV0b30uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlcnstd2Via2l0LWJveC1hbGlnbjpzdGFydDstbXMtZmxleC1hbGlnbjpzdGFydDstd2Via2l0LWFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDstd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6LXdlYmtpdC10cmFuc2Zvcm0saGVpZ2h0Oy1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTotbW96LXRyYW5zZm9ybTstby10cmFuc2l0aW9uLXByb3BlcnR5Oi1vLXRyYW5zZm9ybTstbXMtdHJhbnNpdGlvbi1wcm9wZXJ0eTotbXMtdHJhbnNmb3JtO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLGhlaWdodH0uc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLW5vdGlmaWNhdGlvbntwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7ei1pbmRleDotMTAwMH0uc3dpcGVyLXdwOC1ob3Jpem9udGFsey1tcy10b3VjaC1hY3Rpb246cGFuLXk7dG91Y2gtYWN0aW9uOnBhbi15fS5zd2lwZXItd3A4LXZlcnRpY2Fsey1tcy10b3VjaC1hY3Rpb246cGFuLXg7dG91Y2gtYWN0aW9uOnBhbi14fS5zd2lwZXItYnV0dG9uLW5leHQsLnN3aXBlci1idXR0b24tcHJldntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO3dpZHRoOjI3cHg7aGVpZ2h0OjQ0cHg7bWFyZ2luLXRvcDotMjJweDt6LWluZGV4OjEwO2N1cnNvcjpwb2ludGVyOy1tb3otYmFja2dyb3VuZC1zaXplOjI3cHggNDRweDstd2Via2l0LWJhY2tncm91bmQtc2l6ZToyN3B4IDQ0cHg7YmFja2dyb3VuZC1zaXplOjI3cHggNDRweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9LnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkLC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZHtvcGFjaXR5Oi4zNTtjdXJzb3I6YXV0bztwb2ludGVyLWV2ZW50czpub25lfS5zd2lwZXItYnV0dG9uLXByZXYsLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHR7YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDA3YWZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtsZWZ0OjEwcHg7cmlnaHQ6YXV0b30uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2ssLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFja3tiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpfS5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSwuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRle2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyM2ZmZmZmZiclMkYlM0UlM0MlMkZzdmclM0VcIil9LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO3JpZ2h0OjEwcHg7bGVmdDphdXRvfS5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjaywuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWJsYWNre2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyMzAwMDAwMCclMkYlM0UlM0MlMkZzdmclM0VcIil9LnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlLC5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGV7YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKX0uc3dpcGVyLXBhZ2luYXRpb257cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7LXdlYmtpdC10cmFuc2l0aW9uOi4zczstbW96LXRyYW5zaXRpb246LjNzOy1vLXRyYW5zaXRpb246LjNzO3RyYW5zaXRpb246LjNzOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTstby10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7ei1pbmRleDoxMH0uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVue29wYWNpdHk6MH0uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLC5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9ue2JvdHRvbToxMHB4O2xlZnQ6MDt3aWR0aDoxMDAlfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7d2lkdGg6OHB4O2hlaWdodDo4cHg7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLXJhZGl1czoxMDAlO2JhY2tncm91bmQ6IzAwMDtvcGFjaXR5Oi4yfWJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7Ym9yZGVyOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO2JveC1zaGFkb3c6bm9uZTstbW96LWFwcGVhcmFuY2U6bm9uZTstbXMtYXBwZWFyYW5jZTpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZX0uc3dpcGVyLXBhZ2luYXRpb24tY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7Y3Vyc29yOnBvaW50ZXJ9LnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7YmFja2dyb3VuZDojZmZmfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZle29wYWNpdHk6MTtiYWNrZ3JvdW5kOiMwMDdhZmZ9LnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZle2JhY2tncm91bmQ6I2ZmZn0uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmV7YmFja2dyb3VuZDojMDAwfS5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRze3JpZ2h0OjEwcHg7dG9wOjUwJTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLC01MCUsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNTAlLDApOy1vLXRyYW5zZm9ybTp0cmFuc2xhdGUoMCwtNTAlKTstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsLTUwJSwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwtNTAlLDApfS5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7bWFyZ2luOjVweCAwO2Rpc3BsYXk6YmxvY2t9LnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e21hcmdpbjowIDVweH0uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3N7YmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4yNSk7cG9zaXRpb246YWJzb2x1dGV9LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhcntiYWNrZ3JvdW5kOiMwMDdhZmY7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMCk7LW1zLXRyYW5zZm9ybTpzY2FsZSgwKTstby10cmFuc2Zvcm06c2NhbGUoMCk7dHJhbnNmb3JtOnNjYWxlKDApOy13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcDstbW96LXRyYW5zZm9ybS1vcmlnaW46bGVmdCB0b3A7LW1zLXRyYW5zZm9ybS1vcmlnaW46bGVmdCB0b3A7LW8tdHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcDt0cmFuc2Zvcm0tb3JpZ2luOmxlZnQgdG9wfS5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3MgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyey13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpyaWdodCB0b3A7LW1vei10cmFuc2Zvcm0tb3JpZ2luOnJpZ2h0IHRvcDstbXMtdHJhbnNmb3JtLW9yaWdpbjpyaWdodCB0b3A7LW8tdHJhbnNmb3JtLW9yaWdpbjpyaWdodCB0b3A7dHJhbnNmb3JtLW9yaWdpbjpyaWdodCB0b3B9LnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3N7d2lkdGg6MTAwJTtoZWlnaHQ6NHB4O2xlZnQ6MDt0b3A6MH0uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3N7d2lkdGg6NHB4O2hlaWdodDoxMDAlO2xlZnQ6MDt0b3A6MH0uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3Muc3dpcGVyLXBhZ2luYXRpb24td2hpdGV7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC41KX0uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3Muc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFye2JhY2tncm91bmQ6I2ZmZn0uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3Muc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFye2JhY2tncm91bmQ6IzAwMH0uc3dpcGVyLWxhenktcHJlbG9hZGVye3dpZHRoOjQycHg7aGVpZ2h0OjQycHg7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7dG9wOjUwJTttYXJnaW4tbGVmdDotMjFweDttYXJnaW4tdG9wOi0yMXB4O3otaW5kZXg6MTA7LXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOjUwJTstbW96LXRyYW5zZm9ybS1vcmlnaW46NTAlO3RyYW5zZm9ybS1vcmlnaW46NTAlOy13ZWJraXQtYW5pbWF0aW9uOnN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMixlbmQpIGluZmluaXRlOy1tb3otYW5pbWF0aW9uOnN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMixlbmQpIGluZmluaXRlO2FuaW1hdGlvbjpzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsZW5kKSBpbmZpbml0ZX0uc3dpcGVyLWxhenktcHJlbG9hZGVyOmFmdGVye2Rpc3BsYXk6YmxvY2s7Y29udGVudDpcIlwiO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1pbWFnZTp1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMTIwJTIwMTIwJyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB4bWxucyUzQXhsaW5rJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJyUzRSUzQ2RlZnMlM0UlM0NsaW5lJTIwaWQlM0QnbCclMjB4MSUzRCc2MCclMjB4MiUzRCc2MCclMjB5MSUzRCc3JyUyMHkyJTNEJzI3JyUyMHN0cm9rZSUzRCclMjM2YzZjNmMnJTIwc3Ryb2tlLXdpZHRoJTNEJzExJyUyMHN0cm9rZS1saW5lY2FwJTNEJ3JvdW5kJyUyRiUzRSUzQyUyRmRlZnMlM0UlM0NnJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoNjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDkwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxMjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE1MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjM3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTgwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNDYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyMTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy41NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI0MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjY2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjcwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNzUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy44NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMzMCUyMDYwJTJDNjApJyUyRiUzRSUzQyUyRmclM0UlM0MlMkZzdmclM0VcIik7YmFja2dyb3VuZC1wb3NpdGlvbjo1MCU7LXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6MTAwJTtiYWNrZ3JvdW5kLXNpemU6MTAwJTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXR9LnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZTphZnRlcntiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKX1ALXdlYmtpdC1rZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluezEwMCV7LXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluezEwMCV7dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgUk9UQVRFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyoqXG4gKiBDb3VudGVyY2xvY2t3aXNlXG4gKi9cblxuQGtleWZyYW1lcyByb3RhdGUtY291bnRlcmNsb2Nrd2lzZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEJPWCBNT0RFTFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qKlxuICogVXNlIHRoZSBcInNtYXJ0XCIgYm94IG1vZGVsIGdsb2JhbGx5LlxuICpcbiAqIGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZVxuICovXG5cbmh0bWwge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qIHtcbiAgJixcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICAgICAgIC1tb3otYm94LXNpemluZzogaW5oZXJpdDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBFTEVNRU5UIERFRkFVTFQgQkVIQVZJT1JcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBQcmV2ZW50IGdob3N0IHNwYWNlIHVuZGVyIHVzdWFsbHkgYmxvY2sgZWxlbWVudHNcbmltZyxcbmlmcmFtZSxcbmVtYmVkLFxub2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVEFCTEVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG5cbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxudGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxudGgsXG50ZCB7XG4gIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtdGlueTtcbn1cbiIsIkBpbXBvcnQgJy4uLy4uLy4uLy4uLy4uL3RtcC9nbG9iYWxzZXR0aW5ncy9nbG9iYWxzZXR0aW5ncyc7XG5cbi8vIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuLy8gICBHTE9CQUwgU0VUVElOR1NcblxuLy8gICBDaGVjayB0aGUgZm9sbG93aW5nIHBhZ2UgZm9yIGRldGFpbHM6XG4vLyAgIGthbmJhc3UubGlpcC5jaC9zZXR0aW5ncy5odG1sXG4vLyBcXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLy8gLy8gVXNlIHRoaXMgc2V0dGluZyB0byBwcmVmaXggYWxsIHRoZSBjb21wb25lbnRzIGNsYXNzZXNcbi8vICRuYW1lc3BhY2U6ICAgICAgICAgICAgICAgICAgICAgICAgICcnICFkZWZhdWx0O1xuXG5cbi8vIC8qKlxuLy8gICogQ29sb3JzXG4vLyAgKi9cblxuJGJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGNvbG9yLW1pbnQ7XG4kYWx0LWNvbG9yLWxpZ2h0ZXI6ICAgICAgICAgICAgICAgICAkY29sb3ItZ3JleS0xMDA7XG4kYWx0LWNvbG9yLWxpZ2h0OiAgICAgICAgICAgICAgICAgICAkY29sb3ItZ3JleS0yMDA7XG4kYWx0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAkY29sb3ItZ3JleS01MDA7XG4kYWx0LWNvbG9yLWRhcms6ICAgICAgICAgICAgICAgICAgICAkY29sb3ItZ3JleS03MDA7XG4kYWx0LWNvbG9yLWRhcmtlcjogICAgICAgICAgICAgICAgICAkY29sb3ItZ3JleS05MDA7XG5cblxuLy8gLyoqXG4vLyAgKiBUeXBvZ3JhcGh5XG4vLyAgKi9cblxuJGZvbnQtZmFtaWx5LWRlZmF1bHQ6ICAgICAgICAgICAgICAgJ0VLVyBIZWx2ZXRpY2EnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuXG4kZm9udC1zaXplLWRlZmF1bHQ6ICAgICAgICAgICAgICAgICByZW0obWFwLWdldCgkcmh5dGhtLXNpemUteHMsIHNpemUpKTtcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgICAgICAgICAgIHJlbShtYXAtZ2V0KCRyaHl0aG0tc2l6ZS14eHMsIHNpemUpKTtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgICAgICAgICAgIHJlbShtYXAtZ2V0KCRyaHl0aG0tc2l6ZS1tLCBzaXplKSk7XG5cbiRsaW5lLWhlaWdodC1kZWZhdWx0OiAgICAgICAgICAgICAgIG1hcC1nZXQoJHJoeXRobS1zaXplLXMsIGxlYWRpbmcpIC8gbWFwLWdldCgkcmh5dGhtLXNpemUtcywgc2l6ZSk7XG5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICMxMTExMTE7XG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0O1xuJG11dGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnRpemUoJHRleHQtY29sb3IsLjQpO1xuXG5cbi8vIC8qKlxuLy8gICogU3BhY2luZ3Ncbi8vICAqL1xuXG4vLyAkcmF0aW86ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxLjYxODAzMzk4ODc1ICFkZWZhdWx0O1xuXG4kc3BhY2luZy11bml0LWRlZmF1bHQ6ICAgICAgICAgICAgICAzcmVtO1xuJHNwYWNpbmctdW5pdC10aW55OiAgICAgICAgICAgICAgICAgMXJlbTtcbiRzcGFjaW5nLXVuaXQtc21hbGw6ICAgICAgICAgICAgICAgIDJyZW07XG4kc3BhY2luZy11bml0LWxhcmdlOiAgICAgICAgICAgICAgICA1cmVtO1xuJHNwYWNpbmctdW5pdC1odWdlOiAgICAgICAgICAgICAgICAgN3JlbTtcblxuXG4vLyAvKipcbi8vICAqIFJlc3BvbnNpdmVuZXNzXG4vLyAgKi9cblxuLy8gLy8gVXNlIEVNIG1lZGlhLXF1ZXJpZXMgZm9yIGJldHRlciBicm93c2VyIGNvbnNpc3RlbmN5XG4vLyAvLyBTZWUgaHR0cDovL3plbGx3ay5jb20vYmxvZy9tZWRpYS1xdWVyeS11bml0c1xuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAgICAgICAgKCRnbG9iYWxzLWJyZWFrcG9pbnRzLXhzLW1heCArIDBweCkgLyAxNnB4ICogMWVtO1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAgICAgICAgKCRnbG9iYWxzLWJyZWFrcG9pbnRzLXNtLW1pbiArIDBweCkgLyAxNnB4ICogMWVtO1xuJHNjcmVlbi1zbS1tYXg6ICAgICAgICAgICAgICAgICAgICAgKCRnbG9iYWxzLWJyZWFrcG9pbnRzLXNtLW1heCArIDBweCkgLyAxNnB4ICogMWVtO1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAgICAgICAgKCRnbG9iYWxzLWJyZWFrcG9pbnRzLW1kLW1pbiArIDBweCkgLyAxNnB4ICogMWVtO1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAgICAgICAgKCRnbG9iYWxzLWJyZWFrcG9pbnRzLW1kLW1heCArIDBweCkgLyAxNnB4ICogMWVtO1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAgICAgICAgKCRnbG9iYWxzLWJyZWFrcG9pbnRzLWxnLW1pbiArIDBweCkgLyAxNnB4ICogMWVtO1xuJHNjcmVlbi1sZy1tYXg6ICAgICAgICAgICAgICAgICAgICAgKCRnbG9iYWxzLWJyZWFrcG9pbnRzLWxnLW1heCArIDBweCkgLyAxNnB4ICogMWVtO1xuJHNjcmVlbi14bC1taW46ICAgICAgICAgICAgICAgICAgICAgKCRnbG9iYWxzLWJyZWFrcG9pbnRzLXhsLW1pbiArIDBweCkgLyAxNnB4ICogMWVtO1xuXG4kbXEteHM6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnKG1heC13aWR0aDogI3skc2NyZWVuLXhzLW1heH0pJzsgLy8gREVQUkVDQVRFRFxuJG1xLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyhtaW4td2lkdGg6ICN7JHNjcmVlbi1zbS1taW59KSBhbmQgKG1heC13aWR0aDogI3skc2NyZWVuLXNtLW1heH0pJyAhZGVmYXVsdDsgLy8gREVQUkVDQVRFRFxuJG1xLW1kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyhtaW4td2lkdGg6ICN7JHNjcmVlbi1tZC1taW59KSBhbmQgKG1heC13aWR0aDogI3skc2NyZWVuLW1kLW1heH0pJyAhZGVmYXVsdDsgLy8gREVQUkVDQVRFRFxuJG1xLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJyhtaW4td2lkdGg6ICN7JHNjcmVlbi1sZy1taW59KSc7IC8vIERFUFJFQ0FURURcblxuJGJyZWFrcG9pbnRzLWRlZmF1bHQ6ICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc20nICcobWluLXdpZHRoOiAjeyRzY3JlZW4tc20tbWlufSknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbWQnICcobWluLXdpZHRoOiAjeyRzY3JlZW4tbWQtbWlufSknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGcnICcobWluLXdpZHRoOiAjeyRzY3JlZW4tbGctbWlufSknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAneGwnICcobWluLXdpZHRoOiAjeyRzY3JlZW4teGwtbWlufSknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuJGJyZWFrcG9pbnRzLWRlc2M6ICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAneHMnICcobWF4LXdpZHRoOiAjeyRzY3JlZW4teHMtbWF4fSknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc20nICcobWF4LXdpZHRoOiAjeyRzY3JlZW4tc20tbWF4fSknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbWQnICcobWF4LXdpZHRoOiAjeyRzY3JlZW4tbWQtbWF4fSknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbGcnICcobWF4LXdpZHRoOiAjeyRzY3JlZW4tbGctbWF4fSknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuJGJyZWFrcG9pbnRzLWN1c3RvbTogICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICd4eHMnICcobWluLXdpZHRoOiAzNzVweCknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAneHMtc20nICcobWluLXdpZHRoOiA1MjBweCknLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnbGcteGwnICcobWluLXdpZHRoOiAxMjgwcHgpJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKTtcblxuJHNjcmVlbi1ib3gtbWluOiAgICAgICAgICAgICAgICAgICAgIDUyMHB4IC8gMTZweCAqIDFlbSAhZGVmYXVsdDtcblxuLy8gLyoqXG4vLyAgKiBNaXNjZWxsYW5lb3VzXG4vLyAgKi9cblxuJGJvcmRlci1yYWRpdXMtZGVmYXVsdDogICAgICAgICAgICAgMnB4O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAgICAgICAgMnB4O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgICAgICAgICAgMnB4O1xuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbi8vICAgQ09NUE9ORU5UU1xuLy8gXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAvKipcbi8vICAqIEJ1dHRvbnNcbi8vICAqL1xuXG4kYnRuLXVzZS1wYWRkaW5nLXJhdGlvOiAgICAgICAgICAgICBmYWxzZTtcblxuJGJ0bi1wYWRkaW5nLXY6ICAgICAgICAgICAgICAgICAgICAgcmVtKCRyaHl0aG0tc3BhY2luZy1iYXNlIC0gMSk7XG4kYnRuLXBhZGRpbmctaDogICAgICAgICAgICAgICAgICAgICAxLjVyZW07XG4kYnRuLWZvbnQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC1kZWZhdWx0O1xuJGJ0bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWNvbG9yO1xuJGJ0bi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgbm9uZTtcbiRidG4tYmtnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50O1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtZGVmYXVsdDtcblxuJGJ0bi1zbWFsbC1wYWRkaW5nLXY6ICAgICAgICAgICAgICAgcmVtKCRyaHl0aG0tc3BhY2luZy1iYXNlIC0gMSk7XG4kYnRuLXNtYWxsLXBhZGRpbmctaDogICAgICAgICAgICAgICAxcmVtO1xuJGJ0bi1zbWFsbC1mb250OiAgICAgICAgICAgICAgICAgICAgJGZvbnQtc21hbGw7XG4kYnRuLXNtYWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcblxuJGJ0bi1sYXJnZS1wYWRkaW5nLXY6ICAgICAgICAgICAgICAgcmVtKDExKTtcbiRidG4tbGFyZ2UtcGFkZGluZy1oOiAgICAgICAgICAgICAgIDJyZW07XG4kYnRuLWxhcmdlLWZvbnQ6ICAgICAgICAgICAgICAgICAgICAkZm9udC1oNjtcbiRidG4tbGFyZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlO1xuXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ia2ctY29sb3I6ICAgICAgICAgICAgICRhbHQtY29sb3ItbGlnaHRlcjtcbiRidG4tZGVmYXVsdC1ob3Zlci1ia2ctY29sb3I6ICAgICAgIGxpZ2h0ZW4oJGJ0bi1kZWZhdWx0LWJrZy1jb2xvciwgMyUpO1xuJGJ0bi1kZWZhdWx0LWFjdGl2ZS1ia2ctY29sb3I6ICAgICAgZGFya2VuKCRidG4tZGVmYXVsdC1ia2ctY29sb3IsIDUlKTtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmtnLWNvbG9yOiAgICAgICAgICAgICAkYnJhbmQtY29sb3I7XG4kYnRuLXByaW1hcnktaG92ZXItYmtnLWNvbG9yOiAgICAgICBsaWdodGVuKCRidG4tcHJpbWFyeS1ia2ctY29sb3IsIDglKTtcbiRidG4tcHJpbWFyeS1hY3RpdmUtYmtnLWNvbG9yOiAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmtnLWNvbG9yLCA1JSk7XG5cblxuLy8gLyoqXG4vLyAgKiBGb3Jtc1xuLy8gICovXG5cbiRmaWVsZC11c2UtcGFkZGluZy1yYXRpbzogICAgICAgICAgIGZhbHNlO1xuXG4kZmllbGQtcGFkZGluZy12OiAgICAgICAgICAgICAgICAgICAkYnRuLXBhZGRpbmctdjtcbiRmaWVsZC1wYWRkaW5nLWg6ICAgICAgICAgICAgICAgICAgICRidG4tcGFkZGluZy1oO1xuXG4kZmllbGQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0O1xuJGZpZWxkLWZvbnQ6ICAgICAgICAgICAgICAgICAgICAgICAgJGJ0bi1mb250O1xuXG4kZmllbGQtYmtnLWNvbG9yOiAgICAgICAgICAgICAgICAgICB3aGl0ZTtcbiRmaWVsZC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgIDFweCBzb2xpZCAkYWx0LWNvbG9yLWxpZ2h0O1xuJGZpZWxkLWZvY3VzLWJvcmRlci1jb2xvcjogICAgICAgICAgJGFsdC1jb2xvcjtcbiRmaWVsZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWRlZmF1bHQ7XG5cbiRmaWVsZC1kaXNhYmxlZC1ia2ctY29sb3I6ICAgICAgICAgICRhbHQtY29sb3ItbGlnaHRlcjtcbiRmaWVsZC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICRhbHQtY29sb3I7XG5cbiRmaWVsZC1zbWFsbC1wYWRkaW5nLXY6ICAgICAgICAgICAgICRidG4tc21hbGwtcGFkZGluZy12O1xuJGZpZWxkLXNtYWxsLXBhZGRpbmctaDogICAgICAgICAgICAgJGJ0bi1zbWFsbC1wYWRkaW5nLWg7XG4kZmllbGQtc21hbGwtZm9udDogICAgICAgICAgICAgICAgICAkYnRuLXNtYWxsLWZvbnQ7XG4kZmllbGQtc21hbGwtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcblxuJGZpZWxkLWxhcmdlLXBhZGRpbmctdjogICAgICAgICAgICAgJGJ0bi1sYXJnZS1wYWRkaW5nLXY7XG4kZmllbGQtbGFyZ2UtcGFkZGluZy1oOiAgICAgICAgICAgICAkYnRuLWxhcmdlLXBhZGRpbmctaDtcbiRmaWVsZC1sYXJnZS1mb250OiAgICAgICAgICAgICAgICAgICRidG4tbGFyZ2UtZm9udDtcbiRmaWVsZC1sYXJnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlO1xuXG4kZmllbGQtaGVscC1jb2xvcjogICAgICAgICAgICAgICAgICAkYWx0LWNvbG9yLWxpZ2h0O1xuXG5cbi8vIC8qKlxuLy8gICogTGlzdHMgYW5kIEJvcmRlcnNcbi8vICAqL1xuXG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkYWx0LWNvbG9yLWxpZ2h0O1xuJGxpc3Qtc2VwYXJhdG9yLXN0eWxlOiAgICAgICAgICAgICAgMXB4IHNvbGlkICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gLyoqXG4vLyAgKiBCb3hcbi8vICAqL1xuXG4vLyAkYm94LWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuLy8gJGJveC1kZWZhdWx0LWJrZy1jb2xvcjogICAgICAgICAgICAgJGFsdC1jb2xvci1saWdodGVyICFkZWZhdWx0O1xuXG4vLyAkYm94LXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICB3aGl0ZSAhZGVmYXVsdDtcbi8vICRib3gtcHJpbWFyeS1ia2ctY29sb3I6ICAgICAgICAgICAgICRicmFuZC1jb2xvciAhZGVmYXVsdDtcblxuXG4vLyAvKipcbi8vICAqIEdyaWRcbi8vICAqL1xuXG4kZ3JpZC1mbGV4OiAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlO1xuXG5cbi8vIC8qKlxuLy8gICogV2lkdGhzXG4vLyAgKi9cblxuLy8gJHdpZHRocy1jb2x1bW5zOiAgICAgICAgICAgICAgICAgICAgNiw1LDQsMywyLDEgIWRlZmF1bHQ7XG4kd2lkdGhzLWJyZWFrcG9pbnRzOiAgICAgICAgICAgICAgICAkYnJlYWtwb2ludHMtZGVmYXVsdDtcblxuXG4vLyAvKipcbi8vICAqIE1lZGlhXG4vLyAgKi9cblxuLy8gJG1lZGlhLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFkZWZhdWx0O1xuXG5cbi8vIC8qKlxuLy8gICogTWVkaWEgcmVzcG9uc2l2ZVxuLy8gICovXG5cbi8vICRtZWRpYS1jb2xsYXBzZTogICAgICAgICAgICAgICAgICAgICRzY3JlZW4tc20tbWF4ICFkZWZhdWx0O1xuXG5cbi8vIC8qKlxuLy8gICogTW9zYWljIHJlc3BvbnNpdmVcbi8vICAqL1xuXG4vLyAkbW9zYWljLWNvbGxhcHNlOiAgICAgICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1heCAhZGVmYXVsdDtcbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBURVhUIFJFU1BPTlNJVkVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKipcbiAqIEFsaWdubWVudFxuICovXG5cbkBpbmNsdWRlIGZvcmVhY2gtYnJlYWtwb2ludCgpIHtcbiAgLiN7JGJyZWFrcG9pbnQtbmFtZX0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLiN7JGJyZWFrcG9pbnQtbmFtZX0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC4jeyRicmVha3BvaW50LW5hbWV9LXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRkxPQVRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uY2xlYXJmaXgsXG4lY2xlYXJmaXgge1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFNQQUNJTkdTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLyoqXG4gKiBNQVJHSU5TXG4gKiBHZW5lcmF0ZSBtYXJnaW4gY2xhc3NlcyBiYXNlZCBvbiBzcGFjaW5nIHVuaXRzXG4gKlxuICogbXJnKHx0fHJ8YnxsfGh8dikwICAgPT4gbm8gbWFyZ2luXG4gKiBtcmcofHR8cnxifGx8aHx2KS0tICA9PiAxLzRcbiAqIG1yZyh8dHxyfGJ8bHxofHYpLSAgID0+IDEvMlxuICogbXJnKHx0fHJ8YnxsfGh8dikgICAgPT4gMXhcbiAqIG1yZyh8dHxyfGJ8bHxofHYpKyAgID0+IDJ4XG4gKiBtcmcofHR8cnxifGx8aHx2KSsrICA9PiA0eFxuICpcbiAqIHtub3RoaW5nfSAgPT4gYWxsXG4gKiB0ICAgICAgICAgID0+IHRvcFxuICogciAgICAgICAgICA9PiByaWdodFxuICogYiAgICAgICAgICA9PiBib3R0b21cbiAqIGwgICAgICAgICAgPT4gbGVmdFxuICogaCAgICAgICAgICA9PiBob3Jpem9udGFsIChsZWZ0ICsgcmlnaHQpXG4gKiB2ICAgICAgICAgID0+IHZlcnRpY2FsICh0b3AgKyBib3R0b20pXG4gKi9cblxuQG1peGluIHNwYWNpbmctbWFyZ2lucygkcHJlZml4OiBudWxsKSB7XG4gIC4jeyRwcmVmaXh9bXJnMCAgICAgICB7IG1hcmdpbjogICAgICAgICAgIDAgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3QwICAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdyMCAgICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgMCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJnYjAgICAgICB7IG1hcmdpbi1ib3R0b206ICAgIDAgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2wwICAgICAgeyBtYXJnaW4tbGVmdDogICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdoMCAgICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd2MCAgICAgIHsgbWFyZ2luLXRvcDogICAgICAgMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAgICAwICFpbXBvcnRhbnQ7IH1cblxuICAuI3skcHJlZml4fW1yZyAgICAgICAgeyBtYXJnaW46ICAgICAgICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3QgICAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3IgICAgICAgeyBtYXJnaW4tcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2IgICAgICAgeyBtYXJnaW4tYm90dG9tOiAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2wgICAgICAgeyBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2ggICAgICAgeyBtYXJnaW4tcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd2ICAgICAgIHsgbWFyZ2luLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhaW1wb3J0YW50OyB9XG5cbiAgLiN7JHByZWZpeH1tcmctLSAgICAgIHsgbWFyZ2luOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd0LS0gICAgIHsgbWFyZ2luLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdyLS0gICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdiLS0gICAgIHsgbWFyZ2luLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdsLS0gICAgIHsgbWFyZ2luLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdoLS0gICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJndi0tICAgICB7IG1hcmdpbi10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAgICAkc3BhY2luZy11bml0LXRpbnkgIWltcG9ydGFudDsgfVxuXG4gIC4jeyRwcmVmaXh9bXJnLSAgICAgICB7IG1hcmdpbjogICAgICAgICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3QtICAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdyLSAgICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJnYi0gICAgICB7IG1hcmdpbi1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2wtICAgICAgeyBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdoLSAgICAgIHsgbWFyZ2luLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd2LSAgICAgIHsgbWFyZ2luLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cblxuICAuI3skcHJlZml4fW1yZ1xcKyAgICAgIHsgbWFyZ2luOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJndFxcKyAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LWxhcmdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdyXFwrICAgICB7IG1hcmdpbi1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtbGFyZ2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2JcXCsgICAgIHsgbWFyZ2luLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJnbFxcKyAgICAgeyBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LWxhcmdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdoXFwrICAgICB7IG1hcmdpbi1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtbGFyZ2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJndlxcKyAgICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LWxhcmdlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtbGFyZ2UgIWltcG9ydGFudDsgfVxuXG4gIC4jeyRwcmVmaXh9bXJnXFwrXFwrICAgIHsgbWFyZ2luOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmd0XFwrXFwrICAgeyBtYXJnaW4tdG9wOiAgICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3JcXCtcXCsgICB7IG1hcmdpbi1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtaHVnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9bXJnYlxcK1xcKyAgIHsgbWFyZ2luLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1tcmdsXFwrXFwrICAgeyBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ2hcXCtcXCsgICB7IG1hcmdpbi1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtaHVnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fW1yZ3ZcXCtcXCsgICB7IG1hcmdpbi10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtaHVnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxufVxuXG5AaW5jbHVkZSBzcGFjaW5nLW1hcmdpbnMoKTtcblxuXG4vKipcbiAqIFBBRERJTkdTXG4gKiBHZW5lcmF0ZSBwYWRkaW5nIGNsYXNzZXMgYmFzZWQgb24gc3BhY2luZyB1bml0c1xuICpcbiAqIHBkZyh8dHxyfGJ8bHxofHYpMCAgID0+IG5vIG1hcmdpblxuICogcGRnKHx0fHJ8YnxsfGh8diktLSAgPT4gMS80XG4gKiBwZGcofHR8cnxifGx8aHx2KS0gICA9PiAxLzJcbiAqIHBkZyh8dHxyfGJ8bHxofHYpICAgID0+IDF4XG4gKiBwZGcofHR8cnxifGx8aHx2KSsgICA9PiAyeFxuICogcGRnKHx0fHJ8YnxsfGh8dikrKyAgPT4gNHhcbiAqXG4gKiB7bm90aGluZ30gID0+IGFsbFxuICogdCAgICAgICAgICA9PiB0b3BcbiAqIHIgICAgICAgICAgPT4gcmlnaHRcbiAqIGIgICAgICAgICAgPT4gYm90dG9tXG4gKiBsICAgICAgICAgID0+IGxlZnRcbiAqIGggICAgICAgICAgPT4gaG9yaXpvbnRhbCAobGVmdCArIHJpZ2h0KVxuICogdiAgICAgICAgICA9PiB2ZXJ0aWNhbCAodG9wICsgYm90dG9tKVxuICovXG5cbkBtaXhpbiBzcGFjaW5nLXBhZGRpbmdzKCRwcmVmaXg6IG51bGwpIHtcbiAgLiN7JHByZWZpeH1wZGcwICAgICAgIHsgcGFkZGluZzogICAgICAgICAgIDAgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ3QwICAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgMCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRncjAgICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdiMCAgICAgIHsgcGFkZGluZy1ib3R0b206ICAgIDAgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ2wwICAgICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgMCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnaDAgICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogICAgICAwICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd2MCAgICAgIHsgcGFkZGluZy10b3A6ICAgICAgIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICAgIDAgIWltcG9ydGFudDsgfVxuXG4gIC4jeyRwcmVmaXh9cGRnICAgICAgICB7IHBhZGRpbmc6ICAgICAgICAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ3QgICAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdyICAgICAgIHsgcGFkZGluZy1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnYiAgICAgICB7IHBhZGRpbmctYm90dG9tOiAgICAkc3BhY2luZy11bml0LWRlZmF1bHQgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ2wgICAgICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdoICAgICAgIHsgcGFkZGluZy1yaWdodDogICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd2ICAgICAgIHsgcGFkZGluZy10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1kZWZhdWx0ICFpbXBvcnRhbnQ7IH1cblxuICAuI3skcHJlZml4fXBkZy0tICAgICAgeyBwYWRkaW5nOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd0LS0gICAgIHsgcGFkZGluZy10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnci0tICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LXRpbnkgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ2ItLSAgICAgeyBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC10aW55ICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdsLS0gICAgIHsgcGFkZGluZy1sZWZ0OiAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnaC0tICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LXRpbnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAgICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRndi0tICAgICB7IHBhZGRpbmctdG9wOiAgICAgICAkc3BhY2luZy11bml0LXRpbnkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtdGlueSAhaW1wb3J0YW50OyB9XG5cbiAgLiN7JHByZWZpeH1wZGctICAgICAgIHsgcGFkZGluZzogICAgICAgICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ3QtICAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnci0gICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdiLSAgICAgIHsgcGFkZGluZy1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ2wtICAgICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1zbWFsbCAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnaC0gICAgICB7IHBhZGRpbmctcmlnaHQ6ICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogICAgICAkc3BhY2luZy11bml0LXNtYWxsICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd2LSAgICAgIHsgcGFkZGluZy10b3A6ICAgICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtc21hbGwgIWltcG9ydGFudDsgfVxuXG4gIC4jeyRwcmVmaXh9cGRnXFwrICAgICAgeyBwYWRkaW5nOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRndFxcKyAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnclxcKyAgICAgeyBwYWRkaW5nLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnYlxcKyAgICAgeyBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnbFxcKyAgICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRnaFxcKyAgICAgeyBwYWRkaW5nLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG4gIC4jeyRwcmVmaXh9cGRndlxcKyAgICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1sYXJnZSAhaW1wb3J0YW50OyB9XG5cbiAgLiN7JHByZWZpeH1wZGdcXCtcXCsgICAgeyBwYWRkaW5nOiAgICAgICAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGd0XFwrXFwrICAgeyBwYWRkaW5nLXRvcDogICAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdyXFwrXFwrICAgeyBwYWRkaW5nLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdiXFwrXFwrICAgeyBwYWRkaW5nLWJvdHRvbTogICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdsXFwrXFwrICAgeyBwYWRkaW5nLWxlZnQ6ICAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7IH1cbiAgLiN7JHByZWZpeH1wZGdoXFwrXFwrICAgeyBwYWRkaW5nLXJpZ2h0OiAgICAgJHNwYWNpbmctdW5pdC1odWdlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDsgfVxuICAuI3skcHJlZml4fXBkZ3ZcXCtcXCsgICB7IHBhZGRpbmctdG9wOiAgICAgICAkc3BhY2luZy11bml0LWh1Z2UgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICAgICRzcGFjaW5nLXVuaXQtaHVnZSAhaW1wb3J0YW50OyB9XG59XG5cbkBpbmNsdWRlIHNwYWNpbmctcGFkZGluZ3MoKTtcbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBTUEFDSU5HUyBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLy8gQnVpbGQgc3BhY2luZ3MgdmFsdWVzIGZvciBlYWNoIGJyZWFrcG9pbnRcbi8vIEV4dGVuZCB0aGUgdXN1YWwgY2xhc3NlcyBwcmVmaXhlZCB3aXRoIHRoZSBicmVha3BvaW50IG5hbWVcbi8vIEZvciBleGFtcGxlIGBzbS1tcmd0KytgXG5cbi8qKlxuICogTWFyZ2luc1xuICovXG5cbkBpbmNsdWRlIGZvcmVhY2gtYnJlYWtwb2ludCgpIHtcbiAgQGluY2x1ZGUgc3BhY2luZy1tYXJnaW5zKCcjeyRicmVha3BvaW50LW5hbWV9LScpO1xufVxuXG5cbi8qKlxuICogUGFkZGluZ3NcbiAqL1xuXG5AaW5jbHVkZSBmb3JlYWNoLWJyZWFrcG9pbnQoKSB7XG4gIEBpbmNsdWRlIHNwYWNpbmctcGFkZGluZ3MoJyN7JGJyZWFrcG9pbnQtbmFtZX0tJyk7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgSU1BR0VTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmltZy1yZXNwb25zaXZlLFxuJWltZy1yZXNwb25zaXZlIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbWctYmxvY2ssXG4laW1nLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBWRVJUSUNBTCAmIEhPUklaT05UQUwgQUxJR05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBIb3Jpem9udGFsbHkgYWxpZ24gZWxlbWVudCBpbiB0aGUgbWlkZGxlXG4vLyBFbGVtZW50IHNob3VsZCBiZSBhIGJsb2NrXG4vLyBPdGhlcndpc2UgdXNlIC50ZXh0LWNlbnRlclxuLmgtYWxpZ24sXG4laC1hbGlnbiB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vIFZlcnRpY2FsbHkgYWxpZ24gYW4gZWxlbWVudCBpbiB0aGUgbWlkZGxlXG4vLyBUaGUgcmVmZXJlbnQgY29udGFpbmVyIGhhcyB0byBiZSByZWxhdGl2ZVxuLnYtYWxpZ24sXG4ldi1hbGlnbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG5cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLyBWZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHkgYWxpZ24gYW4gZWxlbWVudCBpbiB0aGUgbWlkZGxlXG4vLyBUaGUgcmVmZXJlbnQgY29udGFpbmVyIGhhcyB0byBiZSByZWxhdGl2ZVxuLnZoLWFsaWduLFxuJXZoLWFsaWduIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4ucmVsYXRpdmUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIERJU1BMQVlcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vLyBISURFXG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLy8gR2VuZXJhdGUgaGlkZGVuIGNsYXNzZXMgc2NvcGVkIHRvIGVhY2ggYnJlYWtwb2ludFxuQGluY2x1ZGUgZm9yZWFjaC1icmVha3BvaW50KCkge1xuICAuaGlkZGVuLSN7JGJyZWFrcG9pbnQtbmFtZX0tdXAge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQGluY2x1ZGUgZm9yZWFjaC1icmVha3BvaW50KCRicmVha3BvaW50cy1kZXNjKSB7XG4gIC5oaWRkZW4tI3skYnJlYWtwb2ludC1uYW1lfS1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gUHJldmVudCBjb250ZW50IHRvIGJlIHByaW50ZWRcbkBtZWRpYSBwcmludCB7XG4gIC5oaWRkZW4tcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUtcHJpbnQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB9XG59XG5cblxuLy8gU0hPV1xuXG4vLyBEaXNwbGF5IGEgYmxvY2sgb25seSB3aGVuIHByaW50ZWRcbkBtZWRpYSBub3QgcHJpbnQge1xuICAudmlzaWJsZS1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cblxuLy8gUHJvdmlkZSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzIG9ubHlcbi8vIGh0dHBzOi8vZGV2ZWxvcGVyLnlhaG9vLmNvbS9ibG9ncy95ZG4vY2xpcC1oaWRkZW4tY29udGVudC1iZXR0ZXItYWNjZXNzaWJpbGl0eS01MzQ1Ni5odG1sXG4udmlzaWJsZS1zciB7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG5cbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG5cbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KSAhaW1wb3J0YW50O1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFRFWFRcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKipcbiAqIEFsaWdubWVudFxuICovXG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cblxuLyoqXG4gKiBDYXNlXG4gKi9cblxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG5cbi8qKlxuICogU3R5bGluZ1xuICovXG5cbi50ZXh0LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnRleHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5cbi8qKlxuICogQ29sb3JzXG4gKi9cblxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogJG11dGVkLWNvbG9yO1xufVxuXG4udGV4dC13aGl0ZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSU5LU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cblxuYS5iLWNvbG9yOm5vdCgubGluay1pbnZlcnRlZCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cbmEubGluay1pbnZlcnRlZCB7XG4gICY6bm90KDpob3Zlcikge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxufVxuXG4ubGluay1tdXRlZCB7XG4gIGNvbG9yOiAkbXV0ZWQtY29sb3I7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbn1cblxuLmxpbmstdW5zdHlsZWQge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBCT1JERVJTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmJyZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuLmJyZC0tdCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbn1cblxuLmJyZC0tciB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xufVxuXG4uYnJkLS1iIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xufVxuXG4uYnJkLS1sIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbn1cblxuLmJyZC0tdiB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xufVxuXG4uYnJkLS1oIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRElTUExBWVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5kLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBQQUdFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgJi5iLWdyb3VwIHtcbiAgICBwYWRkaW5nLXRvcDogNnJlbTtcbiAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICBwYWRkaW5nLXRvcDogOHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICB9XG4gICYuYi1vcmdhbml6YXRpb24ge1xuICAgIHBhZGRpbmctdG9wOiAxMHJlbTtcbiAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTNyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uc3RvcC10cmFuc2l0aW9ucyB7XG4gICosICo6YmVmb3JlLCAqOmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGT05UU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0VLVyBIZWx2ZXRpY2EnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvaGVsdmV0aWNhLXJvbWFuLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRUtXIEhlbHZldGljYSc7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIHNyYzogdXJsKCcuLi9mb250cy9oZWx2ZXRpY2EtbGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdFS1cgSGVsdmV0aWNhJztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHNyYzogdXJsKCcuLi9mb250cy9oZWx2ZXRpY2EtYm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0VLVyBIZWx2ZXRpY2EgQ29uZGVuc2VkJztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHNyYzogdXJsKCcuLi9mb250cy9oZWx2ZXRpY2EtY29uZGVuc2VkLWJvbGQud29mZicpIGZvcm1hdCgnd29mZicpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdFS1cgUm9ib3RvIE1vbm8nO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgLy8gc3JjOiB1cmwoJy4uL2ZvbnRzL3JvYm90by1tb25vLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICBzcmM6IHVybCgnLi4vZm9udHMvcm9ib3RvLW1vbm8tY3VzdG9tLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbn0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVFlQT0dSQVBIWSBTQ0FGRk9MRElOR1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbmh0bWwge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWRlZmF1bHQ7XG4gIGZvbnQtc2l6ZTogMTAwJSAqICRyaHl0aG0tc3BhY2luZy1iYXNlIC8gMTY7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuYm9keSB7XG4gIEBpbmNsdWRlIGZvbnQtdmFsdWVzKCRmb250LWRlZmF1bHQpO1xufVxuXG4uZ3JpZC1vdmVybGF5IHtcbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA4OTk5O1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgY29udGVudDogJyc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdXJsKC8vYmFzZWhvbGQuaXQvaS8jeyRyaHl0aG0tc3BhY2luZy1iYXNlfS9hYWFhYWEpIHJlcGVhdCB0b3AgbGVmdDtcbiAgICBAbWVkaWEgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgICAgYmFja2dyb3VuZDogdXJsKC8vYmFzZWhvbGQuaXQvaS8jezIgKiAkcmh5dGhtLXNwYWNpbmctYmFzZX0vYWFhYWFhKSByZXBlYXQgdG9wIGxlZnQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDJweCA4cHg7XG4gICAgfVxuICB9XG59XG5cblxuLyoqXG4gKiBMaW5rc1xuICovXG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8qKlxuICogSGVhZGluZ3NcbiAqL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi50ZXh0LWgxLFxuJXRleHQtaDEge1xuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1oMSk7XG59XG5cbi50ZXh0LWgyLFxuJXRleHQtaDIge1xuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1oMik7XG59XG5cbi50ZXh0LWgzLFxuJXRleHQtaDMge1xuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1oMyk7XG59XG5cbi50ZXh0LWg0LFxuJXRleHQtaDQge1xuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1oNCk7XG59XG5cbi50ZXh0LWg1LFxuJXRleHQtaDUge1xuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1oNSk7XG59XG5cbi50ZXh0LWg2LFxuJXRleHQtaDYge1xuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1oNik7XG59XG5cblxuaDEsXG4uaDEge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0uMDE1ZW07XG5cbiAgQGV4dGVuZCAldGV4dC1oMTtcblxuICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgfVxufVxuXG5oMixcbi5oMiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG5cbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBsZXR0ZXItc3BhY2luZzogLS4wMWVtO1xuXG4gIEBleHRlbmQgJXRleHQtaDI7XG59XG5cbmgzLFxuLmgzIHtcbiAgbWFyZ2luOiAycmVtIDA7XG5cbiAgQGV4dGVuZCAldGV4dC1oMztcbn1cblxuaDQsXG4uaDQge1xuICBtYXJnaW46IDJyZW0gMCAxcmVtO1xuXG4gIEBleHRlbmQgJXRleHQtaDQ7XG59XG5cbmg1LFxuLmg1IHtcbiAgbWFyZ2luOiAycmVtIDA7XG5cbiAgQGV4dGVuZCAldGV4dC1oNTtcbn1cblxuaDYsXG4uaDYge1xuICBtYXJnaW46IDJyZW0gMDtcblxuICBAZXh0ZW5kICV0ZXh0LWg2O1xufVxuXG4udGV4dC1sYXJnZSB7XG4gIEBpbmNsdWRlIGZvbnQtdmFsdWVzKCRmb250LWxhcmdlKTtcbn1cblxuLmxnLXRleHQtbGFyZ2Uge1xuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgQGluY2x1ZGUgZm9udC12YWx1ZXMoJGZvbnQtbGFyZ2UpO1xuICB9XG59XG5cbi50ZXh0LXNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC12YWx1ZXMoJGZvbnQtc21hbGwpO1xufVxuXG4ubWQtZG93bi10ZXh0LXNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC12YWx1ZXMoJGZvbnQtc21hbGwtbW9iaWxlKTtcbn1cblxuLnRleHQtcXVvdGUge1xuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1oNCk7XG59XG5cbi8qKlxuICogUGFyYWdyYXBoc1xuICovXG5cbnAge1xuICBtYXJnaW46IDJyZW0gMCA0cmVtO1xufVxuXG5cbi8qKlxuICogUHJlZm9ybWF0dGVkIHRleHRcbiAqL1xuXG5wcmUsXG5jb2RlIHtcbiAgZm9udC1mYW1pbHk6ICdNb25hY28nLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgdGFiLXNpemU6IDQ7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktMTAwO1xufVxuXG5cbnByZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1kZWZhdWx0O1xufVxuXG5jb2RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIHBhZGRpbmc6IDA7XG4gIHByZSAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuXG4vKipcbiAqIExpc3RzXG4gKi9cblxudWwsXG5vbCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gIHVsLFxuICBvbCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbmRsIHtcbiAgbWFyZ2luOiAwO1xuXG4gIEBleHRlbmQgJWNsZWFyZml4O1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZGwtLWlubGluZSB7XG4gIGR0IHtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIHdpZHRoOiAxMDBweDtcbiAgfVxuICBkZCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwcHggKyAjeyRzcGFjaW5nLXVuaXQtc21hbGx9KTtcblxuICAgIEBleHRlbmQgJWNsZWFyZml4O1xuICB9XG59XG5cblxuLyoqXG4gKiBNaXNjZWxsYWVub3VzXG4gKi9cblxuYWJiciB7XG4gIGN1cnNvcjogaGVscDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5jaXRlIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbjogcmVtKCRyaHl0aG0tc3BhY2luZy1iYXNlKSAwIHJlbSgkcmh5dGhtLXNwYWNpbmctYmFzZSAtIDEpO1xuXG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG59XG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6ICdFS1cgUm9ib3RvIE1vbm8nLCAnUm9ib3RvIE1vbm8nLCAnTW9uYWNvJywgJ0NvdXJpZXIgTmV3JywgQ291cmllciwgbW9ub3NwYWNlO1xufVxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRk9STVNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKipcbiAqIEJhc2ljIGZvcm0gZWxlbWVudHNcbiAqL1xuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICBib3JkZXI6IDA7XG59XG5cbmlucHV0W3R5cGU9J3RleHQnXSxcbmlucHV0W3R5cGU9J3NlYXJjaCddLFxuaW5wdXRbdHlwZT0nZW1haWwnXSxcbmlucHV0W3R5cGU9J3RlbCddLFxuaW5wdXRbdHlwZT0ndXJsJ10sXG5pbnB1dFt0eXBlPSdwYXNzd29yZCddLFxuaW5wdXRbdHlwZT0nZGF0ZSddLFxuaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXSxcbmlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG5pbnB1dFt0eXBlPSdtb250aCddLFxuaW5wdXRbdHlwZT0nd2VlayddLFxuaW5wdXRbdHlwZT0ndGltZSddLFxuaW5wdXRbdHlwZT0nbnVtYmVyJ10sXG5pbnB1dFt0eXBlPSdmaWxlJ10sXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkZmllbGQtcGFkZGluZy12ICRmaWVsZC1wYWRkaW5nLWg7XG5cbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcblxuICBjb2xvcjogJGZpZWxkLWNvbG9yO1xuICBib3JkZXI6ICRmaWVsZC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRmaWVsZC1ib3JkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmllbGQtYmtnLWNvbG9yO1xuXG4gIEBpbmNsdWRlIGZvbnQtdmFsdWVzKCRmaWVsZC1mb250KTtcbiAgLy8gQ2xlYW5lciBmb250IHJlbmRlcmluZ1xuICAvLyA8aW5wdXQ+IGRvZXNu4oCZdCBpbmhlcml0IGZyb20gYm9keVxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZmllbGQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgJltkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgICBjb2xvcjogJGZpZWxkLWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmaWVsZC1kaXNhYmxlZC1ia2ctY29sb3I7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT0nZmlsZSddIHtcbiAgZm9udC1zaXplOiByZW0obWFwLWdldCgkcmh5dGhtLXNpemUtcywgc2l6ZSkpO1xufVxuXG5pbnB1dDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiA1cmVtO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuXG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmlucHV0W3R5cGU9J2NoZWNrYm94J10sXG5pbnB1dFt0eXBlPSdyYWRpbyddIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsYWJlbCAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgfVxufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIHBhZGRpbmctYm90dG9tOiAkc3BhY2luZy11bml0LXNtYWxsO1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmxhYmVsLS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgcGFkZGluZy10b3A6IHJhdGlvKCRzcGFjaW5nLXVuaXQtc21hbGwpO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8oJHNwYWNpbmctdW5pdC1zbWFsbCk7XG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gIH1cbn1cblxuXG4vKipcbiAqIEZvcm1zIGxheW91dFxuICovXG5cbi5mb3JtLWdyb3VwIHtcbiAgfiAuZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogJHNwYWNpbmctdW5pdC1zbWFsbDtcbiAgfVxufVxuXG4uZmllbGQtbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcblxuICBwYWRkaW5nLWJvdHRvbTogJHNwYWNpbmctdW5pdC10aW55O1xufVxuXG4uZmllbGQtaGVscCB7XG4gIG1hcmdpbi10b3A6ICRzcGFjaW5nLXVuaXQtdGlueTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICBjb2xvcjogJGZpZWxkLWhlbHAtY29sb3I7XG59XG5cblxuLyoqXG4gKiBTaXplc1xuICovXG5cbi5pbnB1dC0tc21hbGwsXG4uc2VsZWN0LS1zbWFsbCB7XG4gIGJvcmRlci1yYWRpdXM6ICRmaWVsZC1zbWFsbC1ib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG5cbiAgQGluY2x1ZGUgZm9udC12YWx1ZXMoJGZpZWxkLXNtYWxsLWZvbnQsIGZvcmNlKTtcbn1cblxuLmlucHV0LS1zbWFsbCB7XG4gIHBhZGRpbmc6ICRmaWVsZC1zbWFsbC1wYWRkaW5nLXYgJGZpZWxkLXNtYWxsLXBhZGRpbmctaCAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0LS1zbWFsbCB7XG4gIGhlaWdodDogKDIgKiAkZmllbGQtc21hbGwtcGFkZGluZy12KSArIDQ7XG4gIHBhZGRpbmctcmlnaHQ6ICRmaWVsZC1zbWFsbC1wYWRkaW5nLWggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAkZmllbGQtc21hbGwtcGFkZGluZy1oICFpbXBvcnRhbnQ7XG59XG5cblxuLmlucHV0LS1sYXJnZSxcbi5zZWxlY3QtLWxhcmdlIHtcbiAgYm9yZGVyLXJhZGl1czogJGZpZWxkLWxhcmdlLWJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcblxuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZmllbGQtbGFyZ2UtZm9udCwgZm9yY2UpO1xufVxuXG4uaW5wdXQtLWxhcmdlLFxuJWlucHV0LS1sYXJnZSB7XG4gIHBhZGRpbmc6ICRmaWVsZC1sYXJnZS1wYWRkaW5nLXYgJGZpZWxkLWxhcmdlLXBhZGRpbmctaCAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0LS1sYXJnZSB7XG4gIGhlaWdodDogKDIgKiAkZmllbGQtbGFyZ2UtcGFkZGluZy12KSArIDU7XG4gIHBhZGRpbmctcmlnaHQ6ICRmaWVsZC1sYXJnZS1wYWRkaW5nLWggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAkZmllbGQtbGFyZ2UtcGFkZGluZy1oICFpbXBvcnRhbnQ7XG59XG5cbi5pbnB1dC0tcmVzcG9uc2l2ZSB7XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBwYWRkaW5nOiAkZmllbGQtbGFyZ2UtcGFkZGluZy12ICRmaWVsZC1sYXJnZS1wYWRkaW5nLWggIWltcG9ydGFudDtcbiAgICBAaW5jbHVkZSBmb250LXZhbHVlcygkZmllbGQtbGFyZ2UtZm9udCwgZm9yY2UpO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVEFCTEVcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG50YWJsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbnRoLFxudGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG4udGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xuICB0aGVhZCB0aCB7XG4gICAgcGFkZGluZzogcmVtKDcpIDA7XG5cbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGFsdC1jb2xvci1saWdodGVyO1xuICB9XG4gIHRkIHtcbiAgICBwYWRkaW5nOiByZW0oNykgMDtcbiAgfVxuICB0Ym9keSB0ciB7XG4gICAgdGQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRhbHQtY29sb3ItbGlnaHRlcjtcbiAgICB9XG4gIH1cbiAgdGZvb3QgdGgge1xuICAgIHBhZGRpbmc6IHJlbSg3KSAwIHJlbSg3KTtcblxuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gIH1cbn1cblxuXG5cbi50YWJsZS0tc21hbGwge1xuICB0ZCxcbiAgdGgge1xuICAgIEBpbmNsdWRlIGZvbnQtdmFsdWVzKCRmb250LWg2KTtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEJSQU5EXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmItZ3JvdXAge1xuICAvLyBMZWZ0IGJsYW5rIGp1c3QgZm9yIHJlZmVyZW5jZVxufVxuXG4uYi1vcmdhbml6YXRpb24ge1xuICAvLyBMZWZ0IGJsYW5rIGp1c3QgZm9yIHJlZmVyZW5jZVxufVxuXG4uYi1jb2xvciB7XG4gIC8vIExlZnQgYmxhbmsganVzdCBmb3IgcmVmZXJlbmNlXG59XG5cbi5iLWJhY2tncm91bmQge1xuICAvLyBMZWZ0IGJsYW5rIGp1c3QgZm9yIHJlZmVyZW5jZVxufVxuXG4uYi1ib3JkZXIge1xuICAvLyBMZWZ0IGJsYW5rIGp1c3QgZm9yIHJlZmVyZW5jZVxufVxuXG4uYi1ncm91cCB7XG4gIC5iLWNvbG9yLCAuYi1jb2xvcjpiZWZvcmUsIC5iLWNvbG9yOmFmdGVyLCAuYi1jb2xvci1iZWZvcmU6YmVmb3JlLCAuYi1jb2xvci1hZnRlcjphZnRlciB7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgfVxuICAuYi1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtY29sb3I7XG4gIH1cbiAgLmItYm9yZGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgfVxuICAuYi1maWxsIHtcbiAgICBmaWxsOiAkYnJhbmQtY29sb3I7XG4gIH1cbn1cblxuXG4vKipcbiAqIEdyb3VwIEJyYW5kIENsYXNzZXNcbiAqL1xuXG4vLyBTb21lIGVsZW1lbnRzIGhhdmUgdG8gYmUgYWx3YXlzIGluIHRoZSBnbG9iYWxcbi8vIGJyYW5kIGNvbG9yIChkaXJ0eSBtaW50KSwgdGhhdCdzIHdoeSB3ZSBuZWVkXG4vLyBzcGVjaWZpYyBjbGFzc2VzIGZvciB0aGVtLlxuXG4vLyBUaGUgYWRkaXRpb25hbCBzcGVjaWZpdHkgd2l0aCBpbXBvcnRhbnRcbi8vIGlzIG5lZWRlZCB0byBmb3JjZSBhIHNlY3Rpb24gdG8gaGF2ZSBhIGJhY2tncm91bmRcbi8vIHdpdGggdGhlIGdsb2JhbCBicmFuZCBjb2xvci5cbi5iLWdyb3VwLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiAkYnJhbmQtY29sb3IgIWltcG9ydGFudDtcbn1cblxuLmItZ3JvdXAtY29sb3Ige1xuICAmLCAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgY29sb3I6ICRicmFuZC1jb2xvcjtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFdJRFRIU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBpbmNsdWRlIHdpZHRocygkd2lkdGhzLWNvbHVtbnMpO1xuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFdJRFRIUyBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQGluY2x1ZGUgZm9yZWFjaC1icmVha3BvaW50KCR3aWR0aHMtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgd2lkdGhzKCR3aWR0aHMtY29sdW1ucywgJyN7JGJyZWFrcG9pbnQtbmFtZX0tJyk7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVEhFIE1FRElBIE9CSkVDVFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8vIFRoZSBmYW1vdXMgTWVkaWEgb2JqZWN0IGNyZWF0ZWQgYnkgTmljb2xlIFN1bGxpdmFuXG4vLyBodHRwOi8vd3d3LnN0dWJib3JuZWxsYS5vcmcvY29udGVudC8yMDEwLzA2LzI1L3RoZS1tZWRpYS1vYmplY3Qtc2F2ZXMtaHVuZHJlZHMtb2YtbGluZXMtb2YtY29kZS9cblxuLiN7JG5hbWVzcGFjZX1tZWRpYSxcbiVtZWRpYSB7XG4gIEBleHRlbmQgJWNsZWFyZml4O1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuICAuI3skbmFtZXNwYWNlfW1lZGlhX19sZWZ0LFxuICAlbWVkaWFfX2xlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogJG1lZGlhLWd1dHRlcjtcbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9bWVkaWFfX3JpZ2h0LFxuICAlbWVkaWFfX3JpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6ICRtZWRpYS1ndXR0ZXI7XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfW1lZGlhX19pbWFnZSxcbiAgJW1lZGlhX19pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfW1lZGlhX19ib2R5LFxuICAlbWVkaWFfX2JvZHkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNRURJQSBSRVNQT05TSVZFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZWRpYS1jb2xsYXBzZSkge1xuICAuI3skbmFtZXNwYWNlfW1lZGlhLS1yZXNwb25zaXZlIHtcbiAgICAuI3skbmFtZXNwYWNlfW1lZGlhX19sZWZ0LFxuICAgIC4jeyRuYW1lc3BhY2V9bWVkaWFfX3JpZ2h0IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuI3skbmFtZXNwYWNlfW1lZGlhX19pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNT1NBSUNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uI3skbmFtZXNwYWNlfW1vc2FpYyxcbiVtb3NhaWMge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIEVxdWFsIHdpZHRoIGZvciBhbGwgY2VsbHNcbi4jeyRuYW1lc3BhY2V9bW9zYWljLS1maXhlZCxcbiVtb3NhaWMtLWZpeGVkIHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuICAuI3skbmFtZXNwYWNlfW1vc2FpY19fcm93LFxuICAlbW9zYWljX19yb3cge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9bW9zYWljX19jZWxsLFxuICAlbW9zYWljX19jZWxsIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAubW9zYWljLS10b3AgJiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgIC5tb3NhaWMtLWJvdHRvbSAmIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxuICB9XG5cbiAgICAvLyBNYWtlIHRoZSBjZWxsIGZpdCBpdHMgY29udGVudFxuICAgIC4jeyRuYW1lc3BhY2V9bW9zYWljX19jZWxsLS1maXQsXG4gICAgJW1vc2FpY19fY2VsbC0tZml0IHtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBNT1NBSUMgUkVTUE9OU0lWRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkbW9zYWljLWNvbGxhcHNlKSB7XG4gIC4jeyRuYW1lc3BhY2V9bW9zYWljLS1yZXNwb25zaXZlIHtcbiAgICAmLFxuICAgID4gLiN7JG5hbWVzcGFjZX1tb3NhaWNfX3JvdyxcbiAgICA+IC4jeyRuYW1lc3BhY2V9bW9zYWljX19jZWxsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgID4gLiN7JG5hbWVzcGFjZX1tb3NhaWNfX2NlbGwtLWZpdCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBCVVRUT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYnRuLFxuJWJ0biB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIHBhZGRpbmc6IDA7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gIEBpbmNsdWRlIGZvbnQtdmFsdWVzKCRidG4tZm9udCk7XG4gIC8vIENsZWFuZXIgZm9udCByZW5kZXJpbmdcbiAgLy8gPGJ1dHRvbj4gZG9lc27igJl0IGluaGVyaXRcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5cbi8qKlxuICogVmFyaWFudHNcbiAqL1xuXG4vLyBVc2UgYWxsIHRoZSB3aWR0aCBhdmFpbGFibGVcbi5idG4tLWJsb2NrLFxuJWJ0bi0tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcblxuICB3aWR0aDogMTAwJTtcbn1cblxuLy8gUmVtb3ZlIGRlZmF1bHQgc3R5bGluZyBmb3Igc3BlY2lhbCBidXR0b25zXG4uYnRuLS1saW5rLFxuJWJ0bi0tbGluayB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24taG92ZXI7XG5cbiAgQGluY2x1ZGUgZm9udC12YWx1ZXMoJGZvbnQtaDYpO1xuXG4gICY6YWZ0ZXIsICY6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3ZlcjtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oaSXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjNlbTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJRcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDBlbTtcbiAgICB3aWR0aDogMWVtO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgJjpob3ZlciwgLmJveDpob3ZlciAmIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgJjphZnRlciwgJjpiZWZvcmUge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24taG92ZXItYm91bmNlO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxLjVyZW0pO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEuNHJlbSk7XG4gICAgfVxuICB9XG59XG5cblxuLyoqXG4gKiBTdHlsZXNcbiAqL1xuXG4uYnRuLS1kZWZhdWx0LFxuLmJ0bi0tc2Vjb25kYXJ5LFxuLmJ0bi0tYWx0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBwYWRkaW5nOiAkYnRuLXBhZGRpbmctdiAkYnRuLXBhZGRpbmctaDtcblxuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3ZlcjtcblxuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogJGJ0bi1ib3JkZXItcmFkaXVzO1xufVxuXG4uYnRuLS1kZWZhdWx0LFxuLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIG9wYWNpdHk6IC44O1xuICB9XG59XG5cbi5idG4tLWRlZmF1bHQsXG4lYnRuLS1kZWZhdWx0IHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYnRuLS1hbHQge1xuICBiYWNrZ3JvdW5kOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gIGJvcmRlci1jb2xvcjogJGFsdC1jb2xvci1saWdodGVyO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG59XG5cblxuXG4vKipcbiAqIFN0YXRlc1xuICovXG5cbi5idG4tLWRpc2FibGVkLFxuLmJ0bltkaXNhYmxlZF0sXG4lYnRuLS1kaXNhYmxlZCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgb3BhY2l0eTogLjI7XG59XG5cblxuLyoqXG4gKiBTaXplc1xuICovXG5cbi5idG4tLXNtYWxsLFxuJWJ0bi0tc21hbGwge1xuICBwYWRkaW5nOiAkYnRuLXNtYWxsLXBhZGRpbmctdiAkYnRuLXNtYWxsLXBhZGRpbmctaDtcblxuICBib3JkZXItcmFkaXVzOiAkYnRuLXNtYWxsLWJvcmRlci1yYWRpdXM7XG5cbiAgQGluY2x1ZGUgZm9udC12YWx1ZXMoJGJ0bi1zbWFsbC1mb250KTtcbn1cblxuLmJ0bi0tbGFyZ2UsXG4lYnRuLS1sYXJnZSB7XG4gIHBhZGRpbmc6ICRidG4tbGFyZ2UtcGFkZGluZy12ICRidG4tbGFyZ2UtcGFkZGluZy1oO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRidG4tbGFyZ2UtYm9yZGVyLXJhZGl1cztcblxuICBAaW5jbHVkZSBmb250LXZhbHVlcygkYnRuLWxhcmdlLWZvbnQpO1xufVxuXG5cbkBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgLmJ0bi0tcmVzcG9uc2l2ZSB7XG4gICAgcGFkZGluZzogJGJ0bi1sYXJnZS1wYWRkaW5nLXYgJGJ0bi1sYXJnZS1wYWRkaW5nLWg7XG5cbiAgICBib3JkZXItcmFkaXVzOiAkYnRuLWxhcmdlLWJvcmRlci1yYWRpdXM7XG5cbiAgICBAaW5jbHVkZSBmb250LXZhbHVlcygkYnRuLWxhcmdlLWZvbnQpO1xuICB9XG59XG5cblxuXG4vKipcbiAqIEJ1dHRvbiBHcm91cHNcbiAqL1xuXG4uYnRuLWdyb3VwIHtcbiAgLy8gYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwgMC44KTtcbiAgLy8gLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogMS41cmVtIDJyZW07XG4gICAgZm9udC1zaXplOiByZW0obWFwLWdldCgkcmh5dGhtLXNpemUteHhzLCBzaXplKSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwwLjgpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsZXg6IDE7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogJGFsdC1jb2xvci1kYXJrO1xuICAgIC5iYWNrZHJvcGZpbHRlciAmIHtcbiAgICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEycHgpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgneHhzJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgZm9udC1zaXplOiByZW0obWFwLWdldCgkcmh5dGhtLXNpemUteHMsIHNpemUpKTtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgLy8gYm9yZGVyLXJhZGl1czogJGJ0bi1ib3JkZXItcmFkaXVzO1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYnRuLWJvcmRlci1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuICAgIC5waWxsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgneHhzJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC5iLW9yZ2FuaXphdGlvbiAmIHtcblxuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG4gICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgLnBpbGwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWx0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAgIC8vIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgLnBpbGwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGJvdHRvbTogLTEuNXJlbTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgICAgIGJvdHRvbTogLTFyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmItZ3JvdXAgJiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgIC5iLW9yZ2FuaXphdGlvbiAmIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBCdXR0b24gd2l0aCBpY29uXG4gKi9cblxuLmJ0bi0taWNvbiB7XG4gIC5pY29uIHtcbiAgICBtYXgtaGVpZ2h0OiAxZW07XG4gICAgbWF4LXdpZHRoOiAxZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjNlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjJlbTtcbiAgfVxufVxuXG4vKipcbiAqIExvZ2luIEJ1dHRvblxuICovXG4uYnRuLS1sb2dpbiB7XG4gIGZvbnQtZmFtaWx5OiAnRUtXIEhlbHZldGljYSBDb25kZW5zZWQnO1xuICBmb250LXNpemU6IDEuMzMzMzMzMzMzMzNyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuXG4gIHBhZGRpbmc6IC40cmVtIDFyZW0gLjJyZW07XG5cbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICBib3JkZXItY29sb3I6ICRjb2xvci1ncmV5LTQwMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIC5pY29uIHtcbiAgICBtYXgtd2lkdGg6IDIuMnJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC43NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAuNzVyZW07XG5cbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkY29sb3ItZ3JleS00MDA7XG4gIH1cbn1cblxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIExJU1RcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5saSB7XG4gIHBhZGRpbmc6IHJlbSg0KSAwO1xufVxuXG4ubGlzdCxcbiVsaXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgTElTVCBTVEFDS0VEXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmxpc3QtaW5saW5lLFxuJWxpc3QtaW5saW5lIHtcbiAgQGV4dGVuZCAlbGlzdDtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgcGFkZGluZzogMCAkc3BhY2luZy11bml0LWRlZmF1bHQvMjtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZCBzZXBhcmF0b3JzXG4ubGlzdC1pbmxpbmUtLWRpdmlkZWQsXG4lbGlzdC1pbmxpbmUtLWRpdmlkZWQge1xuICA+IGxpICsgbGkge1xuICAgIGJvcmRlci1sZWZ0OiAkbGlzdC1zZXBhcmF0b3Itc3R5bGU7XG4gIH1cbn1cblxuLyoqXG4gICogU2l6ZXNcbiAgKi9cblxuLmxpc3QtaW5saW5lLS10aWdodCxcbiVsaXN0LWlubGluZS0tdGlnaHQge1xuICA+IGxpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5saXN0LWlubGluZS0tdGlueSxcbiVsaXN0LWlubGluZS0tdGlueSB7XG4gID4gbGkge1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctdW5pdC10aW55LzI7XG4gIH1cbn1cblxuLmxpc3QtaW5saW5lLS1zbWFsbCxcbiVsaXN0LWlubGluZS0tc21hbGwge1xuICA+IGxpIHtcbiAgICBwYWRkaW5nOiAwICRzcGFjaW5nLXVuaXQtc21hbGwvMjtcbiAgfVxufVxuXG4ubGlzdC1pbmxpbmUtLWxhcmdlLFxuJWxpc3QtaW5saW5lLS1sYXJnZSB7XG4gID4gbGkge1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctdW5pdC1sYXJnZS8yO1xuICB9XG59XG5cbi5saXN0LWlubGluZS0taHVnZSxcbiVsaXN0LWlubGluZS0taHVnZSB7XG4gID4gbGkge1xuICAgIHBhZGRpbmc6IDAgJHNwYWNpbmctdW5pdC1odWdlLzI7XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBMSVNUIFNUQUNLRURcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKlxuICBUT0RPOiBDaGVjayBpbnRlcmFjdGlvbiB3aXRoIC5jb2x1bXNcbiAgZm9yIGxpc3Qtc3RhY2tlZC0tZGl2aWVkLCBzbyBubyA6bm90XG4gIHNlbGVjdG9yIGlzIG5lZWRlZC5cbiovXG5cbi5saXN0LXN0YWNrZWQsXG4lbGlzdC1zdGFja2VkIHtcbiAgQGV4dGVuZCAlbGlzdDtcbiAgPiBsaSB7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICB9XG4gICY6bm90KC5saXN0LXN0YWNrZWQtLWRpdmlkZWQpIGxpIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZCBzZXBhcmF0b3JzXG4ubGlzdC1zdGFja2VkLS1kaXZpZGVkLFxuJWxpc3Qtc3RhY2tlZC0tZGl2aWRlZCB7XG4gIGxpIHtcbiAgICBib3JkZXItYm90dG9tOiAkbGlzdC1zZXBhcmF0b3Itc3R5bGU7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgYm9yZGVyLXRvcDogJGxpc3Qtc2VwYXJhdG9yLXN0eWxlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBTaXplc1xuICovXG5cbi5saXN0LXN0YWNrZWQtLXRpZ2h0LFxuJWxpc3Qtc3RhY2tlZC0tdGlnaHQge1xuICA+IGxpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5saXN0LXN0YWNrZWQtLXRpbnksXG4lbGlzdC1zdGFja2VkLS10aW55IHtcbiAgPiBsaSB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC10aW55LzIgMDtcbiAgfVxufVxuXG4ubGlzdC1zdGFja2VkLS1zbWFsbCxcbiVsaXN0LXN0YWNrZWQtLXNtYWxsIHtcbiAgPiBsaSB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1zbWFsbC8yIDA7XG4gIH1cbn1cblxuLmxpc3Qtc3RhY2tlZC0tbGFyZ2UsXG4lbGlzdC1zdGFja2VkLS1sYXJnZSB7XG4gID4gbGkge1xuICAgIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtbGFyZ2UvMiAwO1xuICB9XG59XG5cbi5saXN0LXN0YWNrZWQtLWh1Z2UsXG4lbGlzdC1zdGFja2VkLS1odWdlIHtcbiAgPiBsaSB7XG4gICAgcGFkZGluZzogJHNwYWNpbmctdW5pdC1odWdlLzIgMDtcbiAgfVxufVxuXG4vKipcbiAqIFdpdGggSWNvbnNcbiAqL1xuLmxpc3Qtc3RhY2tlZC0taWNvbiB7XG4gID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgJjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAuOGVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICB3aWR0aDogM3JlbTtcblxuICAgICAgY29udGVudDogJ+Kckyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgQk9YXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmJveC1jb250YWluZXIge1xuICBtYXJnaW46IDA7XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5ib3gge1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXIteHM7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXItc207XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXItbWQgLyAyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRndXR0ZXItbWQgLyAyO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi5ib3gsXG4lYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24taG92ZXI7XG5cbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1kZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBjb250ZW50OiAnJztcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3ZlcjtcblxuICAgIGJveC1zaGFkb3c6ICRtYXRlcmlhbC1zaGFkb3ctZGVmYXVsdDtcbiAgfVxuICAuc2VjdGlvbi0tZGVmYXVsdCAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkYWx0LWNvbG9yLWxpZ2h0ZXI7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1ib3gtbWluKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpO1xuICAgICAgfVxuICAgICAgLmJveF9faGVhZGVyIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uYm94LS1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodDtcbiAgcGFkZGluZzogMXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gICY6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICY6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4vKipcbiAqIEVsZW1lbnRzXG4gKi9cblxuLmJveF9faGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAkei1pbmRleC1ib3hfX2hlYWRlcjtcblxuICBoZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy10ZWFzZXIteHMtaGVpZ2h0KTtcblxuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3ZlcjtcblxuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAucmVzcG9uc2l2ZS1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICBjb250ZW50OiAnJztcbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3ZlcjtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgYmFja2dyb3VuZDogYmxhY2s7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy10ZWFzZXItc20taGVpZ2h0KTtcblxuICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgIG1pbi1oZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy10ZWFzZXItbGctaGVpZ2h0KTtcblxuICAgIGZsZXg6IDEgMTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgbWluLWhlaWdodDogcmVtKCRnbG9iYWxzLWltYWdlU3R5bGVzLXRlYXNlci14bC1oZWlnaHQpO1xuICB9XG5cbn1cblxuLmJveF9faGVhZGVyIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy10ZWFzZXIteHMtaGVpZ2h0KTtcbiAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIG1pbi1oZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy10ZWFzZXItc20taGVpZ2h0KTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgbWluLWhlaWdodDogcmVtKCRnbG9iYWxzLWltYWdlU3R5bGVzLXRlYXNlci1tZC1oZWlnaHQpO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBtaW4taGVpZ2h0OiByZW0oJGdsb2JhbHMtaW1hZ2VTdHlsZXMtdGVhc2VyLWxnLWhlaWdodCk7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgIG1pbi1oZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy10ZWFzZXIteGwtaGVpZ2h0KTtcbiAgfVxufVxuXG4uYm94X19ib2R5IHtcbiAgei1pbmRleDogJHotaW5kZXgtYm94X19ib2R5O1xuXG4gIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xuXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuXG4gIGZsZXg6IDEgMTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIC5zZWN0aW9uLS1kZWZhdWx0ICYge1xuICAgIGJhY2tncm91bmQ6ICRhbHQtY29sb3ItbGlnaHRlcjtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgZmxleDogMSAxO1xuICAgIHBhZGRpbmc6ICgkc3BhY2luZy11bml0LWRlZmF1bHQgLSAwLjVyZW0pICRzcGFjaW5nLXVuaXQtZGVmYXVsdCAoJHNwYWNpbmctdW5pdC1kZWZhdWx0IC0gMXJlbSk7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgIC5ib3gtLXdpdGgtaW1hZ2UgJiB7XG4gICAgICBtaW4taGVpZ2h0OiAzOHJlbTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tYm94LW1pbikge1xuICAgIGZsZXg6IDEgMSA1MCU7XG4gIH1cbn1cblxuXG4uYm94X190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgZmxleDogMSAxO1xuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICA+ICoge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG5cbi5ib3hfX3RleHQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gIGZsZXg6IDEgMSAwO1xuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ib3hfX2FkZG9uIHtcbiAgei1pbmRleDogJHotaW5kZXgtYm94X19hZGRvbjtcbn1cblxuLmJveF9fdGV4dDpub3QoLmJveF9fdGV4dC0taW1wb3J0YW50KSB7XG4gIC5ib3gtLXdpdGgtaW1hZ2UgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBTdHlsZXNcbiAqL1xuXG4uYm94LS1tYXRlcmlhbCB7XG4gIGJveC1zaGFkb3c6ICRtYXRlcmlhbC1zaGFkb3ctZGVmYXVsdDtcbn1cblxuLmJveC0tYWx0LFxuJWJveC0tYWx0IHtcbiAgY29sb3I6ICRib3gtZGVmYXVsdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVyO1xufVxuXG4vKipcbiAqIEJveCBWYXJpYXRpb25zXG4gKi9cblxuLmJveC1jb250YWluZXItLXYgLmJveCB7XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC5ib3hfX2hlYWRlciB7XG4gICAgICBvcmRlcjogMDtcbiAgICAgIGZsZXg6IG5vbmU7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAuYm94X190ZXh0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgfVxuICB9XG59XG5cbi5ib3gtY29udGFpbmVyLS1oIC5ib3gge1xuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgLmJveF9faGVhZGVyIHtcbiAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgfVxuICAgIC5ib3hfX2JvZHkge1xuICAgICAgZmxleDogMSAxIDUwJTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tYm94LW1pbikge1xuICAgIC5ib3hfX2hlYWRlciB7XG4gICAgICBvcmRlcjogMDtcbiAgICB9XG4gIH1cbn1cblxuLmJveC1jb250YWluZXItLXNtYWxsLmJveC1jb250YWluZXItLWggLmJveCB7XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAuYm94X19oZWFkZXIge1xuICAgICAgZmxleDogMSAxO1xuICAgIH1cbiAgICAuYm94X19ib2R5IHtcbiAgICAgIGZsZXg6IDIgMSA2cmVtO1xuICAgIH1cbiAgfVxufVxuXG4uYm94LWNvbnRhaW5lci0tcmlnaHQuYm94LWNvbnRhaW5lci0taCAuYm94IHtcbiAgLmJveF9faGVhZGVyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1ib3gtbWluKSB7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG4gIH1cbn1cblxuLmJveC0tdmlkZW8ge1xuICAuYm94X19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgICBtaW4taGVpZ2h0OiA1MnJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgICAgbWluLWhlaWdodDogNjByZW07XG4gICAgfVxuICB9XG4gIC5ib3hfX2J1YmJsZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICAuYm94X19idWJibGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICB9XG59XG5cblxuLmJveC0td2l0aC1idWJibGUge1xuICAuYm94X190aXRsZSB7XG4gICAgcGFkZGluZy1yaWdodDogN3JlbTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWJveC1taW4pIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDExcmVtO1xuICAgIH1cbiAgfVxuICAuYm94X190ZXh0IHAge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib3hfX2J1YmJsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICR6LWluZGV4LWJveF9fYnViYmxlO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGJvdHRvbTogMDtcblxuICAgIHdpZHRoOiA4cmVtO1xuICAgIGhlaWdodDogOHJlbTtcbiAgICBwYWRkaW5nOiAxLjc1cmVtO1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XG5cbiAgICBib3JkZXI6IC41cmVtIHNvbGlkIHdoaXRlO1xuXG4gICAgLmljb24ge1xuICAgICAgZmlsbDogd2hpdGU7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tYm94LW1pbikge1xuICAgICAgdG9wOiAxcmVtO1xuICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgICBib3R0b206IGluaXRpYWw7XG4gICAgICBsZWZ0OiAwO1xuXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgd2lkdGg6IDEwcmVtO1xuICAgICAgaGVpZ2h0OiAxMHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgICAgdG9wOiBpbml0aWFsO1xuICAgICAgcmlnaHQ6IDJyZW07XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiBpbml0aWFsO1xuXG4gICAgICBwYWRkaW5nOiAyLjI1cmVtO1xuXG4gICAgICB3aWR0aDogMTByZW07XG4gICAgICBoZWlnaHQ6IDEwcmVtO1xuXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgICAgd2lkdGg6IDEzcmVtO1xuICAgICAgaGVpZ2h0OiAxM3JlbTtcblxuICAgICAgYm9yZGVyLXdpZHRoOiAxcmVtO1xuICAgICAgcmlnaHQ6IDEuNXJlbTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG4gIH1cbn1cblxuLmJveC0tYmVuZWZpdHMge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgcGFkZGluZy1yaWdodDogMTVyZW07XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1yaWdodDogOXJlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cmVtO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgU0VDVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5zZWN0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5cbi5zZWN0aW9uX19ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRjb250YWluZXItd2lkdGg7XG4gIG1hcmdpbjogJGd1dHRlci14cyBhdXRvO1xuICBwYWRkaW5nOiAwICRndXR0ZXIteHM7XG5cbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgbWFyZ2luLXRvcDogJGd1dHRlci1zbTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyLXNtO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXItc207XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyLXNtO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBtYXJnaW4tdG9wOiAoJGd1dHRlci1tZCAvIDIpO1xuICAgIG1hcmdpbi1ib3R0b206ICgkZ3V0dGVyLW1kIC8gMik7XG4gICAgcGFkZGluZy1yaWdodDogJGd1dHRlci1tZDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXItbWQ7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAkZ3V0dGVyLW1kO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlci1tZDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgIG1hcmdpbi10b3A6ICgkZ3V0dGVyLWxnIC8gMik7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRndXR0ZXItbGcgLyAyKTtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6ICRndXR0ZXItbGc7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyLWxnO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgbWFyZ2luLXRvcDogKCRndXR0ZXIteGwgLyAyKTtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGd1dHRlci14bCAvIDIpO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogJGd1dHRlci14bDtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXIteGw7XG4gICAgfVxuICB9XG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuXG4uc2VjdGlvbl9fYm9keS0tZnVsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zZWN0aW9uX19ib2R5LS13aWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTgwMHB4O1xufVxuXG4uc2VjdGlvbl9fYm9keS0tbmFycm93IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogJGNvbnRhaW5lci13aWR0aDtcbn1cblxuXG4uc2VjdGlvbl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxMnJlbTtcbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuXG5cblxuLyoqXG4gKiBEaXNwbGF5IG1vZGlmaWVyc1xuICovXG4uc2VjdGlvbi0tYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcblxuICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcblxuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5zZWN0aW9uLS1oZXJvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiByZW0oJGdsb2JhbHMtaW1hZ2VTdHlsZXMtaGVyby14cy1oZWlnaHQpO1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIGhlaWdodDogcmVtKCRnbG9iYWxzLWltYWdlU3R5bGVzLWhlcm8tc20taGVpZ2h0KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgaGVpZ2h0OiByZW0oJGdsb2JhbHMtaW1hZ2VTdHlsZXMtaGVyby1tZC1oZWlnaHQpO1xuICAgIHBhZGRpbmctYm90dG9tOiA5cmVtO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBoZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy1oZXJvLWxnLWhlaWdodCk7XG4gICAgcGFkZGluZy1ib3R0b206IDEycmVtO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICBoZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy1oZXJvLXhsLWhlaWdodCk7XG4gICAgcGFkZGluZy1ib3R0b206IDE0cmVtO1xuICB9XG59XG5cbi5zZWN0aW9uLS1oZXJvIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xuICBoZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy1oZXJvLXhzLWhlaWdodCk7XG4gIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICBoZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy1oZXJvLXNtLWhlaWdodCk7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIGhlaWdodDogcmVtKCRnbG9iYWxzLWltYWdlU3R5bGVzLWhlcm8tbWQtaGVpZ2h0KTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgaGVpZ2h0OiByZW0oJGdsb2JhbHMtaW1hZ2VTdHlsZXMtaGVyby1sZy1oZWlnaHQpO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICBoZWlnaHQ6IHJlbSgkZ2xvYmFscy1pbWFnZVN0eWxlcy1oZXJvLXhsLWhlaWdodCk7XG4gIH1cbn1cblxuLnNlY3Rpb24tLWltYWdlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBpY3R1cmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbn1cblxuXG4vKipcbiAqIEFsdGVybmF0aXZlIGNvbG9yc1xuICovXG5cbi5zZWN0aW9uLS10cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2VjdGlvbi0tYWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvci1saWdodGVyO1xufVxuXG4uc2VjdGlvbi0tbWVkaXVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGFsdC1jb2xvcjtcbn1cblxuLnNlY3Rpb24tLWRhcmsge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wYWxsYWRpdW07XG59XG5cbi5zZWN0aW9uLWNvbGxlY3Rpb24tLWgge1xuICAuc2VjdGlvbi1jb2xsZWN0aW9uX190aXRsZSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0b3A6IC0xMHJlbTtcblxuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTAwdmggLSAyNHJlbSk7XG5cbiAgICBiYWNrZ3JvdW5kOiByZ2JhKHdoaXRlLCAuOTcpO1xuICAgIC5zZWN0aW9uX19ib2R5IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1jb2xsZWN0aW9uX190aXRsZSArIC5zZWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCgxMDB2aCAtIDI0cmVtKSAqIC0xKTtcbiAgICAuc2VjdGlvbl9fYm9keSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tY29sbGVjdGlvbl9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuXG4gICAgaGVpZ2h0OiAxMDB2aDtcblxuICAgIHRyYW5zaXRpb246IC41NXMgZWFzZS1pbi1vdXQ7XG4gICAgJi5hcHBlYXIge1xuICAgICAgLnNlY3Rpb24tY29sbGVjdGlvbl9fY29udGVudCB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgICAgLnNlY3Rpb24tY29sbGVjdGlvbl9faW1hZ2UtZGVmYXVsdCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgICAuc2VjdGlvbi1jb2xsZWN0aW9uX19pbWFnZS1vdmVybGF5IHtcbiAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWNvbGxlY3Rpb25fX2ltYWdlLWRlZmF1bHQsXG4gIC5zZWN0aW9uLWNvbGxlY3Rpb25fX2ltYWdlLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zaXRpb246IC44NXMgZWFzZS1pbi1vdXQ7XG5cbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB9XG4gIC5zZWN0aW9uLWNvbGxlY3Rpb25fX2ltYWdlLWRlZmF1bHQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgLnNlY3Rpb24tY29sbGVjdGlvbl9faW1hZ2Utb3ZlcmxheSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAuc2VjdGlvbi1jb2xsZWN0aW9uX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAvLyBtYXJnaW4tdG9wOiAtMTIwdmg7XG5cbiAgICB0cmFuc2l0aW9uOiAuODVzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHJlbSk7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG5cbi5zZWN0aW9uLWNvbGxlY3Rpb24tLXYge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAuc2VjdGlvbi1jb2xsZWN0aW9uX190aXRsZSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMjV2aCk7XG5cbiAgICBmbGV4OiAwIDAgNTAlO1xuICB9XG4gIC5zZWN0aW9uLWNvbGxlY3Rpb25fX2NvbnRlbnQge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gIH1cbn1cblxuXG4uc2VjdGlvbi1jb2xsZWN0aW9uLS1hcnRpY2xlIHtcbiAgd2lkdGg6ICRjb250YWluZXItd2lkdGg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAuc2VjdGlvbi1jb2xsZWN0aW9uX19hc2lkZSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG5cbiAgICBmbGV4OiA1IDAgMDtcbiAgfVxuICAuc2VjdGlvbi1jb2xsZWN0aW9uX19jb250ZW50IHtcbiAgICBmbGV4OiA4IDAgMDtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIElDT05cblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcblxufVxuXG5cbi5pY29uLS1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmljb24tLWxhcmdlIHtcbiAgd2lkdGg6IDhyZW07XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogOHJlbTtcbn1cblxuLmljb24tLXRpbnkge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAzcmVtO1xufVxuXG4uaWNvbi0tbWF0Y2gtdGV4dCB7XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIE1BVEVSSUFMXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLm1hdGVyaWFsLFxuJW1hdGVyaWFsIHtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1kZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogJG1hdGVyaWFsLXNoYWRvdy1kZWZhdWx0O1xufVxuXG5cbi8qKlxuICogTWF0ZXJpYWwgU3RhdGVzXG4gKi9cbi5tYXRlcmlhbC0tZWxldmF0ZWQge1xuICBib3gtc2hhZG93OiAkbWF0ZXJpYWwtc2hhZG93LWVsZXZhdGVkO1xufVxuXG4ubWF0ZXJpYWwtLWFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6ICRtYXRlcmlhbC1zaGFkb3ctYWN0aXZlO1xufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEhFQURMSU5FXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmhlYWRsaW5lIHtcbiAgZm9udC1mYW1pbHk6ICdFS1cgSGVsdmV0aWNhIENvbmRlbnNlZCc7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgcGFkZGluZy1sZWZ0OiAuMjRlbTtcblxuICBtYXgtd2lkdGg6IDcwJTtcblxuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIG1heC13aWR0aDogNjAlO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBtYXgtd2lkdGg6IDQyJTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gIH1cbn1cblxuLmhlYWRsaW5lX190ZXh0LFxuLmhlYWRsaW5lX19wYWRkaW5nIHtcbiAgZGl2LFxuICBoMSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuXG4gICAgYm94LXNoYWRvdzogMCAycHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gICAgLmItZ3JvdXAgJiB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtY29sb3I7XG4gICAgfVxuICAgIC5iLW9yZ2FuaXphdGlvbiAmIHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4uaGVhZGxpbmVfX3RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDA7XG59XG5cbi5oZWFkbGluZV9fcGFkZGluZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBkaXYsXG4gIGgxIHtcbiAgICBzcGFuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYTBcXEFcXDAwYTBcXEFcXDAwYTBcXEFcXDAwYTBcXEFcXDAwYTBcXEFcXDAwYTBcXEFcXDAwYTBcXEEnO1xuICAgIH1cbiAgfVxufVxuLyoqXG4gKiBIZWFkbGluZSBTdHlsZXNcbiAqL1xuLmhlYWRsaW5lLS1oMSB7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gIEBpbmNsdWRlIGZvbnQtdmFsdWVzKCRmb250LWhlYWRsaW5lKTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBOQVZJR0FUSU9OXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG4ubmF2IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAkei1pbmRleC1uYXY7XG4gIHRvcDogMDtcblxuICB3aWR0aDogMTAwJTtcblxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICYubmF2LS1wcmVwYXJlLW9wZW4ge1xuICAgIGhlaWdodDogMTAwdmggIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAmLm5hdi0tb3BlbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG4gIC8vIC5zZWN0aW9uLFxuICAvLyAuc2VjdGlvbl9fYm9keSB7XG4gIC8vICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyB9XG4gIC5iLWdyb3VwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1MCwgMjUwLCAyNTAsIC45OCk7XG4gICAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoJGFsdC1jb2xvciwgLjIpO1xuICB9XG59XG5cbi5uYXYtb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWdyZXktMjAwLDApO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigwcHgpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIHotaW5kZXg6ICR6LWluZGV4LXBhZ2Utb3ZlcmxheTtcbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29udGV4dC1jaGFuZ2U7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC5uYXYtLXByZXBhcmUtb3BlbiAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAubmF2LS1vcGVuICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWdyZXktMjAwLDAuOSk7XG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgLm5vLWJhY2tkcm9wZmlsdGVyICYge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktMjAwO1xuICAgIH1cbiAgfVxufVxuXG4ubmF2LWdyb3VwX19sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgd2lkdGg6IDdyZW07XG4gIGhlaWdodDogNnJlbTtcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9sb2dvLnN2ZycpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAuYi1vcmdhbml6YXRpb24gJiB7XG4gICAgZmxleDogMCAwIDdyZW07XG4gICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgICAgaGVpZ2h0OiA0cmVtO1xuICAgIH1cbiAgfVxuICAuYi1ncm91cCAmIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1kZWZhdWx0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2xvZ28ucG5nJyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDg1JTtcbiAgICBib3gtc2hhZG93OiAkbWF0ZXJpYWwtc2hhZG93LWRlZmF1bHQ7XG4gICAgZmxleDogMCAwIDE0cmVtO1xuICAgIGhlaWdodDogOXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC01cmVtO1xuICAgIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICAgIGZsZXg6IDAgMCAyMHJlbTtcbiAgICAgIGhlaWdodDogMTJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMTByZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMS41cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgICBmbGV4OiAwIDAgMjByZW07XG4gICAgICBoZWlnaHQ6IDEycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTIuNXJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgICAgZmxleDogMCAwIDI0cmVtO1xuICAgICAgaGVpZ2h0OiAxNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLm5hdi1ncm91cF9fbWVudSB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWNvbnRleHQtY2hhbmdlO1xuXG4gIG9wYWNpdHk6IDA7XG5cbiAgLmItb3JnYW5pemF0aW9uICYge1xuICAgIG1heC1oZWlnaHQ6IDRyZW07XG4gIH1cblxuICAuYi1ncm91cCAmIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtLW9wZW4gJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAuYi1vcmdhbml6YXRpb24gJiB7XG4gICAgICBtYXgtaGVpZ2h0OiAzMHJlbTtcbiAgICB9XG4gICAgLmItZ3JvdXAgJiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMnJlbSk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgaGVpZ2h0OiBub25lO1xuICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgIC5iLW9yZ2FuaXphdGlvbiAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTZyZW07XG4gICAgfVxuICB9XG59XG5cbi5uYXYtZ3JvdXAge1xuICB6LWluZGV4OiAkei1pbmRleC1uYXYtZ3JvdXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLm5hdl9fbWVudS1saXN0IHtcbiAgICAuYi1ncm91cCAmIHtcbiAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdmFsdWVzKCRmb250LW1lbnUpO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgICAgLmItZ3JvdXAgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5iLWdyb3VwICYge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgICAuYi1vcmdhbml6YXRpb24gJiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgICAgLnBhdGgtZnJvbnRwYWdlICYge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgICAuYi1vcmdhbml6YXRpb24gJiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24tLW5hdi1tZXRhIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAkei1pbmRleC1uYXYtbWV0YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUuNXJlbTtcblxuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1jb250ZXh0LWNoYW5nZTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjg4LCAtMC4xNSwgMC40NywgMS4zKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICBvcGFjaXR5OiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS01MDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG4gIC5uYXYtLXByZXBhcmUtb3BlbiAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubmF2LS1vcGVuICYge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5uYXYtbWV0YSB7XG5cbn1cblxuLy8gLm5hdi1nb2JhbF9fbWV0YS1saXN0IHtcbi5uYXYtbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbGkge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEuNXJlbTtcbiAgICByaWdodDogMTZyZW07XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICB0b3A6IDJyZW07XG4gIH1cbn1cblxuLm5hdi1ncm91cF9fbWVudS1idG4ge1xuICBmbGV4OiAwIDAgMTJyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gIHBhZGRpbmc6IDEuNXJlbSAxLjI1cmVtIDEuNXJlbSAycmVtO1xuXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycmVtKTtcblxuICBsaW5lLWhlaWdodDogM3JlbTtcblxuICAuaWNvbiB7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgaGVpZ2h0OiAzcmVtO1xuICB9XG5cbiAgI21lbnVfX2xpbmUtMSxcbiAgI21lbnVfX2xpbmUtMixcbiAgI21lbnVfX2xpbmUtMyB7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29udGV4dC1jaGFuZ2U7XG4gIH1cbiAgI21lbnVfX2xpbmUtMSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMnB4IDZweDtcbiAgfVxuICAjbWVudV9fbGluZS0yIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICB9XG4gICNtZW51X19saW5lLTMge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDIycHggMThweDtcbiAgfVxuICAubmF2LS1vcGVuICYge1xuICAgICNtZW51X19saW5lLTEge1xuICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCkgcm90YXRlKC00NWRlZykgc2NhbGVYKDAuNSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzcHgsLTFweCkgcm90YXRlKDQ1ZGVnKSBzY2FsZVgoMC41KTtcbiAgICB9XG4gICAgI21lbnVfX2xpbmUtMiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cbiAgICAjbWVudV9fbGluZS0zIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zcHgsMXB4KSByb3RhdGUoNDVkZWcpIHNjYWxlWCgwLjUpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zZWN0aW9uLS1uYXYtZ3JvdXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1ncmV5LTUwLCAwLjkzKTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG5cbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29udGV4dC1jaGFuZ2U7XG5cbiAgLm5vLWJhY2tkcm9wZmlsdGVyICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LTUwO1xuICB9XG5cbiAgei1pbmRleDogJHotaW5kZXgtbmF2LWdyb3VwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgLmItb3JnYW5pemF0aW9uICYge1xuICAgICAgaGVpZ2h0OiA4cmVtO1xuICAgIH1cbiAgICAuYi1ncm91cCAmIHtcbiAgICAgIGhlaWdodDogOHJlbTtcbiAgICB9XG4gICAgLm5hdi0tb3BlbiAmIHtcbiAgICAgIC5iLW9yZ2FuaXphdGlvbiAmIHtcbiAgICAgICAgaGVpZ2h0OiAxOHJlbTtcbiAgICAgIH1cbiAgICAgIC5iLWdyb3VwICYge1xuICAgICAgICBoZWlnaHQ6IDIwcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgLmItb3JnYW5pemF0aW9uICYge1xuICAgICAgaGVpZ2h0OiAxNXJlbTtcbiAgICB9XG4gICAgLmItZ3JvdXAgJiB7XG4gICAgICBoZWlnaHQ6IDhyZW07XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICAuYi1ncm91cCAmIHtcbiAgICAgIGhlaWdodDogOXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24tLW5hdi1vcmdhbml6YXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIHotaW5kZXg6ICR6LWluZGV4LW5hdi1vcmdhbml6YXRpb247XG5cbiAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgxMjgsIDE0MCwgMTM2LCAuMTgpO1xuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1jb250ZXh0LWNoYW5nZTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDZyZW07XG5cbiAgLm5hdi0tb3BlbiAmIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjZyZW0pO1xuICAgIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG5cbiAgfVxuICAuYi1vcmdhbml6YXRpb24gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLm5hdi1vcmdhbml6YXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6ICR6LWluZGV4LW5hdi1vcmdhbml6YXRpb247XG59XG5cbi5uYXYtb3JnYW5pemF0aW9uX19uYW1lIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIHBhZGRpbmc6IC41cmVtIDA7XG5cbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29udGV4dC1jaGFuZ2U7XG5cbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5uYXYtLW9wZW4gJiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFyZW0pO1xuICAgIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICBmb250LXNpemU6ICRmb250LXNpemUtZGVmYXVsdDtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC00LjVyZW07XG4gICAgbGVmdDogMjRyZW07XG5cbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBsZWZ0OiAyNnJlbTtcbiAgfVxufVxuXG4ubmF2LW9yZ2FuaXphdGlvbl9fbG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNHJlbTtcbiAgbGVmdDogNTAlO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIHdpZHRoOiAxMnJlbTtcbiAgaGVpZ2h0OiA2cmVtO1xuICBtYXJnaW4tbGVmdDogLTZyZW07XG4gIHBhZGRpbmc6IDFyZW07XG5cbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgZGl2IHtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICB0b3A6IC02cmVtO1xuICAgIGxlZnQ6IDEwcmVtO1xuXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgIHRvcDogLTdyZW07XG4gICAgbGVmdDogMDtcblxuICAgIHdpZHRoOiAyNHJlbTtcbiAgICBoZWlnaHQ6IDEycmVtO1xuXG4gICAgcGFkZGluZzogMS41cmVtO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTE7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNTAlO1xuXG4gICAgY29udGVudDogJyc7XG5cbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1kZWZhdWx0O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCAwIHJnYmEoMTI4LCAxNDAsIDEzNiwgLjEwKTtcbiAgfVxufVxuXG4ubmF2LW9yZ2FuaXphdGlvbl9fbWVudSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgbWF4LWhlaWdodDogMDtcblxuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1jb250ZXh0LWNoYW5nZTtcblxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgIHBhZGRpbmctbGVmdDogMjZyZW07XG4gIH1cbiAgLm5hdi0tb3BlbiAmIHtcbiAgICBtYXgtaGVpZ2h0OiA1MHJlbTtcbiAgfVxuICAubmF2X19tZW51LWxpc3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogM3JlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1tZW51KTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyLCAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLyoqXG4gKiBQb3NzaWJsZSBSZWZhY3RvcmluZ1xuICovXG5cbi8vICRuYXYtZ3JvdXAtaGVpZ2h0OiAgICAgICAgIDVyZW07XG4vLyAkbmF2LWdyb3VwLWhlaWdodC1tZDogICAgICA3cmVtO1xuLy8gJG5hdi1ncm91cC1oZWlnaHQtbGc6ICAgICAgMTNyZW07XG5cbi8vICRuYXYtb3JnYW5pemF0aW9uLWhlaWdodDogICA4cmVtO1xuXG4vLyAubmF2IHtcbi8vICAgcG9zaXRpb246IGZpeGVkO1xuLy8gICB0b3A6IDA7XG4vLyAgIGxlZnQ6IDA7XG4vLyAgIHdpZHRoOiAxMDAlO1xuLy8gICBvdmVyZmxvdzogdmlzaWJsZTtcbi8vICAgLnNlY3Rpb25fX2JvZHkge1xuLy8gICAgIG1hcmdpbi10b3A6IDA7XG4vLyAgICAgbWFyZ2luLWJvdHRvbTogMDtcbi8vICAgfVxuLy8gfVxuXG4vLyAubmF2X19saXN0IHtcbi8vICAgbGkge1xuLy8gICAgIHBhZGRpbmc6IDA7XG4vLyAgICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuLy8gICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuLy8gICAgIH1cbi8vICAgfVxuLy8gICBhIHtcbi8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgIH1cbi8vIH1cblxuLy8gLyoqXG4vLyAgKiBOYXZpZ2F0aW9uIE1ldGFcbi8vICAqL1xuXG4vLyAubmF2LW1ldGEge1xuLy8gICBkaXNwbGF5OiBub25lO1xuLy8gICB6LWluZGV4OiAkei1pbmRleC1uYXYtbWV0YTtcbi8vIH1cblxuLy8gLyoqXG4vLyAgKiBOYXZpZ2F0aW9uIEdyb3VwXG4vLyAgKi9cblxuLy8gLm5hdi1ncm91cCB7XG4vLyAgIHotaW5kZXg6ICR6LWluZGV4LW5hdi1ncm91cDtcbi8vICAgaGVpZ2h0OiAkbmF2LWdyb3VwLWhlaWdodDtcblxuLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS01MDtcblxuLy8gICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4vLyAgICAgaGVpZ2h0OiAkbmF2LWdyb3VwLWhlaWdodC1tZDtcbi8vICAgfVxuXG4vLyAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbi8vICAgICBoZWlnaHQ6ICRuYXYtZ3JvdXAtaGVpZ2h0LWxnO1xuLy8gICB9XG4vLyB9XG5cbi8vIC5uYXYtZ3JvdXBfX2JvZHkge1xuLy8gICBkaXNwbGF5OiBmbGV4O1xuLy8gICBmbGV4LXdyYXA6IHdyYXA7XG4vLyAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbi8vIH1cblxuLy8gLm5hdi1ncm91cF9fbG9nbyB7XG4vLyAgIGRpc3BsYXk6IGJsb2NrO1xuXG4vLyAgIC5iLW9yZ2FuaXphdGlvbiAmIHtcbi8vICAgICBoZWlnaHQ6ICRuYXYtZ3JvdXAtaGVpZ2h0O1xuLy8gICAgIGZsZXg6IDAgMCA4cmVtO1xuXG4vLyAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nby5zdmcnKTtcbi8vICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuLy8gICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuLy8gICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyLjVyZW07XG4vLyAgICAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuLy8gICAgICAgaGVpZ2h0OiAkbmF2LWdyb3VwLWhlaWdodC1tZDtcbi8vICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAzcmVtO1xuLy8gICAgICAgZmxleDogMCAwIDlyZW07XG4vLyAgICAgfVxuLy8gICB9XG4vLyAgIC5iLWdyb3VwICYge1xuLy8gICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWRlZmF1bHQ7XG4vLyAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4vLyAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nby5wbmcnKTtcbi8vICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuLy8gICAgIGJhY2tncm91bmQtc2l6ZTogODUlO1xuLy8gICAgIGJveC1zaGFkb3c6ICRtYXRlcmlhbC1zaGFkb3ctZGVmYXVsdDtcbi8vICAgICB3aWR0aDogJG5hdi1ncm91cC1oZWlnaHQgKiAzO1xuLy8gICAgIGhlaWdodDogJG5hdi1ncm91cC1oZWlnaHQ7XG4vLyAgICAgbWFyZ2luLXRvcDogMHJlbTtcbi8vICAgICBtYXJnaW4tYm90dG9tOiAtNXJlbTtcbi8vICAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4vLyAgICAgICB3aWR0aDogMjByZW07XG4vLyAgICAgICBoZWlnaHQ6IDEycmVtO1xuLy8gICAgICAgbWFyZ2luLWJvdHRvbTogLTEwcmVtO1xuLy8gICAgICAgbWFyZ2luLXRvcDogLTEuNXJlbTtcbi8vICAgICB9XG4vLyAgICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuLy8gICAgICAgd2lkdGg6IDI0cmVtO1xuLy8gICAgICAgaGVpZ2h0OiAxNXJlbTtcbi8vICAgICAgIG1hcmdpbi1ib3R0b206IC0xMHJlbTtcbi8vICAgICAgIG1hcmdpbi10b3A6IC0xLjVyZW07XG4vLyAgICAgfVxuLy8gICB9XG4vLyB9XG5cbi8vIC5uYXYtZ3JvdXBfX2J0biB7XG4vLyAgIGZsZXg6IDAgMCBhdXRvO1xuLy8gICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4vLyAgICAgZGlzcGxheTogbm9uZTtcbi8vICAgfVxuLy8gICAuaWNvbiB7XG4vLyAgICAgd2lkdGg6IDNyZW07XG4vLyAgICAgaGVpZ2h0OiAzcmVtO1xuLy8gICB9XG4vLyB9XG5cbi8vIC5uYXYtZ3JvdXBfX21lbnUge1xuLy8gICBmbGV4OiAwIDAgMTAwJTtcbi8vICAgaGVpZ2h0OiAwO1xuLy8gICBvdmVyZmxvdzogaGlkZGVuO1xuLy8gICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4vLyAgICAgaGVpZ2h0OiBhdXRvO1xuLy8gICAgIGZsZXg6IDEgMSBhdXRvO1xuLy8gICAgIG1hcmdpbi1sZWZ0OiAxN3JlbTtcbi8vICAgfVxuLy8gICAubmF2X19saXN0IHtcbi8vICAgICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4vLyAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8gICAgICAgbGkge1xuLy8gICAgICAgICBmbG9hdDogbGVmdDtcbi8vICAgICAgIH1cbi8vICAgICAgIGEge1xuLy8gICAgICAgICBtYXJnaW46IDJyZW0gMDtcbi8vICAgICAgIH1cbi8vICAgICB9XG4vLyAgIH1cbi8vIH1cblxuLy8gLyoqXG4vLyAgKiBOYXZpZ2F0aW9uIE9yZ2FuaXphdGlvblxuLy8gICovXG5cbi8vIC5uYXYtb3JnYW5pemF0aW9uIHtcbi8vICAgei1pbmRleDogJHotaW5kZXgtbmF2LW9yZ2FuaXphdGlvbjtcbi8vICAgdG9wOiAkbmF2LWdyb3VwLWhlaWdodDtcbi8vICAgYm94LXNoYWRvdzogMCAycHggOHB4IDAgcmdiYSgxMjgsIDE0MCwgMTM2LCAuMTgpO1xuLy8gICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4vLyAgICAgdG9wOiAkbmF2LWdyb3VwLWhlaWdodC1tZDtcbi8vICAgfVxuLy8gICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4vLyAgICAgdG9wOiAkbmF2LWdyb3VwLWhlaWdodC1sZztcbi8vICAgfVxuLy8gfVxuXG4vLyAubmF2LW9yZ2FuaXphdGlvbl9fYm9keSB7XG4vLyAgIGRpc3BsYXk6IGZsZXg7XG4vLyAgIGZsZXgtd3JhcDogd3JhcDtcbi8vICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4vLyAgIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbi8vICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4vLyAgIH1cbi8vIH1cblxuLy8gLm5hdi1vcmdhbml6YXRpb25fX2xvZ28ge1xuLy8gICBkaXNwbGF5OiBibG9jaztcblxuLy8gICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbi8vICAgd2lkdGg6IDEycmVtO1xuLy8gICBoZWlnaHQ6IDZyZW07XG5cbi8vICAgbWFyZ2luLXRvcDogLTRyZW0gIWltcG9ydGFudDtcbi8vICAgbWFyZ2luLWJvdHRvbTogLTJyZW07XG4vLyAgIHBhZGRpbmc6IDFyZW07XG5cbi8vICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtZGVmYXVsdDtcbi8vICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbi8vICAgZGl2IHtcbi8vICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuLy8gICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4vLyAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuLy8gICAgIGhlaWdodDogMTAwJTtcbi8vICAgICB3aWR0aDogMTAwJTtcbi8vICAgfVxuLy8gICAmOmJlZm9yZSB7XG4vLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgIHotaW5kZXg6IC0xO1xuLy8gICAgIHRvcDogMDtcbi8vICAgICBsZWZ0OiAwO1xuXG4vLyAgICAgZGlzcGxheTogYmxvY2s7XG5cbi8vICAgICB3aWR0aDogMTAwJTtcbi8vICAgICBoZWlnaHQ6IDUwJTtcblxuLy8gICAgIGNvbnRlbnQ6ICcnO1xuXG4vLyAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtZGVmYXVsdDtcbi8vICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggMCByZ2JhKDEyOCwgMTQwLCAxMzYsIC4xMCk7XG4vLyAgIH1cbi8vICAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuLy8gICAgIG1hcmdpbi1sZWZ0OiAxMHJlbTtcbi8vICAgICBtYXJnaW4tdG9wOiAtNnJlbSAhaW1wb3J0YW50O1xuLy8gICB9XG4vLyAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbi8vICAgICBtYXJnaW4tbGVmdDogMDtcbi8vICAgICBtYXJnaW4tdG9wOiAtNnJlbSAhaW1wb3J0YW50O1xuLy8gICAgIG1hcmdpbi1ib3R0b206IC02cmVtO1xuXG4vLyAgICAgd2lkdGg6IDI0cmVtO1xuLy8gICAgIGhlaWdodDogMTJyZW07XG4vLyAgIH1cbi8vIH1cblxuLy8gLm5hdi1vcmdhbml6YXRpb25fX25hbWUge1xuLy8gICBmbGV4OiAwIDAgMTAwJTtcbi8vICAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuLy8gICAgIGZsZXg6IDEgMSBhdXRvO1xuLy8gICAgIG1hcmdpbi10b3A6IC00LjVyZW07XG4vLyAgICAgbWFyZ2luLWxlZnQ6IDJyZW07XG4vLyAgIH1cbi8vIH1cblxuLy8gLm5hdi1vcmdhbml6YXRpb25fX21lbnUge1xuLy8gICBoZWlnaHQ6IDA7XG4vLyAgIG92ZXJmbG93OiBoaWRkZW47XG4vLyAgIGEge1xuLy8gICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuLy8gICB9XG4vLyAgIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbi8vICAgICBoZWlnaHQ6IGF1dG87XG4vLyAgICAgZmxleDogMCAwIDEwMCU7XG4vLyAgICAgLm5hdl9fbGlzdCB7XG4vLyAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuLy8gICAgIH1cbi8vICAgICBsaSB7XG4vLyAgICAgICBmbG9hdDogbGVmdDtcbi8vICAgICB9XG4vLyAgICAgYSB7XG4vLyAgICAgICBtYXJnaW46IDEuNXJlbSAwO1xuLy8gICAgIH1cbi8vICAgfVxuLy8gICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4vLyAgICAgbWFyZ2luLWxlZnQ6IDI2cmVtO1xuLy8gICB9XG4vLyB9XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgU0VDVE9SXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLnNlY3RvciB7XG4gIGE6aG92ZXIge1xuICAgIC5zZWN0b3JfX2ljb24ge1xuICAgICAgb3BhY2l0eTogLjc7XG4gICAgfVxuICB9XG59XG5cbi5zZWN0b3ItY29sbGVjdGlvbiB7XG4gIGNvbHVtbnM6IDE7XG4gIGNvbHVtbi1nYXA6IDRyZW07XG4gIGZvbnQtc2l6ZTogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICBjb2x1bW5zOiAyO1xuICAgIGNvbHVtbi1ydWxlOiAxcHggc29saWQgJGFsdC1jb2xvci1saWdodDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgY29sdW1uczogMztcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgLy8gY29sdW1uczogNDtcbiAgfVxuICAuc2VjdG9yIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IHJlbShtYXAtZ2V0KCRyaHl0aG0tc2l6ZS14cywgc2l6ZSkpO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDByZW07XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZ3JleS01MDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLnBpbGwge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEVsZW1lbnRzXG4gKi9cblxuLnNlY3Rvcl9fY2hlY2tib3gge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnNlY3Rvcl9faWNvbiB7XG4gIHdpZHRoOiA1cmVtO1xuICBoZWlnaHQ6IDVyZW07XG4gIHBhZGRpbmc6IHJlbSg4KTtcblxuICBib3JkZXI6IDFweCBzb2xpZCAkYWx0LWNvbG9yLWxpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuXG4gIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIHdpZHRoOiA2cmVtO1xuICAgIGhlaWdodDogNnJlbTtcbiAgICBwYWRkaW5nOiByZW0oMTApO1xuICB9XG4gIHN2ZyB7XG4gICAgZmlsbDogYmxhY2s7XG4gIH1cbn1cblxuLnNlY3Rvcl9fbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuXG4gIGNvbG9yOiAkYWx0LWNvbG9yLWRhcms7XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uc2VjdG9yX19jb3VudCB7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDNyZW07XG4gIC8vIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodDtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAvLyBib3JkZXI6IDFweCBzb2xpZCAkYWx0LWNvbG9yLWxpZ2h0O1xuICBmb250LXNpemU6IHJlbSgxMik7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuXG4uc2VjdG9yX19jaGVja2JveDpjaGVja2VkICsgLnNlY3Rvcl9fbGFiZWwge1xuICAvLyBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAuc2VjdG9yX19pY29uIHtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgc3ZnIHtcbiAgICAgIGZpbGw6IHdoaXRlO1xuICAgIH1cbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIExBWU9VVEJSRUFLRVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubGF5b3V0YnJlYWtlciB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubGF5b3V0YnJlYWtlcl9fYXNpZGUge1xuICBoZWlnaHQ6IDc1dnc7XG5cbiAgLnJlc3BvbnNpdmUtaW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICBoZWlnaHQ6IDUwcmVtO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBoZWlnaHQ6IDcwcmVtO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICBoZWlnaHQ6IDgwcmVtO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICBoZWlnaHQ6IDEwMHJlbTtcbiAgfVxufVxuXG5cbi5sYXlvdXRicmVha2VyX190ZXh0IHtcbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ubGF5b3V0YnJlYWtlci0tbGVmdCxcbi5sYXlvdXRicmVha2VyLS1yaWdodCB7XG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5sYXlvdXRicmVha2VyX19tYWluIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleDogMTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG4gIH1cbiAgLmxheW91dGJyZWFrZXJfX2FzaWRlIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgICBmbGV4OiAwIDAgcGVyY2VudGFnZSgxLzMpO1xuICAgICAgZmxleDogMCAwIGNhbGMoNTAlIC0gMjkuNXJlbSk7XG4gICAgfVxuICB9XG59XG5cbi5sYXlvdXRicmVha2VyLS1yaWdodCB7XG4gIC5sYXlvdXRicmVha2VyX19tYWluIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgfVxufVxuXG4ubGF5b3V0YnJlYWtlci0tbGVmdCB7XG4gIC5sYXlvdXRicmVha2VyX19tYWluIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICB9XG4gIC5sYXlvdXRicmVha2VyX190ZXh0IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMzFyZW07XG4gICAgICBtYXgtd2lkdGg6IDgxcmVtO1xuICAgIH1cbiAgfVxufVxuXG4ubGF5b3V0YnJlYWtlci0tcmlnaHQge1xuICAubGF5b3V0YnJlYWtlcl9fYXNpZGUge1xuICAgIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICAgIG9yZGVyOiAyO1xuICAgIH1cbiAgfVxuICAubGF5b3V0YnJlYWtlcl9fdGV4dCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgICAgbWFyZ2luOiAwIDMxcmVtIDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogODFyZW07XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgQ09MVU1OU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5jb2x1bW5zIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIGNvbHVtbnM6IDI7XG4gICAgY29sdW1uLWdhcDogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgRFJVUEFMIExBTkdVQUdFU1dJVENIRVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4jYmxvY2stbGFuZ3VhZ2Vkcm9wZG93bnN3aXRjaGVyIHtcbiAgc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAzcmVtO1xuXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG4gIG9wdGlvbiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtaW4taGVpZ2h0OiBpbml0aWFsO1xuICB9XG59XG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgR1JJRFxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qKlxuICogTW9kZXJuIGdyaWQgdXNpbmcgZmxleGJveFxuICovXG5cbkBpZiAoJGdyaWQtZmxleCA9PSB0cnVlKSB7XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLFxuICAlZ3JpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLWxlZnQ6IC0kc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gIH1cblxuICAgIC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSxcbiAgICAlZ3JpZF9faXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgfVxuXG5cbiAgLyoqXG4gICAqIEd1dHRlcnMgc2l6ZVxuICAgKi9cblxuICAuI3skbmFtZXNwYWNlfWdyaWQtLXRpZ2h0LFxuICAlZ3JpZC0tdGlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tdGlueSxcbiAgJWdyaWQtLXRpbnkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJHNwYWNpbmctdW5pdC10aW55O1xuXG4gICAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1zbWFsbCxcbiAgJWdyaWQtLXNtYWxsIHtcbiAgICBtYXJnaW4tbGVmdDogLSRzcGFjaW5nLXVuaXQtc21hbGw7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1sYXJnZSxcbiAgJWdyaWQtLWxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogLSRzcGFjaW5nLXVuaXQtbGFyZ2U7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1odWdlLFxuICAlZ3JpZC0taHVnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kc3BhY2luZy11bml0LWh1Z2U7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtaHVnZTtcbiAgICB9XG4gIH1cblxuXG4gIC8qKlxuICAgKiBBbGlnbm1lbnRcbiAgICovXG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1jZW50ZXIsXG4gICVncmlkLS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1yaWdodCxcbiAgJWdyaWQtLXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1taWRkbGUsXG4gICVncmlkLS1taWRkbGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAuI3skbmFtZXNwYWNlfWdyaWQtLWJvdHRvbSxcbiAgJWdyaWQtLWJvdHRvbSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1zdHJldGNoLFxuICAlZ3JpZC0tc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICAvKipcbiAgICogT3JkZXJcbiAgICovXG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1yZXYsXG4gICVncmlkLS1yZXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tbGctcmV2LFxuICAlZ3JpZC0tbGctcmV2IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuICB9XG5cbn1cblxuXG4vKipcbiAqIExlZ2FjeSBncmlkIHVzaW5nIGlubGluZS1ibG9ja1xuICovXG5cbkBlbHNlIHtcblxuICAuI3skbmFtZXNwYWNlfWdyaWQsXG4gICVncmlkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogLSRzcGFjaW5nLXVuaXQtZGVmYXVsdDtcblxuICAgIC8vIFJlbW92ZSBleHRyYS1zcGFjZSBiZXR3ZWVuIGl0ZW1zIGR1ZSB0byBpbmxpbmUgYmxvY2tcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAgIC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSxcbiAgICAlZ3JpZF9faXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogJHNwYWNpbmctdW5pdC1kZWZhdWx0O1xuXG4gICAgICAvLyBSZXNldCBmb250IHNpemUgdG8gZGVmYXVsdCAoc2VlIGNvbW1lbnQgYWJvdmUpXG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtZGVmYXVsdDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG5cbiAgLyoqXG4gICAqIEd1dHRlcnMgc2l6ZVxuICAgKi9cblxuICAuI3skbmFtZXNwYWNlfWdyaWQtLXRpZ2h0LFxuICAlZ3JpZC0tdGlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC4jeyRuYW1lc3BhY2V9Z3JpZC0tdGlueSxcbiAgJWdyaWQtLXRpbnkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJHNwYWNpbmctdW5pdC10aW55O1xuXG4gICAgPiAuI3skbmFtZXNwYWNlfWdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAkc3BhY2luZy11bml0LXRpbnk7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1zbWFsbCxcbiAgJWdyaWQtLXNtYWxsIHtcbiAgICBtYXJnaW4tbGVmdDogLSRzcGFjaW5nLXVuaXQtc21hbGw7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtc21hbGw7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1sYXJnZSxcbiAgJWdyaWQtLWxhcmdlIHtcbiAgICBtYXJnaW4tbGVmdDogLSRzcGFjaW5nLXVuaXQtbGFyZ2U7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtbGFyZ2U7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1odWdlLFxuICAlZ3JpZC0taHVnZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kc3BhY2luZy11bml0LWh1Z2U7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRzcGFjaW5nLXVuaXQtaHVnZTtcbiAgICB9XG4gIH1cblxuXG4gIC8qKlxuICAgKiBBbGlnbm1lbnRcbiAgICovXG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1jZW50ZXIsXG4gICVncmlkLS1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1yaWdodCxcbiAgJWdyaWQtLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1taWRkbGUsXG4gICVncmlkLS1taWRkbGUge1xuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1ib3R0b20sXG4gICVncmlkLS1ib3R0b20ge1xuICAgID4gLiN7JG5hbWVzcGFjZX1ncmlkX19pdGVtIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxuICB9XG5cblxuICAvKipcbiAgICogT3JkZXJcbiAgICovXG5cbiAgLiN7JG5hbWVzcGFjZX1ncmlkLS1yZXYsXG4gICVncmlkLS1yZXYge1xuICAgIGRpcmVjdGlvbjogcnRsO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICA+IC4jeyRuYW1lc3BhY2V9Z3JpZF9faXRlbSB7XG4gICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBTV0lQRSBTTElERVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uc3dpcGVfX2l0ZW0ge1xuICAuc2VjdGlvbl9fYm9keSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLyoqXG4gKiBFbGVtZW50c1xuICovXG5cbi5zbGlkZXJfX2NvbnRyb2xzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnNsaWRlcl9fY29udHJvbC1idG4ge1xuICBmb250LXNpemU6IDMuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDUuNHJlbTtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiA2cmVtO1xuICBoZWlnaHQ6IDZyZW07XG5cbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgIHZlcnRpY2FsLWFsaWduOiAuMDVlbTtcbiAgfVxufVxuXG4uc2xpZGVyX19pbmRpY2F0b3Ige1xuICBsaW5lLWhlaWdodDogMDtcblxuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBmbGV4OiAxIDEgMDtcbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiA0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG5cbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29udGV4dC1jaGFuZ2U7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjc1KTtcblxuICBvcGFjaXR5OiAuNTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICB3aWR0aDogNnJlbTtcbiAgICBoZWlnaHQ6IDZyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguOSk7XG4gIH1cbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLFxuICAmLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmU6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcblxuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnNsaWRlcl9fb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIHRvcDogMDtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlcjtcblxuICBmaWx0ZXI6IGJsdXIoMzZweCk7XG59XG5cbi5zbGlkZXJfX292ZXJsYXktaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWNvbnRleHQtY2hhbmdlO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuXG4gIG9wYWNpdHk6IDA7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgJi5hY3RpdmUge1xuICAgIG9wYWNpdHk6IC4wODtcbiAgfVxufVxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIEJVQkJMRVNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uYnViYmxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgd2lkdGg6IDE1cmVtO1xuICBoZWlnaHQ6IDE1cmVtO1xuICBwYWRkaW5nOiAycmVtO1xuXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuXG4uYnViYmxlX190aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gIEBleHRlbmQgJXRleHQtaDM7XG59XG5cbi5idWJibGVfX3RleHQge1xuICBjb2xvcjogJG11dGVkLWNvbG9yO1xuXG4gIEBleHRlbmQgJXRleHQtaDY7XG59XG5cbi8qKlxuICogRGlzcGxheSBtb2RpZmllcnNcbiAqL1xuXG4uYnViYmxlLS10aW55IHtcbiAgd2lkdGg6IDZyZW07XG4gIGhlaWdodDogNnJlbTtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4uYnViYmxlLS1zbWFsbCB7XG4gIHdpZHRoOiAxMXJlbTtcbiAgaGVpZ2h0OiAxMXJlbTtcbn1cblxuLmJ1YmJsZS0tbGFyZ2Uge1xuICB3aWR0aDogMTlyZW07XG4gIGhlaWdodDogMTlyZW07XG59XG5cbi5idWJibGUtLWh1Z2Uge1xuICB3aWR0aDogMjNyZW07XG4gIGhlaWdodDogMjNyZW07XG59XG5cbi5idWJibGVfX3RyYW5zcGFyZW50IHtcbiAgcGFkZGluZzogNHJlbTtcblxuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3ZlcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuXG4gIGJhY2tncm91bmQ6IHJnYmEoJHRleHQtY29sb3IsIC4yKTtcblxuICAuaWNvbiB7XG4gICAgZmlsbDogd2hpdGU7XG4gIH1cbn1cblxuLmJ1YmJsZS0tYmVuZWZpdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjUlLCAtMjUlKTtcblxuICAgIGJveC1zaGFkb3c6ICRtYXRlcmlhbC1zaGFkb3ctZWxldmF0ZWQ7XG4gIH1cbn1cblxuXG5cbi8qKlxuICogQWx0ZXJuYXRpdmUgY29sb3JzXG4gKi9cblxuLmJ1YmJsZS1jb2xsZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHJlbTtcblxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmJ1YmJsZS1jb2xsZWN0aW9uX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHdpZHRoOiAxOXJlbTtcbiAgaGVpZ2h0OiAxOXJlbTtcbiAgLmJ1YmJsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xOHJlbSwgLTE1cmVtKTtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTNyZW0sIDE1cmVtKTtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTJyZW0sIC04cmVtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBJTUFHRVxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pbWctY29udGFjdC10aHVtYm5haWwge1xuICB3aWR0aDogNnJlbTtcbiAgaGVpZ2h0OiA2cmVtO1xuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgd2lkdGg6IDEzcmVtO1xuICAgIGhlaWdodDogMTNyZW07XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgIHdpZHRoOiAxOHJlbTtcbiAgICBoZWlnaHQ6IDE4cmVtO1xuICB9XG59XG5cbi5yZXNwb25zaXZlLWltYWdlIHtcbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xuICB9XG59IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gIFBJTExcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ucGlsbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgcGFkZGluZzogLjNyZW0gMXJlbTtcblxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogMWVtO1xuICBiYWNrZ3JvdW5kOiAkY29sb3Itc3RyYXdiZXJyeTtcblxuICBAaW5jbHVkZSBmb250LXZhbHVlcygkZm9udC1zbWFsbCk7XG59XG5cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBBUlRJQ0xFXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmFydGljbGUge1xuICBtYXJnaW4tdG9wOiA1cmVtO1xufVxuXG5cblxuLmFydGljbGVfX2hlcm8ge1xuICBoZWlnaHQ6IDQwcmVtO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIC5yZXNwb25zaXZlLWltYWdlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIGhlaWdodDogNTByZW07XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgIGhlaWdodDogMzV2dztcbiAgfVxufVxuXG4vKipcbiAqIERpc3BsYXkgbW9kaWZpZXJzXG4gKi9cblxuXG5cblxuLyoqXG4gKiBBbHRlcm5hdGl2ZSBjb2xvcnNcbiAqL1xuXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgSU5QVVQgUkFOR0VcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4kbm91aS1jc3MtcHJlZml4OiAnaW5wdXQtcmFuZ2VfXyc7XG4kbm91aS1jc3MtcHJlZml4LW1vZGlmaWVyOiAnaW5wdXQtcmFuZ2UtLSc7XG5cbi8qIEZ1bmN0aW9uYWwgc3R5bGluZztcbiAqIFRoZXNlIHN0eWxlcyBhcmUgcmVxdWlyZWQgZm9yIG5vVWlTbGlkZXIgdG8gZnVuY3Rpb24uXG4gKiBZb3UgZG9uJ3QgbmVlZCB0byBjaGFuZ2UgdGhlc2UgcnVsZXMgdG8gYXBwbHkgeW91ciBkZXNpZ24uXG4gKi9cbi4jeyRub3VpLWNzcy1wcmVmaXh9dGFyZ2V0LFxuLiN7JG5vdWktY3NzLXByZWZpeH10YXJnZXQgKiB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLiN7JG5vdWktY3NzLXByZWZpeH10YXJnZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuLiN7JG5vdWktY3NzLXByZWZpeH1iYXNlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyAvKiBGaXggNDAxICovXG59XG4uI3skbm91aS1jc3MtcHJlZml4fWNvbm5lY3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbn1cbi4jeyRub3VpLWNzcy1wcmVmaXh9b3JpZ2luIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xufVxuLiN7JG5vdWktY3NzLXByZWZpeH1oYW5kbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cbi4jeyRub3VpLWNzcy1wcmVmaXgtbW9kaWZpZXJ9c3RhdGUtdGFwIC4jeyRub3VpLWNzcy1wcmVmaXh9Y29ubmVjdCxcbi4jeyRub3VpLWNzcy1wcmVmaXgtbW9kaWZpZXJ9c3RhdGUtdGFwIC4jeyRub3VpLWNzcy1wcmVmaXh9b3JpZ2luIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuM3MsIHJpZ2h0IDAuM3MsIGJvdHRvbSAwLjNzLCBsZWZ0IDAuM3M7XG59XG4uI3skbm91aS1jc3MtcHJlZml4LW1vZGlmaWVyfXN0YXRlLWRyYWcgKiB7XG4gIGN1cnNvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4vKiBQYWludGluZyBhbmQgcGVyZm9ybWFuY2U7XG4gKiBCcm93c2VycyBjYW4gcGFpbnQgaGFuZGxlcyBpbiB0aGVpciBvd24gbGF5ZXIuXG4gKi9cbi4jeyRub3VpLWNzcy1wcmVmaXh9YmFzZSxcbi4jeyRub3VpLWNzcy1wcmVmaXh9aGFuZGxlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG59XG5cbi8qIFNsaWRlciBzaXplIGFuZCBoYW5kbGUgcGxhY2VtZW50O1xuICovXG4uI3skbm91aS1jc3MtcHJlZml4LW1vZGlmaWVyfWhvcml6b250YWwge1xuICBoZWlnaHQ6IDFyZW07XG59XG4uI3skbm91aS1jc3MtcHJlZml4LW1vZGlmaWVyfWhvcml6b250YWwgLiN7JG5vdWktY3NzLXByZWZpeH1oYW5kbGUge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICBsZWZ0OiAtMXJlbTtcbiAgdG9wOiAtMXJlbTtcbn1cbi4jeyRub3VpLWNzcy1wcmVmaXgtbW9kaWZpZXJ9dmVydGljYWwge1xuICB3aWR0aDogMThweDtcbn1cbi4jeyRub3VpLWNzcy1wcmVmaXh9dmVydGljYWwgLiN7JG5vdWktY3NzLXByZWZpeH1oYW5kbGUge1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBsZWZ0OiAtNnB4O1xuICB0b3A6IC0xN3B4O1xufVxuXG4vKiBTdHlsaW5nO1xuICovXG4uI3skbm91aS1jc3MtcHJlZml4fXRhcmdldCB7XG4gIGJhY2tncm91bmQ6ICRhbHQtY29sb3ItbGlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWRlZmF1bHQ7XG59XG4uI3skbm91aS1jc3MtcHJlZml4fWNvbm5lY3Qge1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWRlZmF1bHQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgNDUwbXM7XG59XG5cbi8qIEhhbmRsZXMgYW5kIGN1cnNvcnM7XG4gKi9cbi4jeyRub3VpLWNzcy1wcmVmaXh9ZHJhZ2dhYmxlIHtcbiAgY3Vyc29yOiBldy1yZXNpemU7XG59XG4uI3skbm91aS1jc3MtcHJlZml4LW1vZGlmaWVyfXZlcnRpY2FsIC4jeyRub3VpLWNzcy1wcmVmaXh9ZHJhZ2dhYmxlIHtcbiAgY3Vyc29yOiBucy1yZXNpemU7XG59XG4uI3skbm91aS1jc3MtcHJlZml4fWhhbmRsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRhbHQtY29sb3ItbGlnaHRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgLy8gYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoYmxhY2ssMC4xKTtcbiAgYm94LXNoYWRvdzogJG1hdGVyaWFsLXNoYWRvdy1kZWZhdWx0O1xuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3ZlcjtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAkYWx0LWNvbG9yO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICB0b3A6IHJlbSg3KTtcbiAgICBsZWZ0OiByZW0oNyk7XG4gICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb24taG92ZXI7XG4gIH1cbiAgXG59XG4uI3skbm91aS1jc3MtcHJlZml4fWFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6ICRtYXRlcmlhbC1zaGFkb3ctZWxldmF0ZWQ7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgJjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICB9XG59XG5cblxuXG4vKiBEaXNhYmxlZCBzdGF0ZTtcbiAqL1xuXG5bZGlzYWJsZWRdIC4jeyRub3VpLWNzcy1wcmVmaXh9Y29ubmVjdCB7XG4gIGJhY2tncm91bmQ6ICNCOEI4Qjg7XG59XG5bZGlzYWJsZWRdLiN7JG5vdWktY3NzLXByZWZpeH10YXJnZXQsXG5bZGlzYWJsZWRdLiN7JG5vdWktY3NzLXByZWZpeH1oYW5kbGUsXG5bZGlzYWJsZWRdIC4jeyRub3VpLWNzcy1wcmVmaXh9aGFuZGxlIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuXG5cbi8qIEJhc2U7XG4gKlxuICovXG4uI3skbm91aS1jc3MtcHJlZml4fXBpcHMsXG4uI3skbm91aS1jc3MtcHJlZml4fXBpcHMgKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uI3skbm91aS1jc3MtcHJlZml4fXBpcHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4vKiBWYWx1ZXM7XG4gKlxuICovXG4uI3skbm91aS1jc3MtcHJlZml4fXZhbHVlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uI3skbm91aS1jc3MtcHJlZml4fXZhbHVlLXN1YiB7XG4gIGNvbG9yOiAjY2NjO1xuICBmb250LXNpemU6IDEwcHg7XG59XG5cbi8qIE1hcmtpbmdzO1xuICpcbiAqL1xuLiN7JG5vdWktY3NzLXByZWZpeH1tYXJrZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICNDQ0M7XG59XG4uI3skbm91aS1jc3MtcHJlZml4fW1hcmtlci1zdWIge1xuICBiYWNrZ3JvdW5kOiAjQUFBO1xufVxuLiN7JG5vdWktY3NzLXByZWZpeH1tYXJrZXItbGFyZ2Uge1xuICBiYWNrZ3JvdW5kOiAjQUFBO1xufVxuXG4vKiBIb3Jpem9udGFsIGxheW91dDtcbiAqXG4gKi9cbi4jeyRub3VpLWNzcy1wcmVmaXh9cGlwcy1ob3Jpem9udGFsIHtcbiAgcGFkZGluZzogMTBweCAwO1xuICBoZWlnaHQ6IDgwcHg7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uI3skbm91aS1jc3MtcHJlZml4fXZhbHVlLWhvcml6b250YWwge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsNTAlLDApO1xufVxuXG4uI3skbm91aS1jc3MtcHJlZml4fW1hcmtlci1ob3Jpem9udGFsLiN7JG5vdWktY3NzLXByZWZpeH1tYXJrZXIge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiA1cHg7XG59XG4uI3skbm91aS1jc3MtcHJlZml4fW1hcmtlci1ob3Jpem9udGFsLiN7JG5vdWktY3NzLXByZWZpeH1tYXJrZXItc3ViIHtcbiAgaGVpZ2h0OiAxMHB4O1xufVxuLiN7JG5vdWktY3NzLXByZWZpeH1tYXJrZXItaG9yaXpvbnRhbC4jeyRub3VpLWNzcy1wcmVmaXh9bWFya2VyLWxhcmdlIHtcbiAgaGVpZ2h0OiAxNXB4O1xufVxuXG4vKiBWZXJ0aWNhbCBsYXlvdXQ7XG4gKlxuICovXG4uI3skbm91aS1jc3MtcHJlZml4fXBpcHMtdmVydGljYWwge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xufVxuLiN7JG5vdWktY3NzLXByZWZpeH12YWx1ZS12ZXJ0aWNhbCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCw1MCUsMCk7XG4gIHBhZGRpbmctbGVmdDogMjVweDtcbn1cblxuLiN7JG5vdWktY3NzLXByZWZpeH1tYXJrZXItdmVydGljYWwuI3skbm91aS1jc3MtcHJlZml4fW1hcmtlciB7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuLiN7JG5vdWktY3NzLXByZWZpeH1tYXJrZXItdmVydGljYWwuI3skbm91aS1jc3MtcHJlZml4fW1hcmtlci1zdWIge1xuICB3aWR0aDogMTBweDtcbn1cbi4jeyRub3VpLWNzcy1wcmVmaXh9bWFya2VyLXZlcnRpY2FsLiN7JG5vdWktY3NzLXByZWZpeH1tYXJrZXItbGFyZ2Uge1xuICB3aWR0aDogMTVweDtcbn1cblxuLiN7JG5vdWktY3NzLXByZWZpeH10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q5RDlEOTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLiN7JG5vdWktY3NzLXByZWZpeC1tb2RpZmllcn1ob3Jpem9udGFsIC4jeyRub3VpLWNzcy1wcmVmaXh9dG9vbHRpcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgbGVmdDogNTAlO1xuICAgIGJvdHRvbTogMTIwJTtcbn1cbi4jeyRub3VpLWNzcy1wcmVmaXgtbW9kaWZpZXJ9dmVydGljYWwgLiN7JG5vdWktY3NzLXByZWZpeH10b29sdGlwIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMTIwJTtcbn0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgU0VBUkNIQk9YXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuXG5cbi5uby1iYWNrZHJvcGZpbHRlciAuc2VjdGlvbi0tbmF2LWdyb3VwIHtcbiAgLmItZ3JvdXAgJiB7XG4gICAgYmFja2dyb3VuZDogcmdiYSh3aGl0ZSwgMC44KTtcbiAgfVxufVxuXG4uc2VhcmNoYm94LWd1dHRlciB7XG4gIHBhZGRpbmc6ICRndXR0ZXIteHM7XG4gIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICBwYWRkaW5nOiAzcmVtO1xuICB9XG59XG5cbi5zZWN0aW9uLS1zZWFyY2hib3gge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcGFkZGluZzogMnJlbSAwO1xuICAuc2VjdGlvbl9fYm9keSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBAaW5jbHVkZSBtZWRpYSgneHMnLCAkYnJlYWtwb2ludHMtZGVzYykge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaGJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi10b3A6IC05cmVtICFpbXBvcnRhbnQ7XG4gIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICBtYXJnaW4tdG9wOiAtMTdyZW0gIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgbWFyZ2luLXRvcDogLTE5cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnLXhsJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgIG1hcmdpbi10b3A6IC0yMXJlbSAhaW1wb3J0YW50O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICBtYXJnaW4tdG9wOiAtMjRyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2VhcmNoYm94X190YWJzIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLnNlYXJjaGJveF9fdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBvcmRlcjogMztcbiAgZm9udC1zaXplOiByZW0obWFwLWdldCgkcmh5dGhtLXNpemUteHh4cywgc2l6ZSkpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIEBpbmNsdWRlIG1lZGlhKCd4eHMnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG4gICAgZm9udC1zaXplOiByZW0obWFwLWdldCgkcmh5dGhtLXNpemUteHMsIHNpemUpKTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgb3JkZXI6IDI7XG4gICAgZmxleDogMCAwIDY2JTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogcmVtKG1hcC1nZXQoJHJoeXRobS1zaXplLXMsIHNpemUpKTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgb3JkZXI6IDA7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcteGwnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGZsZXg6IDAgMCBwZXJjZW50YWdlKDEvMyk7XG4gIH1cbiAgc3BhbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgIEBpbmNsdWRlIG1lZGlhKCd4eHMnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG4gICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICB9XG4gIH1cbiAgLmNvdW50LCAudGl0bGUge1xuICAgIC5iLWdyb3VwICYge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbiAgfVxuICAuY291bnQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiA0cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBAaW5jbHVkZSBtZWRpYSgneHhzJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgICAgZm9udC1zaXplOiA1LjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogNXJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgbGluZS1oZWlnaHQ6IDZyZW07XG4gICAgICBmb250LXNpemU6IHJlbSg1NCk7XG4gICAgfVxuICB9XG4gIC50aXRsZSB7XG4gICAgLy8gQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIC8vICAgZm9udC1zaXplOiByZW0obWFwLWdldCgkcmh5dGhtLXNpemUtbSwgc2l6ZSkpO1xuICAgIC8vIH1cbiAgICAvLyBAaW5jbHVkZSBtZWRpYSgnbGcteGwnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG4gICAgLy8gICBmb250LXNpemU6IHJlbShtYXAtZ2V0KCRyaHl0aG0tc2l6ZS1sLCBzaXplKSk7XG4gICAgLy8gICBsaW5lLWhlaWdodDogNHJlbTtcbiAgICAvLyB9XG4gICAgLy8gQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgIC8vICAgZm9udC1zaXplOiByZW0obWFwLWdldCgkcmh5dGhtLXNpemUteGwsIHNpemUpKTtcbiAgICAvLyAgIGxpbmUtaGVpZ2h0OiA1cmVtO1xuICAgIC8vIH1cbiAgfVxuICAuc3VidGV4dCB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcQVwiO1xuICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB9XG4gICAgLy8gQGluY2x1ZGUgbWVkaWEoJ3NtJywgJGJyZWFrcG9pbnRzLWRlc2MpIHtcbiAgICAvLyAgIGZvbnQtc2l6ZTogcmVtKG1hcC1nZXQoJHJoeXRobS1zaXplLXhzLCBzaXplKSk7XG4gICAgLy8gfVxuICAgIC8vIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICAvLyAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvLyB9XG4gICAgLy8gQGluY2x1ZGUgbWVkaWEoJ2xnLXhsJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgIC8vICAgbGluZS1oZWlnaHQ6IDRyZW07XG4gICAgLy8gfVxuICAgIC5iLWdyb3VwICYge1xuICAgICAgY29sb3I6IHJnYmEod2hpdGUsMC45KTtcbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaGJveF9faGVhZGVyIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWRlZmF1bHQ7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgfVxuICAuYi1ncm91cCAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtY29sb3I7XG4gIH1cbiAgLmItb3JnYW5pemF0aW9uICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHQtY29sb3ItbGlnaHRlcjtcbiAgICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKHdoaXRlLCAwLjk1KTtcbiAgICB9XG4gIH1cblxuICAuY3NzcG9zaXRpb25zdGlja3kgJiB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IC04cmVtO1xuICAgIHotaW5kZXg6ICR6LWluZGV4LXNlYXJjaGJveF9faGVhZGVyO1xuICAgIEBpbmNsdWRlIG1lZGlhKCd4eHMnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG4gICAgICB0b3A6IC0xMHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgdG9wOiAtMnJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgICAgdG9wOiAwcmVtO1xuICAgIH1cbiAgfVxufVxuXG5cbi5zZWFyY2hib3hfX2Zvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uc2VhcmNoYm94X19maWVsZCB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICBmbGV4OiAxIDAgNDAlO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBmbGV4OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnLXhsJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgIGZsZXg6IDE7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICB9XG4gIGxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA0cmVtO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgQGluY2x1ZGUgZm9udC12YWx1ZXMoJGZvbnQtc21hbGwsIGZvcmNlKTtcbiAgICBAaW5jbHVkZSBtZWRpYSgneHhzJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgICAgd2lkdGg6IDZyZW07XG4gICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgfVxuICAgIC5iLWdyb3VwICYge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbiAgfVxuICBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiByZW0oNikgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDYpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3h4cycsICRicmVha3BvaW50cy1jdXN0b20pIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0cmVtICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDZyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ2xnLXhsJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbSgxNCkgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTQpICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5iLWdyb3VwICYge1xuICAgICAgYmFja2dyb3VuZDogJGJyYW5kLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEod2hpdGUsIDAuNSkgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG4gICAgLmItb3JnYW5pemF0aW9uICYge1xuICAgICAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGFsdC1jb2xvci1saWdodCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAuYi1ncm91cCAmIHtcbiAgICAgICAgY29sb3I6IHJnYmEod2hpdGUsIDAuOCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6Zm9jdXMge1xuICAgICAgLmItZ3JvdXAgJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSh3aGl0ZSwwLjgpICFpbXBvcnRhbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKCRjb2xvci1taW50LWRhcmssMC41KSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLmItb3JnYW5pemF0aW9uICYge1xuICAgICAgICBib3JkZXItY29sb3I6ICRhbHQtY29sb3IgIWltcG9ydGFudDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoJGFsdC1jb2xvci1kYXJrZXIsMC4wNSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmljb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAuYi1ncm91cCAmIHtcbiAgICAgIGZpbGw6IHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoYm94X19maWVsZC0tdGVybSB7XG4gIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuLnNlYXJjaGJveF9fZmllbGQtLWxvY2F0aW9uIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICB9XG59XG5cbi5zZWFyY2hib3hfX2J1dHRvbiB7XG4gIG9yZGVyOiA0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIGZsZXg6IDE7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgIGZsZXg6IDA7XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ2xnLXhsJywgJGJyZWFrcG9pbnRzLWN1c3RvbSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5idG4ge1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IHJlbSg3KSAxcmVtO1xuICAgIGZvbnQtc2l6ZTogcmVtKG1hcC1nZXQoJHJoeXRobS1zaXplLXh4cywgc2l6ZSkpO1xuICAgIEBpbmNsdWRlIG1lZGlhKCd4eHMnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG4gICAgICBmb250LXNpemU6IHJlbShtYXAtZ2V0KCRyaHl0aG0tc2l6ZS14cywgc2l6ZSkpO1xuICAgICAgbGluZS1oZWlnaHQ6IDRyZW07XG4gICAgICBwYWRkaW5nOiAkYnRuLXBhZGRpbmctdiAkYnRuLXBhZGRpbmctaDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnbGcteGwnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtKDE1KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgICBmb250LXNpemU6IHJlbShtYXAtZ2V0KCRyaHl0aG0tc2l6ZS1zLCBzaXplKSk7XG4gICAgfVxuICAgIC5iLWdyb3VwICYge1xuICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBjb2xvcjogJGJyYW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiB3aGl0ZTtcbiAgICAgIC8vIGJveC1zaGFkb3c6IDAgMnB4IDBweCByZ2JhKCR0ZXh0LWNvbG9yLDAuMSk7XG4gICAgfVxuICAgIC5iLW9yZ2FuaXphdGlvbiAmIHtcbiAgICAgIC8vIGJveC1zaGFkb3c6IDAgMnB4IDBweCByZ2JhKCR0ZXh0LWNvbG9yLDAuMSk7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2hib3hfX2ZpbHRlciB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGFsdC1jb2xvci1saWdodDtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogcmVtKDE1KTtcbiAgcGFkZGluZy1ib3R0b206IHJlbSgxNSk7XG4gIEBpbmNsdWRlIG1lZGlhKCd4cycsICRicmVha3BvaW50cy1kZXNjKSB7XG4gICAgcGFkZGluZzogMDtcbiAgICAuc2VhcmNoYm94X19maWx0ZXItbGlzdCB7XG4gICAgICAuc2VhcmNoYm94X19maWx0ZXItaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKHdoaXRlLDApLCByZ2JhKHdoaXRlLDAuOSkgNjAlKTtcbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaGJveF9fZmlsdGVyLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi5zZWFyY2hib3hfX2ZpbHRlci1pdGVtIHtcbiAgLmJ0biB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy10b3A6IHJlbSgzKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDMpO1xuICAgIHBhZGRpbmctbGVmdDogMS44cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICAvLyBjb2xvcjogJGFsdC1jb2xvci1kYXJrO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWhvdmVyO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcblxuICAgICY6aG92ZXIge1xuICAgICAgLy8gYm9yZGVyLWNvbG9yOiAkYWx0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaTXCI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjRlbTtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IC0uMTI1ZW07XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1jb250ZXh0LWNoYW5nZTtcbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgICAgLy8gYm9yZGVyLWNvbG9yOiAkYWx0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZDogJGFsdC1jb2xvci1saWdodGVyO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpIHRyYW5zbGF0ZVkoMC41cHgpO1xuICAgICAgICAvLyBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2hib3hfX2ZpbHRlci10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcteGwnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZsZXg6IDAgMCBwZXJjZW50YWdlKDEvMyk7XG4gIH1cbn1cblxuLnNlYXJjaGJveF9fZmlsdGVyLWRldGFpbCB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBAaW5jbHVkZSBtZWRpYSgnbGcteGwnLCAkYnJlYWtwb2ludHMtY3VzdG9tKSB7XG5cbiAgfVxufVxuXG5cblxuXG4uZmlsdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5cbi5maWx0ZXJfX2ljb24ge1xuICB3aWR0aDogOHJlbTtcbiAgaGVpZ2h0OiA4cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAkYWx0LWNvbG9yLWxpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBwYWRkaW5nOiA0cmVtO1xuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgd2lkdGg6IDE2cmVtO1xuICAgIGhlaWdodDogMTZyZW07XG4gIH1cbiAgc3ZnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmZpbHRlcl9fdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5kaWZmZXJlbnQge1xuICAuc2VhcmNoYm94IHtcbiAgICBtYXJnaW4tdG9wOiAtOXJlbSAhaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xMHJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi0tc2VhcmNoYm94IHtcbiAgICAuc2VjdGlvbl9fYm9keSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cbn0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgVEVBU0VSIE9SR0FOSVpBVElPTlxuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbkBrZXlmcmFtZXMgcm93MSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgfVxufVxuXG4udGVhc2VyLW9yZ2FuaXphdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gIGhlaWdodDogMTZyZW07XG4gIG1hcmdpbi10b3A6IDRyZW07XG5cbiAgdHJhbnNpdGlvbjogMS45cyBjdWJpYy1iZXppZXIoLjEyLCAuNDMsIC4zOCwgMSk7XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgaGVpZ2h0OiAyMXJlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgaGVpZ2h0OiAyNnJlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICBoZWlnaHQ6IDMycmVtO1xuICAgIG1hcmdpbjogMTJyZW0gMCAxNnJlbTtcblxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiBhdXRvO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCd4bCcpIHtcbiAgICBoZWlnaHQ6IDM2cmVtO1xuICB9XG59XG5cbi8qKlxuICogRWxlbWVudHNcbiAqL1xuXG4udGVhc2VyLW9yZ2FuaXphdGlvbl9fcm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDFyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIGxlZnQ6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgbGVmdDogNC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQuNXJlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gICY6bnRoLWNoaWxkKDEpIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnc20nKSB7XG4gICAgICBsZWZ0OiAzcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICBsZWZ0OiA0LjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAgIHRvcDogMHJlbTtcbiAgICAgIGxlZnQ6IDByZW07XG4gICAgfVxuICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19pdGVtIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODAlKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblxuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOm50aC1jaGlsZCgyKSB7XG4gICAgdG9wOiA4cmVtO1xuICAgIGxlZnQ6IDhyZW07XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgICAgdG9wOiAxMHJlbTtcbiAgICAgIGxlZnQ6IDEycmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgnbWQnKSB7XG4gICAgICB0b3A6IDEzcmVtO1xuICAgICAgbGVmdDogMTZyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKCdsZycpIHtcbiAgICAgIHRvcDogMThyZW07XG4gICAgICBsZWZ0OiAwcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgneGwnKSB7XG4gICAgICB0b3A6IDIwcmVtO1xuICAgIH1cbiAgICAudGVhc2VyLW9yZ2FuaXphdGlvbl9faXRlbSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogMDtcblxuICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoODAlKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuXG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi50ZWFzZXItb3JnYW5pemF0aW9uX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgd2lkdGg6IDEycmVtO1xuICBoZWlnaHQ6IDZyZW07XG4gIG1hcmdpbjogMCAoJGd1dHRlci14cyAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyLXhzO1xuXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBib3gtc2hhZG93OiAkbWF0ZXJpYWwtc2hhZG93LWRlZmF1bHQ7XG5cbiAgZmxleDogMCAwIDEycmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgQGluY2x1ZGUgbWVkaWEoJ3NtJykge1xuICAgIGhlaWdodDogOHJlbTtcbiAgICB3aWR0aDogMTZyZW07XG4gICAgZmxleDogMCAwIDE2cmVtO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCdtZCcpIHtcbiAgICBtYXJnaW46IDAgMS41cmVtO1xuICAgIGhlaWdodDogMTByZW07XG4gICAgd2lkdGg6IDIwcmVtO1xuICAgIGZsZXg6IDAgMCAyMHJlbTtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgd2lkdGg6IDI4cmVtO1xuICAgIGhlaWdodDogMTRyZW07XG4gICAgbWFyZ2luOiAwIDJyZW07XG5cbiAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3ZlcjtcblxuICAgIGZsZXg6IDAgMCAyOHJlbTtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgICAudGVhc2VyLW9yZ2FuaXphdGlvbjpob3ZlciAmIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgIC50ZWFzZXItb3JnYW5pemF0aW9uX19sb2dvLS1jb2xvciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgLnRlYXNlci1vcmdhbml6YXRpb25fX2xvZ28tLWNvbG9yIHtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBjb250ZW50OiBhdHRyKGRhdGEtbmFtZSk7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1ob3Zlci1ib3VuY2U7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIG9wYWNpdHk6IDA7XG5cbiAgICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMnJlbTtcbiAgICAgIGxlZnQ6IC0ycmVtO1xuICAgICAgcmlnaHQ6IC0ycmVtO1xuICAgICAgYm90dG9tOiAtMnJlbTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJ3hsJykge1xuICAgIHdpZHRoOiAzMnJlbTtcbiAgICBoZWlnaHQ6IDE2cmVtO1xuXG4gICAgZmxleDogMCAwIDMycmVtO1xuICB9XG59XG5cbi50ZWFzZXItb3JnYW5pemF0aW9uX19sb2dvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDFyZW07XG4gIGxlZnQ6IDJyZW07XG4gIHJpZ2h0OiAycmVtO1xuICBib3R0b206IDFyZW07XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBAaW5jbHVkZSBtZWRpYSgnbGcnKSB7XG4gICAgdG9wOiAycmVtO1xuICAgIGxlZnQ6IDVyZW07XG4gICAgcmlnaHQ6IDVyZW07XG4gICAgYm90dG9tOiAycmVtO1xuICB9XG59XG5cbi50ZWFzZXItb3JnYW5pemF0aW9uX19sb2dvLS1jb2xvciB7XG4gIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWhvdmVyO1xufVxuXG4udGVhc2VyLW9yZ2FuaXphdGlvbl9fbG9nby0tbW9ub2Nocm9tZSB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICB6LWluZGV4OiAtMTtcbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBGT09URVJcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uZm9vdGVyLWxpbmtzIHtcbiAgdWwge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tZ2FwOiAkc3BhY2luZy11bml0LWRlZmF1bHQ7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ2xnJykge1xuICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICBEUlVQQUwgU1BFQ0lGSUNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4jYmxvY2stZWt3LWxvY2FsLXRhc2tzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkei1pbmRleC1sb2NhbC10YXNrcztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuXG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHVsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgbGkge1xuICAgIGZsb2F0OiByaWdodDtcblxuICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuXG4gICAgQGluY2x1ZGUgZm9udC12YWx1ZXMoJGZvbnQtc21hbGwpO1xuICB9XG4gIGEge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5sYXlvdXQtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBhcmFncmFwaC0tdHlwZS0tY29tcGFuaWVzIGgyIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ21kJykge1xuICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gIH1cbn1cbiIsIi5yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm92ZXJmbG93LXZpc2libGUge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4udmlzdWFsbHktaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxcHg7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuLnBpbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnBvc2l0aW9uLXN0YXRpYyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi5waW4tLXQtciB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5waW4tLWItbCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLnBpbi0tYi1yIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbn1cblxuLnBpbi0tY2VudGVyLW9mZiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDI1JSwtMjUlKTtcbn1cblxuLmZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZmxleC0tY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmZsZXgtaXRlbS0tZ3Jvdy0xIHtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4uc20tZmxleC0tcmV2ZXJzZSB7XG4gIEBpbmNsdWRlIG1lZGlhKCdzbScpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cbiJdfQ== */
