@import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,300,600,700);
@import url("../../../../bower_components/bootstrap/dist/css/bootstrap.min.css");
@import url("../../../../bower_components/font-awesome/css/font-awesome.min.css");
@import url("../../../../bower_components/jasny-bootstrap/dist/css/jasny-bootstrap.min.css");
@import url("../../../../bower_components/simplelightbox/dist/simplelightbox.min.css");
/* google webfont */
@import url(https://fonts.googleapis.com/css?family=Oswald:400,300,700);
/* google webfont */
body {
  color: #333; }

body {
  color: #444444;
  font-family: "Source Sans Pro", sans-serif; }

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5 {
  font-family: "Source Sans Pro", sans-serif; }

/*@import "font-awesome";
@import "bootstrap";
@import "jasny-bootstrap";*/
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device 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/10/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 of focused elements when they are also in an
 * active/hover state.
 */
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.
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */ }

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

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite; }

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s; }

.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: .75s;
  animation-duration: .75s; }

.animated.flipOutX,
.animated.flipOutY {
  -webkit-animation-duration: .75s;
  animation-duration: .75s; }

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom; }

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }

@keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }

.flash {
  -webkit-animation-name: flash;
  animation-name: flash; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse; }

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand; }

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

.shake {
  -webkit-animation-name: shake;
  animation-name: shake; }

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing; }

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.tada {
  -webkit-animation-name: tada;
  animation-name: tada; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: none;
    transform: none; } }

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble; }

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39063deg) skewY(0.39063deg);
    transform: skewX(0.39063deg) skewY(0.39063deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39063deg) skewY(0.39063deg);
    transform: skewX(0.39063deg) skewY(0.39063deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center; }

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn; }

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown; }

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft; }

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight; }

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp; }

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut; }

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown; }

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft; }

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight; }

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp; }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn; }

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown; }

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig; }

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft; }

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig; }

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight; }

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig; }

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp; }

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig; }

@-webkit-keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut; }

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

@keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown; }

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

@keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig; }

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft; }

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

@keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig; }

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight; }

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

@keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig; }

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

@keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp; }

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

@keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig; }

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip; }

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX; }

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY; }

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY; }

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out; }

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

@keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in; }

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn; }

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft; }

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight; }

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft; }

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight; }

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut; }

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft; }

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight; }

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft; }

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight; }

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }

@keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut; }

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn; }

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown; }

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft; }

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight; }

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp; }

@-webkit-keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }

@keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut; }

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown; }

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft; }

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight; }

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp; }

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown; }

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft; }

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight; }

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp; }

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown; }

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft; }

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight; }

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp; }

/* basic scrollbar styling */
/* vertical scrollbar */
.mCSB_container {
  width: auto;
  margin-right: 30px;
  overflow: hidden; }
  .mCSB_container.mCS_no_scrollbar {
    margin-right: 0; }

.mCS_disabled > .mCustomScrollBox > .mCSB_container.mCS_no_scrollbar, .mCS_destroyed > .mCustomScrollBox > .mCSB_container.mCS_no_scrollbar {
  margin-right: 30px; }

.mCustomScrollBox > .mCSB_scrollTools {
  width: 16px;
  height: 100%;
  top: 0;
  right: 0; }

.mCSB_scrollTools .mCSB_draggerContainer {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  height: auto; }

.mCSB_scrollTools a + .mCSB_draggerContainer {
  margin: 20px 0; }

.mCSB_scrollTools .mCSB_draggerRail {
  width: 2px;
  height: 100%;
  margin: 0 auto;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px; }

.mCSB_scrollTools .mCSB_dragger {
  cursor: pointer;
  width: 100%;
  height: 30px; }
  .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    width: 4px;
    height: 100%;
    margin: 0 auto;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    text-align: center; }

.mCSB_scrollTools .mCSB_buttonUp {
  display: block;
  position: relative;
  height: 20px;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer; }

.mCSB_scrollTools .mCSB_buttonDown {
  display: block;
  position: relative;
  height: 20px;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer;
  top: 100%;
  margin-top: -40px; }

/* horizontal scrollbar */
.mCSB_horizontal > .mCSB_container {
  height: auto;
  margin-right: 0;
  margin-bottom: 30px;
  overflow: hidden; }
  .mCSB_horizontal > .mCSB_container.mCS_no_scrollbar {
    margin-bottom: 0; }

.mCS_disabled > .mCSB_horizontal > .mCSB_container.mCS_no_scrollbar, .mCS_destroyed > .mCSB_horizontal > .mCSB_container.mCS_no_scrollbar {
  margin-right: 0;
  margin-bottom: 30px; }

.mCSB_horizontal.mCustomScrollBox > .mCSB_scrollTools {
  width: 100%;
  height: 16px;
  top: auto;
  right: auto;
  bottom: 0;
  left: 0;
  overflow: hidden; }

.mCSB_horizontal > .mCSB_scrollTools a + .mCSB_draggerContainer {
  margin: 0 20px; }

.mCSB_horizontal > .mCSB_scrollTools .mCSB_draggerRail {
  width: 100%;
  height: 2px;
  margin: 7px 0;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px; }

.mCSB_horizontal > .mCSB_scrollTools .mCSB_dragger {
  width: 30px;
  height: 100%; }
  .mCSB_horizontal > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    width: 100%;
    height: 4px;
    margin: 6px auto;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px; }

.mCSB_horizontal > .mCSB_scrollTools .mCSB_buttonLeft {
  display: block;
  position: relative;
  width: 20px;
  height: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer;
  float: left; }

.mCSB_horizontal > .mCSB_scrollTools .mCSB_buttonRight {
  display: block;
  position: relative;
  width: 20px;
  height: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer;
  float: left;
  margin-left: -40px;
  float: right; }

.mCustomScrollBox {
  -ms-touch-action: none;
  /*MSPointer events - direct all pointer events to js*/ }
  .mCustomScrollBox > .mCSB_scrollTools {
    opacity: 0.75;
    filter: "alpha(opacity=75)";
    -ms-filter: "alpha(opacity=75)";
    /* old ie */ }
  .mCustomScrollBox:hover > .mCSB_scrollTools {
    opacity: 1;
    filter: "alpha(opacity=100)";
    -ms-filter: "alpha(opacity=100)";
    /* old ie */ }

/* default scrollbar colors and backgrounds (default theme) */
.mCSB_scrollTools .mCSB_draggerRail {
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.4);
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)";
  /* old ie */ }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background: #fff;
  /* rgba fallback */
  background: rgba(255, 255, 255, 0.75);
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)";
  /* old ie */ }

.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background: rgba(255, 255, 255, 0.85);
  filter: "alpha(opacity=85)";
  -ms-filter: "alpha(opacity=85)";
  /* old ie */ }

.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background: rgba(255, 255, 255, 0.9);
  filter: "alpha(opacity=90)";
  -ms-filter: "alpha(opacity=90)";
  /* old ie */ }

.mCSB_scrollTools .mCSB_buttonUp, .mCSB_scrollTools .mCSB_buttonDown, .mCSB_scrollTools .mCSB_buttonLeft, .mCSB_scrollTools .mCSB_buttonRight {
  background-image: url(mCSB_buttons.png);
  background-repeat: no-repeat;
  opacity: 0.4;
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)";
  /* old ie */ }

.mCSB_scrollTools .mCSB_buttonUp {
  background-position: 0 0;
  /* 
    sprites locations are 0 0/-16px 0/-32px 0/-48px 0 (light) and -80px 0/-96px 0/-112px 0/-128px 0 (dark) 
    */ }

.mCSB_scrollTools .mCSB_buttonDown {
  background-position: 0 -20px;
  /* 
    sprites locations are 0 -20px/-16px -20px/-32px -20px/-48px -20px (light) and -80px -20px/-96px -20px/-112px -20px/-128px -20px (dark) 
    */ }

.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: 0 -40px;
  /* 
    sprites locations are 0 -40px/-20px -40px/-40px -40px/-60px -40px (light) and -80px -40px/-100px -40px/-120px -40px/-140px -40px (dark) 
    */ }

.mCSB_scrollTools .mCSB_buttonRight {
  background-position: 0 -56px;
  /* 
    sprites locations are 0 -56px/-20px -56px/-40px -56px/-60px -56px (light) and -80px -56px/-100px -56px/-120px -56px/-140px -56px (dark) 
    */ }

.mCSB_scrollTools .mCSB_buttonUp:hover, .mCSB_scrollTools .mCSB_buttonDown:hover, .mCSB_scrollTools .mCSB_buttonLeft:hover, .mCSB_scrollTools .mCSB_buttonRight:hover {
  opacity: 0.75;
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)";
  /* old ie */ }

.mCSB_scrollTools .mCSB_buttonUp:active, .mCSB_scrollTools .mCSB_buttonDown:active, .mCSB_scrollTools .mCSB_buttonLeft:active, .mCSB_scrollTools .mCSB_buttonRight:active {
  opacity: 0.9;
  filter: "alpha(opacity=90)";
  -ms-filter: "alpha(opacity=90)";
  /* old ie */ }

/*scrollbar themes*/
/*dark (dark colored scrollbar)*/
.mCS-dark > .mCSB_scrollTools .mCSB_draggerRail {
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.15); }

.mCS-dark > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.75); }

.mCS-dark > .mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.85); }

.mCS-dark > .mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCS-dark > .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.9); }

.mCS-dark > .mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px 0; }

.mCS-dark > .mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -20px; }

.mCS-dark > .mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -40px; }

.mCS-dark > .mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -56px; }

/*light-2*/
.mCS-light-2 > .mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background: #fff;
  /* rgba fallback */
  background: rgba(255, 255, 255, 0.1);
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px; }

.mCS-light-2 > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 4px;
  background: #fff;
  /* rgba fallback */
  background: rgba(255, 255, 255, 0.75);
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px; }

.mCS-light-2.mCSB_horizontal > .mCSB_scrollTools .mCSB_draggerRail {
  width: 100%;
  height: 4px;
  margin: 6px 0; }

.mCS-light-2.mCSB_horizontal > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto; }

.mCS-light-2 > .mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background: rgba(255, 255, 255, 0.85); }

.mCS-light-2 > .mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCS-light-2 > .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background: rgba(255, 255, 255, 0.9); }

.mCS-light-2 > .mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px 0; }

.mCS-light-2 > .mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -20px; }

.mCS-light-2 > .mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -40px; }

.mCS-light-2 > .mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -56px; }

/*dark-2*/
.mCS-dark-2 > .mCSB_scrollTools .mCSB_draggerRail {
  width: 8px;
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.1);
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px; }

.mCS-dark-2 > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 8px;
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.75);
  -webkit-border-radius: 1px;
  -moz-border-radius: 1px;
  border-radius: 1px; }

.mCS-dark-2.mCSB_horizontal > .mCSB_scrollTools .mCSB_draggerRail {
  width: 100%;
  height: 8px;
  margin: 6px 0; }

.mCS-dark-2.mCSB_horizontal > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 8px;
  margin: 6px auto; }

.mCS-dark-2 > .mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.85); }

.mCS-dark-2 > .mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCS-dark-2 > .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.9); }

.mCS-dark-2 > .mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px 0; }

.mCS-dark-2 > .mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -20px; }

.mCS-dark-2 > .mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -40px; }

.mCS-dark-2 > .mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -56px; }

/*light-thick*/
.mCS-light-thick > .mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background: #fff;
  /* rgba fallback */
  background: rgba(255, 255, 255, 0.1);
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px; }

.mCS-light-thick > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  background: #fff;
  /* rgba fallback */
  background: rgba(255, 255, 255, 0.75);
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px; }

.mCS-light-thick.mCSB_horizontal > .mCSB_scrollTools .mCSB_draggerRail {
  width: 100%;
  height: 4px;
  margin: 6px 0; }

.mCS-light-thick.mCSB_horizontal > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 6px;
  margin: 5px auto; }

.mCS-light-thick > .mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background: rgba(255, 255, 255, 0.85); }

.mCS-light-thick > .mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCS-light-thick > .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background: rgba(255, 255, 255, 0.9); }

.mCS-light-thick > .mCSB_scrollTools .mCSB_buttonUp {
  background-position: -16px 0; }

.mCS-light-thick > .mCSB_scrollTools .mCSB_buttonDown {
  background-position: -16px -20px; }

.mCS-light-thick > .mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -20px -40px; }

.mCS-light-thick > .mCSB_scrollTools .mCSB_buttonRight {
  background-position: -20px -56px; }

/*dark-thick*/
.mCS-dark-thick > .mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.1);
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px; }

.mCS-dark-thick > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.75);
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px; }

.mCS-dark-thick.mCSB_horizontal > .mCSB_scrollTools .mCSB_draggerRail {
  width: 100%;
  height: 4px;
  margin: 6px 0; }

.mCS-dark-thick.mCSB_horizontal > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 6px;
  margin: 5px auto; }

.mCS-dark-thick > .mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.85); }

.mCS-dark-thick > .mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCS-dark-thick > .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.9); }

.mCS-dark-thick > .mCSB_scrollTools .mCSB_buttonUp {
  background-position: -96px 0; }

.mCS-dark-thick > .mCSB_scrollTools .mCSB_buttonDown {
  background-position: -96px -20px; }

.mCS-dark-thick > .mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -100px -40px; }

.mCS-dark-thick > .mCSB_scrollTools .mCSB_buttonRight {
  background-position: -100px -56px; }

/*light-thin*/
.mCS-light-thin > .mCSB_scrollTools .mCSB_draggerRail {
  background: #fff;
  /* rgba fallback */
  background: rgba(255, 255, 255, 0.1); }

.mCS-light-thin > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 2px; }

.mCS-light-thin.mCSB_horizontal > .mCSB_scrollTools .mCSB_draggerRail {
  width: 100%; }

.mCS-light-thin.mCSB_horizontal > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 2px;
  margin: 7px auto; }

/*dark-thin*/
.mCS-dark-thin > .mCSB_scrollTools .mCSB_draggerRail {
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.15); }

.mCS-dark-thin > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 2px;
  background: #000;
  /* rgba fallback */
  background: rgba(0, 0, 0, 0.75); }

.mCS-dark-thin.mCSB_horizontal > .mCSB_scrollTools .mCSB_draggerRail {
  width: 100%; }

.mCS-dark-thin.mCSB_horizontal > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 2px;
  margin: 7px auto; }

.mCS-dark-thin > .mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.85); }

.mCS-dark-thin > .mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar, .mCS-dark-thin > .mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background: rgba(0, 0, 0, 0.9); }

.mCS-dark-thin > .mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px 0; }

.mCS-dark-thin > .mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -20px; }

.mCS-dark-thin > .mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -40px; }

.mCS-dark-thin > .mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -56px; }

.minict_wrapper {
  font-family: "Segoe UI", Segoe, "Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif;
  color: #333;
  background: #fff;
  position: relative;
  width: 300px;
  height: 2.2rem;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  .minict_wrapper * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
  .minict_wrapper:after {
    content: "\25BC";
    display: block;
    position: absolute;
    height: 2.1rem;
    width: 2.1rem;
    top: 0;
    right: 0;
    font-size: 0.6rem;
    line-height: 1.9rem;
    text-align: center;
    color: #555; }
  .minict_wrapper.active:after {
    content: "\25B2"; }
  .minict_wrapper input {
    border: 0;
    outline: none;
    background: none;
    font-family: "Segoe UI", Segoe, "Lucida Grande", "Lucida Sans Unicode", Arial, Helvetica, sans-serif;
    color: #333;
    font-size: 1rem;
    height: 1.9rem;
    padding: 0 2.2rem 0 0.4rem;
    cursor: default;
    width: 100%; }
  .minict_wrapper ul {
    display: none;
    list-style: none;
    padding: 0;
    margin: 0;
    position: absolute;
    width: 100%;
    border: 1px solid #e5e5e5;
    border-radius: 3px;
    top: 2rem;
    left: 0;
    max-height: 22rem;
    overflow-y: auto;
    z-index: 999999; }
    .minict_wrapper ul li {
      list-style: none;
      font-size: 1rem;
      padding: 0 0.7rem;
      cursor: pointer;
      background: #fff;
      height: 2.2rem;
      line-height: 2rem; }
      .minict_wrapper ul li:hover {
        background: #fcfcfc;
        color: #111; }
      .minict_wrapper ul li.minict_group {
        color: #444;
        background: #f6f6f6;
        font-weight: bold;
        cursor: default; }
      .minict_wrapper ul li.minict_empty {
        display: none;
        background: #fff !important;
        color: #bbb;
        text-align: center;
        font-size: 0.9rem;
        height: 3.5rem;
        line-height: 3.3rem; }
      .minict_wrapper ul li.selected {
        color: #819a9a;
        background: #f9fcff; }
      .minict_wrapper ul li.highlighted {
        color: #fff;
        background: #819a9a; }
      .minict_wrapper ul li.hidden {
        display: none; }
  .minict_wrapper.bubble {
    -webkit-box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.05);
    background: -moz-linear-gradient(top, white 0%, #f9f9f9 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #f9f9f9));
    background: -webkit-linear-gradient(top, white 0%, #f9f9f9 100%);
    background: -o-linear-gradient(top, white 0%, #f9f9f9 100%);
    background: -ms-linear-gradient(top, white 0%, #f9f9f9 100%);
    background: linear-gradient(to bottom, white 0%, #f9f9f9 100%); }
    .minict_wrapper.bubble:hover {
      border-color: #dcdcdc; }
    .minict_wrapper.bubble:after {
      border-left: 1px solid #e5e5e5;
      -webkit-box-shadow: inset 1px 0px 0px 0px #fff;
      box-shadow: inset 1px 0px 0px 0px #fff;
      height: 2.05rem; }
    .minict_wrapper.bubble ul {
      top: 2.7rem;
      -webkit-box-shadow: 0px 5px 25px 0px rgba(0, 0, 0, 0.25);
      box-shadow: 0px 5px 25px 0px rgba(0, 0, 0, 0.25);
      border-radius: 6px;
      overflow: visible; }
      .minict_wrapper.bubble ul:before {
        position: absolute;
        top: -11px;
        left: 19px;
        content: ".";
        color: transparent;
        width: 0px;
        height: 0px;
        border-style: solid;
        border-width: 0 11px 11px 11px;
        border-color: transparent transparent #e5e5e5 transparent; }
      .minict_wrapper.bubble ul:after {
        position: absolute;
        top: -10px;
        left: 20px;
        content: ".";
        color: transparent;
        width: 0px;
        height: 0px;
        border-style: solid;
        border-width: 0 10px 10px 10px;
        border-color: transparent transparent #ffffff transparent; }
      .minict_wrapper.bubble ul li.minict_first {
        border-top-left-radius: 6px;
        border-top-right-radius: 6px; }
      .minict_wrapper.bubble ul li.minict_last {
        border-bottom-left-radius: 6px;
        border-bottom-right-radius: 6px; }

.share-affix {
  position: fixed;
  top: 50px;
  left: 0; }

.share-icon a {
  background: #b5b5b5;
  color: #fff;
  display: inline-block;
  font-size: 22px;
  padding: 6px 3px;
  margin-right: 10px;
  text-align: center;
  width: 35px;
  transition: all .15s ease-in-out 0s; }
  .share-icon a:hover {
    opacity: 1;
    filter: Alpha(Opacity=100);
    background: #a29061; }

.share-icon-Digg {
  background-position: -526px 0; }

.share-icon-email {
  background-position: -614px 0; }

.share-icon-flickr {
  background-position: -261px 0; }

.share-icon-foursquare {
  background-position: 0 0; }

.share-icon-rss {
  background-position: -305px 0; }

.share-icon-Facebook {
  background-position: -131px 0; }

.share-icon-Twitter {
  background-position: -174px 0; }

.share-icon-tumblr {
  background-position: -87px 0; }

.share-icon-Linkedin {
  background-position: -438px 0; }

.share-icon-vimeo {
  background-position: -393px 0; }

.share-icon-Instagram {
  background-position: -44px 0; }

.share-icon-Pinterest {
  background-position: -349px 0; }

.share-icon-Googleplus {
  background-position: -218px 0; }

.share-icon-in1 {
  background-position: -482px 0; }

.share-icon-stumbleupon {
  background-position: -570px 0; }

/**a.behance, a.delicious, a.deviantart, a.digg, a.dribbble, a.Facebook, a.Flickr, a.Forrst, a.foursquare, a.Googleplus, a.in1, a.Instagram, a.lastfm, a.Linkedin, a.Pinterest, a.rss, a.skype, a.tumblr, a.Twitter, a.vimeo, a.Youtube {*/
.share-square {
  -moz-transition: all 0.2s linear 0s;
  background: url("../img/social-icons.png") no-repeat scroll left top transparent;
  display: inline-block;
  height: 32px;
  line-height: 0;
  margin: 2px;
  width: 32px; }

.share-square-behance {
  background-position: -544px -44px; }
  .share-square-behance:hover {
    background-position: -544px -77px; }

.share-square-delicious {
  background-position: -512px -44px; }
  .share-square-delicious:hover {
    background-position: -512px -77px; }

.share-square-deviantart {
  background-position: -480px -44px; }
  .share-square-deviantart:hover {
    background-position: -480px -77px; }

.share-square-digg {
  background-position: -448px -44px; }
  .share-square-digg:hover {
    background-position: -448px -77px; }

.share-square-dribbble {
  background-position: -416px -44px; }
  .share-square-dribbble:hover {
    background-position: -416px -77px; }

.share-square-Email {
  background-position: -674px -44px; }
  .share-square-Email:hover {
    background-position: -674px -77px; }

.share-square-Facebook {
  background-position: -384px -44px; }
  .share-square-Facebook:hover {
    background-position: -384px -77px; }

.share-square-Flickr {
  background-position: -352px -44px; }
  .share-square-Flickr:hover {
    background-position: -352px -77px; }

.share-square-forrst {
  background-position: -320px -44px; }
  .share-square-forrst:hover {
    background-position: -320px -77px; }

.share-square-Googleplus {
  background-position: -288px -44px; }
  .share-square-Googleplus:hover {
    background-position: -288px -77px; }

.share-square-in1 {
  background-position: -576px -44px; }
  .share-square-in1:hover {
    background-position: -576px -77px; }

.share-square-Instagram {
  background-position: -608px -44px; }
  .share-square-Instagram:hover {
    background-position: -608px -77px; }

.share-square-lastfm {
  background-position: -256px -44px; }
  .share-square-lastfm:hover {
    background-position: -256px -77px; }

.share-square-Linkedin {
  background-position: -224px -44px; }
  .share-square-Linkedin:hover {
    background-position: -224px -77px; }

.share-square-Pinterest {
  background-position: -192px -44px; }
  .share-square-Pinterest:hover {
    background-position: -192px -77px; }

.share-square-Rss {
  background-position: -160px -44px; }
  .share-square-Rss:hover {
    background-position: -160px -77px; }

.share-square-Skype {
  background-position: -128px -44px; }
  .share-square-Skype:hover {
    background-position: -128px -77px; }

.share-square-stumbleupon {
  background-position: -640px -44px; }
  .share-square-stumbleupon:hover {
    background-position: -640px -77px; }

.share-square-Tumblr {
  background-position: -96px -44px; }
  .share-square-Tumblr:hover {
    background-position: -96px -77px; }

.share-square-Twitter {
  background-position: -64px -44px; }
  .share-square-Twitter:hover {
    background-position: -64px -77px; }

.share-square-vimeo {
  background-position: -32px -44px; }
  .share-square-vimeo:hover {
    background-position: -32px -77px; }

.share-square-Youtube {
  background-position: 0 -44px; }
  .share-square-Youtube:hover {
    background-position: 0 -77px; }

/* 
 * 	Core Owl Carousel CSS File
 *	v1.24
 */
/* clearfix */
.owl-carousel .owl-wrapper:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

#owl-demo .item {
  background: none !important; }

/* display none until init */
.owl-carousel {
  display: none;
  position: relative;
  width: 100%;
  -ms-touch-action: pan-y; }

.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0px, 0px, 0px); }

.owl-carousel .owl-wrapper-outer {
  overflow: hidden;
  position: relative;
  width: 100%; }

.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  -moz-transition: height 500ms ease-in-out;
  -ms-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; }

.owl-carousel .owl-item {
  float: left; }

.owl-controls .owl-page,
.owl-controls .owl-buttons div {
  cursor: pointer; }

.owl-controls {
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

/* mouse grab icon */
.grabbing {
  cursor: url(grabbing.png) 8 8, move; }

/* fix */
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0); }

/* CSS3 Transitions */
.owl-origin {
  -webkit-perspective: 1200px;
  -webkit-perspective-origin-x: 50%;
  -webkit-perspective-origin-y: 50%;
  -moz-perspective: 1200px;
  -moz-perspective-origin-x: 50%;
  -moz-perspective-origin-y: 50%;
  perspective: 1200px; }

/* fade */
.owl-fade-out {
  z-index: 10;
  -webkit-animation: fadeOut .7s both ease;
  -moz-animation: fadeOut .7s both ease;
  animation: fadeOut .7s both ease; }

.owl-fade-in {
  -webkit-animation: fadeIn .7s both ease;
  -moz-animation: fadeIn .7s both ease;
  animation: fadeIn .7s both ease; }

/* backSlide */
.owl-backSlide-out {
  -webkit-animation: backSlideOut 1s both ease;
  -moz-animation: backSlideOut 1s both ease;
  animation: backSlideOut 1s both ease; }

.owl-backSlide-in {
  -webkit-animation: backSlideIn 1s both ease;
  -moz-animation: backSlideIn 1s both ease;
  animation: backSlideIn 1s both ease; }

/* goDown */
.owl-goDown-out {
  -webkit-animation: scaleToFade .7s ease both;
  -moz-animation: scaleToFade .7s ease both;
  animation: scaleToFade .7s ease both; }

.owl-goDown-in {
  -webkit-animation: goDown .6s ease both;
  -moz-animation: goDown .6s ease both;
  animation: goDown .6s ease both; }

/* scaleUp */
.owl-fadeUp-in {
  -webkit-animation: scaleUpFrom .5s ease both;
  -moz-animation: scaleUpFrom .5s ease both;
  animation: scaleUpFrom .5s ease both; }

.owl-fadeUp-out {
  -webkit-animation: scaleUpTo .5s ease both;
  -moz-animation: scaleUpTo .5s ease both;
  animation: scaleUpTo .5s ease both; }

/* Keyframes */
/*empty*/
@-webkit-keyframes empty {
  0% {
    opacity: 1; } }

@-moz-keyframes empty {
  0% {
    opacity: 1; } }

@keyframes empty {
  0% {
    opacity: 1; } }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-moz-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@-moz-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@-webkit-keyframes backSlideOut {
  25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px); }
  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%); }
  100% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(-200%); } }

@-moz-keyframes backSlideOut {
  25% {
    opacity: .5;
    -moz-transform: translateZ(-500px); }
  75% {
    opacity: .5;
    -moz-transform: translateZ(-500px) translateX(-200%); }
  100% {
    opacity: .5;
    -moz-transform: translateZ(-500px) translateX(-200%); } }

@keyframes backSlideOut {
  25% {
    opacity: .5;
    transform: translateZ(-500px); }
  75% {
    opacity: .5;
    transform: translateZ(-500px) translateX(-200%); }
  100% {
    opacity: .5;
    transform: translateZ(-500px) translateX(-200%); } }

@-webkit-keyframes backSlideIn {
  0%, 25% {
    opacity: .5;
    -webkit-transform: translateZ(-500px) translateX(200%); }
  75% {
    opacity: .5;
    -webkit-transform: translateZ(-500px); }
  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) translateX(0); } }

@-moz-keyframes backSlideIn {
  0%, 25% {
    opacity: .5;
    -moz-transform: translateZ(-500px) translateX(200%); }
  75% {
    opacity: .5;
    -moz-transform: translateZ(-500px); }
  100% {
    opacity: 1;
    -moz-transform: translateZ(0) translateX(0); } }

@keyframes backSlideIn {
  0%, 25% {
    opacity: .5;
    transform: translateZ(-500px) translateX(200%); }
  75% {
    opacity: .5;
    transform: translateZ(-500px); }
  100% {
    opacity: 1;
    transform: translateZ(0) translateX(0); } }

@-webkit-keyframes scaleToFade {
  to {
    opacity: 0;
    -webkit-transform: scale(0.8); } }

@-moz-keyframes scaleToFade {
  to {
    opacity: 0;
    -moz-transform: scale(0.8); } }

@keyframes scaleToFade {
  to {
    opacity: 0;
    transform: scale(0.8); } }

@-webkit-keyframes goDown {
  from {
    -webkit-transform: translateY(-100%); } }

@-moz-keyframes goDown {
  from {
    -moz-transform: translateY(-100%); } }

@keyframes goDown {
  from {
    transform: translateY(-100%); } }

@-webkit-keyframes scaleUpFrom {
  from {
    opacity: 0;
    -webkit-transform: scale(1.5); } }

@-moz-keyframes scaleUpFrom {
  from {
    opacity: 0;
    -moz-transform: scale(1.5); } }

@keyframes scaleUpFrom {
  from {
    opacity: 0;
    transform: scale(1.5); } }

@-webkit-keyframes scaleUpTo {
  to {
    opacity: 0;
    -webkit-transform: scale(1.5); } }

@-moz-keyframes scaleUpTo {
  to {
    opacity: 0;
    -moz-transform: scale(1.5); } }

@keyframes scaleUpTo {
  to {
    opacity: 0;
    transform: scale(1.5); } }

.owl-theme .owl-controls {
  margin-top: 10px;
  text-align: center; }

/* Styling Next and Prev buttons */
.owl-theme .owl-controls .owl-buttons div {
  color: #FFF;
  display: inline-block;
  zoom: 1;
  *display: inline;
  /*IE7 life-saver */
  margin: 5px;
  padding: 3px 10px;
  font-size: 12px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px;
  background: #869791;
  filter: Alpha(Opacity=50);
  /*IE7 fix*/
  opacity: 0.5; }

/* Clickable class fix problem with hover on touch devices */
/* Use it for non-touch hover action */
.owl-theme .owl-controls.clickable .owl-buttons div:hover {
  filter: Alpha(Opacity=100);
  /*IE7 fix*/
  opacity: 1;
  text-decoration: none; }

/* Styling Pagination*/
.owl-theme .owl-controls .owl-page {
  display: inline-block;
  zoom: 1;
  *display: inline;
  /*IE7 life-saver */ }

.owl-theme .owl-controls .owl-page span {
  display: block;
  width: 12px;
  height: 12px;
  margin: 5px 7px;
  filter: Alpha(Opacity=50);
  /*IE7 fix*/
  opacity: 0.5;
  -webkit-border-radius: 20px;
  -moz-border-radius: 20px;
  border-radius: 20px;
  background: #869791; }

.owl-theme .owl-controls .owl-page.active span,
.owl-theme .owl-controls.clickable .owl-page:hover span {
  filter: Alpha(Opacity=100);
  /*IE7 fix*/
  opacity: 1; }

/* If PaginationNumbers is true */
.owl-theme .owl-controls .owl-page span.owl-numbers {
  height: auto;
  width: auto;
  color: #FFF;
  padding: 2px 10px;
  font-size: 12px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px; }

/* preloading images */
.owl-item.loading {
  min-height: 150px;
  background: url(AjaxLoader.gif) no-repeat center center; }

.sp-wrap {
  display: none;
  line-height: 0;
  font-size: 0;
  background: #eee;
  position: relative;
  margin: 0 25px 15px 0;
  border: 1px solid #E4E4E4;
  float: left; }

.sp-large {
  position: relative;
  overflow: hidden; }
  .sp-large a {
    display: inline-block; }
    .sp-large a img {
      max-width: 100%;
      height: auto;
      cursor: -webkit-zoom-in;
      cursor: -moz-zoom-in; }

.sp-thumbs {
  width: 100%;
  text-align: left; }
  .sp-thumbs img {
    width: 50px;
    height: 50px; }
  .sp-thumbs a:link, .sp-thumbs a:visited {
    border: 2px solid #eee;
    display: inline-block;
    float: right;
    margin-right: 5px; }
  .sp-thumbs a:hover, .sp-thumbs a:active {
    border: 2px solid #222; }

.sp-current {
  border: 2px solid #222; }

.sp-zoom {
  position: absolute;
  left: 0;
  top: 0;
  cursor: zoom;
  cursor: -webkit-zoom-out;
  cursor: -moz-zoom-out;
  display: none; }

.productThumb {
  border-top: 1px solid #ddd;
  padding-top: 10px; }
  .productThumb .sp-thumbs {
    bottom: auto !important;
    position: relative;
    right: 0 !important;
    text-align: left;
    width: 100% !important;
    z-index: 70; }
    .productThumb .sp-thumbs img {
      width: 50px;
      height: 50px; }
    .productThumb .sp-thumbs a:link, .productThumb .sp-thumbs a:visited {
      border: 2px solid #eee;
      display: inline-block;
      float: left;
      margin-right: 5px; }
    .productThumb .sp-thumbs a:hover {
      border: 2px solid #222;
      margin-right: 10px !important; }

.sp-thumbs a:active, .sp-current, .productThumb .sp-thumbs a {
  border: 2px solid #222;
  margin-right: 10px !important; }

.style3 .sp-large {
  border: 1px solid #ddd;
  max-width: 100% !important; }

.footable {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  border: solid #ccc 1px;
  border-radius: 0;
  font-size: 14px; }
  .footable.breakpoint > tbody > tr > td.expand {
    background: url("img/plus.png") no-repeat 5px center;
    padding-left: 40px; }
  .footable.breakpoint > tbody > tr.footable-detail-show > td.expand {
    background: url("img/minus.png") no-repeat 5px center; }
  .footable.breakpoint > tbody > tr.footable-row-detail {
    background: #EBEDEF; }
  .footable.breakpoint > tbody > tr:hover:not(.footable-row-detail) {
    cursor: pointer; }
  .footable > tbody > tr:hover {
    background: #fbf8e9; }
  .footable > tbody > tr > td, .footable > thead > tr > th {
    border-left: 1px solid #ccc;
    border-top: 1px solid #ccc;
    padding: 10px;
    text-align: left; }
  .footable > tbody > tr > td.footable-cell-detail {
    border-left: none; }
  .footable > thead > tr > th, .footable > thead > tr > td {
    background-color: #EBEDED;
    -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    border-top: none;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); }
  .footable > thead > tr:first-child > th.footable-first-column, .footable > thead > tr:first-child > td.footable-first-column, .footable > thead > tr:first-child > th.footable-last-column, .footable > thead > tr:first-child > td.footable-last-column {
    -moz-border-radius: 0 0;
    -webkit-border-radius: 0 0;
    border-radius: 0 0; }
  .footable > thead > tr:first-child > th.footable-first-column.footable-last-column, .footable > thead > tr:first-child > td.footable-first-column.footable-last-column {
    -moz-border-radius: 6px 0;
    -webkit-border-radius: 6px 0;
    border-radius: 6px 0; }
  .footable > tbody > tr:last-child > td.footable-first-column {
    -moz-border-radius: 0 0 0 6px;
    -webkit-border-radius: 0 0 0 6px;
    border-radius: 0 0 0 6px; }
  .footable > tbody > tr:last-child > td.footable-last-column {
    -moz-border-radius: 0 0 6px 0;
    -webkit-border-radius: 0 0 6px 0;
    border-radius: 0 0 6px 0; }
  .footable > tbody > tr:last-child > td.footable-first-column.footable-last-column {
    -moz-border-radius: 0 0 6px 6px;
    -webkit-border-radius: 0 0 6px 6px;
    border-radius: 0 0 6px 6px; }
  .footable > thead > tr > th.footable-first-column, .footable > thead > tr > td.footable-first-column {
    border-left: none; }
  .footable > tbody > tr > td.footable-first-column {
    border-left: none; }
  .footable > tbody img {
    vertical-align: middle; }
  .footable > tfoot > tr > th, .footable > tfoot > tr > td {
    background-color: #dce9f9;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#ebf3fc), to(#dce9f9));
    background-image: -webkit-linear-gradient(top, #ebf3fc, #dce9f9);
    background-image: -moz-linear-gradient(top, #ebf3fc, #dce9f9);
    background-image: -ms-linear-gradient(top, #ebf3fc, #dce9f9);
    background-image: -o-linear-gradient(top, #ebf3fc, #dce9f9);
    background-image: linear-gradient(to bottom, #ebf3fc, #dce9f9);
    -webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    -moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    border-top: 1px solid #ccc;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
    padding: 10px; }
  .footable > thead > tr > th > span.footable-sort-indicator {
    width: 16px;
    height: 16px;
    display: block;
    float: right;
    background: url("img/sorting_sprite.png") no-repeat top left; }
  .footable > thead > tr > th.footable-sortable:hover {
    cursor: pointer; }
  .footable > thead > tr > th.footable-sorted > span.footable-sort-indicator {
    background-position: 0 -16px; }
  .footable > thead > tr > th.footable-sorted-desc > span.footable-sort-indicator {
    background-position: 0 -32px; }

.cc-window {
  opacity: 1;
  transition: opacity 1s ease; }
  .cc-window.cc-invisible {
    opacity: 0; }

.cc-animate.cc-revoke {
  transition: transform 1s ease; }
  .cc-animate.cc-revoke.cc-top {
    transform: translateY(-2em); }
  .cc-animate.cc-revoke.cc-bottom {
    transform: translateY(2em); }
  .cc-animate.cc-revoke.cc-active.cc-bottom, .cc-animate.cc-revoke.cc-active.cc-top {
    transform: translateY(0); }

.cc-revoke:hover {
  transform: translateY(0); }

.cc-grower {
  max-height: 0;
  overflow: hidden;
  transition: max-height 1s; }

.cc-link {
  text-decoration: underline; }

.cc-revoke {
  position: fixed;
  overflow: hidden;
  box-sizing: border-box;
  font-family: Helvetica,Calibri,Arial,sans-serif;
  font-size: 16px;
  line-height: 1.5em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  z-index: 9999; }
  .cc-revoke:hover {
    text-decoration: underline; }

.cc-window {
  position: fixed;
  overflow: hidden;
  box-sizing: border-box;
  font-family: Helvetica,Calibri,Arial,sans-serif;
  font-size: 16px;
  line-height: 1.5em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  z-index: 9999; }
  .cc-window.cc-static {
    position: static; }
  .cc-window.cc-floating {
    padding: 2em;
    max-width: 24em;
    -ms-flex-direction: column;
    flex-direction: column; }
  .cc-window.cc-banner {
    padding: 1em 1.8em;
    width: 100%;
    -ms-flex-direction: row;
    flex-direction: row; }

.cc-revoke {
  padding: .5em; }

.cc-header {
  font-size: 18px;
  font-weight: 700; }

.cc-btn, .cc-close, .cc-link, .cc-revoke {
  cursor: pointer; }

.cc-link {
  opacity: .8;
  display: inline-block;
  padding: .2em; }
  .cc-link:hover {
    opacity: 1; }
  .cc-link:active, .cc-link:visited {
    color: initial; }

.cc-btn {
  display: block;
  padding: .4em .8em;
  font-size: .9em;
  font-weight: 700;
  border-width: 2px;
  border-style: solid;
  text-align: center;
  white-space: nowrap; }

.cc-banner .cc-btn:last-child {
  min-width: 140px; }

.cc-highlight .cc-btn:first-child {
  background-color: transparent;
  border-color: transparent; }
  .cc-highlight .cc-btn:first-child:focus, .cc-highlight .cc-btn:first-child:hover {
    background-color: transparent;
    text-decoration: underline; }

.cc-close {
  display: block;
  position: absolute;
  top: .5em;
  right: .5em;
  font-size: 1.6em;
  opacity: .9;
  line-height: .75; }
  .cc-close:focus, .cc-close:hover {
    opacity: 1; }

.cc-revoke.cc-top {
  top: 0;
  left: 3em;
  border-bottom-left-radius: .5em;
  border-bottom-right-radius: .5em; }

.cc-revoke.cc-bottom {
  bottom: 0;
  left: 3em;
  border-top-left-radius: .5em;
  border-top-right-radius: .5em; }

.cc-revoke.cc-left {
  left: 3em;
  right: unset; }

.cc-revoke.cc-right {
  right: 3em;
  left: unset; }

.cc-top {
  top: 1em; }

.cc-left {
  left: 1em; }

.cc-right {
  right: 1em; }

.cc-bottom {
  bottom: 1em; }

.cc-floating > .cc-link {
  margin-bottom: 1em; }

.cc-floating .cc-message {
  display: block;
  margin-bottom: 1em; }

.cc-window.cc-floating .cc-compliance {
  -ms-flex: 1;
  flex: 1; }

.cc-window.cc-banner {
  -ms-flex-align: center;
  align-items: center; }

.cc-banner.cc-top {
  left: 0;
  right: 0;
  top: 0; }

.cc-banner.cc-bottom {
  left: 0;
  right: 0;
  bottom: 0; }

.cc-banner .cc-message {
  -ms-flex: 1;
  flex: 1; }

.cc-compliance {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-line-pack: justify;
  align-content: space-between;
  justify-content: center; }
  .cc-compliance > .cc-btn {
    -ms-flex: 1;
    flex: 1; }

.cc-btn + .cc-btn {
  margin-left: .5em; }

@media print {
  .cc-revoke, .cc-window {
    display: none; } }

@media screen and (max-width: 900px) {
  .cc-btn {
    white-space: normal; } }

@media screen and (max-width: 414px) and (orientation: portrait), screen and (max-width: 736px) and (orientation: landscape) {
  .cc-window.cc-top {
    top: 0; }
  .cc-window.cc-bottom {
    bottom: 0; }
  .cc-window.cc-banner, .cc-window.cc-left, .cc-window.cc-right {
    left: 0;
    right: 0; }
  .cc-window.cc-banner {
    -ms-flex-direction: column;
    flex-direction: column; }
    .cc-window.cc-banner .cc-compliance {
      -ms-flex: 1;
      flex: 1; }
  .cc-window.cc-floating {
    max-width: none; }
  .cc-window .cc-message {
    margin-bottom: 1em; }
  .cc-window.cc-banner {
    -ms-flex-align: unset;
    align-items: unset; } }

.cc-floating.cc-theme-classic {
  padding: 1.2em;
  border-radius: 5px; }

.cc-floating.cc-type-info.cc-theme-classic .cc-compliance {
  text-align: center;
  display: inline;
  -ms-flex: none;
  flex: none; }

.cc-theme-classic .cc-btn {
  border-radius: 5px; }
  .cc-theme-classic .cc-btn:last-child {
    min-width: 140px; }

.cc-floating.cc-type-info.cc-theme-classic .cc-btn {
  display: inline-block; }

.cc-theme-edgeless.cc-window {
  padding: 0; }

.cc-floating.cc-theme-edgeless .cc-message {
  margin: 2em 2em 1.5em; }

.cc-banner.cc-theme-edgeless .cc-btn {
  margin: 0;
  padding: .8em 1.8em;
  height: 100%; }

.cc-banner.cc-theme-edgeless .cc-message {
  margin-left: 1em; }

.cc-floating.cc-theme-edgeless .cc-btn + .cc-btn {
  margin-left: 0; }

.cc-window {
  background-color: rgba(0, 0, 0, 0.8);
  justify-content: center; }
  .cc-window.cc-floating {
    max-width: none;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center; }
    @media (min-width: 768px) {
      .cc-window.cc-floating {
        flex-direction: row;
        align-items: center;
        text-align: left; }
        .cc-window.cc-floating .cc-message {
          margin-bottom: 0; }
        .cc-window.cc-floating .cc-compliance {
          flex: unset; } }
  .cc-window .cc-message {
    color: #FFF;
    flex: unset; }
    .cc-window .cc-message a {
      color: #FFF;
      text-decoration: underline; }
  .cc-window .cc-btn.cc-dismiss {
    display: none; }
  .cc-window .cc-btn.cc-allow {
    background-color: #a29061;
    border-color: #a29061;
    color: #FFF;
    border: 2px solid #ffffff;
    border-color: rgba(255, 255, 255, 0.7);
    border-radius: 6px;
    max-width: 200px; }

/**
 * Set up a decent box model on the root element
 */
html {
  font-size: 62.5%; }

body {
  font-family: Source Sans Pro,sans-serif;
  background-color: #ffffff !important;
  width: 100%;
  line-height: 2.2rem;
  font-size: 14px; }

.site-color {
  color: #a29061 !important; }

/**
 * Basic styles for links
 */
a {
  color: #a29061;
  text-decoration: none; }
  a:hover, a:active, a:focus {
    color: #444444;
    text-decoration: underline; }

/**
 * Basic typography style for copy text
 */
body {
  color: #444444; }

h1.primary, .h1.primary {
  color: #a29061; }

h1.secondary, .h1.secondary {
  color: #444444; }

h1.tertiary, .h1.tertiary {
  color: #666668; }

h2.primary, .h2.primary {
  color: #a29061; }

h2.secondary, .h2.secondary {
  color: #444444; }

h2.tertiary, .h2.tertiary {
  color: #666668; }

h3.primary, .h3.primary {
  color: #a29061; }

h3.secondary, .h3.secondary {
  color: #444444; }

h3.tertiary, .h3.tertiary {
  color: #666668; }

h4.primary, .h4.primary {
  color: #a29061; }

h4.secondary, .h4.secondary {
  color: #444444; }

h4.tertiary, .h4.tertiary {
  color: #666668; }

h5.primary, .h5.primary {
  color: #a29061; }

h5.secondary, .h5.secondary {
  color: #444444; }

h5.tertiary, .h5.tertiary {
  color: #666668; }

p {
  margin-bottom: half(2.5px);
  font-size: 1.4rem;
  line-height: 1.5; }
  @media screen and (min-width: 767px) {
    p {
      font-size: 1.3rem; } }
  @media screen and (min-width: 992px) {
    p {
      font-size: 1.4rem;
      line-height: 1.5; } }
  @media screen and (min-width: 1200px) {
    p {
      font-size: 1.4rem;
      line-height: 1.5; } }
  p .lead {
    font-size: 2rem;
    line-height: 1.3; }
    @media screen and (min-width: 767px) {
      p .lead {
        font-size: 1.75rem; } }
    @media screen and (min-width: 992px) {
      p .lead {
        font-size: 2rem;
        line-height: 1.3; } }
    @media screen and (min-width: 1200px) {
      p .lead {
        font-size: 2rem;
        line-height: 1.3; } }

b,
strong {
  font-weight: 600; }

ul, ol {
  list-style: none;
  margin: 0;
  padding: 0; }
  .CatalogControlPanel ul, #ProductList ul, .category-top ul, .CatalogControlPanel ol, #ProductList ol, .category-top ol {
    list-style: disc;
    padding-left: 30px; }

h1, .h1 {
  font-size: 3.2rem;
  line-height: 0.7;
  margin-bottom: half(2.5px);
  text-transform: uppercase; }
  @media screen and (min-width: 767px) {
    h1, .h1 {
      font-size: 3.1rem; } }
  @media screen and (min-width: 992px) {
    h1, .h1 {
      font-size: 3.2rem;
      line-height: 0.7; } }
  @media screen and (min-width: 1200px) {
    h1, .h1 {
      font-size: 3.2rem;
      line-height: 0.7; } }

h2, .h2 {
  font-size: 2.4rem;
  line-height: 1.3;
  margin-bottom: half(2.5px); }
  @media screen and (min-width: 767px) {
    h2, .h2 {
      font-size: 2rem; } }
  @media screen and (min-width: 992px) {
    h2, .h2 {
      font-size: 2.4rem;
      line-height: 1.4; } }
  @media screen and (min-width: 1200px) {
    h2, .h2 {
      font-size: 2.4rem;
      line-height: 1.45; } }

h3, .h3 {
  font-size: 2rem;
  line-height: 1.3;
  margin-bottom: half(2.5px); }
  @media screen and (min-width: 767px) {
    h3, .h3 {
      font-size: 1.75rem; } }
  @media screen and (min-width: 992px) {
    h3, .h3 {
      font-size: 2rem;
      line-height: 1.3; } }
  @media screen and (min-width: 1200px) {
    h3, .h3 {
      font-size: 2rem;
      line-height: 1.3; } }
  h3 code, .h3 code {
    font-size: 1.4rem;
    line-height: 1.2;
    font-weight: normal; }
    @media screen and (min-width: 767px) {
      h3 code, .h3 code {
        font-size: 1rem; } }
    @media screen and (min-width: 992px) {
      h3 code, .h3 code {
        font-size: 1.4rem;
        line-height: 1.2; } }
    @media screen and (min-width: 1200px) {
      h3 code, .h3 code {
        font-size: 1.4rem;
        line-height: 1.2; } }

h4, .h4 {
  font-size: 1.7rem;
  line-height: 1.3;
  margin-bottom: half(2.5px);
  color: #444444; }
  @media screen and (min-width: 767px) {
    h4, .h4 {
      font-size: 1.5rem; } }
  @media screen and (min-width: 992px) {
    h4, .h4 {
      font-size: 1.7rem;
      line-height: 1.3; } }
  @media screen and (min-width: 1200px) {
    h4, .h4 {
      font-size: 1.7rem;
      line-height: 1.35; } }

h5, .h5 {
  font-size: 1.4rem;
  line-height: 1.2;
  margin-bottom: half(2.5px);
  color: #444444; }
  @media screen and (min-width: 767px) {
    h5, .h5 {
      font-size: 1rem; } }
  @media screen and (min-width: 992px) {
    h5, .h5 {
      font-size: 1.4rem;
      line-height: 1.2; } }
  @media screen and (min-width: 1200px) {
    h5, .h5 {
      font-size: 1.4rem;
      line-height: 1.2; } }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  margin: 0;
  padding-bottom: 15px; }

.block-title-1 {
  display: block;
  font-family: 'Oswald', sans-serif;
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 2px;
  margin: 15px 20px 0 0;
  text-transform: uppercase; }

.block-title-2 {
  border-bottom: 1px solid #CECECE;
  font-size: 13px;
  font-weight: bold;
  margin: 0 0 15px;
  padding: 10px 0 0;
  position: relative;
  text-transform: uppercase; }

.block-title-3 {
  border-bottom: 1px solid #CECECE;
  font-weight: bold;
  margin: 0 0 15px;
  padding: 10px 0 10px;
  position: relative;
  text-transform: uppercase; }

.block-title-4 {
  display: inline;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin: 0 auto;
  padding: 0 12px;
  text-transform: uppercase; }

.block-title-5 {
  display: block;
  font-size: 16px;
  margin: 0 0 5px;
  font-weight: 700;
  letter-spacing: 0.2em;
  padding: 0;
  text-transform: uppercase; }

a {
  -webkit-transition: all 0.2s ease-in;
  -moz-transition: all 0.2s ease-in;
  -ms-transition: all 0.2s ease-in;
  -o-transition: all 0.2s ease-in;
  transition: all 0.2s ease-in;
  color: #444444;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #a29061;
    text-decoration: none; }

/**
 * Clear inner floats
 */
.clearfix::after {
  clear: both;
  content: '';
  display: table; }

.border-title {
  border-bottom: 1px solid #CECECE;
  margin: 0 0 15px;
  padding: 10px 0 10px; }

.error label.error {
  color: red; }

.section-block {
  margin-bottom: 30px; }

.uppercase {
  text-transform: uppercase; }

.underline {
  text-decoration: underline; }

.relative {
  position: relative; }

.no-margin {
  margin: 0 !important; }

.no-padding {
  padding: 0 !important; }

.margin-top-10 {
  margin-top: 10px; }

.margin-bottom-10 {
  margin-bottom: 10px !important; }

.no-margin-right {
  margin-right: 0; }

.no-margin-left {
  margin-left: 0; }

.no-margin-top {
  margin-top: 0; }

.no-margin-bottom {
  margin-bottom: 0; }

.no-border {
  border: 0; }

.width100,
.w100 {
  width: 100%; }

.width50,
.w50 {
  width: 100%;
  display: block; }

.full {
  width: 100%; }

.full-container {
  width: 100%;
  display: block;
  clear: both; }

.float-right {
  float: right; }

.float-left {
  float: left; }

.maxheight100 {
  max-height: 100px; }

.maxheight200 {
  max-height: 200px; }

.maxheight300 {
  max-height: 300px; }

.maxheight400 {
  max-height: 400px; }

.maxheight500 {
  max-height: 500px; }

.maxheight600 {
  max-height: 600px; }

.maxheight700 {
  max-height: 700px; }

.maxwidth100 {
  max-width: 100px; }

.maxwidtht200 {
  max-width: 200px; }

.maxwidth300 {
  max-width: 300px; }

.maxwidth400 {
  max-width: 400px; }

.maxwidth500 {
  max-width: 500px; }

.maxwidth600 {
  max-width: 600px; }

.maxwidth700 {
  max-width: 700px; }

.padd {
  margin-top: 60px; }

.globalPadding {
  padding: 50px 0; }

.globalPaddingTop {
  padding: 50px 0 0; }

.globalPaddingBottom {
  padding: 0 0 50px; }

.hr2 {
  border-width: 2px;
  border-color: #DDDDDD; }

.hr3 {
  border-width: 4px;
  border-color: #DDDDDD; }

ul.list-dot li {
  list-style: inside disc; }

ul.list-number li {
  list-style: inside decimal; }

ul.list {
  list-style: disc;
  padding-left: 40px; }
  ul.list ul {
    list-style: circle;
    padding-left: 40px; }

ul.list-check {
  list-style: none; }

ul.list-border li {
  border-bottom: 1px solid #E0EDED;
  display: block;
  padding: 10px 15px; }
  ul.list-border li:hover {
    background: #ebebeb; }

.transitionfx {
  transition: all 0.25s ease 0s; }

::selection {
  color: #fff;
  background: #666668; }

::-moz-selection {
  color: #fff;
  background: #666668; }

@media print {
  .navbar,
  header .header,
  .banner,
  .parallax-section.parallax-image-1,
  .featuredImageLook3,
  .width100.section-block,
  .container.main-container,
  footer,
  .footer,
  .footer-bottom,
  .AddToCart,
  .google-maps {
    display: none !important; }
  .parallax-section.parallax-image-3 {
    position: relative !important; }
  img {
    width: 200px; }
  body {
    padding: 0; } }

.navbar-tshop {
  background: -moz-linear-gradient(top, #777978 0%, #323d42 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #777978), color-stop(100%, #323d42));
  background: -webkit-linear-gradient(top, #777978 0%, #323d42 100%);
  background: -o-linear-gradient(top, #777978 0%, #323d42 100%);
  background: -ms-linear-gradient(top, #777978 0%, #323d42 100%);
  background: linear-gradient(to bottom, #777978 0%, #323d42 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#777978', endColorstr='#323d42',GradientType=0 ); }

.navbar-top {
  background: #333; }

.gap {
  height: 30px;
  width: 100%;
  clear: both;
  display: block; }

.footer {
  background: #edeff1;
  height: auto;
  padding-bottom: 30px;
  position: relative;
  width: 100%;
  border-bottom: 1px solid #cccccc;
  border-top: 1px solid #dddddd; }
  .footer p {
    margin: 0; }
  .footer img {
    max-width: 100%; }
  .footer h3 {
    border-bottom: 1px solid #bac1c8;
    color: #54697e;
    font-size: 18px;
    font-weight: 600;
    line-height: 27px;
    padding: 40px 0 10px;
    text-transform: uppercase; }
  .footer ul {
    font-size: 13px;
    list-style-type: none;
    margin-left: 0;
    padding-left: 0;
    margin-top: 15px;
    color: #7f8c8d; }
    .footer ul li a {
      padding: 0 0 5px 0;
      display: block; }
  .footer a {
    color: #78828d; }
  @media (max-width: 400px) {
    .footer .container > .row div:nth-of-type(5n-2) {
      clear: left; } }

.newsLatterBox {
  overflow: hidden;
  margin-top: 10px; }
  .newsLatterBox .btn {
    border: 2px solid #ffffff;
    border-radius: 4px;
    display: inline-block;
    height: 40px;
    padding: 0;
    width: 100%;
    color: #ffffff;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease; }
  .newsLatterBox input#appendedInputButton {
    background: #ffffff;
    display: inline-block;
    float: left;
    height: 30px;
    clear: both;
    width: 100%; }

.bg-gray {
  box-shadow: 0 1px 0 #b4b3b3; }

.footer-bottom {
  color: #ffffff;
  background: linear-gradient(to bottom, #777978 0, #323d42 100%);
  filter: progid:dximagetransform.microsoft.gradient(startcolorstr='$menu-gradient-color-1', endcolorstr='$menu-gradient-color-2',gradienttype=0 );
  border-top: 1px solid #666668;
  padding-top: 15px;
  padding-bottom: 10px; }
  .footer-bottom p.pull-left {
    padding-top: 6px; }
  .footer-bottom a {
    color: #ffffff;
    text-decoration: underline; }

.supportLi h4 {
  font-size: 20px;
  font-weight: lighter;
  line-height: normal;
  margin-bottom: 0 !important;
  padding-bottom: 0;
  color: #7f8c8d; }

.social li {
  background: none repeat scroll 0 0 #b5b5b5;
  border: 2px solid #b5b5b5;
  border-radius: 50%;
  float: left;
  height: 36px;
  line-height: 38px;
  margin: 0 7px 0 0;
  padding: 0;
  text-align: center;
  width: 36px;
  transition: all 0.5s ease 0s;
  border: 0;
  border-color: transparent; }
  .social li:hover {
    transform: scale(1.15) rotate(360deg);
    border: 2px solid #2c3e50;
    background: #2c3e50;
    border-color: transparent; }
  .social li a {
    color: #edeff1; }
    .social li a i {
      font-size: 16px;
      margin: 0 0 0 5px;
      color: #edeff1 !important; }
  .social li.facebook {
    background: none repeat scroll 0 0 #3b5998; }
  .social li.twitter {
    background: none repeat scroll 0 0 #0084b4; }
  .social li.pinterest {
    background: none repeat scroll 0 0 #c8232c; }
  .social li.youtube {
    background: none repeat scroll 0 0 #c4302b; }
  .social li.instagram {
    background: #d6249f;
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    border: 0; }

.paymentMethodImg img {
  margin-left: 5px; }

/*
*
*   Basic horizontal menu
*
*/
.megamenu .megamenu-content:before, .megamenu .megamenu-content:after {
  display: table;
  content: "";
  line-height: 0; }

/*
*
*   Has submenu item styling
*
*/
/*
*
*   Basic submenu
*
*/
/*
*
*   Full width submenu
*
*/
.breadcrumb {
  border: 1px solid #dddddd;
  background: none;
  font-size: 14px; }

.footer a:hover {
  color: #a29061; }

.navbar-toggle {
  background: #897748; }
  .navbar-toggle a {
    color: #ffffff; }

.navbar-tshop {
  width: 100%; }

.menuWrap {
  border-top: 1px solid #666668;
  background: linear-gradient(to bottom, #777978 0, #323d42 100%);
  filter: progid:dximagetransform.microsoft.gradient(startcolorstr='$menu-gradient-color-1', endcolorstr='$menu-gradient-color-2',gradienttype=0 ); }

.brandWrap {
  background-color: #ffffff;
  transition: all 0.2s ease-out 0s;
  height: auto; }

.navbar-brand {
  padding: 15px 15px 15px 0;
  color: #ffffff;
  font-size: 28px;
  font-weight: bold; }
  .navbar-brand img {
    height: auto !important;
    max-height: 85px; }

.navbar .navbar-top {
  height: 30px;
  transition: all 0.1s ease-out 0s;
  font-size: 11px;
  font-weight: bold;
  line-height: 11px;
  text-transform: uppercase; }

.navbar.stuck .navbar-top {
  margin-top: -30px; }

.navbar-box {
  display: table;
  position: relative;
  height: 100%;
  float: right; }

.navbar-box > * {
  display: table-cell;
  vertical-align: middle; }

.navbar-box > div {
  height: 115px; }

.megamenu .nav {
  position: static; }
  .megamenu .nav.pull-right .dropdown-menu {
    right: 0; }

.megamenu .dropup {
  position: static; }

.megamenu .dropdown {
  position: static; }
  .megamenu .dropdown.megamenu-fullwidth .dropdown-menu {
    width: 100%;
    left: 0;
    right: 0; }
  .megamenu .dropdown.megamenu-80width .dropdown-menu {
    width: 80%;
    left: 0;
    right: 0; }
  .megamenu .dropdown.megamenu-50width .dropdown-menu {
    width: 50%;
    left: 0;
    right: 0; }
  .megamenu .dropdown.megamenu-40width .dropdown-menu {
    width: 40%;
    left: 0;
    right: 0; }

.megamenu .collapse {
  position: static; }

.megamenu .navbar-inner {
  position: relative; }

.megamenu .container {
  position: relative; }

.megamenu .dropdown-menu {
  left: auto; }
  .megamenu .dropdown-menu > li {
    display: block; }

.megamenu .megamenu-content {
  padding: 0px 30px;
  *zoom: 1; }
  @media (min-width: 767px) {
    .megamenu .megamenu-content {
      padding: 20px 30px; } }
  .megamenu .megamenu-content:after {
    clear: both; }
  .megamenu .megamenu-content .special {
    display: none; }
    @media (min-width: 767px) {
      .megamenu .megamenu-content .special {
        display: block; } }

.megamenu.navbar .nav > li > .dropdown-menu:after {
  display: none; }

.megamenu.navbar .nav > li > .dropdown-menu:before {
  display: none; }

@media (max-width: 969px) {
  .megamenu .megamenu-content {
    padding-left: 0;
    padding-right: 0; }
  .megamenu .dropdown.megamenu-fullwidth .dropdown-menu {
    width: auto; }
  .megamenu .dropdown-menu > li > ul {
    display: block; } }

.megamenu-content img {
  max-width: 100%; }

.megamenu-content ul {
  padding-left: 25px; }
  @media (min-width: 767px) {
    .megamenu-content ul {
      padding-left: 15px; } }
  .megamenu-content ul li {
    border-bottom: 1px solid #ededed;
    margin-bottom: 5px;
    padding-bottom: 5px;
    padding-left: 15px; }
    .megamenu-content ul li.no-border {
      border: 0 !important; }
    @media (min-width: 767px) {
      .megamenu-content ul li {
        padding-left: 0; }
        .megamenu-content ul li.no-border {
          border-bottom: 1px solid #ededed; } }
    .megamenu-content ul li a {
      font-size: 12px; }

.itemInMenu {
  margin-bottom: 0 !important; }
  .itemInMenu .image {
    max-height: 170px !important; }

.cboth .nav > li > a {
  text-transform: uppercase; }

.nav > li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
  @media (min-width: 767px) {
    .nav > li {
      border-bottom: none; } }
  .nav > li.active {
    background: #897748; }
  .nav > li > a {
    padding-left: 25px;
    font-size: 14px;
    font-weight: 600; }
    @media (min-width: 767px) {
      .nav > li > a {
        padding-left: 15px; } }
    .nav > li > a:hover {
      background: #897748; }
    .nav > li > a:focus {
      background: #897748; }
  .nav > li:hover > a {
    background: #897748; }

.nav .open > a {
  background: #897748; }
  .nav .open > a:hover {
    background: #897748; }
  .nav .open > a:focus {
    background: #897748; }

.dropdown-menu {
  border-top: solid #897748; }

.promo-1 {
  background: #897748; }

.navbar-nav > li > a {
  color: #ffffff; }

.cartMenu:hover > a.dropdown-toggle {
  background: #897748; }

.social-icon li {
  display: inline-block; }
  .social-icon li a {
    color: #ffffff;
    display: inline-block;
    font-size: 18px;
    height: auto;
    margin-left: 0;
    padding: 6px 9px;
    position: relative;
    text-align: center;
    z-index: 10;
    box-shadow: 0;
    transition: all 0.2s ease-out 0s; }
    .social-icon li a:hover {
      opacity: 0.8;
      box-shadow: 0 0 5px rgba(0, 0, 0, 0.4) inset; }

.navbar-toggle .icon-bar {
  border: solid 2px #ffffff; }

.userMenu li {
  display: block;
  float: left; }
  .userMenu li a {
    color: #ffffff;
    display: block;
    float: right;
    font-size: 12px;
    line-height: 30px;
    padding: 0 20px 0 0;
    text-decoration: none;
    transition: opacity 0.2s ease-out 0s; }
    .userMenu li a:hover {
      opacity: 0.9; }

.phone-number span {
  float: left; }

.newProductMenuBlock {
  display: block;
  position: relative; }
  .newProductMenuBlock:hover i {
    font-size: 16px; }

.ProductMenuCaption {
  position: absolute;
  bottom: 0;
  color: #ffffff;
  text-align: center;
  width: 100%;
  padding: 5px 0;
  font-weight: 600;
  font-size: 16px;
  background: rgba(0, 0, 0, 0.8);
  filter: progid;
  zoom: 1; }
  .ProductMenuCaption:nth-child(n) {
    filter: none; }
  .ProductMenuCaption i {
    font-size: 0;
    transition: all 0.2s ease-out 0s;
    -webkit-transition: all 0.2s ease-out 0s;
    -moz-transition: all 0.2s ease-out 0s;
    -ms-transition: all 0.2s ease-out 0s;
    -o-transition: all 0.2s ease-out 0s; }

.newCollectionUl li {
  font-weight: 600; }

.productPopItem {
  border: solid 1px #dddddd; }
  .productPopItem .productInfo {
    color: #ffffff;
    display: block;
    font-size: 14px;
    margin-top: -50px;
    padding: 5px 0;
    position: relative;
    text-align: center;
    width: auto;
    z-index: 4; }

.popProImg a {
  display: block;
  max-height: 270px;
  overflow: hidden; }

.productPop h4 {
  bottom: 0;
  color: #ffffff;
  font-size: 14px;
  line-height: normal !important;
  padding: 3px 0 0 !important;
  position: absolute;
  width: 100%;
  background: rgba(0, 0, 0, 0.8);
  filter: progid;
  zoom: 1; }
  .productPop h4:nth-child(n) {
    filter: none; }
  .productPop h4 a {
    color: #ffffff !important; }

@media (min-width: 979px) {
  .navbar-tshop ul.nav li.dropdown:hover ul.dropdown-menu {
    display: block;
    filter: none;
    opacity: 1; }
  div.cartMenu.dropdown:hover div.dropdown-menu {
    display: block;
    filter: none;
    opacity: 1; }
  .megamenu-content ul li a {
    transition: all 0.2s ease 0s;
    display: block; }
    .megamenu-content ul li a:hover {
      padding-left: 5px; }
    .megamenu-content ul li a.newProductMenuBlock:hover {
      padding-left: 0; }
  .megamenu-content ul li.productPopItem a:hover {
    padding-left: 0; }
  .navbar.stuck .brandWrap {
    height: 0;
    overflow: hidden; } }

.search-box {
  float: right;
  height: 48px;
  width: 38px; }
  .search-box.static-search {
    width: auto; }
    .search-box.static-search #search-form {
      padding-right: 0; }
    .search-box.static-search .input-group {
      margin-top: 1px;
      -webkit-transition: all 0.3s ease-out;
      -moz-transition: all 0.3s ease-out;
      -ms-transition: all 0.3s ease-out;
      -o-transition: all 0.3s ease-out;
      transition: all 0.3s ease-out; }
    .search-box.static-search .form-control {
      width: auto;
      padding: 0;
      height: 33px;
      border: solid 1px #ffffff;
      opacity: 1;
      -webkit-transition: all 0.3s ease-out;
      -moz-transition: all 0.3s ease-out;
      -ms-transition: all 0.3s ease-out;
      -o-transition: all 0.3s ease-out;
      transition: all 0.3s ease-out; }
    .search-box.static-search button {
      border: 0 !important;
      margin: 0 !important; }
    .search-box.static-search:hover .form-control {
      opacity: 1;
      border: solid 1px #ffffff;
      color: #444444;
      background: #ffffff; }
  .search-box .input-group {
    margin-top: 10px;
    max-width: 34px;
    transition: all 0.3s ease-out 0s; }
  .search-box:hover .input-group {
    max-width: 183px; }
  .search-box:hover .form-control {
    border: solid 1px #ffffff; }
  .search-box:hover .btn-nobg {
    background: #ffffff !important; }
  .search-box .form-control {
    width: 0;
    padding: 0;
    height: 34px;
    border: 0;
    opacity: 0;
    transition: all 0.3s ease-out 0s; }

.btn-nobg {
  background: none;
  color: #ffffff; }

.search-full {
  bottom: 0;
  letter-spacing: 1px;
  min-height: 50px;
  position: absolute;
  right: 0;
  text-align: right;
  white-space: nowrap;
  width: 100%;
  z-index: 10;
  display: none; }
  .search-full.active {
    display: block; }

.searchInputBox {
  display: block;
  max-width: 90%;
  text-align: right;
  width: 100%; }
  .searchInputBox .search-btn {
    border: none;
    padding: 0 10px 0 0;
    color: rgba(255, 255, 255, 0.8); }

.search-close {
  background: rgba(0, 0, 0, 0.3);
  display: table;
  float: right;
  font-size: 32px;
  height: 51px;
  padding: 0 15px; }
  .search-close i {
    display: table-cell;
    vertical-align: middle;
    transition: all 0.5s ease 0s; }
  .search-close:hover i {
    transform: scale(1.15) rotate(-180deg); }

.search-input {
  border: 0 none;
  color: #ffffff;
  font-size: 20px;
  line-height: 1.2;
  margin: 0;
  outline: medium none;
  text-align: right;
  padding: 13px 0 13px 15px;
  width: 100%;
  max-width: 90%; }

.search-input::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.6); }

.search-input::-moz-input-placeholder {
  color: rgba(255, 255, 255, 0.6); }

.navbar-nav.navbar-right:last-child {
  margin-right: 0; }

.search-full, .search-input {
  background: linear-gradient(to bottom, #777978 0%, #323d42 100%); }

.search-close {
  color: #a29061; }
  .search-close:hover {
    color: #897748;
    text-decoration: none; }

.searchInputBox .search-btn {
  color: #fff; }

.search-box:hover .form-control {
  background: #a29061; }

.search-box:hover .btn-nobg {
  color: #a29061; }

.close-menu-arrow {
  float: right;
  width: 100%; }
  .close-menu-arrow .navbar-toggle {
    color: #897748;
    font-size: 24px;
    background: none; }

.cboth {
  clear: both; }

.QuickMobileSearch {
  float: left;
  width: 100%; }
  .QuickMobileSearch .wrap {
    margin: 0 15px 15px 25px;
    background-color: #fff;
    border-radius: 10px; }
    .QuickMobileSearch .wrap a {
      margin-left: 10px; }
      .QuickMobileSearch .wrap a i {
        color: #444;
        font-size: 20px; }
    .QuickMobileSearch .wrap .search-input {
      background: none;
      color: #444;
      text-align: left;
      max-width: 80%;
      padding: 8px 0 8px 15px; }
      .QuickMobileSearch .wrap .search-input::-webkit-input-placeholder {
        color: #444; }
      .QuickMobileSearch .wrap .search-input:-moz-placeholder {
        /* Firefox 18- */
        color: #444; }
      .QuickMobileSearch .wrap .search-input::-moz-placeholder {
        /* Firefox 19+ */
        color: #444; }
      .QuickMobileSearch .wrap .search-input:-ms-input-placeholder {
        color: #444; }

@media only screen and (max-width: 768px) {
  #sc-amount {
    display: none; } }

#sc-amountitems {
  text-align: center;
  background-color: #000;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  padding: 2px;
  padding-top: 0;
  position: absolute;
  right: -15px;
  top: -16px;
  visibility: hidden; }
  @media only screen and (min-width: 768px) {
    #sc-amountitems {
      display: none; } }
  #sc-amountitems .cartRespons {
    top: -2px;
    position: relative; }

@media only screen and (max-width: 768px) {
  .flex-item .fa-shopping-cart {
    font-size: 20px; } }

.flex-container {
  display: -webkit-flex;
  display: flex; }

.flex-container .flex-item:first-child {
  height: 40px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  text-align: right; }

.flex-container .flex-item:last-child {
  height: 42px;
  -webkit-align-self: center;
  -ms-flex-item-align: center;
  align-self: center;
  text-align: left;
  position: relative; }
  .flex-container .flex-item:last-child .caret {
    display: none; }

.ImageLogo {
  margin: auto; }
  @media (min-width: 767px) {
    .ImageLogo {
      margin: 0; } }

.MobileMenu {
  text-align: center; }
  .MobileMenu.flex-container {
    justify-content: center;
    padding: 10px 0; }
  .MobileMenu .flex-item {
    height: auto !important;
    width: 100px; }
    .MobileMenu .flex-item span {
      color: #fff;
      font-size: 13px;
      height: 20px; }
  .MobileMenu .open-top-menu {
    width: auto; }
    .MobileMenu .open-top-menu .navbar-toggle {
      padding: 0;
      margin: 0;
      color: #897748;
      font-size: 24px;
      background: none; }
    .MobileMenu .open-top-menu i {
      padding: 0px;
      margin: 0 10px;
      font-size: 24px !important; }

.navbar-top {
  height: auto !important; }

@media only screen and (max-width: 768px) {
  #top-menu {
    display: none; } }

#top-menu-m ul li {
  border-bottom: 0; }
  #top-menu-m ul li a {
    display: inline-block;
    width: 100%; }
    #top-menu-m ul li a .nav-icons {
      width: 25px;
      height: 100%;
      float: left; }

.visible-xs-sm {
  display: inline-block; }
  @media (min-width: 767px) {
    .visible-xs-sm {
      display: none; } }

.visible-md-lg {
  display: none; }
  @media (min-width: 767px) {
    .visible-md-lg {
      display: inline-block; } }

@media only screen and (min-width: 768px) {
  .visible-sm-down-flex {
    display: none; } }

.navmenu-fixed-left .nav.navbar-nav {
  margin: 0;
  width: 100%; }

.navmenu-default, .navbar-default .navbar-offcanvas {
  background-color: #323d42;
  border-color: #ededed; }

.navmenu-fixed-left .navbar-nav li > a {
  padding: 10px 25px !important; }

.navmenu-fixed-left .navbar-nav li .newCollectionUl li > a {
  padding: 0 !important;
  display: block; }

.navbar-nav li.dropdown.megamenu-fullwidth .fa.fa-angle-down, .navbar-nav li.dropdown.megamenu-fullwidth .fa.fa-angle-up {
  float: right;
  padding: 5px 0; }

.navbar-nav.navmenu-fixed-left li > a {
  padding: 10px 25px; }

.search-box {
  float: none; }
  @media (min-width: 767px) {
    .search-box {
      float: right; } }

.dropdown-menu .promo-1 {
  display: none !important; }

@media screen and (min-width: 768px) {
  .dropdown-menu .promo-1 {
    display: block !important; } }

@media screen and (min-width: 768px) {
  .dropdown .fa.fa-angle-down {
    display: none; } }

/*
*
*   Basic horizontal menu
*
*/
.megamenu .megamenu-content:before, .megamenu .megamenu-content:after {
  display: table;
  content: "";
  line-height: 0; }

/*
*
*   Has submenu item styling
*
*/
/*
*
*   Basic submenu
*
*/
/*
*
*   Full width submenu
*
*/
/* tree menu */
.nav.tree > li.active {
  background: none;
  color: #2c3e50; }

.nav.tree > li > a:hover, .nav.tree > li > a:focus {
  background: none;
  color: #2c3e50; }

.nav.tree > li:hover > a {
  background: none;
  color: #2c3e50; }

.nav.tree .open-tree > a {
  background: none;
  font-weight: bold;
  color: #2c3e50; }
  .nav.tree .open-tree > a:hover, .nav.tree .open-tree > a:focus {
    background: none;
    font-weight: bold;
    color: #2c3e50; }

.btn,
input[type="submit"] {
  color: #ffffff;
  background: linear-gradient(90deg, #a29061 0%, #897748 100%);
  border: 0;
  transition: none !important; }
  .btn,
  input[type="submit"], .btn-primary,
  .btn-site,
  .btn-discover, .btn-default, .btn-danger {
    border-radius: 4px;
    padding: 0.6rem 1.2rem;
    border: 0; }
    .btn:hover,
    input:hover[type="submit"], .btn-primary:hover,
    .btn-site:hover,
    .btn-discover:hover, .btn-default:hover, .btn-danger:hover {
      cursor: pointer;
      color: #ffffff; }
  .btn:hover, .btn:focus,
  input[type="submit"]:hover,
  input[type="submit"]:focus {
    background: #8a7a52 !important; }

.btn-primary,
.btn-site,
.btn,
.btn-discover {
  color: #ffffff;
  background: linear-gradient(90deg, #a29061 0%, #897748 100%);
  border: 0;
  transition: none !important; }
  .btn-primary:hover, .btn-primary:focus,
  .btn-site:hover,
  .btn-site:focus,
  .btn:hover,
  .btn:focus,
  .btn-discover:hover,
  .btn-discover:focus {
    background: #8a7a52 !important; }

.btn-discover {
  color: #ffffff;
  background: linear-gradient(90deg, #a29061 0%, #897748 100%);
  border: 0;
  transition: none !important;
  border: 2px solid rgba(255, 255, 255, 0.7);
  font-size: 2.2rem;
  padding: 10px 57px; }
  .btn-discover:hover, .btn-discover:focus {
    background: #8a7a52 !important; }

.btn-default {
  color: #ffffff;
  background-color: #BDC3C7;
  border: 0; }
  .btn-default:hover, .btn-default:focus {
    background-color: #a1a6a9 !important; }

.btn-danger {
  color: #ffffff;
  background-color: #E74C3C;
  border: 0; }
  .btn-danger:hover, .btn-danger:focus {
    background-color: #c44133 !important; }

.btn-lg {
  border-radius: 6px;
  font-size: 1.6rem;
  line-height: 1.471;
  padding: 1.1rem 1.2rem; }

.btn-sm {
  border-radius: 3px;
  font-size: 1.3rem;
  line-height: 1.5;
  padding: .4rem 1rem; }

.open .dropdown-toggle.btn-primary {
  background: #a29061; }

.fb_button {
  background: #658AD0;
  color: #ffffff;
  display: block;
  text-align: center;
  text-decoration: none; }

.btn-fb {
  background: #658AD0;
  color: #ffffff; }

.fb_button:hover,
.btn-fb:hover {
  background: #4E6FAE;
  color: #ffffff;
  text-decoration: none; }

.btn-tw {
  background: #1DADEB;
  color: #ffffff; }

.btn-tw:hover {
  background: #35C5FF;
  color: #ffffff;
  text-decoration: none; }

.btn-nobg {
  background: none; }

textarea, .form-control, select.form-control, fieldset.web2small select, select {
  background: #ffffff;
  border-color: #dddddd;
  border-radius: 3px 0 0 3px;
  border-style: solid;
  border-width: 2px 1px 1px 2px;
  color: #888888;
  line-height: 1.5;
  font-size: 14px;
  margin-bottom: 10px; }
  textarea:focus, .form-control:focus, select.form-control:focus, fieldset.web2small select:focus, select:focus {
    box-shadow: NONE;
    outline: 0 none; }

input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="tel"], input[type="color"] {
  background-color: #ffffff;
  border-color: #dddddd;
  border-radius: 3px 0 0 3px;
  border-style: solid;
  border-width: 2px 1px 1px 2px;
  color: #888888;
  line-height: 1.5;
  font-size: 14px;
  margin-bottom: 10px;
  height: 36px; }
  input[type="text"]:focus, input[type="password"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="tel"]:focus, input[type="color"]:focus {
    box-shadow: NONE;
    outline: 0 none; }

.input-error {
  border-color: red !important;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px red !important; }

.input-valid {
  border-color: #28921f !important;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #5cd053 !important; }

.uneditable-input {
  background-color: rgba(255, 255, 255, 0.9);
  border: 1px solid #666668;
  border-radius: 4px;
  color: #888888;
  font-size: 13px;
  height: 38px;
  line-height: 1.5;
  padding: 8px 12px; }

.form-control:focus {
  border-color: #a29061;
  box-shadow: none;
  outline: 0 none; }

.modal {
  overflow: auto; }

.modal-dialog {
  max-width: 460px; }

.modal-header {
  border-bottom: 1px solid #e5e5e5;
  color: #ffffff;
  padding: 5px 15px;
  margin-bottom: 20px;
  background: #a29061; }

.modal-title-site {
  color: #ffffff;
  font-family: Oswald;
  font-size: 38px;
  font-weight: lighter;
  padding: 13px 0;
  text-transform: uppercase; }

.modal-content {
  border: 0 solid #dddddd;
  border-radius: 0;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4); }

.modal-footer {
  background: #eee;
  border-top: 1px solid #e5e5e5;
  padding: 10px 20px; }

.modal-body {
  border: 1px solid #ebedef; }
  .modal-body .product-title {
    font-size: 20px;
    border-bottom: 1px solid #cecece;
    padding: 10px 0 0;
    margin-bottom: 15px; }
  .modal-body .price {
    color: #444444;
    font-size: 15px;
    font-weight: 700; }
  .modal-body h2 {
    color: #444444; }

.product:hover .btn-quickview {
  visibility: visible;
  opacity: 0.85;
  transform: scale(1); }

.product:hover div.quickview {
  visibility: visible; }

.product > .btn-quickview:hover {
  opacity: 0.95; }

.btn-quickview {
  border-radius: 4px;
  font-family: Oswald, Helvetica Neue, Arial, sans-serif;
  letter-spacing: 2px;
  color: #2c3e50 !important;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.9);
  border: 1px solid #eee;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
  left: auto;
  min-width: 100px;
  max-height: 40px;
  height: 40px !important;
  opacity: 0;
  padding: 10px;
  visibility: hidden;
  width: auto;
  display: inline-block !important;
  z-index: 2;
  transform: scale(0.75);
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s; }

@media (max-width: 460px) {
  div .quickview {
    margin-top: 25%; } }

@media (max-width: 400px) {
  div .quickview {
    margin-top: 35%; } }

.ModalBackground {
  background-color: #444;
  opacity: 0.8;
  filter: alpha(opacity=80); }

#product-details-modal .modal-dialog {
  background: #ffffff;
  max-width: 960px;
  overflow: auto;
  width: 100%; }

#product-details-modal .close {
  color: #2c3e50;
  display: block;
  font-size: 34px;
  font-weight: lighter;
  line-height: 10px;
  opacity: 0.6;
  padding: 12px;
  position: absolute;
  right: 0;
  text-shadow: none;
  top: 0;
  z-index: 1; }
  #product-details-modal .close:hover {
    opacity: 0.8; }

#product-details-modal .modal-content {
  background: #ffffff;
  display: block;
  height: auto;
  padding: 0;
  box-shadow: none; }

#product-details-modal .productFilter {
  margin-bottom: 10px;
  margin-top: 10px;
  padding-bottom: 10px;
  padding-top: 10px; }

#product-details-modal .filterBox {
  display: inline-block;
  width: 45%; }

#product-details-modal .cart-actions {
  margin-bottom: 0;
  margin-top: 0; }

#product-details-modal .color-details {
  margin-top: 5px; }

#product-details-modal .product-share {
  border-top: 0 none;
  margin-top: 0;
  padding-top: 0; }

@media (max-width: 800px) {
  #product-details-modal .modal-dialog {
    max-width: 90%;
    margin: 20px auto; } }

@media (min-width: 840px) {
  .modal-details-inner {
    min-height: 552px; } }

@media (max-width: 600px) {
  #product-details-modal .modal-dialog {
    max-width: 96%;
    margin: 20px auto; } }

.modal-details-inner {
  padding: 30px; }

.modal-product-thumb {
  border-top: 1px solid #dddddd;
  clear: both;
  display: block;
  text-align: center; }
  .modal-product-thumb a {
    border: 1px solid #cccccc;
    display: inline-block;
    float: none;
    margin-right: 10px !important;
    margin-top: 5px;
    height: 75px;
    overflow: hidden;
    width: 60px !important; }
    .modal-product-thumb a.selected {
      border: 1px solid #000 !important; }
    .modal-product-thumb a:hover {
      border: 1px solid #000 !important; }
    .modal-product-thumb a img {
      display: block;
      max-width: 100%;
      height: auto;
      max-height: 75px;
      width: 60px !important; }

div.quickview {
  display: block;
  margin-top: 40%;
  max-height: 50px;
  position: absolute;
  text-align: center;
  width: 100%;
  z-index: 2;
  visibility: hidden; }

.list-view .product:hover div.quickview {
  margin-top: 45%; }

#modalAds .modal-bg-1 {
  background: url(../../images/site/modal-img-1.jpg) right bottom no-repeat;
  background-color: #f3f6fb; }

#modalAds .modal-dialog {
  max-width: 660px;
  min-height: 340px;
  display: block;
  overflow: auto;
  padding: 15px;
  position: relative; }

#modalAds h3 {
  color: #444444;
  font-family: Oswald, Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 26px;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 29px;
  text-transform: uppercase; }

#modalAds h4 {
  font-size: 24px;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 28px;
  text-transform: uppercase; }

.discountLg {
  color: #000;
  font-family: Oswald, Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 46px;
  font-weight: bold;
  letter-spacing: 3px;
  line-height: 46px;
  text-transform: uppercase; }

.newsletter {
  border: 2px solid #dddddd;
  display: inline-block;
  width: auto; }
  .newsletter input[type="text"] {
    background: #ffffff;
    border: medium none;
    float: left;
    height: 40px;
    margin: 0;
    padding: 0;
    text-align: center; }
    .newsletter input[type="text"]:focus {
      text-shadow: none;
      color: #666; }
  .newsletter .subscribe-btn {
    background: #dddddd;
    border: 0 none;
    border-radius: 0;
    color: #3a3a3a;
    float: left;
    font-weight: normal;
    height: 40px;
    line-height: normal;
    padding: 0 10px; }
    .newsletter .subscribe-btn:hover {
      background: #b7b7b7; }

@media (max-width: 442px) {
  .discountLg {
    font-size: 36px;
    letter-spacing: 2px;
    line-height: 40px; }
  .newsletter input[type="text"] {
    width: 100%; }
  .newsletter .subscribe-btn {
    margin-left: 0;
    margin-top: 5px;
    width: 100%; }
  #modalAds h3 {
    color: #444;
    font-size: 22px;
    letter-spacing: 1px;
    line-height: 26px; } }

.shoplink {
  color: #000;
  display: inline-block;
  clear: both;
  font-family: Oswald, Helvetica Neue, Helvetica, Arial, sans-serif;
  left: 2px;
  margin-top: 20px;
  text-decoration: underline;
  text-transform: uppercase; }

.modal-bg-1 .close {
  color: #2c3e50;
  display: block;
  font-size: 34px;
  font-weight: lighter;
  line-height: 10px;
  opacity: 0.6;
  padding: 12px;
  position: absolute;
  right: 0;
  text-shadow: none;
  top: 0;
  z-index: 1; }

.panel-default > .panel-heading {
  border-top: 4px solid #a29061; }

.panel-default > .active {
  border-top: 4px solid #006633; }

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus,
.nav-tabs > li:hover > a {
  background: #B5B5B5; }

.nav-tabs {
  border-bottom: 3px solid #B5B5B5; }

.alert {
  border: none;
  border-left: 5px solid rgba(0, 0, 0, 0.1);
  border-radius: 0; }

.alert .close {
  font-size: 30px;
  line-height: 20px; }

.pagination > li > a,
.pagination > li > span {
  background-color: #a29061;
  color: #ffffff; }

.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
  background-color: #897748;
  border-color: #897748;
  color: #ffffff;
  box-shadow: 0 0 9px rgba(0, 0, 0, 0.2) inset; }

.pagination > li > a:hover {
  background-color: #897748;
  border-color: #897748;
  color: #ffffff; }

.thumbnail {
  padding: 0;
  border: 0;
  border-radius: 4px; }

.checkbox {
  padding-left: 0;
  margin-left: 0; }

.icheckbox_line-orange, .iradio_line-orange {
  position: relative;
  margin: 0;
  padding: 5px 10px;
  font-size: 18px;
  line-height: 22px;
  color: #ffffff;
  background: #b5b5b5;
  border-radius: 4px;
  cursor: pointer;
  display: inline-block;
  margin-right: 3px;
  text-align: center;
  height: 36px;
  min-width: 36px;
  border: solid 2px #a8a8a8; }

.icheckbox_line-orange .icheck_line-icon, .iradio_line-orange .icheck_line-icon {
  position: absolute;
  top: 50%;
  left: 13px;
  width: 13px;
  height: 11px;
  margin: -5px 0 0;
  padding: 0;
  overflow: hidden;
  background: url(line.png) no-repeat;
  border: none; }

.icheckbox_line-orange.checked.hover, .iradio_line-orange.checked.hover {
  background: #ffffff;
  color: #666;
  border: solid 2px #a29061; }

.icheckbox_line-orange.hover {
  background: #ffffff;
  color: #666; }

.icheckbox_line-orange.checked {
  background: #a29061;
  border: 2px solid #897748; }
  .icheckbox_line-orange.checked.hover {
    background: #ffffff;
    color: #666; }
  .icheckbox_line-orange.checked .icheck_line-icon {
    background-position: -15px 0; }
  .icheckbox_line-orange.checked.disabled {
    background: #ffd6b3; }
    .icheckbox_line-orange.checked.disabled .icheck_line-icon {
      background-position: -45px 0; }

.icheckbox_line-orange.disabled {
  background: #ffd6b3;
  cursor: default; }
  .icheckbox_line-orange.disabled .icheck_line-icon {
    background-position: -30px 0; }

.iradio_line-orange.hover {
  background: #ffffff;
  color: #666; }

.iradio_line-orange.checked {
  background: #a29061;
  border: 2px solid #897748; }
  .iradio_line-orange.checked .icheck_line-icon {
    background-position: -15px 0; }
  .iradio_line-orange.checked.disabled {
    background: #ffd6b3; }
    .iradio_line-orange.checked.disabled .icheck_line-icon {
      background-position: -45px 0; }

.iradio_line-orange.disabled {
  background: #ffd6b3;
  cursor: default; }
  .iradio_line-orange.disabled .icheck_line-icon {
    background-position: -30px 0; }

@media (-o-min-device-pixel-ratio: 5 / 4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi), (min-resolution: 1.25dppx) {
  .icheckbox_line-orange .icheck_line-icon {
    background-image: url(line@2x.png);
    background-size: 60px 13px; }
  .iradio_line-orange .icheck_line-icon {
    background-image: url(line@2x.png);
    background-size: 60px 13px; } }

.scrollToTop, a.scrollToTop {
  background-color: #a29061;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 50% 50% 50% 50%;
  border: 2px solid #ffffff;
  bottom: 55px;
  cursor: pointer;
  display: block;
  height: 40px;
  margin: 0;
  position: fixed;
  right: 10px;
  width: 40px;
  z-index: 4;
  padding: 4px 9px;
  font: 400 18px Open Sans, Sans-serif;
  color: #ffffff;
  transition: all 0.3s ease 0s; }

.scrollToTop:hover, .scrollToTop:focus {
  color: #ffffff;
  text-decoration: none;
  background-color: #897748; }

.banner, .slider-content, .slider, .slider-v2 {
  width: 100%;
  display: block;
  max-height: 500px;
  height: auto;
  overflow: hidden;
  position: relative; }

.sliderImg {
  background: url("../../images/site/loading1.gif") center center no-repeat;
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
  width: 145%;
  max-width: none !important; }
  @media (min-width: 480px) {
    .sliderImg {
      width: 100%;
      max-width: 100%; } }

.banner {
  margin-top: 175px;
  transition: all 0.1s ease-out 0s; }
  .banner.down {
    margin-top: 26px; }
  .banner .sliderInfo {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 2; }
    .banner .sliderInfo .container {
      height: 100%;
      display: block; }
  .banner:hover .prevControl {
    transform: translateX(0);
    opacity: 1;
    filter: none; }
  .banner:hover .nextControl {
    transform: translateX(0);
    opacity: 1;
    filter: none; }

.banner-boxes {
  margin-top: 80px; }

.slider-item {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden; }
  .slider-item.cycle-slide-active .sliderText {
    transform: translateX(0);
    opacity: 1;
    filter: none; }
  .slider-item.cycle-slide-active .transformRight {
    transform: translateX(0);
    opacity: 1;
    filter: none; }
  .slider-item.cycle-slide-active .transformLeft {
    transform: translateX(0);
    opacity: 1;
    filter: none; }

.sliderText {
  margin-top: 11% !important;
  max-width: 75%;
  margin: auto;
  padding: 10px; }
  .sliderText h1 {
    font-size: 2rem !important;
    font-weight: bold;
    color: #444444; }
  .sliderText h3 {
    color: #444444;
    font-size: 1.5rem; }
  .sliderText.white {
    background: rgba(255, 255, 255, 0.8);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#ccffffff, endColorstr=#ccffffff);
    zoom: 1; }
    .sliderText.white:nth-child(n) {
      filter: none; }
    .sliderText.white h1 {
      padding-bottom: 0; }
  @media (min-width: 321px) {
    .sliderText {
      margin-top: 13% !important;
      padding: 15px; } }
  @media (min-width: 767px) {
    .sliderText {
      margin-top: 16% !important;
      max-width: 75%; } }
  @media (min-width: 767px) {
    .sliderText {
      display: block;
      float: right !important;
      transform: translateX(-120px);
      transition: opacity 0.5s linear, transform 0.7s cubic-bezier(0.56, 0.48, 0, 0.99);
      opacity: 0;
      filter: alpha(opacity=0);
      margin-top: 15% !important;
      max-width: none;
      width: 41.66666667%; }
      .sliderText:nth-child(n) {
        filter: none; }
      .sliderText .inner {
        padding: 20px; }
      .sliderText h1 {
        font-weight: bold;
        color: #444444;
        font-size: 3.5rem !important;
        line-height: 1.1; }
      .sliderText h3 {
        color: #444444;
        font-size: 2rem !important; }
      .sliderText.dark {
        color: #ddd; }
        .sliderText.dark h1 {
          color: #ffffff;
          text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
      .sliderText.white {
        background: rgba(255, 255, 255, 0.8);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#ccffffff, endColorstr=#ccffffff);
        zoom: 1; }
        .sliderText.white:nth-child(n) {
          filter: none; }
        .sliderText.white h1 {
          padding-bottom: 0; }
      .sliderText h3.price {
        font-size: 22px;
        font-weight: lighter; } }

.transformRight {
  display: block;
  transform: translateX(120px);
  transition: opacity 0.5s linear, transform 0.7s cubic-bezier(0.56, 0.48, 0, 0.99);
  opacity: 0;
  filter: alpha(opacity=0); }

.transformLeft {
  display: block;
  transform: translateX(-120px);
  transition: opacity 0.5s linear, transform 0.7s cubic-bezier(0.56, 0.48, 0, 0.99);
  opacity: 0;
  filter: alpha(opacity=0); }

.slide-link {
  color: #ffffff;
  letter-spacing: -0.25px;
  font-size: 16px; }

.slider-item-img1 {
  background-size: cover; }

.slider-item-img2 {
  background-size: cover; }

.slider-item-img3 {
  background-size: cover; }

#pager a.cycle-pager-active {
  background: rgba(39, 174, 96, 0.5); }

.pager2 a {
  border: 1px solid #a29061; }

.pager2 a.selected {
  background: #a29061; }

#pager2 {
  position: absolute;
  bottom: 10px;
  width: 100%;
  z-index: 200;
  margin: 0 auto;
  padding: 0;
  text-align: center; }
  #pager2 span {
    background: rgba(0, 0, 0, 0) !important;
    border-radius: 50%;
    cursor: pointer;
    display: inline-block;
    height: 16px;
    margin: 5px;
    text-indent: -9999px;
    width: 16px;
    border: 2px solid #ffffff; }
    #pager2 span.cycle-pager-active {
      color: #ffffff;
      background: #ffffff !important; }

.sliderControl {
  position: absolute;
  z-index: 200;
  top: 45%;
  display: inline-block;
  cursor: pointer;
  background: none repeat scroll 0 0 #a29061;
  border-radius: 6px;
  color: #ffffff;
  border: 2px solid #ffffff;
  padding: 0 15px;
  opacity: 1; }
  .sliderControl:hover {
    background: #897748;
    zoom: 1; }
    .sliderControl:hover:nth-child(n) {
      filter: none; }

.prevControl {
  left: 20px;
  transform: translateX(-50px);
  transition: opacity 0.5s linear, transform 0.7s cubic-bezier(0.56, 0.48, 0, 0.99);
  opacity: 0;
  filter: alpha(opacity=0); }

.nextControl {
  right: 20px;
  transform: translateX(50px);
  transition: opacity 0.5s linear, transform 0.7s cubic-bezier(0.56, 0.48, 0, 0.99);
  opacity: 0;
  filter: alpha(opacity=0); }

.sliderTextFull {
  margin-top: 15%;
  color: #ffffff; }
  .sliderTextFull h3 {
    font-size: 24px;
    line-height: 32px;
    margin-top: 0; }
  .sliderTextFull .opacity0 {
    opacity: 0 !important; }
  .sliderTextFull .inner.dark {
    display: block;
    margin: 0 auto;
    padding: 20px 10px;
    width: auto;
    background: rgba(0, 0, 0, 0.8);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#cc000000, endColorstr=#cc000000);
    zoom: 1; }
    .sliderTextFull .inner.dark:nth-child(n) {
      filter: none; }

.topAnima {
  opacity: 0; }

.cycle-slide-active .topAnima {
  opacity: 1;
  animation-name: fadeInUp;
  animation-duration: 1s;
  animation-delay: 0.3s;
  visibility: visible !important; }

.cycle-slide-active .sliderTextFull .bottomAnima {
  opacity: 1 !important;
  animation-name: fadeInDown;
  animation-duration: 1s;
  animation-delay: 0.4s;
  visibility: visible !important; }

.item h4 a, .panel-body h4 {
  color: #2c3e50;
  font-family: 'Source Sans Pro', 'sans-serif';
  font-weight: normal;
  text-decoration: none;
  text-transform: uppercase;
  padding-bottom: 10px; }

.productslider {
  width: 100%;
  display: block; }

.manufacturer .item {
  height: 300px; }

.manufacturer .product {
  height: 300px; }

.manufacturer .image {
  margin-top: 10px; }

.item {
  display: block;
  transition: all 0.3s ease 0s;
  margin-bottom: 15px;
  height: 480px; }
  .item.list-view {
    display: block;
    height: auto;
    overflow: hidden;
    width: 100%;
    margin-bottom: 20px; }
    .item.list-view .grid-description {
      display: none; }
    .item.list-view .list-description {
      display: block; }
    .item.list-view .image {
      display: block;
      float: left;
      overflow: hidden;
      position: relative;
      text-align: center;
      max-height: 260px;
      max-width: 200px;
      transition: all 0.5s ease 0s;
      padding-right: 20px;
      background: #ffffff; }
      .item.list-view .image a {
        display: block;
        height: 100%;
        max-height: 100% !important; }
      .item.list-view .image img {
        max-height: 260px;
        width: auto !important; }
    .item.list-view h4 {
      height: auto;
      margin: 45px 0 5px;
      font-size: 24px; }
      .item.list-view h4 a {
        font-weight: 600; }
    .item.list-view .description {
      text-align: right; }
      .item.list-view .description p {
        text-align: right;
        max-height: 200px;
        min-height: 10px; }
    .item.list-view .price {
      font-size: 22px;
      text-align: right; }
    .item.list-view .action-control {
      text-align: right; }
    .item.list-view .action-control a:hover,
    .item.list-view .action-control a.active {
      color: #ffffff;
      background: #897748; }
    .item.list-view .product:hover,
    .item.list-view .featuredImgLook2 .inner:hover {
      border: 1px solid #a29061; }
    .item.list-view .product {
      padding-right: 20px;
      min-height: 260px; }
    .item.list-view .item h4 {
      max-height: none; }
  .item h4 {
    min-height: 45px;
    max-height: 80px;
    overflow: hidden;
    display: block;
    line-height: 20px;
    margin: 25px 0 0;
    padding: 0; }
  .item:hover .action-control {
    border-bottom-color: #ffffff; }

.shoppingcartproduct {
  height: 330px;
  margin: 0 5px !important; }
  .shoppingcartproduct .description {
    min-height: 60px !important; }
  .shoppingcartproduct .image a img {
    max-height: 160px !important;
    margin-top: 10px; }

.product {
  display: block;
  height: auto;
  transition: all 0.3s ease 0s;
  border: 1px solid #dddddd;
  border-bottom: 1px solid #dddddd;
  text-align: center; }
  .product:hover {
    background: #ffffff; }
    .product:hover .add-fav {
      opacity: 1;
      webkit-transform: scale(1);
      transform: scale(1); }
    .product:hover .image a img {
      transform: scale(1.15) rotate(-1.5deg); }

.add-fav {
  border: 1px solid;
  border-radius: 50%;
  height: 30px;
  line-height: 31px;
  position: absolute;
  right: 30px;
  text-align: center;
  top: 15px;
  width: 30px;
  z-index: 10;
  transform: scale(1.15);
  transition: opacity 0.3s linear, transform 0.7s cubic-bezier(0.56, 0.48, 0, 0.99);
  opacity: 0;
  filter: alpha(opacity=0); }
  .add-fav i {
    webkit-transform: scale(1) rotate(0deg);
    transform: scale(1) rotate(0deg);
    transition: all .3s ease; }
  .add-fav:active i {
    webkit-transform: scale(0.85) rotate(0deg);
    transform: scale(0.85) rotate(4deg); }

.list-description {
  display: none; }

.image {
  display: block;
  overflow: hidden;
  position: relative;
  text-align: center;
  width: 100%;
  max-height: 240px;
  transition: all 0.5s ease 0s; }
  .image a {
    display: block;
    overflow: hidden; }
    .image a img {
      transition: all 0.5s ease 0s;
      max-height: 240px;
      margin: 0 auto; }

.promotion {
  position: absolute;
  z-index: 10;
  bottom: 20px;
  left: 0;
  height: 24px;
  width: auto;
  border-radius: 4px;
  line-height: 18px; }

.description {
  margin: 0 4px 0 5px;
  min-height: 107px; }
  .description p {
    color: #7f8c8d;
    font-size: 14px;
    min-height: 55px;
    max-height: 90px;
    overflow: hidden;
    line-height: 18px; }

.new-product {
  color: #ffffff;
  display: inline-block;
  float: left;
  font-family: 'Oswald', 'Helvetica Neue', 'Helvetica', 'Arial', 'sans-serif';
  font-size: 16px;
  font-weight: lighter;
  height: 100%;
  padding: 3px 10px;
  background: #316d1e !important; }

.discount {
  background: #eb5e58;
  border-radius: 0 4px 4px 0;
  color: #ffffff;
  display: inline-block;
  float: left;
  font-family: 'Oswald', 'Helvetica Neue', 'Helvetica', 'Arial', 'sans-serif';
  font-size: 16px;
  font-weight: lighter;
  height: 100%;
  padding: 3px 5px; }

.price {
  font-size: 18px;
  font-weight: bold;
  color: #2c3e50; }

.action-control {
  border: 0;
  display: block;
  height: auto;
  padding: 5px 0 10px;
  width: 100%; }
  .action-control a {
    cursor: pointer; }

.load-more-block {
  padding-bottom: 30px;
  position: relative; }
  .load-more-block .btn-thin {
    background: #ffffff;
    z-index: 2;
    position: relative;
    box-shadow: -4px 0 0 #ffffff, 4px 0 0 #ffffff; }
  .load-more-block:after {
    background: none repeat scroll 0 0 #dddddd;
    content: "";
    display: block;
    height: 1px;
    margin-left: 30%;
    position: absolute;
    top: 18px;
    width: 40%;
    z-index: 1; }

#productslider .item {
  margin: 0 15px; }

#SimilarProductSlider .item {
  height: auto !important; }

.list-view .product .add-fav {
  right: 40px;
  top: 8px; }

.product-box .item {
  margin: 0 10px; }
  .product-box .item:hover {
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.15);
    background: #ffffff; }

.cart a {
  font-size: 20px;
  color: #2c3e50;
  margin: 0;
  display: inline-block;
  transition: all 0.3s ease-out 0s; }

.featureImg a {
  display: block;
  overflow: hidden; }
  .featureImg a img {
    transition: all 0.4s ease 0s; }
    .featureImg a img:hover {
      transform: scale(1.1) rotate(-1.1deg); }

.parallax-section.isandroid, .parallax-image-1.isandroid, .parallax-image-2.isandroid, .parallax-image-3.isandroid, .parallax-image-aboutus.isandroid {
  background-size: cover !important;
  background-attachment: scroll !important;
  background-position: center center; }

.parallax-section {
  width: 100%;
  display: block;
  clear: both;
  height: auto; }
  .parallax-section.ismobile {
    background-attachment: scroll !important; }
  .parallax-section.isios {
    background-attachment: scroll !important;
    background-position: center center; }

.parallax-image-1 {
  background: url("../../images/parallax/parallax.jpg");
  background-size: cover;
  background-attachment: fixed; }
  .parallax-image-1.ismobile {
    background-attachment: scroll !important; }
  .parallax-image-1.isios {
    background-attachment: scroll !important;
    background-position: center center;
    background-color: #734e48;
    background-repeat: no-repeat; }

.parallax-image-2 {
  background: url("../../images/parallax/contactus.jpg") fixed;
  background-attachment: fixed; }
  .parallax-image-2.ismobile {
    background-attachment: scroll !important; }
  .parallax-image-2.isios {
    background-attachment: scroll !important;
    background-position: center center;
    background-size: auto 100% !important; }

.parallax-image-3 {
  background: url("../../images/parallax/aboutshop.jpg") fixed;
  background-attachment: fixed; }
  .parallax-image-3.ismoboile {
    background-attachment: scroll !important; }
  .parallax-image-3.isios {
    background-attachment: scroll !important;
    background-position: center center;
    background-size: auto 100% !important; }

.parallax-image-aboutus.ismobile {
  background-attachment: scroll !important; }

.parallax-image-aboutus.isios {
  background-attachment: scroll !important;
  background-position: center center; }

.parallaxPrce {
  font-size: 52px;
  color: #a29061;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8), 0 0 1px #ffffff; }

.parallax-content {
  text-align: center;
  padding: 50px 0; }
  .parallax-content h2 {
    color: #ffffff;
    display: inline-block;
    font-size: 25px;
    line-height: 25px;
    margin: 0 auto;
    max-width: 900px;
    padding: 5px 10px;
    text-align: center; }
  .parallax-content h3 {
    color: #dddddd;
    display: inline-block;
    font-size: 16px;
    font-weight: lighter;
    margin-bottom: 20px;
    max-width: 900px;
    padding: 0 10px;
    text-align: center; }

.btn-discover {
  background: none repeat scroll 0 0 linear-gradient(90deg, #a29061 0%, #897748 100%);
  border: 2px solid #ffffff;
  border-color: rgba(255, 255, 255, 0.7);
  border-radius: 6px;
  color: #ffffff;
  font-size: 22px;
  padding: 10px 57px;
  text-decoration: none;
  transition: all .3s ease; }
  .btn-discover:hover {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.7); }

.parallax-aboutus {
  text-align: left;
  padding: 50px 0;
  font-weight: 200;
  color: #ffffff; }
  .parallax-aboutus p,
  .parallax-aboutus span,
  .parallax-aboutus div {
    font-size: 16px !important; }
  .parallax-aboutus h1 {
    color: #ffffff;
    font-weight: 800;
    line-height: normal;
    text-transform: uppercase;
    padding-bottom: 20px; }
  .parallax-aboutus a {
    font-size: 16px;
    font-weight: 200;
    color: #ffffff;
    text-decoration: underline; }

.carousel-nav {
  font-size: 26px;
  margin-left: 10px;
  padding-bottom: 3px;
  padding-top: 3px; }

.parallax-section-overley {
  height: 100%;
  background: rgba(0, 0, 0, 0.15);
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.33); }

h1.xlarge {
  color: #ffffff;
  font-size: 44px;
  font-weight: 800;
  padding-bottom: 0;
  line-height: normal;
  text-transform: uppercase;
  font-style: italic; }

h1.x2large {
  color: #ffffff;
  font-size: 56px;
  line-height: normal;
  font-weight: 800;
  padding-bottom: 0;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8), 0 0 1px #ffffff;
  text-transform: uppercase; }

.brand-carousel li {
  float: left;
  display: inline-block; }
  .brand-carousel li img {
    max-width: 100%;
    width: 100%;
    padding-right: 20px; }

h5.parallaxSubtitle {
  font-size: 20px;
  font-weight: 200;
  color: #ffffff; }

.star-icon {
  color: #ddd;
  font-size: 1em;
  position: relative; }
  .star-icon.vol:before {
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.7);
    color: #a29061;
    content: '\2605';
    position: absolute;
    left: 0; }
  .star-icon.half:before {
    text-shadow: 0 0 2px rgba(0, 0, 0, 0.7);
    color: #a29061;
    content: '\2605';
    position: absolute;
    left: 0;
    width: 50%;
    overflow: hidden; }

@-moz-document url-prefix() {
  .star-icon {
    font-size: 50px;
    line-height: 34px; } }

.pace .pace-progress {
  background: #ffffff;
  background: rgba(255, 255, 255, 0.8);
  position: fixed;
  z-index: 2000;
  top: 0;
  left: 0;
  height: 2px;
  -webkit-transition: width 1s;
  -moz-transition: width 1s;
  -o-transition: width 1s;
  transition: width 1s; }

.pace-inactive {
  display: none; }

.box-4in .price, .box-text-table .dealprice {
  display: block;
  font-family: 'oswald', 'Helvetica Neue', 'Arial', 'Helvetica', 'sans-serif';
  font-size: 26px;
  font-weight: lighter;
  margin-bottom: 15px; }

.box-4in.a .box-content-overly, .box-4in.b .box-content-overly {
  bottom: 5px;
  right: 5px;
  top: auto; }

.box-text h1, .box-text-cell-inner h1 {
  font-size: 36px;
  letter-spacing: 3px;
  font-family: 'Oswald', 'Helvetica Neue', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: normal;
  text-transform: uppercase; }

.box-text h2, .box-text-cell-inner h2 {
  font-size: 20px;
  letter-spacing: 2px;
  font-family: 'Oswald', 'Helvetica Neue', 'Helvetica', 'Arial', 'sans-serif';
  font-weight: normal;
  text-transform: uppercase; }

.box-text p, .box-text-cell-inner p {
  font-size: 11px;
  font-family: 'Oswald';
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: 2px; }

.box-slider-content:hover .box-content-overly-white .box-text, .box-slider-content:hover .box-content-overly-white .box-text-cell-inner {
  opacity: 1;
  display: block;
  color: #2c3e50; }

.box-4in.a a.box-img, .box-4in.b a.box-img {
  bottom: 5px;
  height: 100%;
  display: block;
  overflow: hidden; }

.box-pagination {
  position: absolute;
  z-index: 20;
  left: 10px;
  bottom: 10px; }

.swiper-container {
  background: #333;
  width: 100%;
  height: 490px;
  color: #ffffff;
  text-align: center; }

.swiper-wrapper {
  background: #ffffff; }

.swiper-pagination-switch {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 6px;
  background: #222;
  margin-right: 8px;
  opacity: 0.8;
  border: 1px solid #ffffff;
  cursor: pointer; }

.swiper-visible-switch {
  background: #aaa; }

.swiper-active-switch {
  background: #ffffff; }

.arrow-left {
  background: url("../../images/arrows.png") no-repeat left top;
  position: absolute;
  left: 10px;
  top: 50%;
  margin-top: -15px;
  width: 17px;
  height: 30px;
  z-index: 10; }

.arrow-right {
  background: url("../../images/arrows.png") no-repeat left bottom;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -15px;
  width: 17px;
  height: 30px;
  z-index: 10; }

.swiper-slide {
  height: 100%; }
  .swiper-slide .slider-content {
    height: 100%;
    display: block; }

.slide-2x {
  width: 500px; }

.slide-4x {
  width: 500px; }

.slide-1x {
  width: 300px; }

.box-4in {
  display: block;
  float: left;
  height: 50%;
  width: 50%; }
  .box-4in .btn {
    min-width: 100px !important; }

.slider-box-bottom {
  width: 100%;
  height: 50%;
  display: block;
  overflow: hidden; }
  .slider-box-bottom .box-4in {
    height: 100%; }

.slider-box-top {
  width: 100%;
  height: 50%;
  display: block;
  overflow: hidden; }
  .slider-box-top .box-4in {
    height: 100%; }
  .slider-box-top .box-content-overly {
    bottom: 5px;
    top: auto; }
  .slider-box-top .box-img {
    bottom: 5px; }
  .slider-box-top .bolder-sub a {
    color: #ffffff;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 3.5px; }

.box-text-table {
  display: table;
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 10; }

.box-slider-content {
  display: block;
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden; }
  .box-slider-content:hover .box-content-overly {
    background: rgba(0, 0, 0, 0.3);
    visibility: visible; }
  .box-slider-content:hover .box-content-overly-white {
    background: rgba(255, 255, 255, 0.8);
    visibility: visible;
    opacity: 1; }
  .box-slider-content .box-content-overly-white .box-text {
    opacity: 0;
    transition: all 0.2s ease 0s; }
  .box-slider-content .box-content-overly-white .box-text-cell-inner {
    opacity: 0;
    transition: all 0.2s ease 0s; }
  .box-slider-content .box-img {
    height: 100%;
    display: block;
    position: relative;
    z-index: 4;
    margin: 0 5px 0 0; }
  .box-slider-content a.box-img img {
    width: 100%;
    min-height: 100%;
    height: auto; }
  .box-slider-content .slider-box-top a.box-img {
    bottom: 5px;
    height: 100%;
    overflow: hidden; }

.box-text {
  bottom: 100px;
  display: block;
  height: auto;
  left: 18%;
  position: absolute;
  width: 64%;
  z-index: 10; }
  .box-text.bottom-align {
    bottom: 20px; }
  .box-text .btn {
    margin-top: 10px; }

.box-text-cell-inner {
  max-width: 70%;
  display: block;
  margin-left: 15%; }
  .box-text-cell-inner .btn {
    margin-top: 10px; }
  .box-text-cell-inner.dark {
    color: #2c3e50; }

.box-text-cell {
  display: table-cell;
  height: 100%;
  width: 100%;
  vertical-align: middle; }

.box-content-overly {
  background: rgba(0, 0, 0, 0);
  height: 100%;
  position: absolute;
  right: 5px;
  top: 0;
  visibility: hidden;
  width: 100%;
  z-index: 5;
  transition: all 0.2s ease 0s; }
  .box-content-overly.box-content-overly-white {
    opacity: 0; }

.box-blank-url {
  display: block;
  height: 100%;
  width: 100%; }

.box-price-tag {
  position: absolute;
  right: 50px;
  bottom: 50px;
  z-index: 10; }
  .box-price-tag .price {
    background: #ffffff;
    color: #2c3e50;
    font-family: 'oswald';
    font-size: 28px;
    font-weight: normal;
    letter-spacing: 2px;
    padding: 0 10px; }

@media (max-width: 991px) {
  .swiper-container {
    height: 490px; }
  .slide-2x {
    width: 490px; }
  .slide-4x {
    width: 490px; }
  .slide-1x {
    width: 490px; }
  .box-text {
    bottom: 10% !important; } }

@media (max-width: 767px) {
  .swiper-container {
    height: 350px; }
  .slide-2x {
    width: 350px; }
  .slide-4x {
    width: 350px; }
  .slide-1x {
    width: 350px; }
  .box-text {
    bottom: 10%; }
    .box-text h1 {
      font-size: 26px; }
  .btn-stroke-dark {
    padding: 10px 20px;
    min-width: 150px; }
  .btn-stroke-light {
    padding: 10px 20px;
    min-width: 150px; }
  .box-text-cell-inner h1 {
    font-size: 26px; }
  h1.bolder-style {
    font-size: 50px;
    line-height: 50px; } }

.box-img.last-child-slide {
  margin-right: 0; }

h1.bolder-style {
  font-size: 80px;
  font-weight: 800;
  line-height: 80px;
  padding-bottom: 0;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8), 0 0 1px #ffffff;
  text-transform: uppercase; }
  h1.bolder-style.light {
    color: #ffffff; }
    h1.bolder-style.light a {
      color: #ffffff; }
  h1.bolder-style.dark {
    color: #2c3e50;
    text-shadow: 0 1px 3px rgba(255, 255, 255, 0.8), 0 0 1px #2c3e50; }
    h1.bolder-style.dark a {
      color: #2c3e50;
      text-shadow: 0 1px 3px rgba(255, 255, 255, 0.8), 0 0 1px #2c3e50; }

/* =============================================================== */
/* HOME PAGE LOOK 2
/* =============================================================== */
.home-intro {
  background: #34373b;
  color: #ffffff;
  padding: 15px 0 0; }
  .home-intro h2 {
    font-size: 20px;
    font-weight: 200;
    letter-spacing: 2px;
    text-align: center;
    text-transform: uppercase;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
    line-height: 24px; }
    .home-intro h2 span {
      color: #ff7f00; }

.sectionCategory {
  background: #34373b;
  padding: 60px 0;
  position: relative; }

.sectionCategoryIntro {
  color: #ffffff;
  max-width: 600px;
  margin: 0 auto; }

.sectionCategory .container {
  position: relative;
  z-index: 5; }

.sectionCategoryIntro h1 {
  font-family: Oswald;
  font-size: 22px;
  font-weight: lighter;
  letter-spacing: 2px;
  margin-bottom: 0;
  padding-bottom: 5px;
  text-transform: uppercase; }

.sectionCategoryIntro p {
  color: #ddd; }

.sectionCategory .subCategoryThumb {
  height: 160px !important; }

/***  -------  Home look 2 || productShowCase section  ------- ***/
.owl-theme .owl-controls .owl-page span {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4) inset; }

.show-case-wrapper {
  margin: 0 auto 30px;
  float: none; }

#productShowCase .owl-controls {
  margin-top: 0; }

.product-slide-inner {
  margin-top: 12%;
  display: block;
  max-width: 98%; }

@media (max-width: 767px) {
  .product-slide-inner {
    display: block;
    max-width: 98%;
    margin: 5% auto 0;
    text-align: center; }
  #productShowCase .owl-controls {
    margin-top: 10px; } }

#productShowCase .btn-stroke-dark i {
  font-size: 0;
  transition: font 0.3s ease; }

#productShowCase .btn-stroke-dark:hover i {
  font-size: inherit; }

#productShowCase .details-description {
  margin-bottom: 15px; }

.product-slide-left {
  text-align: center; }

.product-slide-img {
  display: block;
  text-align: center; }
  .product-slide-img img {
    display: block;
    text-align: center;
    margin: 0 auto; }

#productShowCase .product-title {
  font-family: oswald;
  font-size: 24px;
  font-weight: normal;
  letter-spacing: 0.25px;
  line-height: 36px;
  margin-bottom: 0; }

.ps-nav {
  display: block;
  font-size: 68px;
  height: auto;
  position: absolute;
  text-align: center;
  top: 38%;
  width: auto;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); }

#ps-next {
  right: 0; }

#ps-prev {
  left: 0; }

.boxes-title-1 {
  background: #ebebeb;
  font-family: Oswald;
  font-weight: normal;
  letter-spacing: 1px;
  margin-bottom: 30px;
  padding: 7px 0;
  text-align: center; }

/***  -------  Home look 2 || Featured image section  ------- ***/
.featuredImgLook2 .inner {
  border: solid 1px #ddd;
  padding: 10px; }
  .featuredImgLook2 .inner:hover {
    border: solid 1px #4EC67F; }

.img-link {
  display: block;
  overflow: hidden; }
  .img-link img {
    width: 100%; }

.featuredImgLook2 h3 {
  color: #2c3e50;
  font-weight: 600;
  padding: 20px 0;
  text-transform: uppercase; }
  .featuredImgLook2 h3 span {
    color: #eb5e58;
    display: block;
    font-size: 14px;
    font-weight: lighter;
    letter-spacing: 1px;
    text-transform: uppercase; }

.featuredImgLook2 .btn-link {
  border-radius: 0;
  color: #7f8c8d;
  cursor: pointer;
  font-weight: normal;
  text-transform: uppercase; }

.featuredImgLook2 p {
  color: #7f8c8d;
  margin-bottom: 20px; }

@media (max-width: 991px) {
  .featuredImgLook2 .col-md-3 {
    margin-bottom: 30px; } }

@media (max-width: 460px) {
  .featuredImgLook2 .col-md-3 {
    width: 100%; } }

/* =============================================================== */
/* HOME PAGE LOOK 3
/* =============================================================== */
#imageShowCase {
  display: block;
  clear: both; }
  #imageShowCase .product-slide h1 {
    text-transform: uppercase; }
  #imageShowCase .product-slide .box-content-overly.box-content-overly-white {
    opacity: 1; }

.featuredImageLook3 .inner {
  display: block;
  position: relative;
  margin-bottom: 30px; }

.featuredImageLook4 .inner {
  display: block;
  position: relative;
  margin-top: 30px;
  padding-top: 100%;
  height: auto !important;
  background-position: center !important; }
  .featuredImageLook4 .inner .box-content-overly-white {
    right: 0;
    text-align: left;
    opacity: 1;
    visibility: visible; }
    .featuredImageLook4 .inner .box-content-overly-white .box-text-cell {
      vertical-align: bottom; }
      .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner {
        margin-bottom: 8%;
        color: #FFF;
        max-width: 80%;
        margin-left: 10%; }
        @media (max-width: 650px) {
          .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner {
            max-width: 90%;
            margin-left: 5%; } }
        .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner h2 {
          font-size: 20px;
          text-transform: uppercase; }
          @media (max-width: 650px) {
            .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner h2 {
              font-size: 14px;
              margin-bottom: 0;
              padding-bottom: 0; } }
        .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner h2 {
          text-transform: uppercase;
          padding-bottom: 5px; }
        .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner hr.submini {
          margin: 15px 0;
          background: #FFF; }
        .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner p {
          text-transform: uppercase; }
        @media (max-width: 650px) {
          .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner p {
            margin-bottom: 0;
            padding-bottom: 0;
            font-size: 14px; }
          .featuredImageLook4 .inner .box-content-overly-white .box-text-cell .box-text-cell-inner hr.submini {
            margin-top: 5px;
            margin-bottom: 5px; } }
  .featuredImageLook4 .inner .img-title {
    color: white;
    display: block;
    font-size: 20px;
    font-family: Oswald;
    font-weight: normal;
    letter-spacing: 3px;
    padding: 0 10px;
    position: absolute;
    text-align: center;
    text-shadow: 1px 0px 2px #555;
    text-transform: uppercase;
    top: 45%;
    width: 100%;
    z-index: 100;
    transition: opacity .2s linear, visibility .2s linear; }
    @media (max-width: 650px) {
      .featuredImageLook4 .inner .img-title {
        font-size: 18px;
        letter-spacing: 2px; } }
    @media (max-width: 500px) {
      .featuredImageLook4 .inner .img-title {
        font-size: 16px;
        letter-spacing: 1px; } }
  .featuredImageLook4 .inner .img-block {
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    font-size: 0;
    z-index: 101; }

.image-show-case-wrapper .ps-nav {
  opacity: 0;
  transform: scale(1.15);
  -moz-transition: all 0.3s ease 0s;
  -webkit-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s; }

.image-show-case-wrapper:hover .ps-nav {
  transform: scale(1);
  opacity: 1;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1); }

.featuredImageLook3 .inner .box-content-overly-white {
  right: 0;
  text-align: center; }

.submini {
  height: 2px;
  max-width: 50px;
  margin: 15px auto;
  background: #2c3e50;
  box-shadow: none;
  border: none; }

.featuredImageLook3 .inner .img-title {
  color: white;
  display: block;
  font-size: 20px;
  font-family: Oswald;
  font-weight: normal;
  letter-spacing: 3px;
  padding: 0 10px;
  position: absolute;
  text-align: center;
  text-shadow: 1px 0px 2px #555;
  text-transform: uppercase;
  top: 40%;
  width: 100%;
  z-index: 100;
  transition: opacity .2s linear, visibility .2s linear; }

.featuredImageLook3 .inner:hover .img-title {
  visibility: hidden;
  opacity: 0; }

.img-block {
  display: block;
  overflow: hidden; }

.featuredImageLook3 .inner .box-text-cell-inner h1 {
  font-size: 20px; }

.featuredImageLook3 .inner .box-text-cell-inner h2 {
  font-size: 14px; }

.featuredImageLook3 .inner:hover .box-content-overly-white {
  opacity: 1;
  background: rgba(255, 255, 255, 0.8);
  visibility: visible; }

.featuredImageLook3 .box-content-special {
  opacity: 1;
  background: rgba(255, 255, 255, 0.8);
  text-align: center; }

.image-show-case-wrapper .owl-pagination {
  margin-top: -40px !important;
  position: relative;
  text-align: center;
  z-index: 50;
  margin-bottom: 40px; }

.product-slide .box-content-overly {
  text-align: center;
  visibility: visible;
  color: #ffffff; }

@media (max-width: 650px) {
  .featuredImageLook3 .inner .box-text-cell-inner h2 {
    font-size: 18px;
    margin-bottom: 0;
    padding-bottom: 0; }
  .featuredImageLook3 .inner .box-text-cell-inner p {
    margin-bottom: 0;
    padding-bottom: 0;
    font-size: 14px; }
  hr.submini {
    margin-top: 5px;
    margin-bottom: 5px; }
  featuredImageLook3 .inner .img-title {
    font-size: 18px;
    letter-spacing: 2px; } }

@media (max-width: 500px) {
  .featuredImageLook3 .box-content-overly {
    display: none; }
  .featuredImageLook3 .inner .img-title {
    font-size: 16px;
    letter-spacing: 1px; } }

.section-block {
  margin-bottom: 30px; }

.section-title {
  border-bottom: 2px solid #dddddd;
  border-top: 2px solid #dddddd;
  font-size: 22px;
  line-height: 24px;
  margin: 10px 0 10px;
  padding: 0; }
  .section-title-style2 span, .section-title .section-title.style2 span {
    background: #ffffff;
    display: inline-block;
    padding: 10px;
    position: relative;
    width: auto;
    z-index: 2; }
  .section-title-style2, .section-title .section-title.style2 {
    position: relative; }
  .section-title span {
    color: #2c3e50;
    display: inline-block;
    padding: 5px 15px 5px 0;
    text-transform: uppercase;
    width: auto; }

.style2 .section-title, .section-title.style2 {
  font-size: 42px;
  font-weight: lighter;
  line-height: 44px;
  margin: 10px 0 20px;
  padding: 0;
  position: relative;
  border: none; }

.style2 .section-title:after, .section-title-style2:after, .section-title.style2:after, .section-title-style2:after {
  background: #dddddd;
  content: "";
  display: block;
  height: 1px;
  margin-left: 20%;
  position: absolute;
  top: 28px;
  width: 60%;
  z-index: 1; }

.style2 .section-title span, .section-title.style2 span {
  color: #2c3e50;
  display: table;
  position: relative;
  z-index: 2;
  background: #ffffff;
  padding: 5px 15px;
  text-align: center;
  text-transform: uppercase;
  width: auto;
  margin: 0 auto; }

.content a {
  text-decoration: underline; }

.content blockquote {
  font-size: 14px;
  border-left: none;
  padding: 0px 30px; }

.relatedimage {
  margin-bottom: 10px; }

.content ul, .content ol, .tab-content ul, .tab-content ol {
  list-style: initial;
  margin: 1em;
  padding: 1em; }

.BannerLeft, .BannerRight {
  margin-top: 20px;
  margin-bottom: 20px; }

.link a {
  text-decoration: underline !important; }

.box-services {
  font-size: 15px; }
  .box-services .iconbox {
    position: relative;
    z-index: 1;
    display: block;
    text-align: center;
    margin-right: 8px;
    height: 50px; }
  .box-services .media-body {
    text-align: center;
    line-height: 18px; }
  .box-services label {
    text-align: center;
    margin-bottom: 0;
    color: #d94100;
    color: #a29061; }
  .box-services .keurmerk {
    position: relative;
    z-index: 1;
    display: block;
    height: 60px;
    line-height: 45px; }
  .box-services a:hover {
    text-decoration: none;
    color: #444; }
  .box-services .score {
    width: 50px;
    height: 50px;
    text-align: center;
    background-image: url(../../images/site/kiyoh-small.png);
    background-size: cover;
    font-size: 15px;
    font-weight: 700;
    color: #444;
    margin: 0 auto;
    padding-top: 13px;
    display: block;
    text-decoration: none; }

@media screen and (max-width: 768px) {
  .gallery [class*="col-"] {
    margin-bottom: 30px; } }

.innerPage {
  padding-top: 30px; }

.parallaxOffset {
  margin-top: 180px;
  transition: all 0.1s ease-out 0s; }
  .parallaxOffset.down {
    margin-top: 28px; }

.parallax-image-aboutus {
  background: url(../../images/parallax/aboutus.jpg) no-repeat 50% -80px fixed;
  background-size: cover;
  background-attachment: fixed; }
  .parallax-image-aboutus .parallax-content {
    padding: 150px 0; }

.parallax-image-contactus {
  background: url(../../images/parallax/contactus.jpg) no-repeat 50% -80px fixed;
  background-size: cover;
  background-attachment: fixed; }
  .parallax-image-contactus .parallax-content {
    padding: 150px 0; }

.title-big {
  font-size: 48px;
  font-weight: bold;
  margin-bottom: 15px; }

.padding-top-30 {
  padding-top: 30px; }

.hr30 {
  margin-top: 30px;
  margin-bottom: 30px; }

.hr40 {
  margin-top: 40px;
  margin-bottom: 40px; }

.form-newsletter input {
  margin-bottom: 20px; }

.whitebg {
  background: #ffffff; }

.fixedContent {
  position: fixed;
  top: 0;
  width: 100%;
  display: block; }

.h1error {
  font-size: 80px;
  font-weight: bold;
  margin: 0 auto;
  padding: 20px;
  text-align: center; }

.err404 {
  font-weight: lighter; }

.wrapper.contact-us {
  background: #ffffff;
  display: block;
  margin-top: 450px;
  position: relative;
  width: 100%;
  z-index: 4; }

.navbar-cart {
  border-top: 1px solid rgba(0, 0, 0, 0);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset;
  max-height: 340px;
  overflow-x: visible;
  padding-left: 15px;
  padding-right: 15px; }

.colorWhite, .colorWhite i {
  color: #ffffff !important; }

.promo-1 {
  color: #ffffff;
  font-family: Oswald, Helvetica Neue;
  margin-bottom: 15px;
  font-weight: lighter;
  padding: 5px 0;
  text-align: center;
  text-transform: uppercase; }
  .promo-1sub {
    background: #f2f2f2;
    font-size: 14px;
    letter-spacing: 0.5px;
    margin-bottom: 15px;
    padding: 5px 0;
    text-align: center;
    text-transform: uppercase; }

.dropdown-left .dropdown-menu {
  left: 0; }

.cartMenu {
  float: left;
  display: block; }
  .cartMenu a.dropdown-toggle {
    padding-bottom: 15px;
    padding-top: 15px;
    padding-left: 15px;
    padding-right: 20px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 20px;
    display: block; }
  .cartMenu .dropdown-menu {
    padding-bottom: 0;
    border-radius: 0;
    margin-top: 0; }
  .cartMenu img {
    width: 40px; }
  .cartMenu h4 {
    padding-bottom: 0;
    font-size: 12px;
    font-weight: 400; }
  .cartMenu table {
    width: 100%;
    height: auto; }
    .cartMenu table tr {
      border-bottom: solid 1px #dddddd; }
      .cartMenu table tr td {
        padding: 5px; }

.miniCartTable {
  max-height: 300px;
  width: 100%;
  display: block; }
  .miniCartTable .mCSB_container {
    margin-right: 15px !important; }

.miniCartProductThumb {
  text-align: center; }

.miniCartDescription .size {
  color: #888888;
  font-size: 11px; }

.miniCartDescription .price {
  color: #444444;
  font-size: 15px;
  font-weight: 700; }

.mCS-dark-2 > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background: rgba(78, 198, 127, 0.7) !important; }

.old-price {
  color: #666666;
  font-size: 14px;
  font-weight: normal;
  text-decoration: line-through; }

.miniCartFooter {
  background: #ecf0f1;
  padding: 10px 10px 10px; }
  .miniCartFooterInMobile .subtotal {
    font-size: 18px;
    color: #ffffff; }
  .miniCartFooter .subtotal {
    color: #000000;
    font-size: 16px;
    font-weight: bold;
    line-height: normal;
    margin-bottom: 0;
    text-transform: uppercase; }

@media (max-width: 767px) {
  .miniCartFooter {
    background: #897748 !important; } }

.product:hover .add-fav:hover, .product:hover .add-fav.active {
  background-color: #a29061;
  color: #ffffff; }

.nav-stacked > li.active, .nav-stacked > li.active a {
  background: none;
  color: #2c3e50;
  font-weight: bold; }

.headerOffset {
  padding-top: 220px; }

.subCategoryList {
  margin-top: 30px;
  overflow: hidden; }
  .subCategoryList .thumbnail {
    -webkit-transition: all 0.2s ease-in;
    -moz-transition: all 0.2s ease-in;
    -ms-transition: all 0.2s ease-in;
    -o-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in; }
    .subCategoryList .thumbnail:hover {
      border: 1px solid #a29061; }

.panel-title {
  margin-bottom: 0;
  margin-top: 0;
  padding-bottom: 0;
  color: #34495e;
  font-size: 15px; }

.panel-heading {
  border-radius: 0; }

.errorMessage {
  border-radius: 10px;
  color: #ffffff !important;
  font-size: 10px;
  line-height: normal;
  padding: 2px 5px;
  margin: 2px 0; }

.labelRounded {
  border-radius: 10px; }

.collapseWill i {
  transition: all .3s ease;
  margin-right: 5px;
  transform: rotate(90deg); }

.collapseWill .minus {
  display: none !important; }

.collapseWill.pressed i {
  margin-right: 5px;
  transform: rotate(0deg); }

.collapseWill.collapsed .minus {
  display: none !important; }

.minus {
  display: block; }

.panel-group .panel {
  border-radius: 0; }

.color-filter small {
  border: 1px solid #dddddd;
  display: inline-block;
  height: 14px;
  margin: 0 3px 0 1px;
  width: 14px; }

.tree .dropdown-menu {
  position: relative !important;
  float: none !important;
  box-shadow: none !important;
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-top: 0 !important; }

.tree > li.active > a {
  background: none;
  color: #2c3e50; }
  .tree > li.active > a:hover, .tree > li.active > a:focus {
    background: none;
    color: #2c3e50; }

.tree > .active > a > .badge {
  background: #999999;
  color: #ffffff; }

.dropdown-menu-tree {
  display: none;
  margin-bottom: 20px; }

.nav-stacked > li {
  border-bottom: solid 1px #eee; }
  .nav-stacked > li a {
    font-size: 13px; }
    .nav-stacked > li a:hover {
      color: #ffffff; }
  .nav-stacked > li + li {
    margin-top: 0; }

.nav-stacked.tree > li a:hover {
  color: #2c3e50;
  background-color: #f5f5f5;
  font-weight: bold; }

.category-level-2 {
  border-left: 1px solid #dddddd !important;
  margin-left: 13px; }
  .category-level-2 li {
    margin-top: 2px; }
    .category-level-2 li a {
      font-weight: normal !important;
      padding: 2px 15px; }
      .category-level-2 li a.active {
        font-weight: bold !important; }
  .category-level-2 .dropdown-tree.active .dropdown-tree-a {
    font-weight: bold !important; }
  .category-level-2 .open-tree .dropdown-tree-a {
    font-weight: bold !important; }

.priceFilterBody .sp {
  padding: 10px; }

.priceFilterBody .form-inline .form-group {
  max-width: 30%;
  float: left; }
  .priceFilterBody .form-inline .form-group .form-control {
    width: 100%; }

.subCategoryThumb {
  height: 80px;
  display: block;
  max-width: 100%;
  overflow: hidden;
  margin-bottom: 15px; }
  .subCategoryThumb img {
    max-width: 100%; }

.color-details {
  border-top: 1px solid #dddddd;
  padding-top: 10px; }

.productFilter {
  border-bottom: 1px solid #dddddd;
  border-top: 1px solid #dddddd;
  clear: both;
  display: block;
  margin-bottom: 20px;
  padding-bottom: 7px;
  padding-top: 10px;
  margin-top: 20px; }
  .productFilter p {
    display: block;
    font-size: 14px;
    margin-top: 6px; }
  .productFilter select {
    font-size: 13px; }
  .productFilter input {
    font-size: 13px; }

.change-view {
  margin-right: 10px; }
  .change-view a {
    border: 1px solid #cccccc;
    display: inline-block;
    font-size: 18px;
    font-weight: normal;
    height: 34px;
    line-height: 23px;
    margin-left: 5px;
    overflow: hidden;
    padding: 5px 8px;
    border-radius: 4px; }

.subCategoryTitle {
  font-size: 13px;
  color: #444;
  font-weight: 600; }

.categoryFooter {
  border-top: solid 1px #eee;
  padding-top: 20px;
  margin-top: -20px; }

.open-tree > .dropdown-menu {
  display: block; }

.open-tree > .dropdown-menu-tree {
  display: block; }

.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus, .nav-tabs > li:hover > a {
  color: #ffffff !important;
  border: 0;
  border-radius: 0; }

.sp-thumbs a:link, .sp-thumbs a:visited {
  border: 2px solid #eeeeee;
  display: inline-block;
  margin-bottom: 10px;
  float: right;
  -webkit-transition: margin 0.2s ease 0s;
  -moz-transition: margin 0.2s ease 0s;
  -ms-transition: margin 0.2s ease 0s;
  -o-transition: margin 0.2s ease 0s;
  transition: margin 0.2s ease 0s; }

.cart-actions a, .cart-actions .btn-cart, .cart-actions .wishlist {
  border-radius: 4px;
  color: #ffffff;
  display: block;
  float: left;
  font-family: 'Oswald', 'Helvetica Neue', 'Arial', 'sans-serif';
  font-size: 18px;
  font-weight: lighter;
  line-height: 1em;
  margin: 0 20px 0 0;
  padding: 14px 20px;
  text-transform: uppercase;
  -webkit-transition: all 0.25s ease 0s;
  -moz-transition: all 0.25s ease 0s;
  -ms-transition: all 0.25s ease 0s;
  -o-transition: all 0.25s ease 0s;
  transition: all 0.25s ease 0s; }

.categoryFilter {
  padding-bottom: 20px;
  border-bottom: solid 1px #dddddd;
  margin-bottom: 20px;
  display: block;
  width: 100%;
  height: 50px; }
  .categoryFilter .minict_wrapper {
    max-width: 180px;
    max-height: 28px;
    height: 28px !important; }
    .categoryFilter .minict_wrapper input {
      height: 28px !important;
      font-size: 12px !important; }
    .categoryFilter .minict_wrapper ul li {
      font-size: 12px !important; }

.nav-tabs {
  margin-bottom: 20px; }
  .nav-tabs > li {
    background: none; }
    .nav-tabs > li.active {
      background: none; }
    .nav-tabs > li > a {
      border: 0;
      border-radius: 0; }
  .nav-tabs li a {
    font-family: 'Oswald', 'sans-serif';
    font-size: 13px;
    font-weight: 200;
    letter-spacing: 2px;
    margin: 0;
    text-transform: uppercase; }

.sp-wrap {
  border: none !important;
  z-index: 10;
  width: 100%;
  background: none !important; }

.sp-thumbs {
  position: absolute;
  right: 0 !important;
  text-align: left;
  bottom: 140px !important;
  width: 100px !important;
  z-index: 70; }
  .sp-thumbs a:visited {
    margin-right: 0 !important; }
  .sp-thumbs a:hover {
    margin-right: 4px !important; }
  .sp-thumbs img {
    height: auto !important;
    width: 60px !important; }

.sp-thumbs a:hover,
.sp-thumbs a:active,
.sp-current,
sp-current:visited {
  border: 2px solid #a29061 !important; }

.sp-large {
  max-width: 90%; }
  .sp-large a img {
    width: 100%; }

.style2 .sp-thumbs {
  top: 0 !important;
  width: 18% !important; }
  .style2 .sp-thumbs img {
    height: auto !important;
    max-width: 100%;
    width: 100px !important; }
  .style2 .sp-thumbs a:link {
    float: left !important;
    width: 100%; }
  .style2 .sp-thumbs a:visited {
    float: left !important;
    width: 100%; }

.style2 .sp-large {
  max-width: 80% !important;
  border: 1px solid #dddddd; }

.sp-thumbs a:link, .sp-thumbs a:visited {
  border: 2px solid #eee;
  display: inline-block;
  float: right;
  margin-right: 5px; }

.productThumb .sp-thumbs a:link, .productThumb .sp-thumbs a:visited {
  border: 2px solid #eee;
  display: inline-block;
  float: left;
  margin-right: 5px; }

.sp-wrap {
  display: none;
  line-height: 0;
  font-size: 0;
  background: #eee;
  position: relative;
  margin: 0 25px 15px 0;
  border: 1px solid #e4e4e4;
  float: left; }

.sp-large {
  position: relative;
  overflow: hidden; }
  .sp-large a {
    display: block; }
    .sp-large a img {
      max-width: 100%;
      height: auto; }

.sp-thumbs {
  width: 100%;
  text-align: left;
  overflow: scroll;
  height: 100%; }
  .sp-thumbs img {
    width: 50px;
    height: 50px; }
  .sp-thumbs a:hover {
    border: 2px solid #222; }
  .sp-thumbs a:active {
    border: 2px solid #222;
    border: 2px solid #222;
    margin-right: 10px !important; }

.sp-current {
  border: 2px solid #222;
  border: 2px solid #222;
  margin-right: 10px !important; }

.sp-zoom {
  position: absolute;
  left: 0;
  top: 0;
  cursor: zoom;
  display: none; }

.productThumb {
  border-top: 1px solid #dddddd;
  padding-top: 10px; }
  .productThumb .sp-thumbs {
    bottom: auto !important;
    position: relative;
    right: 0 !important;
    text-align: left;
    width: 100% !important;
    z-index: 70; }
    .productThumb .sp-thumbs img {
      width: 50px;
      height: 50px; }
    .productThumb .sp-thumbs a {
      border: 2px solid #222;
      margin-right: 10px !important; }
      .productThumb .sp-thumbs a:hover {
        border: 2px solid #222;
        margin-right: 10px !important; }

.style3 .sp-large {
  border: 1px solid #dddddd;
  max-width: 100% !important; }

.product-title {
  font-size: 30px;
  font-weight: 600;
  letter-spacing: 0.25px;
  line-height: 1;
  margin-bottom: 0;
  text-transform: uppercase;
  color: #2c3e50; }

.product-price {
  font-size: 28px;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 10px;
  color: #897748; }
  .product-price .tax {
    font-size: 12px;
    font-weight: 600;
    line-height: normal;
    margin-bottom: 10px;
    color: #897748; }

.price-standard {
  color: #999999;
  font-size: 14px; }

.product-code {
  font-family: 'oswald', 'Helvetica Neue', 'Arial', 'sans-serif';
  font-size: 14px;
  font-weight: lighter;
  letter-spacing: 1px;
  margin: 0 0 5px;
  padding: 0;
  text-transform: uppercase; }

.nav-tabs > li > a:hover {
  background: #B5B5B5; }

.tab-pane {
  font-size: 14px; }
  .tab-pane .SpecItemName {
    clear: left;
    float: left;
    width: 35%; }
  .tab-pane .SpecItemValue {
    float: left;
    width: 55%;
    min-height: 15px; }

.product-tab {
  width: 100%;
  display: inline-block;
  clear: both; }

.color-details {
  margin-top: 14px; }

.swatches {
  margin: 0.5em 0;
  padding-left: 0; }
  .swatches li {
    border: 2px solid #ffffff;
    display: inline-block;
    margin: 2px 1px;
    vertical-align: top;
    list-style: none; }
    .swatches li:hover {
      border: 2px solid #b2b2b2; }
  .swatches .selected {
    border: 2px solid #b2b2b2; }
  .swatches a {
    background-position: center center;
    background-repeat: no-repeat;
    border: 2px solid #ffffff;
    box-shadow: 1px 1px 2px #c5c5c5;
    display: block;
    height: 33px;
    text-align: center;
    -webkit-transition: all 0.25s ease 0s;
    -moz-transition: all 0.25s ease 0s;
    -ms-transition: all 0.25s ease 0s;
    -o-transition: all 0.25s ease 0s;
    transition: all 0.25s ease 0s;
    width: 33px; }
    .swatches a img {
      height: 29px;
      width: 29px; }

.filterBox {
  display: inline-block; }

.cart-actions {
  margin-top: 0;
  margin-bottom: 20px;
  width: 100%;
  display: inline-block;
  border-bottom: 1px solid #dddddd;
  padding-bottom: 12px;
  clear: both; }
  .cart-actions .wishlist {
    background: #b5b5b5 !important;
    line-height: 1em;
    text-decoration: none;
    border: solid 2px #a8a8a8 !important; }
    .cart-actions .wishlist:hover {
      background: none !important;
      color: #666;
      border: solid 2px #a8a8a8; }

.incaps {
  display: block;
  float: left;
  font-family: 'Oswald', 'sans-serif';
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 2px;
  margin: 15px 20px 0 0;
  text-transform: uppercase;
  padding-bottom: 0;
  color: #2c3e50; }
  .incaps i {
    font-size: 20px; }

.color-in {
  color: #316d1e; }

.color-out {
  color: red; }

.product-share {
  border-top: 1px solid #dddddd;
  clear: both;
  display: inline-block;
  margin-top: 20px;
  padding-top: 14px;
  width: 100%; }

.recommended {
  border-top: solid 2px #dddddd;
  margin-top: 20px;
  padding-top: 20px; }
  .recommended h1 {
    text-align: center;
    margin-bottom: 0;
    padding-bottom: 0; }
  .recommended .description {
    min-height: 70px; }

#SimilarProductSlider .item {
  padding: 30px 0 0;
  margin: 10px;
  color: #ffffff;
  border-radius: 4px;
  text-align: center; }

#SimilarProductSlider .product-image img {
  max-height: 200px; }

.product-image {
  max-width: 100%; }
  .product-image img {
    max-width: 100%; }

.minict_wrapper input {
  border: 0 !important; }

.main-image .sp-thumbs a:link {
  margin-right: 0 !important; }

button.first {
  margin-right: 20px;
  margin-bottom: 10px; }

.socialIcon a {
  background: #b5b5b5;
  color: #ffffff;
  display: inline-block;
  font-size: 22px;
  padding: 6px 3px;
  margin-right: 10px;
  text-align: center;
  width: 35px;
  -webkit-transition: all 0.15s ease-in-out 0s;
  -moz-transition: all 0.15s ease-in-out 0s;
  -ms-transition: all 0.15s ease-in-out 0s;
  -o-transition: all 0.15s ease-in-out 0s;
  transition: all 0.15s ease-in-out 0s; }
  .socialIcon a:hover {
    color: #ffffff;
    background: #a29061; }

.Shipping label, .Payment label {
  display: inline-block;
  max-width: 100%;
  margin-left: 10px;
  margin-bottom: 5px;
  font-weight: normal; }

.glyphicon.glyphicon-shopping-cart {
  transform: scaleX(-1);
  -moz-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  -ms-transform: scaleX(-1); }

.quanitySniper {
  height: 30px;
  padding: 0;
  text-align: center;
  width: 40px; }

.cartTable {
  border-top: solid 1px #ebedef; }
  .cartTable .price {
    text-align: left !important; }

.cartTableHeader {
  background: #ebedef; }
  .cartTableHeader .CartProductName {
    text-align: left !important; }

.cartFooter {
  padding: 20px;
  border-top: solid 1px #ebedef;
  background: #ebedef;
  display: inline-block;
  width: 100%; }

tr.CartProduct td:nth-child(2) {
  text-align: left; }

#cart-summary tr td:nth-child(2) {
  text-align: right; }

.cart-actions a,
.cart-actions .wishlist {
  background: linear-gradient(90deg, #a29061 0%, #897748 100%);
  border: 2px solid #897748; }

.cart-actions a:hover {
  background: #ffffff;
  color: #2c3e50;
  border: solid 2px #a29061; }

.caps {
  border-top: 0 none;
  font-weight: normal;
  line-height: 24px;
  margin: 0 0 16px;
  overflow: hidden;
  padding: 0 0 16px;
  text-align: right;
  text-transform: uppercase; }

.rightSidebar #cart-summary {
  margin-top: 0; }
  .rightSidebar #cart-summary tr:first-child td {
    border: none; }

.rightSidebar img {
  max-width: 100%; }

.rightSidebar .product {
  padding: 10px 0; }

.rightSidebar .item {
  border-bottom: 1px solid #dddddd;
  margin-bottom: 0; }
  .rightSidebar .item h4 {
    margin-top: 0; }

.rightSidebar .product-image img {
  float: left;
  max-width: 100%;
  width: 90px;
  margin-right: 10px; }

.cartMiniTable {
  border: 1px solid #dddddd;
  padding: 10px; }

.categoryListPanel {
  background: #ebedef; }

.contentBox {
  margin-bottom: 15px; }

.couponForm input[type="text"] {
  border-radius: 3px 0 0 3px;
  height: 33px; }

.couponForm .btn {
  border-radius: 0 3px 3px 0;
  font-size: 11px;
  line-height: 21px; }

.couponForm .btn-clear {
  border-radius: 4px;
  font-size: 11px;
  line-height: 21px; }

#total-price {
  font-size: 22px;
  font-weight: bold; }

span.success {
  color: #8bb418; }

p.success div.success {
  color: #8bb418; }

.orderStep {
  clear: both;
  display: inline-block;
  height: auto;
  padding: 0;
  margin-bottom: 30px;
  width: 100%; }
  .orderStep li {
    display: inline-block;
    float: left;
    height: auto;
    margin: 0;
    min-height: 55px;
    padding: 0;
    width: 20%; }
    .orderStep li a {
      background: #eff0f2;
      display: inline-block;
      font-size: 14px;
      height: 100%;
      line-height: normal;
      padding: 20px 0 0;
      text-align: center;
      vertical-align: middle;
      width: 100%;
      text-transform: uppercase;
      font-size: 13px; }
      .orderStep li a i {
        background: rgba(0, 0, 0, 0.14);
        border-radius: 0;
        display: block;
        font-size: 20px;
        height: auto;
        left: 0;
        line-height: 40px;
        margin-top: -20px;
        padding: 0;
        text-align: center;
        width: auto;
        float: none !important; }
      .orderStep li a span {
        display: block;
        padding: 5px 0; }
    .orderStep li.active a {
      color: #ffffff;
      position: relative; }
      .orderStep li.active a:after {
        top: 100%;
        left: 50%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
        border-color: rgba(136, 183, 213, 0);
        border-width: 10px;
        margin-left: -10px; }
      .orderStep li.active a i {
        background: #897748;
        color: #ffffff; }

.orderStep li.active a {
  background: none repeat scroll 0 0 #a29061; }

.orderStep li.active a:after {
  border-top-color: #a29061 !important; }

.orderStep li a {
  background: #EFF0F2; }

.Shipping .iradio_line-orange {
  margin-bottom: 20px; }

.paymentBox {
  margin-bottom: 30px;
  display: block; }
  .paymentBox .panel {
    box-shadow: none; }

.checkoutReview .CartProductThumb a img {
  width: 50px;
  width: 50px; }

.block-title-2, h2.block-title-2, .formBox h3 {
  border-bottom: 1px solid #cecece;
  font-size: 13px;
  font-weight: bold;
  margin: 0 0 15px;
  padding: 10px 0 0;
  position: relative;
  text-transform: uppercase; }

.myAccountList li {
  text-align: center; }
  .myAccountList li a {
    font-size: 14px;
    display: block; }
    .myAccountList li a i {
      display: block;
      clear: both;
      font-size: 44px;
      margin-bottom: 10px; }

.myAccountList .thumbnail {
  padding: 10px 0 0; }
  .myAccountList .thumbnail:hover {
    background: #f5f5f5; }

.panel-footer-address .btn {
  margin-right: 5px; }

.CartProductThumb a img {
  width: 86px;
  max-width: 100%;
  width: 86px;
  max-width: 100%;
  max-height: 100px; }

tr.CartProduct {
  border-bottom: 1px solid #e7e9ec;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  min-height: 120px; }
  tr.CartProduct td {
    padding: 10px; }
    tr.CartProduct td.CartProductThumb {
      flex: 0 0 15%; }
    tr.CartProduct td.CartDescription {
      flex: 1; }
      tr.CartProduct td.CartDescription h4 {
        padding-bottom: 0px; }
      tr.CartProduct td.CartDescription .price {
        display: none; }
    tr.CartProduct td.CartDelete {
      order: 6;
      flex: 0 0 30px; }
    tr.CartProduct td.CartQuantity {
      flex: 0 0 100px; }
      tr.CartProduct td.CartQuantity input {
        margin-bottom: 0px;
        height: 27px !important; }
    tr.CartProduct td.CartPrice {
      flex: 0 0 100px;
      text-align: right !important; }
  @media (max-width: 768px) {
    tr.CartProduct td.CartProductThumb {
      order: 0;
      flex: 0 0 20%;
      position: absolute; }
    tr.CartProduct td.CartDescription {
      order: 1;
      flex: 1;
      padding-bottom: 0px;
      margin-left: 20%; } }
  @media (max-width: 768px) and (max-width: 576px) {
    tr.CartProduct td.CartDescription {
      margin-left: 30%; }
      tr.CartProduct td.CartDescription .product-option {
        display: inline-block !important;
        margin-left: 5px; } }
  @media (max-width: 768px) {
      tr.CartProduct td.CartDescription h4 {
        padding-bottom: 0px; }
      tr.CartProduct td.CartDescription .price {
        display: none; }
    tr.CartProduct td.CartDelete {
      order: 2;
      flex: 0 1;
      text-align: right;
      padding-bottom: 0px; }
    tr.CartProduct td.CartQuantity {
      order: 3;
      flex: 0 0 50%;
      padding-top: 0px;
      margin-left: 20%; }
      tr.CartProduct td.CartQuantity .input-group {
        width: 97px; } }
  @media (max-width: 768px) and (max-width: 576px) {
    tr.CartProduct td.CartQuantity {
      margin-left: 30%;
      flex: 0 0 30%; } }
  @media (max-width: 768px) {
    tr.CartProduct td.CartPrice {
      order: 4;
      flex: 1;
      text-align: right !important;
      padding-top: 0px; } }
  tr.CartProduct th {
    padding: 10px;
    text-align: left; }

.cartTableHeader {
  text-transform: uppercase;
  font-weight: bold;
  font-size: 14px; }

.orderStep li.finished a {
  color: #ffffff;
  position: relative;
  /*//background: none repeat scroll 0 0 #3D464A;*/
  background: linear-gradient(to bottom, #777978 0, #323d42 100%);
  -webkit-filter: progid:dximagetransform.microsoft.gradient(startcolorstr='$menu-gradient-color-1',endcolorstr='$menu-gradient-color-2',gradienttype=0);
  filter: progid:dximagetransform.microsoft.gradient(startcolorstr='$menu-gradient-color-1',endcolorstr='$menu-gradient-color-2',gradienttype=0); }

.Payment .shippingOptions .thumbnail, .Shipping .shippingOptions .thumbnail {
  border: 1px solid #ddd;
  padding: 4px;
  height: auto; }
  @media (min-width: 767px) {
    .Payment .shippingOptions .thumbnail, .Shipping .shippingOptions .thumbnail {
      min-height: 100px;
      height: auto;
      display: flex;
      align-items: center; } }
  .Payment .shippingOptions .thumbnail.active, .Shipping .shippingOptions .thumbnail.active {
    background-color: #f7dec2;
    background-image: url("/Images/Icon/icon-checked.png");
    background-repeat: no-repeat;
    background-position: 97%; }
  .Payment .shippingOptions .thumbnail:hover, .Shipping .shippingOptions .thumbnail:hover {
    cursor: pointer; }
  .Payment .shippingOptions .thumbnail .payment, .Shipping .shippingOptions .thumbnail .payment {
    display: flex; }
    @media (min-width: 992px) {
      .Payment .shippingOptions .thumbnail .payment, .Shipping .shippingOptions .thumbnail .payment {
        display: inline-block; } }
  .Payment .shippingOptions .thumbnail label, .Shipping .shippingOptions .thumbnail label {
    font-weight: bold !important;
    display: block;
    font-size: 15px;
    margin-top: 10px; }
    @media (min-width: 992px) {
      .Payment .shippingOptions .thumbnail label, .Shipping .shippingOptions .thumbnail label {
        display: none; } }
  .Payment .shippingOptions .thumbnail img, .Shipping .shippingOptions .thumbnail img {
    max-height: 100%;
    max-width: 100px; }
  .Payment .shippingOptions .thumbnail p, .Shipping .shippingOptions .thumbnail p {
    margin-bottom: 0; }
  .Payment .shippingOptions .thumbnail img, .Payment .shippingOptions .thumbnail p, .Shipping .shippingOptions .thumbnail img, .Shipping .shippingOptions .thumbnail p {
    padding: 5px 0 0; }
    @media (min-width: 767px) {
      .Payment .shippingOptions .thumbnail img, .Payment .shippingOptions .thumbnail p, .Shipping .shippingOptions .thumbnail img, .Shipping .shippingOptions .thumbnail p {
        padding-left: 35px;
        margin: 0;
        display: inline-block; } }
  .Payment .shippingOptions .thumbnail input[type="radio"], .Shipping .shippingOptions .thumbnail input[type="radio"] {
    display: none; }

.Payment .shippingOptions .giftwrapFormat, .Shipping .shippingOptions .giftwrapFormat {
  width: 100%;
  padding: 0 10px 10px 10px; }
  @media (min-width: 767px) {
    .Payment .shippingOptions .giftwrapFormat, .Shipping .shippingOptions .giftwrapFormat {
      display: flex;
      align-items: center;
      padding: 0; } }

.Payment .shippingOptions .thumbnail.giftwrap, .Payment .shippingOptions .thumbnail.servicepoint, .Shipping .shippingOptions .thumbnail.giftwrap, .Shipping .shippingOptions .thumbnail.servicepoint {
  flex-direction: column;
  align-items: flex-start;
  background-position-y: 30px; }
  .Payment .shippingOptions .thumbnail.giftwrap .service-point-label, .Payment .shippingOptions .thumbnail.servicepoint .service-point-label, .Shipping .shippingOptions .thumbnail.giftwrap .service-point-label, .Shipping .shippingOptions .thumbnail.servicepoint .service-point-label {
    display: block; }
    @media (min-width: 767px) {
      .Payment .shippingOptions .thumbnail.giftwrap .service-point-label, .Payment .shippingOptions .thumbnail.servicepoint .service-point-label, .Shipping .shippingOptions .thumbnail.giftwrap .service-point-label, .Shipping .shippingOptions .thumbnail.servicepoint .service-point-label {
        padding-left: 135px; } }

.Shipping .thumbnail .giftwraps {
  width: 100%;
  padding-bottom: 15px; }
  .Shipping .thumbnail .giftwraps img {
    padding-left: 0 !important;
    opacity: 0.6;
    width: 100%; }
    @media (min-width: 767px) {
      .Shipping .thumbnail .giftwraps img {
        width: auto; } }
  .Shipping .thumbnail .giftwraps .giftwrap {
    text-align: center;
    border: 6px solid rgba(0, 0, 0, 0);
    margin-bottom: 15px; }
    .Shipping .thumbnail .giftwraps .giftwrap .text {
      color: #444;
      margin: 5px 0 0;
      display: block; }
    @media (min-width: 767px) {
      .Shipping .thumbnail .giftwraps .giftwrap:first-of-type {
        margin-left: 15px; } }
    @media (min-width: 992px) {
      .Shipping .thumbnail .giftwraps .giftwrap {
        margin-top: 5px; } }
  .Shipping .thumbnail .giftwraps .giftwrap.active {
    background-color: #897748;
    border: 6px solid #897748; }
    .Shipping .thumbnail .giftwraps .giftwrap.active .text {
      color: #FFF; }
    .Shipping .thumbnail .giftwraps .giftwrap.active img {
      opacity: 1; }

.Payment .paymentItem img {
  margin-left: 10px; }

.Payment .paymentItem p {
  margin-left: 10px; }

@media (min-width: 767px) {
  .Payment .paymentItem {
    display: flex;
    padding: 0; } }

.Payment .thumbnail p, .Payment .thumbnail img {
  padding-left: 0 !important;
  margin-left: 10px !important; }
  @media (min-width: 767px) {
    .Payment .thumbnail p, .Payment .thumbnail img {
      display: inline-block; } }

.OrderBeforeFreeShipping {
  background: linear-gradient(to bottom, #777978 0, #323d42 100%);
  -webkit-filter: progid:dximagetransform.microsoft.gradient(startcolorstr='$menu-gradient-color-1',endcolorstr='$menu-gradient-color-2',gradienttype=0);
  filter: progid:dximagetransform.microsoft.gradient(startcolorstr='$menu-gradient-color-1',endcolorstr='$menu-gradient-color-2',gradienttype=0);
  padding: 8px;
  font-size: 13px;
  color: #FFF;
  height: 140px;
  position: relative; }

.OrderBeforeFreeShipping a {
  width: 100%;
  margin-top: 15px;
  text-align: left;
  padding-top: 12px;
  height: 39px; }

.OrderBeforeFreeShipping img {
  width: 100px;
  position: absolute;
  top: 61px;
  right: 17px; }

.popup-position {
  width: 860px !important;
  top: 5px !important; }

.addtocart-modal-body {
  padding: 15px 58px; }

.addtocart-modal-body .block-title-3 {
  font-size: 30px;
  padding: 12px 0px;
  margin: 0; }

.order-more {
  width: 100%;
  height: auto;
  background-color: #444;
  padding: 15px;
  color: #FFF;
  font-size: 19.5px;
  margin-bottom: 35px; }

.order-more span {
  display: inline-block;
  padding-bottom: 5px; }

.order-more span:first-child {
  font-weight: bold; }

.order-more span:last-child {
  font-size: 16px; }

.gift-certificate-tip-arrow {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 53px 115px 0 115px;
  border-color: #444 transparent transparent transparent;
  left: 15px;
  position: absolute;
  z-index: 1000;
  top: 153px; }

.related-products .left {
  width: 230px;
  height: 325px;
  float: left;
  background-color: #f7dec2;
  margin: 0 !important; }

.related-products .left .product:hover {
  background: #f7dec2; }

.related-products .left img {
  margin-top: 30px !important;
  margin-bottom: 10px;
  width: 185px; }

.related-products .left .action-control .btn-primary {
  height: 50px;
  padding: 17px;
  width: 145px;
  border: 1px solid #897748; }

.related-products .right {
  width: 512px;
  float: left;
  position: relative; }

.related-products .right-full {
  width: 100%;
  float: left;
  position: relative; }

.related-products .right .block-title-2 {
  position: absolute;
  top: -35px;
  left: 6px;
  border: 0; }

.related-products .glyphicon.glyphicon-shopping-cart {
  transform: none;
  -webkit-transform: none; }

@media (min-width: 1800px) {
  .banner {
    max-height: 500px; }
  .slider-content {
    max-height: 500px; }
  .slider {
    max-height: 500px; }
  .slider-v2 {
    max-height: 500px; }
  .sliderImg {
    width: 100%; } }

@media only screen and (max-width: 1224px) {
  input.quanitySniper {
    width: 35px !important; } }

@media (max-width: 1024px) {
  .navbar.stuck .navbar-top {
    margin-top: 0 !important; }
  .social li {
    margin: 0 6px 0 0; }
  .cartMenu.static-search-box a.dropdown-toggle {
    padding-left: 10px;
    padding-right: 10px; }
  .search-box.static-search .form-control {
    max-width: 104px; } }

@media (max-width: 979px) and (min-width: 768px) {
  .cartRespons {
    display: none; }
  .cartMenu a.dropdown-toggle {
    height: 50px; } }

@media (max-width: 979px) {
  .container {
    width: 100% !important;
    max-width: 900px !important; }
  .category-top {
    margin-top: 30px; }
  .sliderText {
    margin-top: 6%; }
    .sliderText .inner {
      padding: 15px; }
    .sliderText h1 {
      font-size: 30px; }
    .sliderText.white h1 {
      padding-bottom: 0; }
    .sliderText.white .inner {
      padding: 5px 0; }
    .sliderText.white .btn {
      font-size: 14px;
      line-height: 1.471;
      padding: 5px 15px; }
    .sliderText.white h3.price {
      font-size: 18px;
      padding-bottom: 0; }
  .sliderTextFull {
    margin-top: 15%; }
    .sliderTextFull h3 {
      font-size: 18px;
      line-height: 20px;
      padding-bottom: 5px; }
  #pager2 {
    bottom: 0; }
    #pager2 span {
      border-width: 1px;
      height: 10px;
      width: 10px; }
  .sliderControl {
    border-radius: 2px;
    padding: 0 2px;
    top: 45%; }
    .sliderControl .fa-3x {
      font-size: 2.5em; }
  .subCategoryThumb img {
    height: 100% !important; }
  .hidden-xs .cartMenu .dropdown-toggle {
    padding-bottom: 9px;
    padding-top: 16px; }
  .header-version-2 .sliderText {
    margin-top: 10%; }
  h1.xlarge {
    font-size: 36px; }
  .sliderInfo .btn-lg {
    font-size: 14px;
    line-height: 1.471;
    padding: 5px 15px; }
  #pager a {
    font-size: 14px;
    padding: 5px 0;
    font-weight: normal; } }

@media (max-width: 767px) and (min-width: 0) {
  .hidden-xs {
    display: none !important;
    visibility: hidden !important; } }

@media (max-width: 767px) {
  .banner {
    margin-top: 116px !important; }
  .headerOffset {
    padding-top: 145px !important; }
  .parallaxOffset {
    margin-top: 95px !important; }
  .category-top {
    margin-top: 0; }
  .navbar-brand {
    padding: 15px;
    max-height: 90px;
    height: 90px; }
    .navbar-brand img {
      max-height: 65px;
      height: 65px; }
  .miniCartFooter {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0) !important;
    border-top: 2px solid rgba(255, 255, 255, 0.5) !important;
    margin-top: 10px !important; }
    .miniCartFooter .btn {
      color: #ffffff !important; }
  .cartRespons {
    font-size: 14px; }
  .navbar-cart {
    padding-right: 0;
    padding-left: 0; }
    .navbar-cart.in .mCS-dark-2 > .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
      background: rgba(255, 255, 255, 0.7) !important; }
  .miniCartProduct {
    color: #ffffff; }
    .miniCartProduct a {
      color: #ffffff; }
    .miniCartProduct p {
      color: #ffffff; }
    .miniCartProduct .size {
      color: #ffffff; }
    .miniCartProduct .price {
      color: #ffffff; }
  .dropdown-header {
    color: #ffffff; }
  .searchInputBox {
    max-width: 80%; }
  .sliderTextFull h3 {
    font-size: 16px;
    line-height: normal;
    margin-bottom: 5px;
    margin-top: 0;
    padding-bottom: 0; }
  .sliderTextFull .inner.dark {
    max-width: 100%;
    padding: 5px; }
  .sliderText h1 {
    font-size: 24px;
    padding-bottom: 0; }
  .sliderText .inner {
    padding: 5px; }
  .sliderText h3.price {
    font-size: 16px;
    padding-bottom: 2px; }
  .text-left-xs {
    text-align: left !important; }
  .ps-nav {
    top: 34%; }
    .ps-nav img {
      width: 80px; }
  .static-search.navbar-formbox {
    margin: 0;
    max-width: 100%;
    padding: 0;
    width: 100%; }
    .static-search.navbar-formbox .navbar-form {
      margin: 0;
      padding: 0;
      border: 0;
      box-shadow: none; }
  .search-box.static-search .input-group {
    max-width: 100%;
    width: 100%; }
  .search-box.static-search .form-control {
    max-width: 100%;
    width: 100%; }
  .search-box.static-search:hover .form-control {
    max-width: 100%;
    width: 100%; }
  .userMenu li a {
    padding-top: 3px;
    line-height: normal; }
  .phone-number i.glyphicon-phone-alt {
    padding-top: 2px !important; }
  .cartMenu table tr {
    border-bottom: solid 1px rgba(255, 255, 255, 0.1); }
  .megamenu-content ul {
    margin-bottom: 15px; }
    .megamenu-content ul li {
      color: #ffffff;
      border-color: rgba(255, 255, 255, 0.2); }
      .megamenu-content ul li a {
        color: #ffffff; }
      .megamenu-content ul li p {
        color: #ffffff; }
  .navbar-nav .dropdown {
    color: #ffffff; }
    .navbar-nav .dropdown a {
      color: #ffffff; }
  .megamenu .dropdown.megamenu-80width .dropdown-menu {
    width: 100%;
    left: 0;
    right: 0; }
  .megamenu .dropdown.megamenu-50width .dropdown-menu {
    width: 100%;
    left: 0;
    right: 0; }
  .megamenu .dropdown.megamenu-40width .dropdown-menu {
    width: 100%;
    left: 0;
    right: 0; }
  .parallaximg.ismobile {
    margin-top: 0 !important; }
  h1.xlarge {
    font-size: 20px;
    font-weight: 600;
    line-height: normal;
    padding-bottom: 0; }
  .sliderInfo .btn-lg {
    font-size: 12px;
    padding: 5px 10px; }
  .featureImg a {
    margin-bottom: 20px; }
  .navbar-top i {
    font-size: 16px;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    padding: 3px 0 0; } }

@media (max-width: 580px) {
  .xs3Response {
    width: 50% !important; }
  .sliderTextFull {
    color: #ffffff;
    margin-top: 12%; }
  .parallax-content h2 {
    color: #ffffff;
    display: inline-block;
    font-size: 20px;
    line-height: 22px; }
  .parallax-content h3 {
    font-size: 16px;
    line-height: normal; }
  .sp-thumbs {
    bottom: 0 !important; }
  #pager2 {
    bottom: 0; }
    #pager2 span {
      border-width: 1px;
      height: 10px;
      width: 10px; }
  .sliderControl {
    border-radius: 2px;
    padding: 0 2px;
    top: 45%; }
    .sliderControl .fa-3x {
      font-size: 2em; }
  .ps-nav {
    top: 28%; }
    .ps-nav img {
      width: 80px; }
  .style2 .section-title {
    font-size: 24px; }
    .style2 .section-title:after {
      margin-left: 10%;
      top: 32px;
      width: 80%; }
  .section-title.style2 {
    font-size: 24px; }
    .section-title.style2:after {
      margin-left: 10%;
      top: 32px;
      width: 80%; }
  .section-title-style2:after {
    margin-left: 10%;
    top: 32px;
    width: 80%; }
  .orderStep li a span {
    font-size: 11px; }
  .categoryFooter .pagination {
    margin-bottom: 10px; }
  .CartProductThumb a img {
    margin-right: 5px; }
  #pager a {
    font-size: 14px;
    padding: 5px 0;
    font-weight: normal; }
  #imageShowCase .product-slide h1 {
    font-size: 18px;
    letter-spacing: 1px;
    line-height: 22px; } }

@media (max-width: 480px) {
  h1.xlarge {
    font-size: 24px;
    font-weight: 800;
    line-height: normal;
    padding-bottom: 0; }
  h1.x2large {
    font-size: 38px; }
  .title-big {
    font-size: 38px; }
  .sliderText h1 {
    font-size: 24px;
    line-height: 26px;
    padding-bottom: 0; }
  .sliderText .inner {
    padding: 2px; }
  .sliderText h3.price {
    font-size: 16px;
    padding-bottom: 2px; }
  .cartTableHeader {
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase; }
  .CartDescription .price {
    text-align: left !important; }
  .CartDescription h4 a {
    font-size: 14px !important;
    line-height: normal; }
  .cart-actions a {
    font-size: 14px !important;
    padding: 10px !important;
    margin-bottom: 20px !important; }
  .cart-actions .wishlist {
    font-size: 14px !important;
    padding: 10px !important; }
  .list-description {
    text-align: center; }
  .col-xs-mini-6 {
    width: 50%; }
  .col-xs-min-12 {
    width: 100%; }
  #pager a {
    font-size: 12px; }
  .sliderTextFull h3 {
    font-size: 16px;
    line-height: normal;
    margin-bottom: 2px;
    margin-top: 0;
    padding-bottom: 0; }
  .sliderInfo .btn-lg {
    font-size: 12px;
    padding: 4px 8px; }
  .supportLi h4 {
    font-size: 14px; }
  .CartProduct .delete i {
    font-size: 16px !important; }
  .CartProductThumb a img {
    max-width: 60px !important; }
  .search-box .input-group {
    margin-top: 13px; }
  .navbar-brand.windowsphone {
    display: block;
    float: left; }
    .navbar-brand.windowsphone img {
      max-width: 65px; }
  .featuredPostContainer.globalPadding {
    padding: 10px 0 !important; }
  .breadcrumb > li {
    font-size: 12px; }
  .item.list-view h4 {
    font-size: 20px;
    line-height: 18px;
    min-height: 24px;
    text-align: center;
    text-align: center; }
  .item.list-view .description {
    clear: both;
    display: block;
    float: none;
    padding-top: 5px;
    text-align: center; }
    .item.list-view .description p {
      text-align: center; }
  .item.list-view .image {
    display: block;
    float: none;
    max-height: 500px;
    max-width: 100%;
    overflow: hidden;
    padding-right: 0;
    text-align: center; }
  .item.list-view .price {
    text-align: center; }
  .item.list-view .action-control {
    text-align: center; }
  .home-intro h2 {
    font-size: 18px;
    font-weight: 200;
    letter-spacing: 1px; }
  .product-tab .nav-tabs > li.active, .product-tab .nav-tabs > li {
    display: block;
    width: 100%; }
  .product-tab .nav > li > a {
    padding: 5px 15px; }
  .btn-discover {
    padding: 10px 35px; } }

@media (max-width: 400px) {
  .container {
    min-width: 310px; }
  .cartFooter {
    padding: 5px 10px; }
    .cartFooter .box-footer div {
      width: 100%;
      text-align: center;
      padding-bottom: 5px; }
  .navbar-header .navbar-toggle {
    margin-right: 10px; }
  .col-xs-mini-6 {
    width: 100%; }
  #pager a {
    font-size: 10px; }
  /*.navbar-brand img {
        max-width: 100px;
    }*/
  .xsResponse .item {
    width: 100% !important; }
  .xs3Response .item {
    width: 100% !important; }
  .checkoutReview th {
    font-size: 13px; } }

@media (max-width: 320px) {
  .container {
    width: 100% !important;
    max-width: 320px !important; }
  .banner {
    width: 100% !important;
    max-width: 320px !important;
    overflow: hidden !important; } }

.sp-thumbs .videobox-wrapper {
  display: none; }

.sp-large img:not(:first-child) {
  display: none; }

.videobox {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 51%; }
  .videobox iframe, .videobox object, .videobox embed {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0; }

.ajaxProgress {
  position: fixed;
  text-align: center;
  z-index: 9999999;
  top: 45%;
  left: 50%; }

.dn {
  display: none; }

.MainDiv {
  width: 976px;
  min-height: 350px;
  padding: 14px 0px 4px;
  background-color: #fff;
  display: inline-block; }

.MainDivLeft {
  width: 192px;
  margin-right: 10px;
  float: left; }

.MainDivCenter {
  width: 770px;
  float: left; }

.MainDivRight {
  width: 192px;
  margin-left: 10px;
  float: left; }

.Clear {
  clear: both;
  height: 0px;
  line-height: 0px;
  font-size: 0px; }

select {
  color: #666;
  font-size: 90%;
  border: solid 1px #666; }

textarea {
  border: solid 1px #ccc; }

h4 {
  font-size: 120%;
  color: #FF9D00; }

.CommonOptionItemValidator {
  font-size: 11px;
  margin-top: 10px; }

.CommonTextBox {
  border: solid 1px #ccc; }

.CommonPageInnerTitle {
  color: #555;
  font-weight: bold;
  text-decoration: underline;
  padding-bottom: 10px;
  background: url(Images/Design/Bullet/TitleBullet.gif) no-repeat left 2px;
  padding-left: 20px; }

.CommonValidateText {
  color: Red; }

.CommonHyperLink {
  color: #555;
  text-decoration: none;
  border-bottom: dotted 1px #ccc; }
  .CommonHyperLink:hover {
    color: #FF9D00;
    text-decoration: underline;
    border-bottom: 0; }

.CommonTextEditorPanel {
  margin-top: 20px; }

.ajax__calendar_container {
  background-color: #fff;
  border: solid 1px #ccc; }

span.CommonAsterisk {
  font-size: 90%;
  color: Red;
  font-weight: bold;
  padding-left: 5px; }

.CommonValidatorText {
  color: Red;
  font-size: 11px; }
  .CommonValidatorText img {
    margin-bottom: 2px; }

.CommonValidateDiv {
  width: 140px;
  border-top: dotted;
  border-width: 1px;
  color: #FF0000;
  margin-bottom: 3px; }

.CommonDisplayMessageDiv {
  background-color: #F8F8F8;
  border: 1px dashed #FFDDDD;
  color: Blue;
  padding: 10px;
  text-align: left;
  margin-bottom: 13px;
  padding-left: 23px; }

.CommonValidateLong {
  width: 736px; }

.CommonErrorMessageDiv {
  background-color: #F8F8F8;
  border: 1px dashed #FFDDDD;
  color: Red;
  padding: 10px;
  text-align: left;
  margin-bottom: 13px;
  padding-left: 23px; }

.BtnStyle3 {
  border: solid 1px #ccc;
  background-color: #eee;
  color: #999;
  display: block;
  float: left;
  font: bold 11px/20px Arial;
  padding: 0 7px;
  text-decoration: none;
  vertical-align: middle; }
  .BtnStyle3:hover {
    background-color: #ddd;
    color: #000; }

/*Common End*/
/*BlogMaster Begin*/
.BlogMaster {
  margin: 0;
  padding: 0;
  width: 100%;
  background-color: #fff; }

.BlogMasterTop {
  width: 100%;
  background: url(Images/Design/Background/BackgroundTop.jpg) repeat-x left top; }

.BlogMasterMiddle {
  width: 100%; }
  .BlogMasterMiddle .OuterLeft {
    margin: 0 auto 15px;
    width: 976px;
    padding: 0 10px;
    background-color: #fff;
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    border: solid 1px #ddd;
    border-top: 0;
    -webkit-box-shadow: 0 8px 10px 0 #B6C0C4;
    box-shadow: 0 8px 10px 0 #B6C0C4; }

.BlogMasterBottom {
  clear: both;
  width: 100%; }

/*BlogMaster End*/
/*-------------------------------------------------*/
/*LayoutHeader Begin*/
.LayoutHeader {
  width: 100%; }
  .LayoutHeader .header-container-top {
    background-color: #323639;
    width: 100%; }
  .LayoutHeader .header-top {
    width: 984px;
    height: 38px;
    margin: 0 auto;
    padding: 0 20px; }
  .LayoutHeader .header-container-bottom {
    width: 100%;
    margin: 0;
    _background: #fff url(Images/Design/Background/header-container-bottom.jpg) repeat-x left bottom;
    display: table;
    background-color: #fff;
    border-bottom: 2px solid #C1C6C9; }
  .LayoutHeader .header-bottom {
    width: 984px;
    padding: 8px 20px;
    margin: 0 auto;
    background-color: #fff;
    display: table; }
  .LayoutHeader .header-bottom1 {
    margin: 0 auto;
    clear: both;
    width: 976px;
    padding: 10px 10px 0;
    background-color: #fff;
    -webkit-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0;
    border: solid 1px #ddd;
    border-bottom: 0;
    -webkit-box-shadow: 0 8px 10px 0 #B6C0C4;
    box-shadow: 0 8px 10px 0 #B6C0C4; }

.header-bottom1 .left {
  position: relative;
  top: 2px; }

.menu-container {
  width: 966px;
  height: 40px;
  padding: 0 5px;
  -webkit-border-radius: 6px;
  -pie-border-radius: 6px;
  border-color: #666668 #666668 #ff6900 #666668;
  border-radius: 6px 6px 0 0;
  border-style: solid;
  border-width: 1px 1px 2px;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzc3Nzk3OCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMzMjNkNDIiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(top, #777978 0%, #323d42 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #777978), color-stop(100%, #323d42));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #777978 0%, #323d42 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #777978 0%, #323d42 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #777978 0%, #323d42 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #777978 0%, #323d42 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#777978', endColorstr='#323d42',GradientType=0 );
  /* IE6-8 */ }

/*LayoutHeader End*/
/*LayoutFooter Begin*/
.LayoutFooter {
  width: 900px;
  margin: auto;
  padding: 10px 0px;
  display: table; }

.FooterLink {
  clear: left; }

.LayoutFooter .Link {
  float: left;
  color: #BBB;
  text-align: right;
  vertical-align: middle;
  margin-right: 10px;
  font-size: 10px;
  font-weight: bold; }
  .LayoutFooter .Link a {
    color: #BBB;
    text-decoration: none; }
    .LayoutFooter .Link a:hover {
      color: #fd7910;
      /*#CD0D01;*/ }

.LayoutFooter .Copyright {
  color: #888;
  text-align: center;
  vertical-align: middle;
  float: left;
  margin-right: 10px;
  margin-left: 5px;
  font-size: 10px;
  font-weight: bold; }

.LayoutFooter .Powerby {
  float: left;
  clear: left;
  margin-left: 10px;
  font-size: 10px;
  font-weight: bold; }
  .LayoutFooter .Powerby a {
    color: #FFFFFF;
    text-decoration: none; }

.LayoutFooter .spanLeft {
  float: left; }

.LayoutFooter .spanRight {
  float: right; }

/*Footer End*/
/*LayoutFooter End*/
/*HeaderMenu[Common] Begin*/
.HeaderMenu {
  margin: 0;
  float: left; }

.HeaderMenuRight ul {
  list-style: none;
  margin: 0px;
  padding: 0px; }
  .HeaderMenuRight ul li {
    float: left;
    font-weight: bold; }
    .HeaderMenuRight ul li a.HyperLink {
      vertical-align: middle;
      display: block;
      float: left;
      text-decoration: none;
      font-weight: bold; }

/*HeaderMenu[Common] End*/
/*HeaderMenu[Top] Begin*/
.menu-container .HeaderMenuLeft {
  width: 100%;
  height: 40px; }

.menu-container .HeaderMenuRight {
  height: 40px;
  text-align: left; }
  .menu-container .HeaderMenuRight ul {
    height: 40px; }
    .menu-container .HeaderMenuRight ul li a.HyperLink {
      padding: 0px 10px;
      height: 40px;
      line-height: 40px;
      color: #fff;
      text-align: center;
      font-size: 12px;
      border-right: solid 1px #555; }
      .menu-container .HeaderMenuRight ul li a.HyperLink:hover {
        border-right: solid 1px #555;
        background: #7d7e7d;
        background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzdkN2U3ZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwZTBlMGUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
        background: -moz-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7d7e7d), color-stop(100%, #0e0e0e));
        background: -webkit-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%);
        background: -o-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%);
        background: -ms-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%);
        background: linear-gradient(to bottom, #7d7e7d 0%, #0e0e0e 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7d7e7d', endColorstr='#0e0e0e',GradientType=0 ); }

.HeaderMenu ul li a.ContentMenuNavListStaticMenuItem:hover {
  border-right: solid 1px #555;
  background: #7d7e7d;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzdkN2U3ZCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwZTBlMGUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #7d7e7d), color-stop(100%, #0e0e0e));
  background: -webkit-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%);
  background: -o-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%);
  background: -ms-linear-gradient(top, #7d7e7d 0%, #0e0e0e 100%);
  background: linear-gradient(to bottom, #7d7e7d 0%, #0e0e0e 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7d7e7d', endColorstr='#0e0e0e',GradientType=0 ); }

/*HeaderMenu[Top] End*/
/*HeaderLogin Begin*/
.HeaderLogin {
  float: right;
  clear: right;
  margin: 60px 0px auto auto;
  font-size: 11px; }
  .HeaderLogin a {
    border-bottom: dotted 1px #ccc;
    text-decoration: none;
    color: #333; }
    .HeaderLogin a:hover {
      color: #ff9d00;
      border-bottom: dotted 1px #ff9d00; }

.HeaderLoginLoginName1 {
  padding: 0 2px;
  float: left; }

.HeaderLoginLoginName2 {
  padding: 0 6px;
  float: left;
  color: #ff6900; }

.HeaderLoginLoginName1Regis {
  padding: 0 2px;
  float: left; }

.HeaderLoginLoginName {
  float: left; }

.HeaderLogin .NameLabel {
  background-position: right bottom; }

.HeaderLogin .NameStatus {
  background: none; }

.HeaderLoginWishlist {
  float: left; }

/*HeaderLogin End*/
/* StoreBanner Begin*/
.StoreBanner {
  width: 578px;
  margin-bottom: 10px; }
  .StoreBanner a {
    width: 578px;
    display: block; }
    .StoreBanner a img {
      max-width: 578px;
      width: auto !important;
      width: 578px; }

/*StoreBanner End*/
/*Search Begin*/
.Search {
  float: right;
  margin-right: 8px;
  margin-top: 8px;
  width: 240px; }

.SearchTop {
  display: none; }

.SearchRight {
  float: right;
  border: solid 1px #cccccc;
  background-color: #fff;
  height: 16px;
  padding: 2px; }
  .SearchRight .SearchAdvancedLink {
    color: #a0a0a0;
    text-decoration: underline;
    position: relative;
    right: 35px;
    font-size: 10px; }
    .SearchRight .SearchAdvancedLink:hover {
      color: #FF9D00; }

.SearchBottom {
  display: none; }

/*Search End*/
/*QuickSearch Begin*/
.QuickSearch {
  display: block;
  float: left; }
  .QuickSearch input {
    float: left;
    width: 90px;
    font-size: 11px;
    color: #666666;
    border: 0;
    position: relative;
    padding-right: 5px; }

.QuickSearchLabel {
  float: left;
  color: #666666;
  margin-right: 10px;
  margin-top: 5px;
  display: none; }

.QuickSearchLinkButton {
  position: relative;
  left: 90px;
  bottom: 3px; }

/*QuickSearch End*/
/*HeaderLogo Begin*/
.HeaderLogo {
  float: left; }
  .HeaderLogo a {
    height: 85px;
    display: block; }
  .HeaderLogo img {
    max-height: 85px;
    height: auto !important;
    height: 85px; }

/*HeaderLogo End*/
/*SwitchLanguage Begin*/
.SwitchLanguage {
  margin-top: 6px;
  float: right; }

.SwitchLanguageTop, .SwitchLanguageBottom {
  display: none; }

.SwitchLanguageRight select {
  font-size: 11px;
  color: #999; }

.SwitchLanguageRight .Label {
  color: #ccc;
  font-weight: bold;
  margin-right: 5px;
  float: left;
  line-height: 22px; }

.SwitchLanguageRight .LanguageSwitch {
  float: left;
  width: 65px; }

.SwitchLanguageMenuPanel {
  padding: 0 5px 0 10px;
  float: left; }
  .SwitchLanguageMenuPanel a {
    color: #999;
    text-decoration: none; }
    .SwitchLanguageMenuPanel a:hover {
      color: #FF9D00; }

.SwitchLanguageDropPanel {
  padding: 0 10px;
  float: left; }

/*SwitchLanguage End*/
/*CurrencyControl Begin*/
.CurrencyControl {
  float: right;
  margin-top: 6px;
  margin-right: 15px; }

.CurrencyControlTop {
  display: none; }

.CurrencyControlRight select {
  font-size: 11px;
  color: #999; }

.CurrencyControlRight .Label {
  color: #ccc;
  font-weight: bold;
  margin-right: 5px;
  float: left;
  line-height: 22px; }

.CurrencyControlRight .CurrencySwitch {
  color: #999;
  float: left;
  width: 65px; }

.CurrencyControlBottom {
  display: none; }

/*CurrencyControl End*/
/*CommonSidebar Begin*/
.BlogSidebarTop {
  min-height: 40px;
  width: 190px;
  -webkit-border-radius: 5px 5px 0 0;
  border-radius: 5px 5px 0 0;
  border-bottom: solid 2px #ccc;
  background-color: #F2F4F7; }

.SidebarTopTitle, .BlogSidebarTopTitle {
  color: #555;
  float: left;
  font-size: 13px;
  font-weight: bold;
  margin-left: 12px;
  margin-top: 11px;
  vertical-align: middle;
  width: 160px; }

.BlogSidebarTopImgLeft, .BlogSidebarTopImgRight, .BlogSidebarBottom {
  display: none; }

.BlogSidebarRight {
  font-size: 12px; }

/*CommonSidebar End*/
/*CommonSideBanner Begin*/
.SideBannerTop {
  display: none; }

.SideBannerRight img {
  max-width: 192px;
  width: auto !important;
  width: 192px; }

.SideBannerBottom {
  display: none; }

/*CommonSideBanner End*/
/*CommonGridView Begin*/
.CommonGridView {
  border: solid 1px #e4e4e4; }

.CommonGridViewHeaderStyle {
  font-weight: bold;
  color: #575757;
  background: url(Images/Design/Box/BGBox1TopCenter.gif) repeat-x left top;
  padding: 0px;
  height: 26px;
  border-bottom: solid 1px #e4e4e4; }

.CommonGridViewRowStyle {
  border-bottom: solid 1px #e4e4e4; }

.CommonGridViewAlternatingRowStyle {
  background-color: #f1f1f1;
  border-bottom: solid 1px #e4e4e4; }

.CommonGridViewFooterStyle {
  border-top: solid 1px #ccc;
  background-color: #FFF3EA; }

.CommonGridViewEmptyRowStyle {
  background-color: #F8F8F8;
  color: #888;
  font-weight: bold;
  font-size: 11px;
  text-align: center;
  clear: left;
  width: 100%;
  line-height: 25px;
  height: 28px;
  padding: 3px 0;
  display: table; }

/*CommonGridview End*/
/*ArchiveList Begin*/
.ArchiveListGridView {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border: none;
  border-top: 1px solid #E5E5E5; }

.ArchiveListTopicItemColumnTopicStyle {
  padding: 10px 6%;
  width: 88%;
  background: url("Images/Design/Bullet/Bullet1.gif") no-repeat scroll 25px center transparent;
  border-bottom: 1px solid #E5E5E5; }
  .ArchiveListTopicItemColumnTopicStyle a {
    color: #444;
    text-decoration: none;
    font-size: 13px;
    font-weight: bold; }
    .ArchiveListTopicItemColumnTopicStyle a:hover {
      color: #FF9D00; }

.ArchiveListDateHeaderColumnDateStyle {
  color: #000;
  font-size: 14px;
  font-weight: bold;
  padding: 10px 3%;
  width: 94%;
  border-bottom: 1px solid #E5E5E5;
  text-align: left; }
  .ArchiveListDateHeaderColumnDateStyle th {
    padding: 10px 15px;
    text-align: left; }

.ArchiveListDateItemsColumnDateStyle {
  font-weight: bold;
  color: #666;
  margin-left: 5px; }

.ArchiveListRowStyle:hover, .ArchiveListAlternatingRowStyle:hover {
  background-color: #FFFCE8; }

.ArchiveListEmptyRowStyle {
  border: solid 1px #ddd; }

/*ArchiveList End*/
/*BlogNavList Begin*/
.BlogNavList, .DepartmentNavList {
  background-color: #FFFFFF;
  border: 1px solid #E4E4E4;
  border-radius: 5px 5px 5px 5px;
  margin-bottom: 10px;
  padding: 1px;
  width: 190px; }

/*BlogNavList End*/
/*DepartmentNavList Begin*/
/*DepartmentNavList End*/
/*PaymentLogo Begin*/
.PaymentLogo {
  float: right;
  width: 30%; }
  .PaymentLogo .SideBannerRight {
    text-align: right; }
    .PaymentLogo .SideBannerRight img {
      margin: auto; }

/*PaymentLogo End*/
/*BlogNavNormalList Begin*/
.BlogNavNormalList {
  width: 100%;
  border-bottom: solid 2px #ffffff; }
  .BlogNavNormalList a {
    padding: 4px 5px 4px 18px;
    width: 165px;
    height: 100%;
    vertical-align: middle;
    display: block;
    color: #333;
    text-decoration: none;
    white-space: normal; }
  .BlogNavNormalList td {
    border-top: solid 1px #ffffff;
    border-bottom: solid 1px #e4e4e4; }

.BlogNavNormalListLink a {
  background: url(Images/Design/Bullet/Bullet1.gif) no-repeat 7px 10px; }
  .BlogNavNormalListLink a:hover {
    background: #e5e5e5 url(Images/Design/Bullet/Bullet1-hover.gif) no-repeat 7px 10px; }

.BlogNavNormalListMoreLink a {
  text-align: right; }
  .BlogNavNormalListMoreLink a:hover {
    background: #e5e5e5; }

/*BlogNavNormalList End*/
/*Error404 Begin*/
.Error404Content, .GenericErrorContent {
  color: Red; }

/*GenericError Begin*/
/*GenericError End*/
/*ContentMenuNavNormalList Begin*/
.ContentMenuNavNormalList {
  width: 100%; }
  .ContentMenuNavNormalList a {
    padding-left: 30px;
    width: 182px;
    height: 100%;
    line-height: 22px;
    vertical-align: middle;
    display: block;
    background: url(Images/Design/Bullet/Bullet3.gif) no-repeat 15px 7px;
    color: #666;
    text-decoration: none; }

.ContentMenuNavNormalTopList {
  width: 100%; }

.HeaderMenuRight .ContentMenuNavNormalTopList {
  width: auto;
  border: 0 none;
  margin-top: 0px; }
  .HeaderMenuRight .ContentMenuNavNormalTopList .SidebarTop {
    display: none; }

/*ContentMenuNavNormalList End*/
/*ContentMenuNavList [Left,Right] Begin*/
.MainDivLeft .ContentMenuNavList, .MainDivRight .ContentMenuNavList {
  width: 192px;
  background-color: #fff;
  margin-bottom: 10px; }

.MainDivLeft .ContentMenuNavMenuList, .MainDivRight .ContentMenuNavMenuList {
  width: 100%;
  border: solid 2px #ffffff; }

.ContentMenuNavMenuListStaticMenuItem {
  border-top: solid 1px #ffffff;
  border-bottom: solid 1px #e4e4e4; }
  .ContentMenuNavMenuListStaticMenuItem td a {
    padding: 4px 5px 4px 18px;
    width: 146px;
    height: 100%;
    vertical-align: middle;
    display: block;
    color: #333;
    text-decoration: none;
    white-space: normal;
    background: url(Images/Design/Bullet/Bullet2.gif) no-repeat 7px 10px; }
  .ContentMenuNavMenuListStaticMenuItem:hover {
    background: #e5e5e5 url(Images/Design/Bullet/Bullet2-hover.gif) no-repeat 7px 10px; }

.ContentMenuNavMenuListDynamicMenuItem {
  z-index: 0;
  background-color: #fff;
  border: solid 1px #fff;
  border-bottom: solid 1px #e3e3e3; }
  .ContentMenuNavMenuListDynamicMenuItem .DynamicHover a {
    color: #999; }
  .ContentMenuNavMenuListDynamicMenuItem a {
    z-index: 0;
    display: block;
    vertical-align: middle;
    color: #999;
    background: none;
    padding: 4px 15px;
    width: 130px;
    white-space: normal; }
  .ContentMenuNavMenuListDynamicMenuItem:hover {
    background-color: #e9e9e9;
    color: #333; }

.ContentMenuNavMenuListDynamicMenuStyle {
  z-index: 100 !important;
  margin: 0;
  border: solid 1px #c9c9c9; }

/*ContentMenuNavList [Left,Right] End*/
/*ContentMenuNavList [Top] Begin*/
.HeaderMenu .ContentMenuNavList a {
  display: none; }

.HeaderMenu .ContentMenuNavMenuList td:hover {
  background-color: Transparent; }

.HeaderMenu .ContentMenuNavList {
  width: auto;
  border: 0 none;
  margin-top: 0px;
  display: block;
  float: left; }
  .HeaderMenu .ContentMenuNavList .SidebarTop, .HeaderMenu .ContentMenuNavList .SidebarBottom {
    display: none; }
  .HeaderMenu .ContentMenuNavList .SidebarLeft {
    border: 0; }

.HeaderMenu ul li a.ContentMenuNavListStaticMenuItem {
  display: block;
  float: left;
  height: 40px;
  line-height: 40px;
  padding: 0 12px;
  text-align: center;
  vertical-align: middle;
  color: #fff;
  text-decoration: none;
  border-right: 1px solid #555555 !important; }

.HeaderMenu a.ContentMenuNavListStaticMenuItem:hover, .HeaderMenu ul li:hover {
  background: url(Images/Design/Box/BGHeaderMenuCenterHover.gif) repeat-x left top; }

.HeaderMenu .ContentMenuNavMenuListDynamicMenuItem {
  z-index: 0;
  background-color: #fff;
  border: solid 1px #fff;
  border-bottom: solid 1px #e3e3e3; }
  .HeaderMenu .ContentMenuNavMenuListDynamicMenuItem a {
    z-index: 0;
    display: block;
    vertical-align: middle;
    color: #999;
    background: none;
    padding: 4px 15px;
    width: 130px;
    white-space: normal; }
  .HeaderMenu .ContentMenuNavMenuListDynamicMenuItem:hover {
    background-color: #e9e9e9;
    color: #333; }

.HeaderMenu .ContentMenuNavMenuListDynamicMenuStyle {
  z-index: 100 !important;
  margin: 0;
  border: solid 1px #c9c9c9; }

/*ContentMenuNavList [Top] End*/
/*ContentMenuNavList [Bottom] Begin*/
.LayoutFooter .HeaderMenu .ContentMenuNavList a {
  display: none; }

.LayoutFooter .HeaderMenu .ContentMenuNavMenuList td:hover {
  background-color: Transparent; }

.LayoutFooter .HeaderMenu .ContentMenuNavList {
  width: auto;
  border: 0 none;
  margin-top: 0px;
  display: block;
  float: left; }
  .LayoutFooter .HeaderMenu .ContentMenuNavList .SidebarTop, .LayoutFooter .HeaderMenu .ContentMenuNavList .SidebarBottom {
    display: none; }
  .LayoutFooter .HeaderMenu .ContentMenuNavList .SidebarLeft {
    border: 0; }

.LayoutFooter .HeaderMenu ul li a.ContentMenuNavListStaticMenuItem {
  display: block;
  float: left;
  height: 18px;
  line-height: 18px;
  padding: 0 10px;
  text-align: center;
  vertical-align: middle;
  color: #d4d4d4;
  text-decoration: none;
  background: url(Images/Design/Bullet/pipe.gif) no-repeat right center;
  font-size: 11px !important; }
  .LayoutFooter .HeaderMenu ul li a.ContentMenuNavListStaticMenuItem:hover {
    color: #FF9D00; }

.LayoutFooter .HeaderMenu ul li:hover {
  background: url(Images/Design/Bullet/pipe.gif) no-repeat right center; }

.LayoutFooter .HeaderMenu .ContentMenuNavMenuListDynamicMenuItem {
  z-index: 0;
  display: none; }

.LayoutFooter .HeaderMenu .ContentMenuNavMenuListDynamicMenuStyle {
  display: none;
  border: 0; }

/*ContentMenuNavList [Bottom] End*/
/*ContentMenuItem Begin*/
.ContentMenuItemColumnTopicStyle {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 10px;
  border-bottom: solid 1px #e4e4e4; }
  .ContentMenuItemColumnTopicStyle a {
    color: #666;
    text-decoration: none;
    margin-left: 7px; }
    .ContentMenuItemColumnTopicStyle a:hover {
      color: #FF9D00; }

/*ContentMenuItem End*/
/* CommonTopDynamicDropdown [Language,Currency]  Begin*/
.LayoutHeader .LoginBarRight td a {
  line-height: 22px; }

.CommonTopDynamicDropdownListStaticMenuStyle {
  font-size: 11px;
  width: 100%;
  z-index: 0;
  border: solid 1px #c9c9c9; }

.CommonTopDynamicDropdownListStaticMenuItem td a {
  color: #999;
  display: block;
  margin: 0;
  text-decoration: none;
  vertical-align: middle;
  white-space: normal;
  padding: 0px 30px 0px 5px;
  background: #fff url(Images/Design/Bullet/SwitchDown.gif) no-repeat right center;
  line-height: 22px; }

.CommonTopDynamicDropdownListDynamicMenuItem {
  z-index: 0;
  background-color: #fff;
  border: solid 1px #fff;
  border-bottom: solid 1px #e3e3e3; }
  .CommonTopDynamicDropdownListDynamicMenuItem .DynamicHover {
    color: #666; }
    .CommonTopDynamicDropdownListDynamicMenuItem .DynamicHover a {
      color: #666; }
  .CommonTopDynamicDropdownListDynamicMenuItem a {
    z-index: 0;
    display: block;
    vertical-align: middle;
    color: #999;
    padding: 4px 10px; }
    .CommonTopDynamicDropdownListDynamicMenuItem a:hover {
      background-color: #e5e5e5;
      color: #333; }

.CommonTopDynamicDropdownListDynamicMenuStyle {
  z-index: 100 !important;
  margin: 0;
  border: solid 1px #c9c9c9; }

/* CommonTopDynamicDropdown [Language,Currency]  End*/
.MainDivCenter .Default {
  width: inherit; }

#uxValidSummary {
  margin-left: 10px; }

#at20mc form {
  background-image: none; }

.WarningMessage {
  background: yellow;
  width: 100%;
  text-align: center;
  padding: 3px;
  font-weight: bold;
  color: Gray; }
  .WarningMessage span {
    text-decoration: underline;
    color: Black; }

/*BlogDetails Begin*/
.BlogDetailsTopTitle {
  color: #555;
  font-size: 18px;
  font-weight: normal; }

.BlogDetails {
  background-color: #FFFFFF;
  border: 1px solid #E4E4E4;
  border-radius: 5px 5px 5px 5px;
  margin: 0 auto 10px;
  padding: 1px;
  width: 99%; }

.BlogDetailsTop {
  clear: both;
  width: 100%;
  height: 40px;
  -webkit-border-radius: 5px 5px 0 0;
  border-radius: 5px 5px 0 0;
  background: #777978;
  /* Old browsers */
  /* IE9 SVG, needs conditional override of 'filter' to 'none' */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzc3Nzk3OCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMzMjNkNDIiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(top, #777978 0%, #323d42 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #777978), color-stop(100%, #323d42));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #777978 0%, #323d42 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #777978 0%, #323d42 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #777978 0%, #323d42 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #777978 0%, #323d42 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#777978', endColorstr='#323d42',GradientType=0 );
  /* IE6-8 */ }

.BlogDetailsTopTitle {
  font-size: 13px;
  color: #fff;
  font-weight: bold;
  margin: 10px 15px;
  float: left;
  width: 540px; }

.BlogDetailsTopImgLeft, .BlogDetailsTop .BlogDetailsImgLeft, .BlogDetailsTopImgRight, .BlogDetailsTop .BlogDetailsImgRight {
  display: none; }

.BlogDetailsLeft {
  font-size: 12px; }

.BlogDetailsRight {
  padding: 15px; }

.BlogDetailsBottom {
  display: none; }

.BlogDetailsRight .NoteText {
  color: #ee9e22;
  font-weight: bold; }

.BlogFormView {
  width: 770px; }

.FacebookCommentBox {
  margin-top: 10px; }

/*BlogDetails End*/
/*BlogDetailsDefault Begin*/
.BlogDetailsDefaultPublisherDiv {
  color: #666666; }

.BlogDetailsDefaultBlogContentDiv {
  margin-top: 20px;
  margin-bottom: 10px; }

.BlogDetailsDefaultTagsDiv {
  margin-top: 5px;
  padding: 5px;
  font-size: 11px;
  color: #777;
  border: dashed 1px #ddd;
  line-height: 20px; }

.BlogDetailsDefaultTagsLink {
  color: #777;
  text-decoration: none; }
  .BlogDetailsDefaultTagsLink:hover {
    color: #ff9d00;
    text-decoration: underline; }

/*BlogDetailsDefault End*/
/*BlogList Begin*/
.BlogListTop {
  clear: both;
  width: 100%;
  height: 40px;
  -webkit-border-radius: 5px 5px 0 0;
  border-radius: 5px 5px 0 0;
  background: #777978;
  /* Old browsers */
  /* IE9 SVG, needs conditional override of 'filter' to 'none' */
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzc3Nzk3OCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMzMjNkNDIiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(top, #777978 0%, #323d42 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #777978), color-stop(100%, #323d42));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #777978 0%, #323d42 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #777978 0%, #323d42 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #777978 0%, #323d42 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #777978 0%, #323d42 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#777978', endColorstr='#323d42',GradientType=0 );
  /* IE6-8 */ }

.BlogListTopTitle {
  color: #555;
  font-size: 18px;
  font-weight: normal; }

.BlogListTopImgLeft, .BlogListTop .BlogListImgLeft, .BlogListTopImgRight, .BlogListTop .BlogListImgRight {
  display: none; }

.BlogListLeft {
  font-size: 12px; }

.BlogListRight {
  padding: 15px; }

.BlogListBottom {
  display: none; }

.BlogNoData {
  border: solid 1px #ddd;
  background-color: #F8F8F8;
  color: #888;
  font-weight: bold;
  font-size: 11px;
  text-align: center;
  clear: left;
  width: 100%;
  line-height: 25px;
  height: 28px;
  padding: 3px 0;
  display: table; }

/*BlogList End*/
/*BlogListItem Begin*/
.BlogListItemTable {
  width: 100%;
  border-bottom: 1px solid #E5E5E5; }

.BlogListItemDetailsColumn {
  padding: 10px 0px;
  vertical-align: top; }

.BlogListItemNameLink {
  color: #000;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none; }
  .BlogListItemNameLink:hover {
    color: #FF9D00;
    text-decoration: underline; }

.BlogListItemPublisherDiv {
  margin-top: 5px;
  color: #666666;
  font-size: 11px; }

.BlogListItemShortContentDiv {
  margin-top: 15px; }

.BlogPublisher {
  color: #FF9D00; }

/*BlogListItem End*/
/*BlogListRowStyle Begin*/
.BlogListDefaultPageControlPanel {
  background-color: #F8F8F8;
  clear: both;
  line-height: 30px;
  margin-bottom: 10px;
  padding: 3px 2%;
  width: 96%;
  color: #555; }

.BlogListDefaultItemPerPage {
  float: left;
  width: 30%;
  font-size: 11px; }
  .BlogListDefaultItemPerPage select {
    float: left;
    margin-right: 10px;
    margin-top: 6px; }
  .BlogListDefaultItemPerPage .OptionControlTitle {
    float: left;
    margin-right: 10px; }

.BlogListDefaultPagingControl {
  margin-top: 3px;
  text-align: right;
  float: right;
  font-size: 11px; }

.BlogListDefaultDataList {
  width: 100%;
  clear: left;
  float: left; }

.BlogListDefaultDataListHeader {
  display: none; }

.BlogListDefaultDataListItemStyle {
  padding: 2px;
  vertical-align: top; }

/*BlogListRowStyle End*/
/*SearchBox Begin*/
.SearchBox {
  background-color: #FDF5E6;
  border: 1px solid #FFEFD5;
  border-radius: 5px;
  margin-bottom: 10px;
  padding: 1px;
  width: 190px; }
  .SearchBox .SidebarRight {
    font-size: 12px;
    padding: 10px; }
  .SearchBox .SidebarBottom {
    display: none; }

.SearchBoxTextBox {
  z-index: 1;
  width: 127px;
  border: solid 1px #d0d0d0;
  border-right: none;
  color: #444;
  font-size: 12px;
  height: 18px;
  float: left;
  margin-bottom: 5px; }

.SearchBox .BtnStyle3 {
  padding: 0 8px; }

/*SearchBox End*/
/*Newsletter Begin*/
/*Newsletter Begin*/
.Newsletter {
  clear: left;
  float: left;
  width: 90%;
  padding: 7px 3%;
  border: dashed 1px #ccc;
  background-color: #f9f9f9; }
  .Newsletter .SidebarTop {
    min-height: 20px;
    background: none;
    height: 20px;
    width: 100%;
    border-bottom: 0; }
  .Newsletter .SidebarTopTitle {
    margin: 0;
    font-size: 12px;
    color: #000; }
  .Newsletter .SidebarTopImgLeft, .Newsletter .SidebarTopImgRight {
    display: none; }
  .Newsletter .SidebarLeft {
    border: 0; }
  .Newsletter .SidebarRight {
    font-size: 12px;
    padding: 0; }
  .Newsletter .SidebarBottom, .Newsletter .SidebarBottomImgLeft, .Newsletter .SidebarBottomImgRight {
    display: none; }

.NewsletterLabel {
  color: #888;
  clear: left;
  float: left;
  width: 100%;
  margin: 5px 0;
  font-size: 11px; }

.NewsletterForm {
  clear: left; }

.NewsletterTextBox {
  width: 155px;
  height: 18px;
  padding: 1px;
  -webkit-border-radius: 3px 0px 0px 3px;
  border-radius: 3px 0px 0px 3px;
  border: solid 1px #ccc;
  color: #555;
  float: left;
  font-size: 11px;
  position: relative;
  z-index: 1; }

.NewsletterSubmit {
  position: relative;
  z-index: 0;
  right: 2px;
  -webkit-border-radius: 0px 3px 3px 0px;
  border-radius: 0px 3px 3px 0px;
  margin-right: 0; }

.CommonValidateDivNewsLetter {
  width: 163px;
  clear: both; }

.CommonValidatorTextNewsLetter {
  font-size: 10px; }

/*Newsletter End*/
/*Content Footer Link Begin*/
.FrontMasterLicense {
  clear: both;
  width: 100%;
  background-color: #404244; }

.FrontMasterContentBottom {
  clear: both;
  width: 100%;
  background-color: #F2F4F7;
  border-top: solid 2px #C1C6C9; }

.LayoutFooter .MenuFooter {
  float: left;
  width: 30%;
  margin-right: 3%; }

.LayoutFooter .MenuItemTitle {
  clear: left;
  float: left;
  font: bold 12px/24px Arial;
  margin-bottom: 5px; }

.LayoutFooter ul.MenuItem {
  clear: left;
  list-style: none;
  margin: 0;
  padding: 0; }
  .LayoutFooter ul.MenuItem li {
    font-size: 11px; }
    .LayoutFooter ul.MenuItem li a.HyperLink {
      height: 20px;
      line-height: 20px;
      padding: 0px;
      color: #888;
      text-decoration: none; }
      .LayoutFooter ul.MenuItem li a.HyperLink:hover {
        background: none;
        color: #ff6900; }

.LayoutFooter .Left {
  float: left;
  width: 620px; }

.LayoutFooter .Right {
  float: right;
  width: 270px; }

.SocialLink {
  clear: left;
  float: left;
  margin-bottom: 10px;
  width: 100%;
  text-align: left; }

.FBLink {
  clear: left;
  float: left;
  margin-bottom: 5px;
  background: url(Images/Design/Icon/facebook_icon.png) no-repeat left center;
  padding-left: 25px;
  font-weight: bold;
  vertical-align: middle;
  line-height: 20px;
  color: #888;
  text-decoration: none;
  float: left;
  font-size: 11px; }

.TwitterLink {
  clear: left;
  float: left;
  background: url(Images/Design/Icon/twitter_icon.png) no-repeat left center;
  padding-left: 25px;
  font-weight: bold;
  vertical-align: middle;
  line-height: 20px;
  color: #888;
  text-decoration: none;
  float: left;
  font-size: 11px; }

.SocialLink a:hover {
  color: #000; }

/*Blog Comment*/
.BlogCommentDiv {
  width: 736px;
  padding-left: 15px; }
  .BlogCommentDiv table {
    width: 100%; }

.BlogCommentTitle {
  float: left;
  font-weight: bold; }

.BlogCommentDotted {
  clear: left;
  border-bottom: dotted 1px #CCC;
  padding-top: 10px; }

.BlogCommentTextArea {
  width: 736px;
  height: 114px; }

.BlogCommentListAlterStyle {
  padding: 3px;
  border-top: solid 1px #E0E2E5;
  color: #555;
  width: 100%; }

.BlogCommentUserName {
  float: left;
  font-weight: bold;
  padding-left: 15px; }

.BlogCommentCreateDate {
  padding-right: 15px;
  float: right; }

.BlogCommentPost {
  margin-top: 20px;
  padding-left: 30px;
  clear: both; }

.BlogCommentPostDiv {
  padding: 15px; }

.BlogCommentPagingDiv {
  text-align: right;
  padding: 15px 20px;
  margin-top: 3px;
  font-size: 11px;
  color: #646464;
  font: bold 11px Arial; }

.BlogCommentPostLabel {
  padding-bottom: 10px;
  font-weight: bold; }

.BlogCommentListStyle {
  background-color: #F4F6F9;
  padding: 3px;
  border-top: solid 1px #E0E2E5;
  color: #555;
  width: 100%; }

.BlogCommentPostButton {
  float: right;
  margin-top: 10px; }

.BlogCommentTextValidator {
  font-size: 11px;
  margin-top: 10px; }

.BlogCommentValidateDiv {
  width: 136px;
  border-bottom: dotted;
  border-width: 1px;
  color: #FF0000;
  margin-bottom: 2px; }

/* Begin Common Button Style*/
.BtnStyle1, .BtnStyle2, .BtnStyle4 {
  border-radius: 3px 3px 3px 3px;
  border-style: solid;
  border-width: 1px;
  display: block;
  float: left;
  font: bold 12px/20px Arial;
  margin: 0px 5px 2px 0;
  padding: 0 10px;
  text-decoration: none;
  vertical-align: middle; }

.BtnStyle1, .ShoppingCartCheckoutLink, .ShoppingCartGiftRegistryLink {
  background: #ffbd29;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmYmQyOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZjdmMWUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(top, #ffbd29 0%, #ff7f1e 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffbd29), color-stop(100%, #ff7f1e));
  background: -webkit-linear-gradient(top, #ffbd29 0%, #ff7f1e 100%);
  background: -o-linear-gradient(top, #ffbd29 0%, #ff7f1e 100%);
  background: -ms-linear-gradient(top, #ffbd29 0%, #ff7f1e 100%);
  background: linear-gradient(to bottom, #ffbd29 0%, #ff7f1e 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffbd29', endColorstr='#ff7f1e',GradientType=0 ) dropshadow(color=#ff7900, offx=0, offy=1);
  border-color: #ff6900 #ff6900 #ff7900 #ff7900;
  color: #fff;
  text-shadow: 0px 1px 1px #ff7900; }

.BtnStyle2 {
  background: #f9f9f9;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlZGVkZWQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
  background: -moz-linear-gradient(top, #f9f9f9 0%, #ededed 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f9f9f9), color-stop(100%, #e4e4e4));
  background: -webkit-linear-gradient(top, #f9f9f9 0%, #e4e4e4 100%);
  background: -o-linear-gradient(top, #f9f9f9 0%, #e4e4e4 100%);
  background: -ms-linear-gradient(top, #f9f9f9 0%, #e4e4e4 100%);
  background: linear-gradient(to bottom, #f9f9f9 0%, #e4e4e4 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f9f9f9', endColorstr='#e4e4e4',GradientType=0 ) dropshadow(color=#f9f9f9, offx=0, offy=1);
  border-color: #ccc #ccc #ccc #ddd;
  color: #555;
  text-shadow: 0px 1px 1px #f9f9f9; }

.BtnStyle4 {
  border-color: #ccc #ccc #ccc #ddd;
  background-color: #fff;
  color: #888; }

.ButtonDelete {
  font-size: 11px;
  color: #FF6900;
  text-decoration: none;
  font-weight: bold; }

.BtnStyle3 {
  border: solid 1px #ccc;
  background-color: #eee;
  color: #999;
  display: block;
  float: left;
  font: bold 11px/20px Arial;
  margin: 0px 5px 2px 0;
  padding: 0 10px;
  text-decoration: none;
  vertical-align: middle; }

.BtnStyle2:hover {
  color: #000; }

.BtnStyle3:hover {
  background-color: #ddd;
  color: #000; }

.BtnStyle1:hover {
  color: #000; }

.BtnStyle4:hover {
  color: #ff7900; }

.ButtonDelete:hover {
  color: #FF0000; }

/* End Common Button Style*/
.SocialLink a:hover {
  color: #000; }

.BlogList {
  width: 99%;
  background-color: #FFFFFF;
  border: 1px solid #E4E4E4;
  border-radius: 5px 5px 5px 5px;
  padding: 1px;
  margin: 0 auto 10px; }

.BlogNoData {
  border: 1px solid #E4E4E4;
  background-color: #F8F8F8;
  color: #888;
  font-weight: bold;
  font-size: 11px;
  text-align: center;
  clear: left;
  width: 100%;
  line-height: 25px;
  padding: 3px 0;
  display: table; }

/*

This less file only for blog pages.

*/
/* UTILITIES */
.hw100 {
  height: 100%;
  width: 100%; }

.w100 {
  width: 100%; }

.h100 {
  height: 100%; }

.no-margin {
  margin: 0; }

.no-padding {
  padding: 0; }

.no-margin-padding {
  margin: 0;
  padding: 0; }

.relative {
  position: relative; }

.zindex10 {
  z-index: 10; }

.cover {
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; }

.wh100 {
  width: 100%;
  height: 100%; }

.display-table {
  display: table; }

.display-table-cell {
  display: table-cell;
  vertical-align: middle; }

/* STYLE CONTENT  */
.no-margin-bottom {
  margin-bottom: 0; }

.background-overly {
  height: 100%;
  width: 100%;
  z-index: 1;
  position: absolute;
  left: 0;
  top: 0;
  opacity: .2; }

.background-overly-inner {
  background-color: #000000;
  background-color: rgba(0, 0, 0, 0.3);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#4d000000, endColorstr=#4d000000);
  -ms-filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#4d000000, endColorstr=#4d000000); }

.overlay-shade {
  z-index: 0;
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: 2; }

.relative1 {
  position: relative;
  z-index: 2; }

.relative5 {
  position: relative;
  z-index: 5; }

.blog-intro {
  height: 350px;
  display: block;
  clear: both;
  position: relative;
  border-bottom: 4px solid #4ec67f;
  transition: none; }

.subscribe-dropdown {
  display: inline-block;
  width: auto;
  max-width: 200px;
  clear: both; }
  .subscribe-dropdown .dropdown-menu {
    border-radius: 0;
    padding: 5px;
    width: 200px;
    top: 50px;
    font-size: 14px;
    background: #f0f0f2; }
    .subscribe-dropdown .dropdown-menu:after {
      bottom: 100%;
      left: 50%;
      border: solid transparent;
      content: " ";
      height: 0;
      width: 0;
      position: absolute;
      pointer-events: none;
      border-color: rgba(136, 183, 213, 0);
      border-bottom-color: #f0f0f2;
      border-width: 10px;
      margin-left: -10px; }
    .subscribe-dropdown .dropdown-menu li {
      padding: 4px 10px;
      line-height: 1.75em; }
      .subscribe-dropdown .dropdown-menu li span {
        margin-bottom: 0 !important; }
      .subscribe-dropdown .dropdown-menu li > a {
        color: #4f4f4f;
        font-size: 13px;
        letter-spacing: 0.06em;
        padding: 0;
        background: none; }
        .subscribe-dropdown .dropdown-menu li > a:hover, .subscribe-dropdown .dropdown-menu li > a:focus {
          background: none; }
      .subscribe-dropdown .dropdown-menu li input#subemail {
        color: #b9b8b8;
        font-size: 13px;
        margin-top: 6px;
        padding: 4px 0;
        text-align: center;
        width: 100%; }
      .subscribe-dropdown .dropdown-menu li .btn {
        background: #2a2a2a;
        border-radius: 0;
        color: #fff;
        font-size: 13px;
        display: block;
        letter-spacing: 1px;
        margin: 0;
        padding: 6px 0;
        text-align: center;
        text-transform: uppercase; }
        .subscribe-dropdown .dropdown-menu li .btn:hover {
          background: #4f4f4f; }

.btn-more {
  background: #a29061;
  border-radius: 0;
  color: #fff;
  font-size: 13px;
  letter-spacing: 1px;
  margin: 0;
  text-align: center;
  text-transform: uppercase; }
  .btn-more:hover {
    background: #897748;
    color: #fff; }

.btn-subscribe {
  border: 1px solid #fff;
  border-radius: 0;
  color: #fff;
  display: inline-block;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 0.06em;
  padding: 8px 0;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  width: 200px; }
  .btn-subscribe:hover {
    background: #fff;
    color: #34495e; }

.blogIntroContent {
  color: #fff; }

.introContent.ismobile {
  opacity: 1 !important; }

.blogIntroContent p {
  font-size: 20px;
  opacity: .9; }

.col-centered {
  float: none;
  margin: 0 auto; }

.item-blog-post {
  margin: 0 auto 30px; }
  .item-blog-post h2 {
    border-bottom: 1px solid #ddd;
    clear: both;
    font-size: 28.6px;
    font-weight: bold;
    letter-spacing: 0;
    margin: 28px 0;
    padding-bottom: 15px;
    position: relative; }
  .item-blog-post .post-header .post-info {
    line-height: 30px;
    margin-bottom: 28px; }
    .item-blog-post .post-header .post-info a.userBy {
      font-family: Georgia;
      font-style: italic; }
  .item-blog-post .post-header .share-gallery a {
    color: #fff;
    display: inline-block;
    float: left;
    height: 30px;
    line-height: 30px;
    max-width: 100px;
    min-width: 42px;
    text-align: center;
    margin-left: 10px;
    padding: 0 5px; }
  .item-blog-post .post-header .share-gallery .share-facebook {
    background-color: #3b5998; }
  .item-blog-post .post-header .share-gallery .share-twitter {
    background-color: #00aced; }
  .item-blog-post .post-header .share-gallery .share-pinterest {
    background-color: #c92228; }
  .item-blog-post .post-header .share-gallery .share-email {
    background-color: #333; }
  .item-blog-post .post-main-view {
    background: #f5f5f5; }
    .item-blog-post .post-main-view .post-lead-image img {
      width: 100%; }
    .item-blog-post .post-main-view .post-description {
      padding: 30px;
      font-size: 16px;
      line-height: 1.625;
      font-weight: 300; }

.loadMoreBlog .btn {
  border: 1px solid #ededed;
  border-radius: 0;
  color: #777;
  display: block;
  letter-spacing: 2px;
  margin-bottom: 30px;
  padding: 10px 0; }
  .loadMoreBlog .btn:hover {
    background: #ededed; }

.RecommendedBlog .RecommendedTitle {
  text-transform: uppercase;
  padding: 15px 0;
  clear: both;
  letter-spacing: 0.04em;
  margin-bottom: 25px; }

.RecommendedBlog .blog-rc-item {
  margin-bottom: 15px; }
  .RecommendedBlog .blog-rc-item .rcimg {
    max-height: 140px;
    display: block;
    overflow: hidden; }
    .RecommendedBlog .blog-rc-item .rcimg:hover {
      opacity: .7; }
  .RecommendedBlog .blog-rc-item .h4 {
    display: block;
    font-size: 14px;
    font-weight: bold;
    margin-top: 10px;
    line-height: normal; }

@media only screen and (min-width: 0) and (max-width: 767px) {
  .post-header {
    margin-bottom: 15px; } }

.toggle-filter {
  display: none; }

@media (max-width: 992px) {
  .divFilter {
    width: 300px;
    height: 100%;
    position: fixed;
    top: 0;
    left: -300px !important;
    z-index: 999999;
    background: #fff;
    transform: translateX(0);
    transform: translate3d(0, 0, 0);
    transition: .3s ease all;
    overflow: scroll; }
    .divFilter .filterHeader {
      z-index: 9999;
      width: 100%;
      display: flex;
      border-top: 1px solid #d0d7de;
      background-color: #f5f5f5; }
      .divFilter .filterHeader .btn {
        border-radius: 0;
        border: 0;
        line-height: unset;
        margin-left: auto;
        background: none;
        color: #000;
        font-size: 2rem; }
  .show-filter .divFilter {
    transform: translateX(300px);
    transform: translate3d(300px, 0, 0); }
  .menu-overlay {
    opacity: 0;
    transition: opacity .1s ease-in; }
  .show-filter .menu-overlay {
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1060;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 1; }
  .toggle-filter {
    display: inline-block;
    padding: 0.475rem 0.75rem;
    font-size: 1.5rem;
    border-radius: 0.1rem;
    border: 1px solid #cccccc;
    margin-right: 7px;
    font-weight: bold; }
    .toggle-filter:hover {
      box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.8); } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5jc3MiLCJzb3VyY2VzIjpbImNvcmUuc2NzcyIsImFic3RyYWN0cy9fdmFyaWFibGVzLnNjc3MiLCJhYnN0cmFjdHMvX2Z1bmN0aW9ucy5zY3NzIiwiYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsImFic3RyYWN0cy9fZXh0ZW5kcy5zY3NzIiwidmVuZG9yL19ub3JtYWxpemUuc2NzcyIsInZlbmRvci9fYW5pbWF0ZS5zY3NzIiwidmVuZG9yL19qcXVlcnkubUN1c3RvbVNjcm9sbGJhci5zY3NzIiwidmVuZG9yL19qcXVlcnkubWluaW1hbGVjdC5zY3NzIiwidmVuZG9yL19qcXVlcnkuc2hhcmUuc2NzcyIsInZlbmRvci9fbGlicmFyeS12YXJpYWJsZS1vdmVycmlkZXMuc2NzcyIsInZlbmRvci9fb3dsLWNhcm91c2VsLnNjc3MiLCJ2ZW5kb3IvX3Ntb290aHByb2R1Y3RzLnNjc3MiLCJ2ZW5kb3IvX2Zvb3RhYmxlLnNjc3MiLCJ2ZW5kb3IvX2Nvb2tpZWNvbnNlbnQuc2NzcyIsImJhc2UvX2Jhc2Uuc2NzcyIsImJhc2UvX2ZvbnRzLnNjc3MiLCJiYXNlL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL19oZWxwZXJzLnNjc3MiLCJiYXNlL19wcmludC5zY3NzIiwibGF5b3V0L19oZWFkZXIuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJsYXlvdXQvbmF2aWdhdGlvbi9fZXh0ZW5kcy5zY3NzIiwibGF5b3V0L25hdmlnYXRpb24vX2JyZWFkY3J1bWItbWVudS5zY3NzIiwibGF5b3V0L25hdmlnYXRpb24vX2Zvb3Rlci1tZW51LnNjc3MiLCJsYXlvdXQvbmF2aWdhdGlvbi9fbWFpbi1tZW51LnNjc3MiLCJsYXlvdXQvbmF2aWdhdGlvbi9fbW9iaWxlLW1lbnUuc2NzcyIsImxheW91dC9uYXZpZ2F0aW9uL19zaWRlLW1lbnUuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9faW5wdXQuc2NzcyIsImNvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJjb21wb25lbnRzL19wYW5lbC5zY3NzIiwiY29tcG9uZW50cy9fYWxlcnQuc2NzcyIsImNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwiY29tcG9uZW50cy9fY2hlY2stcmFkaW8tYnV0dG9uLnNjc3MiLCJjb21wb25lbnRzL19zY3JvbGwtdG8tdG9wLnNjc3MiLCJjb21wb25lbnRzL19zbGlkZXIuc2NzcyIsImNvbXBvbmVudHMvX3Byb2R1Y3Qtc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL19wYXJhbGxheC1zbGlkZXIuc2NzcyIsImNvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzIiwicGFnZXMvX2hvbWUuc2NzcyIsInBhZ2VzL19kZWZhdWx0LnNjc3MiLCJwYWdlcy9fYWJvdXQuc2NzcyIsInBhZ2VzL19jb250YWN0LnNjc3MiLCJwYWdlcy9zaG9wL19zaG9wLnNjc3MiLCJwYWdlcy9zaG9wL19jYXJ0LnNjc3MiLCJ0aGVtZXMvX2RlZmF1bHQuc2NzcyIsInJlc3BvbnNpdmUvX3Jlc3BvbnNpdmUuc2NzcyIsIm1vZHVsZXMveW91dHViZS5zY3NzIiwicGFnZXMvX2Jsb2cuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcInV0Zi04XCI7XHJcblxyXG5cclxuLy8gR2xvYmFsXHJcblxyXG5AaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9U291cmNlK1NhbnMrUHJvOjQwMCwzMDAsNjAwLDcwMCk7XHJcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2Jvb3RzdHJhcC9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcycpO1xyXG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb250LWF3ZXNvbWUvY3NzL2ZvbnQtYXdlc29tZS5taW4uY3NzJyk7XHJcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2phc255LWJvb3RzdHJhcC9kaXN0L2Nzcy9qYXNueS1ib290c3RyYXAubWluLmNzcycpO1xyXG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9zaW1wbGVsaWdodGJveC9kaXN0L3NpbXBsZWxpZ2h0Ym94Lm1pbi5jc3MnKTtcclxuXHJcbi8qIGdvb2dsZSB3ZWJmb250ICovXHJcbkBpbXBvcnQgdXJsKGh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1Pc3dhbGQ6NDAwLDMwMCw3MDApOyAvKiBnb29nbGUgd2ViZm9udCAqL1xyXG4vL0BpbXBvcnQgJ2ZvbnQtYXdlc29tZSc7XHJcbi8vIDEuIENvbmZpZ3VyYXRpb24gYW5kIGhlbHBlcnNcclxuQGltcG9ydCAnYWJzdHJhY3RzL3ZhcmlhYmxlcycsICdhYnN0cmFjdHMvZnVuY3Rpb25zJywgJ2Fic3RyYWN0cy9taXhpbnMnLCdhYnN0cmFjdHMvZXh0ZW5kcyc7XHJcblxyXG4vLyAyLiBWZW5kb3JzXHJcblxyXG5cclxuLypAaW1wb3J0IFwiZm9udC1hd2Vzb21lXCI7XHJcbkBpbXBvcnQgXCJib290c3RyYXBcIjtcclxuQGltcG9ydCBcImphc255LWJvb3RzdHJhcFwiOyovXHJcbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnLCd2ZW5kb3IvYW5pbWF0ZScsJ3ZlbmRvci9qcXVlcnkubUN1c3RvbVNjcm9sbGJhcicsJ3ZlbmRvci9qcXVlcnkubWluaW1hbGVjdCcsJ3ZlbmRvci9qcXVlcnkuc2hhcmUnLCd2ZW5kb3IvbGlicmFyeS12YXJpYWJsZS1vdmVycmlkZXMnLCd2ZW5kb3Ivb3dsLWNhcm91c2VsJywndmVuZG9yL3Ntb290aHByb2R1Y3RzJywgJ3ZlbmRvci9mb290YWJsZSc7XHJcbkBpbXBvcnQgXCJ2ZW5kb3IvY29va2llY29uc2VudFwiO1xyXG5cclxuLy8gMy4gQmFzZSBzdHVmZlxyXG5AaW1wb3J0ICdiYXNlL2Jhc2UnLCAnYmFzZS9mb250cycsICdiYXNlL3R5cG9ncmFwaHknLCAnYmFzZS9oZWxwZXJzJywgJ2Jhc2UvcHJpbnQnO1xyXG5cclxuLy8gNC4gTGF5b3V0LXJlbGF0ZWQgc2VjdGlvbnNcclxuQGltcG9ydCAnbGF5b3V0L2hlYWRlcicsICdsYXlvdXQvZm9vdGVyJztcclxuQGltcG9ydCAnbGF5b3V0L25hdmlnYXRpb24vZXh0ZW5kcycsJ2xheW91dC9uYXZpZ2F0aW9uL2JyZWFkY3J1bWItbWVudScsJ2xheW91dC9uYXZpZ2F0aW9uL2Zvb3Rlci1tZW51JywnbGF5b3V0L25hdmlnYXRpb24vbWFpbi1tZW51JywnbGF5b3V0L25hdmlnYXRpb24vbW9iaWxlLW1lbnUnLCdsYXlvdXQvbmF2aWdhdGlvbi9zaWRlLW1lbnUnO1xyXG5cclxuLy8gNS4gQ29tcG9uZW50c1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbicsICdjb21wb25lbnRzL2lucHV0JywgJ2NvbXBvbmVudHMvbW9kYWwnLCAnY29tcG9uZW50cy9wYW5lbCcsICdjb21wb25lbnRzL2FsZXJ0JywgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbicsICdjb21wb25lbnRzL3RodW1ibmFpbCcsJ2NvbXBvbmVudHMvY2hlY2stcmFkaW8tYnV0dG9uJywnY29tcG9uZW50cy9zY3JvbGwtdG8tdG9wJywgJ2NvbXBvbmVudHMvc2xpZGVyJywgJ2NvbXBvbmVudHMvcHJvZHVjdC1zbGlkZXInLCdjb21wb25lbnRzL3BhcmFsbGF4LXNsaWRlcicsICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XHJcblxyXG4vLyA2LiBQYWdlLXNwZWNpZmljIHN0eWxlc1xyXG5AaW1wb3J0ICdwYWdlcy9ob21lJywncGFnZXMvZGVmYXVsdCcsJ3BhZ2VzL2Fib3V0JywncGFnZXMvY29udGFjdCc7XHJcbkBpbXBvcnQgJ3BhZ2VzL3Nob3Avc2hvcCcsJ3BhZ2VzL3Nob3AvY2FydCc7XHJcblxyXG4vLyA3LiBUaGVtZXNcclxuQGltcG9ydCAndGhlbWVzL2RlZmF1bHQnO1xyXG5cclxuLy8gOC4gUmVzcG9uc2l2ZVxyXG5AaW1wb3J0ICdyZXNwb25zaXZlL3Jlc3BvbnNpdmUnO1xyXG5cclxuLy8gOS4gTW9kdWxlc1xyXG5AaW1wb3J0ICdtb2R1bGVzL3lvdXR1YmUnO1xyXG5cclxuLy8xMC4gQmxvZ1xyXG5AaW1wb3J0ICdwYWdlcy9ibG9nJztcclxuXHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuLy8gLSAtIGluYm94XHJcbi8vIHRoZSBpbmJveCBhbGxvd3MgZGV2ZWxvcGVycywgYW5kIHRob3NlIG5vdCBhY3RpdmVseSB3b3JraW5nIG9uIHRoZSBwcm9qZWN0XHJcbi8vIHRvIHF1aWNrbHkgYWRkIHN0eWxlcyB0aGF0IGFyZSBlYXNpbHkgc2VlbiBieSB0aGUgbWFpbnRhaW5lciBvZiB0aGUgZmlsZS5cclxuXHJcblxyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcbi8vIC0gLSBzaGFtZVxyXG4vLyBuZWVkIHRvIGFkZCBhIHF1aWNrIGZpeCwgaGFjaywgb3IgcXVlc3Rpb25hYmxlIHRlY2huaXF1ZT8gIGFkZCBpdCBoZXJlLCBmaXggaXQgbGF0ZXIuXHJcblxyXG4udG9nZ2xlLWZpbHRlciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiA5OTJweCkge1xyXG4gICAgLmRpdkZpbHRlciB7XHJcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IC0zMDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHotaW5kZXg6IDk5OTk5OTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZSBhbGw7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBzY3JvbGw7XHJcblxyXG4gICAgICAgIC5maWx0ZXJIZWFkZXIge1xyXG4gICAgICAgICAgICB6LWluZGV4OiA5OTk5O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMGQ3ZGU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XHJcblxyXG4gICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2hvdy1maWx0ZXIgLmRpdkZpbHRlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwMHB4KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMHB4LDAsMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lbnUtb3ZlcmxheSB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xcyBlYXNlLWluO1xyXG4gICAgfVxyXG5cclxuICAgIC5zaG93LWZpbHRlciAubWVudS1vdmVybGF5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC41KTtcclxuICAgICAgICB6LWluZGV4OiAxMDYwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAudG9nZ2xlLWZpbHRlciB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNDc1cmVtIDAuNzVyZW07XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4xcmVtO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA3cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDFweCAwcHggcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCLvu79AY2hhcnNldCBcInV0Zi04XCI7XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgYXBwbGljYXRpb24td2lkZSBTYXNzIHZhcmlhYmxlcy5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG4vLyAtIC0gUHJpbWFyeSwgc2Vjb25kYXJ5LCB0ZXJ0aWFyeSBjb2xvcnNcclxuLy9cclxuJHByaW1hcnktY29sb3I6ICNhMjkwNjE7XHJcbiRwcmltYXJ5LWNvbG9yLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMTYyLDE0NCw5NywxKSAwJSwgcmdiYSgxMzcsMTE5LDcyLDEpIDEwMCUpO1xyXG5cclxuJHByaW1hcnktbGlnaHQtY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDUlKTtcclxuJHByaW1hcnktZGFyay1jb2xvcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCA1JSk7XHJcbiRwcmltYXJ5LWhvdmVyLWNvbG9yOiAkcHJpbWFyeS1kYXJrLWNvbG9yO1xyXG4kc2Vjb25kYXJ5LWNvbG9yOiAjNDQ0NDQ0O1xyXG4kc2Vjb25kYXJ5LWxpZ2h0LWNvbG9yOiBsaWdodGVuKCRzZWNvbmRhcnktY29sb3IsIDUlKTtcclxuJHNlY29uZGFyeS1kYXJrLWNvbG9yOiBkYXJrZW4oJHNlY29uZGFyeS1jb2xvciwgNSUpO1xyXG4kc2Vjb25kYXJ5LWhvdmVyLWNvbG9yOiAkc2Vjb25kYXJ5LWRhcmstY29sb3I7XHJcbiR0ZXJ0aWFyeS1jb2xvcjogIzY2NjY2ODtcclxuJHRlcnRpYXJ5LWxpZ2h0LWNvbG9yOiBsaWdodGVuKCR0ZXJ0aWFyeS1jb2xvciwgNSUpO1xyXG4kdGVydGlhcnktZGFyay1jb2xvcjogZGFya2VuKCR0ZXJ0aWFyeS1jb2xvciwgNSUpO1xyXG4kdGVydGlhcnktaG92ZXItY29sb3I6ICR0ZXJ0aWFyeS1kYXJrLWNvbG9yO1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcbi8vIC0gLSBTdXBwb3J0IGNvbG9yc1xyXG4vL1xyXG4kc3VwcG9ydC1jb2xvcjogI2RkZGRkZDtcclxuJHN1cHBvcnQtbGlnaHQtY29sb3I6ICNjY2NjY2M7XHJcbiRzdXBwb3J0LWxpZ2h0ZXItY29sb3I6ICNCREMzQzc7XHJcbiRzdXBwb3J0LWxpZ2h0ZXN0LWNvbG9yOiBsaWdodGVuKCRzdXBwb3J0LWNvbG9yLCAxNSUpO1xyXG4kc3VwcG9ydC1kYXJrLWNvbG9yOiBkYXJrZW4oJHN1cHBvcnQtY29sb3IsIDUlKTtcclxuJHN1cHBvcnQtZGFya2VyLWNvbG9yOiBkYXJrZW4oJHN1cHBvcnQtY29sb3IsIDEwJSk7XHJcbiRzdXBwb3J0LWRhcmtlc3QtY29sb3I6IGRhcmtlbigkc3VwcG9ydC1jb2xvciwgMTUlKTtcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG4vLyAtIC0gRXJyb3IgLyB2YWxpZCBjb2xvcnNcclxuLy9cclxuJHN1Y2Nlc3MtY29sb3I6ICM4YmI0MTg7XHJcbiRzdWNjZXNzLWxpZ2h0LWNvbG9yOiBsaWdodGVuKCRzdWNjZXNzLWNvbG9yLCAyMCUpO1xyXG4kc3VjY2Vzcy1kYXJrLWNvbG9yOiBkYXJrZW4oJHN1Y2Nlc3MtY29sb3IsIDEwJSk7XHJcbiRlcnJvci1jb2xvcjogI2ZmMDAwMDtcclxuJGVycm9yLWxpZ2h0LWNvbG9yOiBsaWdodGVuKCRlcnJvci1jb2xvciwgMjAlKTtcclxuJGVycm9yLWRhcmstY29sb3I6IGRhcmtlbigkZXJyb3ItY29sb3IsIDEwJSk7XHJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuLy8gLSAtIEJhc2UgY29sb3JzXHJcbi8vXHJcbiRib2R5LWJnLWNvbG9yOiAjZmZmZmZmO1xyXG4kdGV4dC1jb2xvcjogIzQ0NDQ0NDtcclxuJHRpdGxlLWNvbG9yOiAjMmMzZTUwO1xyXG4kbWVudS1ob3Zlci1jb2xvcjogI0Q5NDEwMDtcclxuJGNsb3NlLW1lbnUtYXJyb3c6ICNEOTQxMDA7XHJcbiRtZW51LWhvdmVyLWNvbG9yOiAjODk3NzQ4O1xyXG4kY2xvc2UtbWVudS1hcnJvdzogIzg5Nzc0ODtcclxuJG1lbnUtdG9wLWJvcmRlcjogIzY2NjY2ODtcclxuJG1lbnUtYm90dG9tLWJvcmRlcjogI2VkZWRlZDtcclxuJG1lbnUtZ3JhZGllbnQtY29sb3ItMTogIzc3Nzk3ODtcclxuJG1lbnUtZ3JhZGllbnQtY29sb3ItMjogIzMyM2Q0MjtcclxuJGxpbmstY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiRsaW5rLWhvdmVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJHplYnJhLWNvbG9yOiAjRkFGQUZBO1xyXG4kdGFibGUtemVicmEtY29sb3I6ICR6ZWJyYS1jb2xvcjtcclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG4vLyAtIC0gRm9ybSBjb2xvcnNcclxuLy9cclxuJGJvcmRlci1jb2xvcjogJHN1cHBvcnQtY29sb3I7XHJcbiRib3JkZXItZGFyay1jb2xvcjogZGFya2VuKCRzdXBwb3J0LWNvbG9yLCAxNSUpO1xyXG4kaW5wdXQtY29sb3I6ICM4ODg4ODg7XHJcbiRwbGFjZWhvbGRlci1jb2xvcjogIzg4ODg4ODtcclxuLy8gTWVudSBib3JkZXIgY29sb3JcclxuJG1lbnUtYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcbi8vRm9udHNcclxuJGJhc2UtZm9udC1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLCBzYW5zLXNlcmlmO1xyXG4kZm9udC1mYW1pbHktbGlnaHQ6ICRiYXNlLWZvbnQtZmFtaWx5O1xyXG4kZm9udC1mYW1pbHktcmVndWxhcjogJGJhc2UtZm9udC1mYW1pbHk7XHJcbiRmb250LWZhbWlseS1ib2xkOiAkYmFzZS1mb250LWZhbWlseTtcclxuJGJhc2UtZm9udDogJGZvbnQtZmFtaWx5LXJlZ3VsYXI7XHJcbiR0aXRsZS1mb250OiAkZm9udC1mYW1pbHktYm9sZDtcclxuJGZvbnQtZXh0cmEtYm9sZDogOTAwO1xyXG4kZm9udC1ib2xkOiA2MDA7XHJcbiRmb250LXJlZ3VsYXItYm9sZDogNDAwO1xyXG4kZm9udC1yZWd1bGFyOiAzMDA7XHJcbi8vIEJyZWFrcG9pbnRzXHJcbi8vIEBzZWUge21peGlufSBmb250LXNpemVcclxuJHAtZm9udC1zaXplczogKCBudWxsOiAoMS40cmVtLCAxLjUpLCBzbTogMS4zcmVtLCBtZDogKDEuNHJlbSwgMS41KSwgbGc6ICgxLjRyZW0sIDEuNSkpO1xyXG4kaDEtZm9udC1zaXplczogKCBudWxsOiAoMy4ycmVtLCAwLjcpLCBzbTogMy4xcmVtLCBtZDogKDMuMnJlbSwgMC43KSwgbGc6ICgzLjJyZW0sIDAuNykpO1xyXG4kaDItZm9udC1zaXplczogKCBudWxsOiAoMi40cmVtLCAxLjMpLCBzbTogMnJlbSwgbWQ6ICgyLjRyZW0sIDEuNCksIGxnOiAoMi40cmVtLCAxLjQ1KSk7XHJcbiRoMy1mb250LXNpemVzOiAoIG51bGw6ICgycmVtLCAxLjMpLCBzbTogMS43NXJlbSwgbWQ6ICgycmVtLCAxLjMpLCBsZzogKDJyZW0sIDEuMykpO1xyXG4kaDQtZm9udC1zaXplczogKCBudWxsOiAoMS43cmVtLCAxLjMpLCBzbTogMS41cmVtLCBtZDogKDEuN3JlbSwgMS4zKSwgbGc6ICgxLjdyZW0sIDEuMzUpKTtcclxuJGg1LWZvbnQtc2l6ZXM6ICggbnVsbDogKDEuNHJlbSwgMS4yKSwgc206IDFyZW0sIG1kOiAoMS40cmVtLCAxLjIpLCBsZzogKDEuNHJlbSwgMS4yKSk7XHJcbi8vUGF0aHNcclxuJHdlYi1wYXRoOiAnLi4vd2ViLyc7XHJcbiRhc3NldHMtcGF0aDogJy4uL2Fzc2V0cyc7XHJcbiRpbWFnZXMtcGF0aDogJy4uL2ltZy8nO1xyXG4kc3ByaXRlLXBhdGg6ICRpbWFnZXMtcGF0aCsgJy4uL2ltYWdlcy9zcHJpdGVzJztcclxuJGZvbnQtcGF0aDogJy4uL2ZvbnRzLyc7XHJcbi8vVHJhbnNpdGlvblxyXG4kYmFzZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcclxuJGJhc2UtZHVyYXRpb246IDAuM3M7XHJcbiRiYXNlLWN1cnZlOiBlYXNlLWluLW91dDtcclxuJGJvdW5jZS1jdXJ2ZTogY3ViaWMtYmV6aWVyKDAuNjgsIC0uNTUsIC4yNjUsIDEuNTUpO1xyXG4kc21vb3RoLWN1cnZlOiBjdWJpYy1iZXppZXIoLjc4NSwgLjEzNSwgLjE1LCAuODYpO1xyXG4vL1Zpc3VhbFxyXG4kYmFzZS1ib3JkZXItcmFkaXVzLW5vbmU6IDA7XHJcbiRiYXNlLWJvcmRlci1yYWRpdXMtc206IDNweDtcclxuJGJhc2UtYm9yZGVyLXJhZGl1czogNHB4O1xyXG4kYmFzZS1ib3JkZXItcmFkaXVzLWxnOiA2cHg7XHJcbiRiYXNlLXNoYWRvdzogM3B4IDNweCAwIHJnYmEoYmxhY2ssIDAuMDEpO1xyXG4vL0NvbnRlbnQgYmxvY2sgLyBncmlkXHJcbiRncmlkLWNvbHVtbnM6IDEyICFnbG9iYWw7XHJcbiRndXR0ZXItd2lkdGg6IDIuNXB4ICFnbG9iYWw7XHJcbiRndXR0ZXItd2lkdGgteTogMi41cmVtICFnbG9iYWw7XHJcbiRndXR0ZXItd2lkdGgteDogMi41cmVtICFnbG9iYWw7XHJcbiRoYWxmLWd1dHRlci13aWR0aDogaGFsZigkZ3V0dGVyLXdpZHRoKTtcclxuJGhhbGYtZ3V0dGVyLXdpZHRoLXk6IGhhbGYoJGd1dHRlci13aWR0aC15KTtcclxuJGhhbGYtZ3V0dGVyLXdpZHRoLXg6IGhhbGYoJGd1dHRlci13aWR0aC14KTtcclxuJGRvdWJsZS1ndXR0ZXItd2lkdGg6IGRvdWJsZSgkZ3V0dGVyLXdpZHRoKTtcclxuJGRvdWJsZS1ndXR0ZXItd2lkdGgteTogZG91YmxlKCRndXR0ZXItd2lkdGgteSk7XHJcbiRkb3VibGUtZ3V0dGVyLXdpZHRoLXg6IGRvdWJsZSgkZ3V0dGVyLXdpZHRoLXgpO1xyXG4vL1NldHRpbmdzXHJcbiRoYXMtbW9iaWxlLW1lbnU6IGZhbHNlO1xyXG4kaGFzLW9mZmNhbnZhcy1tZW51OiB0cnVlO1xyXG4kaGFzLWNyb3NzYnJvd3NlcjogdHJ1ZTtcclxuLy8gQnJlYWtwb2ludHMgZ3JpZFxyXG4vLyBAc2VlIHttaXhpbn0gYnJlYWtwb2ludFxyXG4kYnJlYWtwb2ludHM6ICggJ3h4cyc6ICggbWluLXdpZHRoOiAzMjFweCksICd4cyc6ICggbWluLXdpZHRoOiA0ODBweCksICdzbSc6ICggbWluLXdpZHRoOiA3NjdweCksICdtZCc6ICggbWluLXdpZHRoOiA5OTJweCksICdsZyc6ICggbWluLXdpZHRoOiAxMjAwcHgpKTtcclxuLy8gLSAtIHR5cG9ncmFwaHlcclxuLy8gQnJlYWtwb2ludHMgdHlwb2dyYXBoeVxyXG4kYnJlYWtwb2ludHMtdGc6ICggJ3NtJzogKCA3NjdweCksICdtZCc6ICggOTkycHgpLCAnbGcnOiAoIDEyMDBweCkpO1xyXG5cclxuYm9keSB7Y29sb3I6IzMzM31cclxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBhcHBsaWNhdGlvbi13aWRlIFNhc3MgZnVuY3Rpb25zLlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8vIE5hdGl2ZSBgdXJsKC4uKWAgZnVuY3Rpb24gd3JhcHBlclxyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRiYXNlIC0gYmFzZSBVUkwgZm9yIHRoZSBhc3NldFxyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0eXBlIC0gYXNzZXQgdHlwZSBmb2xkZXIgKGUuZy4gYGZvbnRzL2ApXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBhdGggLSBhc3NldCBwYXRoXHJcbi8vLyBAcmV0dXJuIHtVcmx9XHJcbkBmdW5jdGlvbiBhc3NldCgkYmFzZSwgJHR5cGUsICRwYXRoKSB7XHJcbiAgQHJldHVybiB1cmwoJGJhc2UgKyAkdHlwZSArICRwYXRoKTtcclxufVxyXG5cclxuLy8vIFJldHVybnMgVVJMIHRvIGFuIGltYWdlIGJhc2VkIG9uIGl0cyBwYXRoXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBhdGggLSBpbWFnZSBwYXRoXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJhc2UgWyRiYXNlLXVybF0gLSBiYXNlIFVSTFxyXG4vLy8gQHJldHVybiB7VXJsfVxyXG4vLy8gQHJlcXVpcmUgJGJhc2UtdXJsXHJcbkBmdW5jdGlvbiBpbWFnZSgkcGF0aCwgJGJhc2U6ICRiYXNlLXVybCkge1xyXG4gIEByZXR1cm4gYXNzZXQoJGJhc2UsICdpbWFnZXMvJywgJHBhdGgpO1xyXG59XHJcblxyXG4vLy8gUmV0dXJucyBVUkwgdG8gYSBmb250IGJhc2VkIG9uIGl0cyBwYXRoXHJcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHBhdGggLSBmb250IHBhdGhcclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYmFzZSBbJGJhc2UtdXJsXSAtIGJhc2UgVVJMXHJcbi8vLyBAcmV0dXJuIHtVcmx9XHJcbi8vLyBAcmVxdWlyZSAkYmFzZS11cmxcclxuQGZ1bmN0aW9uIGZvbnQoJHBhdGgsICRiYXNlOiAkYmFzZS11cmwpIHtcclxuICBAcmV0dXJuIGFzc2V0KCRiYXNlLCAnZm9udHMvJywgJHBhdGgpO1xyXG59XHJcblxyXG5cclxuQGZ1bmN0aW9uIHJldHVybi12YXJpYWJsZSgkY29udGVudCkge1xyXG4gICAgQHJldHVybiAkY29udGVudDtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGhhbGYoJG51bWJlcikge1xyXG4gICAgQHJldHVybiByb3VuZCgkbnVtYmVyIC8gMik7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBkb3VibGUoJG51bWJlcikge1xyXG4gICAgQHJldHVybiByb3VuZCgkbnVtYmVyICogMik7XHJcbn0iLCLvu78vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIGFwcGxpY2F0aW9uLXdpZGUgU2FzcyBtaXhpbnMuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLy8gRXZlbnQgd3JhcHBlclxyXG4vLy8gQGF1dGhvciBIYXJyeSBSb2JlcnRzXHJcbi8vLyBAcGFyYW0ge0Jvb2x9ICRzZWxmIFtmYWxzZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGN1cnJlbnQgc2VsZWN0b3JcclxuLy8vIEBsaW5rIGh0dHBzOi8vdHdpdHRlci5jb20vY3Nzd2l6YXJkcnkvc3RhdHVzLzQ3ODkzODUzMDM0MjAwNjc4NCBPcmlnaW5hbCB0d2VldCBmcm9tIEhhcnJ5IFJvYmVydHNcclxuQG1peGluIG9uLWV2ZW50KCRzZWxmOiBmYWxzZSkge1xyXG4gIEBpZiAkc2VsZiB7XHJcbiAgICAmLFxyXG4gICAgJjpob3ZlcixcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgJjpob3ZlcixcclxuICAgICY6YWN0aXZlLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8gLSAtIGJ1dHRvbnNcclxuJFBsYWNlaG9sZGVyLVNlbGVjdG9yczogKCk7XHJcblxyXG5AbWl4aW4gYnV0dG9uKCRjb2xvciwgJGV4dGVuZDogdHJ1ZSkge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0YXRpYygkZXh0ZW5kKTtcclxuICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAgIC8vYm9yZGVyLWNvbG9yOiBtaXgoYmxhY2ssICRjb2xvciwgMjUlKSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KGJsYWNrLCAkY29sb3IsIDE1JSkgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgLy9ib3JkZXItY29sb3I6IG1peChibGFjaywgJGNvbG9yLCA0MCUpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uLWdyYWRpZW50KCRjb2xvciwgJGdyYWRpZW50LCAkZXh0ZW5kOiB0cnVlKSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tc3RhdGljKCRleHRlbmQpO1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZDogJGdyYWRpZW50O1xyXG4gICAgLy9ib3JkZXItY29sb3I6IG1peChibGFjaywgJGNvbG9yLCAyNSUpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBtaXgoYmxhY2ssICRjb2xvciwgMTUlKSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAvL2JvcmRlci1jb2xvcjogbWl4KGJsYWNrLCAkY29sb3IsIDQwJSk7XHJcbiAgICB9XHJcbiAgICB0cmFuc2l0aW9uOm5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuQG1peGluIGJ1dHRvbi1zdGF0aWMoJGV4dGVuZDogdHJ1ZSkge1xyXG4gICAgJGJ1dHRvbi1zZWxlY3RvcjogbWFwLWdldCgkUGxhY2Vob2xkZXItU2VsZWN0b3JzLCAnYnRuJyk7XHJcblxyXG4gICAgQGlmICRleHRlbmQgPT0gdHJ1ZSB7XHJcbiAgICAgICAgQGlmICRidXR0b24tc2VsZWN0b3IgPT0gbnVsbCB7XHJcbiAgICAgICAgICAgICRidXR0b24tc2VsZWN0b3I6IHVuaXF1ZS1pZCgpO1xyXG4gICAgICAgICAgICAkUGxhY2Vob2xkZXItU2VsZWN0b3JzOiBtYXAtbWVyZ2UoJFBsYWNlaG9sZGVyLVNlbGVjdG9ycywgKCdidG4nOiAkYnV0dG9uLXNlbGVjdG9yKSkgIWdsb2JhbDtcclxuXHJcbiAgICAgICAgICAgIEBhdC1yb290ICUjeyRidXR0b24tc2VsZWN0b3J9IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdGF0aWMoZmFsc2UpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAZXh0ZW5kICUjeyRidXR0b24tc2VsZWN0b3J9O1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIC8vYm9yZGVyOiAxcHggc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cztcclxuICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMS4ycmVtO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyAtIC0gZm9udC1zaXplXHJcbkBtaXhpbiBmb250LXNpemUoJGZzLW1hcCwgJGZzLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMtdGcpIHtcclxuICAgIEBlYWNoICRmcy1icmVha3BvaW50LCAkZnMtZm9udC1zaXplIGluICRmcy1tYXAge1xyXG4gICAgICAgIEBpZiAkZnMtYnJlYWtwb2ludCA9PSBudWxsIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1mb250LXNpemUoJGZzLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBlbHNlIHtcclxuICAgICAgICAgICAgLy8gSWYgJGZzLWZvbnQtc2l6ZSBpcyBhIGtleSB0aGF0IGV4aXN0cyBpblxyXG4gICAgICAgICAgICAvLyAkZnMtYnJlYWtwb2ludHMsIHVzZSB0aGUgdmFsdWVcclxuICAgICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRmcy1icmVha3BvaW50cywgJGZzLWJyZWFrcG9pbnQpIHtcclxuICAgICAgICAgICAgICAgICRmcy1icmVha3BvaW50OiBtYXAtZ2V0KCRmcy1icmVha3BvaW50cywgJGZzLWJyZWFrcG9pbnQpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkZnMtYnJlYWtwb2ludCkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1mb250LXNpemUoJGZzLWZvbnQtc2l6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIC0gLSBVdGlsaXR5IGZ1bmN0aW9uIGZvciBtaXhpbiBmb250LXNpemVcclxuQG1peGluIG1ha2UtZm9udC1zaXplKCRmcy1mb250LXNpemUpIHtcclxuICAgIC8vIElmICRmcy1mb250LXNpemUgaXMgYSBsaXN0LCBpbmNsdWRlXHJcbiAgICAvLyBib3RoIGZvbnQtc2l6ZSBhbmQgbGluZS1oZWlnaHRcclxuICAgIEBpZiB0eXBlLW9mKCRmcy1mb250LXNpemUpID09IFwibGlzdFwiIHtcclxuICAgICAgICBmb250LXNpemU6IG50aCgkZnMtZm9udC1zaXplLCAxKTtcclxuXHJcbiAgICAgICAgQGlmIChsZW5ndGgoJGZzLWZvbnQtc2l6ZSkgPiAxKSB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBudGgoJGZzLWZvbnQtc2l6ZSwgMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWZvbnQtc2l6ZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gLSAtIHRyYW5zaXRpb25zXHJcbkBtaXhpbiB0cmFuc2l0aW9ucygkYXJncy4uLikge1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJGFyZ3M7XHJcbiAgLW1vei10cmFuc2l0aW9uOiAkYXJncztcclxuICAtbXMtdHJhbnNpdGlvbjogJGFyZ3M7XHJcbiAgLW8tdHJhbnNpdGlvbjogJGFyZ3M7XHJcbiAgdHJhbnNpdGlvbjogJGFyZ3M7XHJcbn1cclxuXHJcbi8vIC0gLSBjbGVhcmZpeFxyXG5AbWl4aW4gY2xlYXJmaXgge1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnICc7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcblxyXG4gICAgJiB7XHJcbiAgICAgICAgKnpvb206IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIC0gLSBicmVha3BvaW50c1xyXG5AbWl4aW4gYnJlYWtwb2ludCgkbmFtZSkge1xyXG4gICAgLy8gSWYgdGhlIGtleSBleGlzdHMgaW4gdGhlIG1hcFxyXG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJG5hbWUpIHtcclxuICAgICAgICAvLyBQcmludHMgYSBtZWRpYSBxdWVyeSBiYXNlZCBvbiB0aGUgdmFsdWVcclxuICAgICAgICBAbWVkaWEgI3tpbnNwZWN0KG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSkpfSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCBpbiB0aGUgbWFwXHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQHdhcm4gXCJVbmZvcnR1bmF0ZWx5LCBubyB2YWx1ZSBjb3VsZCBiZSByZXRyaWV2ZWQgZnJvbSBgI3skYnJlYWtwb2ludH1gLiBcIiArIFwiUGxlYXNlIG1ha2Ugc3VyZSBpdCBpcyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgIG1hcC5cIjtcclxuICAgIH1cclxufVxyXG5cclxuLy8gLSAtIENhbGMgaW1hZ2UgaW50cmluc2ljIGFzcGVjdCByYXRpb1xyXG5AZnVuY3Rpb24gZ2V0LWltZy1hc3BlY3QtcmF0aW8oJGltZy11cmwpIHtcclxuICAgICRpbWctaGVpZ2h0OiBpbWFnZS1oZWlnaHQo4oCcI3skaW1nLXVybH3igJ0pO1xyXG4gICAgJGltZy13aWR0aDogaW1hZ2Utd2lkdGgo4oCcI3skaW1nLXVybH3igJ0pO1xyXG4gICAgJGFzcGVjdC1yYXRpbzogJGltZy1oZWlnaHQgLyAkaW1nLXdpZHRoO1xyXG5cclxuICAgIEByZXR1cm4gJGFzcGVjdC1yYXRpbztcclxufVxyXG5cclxuQG1peGluIGludHJpbnNpYy1yYXRpby1iZy1pbWcoJGltZy11cmwpIHtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgLy8gbm90ZTogY291bGQgYWxzbyB1c2Ug4oCYY292ZXLigJkgYnV0IGl0IGlzIGxlc3Mgc3VwcG9ydGVkLlxyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKGdldC1pbWctYXNwZWN0LXJhdGlvKCRpbWctdXJsKSk7XHJcbiAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgLy8gLSAtIHVzYWdlXHJcbiAgICAvL0BpbmNsdWRlIGludHJpbnNpYy1yYXRpby1iZy1pbWco4oCcL3BhdGgtdG8taW1hZ2UvaW1hZ2UuanBn4oCdKVxyXG59XHJcblxyXG5cclxuQG1peGluIGNlbnRlci1jaGlsZHJlbiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4vLyAtIC0gUmVwbGFjZSBwbGFjZWhvbGRlciBzdHlsZVxyXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xyXG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOC0gKi9cclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOSsgKi9cclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgICAvLyAtIC0gdXNhZ2VcclxuICAgIC8vQGluY2x1ZGUgcGxhY2Vob2xkZXIoKSB7Y29sb3I6ICRzZWNvbmRhcnktY29sb3I7fVxyXG59XHJcbiIsIkBjaGFyc2V0IFwidXRmLThcIjtcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBhcHBsaWNhdGlvbi13aWRlIGV4dGVuZHMuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiVmdWxsLXdpZHRoIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4lYmFzZWZvbnQge1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDE0cHgpO1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG5cclxuICAgIGZvbnQ6IHtcclxuICAgICAgICBmYW1pbHk6ICRiYXNlLWZvbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbiV0aXRsZWZvbnQge1xyXG4gICAgZm9udDoge1xyXG4gICAgICAgIGZhbWlseTogJHRpdGxlLWZvbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbiVyb3VuZGVkIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxufSIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cclxuXHJcbi8qKlxyXG4gKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxyXG4gKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxyXG4gKiAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXHJcbiAqL1xyXG5cclxuaHRtbCB7XHJcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cclxuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxyXG4gKi9cclxuXHJcbmJvZHkge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXHJcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXHJcbiAqIGFuZCBGaXJlZm94LlxyXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxyXG4gKi9cclxuXHJcbmFydGljbGUsXHJcbmFzaWRlLFxyXG5kZXRhaWxzLFxyXG5maWdjYXB0aW9uLFxyXG5maWd1cmUsXHJcbmZvb3RlcixcclxuaGVhZGVyLFxyXG5oZ3JvdXAsXHJcbm1haW4sXHJcbm1lbnUsXHJcbm5hdixcclxuc2VjdGlvbixcclxuc3VtbWFyeSB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxyXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXHJcbiAqL1xyXG5cclxuYXVkaW8sXHJcbmNhbnZhcyxcclxucHJvZ3Jlc3MsXHJcbnZpZGVvIHtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXHJcbiAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXHJcbiAqL1xyXG5cclxuYXVkaW86bm90KFtjb250cm9sc10pIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGhlaWdodDogMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgYFtoaWRkZW5dYCBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC5cclxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxyXG4gKi9cclxuXHJcbltoaWRkZW5dLFxyXG50ZW1wbGF0ZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogTGlua3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuICovXHJcblxyXG5hIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cclxuICogYWN0aXZlL2hvdmVyIHN0YXRlLlxyXG4gKi9cclxuXHJcbmE6YWN0aXZlLFxyXG5hOmhvdmVyIHtcclxuICBvdXRsaW5lOiAwO1xyXG59XHJcblxyXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5hYmJyW3RpdGxlXSB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cclxuICovXHJcblxyXG5iLFxyXG5zdHJvbmcge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKi9cclxuXHJcbmRmbiB7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxyXG4gKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5cclxuaDEge1xyXG4gIGZvbnQtc2l6ZTogMmVtO1xyXG4gIG1hcmdpbjogMC42N2VtIDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxyXG4gKi9cclxuXHJcbm1hcmsge1xyXG4gIGJhY2tncm91bmQ6ICNmZjA7XHJcbiAgY29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBhbmQgdmFyaWFibGUgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5zbWFsbCB7XHJcbiAgZm9udC1zaXplOiA4MCU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxuc3ViLFxyXG5zdXAge1xyXG4gIGZvbnQtc2l6ZTogNzUlO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbnN1cCB7XHJcbiAgdG9wOiAtMC41ZW07XHJcbn1cclxuXHJcbnN1YiB7XHJcbiAgYm90dG9tOiAtMC4yNWVtO1xyXG59XHJcblxyXG4vKiBFbWJlZGRlZCBjb250ZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXHJcbiAqL1xyXG5cclxuaW1nIHtcclxuICBib3JkZXI6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cclxuICovXHJcblxyXG5zdmc6bm90KDpyb290KSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLyogR3JvdXBpbmcgY29udGVudFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxyXG4gKi9cclxuXHJcbmZpZ3VyZSB7XHJcbiAgbWFyZ2luOiAxZW0gNDBweDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cclxuICovXHJcblxyXG5ociB7XHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vKipcclxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXHJcbiAqL1xyXG5cclxucHJlIHtcclxuICBvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cclxuICovXHJcblxyXG5jb2RlLFxyXG5rYmQsXHJcbnByZSxcclxuc2FtcCB7XHJcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xyXG4gIGZvbnQtc2l6ZTogMWVtO1xyXG59XHJcblxyXG4vKiBGb3Jtc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXHJcbiAqIHN0eWxpbmcgb2YgYHNlbGVjdGAsIHVubGVzcyBhIGBib3JkZXJgIHByb3BlcnR5IGlzIHNldC5cclxuICovXHJcblxyXG4vKipcclxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxyXG4gKiAgICBLbm93biBpc3N1ZTogYWZmZWN0cyBjb2xvciBvZiBkaXNhYmxlZCBlbGVtZW50cy5cclxuICogMi4gQ29ycmVjdCBmb250IHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cclxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXHJcbiAqL1xyXG5cclxuYnV0dG9uLFxyXG5pbnB1dCxcclxub3B0Z3JvdXAsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXHJcbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xyXG4gIG1hcmdpbjogMDsgLyogMyAqL1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqL1xyXG5cclxuYnV0dG9uIHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cclxuICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cclxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cclxuICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxyXG4gKi9cclxuXHJcbmJ1dHRvbixcclxuc2VsZWN0IHtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXHJcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxyXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXHJcbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXHJcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cclxuICovXHJcblxyXG5idXR0b24sXHJcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXHJcbiAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4gKi9cclxuXHJcbmJ1dHRvbltkaXNhYmxlZF0sXHJcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcclxuICBjdXJzb3I6IGRlZmF1bHQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXHJcbiAqL1xyXG5cclxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxyXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXHJcbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxyXG4gKi9cclxuXHJcbmlucHV0IHtcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vKipcclxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxyXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxyXG4gKlxyXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxyXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxyXG4gKi9cclxuXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcclxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXHJcbiAgcGFkZGluZzogMDsgLyogMiAqL1xyXG59XHJcblxyXG4vKipcclxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cclxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcclxuICogZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxyXG4gKi9cclxuXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXHJcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xyXG4gIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLyoqXHJcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKi9cclxuXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXHJcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxyXG4gKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXHJcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cclxuICovXHJcblxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbiAqL1xyXG5cclxuZmllbGRzZXQge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XHJcbiAgbWFyZ2luOiAwIDJweDtcclxuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cclxuICovXHJcblxyXG5sZWdlbmQge1xyXG4gIGJvcmRlcjogMDsgLyogMSAqL1xyXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXHJcbiAqL1xyXG5cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKipcclxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxyXG4gKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cclxuICovXHJcblxyXG5vcHRncm91cCB7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8qIFRhYmxlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cclxuICovXHJcblxyXG50YWJsZSB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxudGQsXHJcbnRoIHtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcbiIsIu+7vy5hbmltYXRlZCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xyXG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbn1cclxuXHJcbi5hbmltYXRlZC5pbmZpbml0ZSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcclxufVxyXG5cclxuLmFuaW1hdGVkLmhpbmdlIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XHJcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcclxufVxyXG5cclxuLmFuaW1hdGVkLmJvdW5jZUluLFxyXG4uYW5pbWF0ZWQuYm91bmNlT3V0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcclxuICBhbmltYXRpb24tZHVyYXRpb246IC43NXM7XHJcbn1cclxuXHJcbi5hbmltYXRlZC5mbGlwT3V0WCxcclxuLmFuaW1hdGVkLmZsaXBPdXRZIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcclxuICBhbmltYXRpb24tZHVyYXRpb246IC43NXM7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2Uge1xyXG4gIGZyb20sIDIwJSwgNTMlLCA4MCUsIHRvIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDQzJSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNzAlIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2Uge1xyXG4gIGZyb20sIDIwJSwgNTMlLCA4MCUsIHRvIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDQzJSB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNzAlIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xyXG4gIH1cclxufVxyXG5cclxuLmJvdW5jZSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmbGFzaCB7XHJcbiAgZnJvbSwgNTAlLCB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMjUlLCA3NSUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxhc2gge1xyXG4gIGZyb20sIDUwJSwgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDI1JSwgNzUlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uZmxhc2gge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmbGFzaDtcclxufVxyXG5cclxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcHVsc2Uge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbi5wdWxzZSB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcHVsc2U7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcnViYmVyQmFuZCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcblxyXG4gIDMwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcclxuICB9XHJcblxyXG4gIDY1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NSwgMS4wNSwgMSk7XHJcbiAgfVxyXG5cclxuICA3NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgLjk1LCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJ1YmJlckJhbmQge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XHJcbiAgfVxyXG5cclxuICA0MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XHJcbiAgfVxyXG5cclxuICA2NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTUsIDEuMDUsIDEpO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgLjk1LCAxKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuLnJ1YmJlckJhbmQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzaGFrZSB7XHJcbiAgZnJvbSwgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzaGFrZSB7XHJcbiAgZnJvbSwgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuLnNoYWtlIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcclxuICBhbmltYXRpb24tbmFtZTogc2hha2U7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzd2luZyB7XHJcbiAgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHN3aW5nIHtcclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcclxuICB9XHJcbn1cclxuXHJcbi5zd2luZyB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xyXG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc3dpbmc7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgdGFkYSB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcblxyXG4gIDEwJSwgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgfVxyXG5cclxuICAzMCUsIDUwJSwgNzAlLCA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDYwJSwgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdGFkYSB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcblxyXG4gIDEwJSwgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgfVxyXG5cclxuICAzMCUsIDUwJSwgNzAlLCA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDYwJSwgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbi50YWRhIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB0YWRhO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiB0YWRhO1xyXG59XHJcblxyXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB3b2JibGUge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG5cclxuICAxNSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gIH1cclxuXHJcbiAgMzAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xyXG4gIH1cclxuXHJcbiAgNDUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcclxuICB9XHJcblxyXG4gIDc1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHdvYmJsZSB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcblxyXG4gIDE1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XHJcbiAgfVxyXG5cclxuICA0NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi53b2JibGUge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHdvYmJsZTtcclxuICBhbmltYXRpb24tbmFtZTogd29iYmxlO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgamVsbG8ge1xyXG4gIGZyb20sIDExLjElLCB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcblxyXG4gIDIyLjIlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xyXG4gIH1cclxuXHJcbiAgMzMuMyUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcclxuICB9XHJcblxyXG4gIDQ0LjQlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcclxuICB9XHJcblxyXG4gIDU1LjUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcclxuICB9XHJcblxyXG4gIDY2LjYlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xyXG4gIH1cclxuXHJcbiAgNzcuNyUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XHJcbiAgfVxyXG5cclxuICA4OC44JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBqZWxsbyB7XHJcbiAgZnJvbSwgMTEuMSUsIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxuXHJcbiAgMjIuMiUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XHJcbiAgfVxyXG5cclxuICAzMy4zJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xyXG4gIH1cclxuXHJcbiAgNDQuNCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xyXG4gIH1cclxuXHJcbiAgNTUuNSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpO1xyXG4gIH1cclxuXHJcbiAgNjYuNiUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XHJcbiAgfVxyXG5cclxuICA3Ny43JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcclxuICB9XHJcblxyXG4gIDg4LjglIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG4uamVsbG8ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGplbGxvO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBqZWxsbztcclxuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbiB7XHJcbiAgZnJvbSwgMjAlLCA0MCUsIDYwJSwgODAlLCB0byB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gIH1cclxuXHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gIH1cclxuXHJcbiAgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcclxuICB9XHJcblxyXG4gIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlSW4ge1xyXG4gIGZyb20sIDIwJSwgNDAlLCA2MCUsIDgwJSwgdG8ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICB9XHJcblxyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICB9XHJcblxyXG4gIDIwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG4uYm91bmNlSW4ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XHJcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICB9XHJcblxyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xyXG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgfVxyXG5cclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcclxuICB9XHJcblxyXG4gIDc1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3VuY2VJbkRvd24ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjtcclxuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcclxuICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gIH1cclxuXHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA3NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgOTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XHJcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICB9XHJcblxyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmJvdW5jZUluTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcclxuICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gIH1cclxuXHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDc1JSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgOTAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7XHJcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICB9XHJcblxyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICA3NSUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIDkwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uYm91bmNlSW5SaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcclxuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluVXAge1xyXG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgfVxyXG5cclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJvdW5jZUluVXAge1xyXG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XHJcbiAgfVxyXG5cclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNzUlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uYm91bmNlSW5VcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcclxuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dCB7XHJcbiAgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xyXG4gIH1cclxuXHJcbiAgNTAlLCA1NSUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXQge1xyXG4gIDIwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcclxuICB9XHJcblxyXG4gIDUwJSwgNTUlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3VuY2VPdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dDtcclxuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0RG93biB7XHJcbiAgMjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDQ1JSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIDQwJSwgNDUlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uYm91bmNlT3V0RG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcclxuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xyXG4gIDIwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcclxuICAyMCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5ib3VuY2VPdXRMZWZ0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xyXG4gIDIwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XHJcbiAgMjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uYm91bmNlT3V0UmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcclxuICAyMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgNDAlLCA0NSUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgYm91bmNlT3V0VXAge1xyXG4gIDIwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XHJcbiAgfVxyXG5cclxuICA0MCUsIDQ1JSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gIH1cclxufVxyXG5cclxuLmJvdW5jZU91dFVwIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDtcclxuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlSW4ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5Eb3duIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluRG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluRG93bkJpZyB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVJbkxlZnQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVJbkxlZnRCaWcge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluUmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVJblJpZ2h0QmlnIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZztcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluVXAge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluVXAge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluVXBCaWcge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVJblVwQmlnIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZztcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVPdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0RG93biB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlT3V0RG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd247XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlT3V0RG93bkJpZyB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVPdXRMZWZ0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlT3V0TGVmdEJpZyB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlT3V0UmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuLmZhZGVPdXRSaWdodEJpZyB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXAge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlT3V0VXAge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5mYWRlT3V0VXBCaWcge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZztcclxuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgfVxyXG5cclxuICA0MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxpcCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0zNjBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgfVxyXG5cclxuICA0MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XHJcbiAgfVxyXG5cclxuICA1MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICB9XHJcbn1cclxuXHJcbi5hbmltYXRlZC5mbGlwIHtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcEluWCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxpcEluWCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgNDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICB9XHJcbn1cclxuXHJcbi5mbGlwSW5YIHtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcEluWDtcclxuICBhbmltYXRpb24tbmFtZTogZmxpcEluWDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZsaXBJblkge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDQwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICA4MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgfVxyXG59XHJcblxyXG4uZmxpcEluWSB7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgfVxyXG5cclxuICAzMCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZsaXBPdXRYIHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICB9XHJcblxyXG4gIDMwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbi5mbGlwT3V0WCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFg7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRZIHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICB9XHJcblxyXG4gIDMwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmxpcE91dFkge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xyXG4gIH1cclxuXHJcbiAgMzAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmZsaXBPdXRZIHtcclxuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFk7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluIHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLmxpZ2h0U3BlZWRJbiB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW47XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ubGlnaHRTcGVlZE91dCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDtcclxuICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDtcclxuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XHJcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluIHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlSW4ge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdGF0ZUluIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbjtcclxuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4ucm90YXRlSW5Eb3duTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDtcclxuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbi5yb3RhdGVJbkRvd25SaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbi5yb3RhdGVJblVwTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdGF0ZUluVXBSaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXQge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbi5yb3RhdGVPdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDtcclxuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdGF0ZU91dERvd25MZWZ0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcclxuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93bkxlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbi5yb3RhdGVPdXREb3duUmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcclxuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93blJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnJvdGF0ZU91dFVwTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ucm90YXRlT3V0VXBSaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcclxuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGhpbmdlIHtcclxuICAwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG5cclxuICAyMCUsIDYwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgfVxyXG5cclxuICA0MCUsIDgwJSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgaGluZ2Uge1xyXG4gIDAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gIDIwJSwgNjAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA4MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICB9XHJcblxyXG4gIDQwJSwgODAlIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmhpbmdlIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcclxuICBhbmltYXRpb24tbmFtZTogaGluZ2U7XHJcbn1cclxuXHJcbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxJbiB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyByb2xsSW4ge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICB9XHJcbn1cclxuXHJcbi5yb2xsSW4ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjtcclxuICBhbmltYXRpb24tbmFtZTogcm9sbEluO1xyXG59XHJcblxyXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHJvbGxPdXQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcclxuICB9XHJcbn1cclxuXHJcbi5yb2xsT3V0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tSW4ge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xyXG4gIH1cclxuXHJcbiAgNTAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uem9vbUluIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW47XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JbkRvd24ge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgem9vbUluRG93biB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gIH1cclxuXHJcbiAgNjAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuLnpvb21JbkRvd24ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21JbkRvd247XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkRvd247XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5MZWZ0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21JbkxlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIDYwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbi56b29tSW5MZWZ0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluUmlnaHQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgem9vbUluUmlnaHQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbi56b29tSW5SaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbUluVXAge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgem9vbUluVXAge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDEwMDBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgfVxyXG5cclxuICA2MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbi56b29tSW5VcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluVXA7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblVwO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgNTAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21PdXQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIDUwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLnpvb21PdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0RG93biB7XHJcbiAgNDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHpvb21PdXREb3duIHtcclxuICA0MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcclxuICB9XHJcbn1cclxuXHJcbi56b29tT3V0RG93biB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dERvd247XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dExlZnQge1xyXG4gIDQwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tT3V0TGVmdCB7XHJcbiAgNDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XHJcbiAgfVxyXG59XHJcblxyXG4uem9vbU91dExlZnQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRSaWdodCB7XHJcbiAgNDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcclxuICA0MCUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xyXG4gIH1cclxufVxyXG5cclxuLnpvb21PdXRSaWdodCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0UmlnaHQ7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0VXAge1xyXG4gIDQwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB6b29tT3V0VXAge1xyXG4gIDQwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XHJcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XHJcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcclxuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuLnpvb21PdXRVcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dFVwO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluRG93biB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uc2xpZGVJbkRvd24ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluRG93bjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUluTGVmdCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZUluTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZUluUmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblVwIHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVJblVwIHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZUluVXAge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblVwO1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXREb3duIHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZU91dERvd24ge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uc2xpZGVPdXREb3duIHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dERvd247XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjtcclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZU91dExlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZU91dExlZnQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZU91dFJpZ2h0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFJpZ2h0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFJpZ2h0O1xyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRVcCB7XHJcbiAgZnJvbSB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZU91dFVwIHtcclxuICBmcm9tIHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XHJcbiAgfVxyXG59XHJcblxyXG4uc2xpZGVPdXRVcCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcclxufSIsIi8qIGJhc2ljIHNjcm9sbGJhciBzdHlsaW5nICovXHJcbi8qIHZlcnRpY2FsIHNjcm9sbGJhciAqL1xyXG5cclxuLm1DU0JfY29udGFpbmVyIHtcclxuICB3aWR0aDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAmLm1DU19ub19zY3JvbGxiYXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLm1DU19kaXNhYmxlZCA+IC5tQ3VzdG9tU2Nyb2xsQm94ID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXIsIC5tQ1NfZGVzdHJveWVkID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhciB7XHJcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG59XHJcblxyXG4ubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICB3aWR0aDogMTZweDtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgdG9wOiAwO1xyXG4gIHJpZ2h0OiAwO1xyXG59XHJcblxyXG4ubUNTQl9zY3JvbGxUb29scyB7XHJcbiAgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyIHtcclxuICAgIG1hcmdpbjogMjBweCAwO1xyXG4gIH1cclxuICAubUNTQl9kcmFnZ2VyUmFpbCB7XHJcbiAgICB3aWR0aDogMnB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gIH1cclxuICAubUNTQl9kcmFnZ2VyIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICB3aWR0aDogNHB4O1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gIH1cclxuICAubUNTQl9idXR0b25VcCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICB9XHJcbiAgLm1DU0JfYnV0dG9uRG93biB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRvcDogMTAwJTtcclxuICAgIG1hcmdpbi10b3A6IC00MHB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogaG9yaXpvbnRhbCBzY3JvbGxiYXIgKi9cclxuXHJcbi5tQ1NCX2hvcml6b250YWwgPiAubUNTQl9jb250YWluZXIge1xyXG4gIGhlaWdodDogYXV0bztcclxuICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICYubUNTX25vX3Njcm9sbGJhciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLm1DU19kaXNhYmxlZCA+IC5tQ1NCX2hvcml6b250YWwgPiAubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhciwgLm1DU19kZXN0cm95ZWQgPiAubUNTQl9ob3Jpem9udGFsID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXIge1xyXG4gIG1hcmdpbi1yaWdodDogMDtcclxuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4ubUNTQl9ob3Jpem9udGFsIHtcclxuICAmLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTZweDtcclxuICAgIHRvcDogYXV0bztcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG4gID4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gICAgYSArIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xyXG4gICAgICBtYXJnaW46IDAgMjBweDtcclxuICAgIH1cclxuICAgIC5tQ1NCX2RyYWdnZXJSYWlsIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICBtYXJnaW46IDdweCAwO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIH1cclxuICAgIC5tQ1NCX2RyYWdnZXIge1xyXG4gICAgICB3aWR0aDogMzBweDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiA0cHg7XHJcbiAgICAgICAgbWFyZ2luOiA2cHggYXV0bztcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5tQ1NCX2J1dHRvbkxlZnQge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aWR0aDogMjBweDtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgIH1cclxuICAgIC5tQ1NCX2J1dHRvblJpZ2h0IHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1DdXN0b21TY3JvbGxCb3gge1xyXG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XHJcbiAgLypNU1BvaW50ZXIgZXZlbnRzIC0gZGlyZWN0IGFsbCBwb2ludGVyIGV2ZW50cyB0byBqcyovXHJcbiAgPiAubUNTQl9zY3JvbGxUb29scyB7XHJcbiAgICBvcGFjaXR5OiAwLjc1O1xyXG4gICAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7XHJcbiAgICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7XHJcbiAgICAvKiBvbGQgaWUgKi9cclxuICB9XHJcbiAgJjpob3ZlciA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0xMDApXCI7XHJcbiAgICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiO1xyXG4gICAgLyogb2xkIGllICovXHJcbiAgfVxyXG59XHJcblxyXG4vKiBkZWZhdWx0IHNjcm9sbGJhciBjb2xvcnMgYW5kIGJhY2tncm91bmRzIChkZWZhdWx0IHRoZW1lKSAqL1xyXG5cclxuLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gIC5tQ1NCX2RyYWdnZXJSYWlsIHtcclxuICAgIGJhY2tncm91bmQ6ICMwMDA7XHJcbiAgICAvKiByZ2JhIGZhbGxiYWNrICovXHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcclxuICAgIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcclxuICAgIC8qIG9sZCBpZSAqL1xyXG4gIH1cclxuICAubUNTQl9kcmFnZ2VyIHtcclxuICAgIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgLyogcmdiYSBmYWxsYmFjayAqL1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xyXG4gICAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcclxuICAgICAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiO1xyXG4gICAgICAvKiBvbGQgaWUgKi9cclxuICAgIH1cclxuICAgICY6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xyXG4gICAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT04NSlcIjtcclxuICAgICAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTg1KVwiO1xyXG4gICAgICAvKiBvbGQgaWUgKi9cclxuICAgIH1cclxuICAgICY6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLCAmLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcbiAgICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiO1xyXG4gICAgICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7XHJcbiAgICAgIC8qIG9sZCBpZSAqL1xyXG4gICAgfVxyXG4gIH1cclxuICAubUNTQl9idXR0b25VcCwgLm1DU0JfYnV0dG9uRG93biwgLm1DU0JfYnV0dG9uTGVmdCwgLm1DU0JfYnV0dG9uUmlnaHQge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKG1DU0JfYnV0dG9ucy5wbmcpO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIG9wYWNpdHk6IDAuNDtcclxuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiO1xyXG4gICAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiO1xyXG4gICAgLyogb2xkIGllICovXHJcbiAgfVxyXG4gIC5tQ1NCX2J1dHRvblVwIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuICAgIC8qIFxyXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgYXJlIDAgMC8tMTZweCAwLy0zMnB4IDAvLTQ4cHggMCAobGlnaHQpIGFuZCAtODBweCAwLy05NnB4IDAvLTExMnB4IDAvLTEyOHB4IDAgKGRhcmspIFxyXG4gICAgKi9cclxuICB9XHJcbiAgLm1DU0JfYnV0dG9uRG93biB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMHB4O1xyXG4gICAgLyogXHJcbiAgICBzcHJpdGVzIGxvY2F0aW9ucyBhcmUgMCAtMjBweC8tMTZweCAtMjBweC8tMzJweCAtMjBweC8tNDhweCAtMjBweCAobGlnaHQpIGFuZCAtODBweCAtMjBweC8tOTZweCAtMjBweC8tMTEycHggLTIwcHgvLTEyOHB4IC0yMHB4IChkYXJrKSBcclxuICAgICovXHJcbiAgfVxyXG4gIC5tQ1NCX2J1dHRvbkxlZnQge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDBweDtcclxuICAgIC8qIFxyXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgYXJlIDAgLTQwcHgvLTIwcHggLTQwcHgvLTQwcHggLTQwcHgvLTYwcHggLTQwcHggKGxpZ2h0KSBhbmQgLTgwcHggLTQwcHgvLTEwMHB4IC00MHB4Ly0xMjBweCAtNDBweC8tMTQwcHggLTQwcHggKGRhcmspIFxyXG4gICAgKi9cclxuICB9XHJcbiAgLm1DU0JfYnV0dG9uUmlnaHQge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTZweDtcclxuICAgIC8qIFxyXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgYXJlIDAgLTU2cHgvLTIwcHggLTU2cHgvLTQwcHggLTU2cHgvLTYwcHggLTU2cHggKGxpZ2h0KSBhbmQgLTgwcHggLTU2cHgvLTEwMHB4IC01NnB4Ly0xMjBweCAtNTZweC8tMTQwcHggLTU2cHggKGRhcmspIFxyXG4gICAgKi9cclxuICB9XHJcbiAgLm1DU0JfYnV0dG9uVXA6aG92ZXIsIC5tQ1NCX2J1dHRvbkRvd246aG92ZXIsIC5tQ1NCX2J1dHRvbkxlZnQ6aG92ZXIsIC5tQ1NCX2J1dHRvblJpZ2h0OmhvdmVyIHtcclxuICAgIG9wYWNpdHk6IDAuNzU7XHJcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcclxuICAgIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcclxuICAgIC8qIG9sZCBpZSAqL1xyXG4gIH1cclxuICAubUNTQl9idXR0b25VcDphY3RpdmUsIC5tQ1NCX2J1dHRvbkRvd246YWN0aXZlLCAubUNTQl9idXR0b25MZWZ0OmFjdGl2ZSwgLm1DU0JfYnV0dG9uUmlnaHQ6YWN0aXZlIHtcclxuICAgIG9wYWNpdHk6IDAuOTtcclxuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiO1xyXG4gICAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiO1xyXG4gICAgLyogb2xkIGllICovXHJcbiAgfVxyXG59XHJcblxyXG4vKnNjcm9sbGJhciB0aGVtZXMqL1xyXG4vKmRhcmsgKGRhcmsgY29sb3JlZCBzY3JvbGxiYXIpKi9cclxuXHJcbi5tQ1MtZGFyayA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAubUNTQl9kcmFnZ2VyUmFpbCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgLyogcmdiYSBmYWxsYmFjayAqL1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICB9XHJcbiAgLm1DU0JfZHJhZ2dlciB7XHJcbiAgICAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XHJcbiAgICAgIC8qIHJnYmEgZmFsbGJhY2sgKi9cclxuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjc1KTtcclxuICAgIH1cclxuICAgICY6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xyXG4gICAgfVxyXG4gICAgJjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsICYubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcclxuICAgIH1cclxuICB9XHJcbiAgLm1DU0JfYnV0dG9uVXAge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDtcclxuICB9XHJcbiAgLm1DU0JfYnV0dG9uRG93biB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMjBweDtcclxuICB9XHJcbiAgLm1DU0JfYnV0dG9uTGVmdCB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNDBweDtcclxuICB9XHJcbiAgLm1DU0JfYnV0dG9uUmlnaHQge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTU2cHg7XHJcbiAgfVxyXG59XHJcblxyXG4vKmxpZ2h0LTIqL1xyXG5cclxuLm1DUy1saWdodC0yIHtcclxuICA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIC5tQ1NCX2RyYWdnZXJSYWlsIHtcclxuICAgICAgd2lkdGg6IDRweDtcclxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgLyogcmdiYSBmYWxsYmFjayAqL1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgfVxyXG4gICAgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgIHdpZHRoOiA0cHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgIC8qIHJnYmEgZmFsbGJhY2sgKi9cclxuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYubUNTQl9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gICAgLm1DU0JfZHJhZ2dlclJhaWwge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiA0cHg7XHJcbiAgICAgIG1hcmdpbjogNnB4IDA7XHJcbiAgICB9XHJcbiAgICAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogNHB4O1xyXG4gICAgICBtYXJnaW46IDZweCBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuICA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIC5tQ1NCX2RyYWdnZXIge1xyXG4gICAgICAmOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xyXG4gICAgICB9XHJcbiAgICAgICY6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLCAmLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uVXAge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAwO1xyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uRG93biB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC0yMHB4O1xyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uTGVmdCB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC00MHB4O1xyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uUmlnaHQge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtNTZweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qZGFyay0yKi9cclxuXHJcbi5tQ1MtZGFyay0yIHtcclxuICA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIC5tQ1NCX2RyYWdnZXJSYWlsIHtcclxuICAgICAgd2lkdGg6IDhweDtcclxuICAgICAgYmFja2dyb3VuZDogIzAwMDtcclxuICAgICAgLyogcmdiYSBmYWxsYmFjayAqL1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgfVxyXG4gICAgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgIHdpZHRoOiA4cHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XHJcbiAgICAgIC8qIHJnYmEgZmFsbGJhY2sgKi9cclxuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjc1KTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMXB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYubUNTQl9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gICAgLm1DU0JfZHJhZ2dlclJhaWwge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiA4cHg7XHJcbiAgICAgIG1hcmdpbjogNnB4IDA7XHJcbiAgICB9XHJcbiAgICAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICBtYXJnaW46IDZweCBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuICA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIC5tQ1NCX2RyYWdnZXIge1xyXG4gICAgICAmOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xyXG4gICAgICB9XHJcbiAgICAgICY6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLCAmLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uVXAge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggMDtcclxuICAgIH1cclxuICAgIC5tQ1NCX2J1dHRvbkRvd24ge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTIwcHg7XHJcbiAgICB9XHJcbiAgICAubUNTQl9idXR0b25MZWZ0IHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC00MHB4O1xyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uUmlnaHQge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTU2cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKmxpZ2h0LXRoaWNrKi9cclxuXHJcbi5tQ1MtbGlnaHQtdGhpY2sge1xyXG4gID4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gICAgLm1DU0JfZHJhZ2dlclJhaWwge1xyXG4gICAgICB3aWR0aDogNHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAvKiByZ2JhIGZhbGxiYWNrICovXHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcclxuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICB9XHJcbiAgICAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgd2lkdGg6IDZweDtcclxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgLyogcmdiYSBmYWxsYmFjayAqL1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgIH1cclxuICB9XHJcbiAgJi5tQ1NCX2hvcml6b250YWwgPiAubUNTQl9zY3JvbGxUb29scyB7XHJcbiAgICAubUNTQl9kcmFnZ2VyUmFpbCB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDRweDtcclxuICAgICAgbWFyZ2luOiA2cHggMDtcclxuICAgIH1cclxuICAgIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiA2cHg7XHJcbiAgICAgIG1hcmdpbjogNXB4IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gID4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gICAgLm1DU0JfZHJhZ2dlciB7XHJcbiAgICAgICY6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XHJcbiAgICAgIH1cclxuICAgICAgJjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsICYubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubUNTQl9idXR0b25VcCB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IDA7XHJcbiAgICB9XHJcbiAgICAubUNTQl9idXR0b25Eb3duIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIwcHg7XHJcbiAgICB9XHJcbiAgICAubUNTQl9idXR0b25MZWZ0IHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwcHggLTQwcHg7XHJcbiAgICB9XHJcbiAgICAubUNTQl9idXR0b25SaWdodCB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC01NnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLypkYXJrLXRoaWNrKi9cclxuXHJcbi5tQ1MtZGFyay10aGljayB7XHJcbiAgPiAubUNTQl9zY3JvbGxUb29scyB7XHJcbiAgICAubUNTQl9kcmFnZ2VyUmFpbCB7XHJcbiAgICAgIHdpZHRoOiA0cHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICMwMDA7XHJcbiAgICAgIC8qIHJnYmEgZmFsbGJhY2sgKi9cclxuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgIH1cclxuICAgIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICB3aWR0aDogNnB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgICAvKiByZ2JhIGZhbGxiYWNrICovXHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43NSk7XHJcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmLm1DU0JfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIC5tQ1NCX2RyYWdnZXJSYWlsIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogNHB4O1xyXG4gICAgICBtYXJnaW46IDZweCAwO1xyXG4gICAgfVxyXG4gICAgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDZweDtcclxuICAgICAgbWFyZ2luOiA1cHggYXV0bztcclxuICAgIH1cclxuICB9XHJcbiAgPiAubUNTQl9zY3JvbGxUb29scyB7XHJcbiAgICAubUNTQl9kcmFnZ2VyIHtcclxuICAgICAgJjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjg1KTtcclxuICAgICAgfVxyXG4gICAgICAmOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2JhciwgJi5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5tQ1NCX2J1dHRvblVwIHtcclxuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggMDtcclxuICAgIH1cclxuICAgIC5tQ1NCX2J1dHRvbkRvd24ge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMjBweDtcclxuICAgIH1cclxuICAgIC5tQ1NCX2J1dHRvbkxlZnQge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTQwcHg7XHJcbiAgICB9XHJcbiAgICAubUNTQl9idXR0b25SaWdodCB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtNTZweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qbGlnaHQtdGhpbiovXHJcblxyXG4ubUNTLWxpZ2h0LXRoaW4ge1xyXG4gID4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gICAgLm1DU0JfZHJhZ2dlclJhaWwge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAvKiByZ2JhIGZhbGxiYWNrICovXHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcclxuICAgIH1cclxuICAgIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICB3aWR0aDogMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAmLm1DU0JfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIC5tQ1NCX2RyYWdnZXJSYWlsIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICBtYXJnaW46IDdweCBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLypkYXJrLXRoaW4qL1xyXG5cclxuLm1DUy1kYXJrLXRoaW4ge1xyXG4gID4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xyXG4gICAgLm1DU0JfZHJhZ2dlclJhaWwge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xyXG4gICAgICAvKiByZ2JhIGZhbGxiYWNrICovXHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbiAgICB9XHJcbiAgICAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgd2lkdGg6IDJweDtcclxuICAgICAgYmFja2dyb3VuZDogIzAwMDtcclxuICAgICAgLyogcmdiYSBmYWxsYmFjayAqL1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xyXG4gICAgfVxyXG4gIH1cclxuICAmLm1DU0JfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIC5tQ1NCX2RyYWdnZXJSYWlsIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICBtYXJnaW46IDdweCBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuICA+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcclxuICAgIC5tQ1NCX2RyYWdnZXIge1xyXG4gICAgICAmOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xyXG4gICAgICB9XHJcbiAgICAgICY6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLCAmLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uVXAge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAwO1xyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uRG93biB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMHB4O1xyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uTGVmdCB7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC00MHB4O1xyXG4gICAgfVxyXG4gICAgLm1DU0JfYnV0dG9uUmlnaHQge1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNTZweDtcclxuICAgIH1cclxuICB9XHJcbn0iLCLvu78ubWluaWN0X3dyYXBwZXIge1xyXG4gIGZvbnQtZmFtaWx5OiBcIlNlZ29lIFVJXCIsIFNlZ29lLCBcIkx1Y2lkYSBHcmFuZGVcIiwgXCJMdWNpZGEgU2FucyBVbmljb2RlXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XHJcbiAgY29sb3I6ICMzMzM7XHJcbiAgYmFja2dyb3VuZDogI2ZmZjtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDMwMHB4O1xyXG4gIGhlaWdodDogMi4ycmVtO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNWU1ZTU7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAqIHtcclxuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgfVxyXG4gICY6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcXDI1QkNcIjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgaGVpZ2h0OiAyLjFyZW07XHJcbiAgICB3aWR0aDogMi4xcmVtO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBmb250LXNpemU6IDAuNnJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjlyZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjb2xvcjogIzU1NTtcclxuICB9XHJcbiAgJi5hY3RpdmU6YWZ0ZXIge1xyXG4gICAgY29udGVudDogXCJcXDI1QjJcIjtcclxuICB9XHJcbiAgaW5wdXQge1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBmb250LWZhbWlseTogXCJTZWdvZSBVSVwiLCBTZWdvZSwgXCJMdWNpZGEgR3JhbmRlXCIsIFwiTHVjaWRhIFNhbnMgVW5pY29kZVwiLCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICBoZWlnaHQ6IDEuOXJlbTtcclxuICAgIHBhZGRpbmc6IDAgMi4ycmVtIDAgMC40cmVtO1xyXG4gICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gIHVsIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTVlNTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIHRvcDogMnJlbTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBtYXgtaGVpZ2h0OiAyMnJlbTtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICB6LWluZGV4OiA5OTk5OTk7XHJcbiAgICBsaSB7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgcGFkZGluZzogMCAwLjdyZW07XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgaGVpZ2h0OiAyLjJyZW07XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmNmY2ZjO1xyXG4gICAgICAgIGNvbG9yOiAjMTExO1xyXG4gICAgICB9XHJcbiAgICAgICYubWluaWN0X2dyb3VwIHtcclxuICAgICAgICBjb2xvcjogIzQ0NDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgICAgfVxyXG4gICAgICAmLm1pbmljdF9lbXB0eSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICNiYmI7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xyXG4gICAgICAgIGhlaWdodDogMy41cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzLjNyZW07XHJcbiAgICAgIH1cclxuICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgY29sb3I6ICM4MTlhOWE7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2Y5ZmNmZjtcclxuICAgICAgfVxyXG4gICAgICAmLmhpZ2hsaWdodGVkIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjODE5YTlhO1xyXG4gICAgICB9XHJcbiAgICAgICYuaGlkZGVuIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuYnViYmxlIHtcclxuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDFweCAzcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbiAgICBib3gtc2hhZG93OiAwcHggMXB4IDNweCAwcHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgMCUsICNmOWY5ZjkgMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCB3aGl0ZSksIGNvbG9yLXN0b3AoMTAwJSwgI2Y5ZjlmOSkpO1xyXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSAwJSwgI2Y5ZjlmOSAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZjlmOWY5IDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZjlmOWY5IDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgd2hpdGUgMCUsICNmOWY5ZjkgMTAwJSk7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAjZGNkY2RjO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U1ZTVlNTtcclxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAxcHggMHB4IDBweCAwcHggI2ZmZjtcclxuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDBweCAwcHggMHB4ICNmZmY7XHJcbiAgICAgIGhlaWdodDogMi4wNXJlbTtcclxuICAgIH1cclxuICAgIHVsIHtcclxuICAgICAgdG9wOiAyLjdyZW07XHJcbiAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDVweCAyNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4gICAgICBib3gtc2hhZG93OiAwcHggNXB4IDI1cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAtMTFweDtcclxuICAgICAgICBsZWZ0OiAxOXB4O1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiLlwiO1xyXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB3aWR0aDogMHB4O1xyXG4gICAgICAgIGhlaWdodDogMHB4O1xyXG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDExcHggMTFweCAxMXB4O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2U1ZTVlNSB0cmFuc3BhcmVudDtcclxuICAgICAgfVxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAtMTBweDtcclxuICAgICAgICBsZWZ0OiAyMHB4O1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiLlwiO1xyXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB3aWR0aDogMHB4O1xyXG4gICAgICAgIGhlaWdodDogMHB4O1xyXG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDEwcHggMTBweCAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZmZmZiB0cmFuc3BhcmVudDtcclxuICAgICAgfVxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgJi5taW5pY3RfZmlyc3Qge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xyXG4gICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDZweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5taW5pY3RfbGFzdCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufSIsIi5zaGFyZS1hZmZpeCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogNTBweDtcclxuICBsZWZ0OiAwO1xyXG59XHJcblxyXG4uc2hhcmUtaWNvbiBhe1xyXG4gICAgYmFja2dyb3VuZDogI2I1YjViNTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgcGFkZGluZzogNnB4IDNweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdpZHRoOiAzNXB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1pbi1vdXQgMHM7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgZmlsdGVyOiBBbHBoYShPcGFjaXR5ID0gMTAwKTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuICB9XHJcbn1cclxuXHJcbi5zaGFyZS1pY29uLURpZ2cge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC01MjZweCAwO1xyXG59XHJcblxyXG4uc2hhcmUtaWNvbi1lbWFpbCB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTYxNHB4IDA7XHJcbn1cclxuXHJcbi5zaGFyZS1pY29uLWZsaWNrciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI2MXB4IDA7XHJcbn1cclxuXHJcbi5zaGFyZS1pY29uLWZvdXJzcXVhcmUge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxufVxyXG5cclxuLnNoYXJlLWljb24tcnNzIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzA1cHggMDtcclxufVxyXG5cclxuLnNoYXJlLWljb24tRmFjZWJvb2sge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzFweCAwO1xyXG59XHJcblxyXG4uc2hhcmUtaWNvbi1Ud2l0dGVyIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTc0cHggMDtcclxufVxyXG5cclxuLnNoYXJlLWljb24tdHVtYmxyIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODdweCAwO1xyXG59XHJcblxyXG4uc2hhcmUtaWNvbi1MaW5rZWRpbiB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQzOHB4IDA7XHJcbn1cclxuXHJcbi5zaGFyZS1pY29uLXZpbWVvIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzkzcHggMDtcclxufVxyXG5cclxuLnNoYXJlLWljb24tSW5zdGFncmFtIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAwO1xyXG59XHJcblxyXG4uc2hhcmUtaWNvbi1QaW50ZXJlc3Qge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zNDlweCAwO1xyXG59XHJcblxyXG4uc2hhcmUtaWNvbi1Hb29nbGVwbHVzIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjE4cHggMDtcclxufVxyXG5cclxuLnNoYXJlLWljb24taW4xIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDgycHggMDtcclxufVxyXG5cclxuLnNoYXJlLWljb24tc3R1bWJsZXVwb24ge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC01NzBweCAwO1xyXG59XHJcblxyXG4vKiphLmJlaGFuY2UsIGEuZGVsaWNpb3VzLCBhLmRldmlhbnRhcnQsIGEuZGlnZywgYS5kcmliYmJsZSwgYS5GYWNlYm9vaywgYS5GbGlja3IsIGEuRm9ycnN0LCBhLmZvdXJzcXVhcmUsIGEuR29vZ2xlcGx1cywgYS5pbjEsIGEuSW5zdGFncmFtLCBhLmxhc3RmbSwgYS5MaW5rZWRpbiwgYS5QaW50ZXJlc3QsIGEucnNzLCBhLnNreXBlLCBhLnR1bWJsciwgYS5Ud2l0dGVyLCBhLnZpbWVvLCBhLllvdXR1YmUgeyovXHJcblxyXG4uc2hhcmUtc3F1YXJlIHtcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhciAwcztcclxuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvc29jaWFsLWljb25zLnBuZ1wiKSBuby1yZXBlYXQgc2Nyb2xsIGxlZnQgdG9wIHRyYW5zcGFyZW50O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBoZWlnaHQ6IDMycHg7XHJcbiAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgbWFyZ2luOiAycHg7XHJcbiAgd2lkdGg6IDMycHg7XHJcbn1cclxuXHJcbi5zaGFyZS1zcXVhcmUtYmVoYW5jZSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0NHB4IC00NHB4O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTU0NHB4IC03N3B4O1xyXG4gIH1cclxufVxyXG5cclxuLnNoYXJlLXNxdWFyZS1kZWxpY2lvdXMge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC01MTJweCAtNDRweDtcclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01MTJweCAtNzdweDtcclxuICB9XHJcbn1cclxuXHJcbi5zaGFyZS1zcXVhcmUtZGV2aWFudGFydCB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC00NHB4O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ4MHB4IC03N3B4O1xyXG4gIH1cclxufVxyXG5cclxuLnNoYXJlLXNxdWFyZS1kaWdnIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQ4cHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDQ4cHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLWRyaWJiYmxlIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2cHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDE2cHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLUVtYWlsIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjc0cHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjc0cHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLUZhY2Vib29rIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzg0cHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLUZsaWNrciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IC00NHB4O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTM1MnB4IC03N3B4O1xyXG4gIH1cclxufVxyXG5cclxuLnNoYXJlLXNxdWFyZS1mb3Jyc3Qge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjBweCAtNDRweDtcclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zMjBweCAtNzdweDtcclxuICB9XHJcbn1cclxuXHJcbi5zaGFyZS1zcXVhcmUtR29vZ2xlcGx1cyB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OHB4IC00NHB4O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI4OHB4IC03N3B4O1xyXG4gIH1cclxufVxyXG5cclxuLnNoYXJlLXNxdWFyZS1pbjEge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC01NzZweCAtNDRweDtcclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC01NzZweCAtNzdweDtcclxuICB9XHJcbn1cclxuXHJcbi5zaGFyZS1zcXVhcmUtSW5zdGFncmFtIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjA4cHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjA4cHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLWxhc3RmbSB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC00NHB4O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTI1NnB4IC03N3B4O1xyXG4gIH1cclxufVxyXG5cclxuLnNoYXJlLXNxdWFyZS1MaW5rZWRpbiB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC00NHB4O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIyNHB4IC03N3B4O1xyXG4gIH1cclxufVxyXG5cclxuLnNoYXJlLXNxdWFyZS1QaW50ZXJlc3Qge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtNDRweDtcclxuICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xOTJweCAtNzdweDtcclxuICB9XHJcbn1cclxuXHJcbi5zaGFyZS1zcXVhcmUtUnNzIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTYwcHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLVNreXBlIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTI4cHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLXN0dW1ibGV1cG9uIHtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjQwcHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjQwcHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLVR1bWJsciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtNzdweDtcclxuICB9XHJcbn1cclxuXHJcbi5zaGFyZS1zcXVhcmUtVHdpdHRlciB7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY0cHggLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjRweCAtNzdweDtcclxuICB9XHJcbn1cclxuXHJcbi5zaGFyZS1zcXVhcmUtdmltZW8ge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC00NHB4O1xyXG4gICY6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTc3cHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2hhcmUtc3F1YXJlLVlvdXR1YmUge1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ0cHg7XHJcbiAgJjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03N3B4O1xyXG4gIH1cclxufSIsIi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuLy8gLSAtIGxpYnJhcnkgdmFyaWFibGUgb3ZlcnJpZGVzXHJcbi8vIHZhcmlhYmxlIG92ZXJyaWRlcyBmb3IgY3NzIGZyYW1ld29ya3MgYW5kIGxpYnJhcmllc1xyXG4iLCLvu78vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcbi8vIC0gLSBzbGlkZXJcclxuLy8gc2xpZGVyLCBwYXJhbGF4IGJhbm5lciBzdHlsaW5nXHJcbi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuLi8uLi9nbG9iYWwvX3NraW4uc2Nzc1wiIC8+XHJcbi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuLi8uLi9nbG9iYWwvX3NldHRpbmdzLnNjc3NcIiAvPlxyXG5cclxuLyogXHJcbiAqIFx0Q29yZSBPd2wgQ2Fyb3VzZWwgQ1NTIEZpbGVcclxuICpcdHYxLjI0XHJcbiAqL1xyXG5cclxuLyogY2xlYXJmaXggKi9cclxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXI6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiLlwiO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGNsZWFyOiBib3RoO1xyXG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcclxuXHRsaW5lLWhlaWdodDogMDtcclxuXHRoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbiNvd2wtZGVtbyAuaXRlbSB7XHJcblx0YmFja2dyb3VuZDpub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIGRpc3BsYXkgbm9uZSB1bnRpbCBpbml0ICovXHJcbi5vd2wtY2Fyb3VzZWx7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XHJcbn1cclxuLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXJ7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpO1xyXG59XHJcbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyLW91dGVye1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyLW91dGVyLmF1dG9IZWlnaHR7XHJcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XHJcblx0LW1vei10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XHJcblx0LW1zLXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcclxuXHQtby10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XHJcblx0dHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xyXG59XHJcblx0XHJcbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVte1xyXG5cdGZsb2F0OiBsZWZ0O1xyXG59XHJcbi5vd2wtY29udHJvbHMgLm93bC1wYWdlLFxyXG4ub3dsLWNvbnRyb2xzIC5vd2wtYnV0dG9ucyBkaXZ7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5vd2wtY29udHJvbHMge1xyXG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xyXG5cdC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxufVxyXG5cclxuLyogbW91c2UgZ3JhYiBpY29uICovXHJcbi5ncmFiYmluZyB7IFxyXG4gICAgY3Vyc29yOnVybChncmFiYmluZy5wbmcpIDggOCwgbW92ZTtcclxufVxyXG5cclxuLyogZml4ICovXHJcbi5vd2wtY2Fyb3VzZWwgIC5vd2wtd3JhcHBlcixcclxuLm93bC1jYXJvdXNlbCAgLm93bC1pdGVte1xyXG5cdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogICAgaGlkZGVuO1xyXG5cdC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiAgICAgaGlkZGVuO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XHJcbn1cclxuXHJcbi8qIENTUzMgVHJhbnNpdGlvbnMgKi9cclxuXHJcbi5vd2wtb3JpZ2luIHtcclxuXHQtd2Via2l0LXBlcnNwZWN0aXZlOiAxMjAwcHg7XHJcblx0LXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW4teCA6IDUwJTtcclxuXHQtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbi15IDogNTAlO1xyXG5cdC1tb3otcGVyc3BlY3RpdmUgOiAxMjAwcHg7XHJcblx0LW1vei1wZXJzcGVjdGl2ZS1vcmlnaW4teCA6IDUwJTtcclxuXHQtbW96LXBlcnNwZWN0aXZlLW9yaWdpbi15IDogNTAlO1xyXG5cdHBlcnNwZWN0aXZlIDogMTIwMHB4O1xyXG59XHJcbi8qIGZhZGUgKi9cclxuLm93bC1mYWRlLW91dCB7XHJcbiAgei1pbmRleDogMTA7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVPdXQgLjdzIGJvdGggZWFzZTtcclxuICAtbW96LWFuaW1hdGlvbjogZmFkZU91dCAuN3MgYm90aCBlYXNlO1xyXG4gIGFuaW1hdGlvbjogZmFkZU91dCAuN3MgYm90aCBlYXNlO1xyXG59XHJcbi5vd2wtZmFkZS1pbiB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJbiAuN3MgYm90aCBlYXNlO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBmYWRlSW4gLjdzIGJvdGggZWFzZTtcclxuICBhbmltYXRpb246IGZhZGVJbiAuN3MgYm90aCBlYXNlO1xyXG59XHJcbi8qIGJhY2tTbGlkZSAqL1xyXG4ub3dsLWJhY2tTbGlkZS1vdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBiYWNrU2xpZGVPdXQgMXMgYm90aCBlYXNlO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBiYWNrU2xpZGVPdXQgMXMgYm90aCBlYXNlO1xyXG4gIGFuaW1hdGlvbjogYmFja1NsaWRlT3V0IDFzIGJvdGggZWFzZTtcclxufVxyXG4ub3dsLWJhY2tTbGlkZS1pbiB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGJhY2tTbGlkZUluIDFzIGJvdGggZWFzZTtcclxuICAtbW96LWFuaW1hdGlvbjogYmFja1NsaWRlSW4gMXMgYm90aCBlYXNlO1xyXG4gIGFuaW1hdGlvbjogYmFja1NsaWRlSW4gMXMgYm90aCBlYXNlO1xyXG59XHJcbi8qIGdvRG93biAqL1xyXG4ub3dsLWdvRG93bi1vdXQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzY2FsZVRvRmFkZSAuN3MgZWFzZSBib3RoO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBzY2FsZVRvRmFkZSAuN3MgZWFzZSBib3RoO1xyXG4gIGFuaW1hdGlvbjogc2NhbGVUb0ZhZGUgLjdzIGVhc2UgYm90aDtcclxufVxyXG4ub3dsLWdvRG93bi1pbiB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGdvRG93biAuNnMgZWFzZSBib3RoO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBnb0Rvd24gLjZzIGVhc2UgYm90aDtcclxuICBhbmltYXRpb246IGdvRG93biAuNnMgZWFzZSBib3RoO1xyXG59XHJcbi8qIHNjYWxlVXAgKi9cclxuLm93bC1mYWRlVXAtaW4ge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzY2FsZVVwRnJvbSAuNXMgZWFzZSBib3RoO1xyXG4gIC1tb3otYW5pbWF0aW9uOiBzY2FsZVVwRnJvbSAuNXMgZWFzZSBib3RoO1xyXG4gIGFuaW1hdGlvbjogc2NhbGVVcEZyb20gLjVzIGVhc2UgYm90aDtcclxufVxyXG5cclxuLm93bC1mYWRlVXAtb3V0IHtcclxuICAtd2Via2l0LWFuaW1hdGlvbjogc2NhbGVVcFRvIC41cyBlYXNlIGJvdGg7XHJcbiAgLW1vei1hbmltYXRpb246IHNjYWxlVXBUbyAuNXMgZWFzZSBib3RoO1xyXG4gIGFuaW1hdGlvbjogc2NhbGVVcFRvIC41cyBlYXNlIGJvdGg7XHJcbn1cclxuLyogS2V5ZnJhbWVzICovXHJcbi8qZW1wdHkqL1xyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZW1wdHkge1xyXG4gIDAlIHtvcGFjaXR5OiAxfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBlbXB0eSB7XHJcbiAgMCUge29wYWNpdHk6IDF9XHJcbn1cclxuQGtleWZyYW1lcyBlbXB0eSB7XHJcbiAgMCUge29wYWNpdHk6IDF9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgMCUgeyBvcGFjaXR5OjA7IH1cclxuICAxMDAlIHsgb3BhY2l0eToxOyB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgMCUgeyBvcGFjaXR5OjA7IH1cclxuICAxMDAlIHsgb3BhY2l0eToxOyB9XHJcbn1cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG4gIDAlIHsgb3BhY2l0eTowOyB9XHJcbiAgMTAwJSB7IG9wYWNpdHk6MTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAwJSB7IG9wYWNpdHk6MTsgfVxyXG4gIDEwMCUgeyBvcGFjaXR5OjA7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgZmFkZU91dCB7XHJcbiAgMCUgeyBvcGFjaXR5OjE7IH1cclxuICAxMDAlIHsgb3BhY2l0eTowOyB9XHJcbn1cclxuQGtleWZyYW1lcyBmYWRlT3V0IHtcclxuICAwJSB7IG9wYWNpdHk6MTsgfVxyXG4gIDEwMCUgeyBvcGFjaXR5OjA7IH1cclxufVxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgYmFja1NsaWRlT3V0IHtcclxuICAyNSUgeyBvcGFjaXR5OiAuNTsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KTsgfVxyXG4gIDc1JSB7IG9wYWNpdHk6IC41OyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XHJcbiAgMTAwJSB7IG9wYWNpdHk6IC41OyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIGJhY2tTbGlkZU91dCB7XHJcbiAgMjUlIHsgb3BhY2l0eTogLjU7IC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cclxuICA3NSUgeyBvcGFjaXR5OiAuNTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKC0yMDAlKTsgfVxyXG4gIDEwMCUgeyBvcGFjaXR5OiAuNTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKC0yMDAlKTsgfVxyXG59XHJcbkBrZXlmcmFtZXMgYmFja1NsaWRlT3V0IHtcclxuICAyNSUgeyBvcGFjaXR5OiAuNTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cclxuICA3NSUgeyBvcGFjaXR5OiAuNTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgtMjAwJSk7IH1cclxuICAxMDAlIHsgb3BhY2l0eTogLjU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpIHRyYW5zbGF0ZVgoLTIwMCUpOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGJhY2tTbGlkZUluIHtcclxuICAwJSwgMjUlIHsgb3BhY2l0eTogLjU7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgyMDAlKTsgfVxyXG4gIDc1JSB7IG9wYWNpdHk6IC41OyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigtNTAwcHgpOyB9XHJcbiAgMTAwJSB7IG9wYWNpdHk6IDE7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHRyYW5zbGF0ZVgoMCk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgYmFja1NsaWRlSW4ge1xyXG4gIDAlLCAyNSUgeyBvcGFjaXR5OiAuNTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KSB0cmFuc2xhdGVYKDIwMCUpOyB9XHJcbiAgNzUlIHsgb3BhY2l0eTogLjU7IC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCk7IH1cclxuICAxMDAlIHsgb3BhY2l0eTogMTsgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgdHJhbnNsYXRlWCgwKTsgfVxyXG59XHJcbkBrZXlmcmFtZXMgYmFja1NsaWRlSW4ge1xyXG4gIDAlLCAyNSUgeyBvcGFjaXR5OiAuNTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKC01MDBweCkgdHJhbnNsYXRlWCgyMDAlKTsgfVxyXG4gIDc1JSB7IG9wYWNpdHk6IC41OyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooLTUwMHB4KTsgfVxyXG4gIDEwMCUgeyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgdHJhbnNsYXRlWCgwKTsgfVxyXG59XHJcbkAtd2Via2l0LWtleWZyYW1lcyBzY2FsZVRvRmFkZSB7XHJcbiAgdG8geyBvcGFjaXR5OiAwOyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjgpOyB9XHJcbn1cclxuQC1tb3ota2V5ZnJhbWVzIHNjYWxlVG9GYWRlIHtcclxuICB0byB7IG9wYWNpdHk6IDA7IC1tb3otdHJhbnNmb3JtOiBzY2FsZSguOCk7IH1cclxufVxyXG5Aa2V5ZnJhbWVzIHNjYWxlVG9GYWRlIHtcclxuICB0byB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogc2NhbGUoLjgpOyB9XHJcbn1cclxuQC13ZWJraXQta2V5ZnJhbWVzIGdvRG93biB7XHJcbiAgZnJvbSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBnb0Rvd24ge1xyXG4gIGZyb20geyAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cclxufVxyXG5Aa2V5ZnJhbWVzIGdvRG93biB7XHJcbiAgZnJvbSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNjYWxlVXBGcm9tIHtcclxuICBmcm9tIHsgb3BhY2l0eTogMDsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxufVxyXG5ALW1vei1rZXlmcmFtZXMgc2NhbGVVcEZyb20ge1xyXG4gIGZyb20geyBvcGFjaXR5OiAwOyAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxyXG59XHJcbkBrZXlmcmFtZXMgc2NhbGVVcEZyb20ge1xyXG4gIGZyb20geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIHNjYWxlVXBUbyB7XHJcbiAgdG8geyBvcGFjaXR5OiAwOyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxyXG59XHJcbkAtbW96LWtleWZyYW1lcyBzY2FsZVVwVG8ge1xyXG4gIHRvIHsgb3BhY2l0eTogMDsgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxufVxyXG5Aa2V5ZnJhbWVzIHNjYWxlVXBUbyB7XHJcbiAgdG8geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cclxufVxyXG5cclxuXHJcbi5vd2wtdGhlbWUgLm93bC1jb250cm9sc3tcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLyogU3R5bGluZyBOZXh0IGFuZCBQcmV2IGJ1dHRvbnMgKi9cclxuXHJcbi5vd2wtdGhlbWUgLm93bC1jb250cm9scyAub3dsLWJ1dHRvbnMgZGl2e1xyXG5cdGNvbG9yOiAjRkZGO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR6b29tOiAxO1xyXG5cdCpkaXNwbGF5OiBpbmxpbmU7LypJRTcgbGlmZS1zYXZlciAqL1xyXG5cdG1hcmdpbjogNXB4O1xyXG5cdHBhZGRpbmc6IDNweCAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblx0LW1vei1ib3JkZXItcmFkaXVzOiAzMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcblx0YmFja2dyb3VuZDogIzg2OTc5MTtcclxuXHRmaWx0ZXI6IEFscGhhKE9wYWNpdHk9NTApOy8qSUU3IGZpeCovXHJcblx0b3BhY2l0eTogMC41O1xyXG59XHJcbi8qIENsaWNrYWJsZSBjbGFzcyBmaXggcHJvYmxlbSB3aXRoIGhvdmVyIG9uIHRvdWNoIGRldmljZXMgKi9cclxuLyogVXNlIGl0IGZvciBub24tdG91Y2ggaG92ZXIgYWN0aW9uICovXHJcbi5vd2wtdGhlbWUgLm93bC1jb250cm9scy5jbGlja2FibGUgLm93bC1idXR0b25zIGRpdjpob3ZlcntcclxuXHRmaWx0ZXI6IEFscGhhKE9wYWNpdHk9MTAwKTsvKklFNyBmaXgqL1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4vKiBTdHlsaW5nIFBhZ2luYXRpb24qL1xyXG5cclxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtcGFnZXtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0em9vbTogMTtcclxuXHQqZGlzcGxheTogaW5saW5lOy8qSUU3IGxpZmUtc2F2ZXIgKi9cclxufVxyXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdlIHNwYW57XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG5cdG1hcmdpbjogNXB4IDdweDtcclxuXHRmaWx0ZXI6IEFscGhhKE9wYWNpdHk9NTApOy8qSUU3IGZpeCovXHJcblx0b3BhY2l0eTogMC41O1xyXG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjBweDtcclxuXHQtbW96LWJvcmRlci1yYWRpdXM6IDIwcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMjBweDtcclxuXHRiYWNrZ3JvdW5kOiAjODY5NzkxO1xyXG59XHJcblxyXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMgLm93bC1wYWdlLmFjdGl2ZSBzcGFuLFxyXG4ub3dsLXRoZW1lIC5vd2wtY29udHJvbHMuY2xpY2thYmxlIC5vd2wtcGFnZTpob3ZlciBzcGFue1xyXG5cdGZpbHRlcjogQWxwaGEoT3BhY2l0eT0xMDApOy8qSUU3IGZpeCovXHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLyogSWYgUGFnaW5hdGlvbk51bWJlcnMgaXMgdHJ1ZSAqL1xyXG5cclxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtcGFnZSBzcGFuLm93bC1udW1iZXJze1xyXG5cdGhlaWdodDogYXV0bztcclxuXHR3aWR0aDogYXV0bztcclxuXHRjb2xvcjogI0ZGRjtcclxuXHRwYWRkaW5nOiAycHggMTBweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAzMHB4O1xyXG5cdC1tb3otYm9yZGVyLXJhZGl1czogMzBweDtcclxuXHRib3JkZXItcmFkaXVzOiAzMHB4O1xyXG59XHJcblxyXG4vKiBwcmVsb2FkaW5nIGltYWdlcyAqL1xyXG4ub3dsLWl0ZW0ubG9hZGluZ3tcclxuXHRtaW4taGVpZ2h0OiAxNTBweDtcclxuXHRiYWNrZ3JvdW5kOiB1cmwoQWpheExvYWRlci5naWYpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyXHJcclxuXHJcbn0iLCIuc3Atd3JhcCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBsaW5lLWhlaWdodDogMDtcclxuICBmb250LXNpemU6IDA7XHJcbiAgYmFja2dyb3VuZDogI2VlZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAwIDI1cHggMTVweCAwO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkICNFNEU0RTQ7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuXHJcbi5zcC1sYXJnZSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgYSB7XHJcbiAgICBpbWcge1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XHJcbiAgICAgIGN1cnNvcjogLW1vei16b29tLWluO1xyXG4gICAgfVxyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLnNwLXRodW1icyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBpbWcge1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgJjpsaW5rLCAmOnZpc2l0ZWQge1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjZWVlO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyLCAmOmFjdGl2ZSB7XHJcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMyMjI7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc3AtY3VycmVudCB7XHJcbiAgYm9yZGVyOiAycHggc29saWQgIzIyMjtcclxufVxyXG5cclxuLnNwLXpvb20ge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICBjdXJzb3I6IHpvb207XHJcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xyXG4gIGN1cnNvcjogLW1vei16b29tLW91dDtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ucHJvZHVjdFRodW1iIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDtcclxuICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAuc3AtdGh1bWJzIHtcclxuICAgIGJvdHRvbTogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgei1pbmRleDogNzA7XHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogNTBweDtcclxuICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICY6bGluaywgJjp2aXNpdGVkIHtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZWVlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMjIyO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc3AtdGh1bWJzIGE6YWN0aXZlLCAuc3AtY3VycmVudCwgLnByb2R1Y3RUaHVtYiAuc3AtdGh1bWJzIGEge1xyXG4gIGJvcmRlcjogMnB4IHNvbGlkICMyMjI7XHJcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5zdHlsZTMgLnNwLWxhcmdlIHtcclxuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkO1xyXG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG59Iiwi77u/LmZvb3RhYmxlIHtcclxuICBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJvcmRlcjogc29saWQgI2NjYyAxcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgJi5icmVha3BvaW50IHtcclxuICAgID4gdGJvZHkgPiB0ciB7XHJcbiAgICAgID4gdGQuZXhwYW5kIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltZy9wbHVzLnBuZycpIG5vLXJlcGVhdCA1cHggY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgfVxyXG4gICAgICAmLmZvb3RhYmxlLWRldGFpbC1zaG93ID4gdGQuZXhwYW5kIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ2ltZy9taW51cy5wbmcnKSBuby1yZXBlYXQgNXB4IGNlbnRlcjtcclxuICAgICAgfVxyXG4gICAgICAmLmZvb3RhYmxlLXJvdy1kZXRhaWwge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNFQkVERUY7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgID4gdGJvZHkgPiB0cjpob3Zlcjpub3QoLmZvb3RhYmxlLXJvdy1kZXRhaWwpIHtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG4gIH1cclxuICA+IHRib2R5ID4gdHI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogI2ZiZjhlOTtcclxuICB9XHJcbiAgPiB7XHJcbiAgICB0Ym9keSA+IHRyID4gdGQsIHRoZWFkID4gdHIgPiB0aCB7XHJcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjYztcclxuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgICB0Ym9keSA+IHRyID4gdGQuZm9vdGFibGUtY2VsbC1kZXRhaWwge1xyXG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcclxuICAgIH1cclxuICAgIHRoZWFkID4gdHIge1xyXG4gICAgICA+IHtcclxuICAgICAgICB0aCwgdGQge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VCRURFRDtcclxuICAgICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgaW5zZXQ7XHJcbiAgICAgICAgICAtbW96LWJveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIGluc2V0O1xyXG4gICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgaW5zZXQ7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOmZpcnN0LWNoaWxkID4ge1xyXG4gICAgICAgIHRoLmZvb3RhYmxlLWZpcnN0LWNvbHVtbiwgdGQuZm9vdGFibGUtZmlyc3QtY29sdW1uLCB0aC5mb290YWJsZS1sYXN0LWNvbHVtbiwgdGQuZm9vdGFibGUtbGFzdC1jb2x1bW4ge1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwIDA7XHJcbiAgICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMDtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGguZm9vdGFibGUtZmlyc3QtY29sdW1uLmZvb3RhYmxlLWxhc3QtY29sdW1uLCB0ZC5mb290YWJsZS1maXJzdC1jb2x1bW4uZm9vdGFibGUtbGFzdC1jb2x1bW4ge1xyXG4gICAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA2cHggMDtcclxuICAgICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNnB4IDA7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA2cHggMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkIHtcclxuICAgICAgJi5mb290YWJsZS1maXJzdC1jb2x1bW4ge1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIDAgNnB4O1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMCAwIDAgNnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDZweDtcclxuICAgICAgfVxyXG4gICAgICAmLmZvb3RhYmxlLWxhc3QtY29sdW1uIHtcclxuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDAgMCA2cHggMDtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCA2cHggMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgNnB4IDA7XHJcbiAgICAgIH1cclxuICAgICAgJi5mb290YWJsZS1maXJzdC1jb2x1bW4uZm9vdGFibGUtbGFzdC1jb2x1bW4ge1xyXG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMCAwIDZweCA2cHg7XHJcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwIDAgNnB4IDZweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgNnB4IDZweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhlYWQgPiB0ciA+IHtcclxuICAgICAgdGguZm9vdGFibGUtZmlyc3QtY29sdW1uLCB0ZC5mb290YWJsZS1maXJzdC1jb2x1bW4ge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0Ym9keSB7XHJcbiAgICAgID4gdHIgPiB0ZC5mb290YWJsZS1maXJzdC1jb2x1bW4ge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGZvb3QgPiB0ciA+IHtcclxuICAgICAgdGgsIHRkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNlOWY5O1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20oI2ViZjNmYyksIHRvKCNkY2U5ZjkpKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNlYmYzZmMsICNkY2U5ZjkpO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2ViZjNmYywgI2RjZTlmOSk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNlYmYzZmMsICNkY2U5ZjkpO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlYmYzZmMsICNkY2U5ZjkpO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlYmYzZmMsICNkY2U5ZjkpO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCkgaW5zZXQ7XHJcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSBpbnNldDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSBpbnNldDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcclxuICAgICAgICB0ZXh0LXNoYWRvdzogMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhlYWQgPiB0ciA+IHRoIHtcclxuICAgICAgPiBzcGFuLmZvb3RhYmxlLXNvcnQtaW5kaWNhdG9yIHtcclxuICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgnaW1nL3NvcnRpbmdfc3ByaXRlLnBuZycpIG5vLXJlcGVhdCB0b3AgbGVmdDtcclxuICAgICAgfVxyXG4gICAgICAmLmZvb3RhYmxlLXNvcnRhYmxlIHtcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgPiBzcGFuIHt9XHJcbiAgICAgIH1cclxuICAgICAgJi5mb290YWJsZS1zb3J0ZWQgPiBzcGFuLmZvb3RhYmxlLXNvcnQtaW5kaWNhdG9yIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNnB4O1xyXG4gICAgICB9XHJcbiAgICAgICYuZm9vdGFibGUtc29ydGVkLWRlc2MgPiBzcGFuLmZvb3RhYmxlLXNvcnQtaW5kaWNhdG9yIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0zMnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59Iiwi77u/Ly8gQ29va2llXHJcbiRjb29raWUtZm9udC1jb2xvcjogI0ZGRjtcclxuJGNvb2tpZS1iYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC44KTtcclxuJGNvb2tpZS1idXR0b24tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG5cclxuLmNjLXdpbmRvdyB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlO1xyXG5cclxuICAgICYuY2MtaW52aXNpYmxlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2MtYW5pbWF0ZS5jYy1yZXZva2Uge1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDFzIGVhc2U7XHJcblxyXG4gICAgJi5jYy10b3Age1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMmVtKTtcclxuICAgIH1cclxuXHJcbiAgICAmLmNjLWJvdHRvbSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJlbSk7XHJcbiAgICB9XHJcblxyXG4gICAgJi5jYy1hY3RpdmUge1xyXG4gICAgICAgICYuY2MtYm90dG9tLCAmLmNjLXRvcCB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYy1yZXZva2U6aG92ZXIge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG59XHJcblxyXG4uY2MtZ3Jvd2VyIHtcclxuICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxcztcclxufVxyXG5cclxuLmNjLWxpbmsge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn1cclxuXHJcbi5jYy1yZXZva2Uge1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcblxyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBmb250LWZhbWlseTogSGVsdmV0aWNhLENhbGlicmksQXJpYWwsc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIC1tcy1mbGV4LXdyYXA6IG5vd3JhcDtcclxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgei1pbmRleDogOTk5OTtcclxufVxyXG5cclxuLmNjLXdpbmRvdyB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsQ2FsaWJyaSxBcmlhbCxzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG5cclxuICAgICYuY2Mtc3RhdGljIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgfVxyXG5cclxuICAgICYuY2MtZmxvYXRpbmcge1xyXG4gICAgICAgIHBhZGRpbmc6IDJlbTtcclxuICAgICAgICBtYXgtd2lkdGg6IDI0ZW07XHJcbiAgICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICAmLmNjLWJhbm5lciB7XHJcbiAgICAgICAgcGFkZGluZzogMWVtIDEuOGVtO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYy1yZXZva2Uge1xyXG4gICAgcGFkZGluZzogLjVlbTtcclxufVxyXG5cclxuLmNjLWhlYWRlciB7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uY2MtYnRuLCAuY2MtY2xvc2UsIC5jYy1saW5rLCAuY2MtcmV2b2tlIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmNjLWxpbmsge1xyXG4gICAgb3BhY2l0eTogLjg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAuMmVtO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgJjphY3RpdmUsICY6dmlzaXRlZCB7XHJcbiAgICAgICAgY29sb3I6IGluaXRpYWw7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYy1idG4ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAuNGVtIC44ZW07XHJcbiAgICBmb250LXNpemU6IC45ZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLmNjLWJhbm5lciAuY2MtYnRuOmxhc3QtY2hpbGQge1xyXG4gICAgbWluLXdpZHRoOiAxNDBweDtcclxufVxyXG5cclxuLmNjLWhpZ2hsaWdodCAuY2MtYnRuOmZpcnN0LWNoaWxkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAmOmZvY3VzLCAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxufVxyXG5cclxuLmNjLWNsb3NlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAuNWVtO1xyXG4gICAgcmlnaHQ6IC41ZW07XHJcbiAgICBmb250LXNpemU6IDEuNmVtO1xyXG4gICAgb3BhY2l0eTogLjk7XHJcbiAgICBsaW5lLWhlaWdodDogLjc1O1xyXG5cclxuICAgICY6Zm9jdXMsICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYy1yZXZva2Uge1xyXG4gICAgJi5jYy10b3Age1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAzZW07XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogLjVlbTtcclxuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogLjVlbTtcclxuICAgIH1cclxuXHJcbiAgICAmLmNjLWJvdHRvbSB7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDNlbTtcclxuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAuNWVtO1xyXG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAuNWVtO1xyXG4gICAgfVxyXG5cclxuICAgICYuY2MtbGVmdCB7XHJcbiAgICAgICAgbGVmdDogM2VtO1xyXG4gICAgICAgIHJpZ2h0OiB1bnNldDtcclxuICAgIH1cclxuXHJcbiAgICAmLmNjLXJpZ2h0IHtcclxuICAgICAgICByaWdodDogM2VtO1xyXG4gICAgICAgIGxlZnQ6IHVuc2V0O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2MtdG9wIHtcclxuICAgIHRvcDogMWVtO1xyXG59XHJcblxyXG4uY2MtbGVmdCB7XHJcbiAgICBsZWZ0OiAxZW07XHJcbn1cclxuXHJcbi5jYy1yaWdodCB7XHJcbiAgICByaWdodDogMWVtO1xyXG59XHJcblxyXG4uY2MtYm90dG9tIHtcclxuICAgIGJvdHRvbTogMWVtO1xyXG59XHJcblxyXG4uY2MtZmxvYXRpbmcge1xyXG4gICAgPiAuY2MtbGluayB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYy1tZXNzYWdlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYy13aW5kb3cge1xyXG4gICAgJi5jYy1mbG9hdGluZyAuY2MtY29tcGxpYW5jZSB7XHJcbiAgICAgICAgLW1zLWZsZXg6IDE7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgIH1cclxuXHJcbiAgICAmLmNjLWJhbm5lciB7XHJcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2MtYmFubmVyIHtcclxuICAgICYuY2MtdG9wIHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLmNjLWJvdHRvbSB7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmNjLW1lc3NhZ2Uge1xyXG4gICAgICAgIC1tcy1mbGV4OiAxO1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYy1jb21wbGlhbmNlIHtcclxuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBqdXN0aWZ5O1xyXG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgID4gLmNjLWJ0biB7XHJcbiAgICAgICAgLW1zLWZsZXg6IDE7XHJcbiAgICAgICAgZmxleDogMTtcclxuICAgIH1cclxufVxyXG5cclxuLmNjLWJ0biArIC5jYy1idG4ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IC41ZW07XHJcbn1cclxuXHJcbkBtZWRpYSBwcmludCB7XHJcbiAgICAuY2MtcmV2b2tlLCAuY2Mtd2luZG93IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xyXG4gICAgLmNjLWJ0biB7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDE0cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3MzZweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XHJcbiAgICAuY2Mtd2luZG93IHtcclxuICAgICAgICAmLmNjLXRvcCB7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuY2MtYm90dG9tIHtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5jYy1iYW5uZXIsICYuY2MtbGVmdCwgJi5jYy1yaWdodCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5jYy1iYW5uZXIge1xyXG4gICAgICAgICAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAgICAgICAgIC5jYy1jb21wbGlhbmNlIHtcclxuICAgICAgICAgICAgICAgIC1tcy1mbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5jYy1mbG9hdGluZyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYy1tZXNzYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5jYy1iYW5uZXIge1xyXG4gICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogdW5zZXQ7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiB1bnNldDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYy1mbG9hdGluZyB7XHJcbiAgICAmLmNjLXRoZW1lLWNsYXNzaWMge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuMmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIH1cclxuXHJcbiAgICAmLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1jb21wbGlhbmNlIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgIC1tcy1mbGV4OiBub25lO1xyXG4gICAgICAgIGZsZXg6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG4ge1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAxNDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4uY2MtdGhlbWUtZWRnZWxlc3MuY2Mtd2luZG93IHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5jYy1mbG9hdGluZy5jYy10aGVtZS1lZGdlbGVzcyAuY2MtbWVzc2FnZSB7XHJcbiAgICBtYXJnaW46IDJlbSAyZW0gMS41ZW07XHJcbn1cclxuXHJcbi5jYy1iYW5uZXIuY2MtdGhlbWUtZWRnZWxlc3Mge1xyXG4gICAgLmNjLWJ0biB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IC44ZW0gMS44ZW07XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYy1tZXNzYWdlIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMWVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2MtZmxvYXRpbmcuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLWJ0biArIC5jYy1idG4ge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbn1cclxuXHJcbi5jYy13aW5kb3cge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvb2tpZS1iYWNrZ3JvdW5kLWNvbG9yO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgJi5jYy1mbG9hdGluZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgICAgICAuY2MtbWVzc2FnZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY2MtY29tcGxpYW5jZSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiB1bnNldDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2MtbWVzc2FnZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb29raWUtZm9udC1jb2xvcjtcclxuICAgICAgICBmbGV4OiB1bnNldDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29va2llLWZvbnQtY29sb3I7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2MtYnRuLmNjLWRpc21pc3Mge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmNjLWJ0bi5jYy1hbGxvdyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvb2tpZS1idXR0b24tY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29va2llLWJ1dHRvbi1jb2xvcjtcclxuICAgICAgICBjb2xvcjogJGNvb2tpZS1mb250LWNvbG9yO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmZmZmZmY7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIHZlcnkgYmFzaWMgc3R5bGVzLlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLyoqXHJcbiAqIFNldCB1cCBhIGRlY2VudCBib3ggbW9kZWwgb24gdGhlIHJvb3QgZWxlbWVudFxyXG4gKi9cclxuaHRtbCB7XHJcbiAgICBmb250LXNpemU6IDYyLjUlO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICAgICAgICBmb250LWZhbWlseTogU291cmNlIFNhbnMgUHJvLHNhbnMtc2VyaWY7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZy1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBsaW5lLWhlaWdodDogMi4ycmVtO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgQGV4dGVuZCAlYmFzZWZvbnQ7XHJcbn1cclxuXHJcbi5zaXRlLWNvbG9yIHtcclxuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKipcclxuICogQmFzaWMgc3R5bGVzIGZvciBsaW5rc1xyXG4gKi9cclxuYSB7XHJcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgQGluY2x1ZGUgb24tZXZlbnQge1xyXG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgfVxyXG59XHJcbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgQGZvbnQtZmFjZSBkZWNsYXJhdGlvbnMsIGlmIGFueS5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuIiwiLyoqXHJcbiAqIEJhc2ljIHR5cG9ncmFwaHkgc3R5bGUgZm9yIGNvcHkgdGV4dFxyXG4gKi9cclxuYm9keSB7XHJcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG59XHJcblxyXG4vL1RpdGxlc1xyXG5AbWl4aW4gdGl0bGVzKCkge1xyXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA1IHtcclxuICAgICAgICBoI3skaX0sIC5oI3skaX0ge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIHRpdGxlcygpIHtcclxuICAgIEBleHRlbmQgJXRpdGxlZm9udDtcclxuXHJcbiAgICAmLnByaW1hcnkge1xyXG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuICAgIH1cclxuXHJcbiAgICAmLnNlY29uZGFyeSB7XHJcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XHJcbiAgICB9XHJcblxyXG4gICAgJi50ZXJ0aWFyeSB7XHJcbiAgICAgICAgY29sb3I6ICR0ZXJ0aWFyeS1jb2xvcjtcclxuICAgIH1cclxufVxyXG5cclxucCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkaGFsZi1ndXR0ZXItd2lkdGg7XHJcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJHAtZm9udC1zaXplcyk7XHJcblxyXG4gICAgLmxlYWQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDMtZm9udC1zaXplcyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbmIsIHN0cm9uZyB7XHJcbiAgICBmb250LXdlaWdodDogJGZvbnQtYm9sZDtcclxufVxyXG5cclxudWwsIG9sIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIC5DYXRhbG9nQ29udHJvbFBhbmVsICYsI1Byb2R1Y3RMaXN0ICYsIC5jYXRlZ29yeS10b3AgJiB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbmgxLCAuaDEge1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemVzKTtcclxuICAgIG1hcmdpbi1ib3R0b206ICRoYWxmLWd1dHRlci13aWR0aDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbmgyLCAuaDIge1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemVzKTtcclxuICAgIG1hcmdpbi1ib3R0b206ICRoYWxmLWd1dHRlci13aWR0aDtcclxuXHJcbn1cclxuXHJcbmgzLCAuaDMge1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemVzKTtcclxuICAgIG1hcmdpbi1ib3R0b206ICRoYWxmLWd1dHRlci13aWR0aDtcclxuXHJcblxyXG4gICAgY29kZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemVzKTtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgfVxyXG59XHJcblxyXG5oNCwgLmg0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDQtZm9udC1zaXplcyk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAkaGFsZi1ndXR0ZXItd2lkdGg7XHJcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbn1cclxuXHJcbmg1LCAuaDUge1xyXG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemVzKTtcclxuICAgIG1hcmdpbi1ib3R0b206ICRoYWxmLWd1dHRlci13aWR0aDtcclxuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxufVxyXG5cclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbi5ibG9jay10aXRsZS0xIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LWZhbWlseTogJ09zd2FsZCcsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcclxuICBtYXJnaW46IDE1cHggMjBweCAwIDA7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLmJsb2NrLXRpdGxlLTIge1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQ0VDRUNFO1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICBmb250LXdlaWdodDogYm9sZDtcclxuICBtYXJnaW46IDAgMCAxNXB4O1xyXG4gIHBhZGRpbmc6IDEwcHggMCAwO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uYmxvY2stdGl0bGUtMyB7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDRUNFQ0U7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgbWFyZ2luOiAwIDAgMTVweDtcclxuICBwYWRkaW5nOiAxMHB4IDAgMTBweDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLmJsb2NrLXRpdGxlLTQge1xyXG4gIGRpc3BsYXk6IGlubGluZTtcclxuICBmb250LXNpemU6IDIwcHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsZXR0ZXItc3BhY2luZzogMC4yZW07XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgcGFkZGluZzogMCAxMnB4O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5ibG9jay10aXRsZS01IHtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgbWFyZ2luOiAwIDAgNXB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuYSB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9ucyhhbGwgLjJzIGVhc2UtaW4pO1xyXG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIENTUyBoZWxwZXIgY2xhc3Nlcy5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8qKlxyXG4gKiBDbGVhciBpbm5lciBmbG9hdHNcclxuICovXHJcbi5jbGVhcmZpeDo6YWZ0ZXIge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG59XHJcblxyXG4vLyAtIC0gSGVscGVyIGNsYXNzZXNcclxuLmJvcmRlci10aXRsZSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0NFQ0VDRTtcclxuICAgIG1hcmdpbjogMCAwIDE1cHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDAgMTBweDtcclxufVxyXG5cclxuLmVycm9yIGxhYmVsLmVycm9yIHtcclxuICAgIGNvbG9yOiByZWQ7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWJsb2NrIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi51cHBlcmNhc2Uge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLnVuZGVybGluZSB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuLnJlbGF0aXZlIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLm5vLW1hcmdpbiB7XHJcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm5vLXBhZGRpbmcge1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubWFyZ2luLXRvcC0xMCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG4ubWFyZ2luLWJvdHRvbS0xMCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5uby1tYXJnaW4tcmlnaHQge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4ubm8tbWFyZ2luLWxlZnQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbn1cclxuXHJcbi5uby1tYXJnaW4tdG9wIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi5uby1tYXJnaW4tYm90dG9tIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5uby1ib3JkZXIge1xyXG4gICAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG4ud2lkdGgxMDAsXHJcbi53MTAwIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ud2lkdGg1MCxcclxuLnc1MCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uZnVsbCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZ1bGwtY29udGFpbmVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjbGVhcjogYm90aDtcclxufVxyXG5cclxuLmZsb2F0LXJpZ2h0IHtcclxuICAgIGZsb2F0OiByaWdodDtcclxufVxyXG5cclxuLmZsb2F0LWxlZnQge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuXHJcbi5tYXhoZWlnaHQxMDAge1xyXG4gICAgbWF4LWhlaWdodDogMTAwcHg7XHJcbn1cclxuXHJcbi5tYXhoZWlnaHQyMDAge1xyXG4gICAgbWF4LWhlaWdodDogMjAwcHg7XHJcbn1cclxuXHJcbi5tYXhoZWlnaHQzMDAge1xyXG4gICAgbWF4LWhlaWdodDogMzAwcHg7XHJcbn1cclxuXHJcbi5tYXhoZWlnaHQ0MDAge1xyXG4gICAgbWF4LWhlaWdodDogNDAwcHg7XHJcbn1cclxuXHJcbi5tYXhoZWlnaHQ1MDAge1xyXG4gICAgbWF4LWhlaWdodDogNTAwcHg7XHJcbn1cclxuXHJcbi5tYXhoZWlnaHQ2MDAge1xyXG4gICAgbWF4LWhlaWdodDogNjAwcHg7XHJcbn1cclxuXHJcbi5tYXhoZWlnaHQ3MDAge1xyXG4gICAgbWF4LWhlaWdodDogNzAwcHg7XHJcbn1cclxuXHJcbi5tYXh3aWR0aDEwMCB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMHB4O1xyXG59XHJcblxyXG4ubWF4d2lkdGh0MjAwIHtcclxuICAgIG1heC13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi5tYXh3aWR0aDMwMCB7XHJcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG59XHJcblxyXG4ubWF4d2lkdGg0MDAge1xyXG4gICAgbWF4LXdpZHRoOiA0MDBweDtcclxufVxyXG5cclxuLm1heHdpZHRoNTAwIHtcclxuICAgIG1heC13aWR0aDogNTAwcHg7XHJcbn1cclxuXHJcbi5tYXh3aWR0aDYwMCB7XHJcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xyXG59XHJcblxyXG4ubWF4d2lkdGg3MDAge1xyXG4gICAgbWF4LXdpZHRoOiA3MDBweDtcclxufVxyXG5cclxuLnBhZGQge1xyXG4gICAgbWFyZ2luLXRvcDogNjBweDtcclxufVxyXG5cclxuLmdsb2JhbFBhZGRpbmcge1xyXG4gICAgcGFkZGluZzogNTBweCAwO1xyXG59XHJcblxyXG4uZ2xvYmFsUGFkZGluZ1RvcCB7XHJcbiAgICBwYWRkaW5nOiA1MHB4IDAgMDtcclxufVxyXG5cclxuLmdsb2JhbFBhZGRpbmdCb3R0b20ge1xyXG4gICAgcGFkZGluZzogMCAwIDUwcHg7XHJcbn1cclxuXHJcbi5ocjIge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XHJcbiAgICBib3JkZXItY29sb3I6ICNEREREREQ7XHJcbn1cclxuXHJcbi5ocjMge1xyXG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XHJcbiAgICBib3JkZXItY29sb3I6ICNEREREREQ7XHJcbn1cclxuXHJcbnVsIHtcclxuICAgICYubGlzdC1kb3QgbGkge1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IGluc2lkZSBkaXNjO1xyXG4gICAgfVxyXG5cclxuICAgICYubGlzdC1udW1iZXIgbGkge1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IGluc2lkZSBkZWNpbWFsO1xyXG4gICAgfVxyXG5cclxuICAgICYubGlzdCB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogY2lyY2xlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubGlzdC1jaGVjayB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmLmxpc3QtYm9yZGVyIGxpIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0UwRURFRDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWJlYmViO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnRyYW5zaXRpb25meCB7XHJcbiAgICB0cmFuc2l0aW9uOiAkYmFzZS10cmFuc2l0aW9uO1xyXG59XHJcblxyXG46OnNlbGVjdGlvbiB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJhY2tncm91bmQ6ICR0ZXJ0aWFyeS1jb2xvcjtcclxufVxyXG5cclxuOjotbW96LXNlbGVjdGlvbiB7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGJhY2tncm91bmQ6ICR0ZXJ0aWFyeS1jb2xvcjtcclxufVxyXG4iLCIvLyAtIC0gUHJpbnQgc3R5bGVzXHJcbkBtZWRpYSBwcmludCB7XHJcbiAgICAubmF2YmFyLFxyXG4gICAgaGVhZGVyIC5oZWFkZXIsXHJcbiAgICAuYmFubmVyLFxyXG4gICAgLnBhcmFsbGF4LXNlY3Rpb24ucGFyYWxsYXgtaW1hZ2UtMSxcclxuICAgIC5mZWF0dXJlZEltYWdlTG9vazMsXHJcbiAgICAud2lkdGgxMDAuc2VjdGlvbi1ibG9jayxcclxuICAgIC5jb250YWluZXIubWFpbi1jb250YWluZXIsXHJcbiAgICBmb290ZXIsXHJcbiAgICAuZm9vdGVyLFxyXG4gICAgLmZvb3Rlci1ib3R0b20sXHJcbiAgICAuQWRkVG9DYXJ0LFxyXG4gICAgLmdvb2dsZS1tYXBzIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAucGFyYWxsYXgtc2VjdGlvbi5wYXJhbGxheC1pbWFnZS0zIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgfVxyXG4gICAgYm9keSB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIGhlYWRlciBvZiB0aGUgc2l0ZS9hcHBsaWNhdGlvbi5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5uYXZiYXItdHNob3Age1xyXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwjNzc3OTc4KSwgY29sb3Itc3RvcCgxMDAlLCMzMjNkNDIpKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzc3Nzk3OCAwJSwjMzIzZDQyIDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzc3Nzk3OCAwJSwjMzIzZDQyIDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICM3Nzc5NzggMCUsIzMyM2Q0MiAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM3Nzc5NzggMCUsIzMyM2Q0MiAxMDAlKTtcclxuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjNzc3OTc4JywgZW5kQ29sb3JzdHI9JyMzMjNkNDInLEdyYWRpZW50VHlwZT0wICk7XHJcbn1cclxuXHJcbi5uYXZiYXItdG9wIHtcclxuICAgIGJhY2tncm91bmQ6ICMzMzM7XHJcbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBmb290ZXIgb2YgdGhlIHNpdGUvYXBwbGljYXRpb24uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4uZ2FwIHtcclxuXHRoZWlnaHQ6IDMwcHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0Y2xlYXI6IGJvdGg7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmZvb3RlciB7XHJcblx0YmFja2dyb3VuZDogI2VkZWZmMTtcclxuXHRoZWlnaHQ6IGF1dG87XHJcblx0cGFkZGluZy1ib3R0b206IDMwcHg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc3VwcG9ydC1saWdodC1jb2xvcjtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgJHN1cHBvcnQtY29sb3I7XHJcblx0cCB7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0fVxyXG5cdGltZyB7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cdGgzIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmFjMWM4O1xyXG5cdFx0Y29sb3I6ICM1NDY5N2U7XHJcblx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0bGluZS1oZWlnaHQ6IDI3cHg7XHJcblx0XHRwYWRkaW5nOiA0MHB4IDAgMTBweDtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0fVxyXG5cdHVsIHtcclxuXHRcdGZvbnQtc2l6ZTogMTNweDtcclxuXHRcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0bWFyZ2luLXRvcDogMTVweDtcclxuXHRcdGNvbG9yOiAjN2Y4YzhkO1xyXG5cdFx0bGkgYSB7XHJcblx0XHRcdHBhZGRpbmc6IDAgMCA1cHggMDtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblx0fVxyXG5cdGEge1xyXG5cdFx0Y29sb3I6ICM3ODgyOGQ7XHJcblx0fVxyXG5cclxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDQwMHB4KSB7XHRcclxuICAgIC5jb250YWluZXIgPiAucm93ICBkaXY6bnRoLW9mLXR5cGUoNW4tMikge2NsZWFyOiBsZWZ0O31cclxuXHR9XHJcbn1cclxuXHJcblxyXG5cclxuLm5ld3NMYXR0ZXJCb3gge1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxuXHQuYnRuIHtcclxuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRib2R5LWJnLWNvbG9yO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cztcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdGhlaWdodDogNDBweDtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9ucyhhbGwgLjNzIGVhc2UpXHJcblx0fVxyXG5cdGlucHV0I2FwcGVuZGVkSW5wdXRCdXR0b24ge1xyXG5cdFx0YmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdGhlaWdodDogMzBweDtcclxuXHRcdGNsZWFyOiBib3RoO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcbi5iZy1ncmF5IHtcclxuXHRib3gtc2hhZG93OiAwIDFweCAwICNiNGIzYjM7XHJcbn1cclxuLmZvb3Rlci1ib3R0b20ge1xyXG5cdGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkbWVudS1ncmFkaWVudC1jb2xvci0xIDAsJG1lbnUtZ3JhZGllbnQtY29sb3ItMiAxMDAlKTtcclxuXHRmaWx0ZXI6IHByb2dpZDpkeGltYWdldHJhbnNmb3JtLm1pY3Jvc29mdC5ncmFkaWVudChzdGFydGNvbG9yc3RyPSckbWVudS1ncmFkaWVudC1jb2xvci0xJywgZW5kY29sb3JzdHI9JyRtZW51LWdyYWRpZW50LWNvbG9yLTInLGdyYWRpZW50dHlwZT0wICk7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICR0ZXJ0aWFyeS1jb2xvcjtcclxuXHRwYWRkaW5nLXRvcDogMTVweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuXHRwLnB1bGwtbGVmdCB7XHJcblx0XHRwYWRkaW5nLXRvcDogNnB4O1xyXG5cdH1cclxuICAgIGEge2NvbG9yOiAkYm9keS1iZy1jb2xvcjsgdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtcdH1cclxufVxyXG4uc3VwcG9ydExpIGg0IHtcclxuXHRmb250LXNpemU6IDIwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XHJcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuXHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblx0cGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBjb2xvcjogIzdmOGM4ZDtcclxufVxyXG4uc29jaWFsIGxpIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI2I1YjViNTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICNiNWI1YjU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGhlaWdodDogMzZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xyXG4gICAgbWFyZ2luOiAwIDdweCAwIDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDM2cHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlIDBzO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KSByb3RhdGUoMzYwZGVnKTtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkdGl0bGUtY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHRpdGxlLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICNlZGVmZjE7XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgNXB4O1xyXG4gICAgICAgICAgICBjb2xvcjogI2VkZWZmMSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgICYuZmFjZWJvb2sge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgIzNiNTk5ODtcclxuICAgIH1cclxuXHJcbiAgICAmLnR3aXR0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgIzAwODRiNDtcclxuICAgIH1cclxuXHJcbiAgICAmLnBpbnRlcmVzdCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAjYzgyMzJjO1xyXG4gICAgfVxyXG5cclxuICAgICYueW91dHViZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAjYzQzMDJiO1xyXG4gICAgfVxyXG5cclxuICAgICYuaW5zdGFncmFtIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZDYyNDlmO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMzAlIDEwNyUsICNmZGY0OTcgMCUsICNmZGY0OTcgNSUsICNmZDU5NDkgNDUlLCNkNjI0OWYgNjAlLCMyODVBRUIgOTAlKTtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICB9XHJcbn1cclxuLnBheW1lbnRNZXRob2RJbWcgaW1nIHtcclxuXHRtYXJnaW4tbGVmdDogNXB4O1xyXG59XHJcbiIsIi8qXHJcbipcclxuKiAgIEJhc2ljIGhvcml6b250YWwgbWVudVxyXG4qXHJcbiovXHJcblxyXG5cclxuJWRpc3BsYXlfdGFibGUge1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbn1cclxuXHJcbiViYXNpYy1ob3Jpem9udGFsLW1lbnUtbW9kdWxlIHtcclxuICAgIGxpIHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKlxyXG4qICAgSGFzIHN1Ym1lbnUgaXRlbSBzdHlsaW5nXHJcbipcclxuKi9cclxuXHJcbiVoYXMtc3ViIHtcclxuICAgID4gYSB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICByaWdodDogMTVweDtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC00cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgID4gYTpiZWZvcmUge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB3aGl0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdWItbWVudSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKlxyXG4qICAgQmFzaWMgc3VibWVudVxyXG4qXHJcbiovXHJcblxyXG4lc3ViLW1lbnUtbW9kdWxlIHtcclxuICAgIC5oYXMtc3ViIHtcclxuICAgICAgICBAZXh0ZW5kICVoYXMtc3ViO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdWItbWVudSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgd2lkdGg6IDE3NXB4O1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypcclxuKlxyXG4qICAgRnVsbCB3aWR0aCBzdWJtZW51XHJcbipcclxuKi9cclxuXHJcbiVmdWxsLXN1Yi1tZW51LW1vZHVsZSB7XHJcbiAgICAuaGFzLXN1YiB7XHJcbiAgICAgICAgQGV4dGVuZCAlaGFzLXN1YjtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIC5zdWItbWVudSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3ViLW1lbnUge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG4vLyAtIC0gYnJlYWRjcnVtYlxyXG4vLyBicmVhZGNydW1iIHN0eWxlc1xyXG5cclxuLmJyZWFkY3J1bWIge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxufSIsIi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cclxuLy8gLSAtIGZvb3Rlcm1lbnVcclxuLy8gXHJcblxyXG4uZm9vdGVyIGE6aG92ZXJcclxue1xyXG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG59IiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgbWFpbiBvZiB0aGUgc2l0ZS9hcHBsaWNhdGlvbi5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuQGltcG9ydCAnLi4vLi4vYWJzdHJhY3RzL19taXhpbnMuc2Nzcyc7XHJcbi5uYXZiYXItdG9nZ2xlIHtcclxuICAgIGJhY2tncm91bmQ6ICRtZW51LWhvdmVyLWNvbG9yO1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIH1cclxufVxyXG5cclxuLm5hdmJhci10c2hvcCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLm1lbnVXcmFwIHtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVudS10b3AtYm9yZGVyO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJG1lbnUtZ3JhZGllbnQtY29sb3ItMSAwLCRtZW51LWdyYWRpZW50LWNvbG9yLTIgMTAwJSk7XHJcbiAgICBmaWx0ZXI6IHByb2dpZDpkeGltYWdldHJhbnNmb3JtLm1pY3Jvc29mdC5ncmFkaWVudChzdGFydGNvbG9yc3RyPSckbWVudS1ncmFkaWVudC1jb2xvci0xJywgZW5kY29sb3JzdHI9JyRtZW51LWdyYWRpZW50LWNvbG9yLTInLGdyYWRpZW50dHlwZT0wICk7XHJcbn1cclxuXHJcbi5icmFuZFdyYXAge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dCAwcztcclxuICAgIGhlaWdodDogYXV0bztcclxufVxyXG5cclxuLm5hdmJhci1icmFuZCB7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDE1cHggMTVweCAwO1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBpbWd7aGVpZ2h0OmF1dG8gIWltcG9ydGFudDsgbWF4LWhlaWdodDo4NXB4O31cclxufVxyXG5cclxuLm5hdmJhciB7XHJcbiAgICAubmF2YmFyLXRvcCB7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2Utb3V0IDBzO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTFweDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG5cclxuICAgICYuc3R1Y2sgLm5hdmJhci10b3Age1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubmF2YmFyLWJveCB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGZsb2F0OiByaWdodDtcclxufVxyXG5cclxuLm5hdmJhci1ib3ggPiAqIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4ubmF2YmFyLWJveCA+IGRpdiB7XHJcbiAgICBoZWlnaHQ6IDExNXB4O1xyXG59XHJcblxyXG4ubWVnYW1lbnUge1xyXG4gICAgLm5hdiB7XHJcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuXHJcbiAgICAgICAgJi5wdWxsLXJpZ2h0IC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kcm9wdXAge1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICB9XHJcblxyXG4gICAgLmRyb3Bkb3duIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG5cclxuICAgICAgICAmLm1lZ2FtZW51LWZ1bGx3aWR0aCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWVnYW1lbnUtODB3aWR0aCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5tZWdhbWVudS01MHdpZHRoIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm1lZ2FtZW51LTQwd2lkdGggLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbGxhcHNlIHtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgfVxyXG5cclxuICAgIC5uYXZiYXItaW5uZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcblxyXG4gICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZ2FtZW51LWNvbnRlbnQge1xyXG4gICAgICAgIHBhZGRpbmc6IDBweCAzMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICp6b29tOiAxO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJWRpc3BsYXlfdGFibGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAlZGlzcGxheV90YWJsZTtcclxuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3BlY2lhbHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbSkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgICYubmF2YmFyIC5uYXYgPiBsaSA+IC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDk2OXB4KSB7XHJcbiAgICAubWVnYW1lbnUge1xyXG4gICAgICAgIC5tZWdhbWVudS1jb250ZW50IHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRyb3Bkb3duLm1lZ2FtZW51LWZ1bGx3aWR0aCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IHVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubWVnYW1lbnUtY29udGVudCB7XHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZW51LWJvdHRvbS1ib3JkZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG5cclxuICAgICAgICAgICAgJi5uby1ib3JkZXIge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc20pIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAmLm5vLWJvcmRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRtZW51LWJvdHRvbS1ib3JkZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLml0ZW1Jbk1lbnUge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgIC5pbWFnZSB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTcwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuLmNib3RoIC5uYXZ7XHJcbiAgICA+IGxpIHtcclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLm5hdiB7XHJcbiAgICA+IGxpIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lbnUtYm9yZGVyLWNvbG9yO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbSkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciA+IGEge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm9wZW4gPiBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgYm9yZGVyLXRvcDogc29saWQgJG1lbnUtaG92ZXItY29sb3I7XHJcbn1cclxuXHJcbi5wcm9tby0xIHtcclxuICAgIGJhY2tncm91bmQ6ICRtZW51LWhvdmVyLWNvbG9yO1xyXG59XHJcblxyXG4ubmF2YmFyLW5hdiA+IGxpID4gYSB7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbn1cclxuXHJcbi5jYXJ0TWVudTpob3ZlciA+IGEuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgIGJhY2tncm91bmQ6ICRtZW51LWhvdmVyLWNvbG9yO1xyXG59XHJcblxyXG5cclxuLy9jb2xvcnNcclxuXHJcbi5zb2NpYWwtaWNvbiBsaSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDZweCA5cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB6LWluZGV4OiAxMDtcclxuICAgICAgICBib3gtc2hhZG93OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC44O1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC40KSBpbnNldDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uYXZiYXItdG9nZ2xlIC5pY29uLWJhciB7XHJcbiAgICBib3JkZXI6IHNvbGlkIDJweCAkYm9keS1iZy1jb2xvcjtcclxufVxyXG5cclxuLnVzZXJNZW51IGxpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2Utb3V0IDBzO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnBob25lLW51bWJlciBzcGFuIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG59XHJcblxyXG4ubmV3UHJvZHVjdE1lbnVCbG9jayB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC8vIElFIEZJWFxyXG4gICAgJjpob3ZlciBpIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5Qcm9kdWN0TWVudUNhcHRpb24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiAgICBmaWx0ZXI6IHByb2dpZDtcclxuICAgIC8vIElFIEZJWFxyXG4gICAgem9vbTogMTtcclxuXHJcbiAgICAmOm50aC1jaGlsZChuKSB7XHJcbiAgICAgICAgZmlsdGVyOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dCAwcztcclxuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0IDBzO1xyXG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQgMHM7XHJcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0IDBzO1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0IDBzO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubmV3Q29sbGVjdGlvblVsIHVsIGxpOmZpcnN0LWNoaWxkIHtcclxufVxyXG5cclxuLm5ld0NvbGxlY3Rpb25VbCBsaSB7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4ucHJvZHVjdFBvcEl0ZW0ge1xyXG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2RkZGRkZDtcclxuXHJcbiAgICAucHJvZHVjdEluZm8ge1xyXG4gICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTUwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICB6LWluZGV4OiA0O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucG9wUHJvSW1nIGEge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXgtaGVpZ2h0OiAyNzBweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5wcm9kdWN0UG9wIGg0IHtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcclxuICAgIHBhZGRpbmc6IDNweCAwIDAgIWltcG9ydGFudDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xyXG4gICAgZmlsdGVyOiBwcm9naWQ7XHJcbiAgICAvLyBJRSBGSVhcclxuICAgIHpvb206IDE7XHJcblxyXG4gICAgJjpudGgtY2hpbGQobikge1xyXG4gICAgICAgIGZpbHRlcjogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3IgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG4vLyAtIC0gTWFpbiBOYXZpZ2F0aW9uIG9uaG92ZXIgaXNzdWUgZm9yIGlwYWQgYW5kIG1vYmlsZVxyXG5AbWVkaWEobWluLXdpZHRoOiA5NzlweCkge1xyXG4gICAgLm5hdmJhci10c2hvcCB1bC5uYXYgbGkuZHJvcGRvd24ge1xyXG4gICAgICAgIHVsLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB1bC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZGl2LmNhcnRNZW51LmRyb3Bkb3duOmhvdmVyIGRpdi5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmaWx0ZXI6IG5vbmU7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAubWVnYW1lbnUtY29udGVudCB1bCBsaSB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UgMHM7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5uZXdQcm9kdWN0TWVudUJsb2NrOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5wcm9kdWN0UG9wSXRlbSBhOmhvdmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubmF2YmFyLnN0dWNrIC5icmFuZFdyYXAge1xyXG4gICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyAtIC0gU2VhcmNoYmFyXHJcblxyXG4uc2VhcmNoLWJveCB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICB3aWR0aDogMzhweDtcclxuXHJcbiAgICAmLnN0YXRpYy1zZWFyY2gge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG5cclxuICAgICAgICAjc2VhcmNoLWZvcm0ge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9ucyhhbGwgLjNzIGVhc2Utb3V0KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzM3B4O1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbnMoYWxsIC4zcyBlYXNlLW91dCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogMzRweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLW91dCAwcztcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAuaW5wdXQtZ3JvdXAge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE4M3B4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0bi1ub2JnIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3IgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBoZWlnaHQ6IDM0cHg7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1vdXQgMHM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tbm9iZyB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG59XHJcblxyXG4uc2VhcmNoLWZ1bGwge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLnNlYXJjaElucHV0Qm94IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWF4LXdpZHRoOiA5MCU7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC5zZWFyY2gtYnRuIHtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcclxuICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xyXG4gICAgICAgIDtcclxuICAgIH1cclxufVxyXG5cclxuLnNlYXJjaC1jbG9zZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICA7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgIGhlaWdodDogNTFweDtcclxuICAgIHBhZGRpbmc6IDAgMTVweDtcclxuXHJcbiAgICBpIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgLy9JbnN0ZWFkIG9mIHRoZSBsaW5lIGJlbG93IHlvdSBjb3VsZCB1c2UgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi0xLCAkdHJhbnNpdGlvbi0yLCAkdHJhbnNpdGlvbi0zLCAkdHJhbnNpdGlvbi00LCAkdHJhbnNpdGlvbi01LCAkdHJhbnNpdGlvbi02LCAkdHJhbnNpdGlvbi03LCAkdHJhbnNpdGlvbi04LCAkdHJhbnNpdGlvbi05LCAkdHJhbnNpdGlvbi0xMClcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlIDBzO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIgaSB7XHJcbiAgICAgICAgLy9JbnN0ZWFkIG9mIHRoZSBsaW5lIGJlbG93IHlvdSBjb3VsZCB1c2UgQGluY2x1ZGUgdHJhbnNmb3JtKCRzY2FsZSwgJHJvdGF0ZSwgJHRyYW5zeCwgJHRyYW5zeSwgJHNrZXd4LCAkc2tld3ksICRvcmlnaW54LCAkb3JpZ2lueSlcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMTUpIHJvdGF0ZSgtMTgwZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuLnNlYXJjaC1pbnB1dCB7XHJcbiAgICBib3JkZXI6IDAgbm9uZTtcclxuICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBvdXRsaW5lOiBtZWRpdW0gbm9uZTtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgcGFkZGluZzogMTNweCAwIDEzcHggMTVweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiA5MCU7XHJcbn1cclxuXHJcbi5zZWFyY2gtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcclxuICAgIDtcclxufVxyXG5cclxuLnNlYXJjaC1pbnB1dDo6LW1vei1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xyXG4gICAgO1xyXG59XHJcblxyXG4ubmF2YmFyLW5hdi5uYXZiYXItcmlnaHQ6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5zZWFyY2gtZnVsbCwgLnNlYXJjaC1pbnB1dCB7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG59XHJcblxyXG4uc2VhcmNoLWNsb3NlIHtcclxuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJG1lbnUtaG92ZXItY29sb3I7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoSW5wdXRCb3ggLnNlYXJjaC1idG4ge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5zZWFyY2gtYm94OmhvdmVyIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbn1cclxuXHJcbi5zZWFyY2gtYm94OmhvdmVyIC5idG4tbm9iZyB7XHJcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbi8vYWRkZWQgYnkgSGFuc1xyXG4uY2xvc2UtbWVudS1hcnJvd3tcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLm5hdmJhci10b2dnbGV7XHJcbiAgICAgICAgY29sb3I6ICRjbG9zZS1tZW51LWFycm93O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2JvdGh7XHJcbiAgICBjbGVhcjogYm90aDtcclxufVxyXG5cclxuLlF1aWNrTW9iaWxlU2VhcmNoe1xyXG4gICAgZmxvYXQ6bGVmdDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgLndyYXB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDE1cHggMTVweCAyNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICBhe1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgICAgaXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjNDQ0O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VhcmNoLWlucHV0e1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogIzQ0NDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAxNXB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlcigpIHtjb2xvcjojNDQ0fVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbiNzYy1hbW91bnR7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA3NjhweCkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbiNzYy1hbW91bnRpdGVtc3tcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB3aWR0aDogMjBweDtcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIHBhZGRpbmc6IDJweDtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG5cclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAtMTVweDtcclxuICAgIHRvcDogLTE2cHg7XHJcbiAgICB2aXNpYmlsaXR5OmhpZGRlbjsgLy8gV2hlbiBhbW1vdW50ICE9MCBzZXQgdG8gdmlzaWJsZSBcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDc2OHB4KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC5jYXJ0UmVzcG9ucyB7dG9wOiAtMnB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO30gIFxyXG59XHJcblxyXG4uZmxleC1pdGVtIC5mYS1zaG9wcGluZy1jYXJ0e1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY4cHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mbGV4LWNvbnRhaW5lcntcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5mbGV4LWNvbnRhaW5lciAuZmxleC1pdGVtOmZpcnN0LWNoaWxke1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgLXdlYmtpdC1hbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7XHJcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLmZsZXgtY29udGFpbmVyIC5mbGV4LWl0ZW06bGFzdC1jaGlsZHtcclxuICAgIGhlaWdodDogNDJweDtcclxuICAgIC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogY2VudGVyO1xyXG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblxyXG5cclxuICAgIC5jYXJldHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uSW1hZ2VMb2dve1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbSl7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG59XHJcblxyXG5cclxuXHJcbi5Nb2JpbGVNZW51e1xyXG4gICBcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICYuZmxleC1jb250YWluZXJ7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7cGFkZGluZzogMTBweCAwO1xyXG4gICAgfVxyXG4gICAgLmZsZXgtaXRlbXtcclxuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub3Blbi10b3AtbWVudXtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAubmF2YmFyLXRvZ2dsZXtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNsb3NlLW1lbnUtYXJyb3c7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaXtcclxuICAgICAgICAgICAgcGFkZGluZzogMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubmF2YmFyLXRvcHtcclxuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuI3RvcC1tZW51e1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY4cHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4jdG9wLW1lbnUtbXtcclxuICAgIHVse1xyXG4gICAgICAgIGxpe1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgLm5hdi1pY29uc3tcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udmlzaWJsZS14cy1zbXtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc20pe1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi52aXNpYmxlLW1kLWxne1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc20pe1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLnZpc2libGUtc20tZG93bi1mbGV4e1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNzY4cHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubmF2bWVudS1maXhlZC1sZWZ0e1xyXG4gICAgLm5hdi5uYXZiYXItbmF2e1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4iLCIvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcbi8vIC0gLSBtb2JpbGUgbWVudVxyXG4vLyBvZmZjYW52YXMgbWVudSwgYm9vdHN0cmFwIGRyb3Bkb3duXHJcbi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuLi8uLi9nbG9iYWwvX3NraW4uc2Nzc1wiIC8+XHJcbi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuLi8uLi9nbG9iYWwvX3NldHRpbmdzLnNjc3NcIiAvPlxyXG5cclxuQGlmICRoYXMtb2ZmY2FudmFzLW1lbnUge1xyXG5cclxuICAgIC5uYXZtZW51LWRlZmF1bHQsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW9mZmNhbnZhcyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtZ3JhZGllbnQtY29sb3ItMjtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRtZW51LWJvdHRvbS1ib3JkZXI7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5uYXZtZW51LWZpeGVkLWxlZnQgLm5hdmJhci1uYXZ7XHJcbiAgICAgICAgbGkgPiBhe1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDI1cHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGl7XHJcbiAgICAgICAgICAgIC5uZXdDb2xsZWN0aW9uVWwgbGkgPiBhe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcblxyXG4gICAgfVxyXG5cclxuICAgIC5uYXZiYXItbmF2IHtcclxuXHJcbiAgICAgICAgbGkuZHJvcGRvd24ubWVnYW1lbnUtZnVsbHdpZHRoIC5mYS5mYS1hbmdsZS1kb3duLCBsaS5kcm9wZG93bi5tZWdhbWVudS1mdWxsd2lkdGggLmZhLmZhLWFuZ2xlLXVwIHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubmF2bWVudS1maXhlZC1sZWZ0IGxpID4gYXtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyNXB4O1xyXG4gICAgICAgIH0gXHJcbiAgICB9XHJcbiAgICAuc2VhcmNoLWJveCB7XHJcbiAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc20pe2Zsb2F0OiByaWdodDt9XHJcbiAgICB9XHJcbiAgIFxyXG5cclxuICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAucHJvbW8tMSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAucHJvbW8tMSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgLmRyb3Bkb3duIC5mYS5mYS1hbmdsZS1kb3duIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpZiAkaGFzLW1vYmlsZS1tZW51IHtcclxufVxyXG4iLCIvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcbi8vIC0gLSBzaWRlbWVudVxyXG4vLyBsZWZ0LW1lbnUgc3R5bGluZ1xyXG5cclxuQGltcG9ydCAnZXh0ZW5kcyc7XHJcblxyXG4vKiB0cmVlIG1lbnUgKi9cclxuLm5hdi50cmVlIHtcclxuICA+IGxpIHtcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgY29sb3I6ICMyYzNlNTA7XHJcbiAgICB9XHJcbiAgICA+IGEge1xyXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgIGNvbG9yOiAjMmMzZTUwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmOmhvdmVyID4gYSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIGNvbG9yOiAjMmMzZTUwO1xyXG4gICAgfVxyXG4gIH1cclxuICAub3Blbi10cmVlID4gYSB7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBjb2xvcjogIzJjM2U1MDtcclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgY29sb3I6ICMyYzNlNTA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBidXR0b24gY29tcG9uZW50LlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLmJ0bixcclxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JhZGllbnQoJHByaW1hcnktY29sb3IsICRwcmltYXJ5LWNvbG9yLWdyYWRpZW50KTtcclxufVxyXG5cclxuLmJ0bi1wcmltYXJ5LFxyXG4uYnRuLXNpdGUsXHJcbi5idG4sXHJcbi5idG4tZGlzY292ZXIge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLWdyYWRpZW50KCRwcmltYXJ5LWNvbG9yLCAkcHJpbWFyeS1jb2xvci1ncmFkaWVudCk7XHJcbn1cclxuXHJcbi5idG4tZGlzY292ZXIge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uLWdyYWRpZW50KCRwcmltYXJ5LWNvbG9yLCAkcHJpbWFyeS1jb2xvci1ncmFkaWVudCk7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XHJcbiAgICBmb250LXNpemU6IDIuMnJlbTtcclxuICAgIHBhZGRpbmc6IDEwcHggNTdweDtcclxufVxyXG5cclxuLmJ0bi1kZWZhdWx0IHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbigkc3VwcG9ydC1saWdodGVyLWNvbG9yKTtcclxufVxyXG5cclxuLmJ0bi1kYW5nZXIge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uKCNFNzRDM0MpO1xyXG59XHJcblxyXG4uYnRuLWxnIHtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRiYXNlLWJvcmRlci1yYWRpdXMtbGc7XHJcbiAgICBmb250LXNpemU6IDEuNnJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjQ3MTtcclxuICAgIHBhZGRpbmc6IDEuMXJlbSAxLjJyZW07XHJcbn1cclxuXHJcbi5idG4tc20ge1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cy1zbTtcclxuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIHBhZGRpbmc6IC40cmVtIDFyZW07XHJcbn1cclxuXHJcbi5vcGVuIC5kcm9wZG93bi10b2dnbGUuYnRuLXByaW1hcnkge1xyXG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbn1cclxuXHJcbi5mYl9idXR0b24ge1xyXG4gICAgYmFja2dyb3VuZDogIzY1OEFEMDtcclxuICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4uYnRuLWZiIHtcclxuICAgIGJhY2tncm91bmQ6ICM2NThBRDA7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbn1cclxuXHJcbi5mYl9idXR0b246aG92ZXIsXHJcbi5idG4tZmI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogIzRFNkZBRTtcclxuICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLmJ0bi10dyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMURBREVCO1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG59XHJcblxyXG4uYnRuLXR3OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICMzNUM1RkY7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcbi5idG4tbm9iZyB7YmFja2dyb3VuZDpub25lO30iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBpbnB1dCBjb21wb25lbnQuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG5cclxuLy8gLSAtIHRleHRhcmVhLCBpbnB1dHMgZXRjLlxyXG50ZXh0YXJlYSwgLmZvcm0tY29udHJvbCwgc2VsZWN0LmZvcm0tY29udHJvbCwgZmllbGRzZXQud2ViMnNtYWxsIHNlbGVjdCwgc2VsZWN0IHtcclxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4IDAgMCAzcHg7XHJcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAycHggMXB4IDFweCAycHg7XHJcbiAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogTk9ORTtcclxuICAgICAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbmlucHV0IHtcclxuICAgICZbdHlwZT1cInRleHRcIl0sICZbdHlwZT1cInBhc3N3b3JkXCJdLCAmW3R5cGU9XCJkYXRldGltZVwiXSwgJlt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sICZbdHlwZT1cImRhdGVcIl0sICZbdHlwZT1cIm1vbnRoXCJdLCAmW3R5cGU9XCJ0aW1lXCJdLCAmW3R5cGU9XCJ3ZWVrXCJdLCAmW3R5cGU9XCJudW1iZXJcIl0sICZbdHlwZT1cImVtYWlsXCJdLCAmW3R5cGU9XCJ1cmxcIl0sICZbdHlwZT1cInRlbFwiXSwgJlt0eXBlPVwiY29sb3JcIl0ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcclxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMnB4IDFweCAxcHggMnB4O1xyXG4gICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICBoZWlnaHQ6IDM2cHg7XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBOT05FO1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAwIG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaW5wdXQtZXJyb3Ige1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZWQhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksMCAwIDZweCByZWQhaW1wb3J0YW50XHJcbn1cclxuXHJcbi5pbnB1dC12YWxpZCB7XHJcbiAgICBib3JkZXItY29sb3I6ICMyODkyMWYhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksMCAwIDZweCAjNWNkMDUzIWltcG9ydGFudFxyXG59XHJcblxyXG4udW5lZGl0YWJsZS1pbnB1dCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkdGVydGlhcnktY29sb3I7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xyXG4gICAgY29sb3I6ICRwbGFjZWhvbGRlci1jb2xvcjtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGhlaWdodDogMzhweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcclxufVxyXG5cclxuLmZvcm0tY29udHJvbDpmb2N1cyB7XHJcbiAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIG91dGxpbmU6IDAgbm9uZTtcclxufVxyXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBtb2RhbCBjb21wb25lbnQuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ubW9kYWwge1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcbi5tb2RhbC1kaWFsb2cge1xyXG5cdG1heC13aWR0aDogNDYwcHg7XHJcbn1cclxuLm1vZGFsLWhlYWRlciB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU1ZTU7XHJcblx0Y29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG5cdHBhZGRpbmc6IDVweCAxNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0YmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbn1cclxuLm1vZGFsLXRpdGxlLXNpdGUge1xyXG5cdGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuXHRmb250LWZhbWlseTogT3N3YWxkO1xyXG5cdGZvbnQtc2l6ZTogMzhweDtcclxuXHRmb250LXdlaWdodDogbGlnaHRlcjtcclxuXHRwYWRkaW5nOiAxM3B4IDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG4ubW9kYWwtY29udGVudCB7XHJcblx0Ym9yZGVyOiAwIHNvbGlkICRzdXBwb3J0LWNvbG9yO1xyXG5cdGJvcmRlci1yYWRpdXM6ICRiYXNlLWJvcmRlci1yYWRpdXMtbm9uZTtcclxuXHRib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG59XHJcbi5tb2RhbC1mb290ZXIge1xyXG5cdGJhY2tncm91bmQ6ICNlZWU7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICNlNWU1ZTU7XHJcblx0cGFkZGluZzogMTBweCAyMHB4O1xyXG59XHJcblxyXG4ubW9kYWwtYm9keSB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI2ViZWRlZjtcclxuXHQucHJvZHVjdC10aXRsZSB7XHJcblx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlY2VjZTtcclxuXHRcdHBhZGRpbmc6IDEwcHggMCAwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHR9XHJcblx0LnByaWNlIHtcclxuXHRcdGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuXHRcdGZvbnQtc2l6ZTogMTVweDtcclxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0fVxyXG4gICAgaDIge2NvbG9yOiAkdGV4dC1jb2xvcjt9XHJcbn1cclxuXHJcbi8vIC0gLSBQUk9EVUNUIERFVEFJTFMgUE9QVVAgTU9EQUxcclxuXHJcbi5wcm9kdWN0IHtcclxuXHQmOmhvdmVyIHtcclxuXHRcdC5idG4tcXVpY2t2aWV3IHtcclxuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcclxuXHRcdFx0b3BhY2l0eTogMC44NTtcclxuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHRcdH1cclxuXHRcdGRpdi5xdWlja3ZpZXcge1xyXG5cdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQ+IC5idG4tcXVpY2t2aWV3OmhvdmVyIHtcclxuXHRcdG9wYWNpdHk6IDAuOTU7XHJcblx0fVxyXG59XHJcbi5idG4tcXVpY2t2aWV3IHtcclxuXHRib3JkZXItcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzO1xyXG5cdGZvbnQtZmFtaWx5OiBPc3dhbGQsIEhlbHZldGljYSBOZXVlLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuXHRsZXR0ZXItc3BhY2luZzogMnB4O1xyXG5cdGNvbG9yOiAjMmMzZTUwICFpbXBvcnRhbnQ7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI2VlZTtcclxuXHRib3gtc2hhZG93OiAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuXHRsZWZ0OiBhdXRvO1xyXG5cdG1pbi13aWR0aDogMTAwcHg7XHJcblx0bWF4LWhlaWdodDogNDBweDtcclxuXHRoZWlnaHQ6IDQwcHggIWltcG9ydGFudDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG5cdHotaW5kZXg6IDI7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcclxuXHRAaW5jbHVkZSB0cmFuc2l0aW9ucyhhbGwgMC4zcyBlYXNlIDBzKTtcclxufVxyXG5AbWVkaWEobWF4LXdpZHRoOiA0NjBweCkge1xyXG5cdGRpdiAucXVpY2t2aWV3IHtcclxuXHRcdG1hcmdpbi10b3A6IDI1JTtcclxuXHR9XHJcbn1cclxuQG1lZGlhKG1heC13aWR0aDogNDAwcHgpIHtcclxuXHRkaXYgLnF1aWNrdmlldyB7XHJcblx0XHRtYXJnaW4tdG9wOiAzNSU7XHJcblx0fVxyXG59XHJcbi5Nb2RhbEJhY2tncm91bmQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7XHJcbn1cclxuI3Byb2R1Y3QtZGV0YWlscy1tb2RhbCB7XHJcblx0Lm1vZGFsLWRpYWxvZyB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxuXHRcdG1heC13aWR0aDogOTYwcHg7XHJcblx0XHRvdmVyZmxvdzogYXV0bztcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHQuY2xvc2Uge1xyXG5cdFx0Y29sb3I6ICMyYzNlNTA7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGZvbnQtc2l6ZTogMzRweDtcclxuXHRcdGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG5cdFx0bGluZS1oZWlnaHQ6IDEwcHg7XHJcblx0XHRvcGFjaXR5OiAwLjY7XHJcblx0XHRwYWRkaW5nOiAxMnB4O1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0b3BhY2l0eTogMC44O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQubW9kYWwtY29udGVudCB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0fVxyXG5cdC5wcm9kdWN0RmlsdGVyIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcblx0XHRwYWRkaW5nLXRvcDogMTBweDtcclxuXHR9XHJcblx0LmZpbHRlckJveCB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHR3aWR0aDogNDUlO1xyXG5cdH1cclxuXHQuY2FydC1hY3Rpb25zIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdH1cclxuXHQuY29sb3ItZGV0YWlscyB7XHJcblx0XHRtYXJnaW4tdG9wOiA1cHg7XHJcblx0fVxyXG5cdC5wcm9kdWN0LXNoYXJlIHtcclxuXHRcdGJvcmRlci10b3A6IDAgbm9uZTtcclxuXHRcdG1hcmdpbi10b3A6IDA7XHJcblx0XHRwYWRkaW5nLXRvcDogMDtcclxuXHR9XHJcbn1cclxuQG1lZGlhKG1heC13aWR0aDo4MDBweCkge1xyXG5cdCNwcm9kdWN0LWRldGFpbHMtbW9kYWwgLm1vZGFsLWRpYWxvZyB7XHJcblx0XHRtYXgtd2lkdGg6IDkwJTtcclxuXHRcdG1hcmdpbjogMjBweCBhdXRvO1xyXG5cdH1cclxufVxyXG5AbWVkaWEobWluLXdpZHRoOjg0MHB4KSB7XHJcblx0Lm1vZGFsLWRldGFpbHMtaW5uZXIge1xyXG5cdFx0bWluLWhlaWdodDogNTUycHg7XHJcblx0fVxyXG59XHJcbkBtZWRpYShtYXgtd2lkdGg6NjAwcHgpIHtcclxuXHQjcHJvZHVjdC1kZXRhaWxzLW1vZGFsIC5tb2RhbC1kaWFsb2cge1xyXG5cdFx0bWF4LXdpZHRoOiA5NiU7XHJcblx0XHRtYXJnaW46IDIwcHggYXV0bztcclxuXHR9XHJcbn1cclxuLm1vZGFsLWRldGFpbHMtaW5uZXIge1xyXG5cdHBhZGRpbmc6IDMwcHg7XHJcbn1cclxuLm1vZGFsLXByb2R1Y3QtdGh1bWIge1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkc3VwcG9ydC1jb2xvcjtcclxuXHRjbGVhcjogYm90aDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0YSB7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkc3VwcG9ydC1saWdodC1jb2xvcjtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdGZsb2F0OiBub25lO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRtYXJnaW4tdG9wOiA1cHg7XHJcblx0XHRoZWlnaHQ6IDc1cHg7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0d2lkdGg6IDYwcHggIWltcG9ydGFudDtcclxuXHRcdCYuc2VsZWN0ZWQge1xyXG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjMDAwICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgIzAwMCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdFx0aW1nIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHRtYXgtaGVpZ2h0OiA3NXB4O1xyXG5cdFx0XHR3aWR0aDogNjBweCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5kaXYucXVpY2t2aWV3IHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW4tdG9wOiA0MCU7XHJcblx0bWF4LWhlaWdodDogNTBweDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHotaW5kZXg6IDI7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcbi5saXN0LXZpZXcgLnByb2R1Y3Q6aG92ZXIgZGl2LnF1aWNrdmlldyB7XHJcblx0bWFyZ2luLXRvcDogNDUlO1xyXG59XHJcblxyXG4vLyAtIC0gU1VCU0NSSUJFIHwgUFJPTU9USU9OQUwgTU9EQUxcclxuLy91cmxzXHJcbiR1cmxfcHJvbW86IHVybCguLi8uLi9pbWFnZXMvc2l0ZS9tb2RhbC1pbWctMS5qcGcpO1xyXG5cclxuI21vZGFsQWRzIHtcclxuXHQubW9kYWwtYmctMSB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkdXJsX3Byb21vIHJpZ2h0IGJvdHRvbSBuby1yZXBlYXQ7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmNmZiO1xyXG5cdH1cclxuXHQubW9kYWwtZGlhbG9nIHtcclxuXHRcdG1heC13aWR0aDogNjYwcHg7XHJcblx0XHRtaW4taGVpZ2h0OiAzNDBweDtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0b3ZlcmZsb3c6IGF1dG87XHJcblx0XHRwYWRkaW5nOiAxNXB4O1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxuXHRoMyB7XHJcblx0XHRjb2xvcjogJHRleHQtY29sb3I7XHJcblx0XHRmb250LWZhbWlseTogT3N3YWxkLCBIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuXHRcdGZvbnQtc2l6ZTogMjZweDtcclxuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xyXG5cdFx0bGluZS1oZWlnaHQ6IDI5cHg7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdH1cclxuXHRoNCB7XHJcblx0XHRmb250LXNpemU6IDI0cHg7XHJcblx0XHRmb250LXdlaWdodDogbm9ybWFsO1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAyOHB4O1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHR9XHJcbn1cclxuLmRpc2NvdW50TGcge1xyXG5cdGNvbG9yOiAjMDAwO1xyXG5cdGZvbnQtZmFtaWx5OiBPc3dhbGQsIEhlbHZldGljYSBOZXVlLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG5cdGZvbnQtc2l6ZTogNDZweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRsZXR0ZXItc3BhY2luZzogM3B4O1xyXG5cdGxpbmUtaGVpZ2h0OiA0NnB4O1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuLm5ld3NsZXR0ZXIge1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkICRzdXBwb3J0LWNvbG9yO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR3aWR0aDogYXV0bztcclxuXHRpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxuXHRcdGJvcmRlcjogbWVkaXVtIG5vbmU7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdGhlaWdodDogNDBweDtcclxuXHRcdG1hcmdpbjogMDtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHQmOmZvY3VzIHtcclxuXHRcdFx0dGV4dC1zaGFkb3c6IG5vbmU7XHJcblx0XHRcdGNvbG9yOiAjNjY2O1xyXG5cdFx0fVxyXG5cdH1cclxuXHQuc3Vic2NyaWJlLWJ0biB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkc3VwcG9ydC1jb2xvcjtcclxuXHRcdGJvcmRlcjogMCBub25lO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cy1ub25lO1xyXG5cdFx0Y29sb3I6ICMzYTNhM2E7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xyXG5cdFx0cGFkZGluZzogMCAxMHB4O1xyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICNiN2I3Yjc7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbkBtZWRpYShtYXgtd2lkdGg6NDQycHgpIHtcclxuXHQuZGlzY291bnRMZyB7XHJcblx0XHRmb250LXNpemU6IDM2cHg7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMnB4O1xyXG5cdFx0bGluZS1oZWlnaHQ6IDQwcHg7XHJcblx0fVxyXG5cdC5uZXdzbGV0dGVyIHtcclxuXHRcdGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblx0XHQuc3Vic2NyaWJlLWJ0biB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiA1cHg7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQjbW9kYWxBZHMgaDMge1xyXG5cdFx0Y29sb3I6ICM0NDQ7XHJcblx0XHRmb250LXNpemU6IDIycHg7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xyXG5cdFx0bGluZS1oZWlnaHQ6IDI2cHg7XHJcblx0fVxyXG59XHJcbi5zaG9wbGluayB7XHJcblx0Y29sb3I6ICMwMDA7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdGNsZWFyOiBib3RoO1xyXG5cdGZvbnQtZmFtaWx5OiBPc3dhbGQsIEhlbHZldGljYSBOZXVlLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG5cdGxlZnQ6IDJweDtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuLm1vZGFsLWJnLTEgLmNsb3NlIHtcclxuXHRjb2xvcjogIzJjM2U1MDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRmb250LXNpemU6IDM0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XHJcblx0bGluZS1oZWlnaHQ6IDEwcHg7XHJcblx0b3BhY2l0eTogMC42O1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHRleHQtc2hhZG93OiBub25lO1xyXG5cdHRvcDogMDtcclxuXHR6LWluZGV4OiAxO1xyXG59IiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgcGFuZWwgY29tcG9uZW50LlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLnBhbmVsLWRlZmF1bHQgPiAucGFuZWwtaGVhZGluZyB7XHJcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgJHByaW1hcnktY29sb3I7XHJcbn1cclxuXHJcbi5wYW5lbC1kZWZhdWx0ID4gLmFjdGl2ZSB7XHJcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgIzAwNjYzMztcclxufVxyXG5cclxuLm5hdi10YWJzID4gbGkuYWN0aXZlID4gYSxcclxuLm5hdi10YWJzID4gbGkuYWN0aXZlID4gYTpob3ZlcixcclxuLm5hdi10YWJzID4gbGkuYWN0aXZlID4gYTpmb2N1cyxcclxuLm5hdi10YWJzID4gbGk6aG92ZXIgPiBhIHtcclxuICAgIGJhY2tncm91bmQ6ICNCNUI1QjU7XHJcbn1cclxuXHJcbi5uYXYtdGFicyB7XHJcbiAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgI0I1QjVCNTtcclxufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIGFsZXJ0IGNvbXBvbmVudC5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hbGVydCB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbn1cclxuXHJcbi5hbGVydCAuY2xvc2Uge1xyXG4gICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSBwYWdpbmF0aW9uIGNvbXBvbmVudC5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5wYWdpbmF0aW9uID4gbGkgPiB7XHJcbiAgICBhLFxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGFnaW5hdGlvbiA+IHtcclxuICAgIC5hY3RpdmUgPiB7XHJcbiAgICAgICAgYSxcclxuICAgICAgICBzcGFuLFxyXG4gICAgICAgIGE6aG92ZXIsXHJcbiAgICAgICAgc3Bhbjpob3ZlcixcclxuICAgICAgICBhOmZvY3VzLFxyXG4gICAgICAgIHNwYW46Zm9jdXMge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuICAgICAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgOXB4IHJnYmEoMCwgMCwgMCwgMC4yKSBpbnNldDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGkgPiBhOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRtZW51LWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIH1cclxufVxyXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgYWxsIHN0eWxlcyByZWxhdGVkIHRvIHRoZSB0aHVtYm5haWwgY29tcG9uZW50LlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLnRodW1ibmFpbCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cztcclxufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIGNoZWNrYm94L3JhZGlvYnV0dG9uIGNvbXBvbmVudC5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLmNoZWNrYm94IHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG59XHJcblxyXG4vLyAtIC0gQ3VzdG9tIGlucHV0IHJhZGlvL2NoZWNrYm94IChJY2hlY2twbHVnaW4gaHR0cHM6Ly9naXRodWIuY29tL2Zyb250ZWVkL2ljaGVjaylcclxuLy91cmxzXHJcbiR1cmxfbGluZTogdXJsKGxpbmUucG5nKTtcclxuJHVybF9saW5lX3gyOiB1cmwobGluZUAyeC5wbmcpO1xyXG4vL0BleHRlbmQtZWxlbWVudHNcclxuLy9vcmlnaW5hbCBzZWxlY3RvcnNcclxuLy8uaWNoZWNrYm94X2xpbmUtb3JhbmdlLCAuaXJhZGlvX2xpbmUtb3JhbmdlXHJcbiVsaW5lX29yYW5nZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgYmFja2dyb3VuZDogI2I1YjViNTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRiYXNlLWJvcmRlci1yYWRpdXM7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDNweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGhlaWdodDogMzZweDtcclxuICAgIG1pbi13aWR0aDogMzZweDtcclxuICAgIGJvcmRlcjogc29saWQgMnB4ICNhOGE4YTg7XHJcbn1cclxuXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLmljaGVja2JveF9saW5lLW9yYW5nZSAuaWNoZWNrX2xpbmUtaWNvbiwgLmlyYWRpb19saW5lLW9yYW5nZSAuaWNoZWNrX2xpbmUtaWNvblxyXG4lbGluZV9pY29uIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogMTNweDtcclxuICAgIHdpZHRoOiAxM3B4O1xyXG4gICAgaGVpZ2h0OiAxMXB4O1xyXG4gICAgbWFyZ2luOiAtNXB4IDAgMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2dyb3VuZDogJHVybF9saW5lIG5vLXJlcGVhdDtcclxuICAgIGJvcmRlcjogbm9uZTtcclxufVxyXG5cclxuLy9vcmlnaW5hbCBzZWxlY3RvcnNcclxuLy8uaWNoZWNrYm94X2xpbmUtb3JhbmdlLmNoZWNrZWQuaG92ZXIsIC5pcmFkaW9fbGluZS1vcmFuZ2UuY2hlY2tlZC5ob3ZlclxyXG4lbGluZV9vcmFuZ2VfaG92ZXIge1xyXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcbiAgICBjb2xvcjogIzY2NjtcclxuICAgIGJvcmRlcjogc29saWQgMnB4ICRwcmltYXJ5LWNvbG9yO1xyXG59XHJcblxyXG4uaWNoZWNrYm94X2xpbmUtb3JhbmdlIHtcclxuICAgIEBleHRlbmQgJWxpbmVfb3JhbmdlO1xyXG5cclxuICAgIC5pY2hlY2tfbGluZS1pY29uIHtcclxuICAgICAgICBAZXh0ZW5kICVsaW5lX2ljb247XHJcbiAgICB9XHJcblxyXG4gICAgJi5ob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgY29sb3I6ICM2NjY7XHJcbiAgICB9XHJcblxyXG4gICAgJi5jaGVja2VkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkbWVudS1ob3Zlci1jb2xvcjtcclxuXHJcbiAgICAgICAgJi5ob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgICAgICBjb2xvcjogIzY2NjtcclxuICAgICAgICAgICAgQGV4dGVuZCAlbGluZV9vcmFuZ2VfaG92ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaWNoZWNrX2xpbmUtaWNvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNXB4IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmRpc2FibGVkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZDZiMztcclxuXHJcbiAgICAgICAgICAgIC5pY2hlY2tfbGluZS1pY29uIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NXB4IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZDZiMztcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG4gICAgICAgIC5pY2hlY2tfbGluZS1pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwcHggMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pcmFkaW9fbGluZS1vcmFuZ2Uge1xyXG4gICAgQGV4dGVuZCAlbGluZV9vcmFuZ2U7XHJcblxyXG4gICAgLmljaGVja19saW5lLWljb24ge1xyXG4gICAgICAgIEBleHRlbmQgJWxpbmVfaWNvbjtcclxuICAgIH1cclxuXHJcbiAgICAmLmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICBjb2xvcjogIzY2NjtcclxuICAgIH1cclxuXHJcbiAgICAmLmNoZWNrZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRtZW51LWhvdmVyLWNvbG9yO1xyXG5cclxuICAgICAgICAmLmhvdmVyIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAlbGluZV9vcmFuZ2VfaG92ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaWNoZWNrX2xpbmUtaWNvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNXB4IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmRpc2FibGVkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZDZiMztcclxuXHJcbiAgICAgICAgICAgIC5pY2hlY2tfbGluZS1pY29uIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC00NXB4IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5kaXNhYmxlZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZDZiMztcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG4gICAgICAgIC5pY2hlY2tfbGluZS1pY29uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMwcHggMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSgtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiA1LzQpLCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjI1KSwgKG1pbi1yZXNvbHV0aW9uOiAxMjBkcGkpLCAobWluLXJlc29sdXRpb246IDEuMjVkcHB4KSB7XHJcbiAgICAuaWNoZWNrYm94X2xpbmUtb3JhbmdlIC5pY2hlY2tfbGluZS1pY29uIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiAkdXJsX2xpbmVfeDI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2MHB4IDEzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmlyYWRpb19saW5lLW9yYW5nZSAuaWNoZWNrX2xpbmUtaWNvbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJHVybF9saW5lX3gyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNjBweCAxM3B4O1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIHNjcm9sbCB0byB0b3AgY29tcG9uZW50LlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJXNjcm9sbF90b190b3Age1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJSA1MCUgNTAlIDUwJTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICRib2R5LWJnLWNvbG9yO1xyXG4gICAgYm90dG9tOiA1NXB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICByaWdodDogMTBweDtcclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgei1pbmRleDogNDtcclxuICAgIHBhZGRpbmc6IDRweCA5cHg7XHJcbiAgICBmb250OiA0MDAgMThweCBPcGVuIFNhbnMsIFNhbnMtc2VyaWY7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG59XHJcblxyXG4lc2Nyb2xsX3RvX3RvcF9ob3ZlciB7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWVudS1ob3Zlci1jb2xvcjtcclxufVxyXG5cclxuLnNjcm9sbFRvVG9wIHtcclxuICAgIEBleHRlbmQgJXNjcm9sbF90b190b3A7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBAZXh0ZW5kICVzY3JvbGxfdG9fdG9wX2hvdmVyO1xyXG4gICAgfVxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgQGV4dGVuZCAlc2Nyb2xsX3RvX3RvcF9ob3ZlcjtcclxuICAgIH1cclxufVxyXG5cclxuYS5zY3JvbGxUb1RvcCB7XHJcbiAgICBAZXh0ZW5kICVzY3JvbGxfdG9fdG9wO1xyXG59IiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIGFsbCBzdHlsZXMgcmVsYXRlZCB0byB0aGUgc2xpZGVyIGNvbXBvbmVudC5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIC0gLSB1cmxzXHJcbiRsb2FkZXJfdXJsOiB1cmwoJy4uLy4uL2ltYWdlcy9zaXRlL2xvYWRpbmcxLmdpZicpO1xyXG5cclxuLy9AZXh0ZW5kLWVsZW1lbnRzXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLmJhbm5lciwgLnNsaWRlci1jb250ZW50LCAuc2xpZGVyLCAuc2xpZGVyLXYyXHJcbiViYW5uZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnNsaWRlckltZyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkbG9hZGVyX3VybCBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgd2lkdGg6IDE0NSU7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhzKSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYmFubmVyIHtcclxuICAgIG1hcmdpbi10b3A6IDE3NXB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1vdXQgMHM7XHJcbiAgICBAZXh0ZW5kICViYW5uZXI7XHJcblxyXG4gICAgJi5kb3duIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZXJJbmZvIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcblxyXG4gICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAucHJldkNvbnRyb2wge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5uZXh0Q29udHJvbCB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgZmlsdGVyOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmJhbm5lci1ib3hlcyB7XHJcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xyXG59XHJcblxyXG4uc2xpZGVyLWNvbnRlbnQge1xyXG4gICAgQGV4dGVuZCAlYmFubmVyO1xyXG59XHJcblxyXG4uc2xpZGVyIHtcclxuICAgIEBleHRlbmQgJWJhbm5lcjtcclxufVxyXG5cclxuLnNsaWRlci12MiB7XHJcbiAgICBAZXh0ZW5kICViYW5uZXI7XHJcbn1cclxuXHJcbi5zbGlkZXItaXRlbSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJi5jeWNsZS1zbGlkZS1hY3RpdmUge1xyXG4gICAgICAgIC5zbGlkZXJUZXh0IHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBmaWx0ZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAudHJhbnNmb3JtUmlnaHQge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50cmFuc2Zvcm1MZWZ0IHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBmaWx0ZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpZGVyVGV4dCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMSUgIWltcG9ydGFudDtcclxuICAgIG1heC13aWR0aDogNzUlO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgJi53aGl0ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xyXG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9I2NjZmZmZmZmLCBlbmRDb2xvcnN0cj0jY2NmZmZmZmYpO1xyXG4gICAgICAgIHpvb206IDE7XHJcblxyXG4gICAgICAgICY6bnRoLWNoaWxkKG4pIHtcclxuICAgICAgICAgICAgZmlsdGVyOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHMpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMyUgIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc20pIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNiUgIWltcG9ydGFudDtcclxuICAgICAgICBtYXgtd2lkdGg6IDc1JTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMjBweCk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgbGluZWFyLCB0cmFuc2Zvcm0gLjdzIGN1YmljLWJlemllciguNTYsIC40OCwgMCwgLjk5KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNSUgIWltcG9ydGFudDtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcclxuXHJcbiAgICAgICAgJjpudGgtY2hpbGQobikge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5uZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMuNXJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBjb2xvcjogJHRleHQtY29sb3I7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5kYXJrIHtcclxuICAgICAgICAgICAgY29sb3I6ICNkZGQ7XHJcblxyXG4gICAgICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi53aGl0ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcclxuICAgICAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jY2NmZmZmZmYsIGVuZENvbG9yc3RyPSNjY2ZmZmZmZik7XHJcbiAgICAgICAgICAgIHpvb206IDE7XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZChuKSB7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGgxIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMy5wcmljZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udHJhbnNmb3JtUmlnaHQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTIwcHgpO1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgbGluZWFyLCB0cmFuc2Zvcm0gLjdzIGN1YmljLWJlemllciguNTYsIC40OCwgMCwgLjk5KTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XHJcbn1cclxuXHJcbi50cmFuc2Zvcm1MZWZ0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMjBweCk7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBsaW5lYXIsIHRyYW5zZm9ybSAuN3MgY3ViaWMtYmV6aWVyKC41NiwgLjQ4LCAwLCAuOTkpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcclxufVxyXG5cclxuLnNsaWRlLWxpbmsge1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjI1cHg7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi5zbGlkZXItaXRlbS1pbWcxIHtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbn1cclxuXHJcbi5zbGlkZXItaXRlbS1pbWcyIHtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbn1cclxuXHJcbi5zbGlkZXItaXRlbS1pbWczIHtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbn1cclxuXHJcbiNwYWdlciBhLmN5Y2xlLXBhZ2VyLWFjdGl2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDM5LCAxNzQsIDk2LCAwLjUpO1xyXG59XHJcblxyXG4ucGFnZXIyIGEge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XHJcbn1cclxuXHJcbi5wYWdlcjIgYS5zZWxlY3RlZCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxufVxyXG5cclxuI3BhZ2VyMiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IDEwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDIwMDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgIG1hcmdpbjogNXB4O1xyXG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xyXG4gICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRib2R5LWJnLWNvbG9yO1xyXG5cclxuICAgICAgICAmLmN5Y2xlLXBhZ2VyLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3IgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGlkZXJDb250cm9sIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDIwMDtcclxuICAgIHRvcDogNDUlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAkcHJpbWFyeS1jb2xvcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICRib2R5LWJnLWNvbG9yO1xyXG4gICAgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuICAgICAgICB6b29tOiAxO1xyXG5cclxuICAgICAgICAmOm50aC1jaGlsZChuKSB7XHJcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcmV2Q29udHJvbCB7XHJcbiAgICBsZWZ0OiAyMHB4O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MHB4KTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzIGxpbmVhciwgdHJhbnNmb3JtIC43cyBjdWJpYy1iZXppZXIoLjU2LCAuNDgsIDAsIC45OSk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xyXG59XHJcblxyXG4ubmV4dENvbnRyb2wge1xyXG4gICAgcmlnaHQ6IDIwcHg7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCk7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBsaW5lYXIsIHRyYW5zZm9ybSAuN3MgY3ViaWMtYmV6aWVyKC41NiwgLjQ4LCAwLCAuOTkpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcclxufVxyXG5cclxuLnNsaWRlclRleHRGdWxsIHtcclxuICAgIG1hcmdpbi10b3A6IDE1JTtcclxuICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm9wYWNpdHkwIHtcclxuICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmlubmVyLmRhcmsge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XHJcbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0jY2MwMDAwMDAsIGVuZENvbG9yc3RyPSNjYzAwMDAwMCk7XHJcbiAgICAgICAgem9vbTogMTtcclxuXHJcbiAgICAgICAgJjpudGgtY2hpbGQobikge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udG9wQW5pbWEge1xyXG4gICAgb3BhY2l0eTogMDtcclxufVxyXG5cclxuLmN5Y2xlLXNsaWRlLWFjdGl2ZSB7XHJcbiAgICAudG9wQW5pbWEge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XHJcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xyXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGVyVGV4dEZ1bGwgLmJvdHRvbUFuaW1hIHtcclxuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XHJcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcclxuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuNHM7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIC0gLSBwcm9kdWN0c2xpZGVyIGhvbWVcclxuLy9AZXh0ZW5kLWVsZW1lbnRzXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLml0ZW0gaDQgYSwgLnBhbmVsLWJvZHkgaDRcclxuJWl0ZW0ge1xyXG4gICAgY29sb3I6ICR0aXRsZS1jb2xvcjtcclxuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIFNhbnMgUHJvJywgJ3NhbnMtc2VyaWYnO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLy8gLSAtIHByb2R1Y3RzbGlkZXIgaG9tZVxyXG4ucHJvZHVjdHNsaWRlciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4ubWFudWZhY3R1cmVyIHtcclxuICAgIC5pdGVtIHtcclxuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9kdWN0IHtcclxuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWFnZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLml0ZW0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgIGhlaWdodDogNDgwcHg7XHJcblxyXG4gICAgJi5saXN0LXZpZXcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgIC5ncmlkLWRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5saXN0LWRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNjBweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwcztcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjYwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luOiA0NXB4IDAgNXB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hY3Rpb24tY29udHJvbCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmFjdGlvbi1jb250cm9sIGE6aG92ZXIsXHJcbiAgICAgICAgLmFjdGlvbi1jb250cm9sIGEuYWN0aXZlIHtcclxuICAgICAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wcm9kdWN0OmhvdmVyLFxyXG4gICAgICAgIC5mZWF0dXJlZEltZ0xvb2syIC5pbm5lcjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIC5wcm9kdWN0IHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMjYwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaXRlbSBoNCB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGg0IHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICBtYXJnaW46IDI1cHggMCAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVpdGVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIC5hY3Rpb24tY29udHJvbCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zaG9wcGluZ2NhcnRwcm9kdWN0IHtcclxuICAgIGhlaWdodDogMzMwcHg7XHJcbiAgICBtYXJnaW46IDAgNXB4ICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA2MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmltYWdlIGEgaW1nIHtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAxNjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcm9kdWN0IHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAwcztcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGRkZGQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZGRkZDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxuXHJcbiAgICAgICAgLmFkZC1mYXYge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB3ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbWFnZSBhIGltZyB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSkgcm90YXRlKC0xLjVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmFkZC1mYXYge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMzFweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAzMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdG9wOiAxNXB4O1xyXG4gICAgd2lkdGg6IDMwcHg7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBsaW5lYXIsIHRyYW5zZm9ybSAuN3MgY3ViaWMtYmV6aWVyKC41NiwgLjQ4LCAwLCAuOTkpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcclxuXHJcbiAgICBpIHtcclxuICAgICAgICB3ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlIGkge1xyXG4gICAgICAgIHdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuODUpIHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpIHJvdGF0ZSg0ZGVnKTtcclxuICAgIH1cclxufVxyXG5cclxuLmxpc3QtZGVzY3JpcHRpb24ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmltYWdlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LWhlaWdodDogMjQwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlIDBzO1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UgMHM7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI0MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcm9tb3Rpb24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBib3R0b206IDIwcHg7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxufVxyXG5cclxuLmRlc2NyaXB0aW9uIHtcclxuICAgIG1hcmdpbjogMCA0cHggMCA1cHg7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDdweDtcclxuXHJcbiAgICBwIHtcclxuICAgICAgICBjb2xvcjogIzdmOGM4ZDtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbWluLWhlaWdodDogNTVweDtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA5MHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5uZXctcHJvZHVjdCB7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGZvbnQtZmFtaWx5OiAnT3N3YWxkJywgJ0hlbHZldGljYSBOZXVlJywgJ0hlbHZldGljYScsICdBcmlhbCcsICdzYW5zLXNlcmlmJztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZzogM3B4IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMzE2ZDFlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5kaXNjb3VudCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZWI1ZTU4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMCA0cHggNHB4IDA7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGZvbnQtZmFtaWx5OiAnT3N3YWxkJywgJ0hlbHZldGljYSBOZXVlJywgJ0hlbHZldGljYScsICdBcmlhbCcsICdzYW5zLXNlcmlmJztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZzogM3B4IDVweDtcclxufVxyXG5cclxuLnByaWNlIHtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgY29sb3I6ICR0aXRsZS1jb2xvcjtcclxufVxyXG5cclxuLmFjdGlvbi1jb250cm9sIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgcGFkZGluZzogNXB4IDAgMTBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmxvYWQtbW9yZS1ibG9jayB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuYnRuLXRoaW4ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IC00cHggMCAwICRib2R5LWJnLWNvbG9yLCA0cHggMCAwICRib2R5LWJnLWNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgcmVwZWF0IHNjcm9sbCAwIDAgI2RkZGRkZDtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMThweDtcclxuICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbiNwcm9kdWN0c2xpZGVyIC5pdGVtIHtcclxuICAgIG1hcmdpbjogMCAxNXB4O1xyXG59XHJcblxyXG4jU2ltaWxhclByb2R1Y3RTbGlkZXIgLml0ZW0ge1xyXG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5saXN0LXZpZXcgLnByb2R1Y3QgLmFkZC1mYXYge1xyXG4gICAgcmlnaHQ6IDQwcHg7XHJcbiAgICB0b3A6IDhweDtcclxufVxyXG5cclxuLnByb2R1Y3QtYm94IC5pdGVtIHtcclxuICAgIG1hcmdpbjogMCAxMHB4O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYW5lbC1ib2R5IGg0IHtcclxuICAgIEBleHRlbmQgJWl0ZW07XHJcbn1cclxuXHJcbi5jYXJ0IGEge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgY29sb3I6ICR0aXRsZS1jb2xvcjtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2Utb3V0IDBzO1xyXG59XHJcblxyXG4uZmVhdHVyZUltZyBhIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UgMHM7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKC0xLjFkZWcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvLyAtIC0gUGFyYWxsYXggc2xpZGVyIGhvbWVcclxuLy91cmxzXHJcbiRwYXJhbGxheF9pbWdfMTogdXJsKCcuLi8uLi9pbWFnZXMvcGFyYWxsYXgvcGFyYWxsYXguanBnJyk7XHJcbiRwYXJhbGxheF9pbWdfMjogdXJsKCcuLi8uLi9pbWFnZXMvcGFyYWxsYXgvY29udGFjdHVzLmpwZycpO1xyXG4kcGFyYWxsYXhfaW1nXzM6IHVybCgnLi4vLi4vaW1hZ2VzL3BhcmFsbGF4L2Fib3V0c2hvcC5qcGcnKTtcclxuLy9AZXh0ZW5kLWVsZW1lbnRzXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLnBhcmFsbGF4LWltYWdlLTEuaXNhbmRyb2lkLCAucGFyYWxsYXgtaW1hZ2UtMi5pc2FuZHJvaWQsIC5wYXJhbGxheC1pbWFnZS0zLmlzYW5kcm9pZCwgLnBhcmFsbGF4LWltYWdlLWFib3V0dXMuaXNhbmRyb2lkLCAucGFyYWxsYXgtc2VjdGlvbi5pc2FuZHJvaWRcclxuJXBhcmFsbGF4X2JhY2tncm91bmQge1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlciAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGwgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbn1cclxuXHJcbi5wYXJhbGxheC1zZWN0aW9uIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgICYuaXNtb2JpbGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAmLmlzaW9zIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmLmlzYW5kcm9pZCB7XHJcbiAgICAgICAgQGV4dGVuZCAlcGFyYWxsYXhfYmFja2dyb3VuZDtcclxuICAgIH1cclxufVxyXG5cclxuLnBhcmFsbGF4LWltYWdlLTEge1xyXG4gICAgYmFja2dyb3VuZDogJHBhcmFsbGF4X2ltZ18xO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICAmLmlzbW9iaWxlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgJi5pc2lvcyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGwgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3MzRlNDg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIH1cclxuICAgICYuaXNhbmRyb2lkIHtcclxuICAgICAgICBAZXh0ZW5kICVwYXJhbGxheF9iYWNrZ3JvdW5kO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGFyYWxsYXgtaW1hZ2UtMiB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkcGFyYWxsYXhfaW1nXzIgZml4ZWQ7XHJcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgJi5pc21vYmlsZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGwgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgICYuaXNpb3Mge1xyXG4gICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgJi5pc2FuZHJvaWQge1xyXG4gICAgICAgIEBleHRlbmQgJXBhcmFsbGF4X2JhY2tncm91bmQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYXJhbGxheC1pbWFnZS0zIHtcclxuICAgIGJhY2tncm91bmQ6ICRwYXJhbGxheF9pbWdfMyBmaXhlZDtcclxuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICAmLmlzbW9ib2lsZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGwgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgICYuaXNpb3Mge1xyXG4gICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgJi5pc2FuZHJvaWQge1xyXG4gICAgICAgIEBleHRlbmQgJXBhcmFsbGF4X2JhY2tncm91bmQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYXJhbGxheC1pbWFnZS1hYm91dHVzIHtcclxuICAgICYuaXNtb2JpbGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAmLmlzaW9zIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcbiAgICB9XHJcbiAgICAmLmlzYW5kcm9pZCB7XHJcbiAgICAgICAgQGV4dGVuZCAlcGFyYWxsYXhfYmFja2dyb3VuZDtcclxuICAgIH1cclxufVxyXG5cclxuLnBhcmFsbGF4UHJjZSB7XHJcbiAgICBmb250LXNpemU6IDUycHg7XHJcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC44KSwgMCAwIDFweCAkYm9keS1iZy1jb2xvcjtcclxufVxyXG5cclxuLnBhcmFsbGF4LWNvbnRlbnQge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogNTBweCAwO1xyXG4gICAgaDIge1xyXG4gICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNXB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogOTAwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG4gICAgaDMge1xyXG4gICAgICAgIGNvbG9yOiAjZGRkZGRkO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tZGlzY292ZXIge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAkcHJpbWFyeS1jb2xvci1ncmFkaWVudDtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkICRib2R5LWJnLWNvbG9yO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDU3cHg7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wYXJhbGxheC1hYm91dHVzIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBwYWRkaW5nOiA1MHB4IDA7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgcCxcclxuICAgIHNwYW4sXHJcbiAgICBkaXYge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgaDEge1xyXG4gICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxufVxyXG5cclxuLmNhcm91c2VsLW5hdiB7XHJcbiAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XHJcbiAgICBwYWRkaW5nLXRvcDogM3B4O1xyXG59XHJcblxyXG4ucGFyYWxsYXgtc2VjdGlvbi1vdmVybGV5IHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4zMyk7XHJcbn1cclxuXHJcbmgxIHtcclxuICAgICYueGxhcmdlIHtcclxuICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgZm9udC1zaXplOiA0NHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIH1cclxuICAgICYueDJsYXJnZSB7XHJcbiAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNTZweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuOCksIDAgMCAxcHggJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxufVxyXG5cclxuLmJyYW5kLWNhcm91c2VsIGxpIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuaDUucGFyYWxsYXhTdWJ0aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG59XHJcblxyXG4vLyAtIC0gcmV2aWV3c1xyXG4uc3Rhci1pY29uIHtcclxuICAgIGNvbG9yOiAjZGRkO1xyXG4gICAgZm9udC1zaXplOiAxZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAmLnZvbDpiZWZvcmUge1xyXG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMnB4IHJnYmEoMCwgMCwgMCwgMC43KTtcclxuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiAgICAgICAgY29udGVudDogJ1xcMjYwNSc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcbiAgICAmLmhhbGY6YmVmb3JlIHtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuNyk7XHJcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgICAgIGNvbnRlbnQ6ICdcXDI2MDUnO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxufVxyXG5cclxuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcclxuICAgIC5zdGFyLWljb24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcclxuICAgIH1cclxufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBhbGwgc3R5bGVzIHJlbGF0ZWQgdG8gdGhlIHByb2dyZXNzIGJhciBjb21wb25lbnQuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ucGFjZSAucGFjZS1wcm9ncmVzcyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44MCk7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiAyMDAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIGhlaWdodDogMnB4O1xyXG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAxcztcclxuICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggMXM7XHJcbiAgICAtby10cmFuc2l0aW9uOiB3aWR0aCAxcztcclxuICAgIHRyYW5zaXRpb246IHdpZHRoIDFzO1xyXG59XHJcblxyXG4ucGFjZS1pbmFjdGl2ZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59IiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIHN0eWxlcyB0aGF0IGFyZSBzcGVjaWZpYyB0byB0aGUgaG9tZSBwYWdlLlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHNsaWRlcl9hcnJvd3M6IHVybCgnLi4vLi4vaW1hZ2VzL2Fycm93cy5wbmcnKTtcclxuLy9AZXh0ZW5kLWVsZW1lbnRzXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLmJveC00aW4gLnByaWNlLCAuYm94LXRleHQtdGFibGUgLmRlYWxwcmljZVxyXG4lcHJpY2Uge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LWZhbWlseTogJ29zd2FsZCcsICdIZWx2ZXRpY2EgTmV1ZScsICdBcmlhbCcsICdIZWx2ZXRpY2EnLCAnc2Fucy1zZXJpZic7XHJcbiAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICBmb250LXdlaWdodDogbGlnaHRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLmJveC00aW4uYSAuYm94LWNvbnRlbnQtb3Zlcmx5LCAuYm94LTRpbi5iIC5ib3gtY29udGVudC1vdmVybHlcclxuJW92ZXJsYXkge1xyXG4gICAgYm90dG9tOiA1cHg7XHJcbiAgICByaWdodDogNXB4O1xyXG4gICAgdG9wOiBhdXRvO1xyXG59XHJcblxyXG4vL29yaWdpbmFsIHNlbGVjdG9yc1xyXG4vLy5ib3gtdGV4dCBoMSwgLmJveC10ZXh0LWNlbGwtaW5uZXIgaDFcclxuJWJveC10ZXh0LWgxIHtcclxuICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XHJcbiAgICBmb250LWZhbWlseTogJ09zd2FsZCcsICdIZWx2ZXRpY2EgTmV1ZScsICdIZWx2ZXRpY2EnLCAnQXJpYWwnLCAnc2Fucy1zZXJpZic7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLy9vcmlnaW5hbCBzZWxlY3RvcnNcclxuLy8uYm94LXRleHQgaDIsIC5ib3gtdGV4dC1jZWxsLWlubmVyIGgyXHJcbiVib3gtdGV4dC1oMiB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgZm9udC1mYW1pbHk6ICdPc3dhbGQnLCAnSGVsdmV0aWNhIE5ldWUnLCAnSGVsdmV0aWNhJywgJ0FyaWFsJywgJ3NhbnMtc2VyaWYnO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLmJveC10ZXh0IHAsIC5ib3gtdGV4dC1jZWxsLWlubmVyIHBcclxuJWJveC10ZXh0LXAge1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgZm9udC1mYW1pbHk6ICdPc3dhbGQnO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG59XHJcblxyXG4vL29yaWdpbmFsIHNlbGVjdG9yc1xyXG4vLy5ib3gtc2xpZGVyLWNvbnRlbnQ6aG92ZXIgLmJveC1jb250ZW50LW92ZXJseS13aGl0ZSAuYm94LXRleHQsIC5ib3gtc2xpZGVyLWNvbnRlbnQ6aG92ZXIgLmJveC1jb250ZW50LW92ZXJseS13aGl0ZSAuYm94LXRleHQtY2VsbC1pbm5lclxyXG4lb3BhY2l0eV8xIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XHJcbn1cclxuXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLmJveC00aW4uYSBhLmJveC1pbWcsIC5ib3gtNGluLmIgYS5ib3gtaW1nXHJcbiVib3hfaW1nIHtcclxuICAgIGJvdHRvbTogNXB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uYm94LXBhZ2luYXRpb24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMjA7XHJcbiAgICBsZWZ0OiAxMHB4O1xyXG4gICAgYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4uc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMzMzO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDQ5MHB4O1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uc3dpcGVyLXdyYXBwZXIge1xyXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcbn1cclxuXHJcbi5zd2lwZXItcGFnaW5hdGlvbi1zd2l0Y2gge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgd2lkdGg6IDhweDtcclxuICAgIGhlaWdodDogOHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cy1sZztcclxuICAgIGJhY2tncm91bmQ6ICMyMjI7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgIG9wYWNpdHk6IDAuODtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib2R5LWJnLWNvbG9yO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uc3dpcGVyLXZpc2libGUtc3dpdGNoIHtcclxuICAgIGJhY2tncm91bmQ6ICNhYWE7XHJcbn1cclxuXHJcbi5zd2lwZXItYWN0aXZlLXN3aXRjaCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxufVxyXG5cclxuLmFycm93LWxlZnQge1xyXG4gICAgYmFja2dyb3VuZDogJHNsaWRlcl9hcnJvd3Mgbm8tcmVwZWF0IGxlZnQgdG9wO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMTBweDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbWFyZ2luLXRvcDogLTE1cHg7XHJcbiAgICB3aWR0aDogMTdweDtcclxuICAgIGhlaWdodDogMzBweDtcclxuICAgIHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4uYXJyb3ctcmlnaHQge1xyXG4gICAgYmFja2dyb3VuZDogJHNsaWRlcl9hcnJvd3Mgbm8tcmVwZWF0IGxlZnQgYm90dG9tO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDEwcHg7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIG1hcmdpbi10b3A6IC0xNXB4O1xyXG4gICAgd2lkdGg6IDE3cHg7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLnN3aXBlci1zbGlkZSB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcblxyXG4gICAgLnNsaWRlci1jb250ZW50IHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zbGlkZS0yeCB7XHJcbiAgICB3aWR0aDogNTAwcHg7XHJcbn1cclxuXHJcbi5zbGlkZS00eCB7XHJcbiAgICB3aWR0aDogNTAwcHg7XHJcbn1cclxuXHJcbi5zbGlkZS0xeCB7XHJcbiAgICB3aWR0aDogMzAwcHg7XHJcbn1cclxuXHJcbi5ib3gtNGluIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBoZWlnaHQ6IDUwJTtcclxuICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgLnByaWNlIHtcclxuICAgICAgICBAZXh0ZW5kICVwcmljZTtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuIHtcclxuICAgICAgICBtaW4td2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi5hIHtcclxuICAgICAgICAuYm94LWNvbnRlbnQtb3Zlcmx5IHtcclxuICAgICAgICAgICAgQGV4dGVuZCAlb3ZlcmxheTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEuYm94LWltZyB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJWJveF9pbWc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuYiB7XHJcbiAgICAgICAgLmJveC1jb250ZW50LW92ZXJseSB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJW92ZXJsYXk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhLmJveC1pbWcge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVib3hfaW1nO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNsaWRlci1ib3gtYm90dG9tIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA1MCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLmJveC00aW4ge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLnNsaWRlci1ib3gtdG9wIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA1MCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgLmJveC00aW4ge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuYm94LWNvbnRlbnQtb3Zlcmx5IHtcclxuICAgICAgICBib3R0b206IDVweDtcclxuICAgICAgICB0b3A6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLmJveC1pbWcge1xyXG4gICAgICAgIGJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ib2xkZXItc3ViIGEge1xyXG4gICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMy41cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3gtdGV4dC10YWJsZSB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgei1pbmRleDogMTA7XHJcblxyXG4gICAgLmRlYWxwcmljZSB7XHJcbiAgICAgICAgQGV4dGVuZCAlcHJpY2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3gtc2xpZGVyLWNvbnRlbnQge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgLmJveC1jb250ZW50LW92ZXJseSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ib3gtY29udGVudC1vdmVybHktd2hpdGUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcblxyXG4gICAgICAgICAgICAuYm94LXRleHQge1xyXG4gICAgICAgICAgICAgICAgQGV4dGVuZCAlb3BhY2l0eV8xO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuYm94LXRleHQtY2VsbC1pbm5lciB7XHJcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICVvcGFjaXR5XzE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJveC1jb250ZW50LW92ZXJseS13aGl0ZSB7XHJcbiAgICAgICAgLmJveC10ZXh0IHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ib3gtdGV4dC1jZWxsLWlubmVyIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZSAwcztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJveC1pbWcge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogNDtcclxuICAgICAgICBtYXJnaW46IDAgNXB4IDAgMDtcclxuICAgIH1cclxuXHJcbiAgICBhLmJveC1pbWcgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGVyLWJveC10b3AgYS5ib3gtaW1nIHtcclxuICAgICAgICBib3R0b206IDVweDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxufVxyXG5cclxuLmJveC10ZXh0IHtcclxuICAgIGJvdHRvbTogMTAwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGxlZnQ6IDE4JTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiA2NCU7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuXHJcbiAgICAmLmJvdHRvbS1hbGlnbiB7XHJcbiAgICAgICAgYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgxIHtcclxuICAgICAgICBAZXh0ZW5kICVib3gtdGV4dC1oMTtcclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgQGV4dGVuZCAlYm94LXRleHQtaDI7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgQGV4dGVuZCAlYm94LXRleHQtcDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYm94LXRleHQtY2VsbC1pbm5lciB7XHJcbiAgICBtYXgtd2lkdGg6IDcwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDE1JTtcclxuXHJcbiAgICBoMSB7XHJcbiAgICAgICAgQGV4dGVuZCAlYm94LXRleHQtaDE7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIEBleHRlbmQgJWJveC10ZXh0LWgyO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIEBleHRlbmQgJWJveC10ZXh0LXA7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLmRhcmsge1xyXG4gICAgICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ib3gtdGV4dC1jZWxsIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi5ib3gtY29udGVudC1vdmVybHkge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiA1cHg7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlIDBzO1xyXG5cclxuICAgICYuYm94LWNvbnRlbnQtb3Zlcmx5LXdoaXRlIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYm94LWJsYW5rLXVybCB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uYm94LXByaWNlLXRhZyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogNTBweDtcclxuICAgIGJvdHRvbTogNTBweDtcclxuICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgIC5wcmljZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgY29sb3I6ICR0aXRsZS1jb2xvcjtcclxuICAgICAgICBmb250LWZhbWlseTogJ29zd2FsZCc7XHJcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KSB7XHJcbiAgICAuc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgaGVpZ2h0OiA0OTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGUtMngge1xyXG4gICAgICAgIHdpZHRoOiA0OTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGUtNHgge1xyXG4gICAgICAgIHdpZHRoOiA0OTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGUtMXgge1xyXG4gICAgICAgIHdpZHRoOiA0OTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYm94LXRleHQge1xyXG4gICAgICAgIGJvdHRvbTogMTAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAuc3dpcGVyLWNvbnRhaW5lciB7XHJcbiAgICAgICAgaGVpZ2h0OiAzNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGUtMngge1xyXG4gICAgICAgIHdpZHRoOiAzNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGUtNHgge1xyXG4gICAgICAgIHdpZHRoOiAzNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGUtMXgge1xyXG4gICAgICAgIHdpZHRoOiAzNTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuYm94LXRleHQge1xyXG4gICAgICAgIGJvdHRvbTogMTAlO1xyXG5cclxuICAgICAgICBoMSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi1zdHJva2UtZGFyayB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogMTUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi1zdHJva2UtbGlnaHQge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5ib3gtdGV4dC1jZWxsLWlubmVyIGgxIHtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgaDEuYm9sZGVyLXN0eWxlIHtcclxuICAgICAgICBmb250LXNpemU6IDUwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDc4NnB4KSB7XHJcbn1cclxuXHJcbi5ib3gtaW1nLmxhc3QtY2hpbGQtc2xpZGUge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG59XHJcblxyXG5oMS5ib2xkZXItc3R5bGUge1xyXG4gICAgZm9udC1zaXplOiA4MHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiA4MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC44KSwgMCAwIDFweCAkYm9keS1iZy1jb2xvcjtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgJi5saWdodCB7XHJcbiAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmRhcmsge1xyXG4gICAgICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XHJcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCksIDAgMCAxcHggJHRpdGxlLWNvbG9yO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICR0aXRsZS1jb2xvcjtcclxuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCksIDAgMCAxcHggJHRpdGxlLWNvbG9yO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIEhPTUUgUEFHRSBMT09LIDJcclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uaG9tZS1pbnRybyB7XHJcbiAgICBoMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBtYXgtd2lkdGg6IDkwJTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmN2YwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYmFja2dyb3VuZDogIzM0MzczYjtcclxuICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIHBhZGRpbmc6IDE1cHggMCAwO1xyXG59XHJcblxyXG4uc2VjdGlvbkNhdGVnb3J5IHtcclxuICAgIGJhY2tncm91bmQ6ICMzNDM3M2I7XHJcbiAgICBwYWRkaW5nOiA2MHB4IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5zZWN0aW9uQ2F0ZWdvcnlJbnRybyB7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5zZWN0aW9uQ2F0ZWdvcnkgLmNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4uc2VjdGlvbkNhdGVnb3J5SW50cm8ge1xyXG4gICAgaDEge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBPc3dhbGQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgY29sb3I6ICNkZGQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zZWN0aW9uQ2F0ZWdvcnkgLnN1YkNhdGVnb3J5VGh1bWIge1xyXG4gICAgaGVpZ2h0OiAxNjBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLyoqKiAgLS0tLS0tLSAgSG9tZSBsb29rIDIgfHwgcHJvZHVjdFNob3dDYXNlIHNlY3Rpb24gIC0tLS0tLS0gKioqL1xyXG5cclxuLm93bC10aGVtZSAub3dsLWNvbnRyb2xzIC5vd2wtcGFnZSBzcGFuIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNCkgaW5zZXQ7XHJcbn1cclxuXHJcbi5zaG93LWNhc2Utd3JhcHBlciB7XHJcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xyXG4gICAgZmxvYXQ6IG5vbmU7XHJcbn1cclxuXHJcbiNwcm9kdWN0U2hvd0Nhc2UgLm93bC1jb250cm9scyB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG4ucHJvZHVjdC1zbGlkZS1pbm5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMiU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1heC13aWR0aDogOTglO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIC5wcm9kdWN0LXNsaWRlLWlubmVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBtYXgtd2lkdGg6IDk4JTtcclxuICAgICAgICBtYXJnaW46IDUlIGF1dG8gMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgI3Byb2R1Y3RTaG93Q2FzZSAub3dsLWNvbnRyb2xzIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4jcHJvZHVjdFNob3dDYXNlIHtcclxuICAgIC5idG4tc3Ryb2tlLWRhcmsge1xyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGZvbnQgMC4zcyBlYXNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciBpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZGV0YWlscy1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgIH1cclxufVxyXG5cclxuLnByb2R1Y3Qtc2xpZGUtbGVmdCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5wcm9kdWN0LXNsaWRlLWltZyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxufVxyXG5cclxuI3Byb2R1Y3RTaG93Q2FzZSAucHJvZHVjdC10aXRsZSB7XHJcbiAgICBmb250LWZhbWlseTogb3N3YWxkO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjI1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMzZweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5wcy1uYXYge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXNpemU6IDY4cHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0b3A6IDM4JTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxufVxyXG5cclxuI3BzLW5leHQge1xyXG4gICAgcmlnaHQ6IDA7XHJcbn1cclxuXHJcbiNwcy1wcmV2IHtcclxuICAgIGxlZnQ6IDA7XHJcbn1cclxuXHJcbi5ib3hlcy10aXRsZS0xIHtcclxuICAgIGJhY2tncm91bmQ6ICNlYmViZWI7XHJcbiAgICBmb250LWZhbWlseTogT3N3YWxkO1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgcGFkZGluZzogN3B4IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcblxyXG4vKioqICAtLS0tLS0tICBIb21lIGxvb2sgMiB8fCBGZWF0dXJlZCBpbWFnZSBzZWN0aW9uICAtLS0tLS0tICoqKi9cclxuXHJcbi5mZWF0dXJlZEltZ0xvb2syIC5pbm5lciB7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZGRkO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjNEVDNjdGO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaW1nLWxpbmsge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlZEltZ0xvb2syIHtcclxuICAgIGgzIHtcclxuICAgICAgICBjb2xvcjogJHRpdGxlLWNvbG9yO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ViNWU1ODtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGxpZ2h0ZXI7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5idG4tbGluayB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBjb2xvcjogIzdmOGM4ZDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGNvbG9yOiAjN2Y4YzhkO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xyXG4gICAgLmZlYXR1cmVkSW1nTG9vazIgLmNvbC1tZC0zIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNDYwcHgpIHtcclxuICAgIC5mZWF0dXJlZEltZ0xvb2syIC5jb2wtbWQtMyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBIT01FIFBBR0UgTE9PSyAzXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuI2ltYWdlU2hvd0Nhc2Uge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjbGVhcjogYm90aDtcclxuXHJcbiAgICAucHJvZHVjdC1zbGlkZSB7XHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJveC1jb250ZW50LW92ZXJseS5ib3gtY29udGVudC1vdmVybHktd2hpdGUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmZlYXR1cmVkSW1hZ2VMb29rMyAuaW5uZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4uZmVhdHVyZWRJbWFnZUxvb2s0IHtcclxuICAgIC5pbm5lciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgIC5ib3gtY29udGVudC1vdmVybHktd2hpdGUge1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XHJcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcblxyXG4gICAgICAgICAgICAuYm94LXRleHQtY2VsbCB7XHJcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xyXG5cclxuICAgICAgICAgICAgICAgIC5ib3gtdGV4dC1jZWxsLWlubmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4JTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA4MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDkwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDUlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaHIuc3VibWluaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhyLnN1Ym1pbmkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgLmltZy10aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IE9zd2FsZDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDFweCAwcHggMnB4ICM1NTU7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIHRvcDogNDUlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgei1pbmRleDogMTAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBsaW5lYXIsIHZpc2liaWxpdHkgLjJzIGxpbmVhcjtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW1nLWJsb2NrIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcclxuICAgICAgICAgICAgei1pbmRleDogMTAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmltYWdlLXNob3ctY2FzZS13cmFwcGVyIHtcclxuICAgIC5wcy1uYXYge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcclxuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlIDBzO1xyXG4gICAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UgMHM7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciAucHMtbmF2IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuICAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZmVhdHVyZWRJbWFnZUxvb2szIC5pbm5lciAuYm94LWNvbnRlbnQtb3Zlcmx5LXdoaXRlIHtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4uc3VibWluaSB7XHJcbiAgICBoZWlnaHQ6IDJweDtcclxuICAgIG1heC13aWR0aDogNTBweDtcclxuICAgIG1hcmdpbjogMTVweCBhdXRvO1xyXG4gICAgYmFja2dyb3VuZDogJHRpdGxlLWNvbG9yO1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxufVxyXG5cclxuLmZlYXR1cmVkSW1hZ2VMb29rMyAuaW5uZXIge1xyXG4gICAgLmltZy10aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBmb250LWZhbWlseTogT3N3YWxkO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LXNoYWRvdzogMXB4IDBweCAycHggIzU1NTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIHRvcDogNDAlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBsaW5lYXIsIHZpc2liaWxpdHkgLjJzIGxpbmVhcjtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIC5pbWctdGl0bGUge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaW1nLWJsb2NrIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmZlYXR1cmVkSW1hZ2VMb29rMyB7XHJcbiAgICAuaW5uZXIge1xyXG4gICAgICAgIC5ib3gtdGV4dC1jZWxsLWlubmVyIHtcclxuICAgICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIgLmJveC1jb250ZW50LW92ZXJseS13aGl0ZSB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJveC1jb250ZW50LXNwZWNpYWwge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmltYWdlLXNob3ctY2FzZS13cmFwcGVyIC5vd2wtcGFnaW5hdGlvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiAtNDBweCAhaW1wb3J0YW50O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgei1pbmRleDogNTA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG59XHJcblxyXG4ucHJvZHVjdC1zbGlkZSAuYm94LWNvbnRlbnQtb3Zlcmx5IHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xyXG4gICAgLmZlYXR1cmVkSW1hZ2VMb29rMyAuaW5uZXIgLmJveC10ZXh0LWNlbGwtaW5uZXIge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoci5zdWJtaW5pIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGZlYXR1cmVkSW1hZ2VMb29rMyAuaW5uZXIgLmltZy10aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xyXG4gICAgLmZlYXR1cmVkSW1hZ2VMb29rMyB7XHJcbiAgICAgICAgLmJveC1jb250ZW50LW92ZXJseSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5uZXIgLmltZy10aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIHN0eWxlcyB0aGF0IGFyZSBzcGVjaWZpYyB0byB0aGUgZGVmYXVsdCBwYWdlLlxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8gLSAtIE1BSU4gQ09OVEFJTkVSIHx8IFRPUCBDT05UQUlORVIgU1RBUlQgKE5FVyBBUlJJVkFMUylcclxuLnNlY3Rpb24tYmxvY2sge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLnNlY3Rpb24tdGl0bGUge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRzdXBwb3J0LWNvbG9yO1xyXG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRzdXBwb3J0LWNvbG9yO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICBtYXJnaW46IDEwcHggMCAxMHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAmLXN0eWxlMiBzcGFuLCAuc2VjdGlvbi10aXRsZS5zdHlsZTIgc3BhbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcblxyXG4gICAgJi1zdHlsZTIsIC5zZWN0aW9uLXRpdGxlLnN0eWxlMiB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweCAxNXB4IDVweCAwO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdHlsZTIgLnNlY3Rpb24tdGl0bGUsIC5zZWN0aW9uLXRpdGxlLnN0eWxlMiB7XHJcbiAgICBmb250LXNpemU6IDQycHg7XHJcbiAgICBmb250LXdlaWdodDogbGlnaHRlcjtcclxuICAgIGxpbmUtaGVpZ2h0OiA0NHB4O1xyXG4gICAgbWFyZ2luOiAxMHB4IDAgMjBweDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbi5zdHlsZTIgLnNlY3Rpb24tdGl0bGU6YWZ0ZXIsIC5zZWN0aW9uLXRpdGxlLXN0eWxlMjphZnRlciwgLnNlY3Rpb24tdGl0bGUuc3R5bGUyOmFmdGVyLCAuc2VjdGlvbi10aXRsZS1zdHlsZTI6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZDogJHN1cHBvcnQtY29sb3I7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAyMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDI4cHg7XHJcbiAgICB3aWR0aDogNjAlO1xyXG4gICAgei1pbmRleDogMTtcclxufVxyXG5cclxuLnN0eWxlMiAuc2VjdGlvbi10aXRsZSBzcGFuLCAuc2VjdGlvbi10aXRsZS5zdHlsZTIgc3BhbiB7XHJcbiAgICBjb2xvcjogJHRpdGxlLWNvbG9yO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcbiAgICBwYWRkaW5nOiA1cHggMTVweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uY29udGVudCBhIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG59XHJcblxyXG4uY29udGVudCBibG9ja3F1b3RlIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGJvcmRlci1sZWZ0OiBub25lO1xyXG4gICAgcGFkZGluZzogMHB4IDMwcHg7XHJcbn1cclxuXHJcbi5yZWxhdGVkaW1hZ2Uge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmNvbnRlbnQgdWwsIC5jb250ZW50IG9sLCAudGFiLWNvbnRlbnQgdWwsIC50YWItY29udGVudCBvbCB7XHJcbiAgICBsaXN0LXN0eWxlOiBpbml0aWFsO1xyXG4gICAgbWFyZ2luOiAxZW07XHJcbiAgICBwYWRkaW5nOiAxZW07XHJcbn1cclxuXHJcbi5CYW5uZXJMZWZ0LCAuQmFubmVyUmlnaHQge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5saW5rIGEge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJveC1zZXJ2aWNlcyB7XHJcbiAgICBmb250LXNpemU6IDE1cHg7XHJcblxyXG4gICAgLmljb25ib3gge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1lZGlhLWJvZHkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgIH1cclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgY29sb3I6ICNkOTQxMDA7XHJcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgIC5rZXVybWVyayB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGE6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBjb2xvcjogIzQ0NDtcclxuICAgIH1cclxuXHJcbiAgICAuc2NvcmUge1xyXG4gICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uLy4uL2ltYWdlcy9zaXRlL2tpeW9oLXNtYWxsLnBuZyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBjb2xvcjogIzQ0NDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTNweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxyXG4vLyAtIC0gYWJvdXRcclxuLy8gYWJvdXQgcGFnZSwgc3BlY2lmaWMgcGFnZSBzdHlsaW5nXHJcbi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuLi9nbG9iYWwvX3NraW4uc2Nzc1wiIC8+XHJcbi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuLi9nbG9iYWwvX3NldHRpbmdzLnNjc3NcIiAvPlxyXG5cclxuLy91cmxzXHJcbiR1cmxfYWJvdXQ6IHVybCguLi8uLi9pbWFnZXMvcGFyYWxsYXgvYWJvdXR1cy5qcGcpO1xyXG4kdXJsX2NvbnRhY3Q6IHVybCguLi8uLi9pbWFnZXMvcGFyYWxsYXgvY29udGFjdHVzLmpwZyk7XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCl7XHJcbi5nYWxsZXJ5IFtjbGFzcyo9XCJjb2wtXCJdIHttYXJnaW4tYm90dG9tOjMwcHg7fVxyXG59XHJcblxyXG5cclxuLmlubmVyUGFnZSB7XHJcblx0cGFkZGluZy10b3A6IDMwcHg7XHJcbn1cclxuLnBhcmFsbGF4T2Zmc2V0IHtcclxuXHRtYXJnaW4tdG9wOiAxODBweDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLW91dCAwcztcclxuXHQmLmRvd24ge1xyXG5cdFx0bWFyZ2luLXRvcDogMjhweDtcclxuXHR9XHJcbn1cclxuLnBhcmFsbGF4LWltYWdlLWFib3V0dXMge1xyXG5cdGJhY2tncm91bmQ6ICR1cmxfYWJvdXQgbm8tcmVwZWF0IDUwJSAtODBweCBmaXhlZDtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcblx0LnBhcmFsbGF4LWNvbnRlbnQge1xyXG5cdFx0cGFkZGluZzogMTUwcHggMDtcclxuXHR9XHJcbn1cclxuLnBhcmFsbGF4LWltYWdlLWNvbnRhY3R1cyB7XHJcblx0YmFja2dyb3VuZDogJHVybF9jb250YWN0IG5vLXJlcGVhdCA1MCUgLTgwcHggZml4ZWQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuXHRiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG5cdC5wYXJhbGxheC1jb250ZW50IHtcclxuXHRcdHBhZGRpbmc6IDE1MHB4IDA7XHJcblx0fVxyXG59XHJcbi50aXRsZS1iaWcge1xyXG5cdGZvbnQtc2l6ZTogNDhweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG59XHJcbi5wYWRkaW5nLXRvcC0zMCB7XHJcblx0cGFkZGluZy10b3A6IDMwcHg7XHJcbn1cclxuLmhyMzAge1xyXG5cdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG4uaHI0MCB7XHJcblx0bWFyZ2luLXRvcDogNDBweDtcclxuXHRtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG59XHJcbi5mb3JtLW5ld3NsZXR0ZXIgaW5wdXQge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn0iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBUaGlzIGZpbGUgY29udGFpbnMgc3R5bGVzIHRoYXQgYXJlIHNwZWNpZmljIHRvIHRoZSBjb250YWN0IHBhZ2UuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4ud2hpdGViZyB7XHJcblx0YmFja2dyb3VuZDogJGJvZHktYmctY29sb3I7XHJcbn1cclxuLmZpeGVkQ29udGVudCB7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHRvcDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG4uaDFlcnJvciB7XHJcblx0Zm9udC1zaXplOiA4MHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcbi5lcnI0MDQge1xyXG5cdGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG59XHJcbi53cmFwcGVyLmNvbnRhY3QtdXMge1xyXG5cdGJhY2tncm91bmQ6ICRib2R5LWJnLWNvbG9yO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi10b3A6IDQ1MHB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHR6LWluZGV4OiA0O1xyXG59IiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gVGhpcyBmaWxlIGNvbnRhaW5zIHN0eWxlcyB0aGF0IGFyZSBzcGVjaWZpYyB0byB0aGUgc2hvcHBpbmcgcGFnZXMuc2hhcmUtaWNvbi5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi8vIC0gLSBDYXJ0IERyb3Bkb3duIE1lbnUgU3R5bGVcclxuLm5hdmJhci1jYXJ0IHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcclxuICBib3gtc2hhZG93OiAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSBpbnNldDtcclxuICBtYXgtaGVpZ2h0OiAzNDBweDtcclxuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xyXG4gIHBhZGRpbmctbGVmdDogMTVweDtcclxuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG59XHJcblxyXG4uY29sb3JXaGl0ZSwgLmNvbG9yV2hpdGUgaSB7XHJcbiAgY29sb3I6ICRib2R5LWJnLWNvbG9yICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5wcm9tby0xIHtcclxuICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgZm9udC1mYW1pbHk6IE9zd2FsZCwgSGVsdmV0aWNhIE5ldWU7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICBmb250LXdlaWdodDogbGlnaHRlcjtcclxuICBwYWRkaW5nOiA1cHggMDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAmc3ViIHtcclxuICAgIGJhY2tncm91bmQ6ICNmMmYyZjI7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxufVxyXG5cclxuLmRyb3Bkb3duLWxlZnQgLmRyb3Bkb3duLW1lbnUge1xyXG4gIGxlZnQ6IDA7XHJcbn1cclxuXHJcbi5jYXJ0TWVudSB7XHJcbiAgZmxvYXQ6IGxlZnQ7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgYS5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG4gIC5kcm9wZG93bi1tZW51IHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgfVxyXG4gIGltZyB7XHJcbiAgICB3aWR0aDogNDBweDtcclxuICB9XHJcbiAgaDQge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gIH1cclxuICB0YWJsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIHRyIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNkZGRkZGQ7XHJcbiAgICAgIHRkIHtcclxuICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5taW5pQ2FydFRhYmxlIHtcclxuICBtYXgtaGVpZ2h0OiAzMDBweDtcclxuICB3aWR0aDogMTAwJTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICAubUNTQl9jb250YWluZXIge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4ubWluaUNhcnRQcm9kdWN0VGh1bWIge1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLm1pbmlDYXJ0RGVzY3JpcHRpb24gLnNpemUge1xyXG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XHJcbiAgZm9udC1zaXplOiAxMXB4O1xyXG59XHJcblxyXG4ubWluaUNhcnREZXNjcmlwdGlvbiAucHJpY2Uge1xyXG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcclxuICBmb250LXNpemU6IDE1cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLm1DUy1kYXJrLTIgPiAubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoNzgsIDE5OCwgMTI3LCAwLjcpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4ub2xkLXByaWNlIHtcclxuICBjb2xvcjogIzY2NjY2NjtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxufVxyXG5cclxuLm1pbmlDYXJ0Rm9vdGVyIHtcclxuICBiYWNrZ3JvdW5kOiAjZWNmMGYxO1xyXG4gIHBhZGRpbmc6IDEwcHggMTBweCAxMHB4O1xyXG4gICZJbk1vYmlsZSAuc3VidG90YWwge1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gIH1cclxuICAuc3VidG90YWwge1xyXG4gICAgY29sb3I6ICMwMDAwMDA7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgLm1pbmlDYXJ0Rm9vdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkbWVudS1ob3Zlci1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucHJvZHVjdDpob3ZlciAuYWRkLWZhdiB7XHJcbiAgJjpob3ZlciwgJi5hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgfVxyXG59XHJcblxyXG4vLyAtIC0gQ0FURUdPUlkgUEFHRSBTVEFSVFxyXG5cclxuLy9AZXh0ZW5kLWVsZW1lbnRzXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLm5hdi1zdGFja2VkID5saS5hY3RpdmUgYSwgLm5hdi1zdGFja2VkID5saS5hY3RpdmVcclxuJWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRjb2xvcjogJHRpdGxlLWNvbG9yO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4ubWFpbi1jb250YWluZXIge1xyXG5cdC8vbWluLWhlaWdodDogNTgwcHg7XHJcbn1cclxuLmhlYWRlck9mZnNldCB7XHJcblx0cGFkZGluZy10b3A6IDIyMHB4O1xyXG59XHJcbi5zdWJDYXRlZ29yeUxpc3Qge1xyXG5cdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHQudGh1bWJuYWlsIHtcclxuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb25zKGFsbCAuMnMgZWFzZS1pbik7XHJcbiAgICAgICAgJjpob3ZlciB7Ym9yZGVyOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7fVxyXG5cdH1cclxufVxyXG5cclxuLnBhbmVsLXRpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcblx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0Y29sb3I6ICMzNDQ5NWU7XHJcblx0Zm9udC1zaXplOiAxNXB4O1xyXG59XHJcbi5wYW5lbC1oZWFkaW5nIHtcclxuXHRib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcbi5lcnJvck1lc3NhZ2Uge1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0Y29sb3I6ICRib2R5LWJnLWNvbG9yICFpbXBvcnRhbnQ7XHJcblx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcblx0cGFkZGluZzogMnB4IDVweDtcclxuXHRtYXJnaW46IDJweCAwO1xyXG59XHJcbi5sYWJlbFJvdW5kZWQge1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbn1cclxuLmNvbGxhcHNlV2lsbCB7XHJcblx0aSB7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuXHR9XHJcblx0Lm1pbnVzIHtcclxuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHR9XHJcblx0Ji5wcmVzc2VkIGkge1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuXHR9XHJcblx0Ji5jb2xsYXBzZWQgLm1pbnVzIHtcclxuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuLm1pbnVzIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG4ucGFuZWwtZ3JvdXAgLnBhbmVsIHtcclxuXHRib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcbi5jb2xvci1maWx0ZXIgc21hbGwge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICRzdXBwb3J0LWNvbG9yO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRoZWlnaHQ6IDE0cHg7XHJcblx0bWFyZ2luOiAwIDNweCAwIDFweDtcclxuXHR3aWR0aDogMTRweDtcclxufVxyXG4udHJlZSB7XHJcblx0LmRyb3Bkb3duLW1lbnUge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XHJcblx0XHRmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcblx0XHRib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblx0XHRib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cdD4gbGkuYWN0aXZlID4gYSB7XHJcblx0XHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdFx0Y29sb3I6ICR0aXRsZS1jb2xvcjtcclxuXHRcdCY6aG92ZXIsICY6Zm9jdXMge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdFx0XHRjb2xvcjogJHRpdGxlLWNvbG9yO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQ+IC5hY3RpdmUgPiBhID4gLmJhZGdlIHtcclxuXHRcdGJhY2tncm91bmQ6ICM5OTk5OTk7XHJcblx0XHRjb2xvcjogJGJvZHktYmctY29sb3I7XHJcblx0fVxyXG59XHJcbi5kcm9wZG93bi1tZW51LXRyZWUge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG4ubmF2LXN0YWNrZWQge1xyXG5cdD4gbGkge1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNlZWU7XHJcblx0XHRhIHtcclxuXHRcdFx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRjb2xvcjogJGJvZHktYmctY29sb3I7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCYuYWN0aXZlIHtcclxuXHRcdFx0QGV4dGVuZCAlYWN0aXZlO1xyXG5cdFx0XHRhIHtcclxuXHRcdFx0XHRAZXh0ZW5kICVhY3RpdmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCsgbGkge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQmLnRyZWUgPiBsaSBhOmhvdmVyIHtcclxuXHRcdGNvbG9yOiAkdGl0bGUtY29sb3I7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0fVxyXG59XHJcbi5jYXRlZ29yeS1sZXZlbC0yIHtcclxuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICRzdXBwb3J0LWNvbG9yIWltcG9ydGFudDtcclxuXHRtYXJnaW4tbGVmdDogMTNweDtcclxuXHRsaSB7XHJcblx0XHRtYXJnaW4tdG9wOiAycHg7XHJcblx0XHRhIHtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG5cdFx0XHRwYWRkaW5nOiAycHggMTVweDtcclxuXHRcdFx0Ji5hY3RpdmUge1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0LmRyb3Bkb3duLXRyZWUuYWN0aXZlIC5kcm9wZG93bi10cmVlLWEge1xyXG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcclxuXHR9XHJcblx0Lm9wZW4tdHJlZSAuZHJvcGRvd24tdHJlZS1hIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcbi5wcmljZUZpbHRlckJvZHkge1xyXG5cdC5zcCB7XHJcblx0XHRwYWRkaW5nOiAxMHB4O1xyXG5cdH1cclxuXHQuZm9ybS1pbmxpbmUgLmZvcm0tZ3JvdXAge1xyXG5cdFx0bWF4LXdpZHRoOiAzMCU7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdC5mb3JtLWNvbnRyb2wge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLnN1YkNhdGVnb3J5VGh1bWIge1xyXG5cdGhlaWdodDogODBweDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cdGltZyB7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcbi5jb2xvci1kZXRhaWxzIHtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgJHN1cHBvcnQtY29sb3I7XHJcblx0cGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuLnByb2R1Y3RGaWx0ZXIge1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc3VwcG9ydC1jb2xvcjtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgJHN1cHBvcnQtY29sb3I7XHJcblx0Y2xlYXI6IGJvdGg7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogN3B4O1xyXG5cdHBhZGRpbmctdG9wOiAxMHB4O1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cCB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHRcdG1hcmdpbi10b3A6IDZweDtcclxuXHR9XHJcblx0c2VsZWN0IHtcclxuXHRcdGZvbnQtc2l6ZTogMTNweDtcclxuXHR9XHJcblx0aW5wdXQge1xyXG5cdFx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdH1cclxufVxyXG4uY2hhbmdlLXZpZXcge1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRhIHtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRzdXBwb3J0LWxpZ2h0LWNvbG9yO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHRcdGhlaWdodDogMzRweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAyM3B4O1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDVweDtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRwYWRkaW5nOiA1cHggOHB4O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cztcclxuXHR9XHJcbn1cclxuLnN1YkNhdGVnb3J5VGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRjb2xvcjogIzQ0NDtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcbi5jYXRlZ29yeUZvb3RlciB7XHJcblx0Ym9yZGVyLXRvcDogc29saWQgMXB4ICNlZWU7XHJcblx0cGFkZGluZy10b3A6IDIwcHg7XHJcblx0bWFyZ2luLXRvcDogLTIwcHg7XHJcbn1cclxuLm9wZW4tdHJlZSA+IHtcclxuXHQuZHJvcGRvd24tbWVudSB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcblx0LmRyb3Bkb3duLW1lbnUtdHJlZSB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHR9XHJcbn1cclxuXHJcbi8vIC0gLSBQcm9kdWN0ZGV0YWlsXHJcbi8vQGV4dGVuZC1lbGVtZW50c1xyXG4vL29yaWdpbmFsIHNlbGVjdG9yc1xyXG4vLy5uYXYtdGFicyA+bGkuYWN0aXZlID5hLCAubmF2LXRhYnMgPmxpLmFjdGl2ZSA+YTpob3ZlciwgLm5hdi10YWJzID5saS5hY3RpdmUgPmE6Zm9jdXMsIC5uYXYtdGFicyA+bGk6aG92ZXIgPmFcclxuJXRhYnNfaG92ZXIge1xyXG5cdGNvbG9yOiAkYm9keS1iZy1jb2xvciAhaW1wb3J0YW50O1xyXG5cdGJvcmRlcjogMDtcclxuXHRib3JkZXItcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzLW5vbmU7XHJcbn1cclxuXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLnNwLXRodW1icyBhOmxpbmssIC5zcC10aHVtYnMgYTp2aXNpdGVkXHJcbiVnYWxsZXJ5X3RodW1icyB7XHJcblx0Ym9yZGVyOiAycHggc29saWQgI2VlZWVlZTtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRmbG9hdDogcmlnaHQ7XHJcblx0QGluY2x1ZGUgdHJhbnNpdGlvbnMobWFyZ2luIDAuMnMgZWFzZSAwcyk7XHJcbn1cclxuXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLmNhcnQtYWN0aW9ucyBhLCAuY2FydC1hY3Rpb25zIC5idG4tY2FydCwgLmNhcnQtYWN0aW9ucyAud2lzaGxpc3RcclxuJWNhcnQtYWN0aW9ucyB7XHJcblx0Ym9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cztcclxuXHRjb2xvcjogJGJvZHktYmctY29sb3I7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0Zm9udC1mYW1pbHk6ICdPc3dhbGQnLCAnSGVsdmV0aWNhIE5ldWUnLCAnQXJpYWwnLCAnc2Fucy1zZXJpZic7XHJcblx0Zm9udC1zaXplOiAxOHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG5cdGxpbmUtaGVpZ2h0OiAxZW07XHJcblx0bWFyZ2luOiAwIDIwcHggMCAwO1xyXG5cdHBhZGRpbmc6IDE0cHggMjBweDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbnMoYWxsIDAuMjVzIGVhc2UgMHMpO1xyXG59XHJcblxyXG5cclxuLmNhdGVnb3J5RmlsdGVyIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJHN1cHBvcnQtY29sb3I7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDUwcHg7XHJcblx0Lm1pbmljdF93cmFwcGVyIHtcclxuXHRcdG1heC13aWR0aDogMTgwcHg7XHJcblx0XHRtYXgtaGVpZ2h0OiAyOHB4O1xyXG5cdFx0aGVpZ2h0OiAyOHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRpbnB1dCB7XHJcblx0XHRcdGhlaWdodDogMjhweCAhaW1wb3J0YW50O1xyXG5cdFx0XHRmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHRcdHVsIGxpIHtcclxuXHRcdFx0Zm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5uYXYtdGFicyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHQ+IGxpIHtcclxuXHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHRcdD4gYSB7XHJcblx0XHRcdFx0QGV4dGVuZCAldGFic19ob3ZlcjtcclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdEBleHRlbmQgJXRhYnNfaG92ZXI7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdCY6Zm9jdXMge1xyXG5cdFx0XHRcdFx0QGV4dGVuZCAldGFic19ob3ZlcjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdD4gYSB7XHJcblx0XHRcdGJvcmRlcjogMDtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogJGJhc2UtYm9yZGVyLXJhZGl1cy1ub25lO1xyXG5cdFx0fVxyXG5cdFx0Jjpob3ZlciA+IGEge1xyXG5cdFx0XHRAZXh0ZW5kICV0YWJzX2hvdmVyO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRsaSBhIHtcclxuXHRcdGZvbnQtZmFtaWx5OiAnT3N3YWxkJywgJ3NhbnMtc2VyaWYnO1xyXG5cdFx0Zm9udC1zaXplOiAxM3B4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDIwMDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAycHg7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdH1cclxufVxyXG4uc3Atd3JhcCB7XHJcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblx0ei1pbmRleDogMTA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0YmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcbi5zcC10aHVtYnMge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRyaWdodDogMCFpbXBvcnRhbnQ7XHJcblx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRib3R0b206IDE0MHB4IWltcG9ydGFudDtcclxuXHR3aWR0aDogMTAwcHggIWltcG9ydGFudDtcclxuXHR6LWluZGV4OiA3MDtcclxuXHRhIHtcclxuXHRcdCY6bGluayB7XHJcblx0XHRcdEBleHRlbmQgJWdhbGxlcnlfdGh1bWJzO1xyXG5cdFx0fVxyXG5cdFx0Jjp2aXNpdGVkIHtcclxuXHRcdFx0QGV4dGVuZCAlZ2FsbGVyeV90aHVtYnM7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogNHB4ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0fVxyXG5cdGltZyB7XHJcblx0XHRoZWlnaHQ6IGF1dG8haW1wb3J0YW50O1xyXG5cdFx0d2lkdGg6IDYwcHghaW1wb3J0YW50O1xyXG5cdH1cclxufVxyXG4uc3AtdGh1bWJzIGE6aG92ZXIsXHJcbi5zcC10aHVtYnMgYTphY3RpdmUsXHJcbi5zcC1jdXJyZW50LFxyXG5zcC1jdXJyZW50OnZpc2l0ZWQge1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJHByaW1hcnktY29sb3IgIWltcG9ydGFudDtcclxufVxyXG4uc3AtbGFyZ2Uge1xyXG5cdG1heC13aWR0aDogOTAlO1xyXG5cdGEgaW1nIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG4uc3R5bGUyIHtcclxuXHQuc3AtdGh1bWJzIHtcclxuXHRcdHRvcDogMCAhaW1wb3J0YW50O1xyXG5cdFx0d2lkdGg6IDE4JSAhaW1wb3J0YW50O1xyXG5cdFx0aW1nIHtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcblx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0d2lkdGg6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0XHRhIHtcclxuXHRcdFx0JjpsaW5rIHtcclxuXHRcdFx0XHRmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHRcdCY6dmlzaXRlZCB7XHJcblx0XHRcdFx0ZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQuc3AtbGFyZ2Uge1xyXG5cdFx0bWF4LXdpZHRoOiA4MCUhaW1wb3J0YW50O1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJHN1cHBvcnQtY29sb3I7XHJcblx0fVxyXG59XHJcblxyXG4vLyAtIC0gT3ZlcndyaXRlIG9yaWdpbmFsIHNwLXRodW1iIHN0eWxlc1xyXG4vL29yaWdpbmFsIHNlbGVjdG9yc1xyXG4vLy5zcC10aHVtYnMgYTpsaW5rLCAuc3AtdGh1bWJzIGE6dmlzaXRlZFxyXG4lc3AtdGh1bWJzIHtcclxuXHRib3JkZXI6IDJweCBzb2xpZCAjZWVlO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmbG9hdDogcmlnaHQ7XHJcblx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vLnByb2R1Y3RUaHVtYiAuc3AtdGh1bWJzIGE6bGluaywgLnByb2R1Y3RUaHVtYiAuc3AtdGh1bWJzIGE6dmlzaXRlZFxyXG4lcHJvZHVjdFRodW1iIHtcclxuXHRib3JkZXI6IDJweCBzb2xpZCAjZWVlO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmbG9hdDogbGVmdDtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxufVxyXG5cclxuXHJcbi5zcC13cmFwIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdGxpbmUtaGVpZ2h0OiAwO1xyXG5cdGZvbnQtc2l6ZTogMDtcclxuXHRiYWNrZ3JvdW5kOiAjZWVlO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW46IDAgMjVweCAxNXB4IDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI2U0ZTRlNDtcclxuXHRmbG9hdDogbGVmdDtcclxufVxyXG4uc3AtbGFyZ2Uge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGEge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRpbWcge1xyXG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdGhlaWdodDogYXV0bztcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLnNwLXRodW1icyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dGV4dC1hbGlnbjogbGVmdDtcclxuXHRvdmVyZmxvdzogc2Nyb2xsO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRpbWcge1xyXG5cdFx0d2lkdGg6IDUwcHg7XHJcblx0XHRoZWlnaHQ6IDUwcHg7XHJcblx0fVxyXG5cdGEge1xyXG5cdFx0JjpsaW5rIHtcclxuXHRcdFx0QGV4dGVuZCAlc3AtdGh1bWJzO1xyXG5cdFx0fVxyXG5cdFx0Jjp2aXNpdGVkIHtcclxuXHRcdFx0QGV4dGVuZCAlc3AtdGh1bWJzO1xyXG5cdFx0fVxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICMyMjI7XHJcblx0XHR9XHJcblx0XHQmOmFjdGl2ZSB7XHJcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICMyMjI7XHJcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICMyMjI7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uc3AtY3VycmVudCB7XHJcblx0Ym9yZGVyOiAycHggc29saWQgIzIyMjtcclxuXHRib3JkZXI6IDJweCBzb2xpZCAjMjIyO1xyXG5cdG1hcmdpbi1yaWdodDogMTBweCAhaW1wb3J0YW50O1xyXG59XHJcbi5zcC16b29tIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMDtcclxuXHR0b3A6IDA7XHJcblx0Y3Vyc29yOiB6b29tO1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuLnByb2R1Y3RUaHVtYiB7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGRkZGQ7XHJcblx0cGFkZGluZy10b3A6IDEwcHg7XHJcblx0LnNwLXRodW1icyB7XHJcblx0XHRib3R0b206IGF1dG8gIWltcG9ydGFudDtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHJpZ2h0OiAwICFpbXBvcnRhbnQ7XHJcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuXHRcdHotaW5kZXg6IDcwO1xyXG5cdFx0aW1nIHtcclxuXHRcdFx0d2lkdGg6IDUwcHg7XHJcblx0XHRcdGhlaWdodDogNTBweDtcclxuXHRcdH1cclxuXHRcdGEge1xyXG5cdFx0XHRib3JkZXI6IDJweCBzb2xpZCAjMjIyO1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcclxuXHRcdFx0JjpsaW5rIHtcclxuXHRcdFx0XHRAZXh0ZW5kICVwcm9kdWN0VGh1bWI7XHJcblx0XHRcdH1cclxuXHRcdFx0Jjp2aXNpdGVkIHtcclxuXHRcdFx0XHRAZXh0ZW5kICVwcm9kdWN0VGh1bWI7XHJcblx0XHRcdH1cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgIzIyMjtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHggIWltcG9ydGFudDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uc3R5bGUzIC5zcC1sYXJnZSB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcclxuXHRtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnByb2R1Y3QtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMzBweDtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjI1cHg7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgY29sb3I6ICR0aXRsZS1jb2xvcjtcclxufVxyXG4ucHJvZHVjdC1wcmljZSB7XHJcblx0Zm9udC1zaXplOiAyOHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdGNvbG9yOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuXHQudGF4IHtcclxuXHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0XHRsaW5lLWhlaWdodDogbm9ybWFsO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdGNvbG9yOiAkbWVudS1ob3Zlci1jb2xvcjtcclxuXHR9XHJcbn1cclxuLnByaWNlLXN0YW5kYXJkIHtcclxuXHRjb2xvcjogIzk5OTk5OTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuLnByb2R1Y3QtY29kZSB7XHJcblx0Zm9udC1mYW1pbHk6ICdvc3dhbGQnLCAnSGVsdmV0aWNhIE5ldWUnLCAnQXJpYWwnLCAnc2Fucy1zZXJpZic7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBsaWdodGVyO1xyXG5cdGxldHRlci1zcGFjaW5nOiAxcHg7XHJcblx0bWFyZ2luOiAwIDAgNXB4O1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLm5hdi10YWJzPmxpPmE6aG92ZXIge2JhY2tncm91bmQ6ICNCNUI1QjU7fVxyXG5cclxuLnRhYi1wYW5lIHtcclxuICAgIGZvbnQtc2l6ZToxNHB4O1xyXG5cdC5TcGVjSXRlbU5hbWUge1xyXG5cdFx0Y2xlYXI6IGxlZnQ7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdHdpZHRoOiAzNSU7XHJcblx0fVxyXG5cdC5TcGVjSXRlbVZhbHVlIHtcclxuXHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0d2lkdGg6IDU1JTtcclxuXHRcdG1pbi1oZWlnaHQ6IDE1cHg7XHJcblx0fVxyXG59XHJcbi5wcm9kdWN0LXRhYiB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdGNsZWFyOiBib3RoO1xyXG59XHJcbi5jb2xvci1kZXRhaWxzIHtcclxuXHRtYXJnaW4tdG9wOiAxNHB4O1xyXG59XHJcbi5zd2F0Y2hlcyB7XHJcblx0bWFyZ2luOiAwLjVlbSAwO1xyXG5cdHBhZGRpbmctbGVmdDogMDtcclxuXHRsaSB7XHJcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkYm9keS1iZy1jb2xvcjtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdG1hcmdpbjogMnB4IDFweDtcclxuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICNiMmIyYjI7XHJcblx0XHR9XHJcblx0fVxyXG5cdC5zZWxlY3RlZCB7XHJcblx0XHRib3JkZXI6IDJweCBzb2xpZCAjYjJiMmIyO1xyXG5cdH1cclxuXHRhIHtcclxuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XHJcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGJvZHktYmctY29sb3I7XHJcblx0XHRib3gtc2hhZG93OiAxcHggMXB4IDJweCAjYzVjNWM1O1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRoZWlnaHQ6IDMzcHg7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9ucyhhbGwgMC4yNXMgZWFzZSAwcyk7XHJcblx0XHR3aWR0aDogMzNweDtcclxuXHRcdGltZyB7XHJcblx0XHRcdGhlaWdodDogMjlweDtcclxuXHRcdFx0d2lkdGg6IDI5cHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbi5maWx0ZXJCb3gge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxufVxyXG4uY2FydC1hY3Rpb25zIHtcclxuXHRtYXJnaW4tdG9wOiAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc3VwcG9ydC1jb2xvcjtcclxuXHRwYWRkaW5nLWJvdHRvbTogMTJweDtcclxuXHRjbGVhcjogYm90aDtcclxuXHRhIHtcclxuXHRcdEBleHRlbmQgJWNhcnQtYWN0aW9ucztcclxuXHR9XHJcblx0LmJ0bi1jYXJ0IHtcclxuXHRcdEBleHRlbmQgJWNhcnQtYWN0aW9ucztcclxuXHR9XHJcblx0Lndpc2hsaXN0IHtcclxuXHRcdEBleHRlbmQgJWNhcnQtYWN0aW9ucztcclxuXHRcdGJhY2tncm91bmQ6ICNiNWI1YjUgIWltcG9ydGFudDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAxZW07XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRib3JkZXI6IHNvbGlkIDJweCAjYThhOGE4ICFpbXBvcnRhbnQ7XHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0XHRjb2xvcjogIzY2NjtcclxuXHRcdFx0Ym9yZGVyOiBzb2xpZCAycHggI2E4YThhODtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLmluY2FwcyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0ZmxvYXQ6IGxlZnQ7XHJcblx0Zm9udC1mYW1pbHk6ICdPc3dhbGQnLCAnc2Fucy1zZXJpZic7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDJweDtcclxuXHRtYXJnaW46IDE1cHggMjBweCAwIDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XHJcblx0aSB7XHJcblx0XHRmb250LXNpemU6IDIwcHg7XHJcblx0fVxyXG59XHJcbi5jb2xvci1pbiB7XHJcblx0Y29sb3I6ICMzMTZkMWU7XHJcbn1cclxuLmNvbG9yLW91dCB7XHJcblx0Y29sb3I6IHJlZDtcclxufVxyXG4ucHJvZHVjdC1zaGFyZSB7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRzdXBwb3J0LWNvbG9yO1xyXG5cdGNsZWFyOiBib3RoO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdHBhZGRpbmctdG9wOiAxNHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcbi5yZWNvbW1lbmRlZCB7XHJcblx0Ym9yZGVyLXRvcDogc29saWQgMnB4ICRzdXBwb3J0LWNvbG9yO1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZy10b3A6IDIwcHg7XHJcblx0aDEge1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xyXG5cdH1cclxuXHQuZGVzY3JpcHRpb24ge1xyXG5cdFx0bWluLWhlaWdodDogNzBweDtcclxuXHR9XHJcbn1cclxuI1NpbWlsYXJQcm9kdWN0U2xpZGVyIHtcclxuXHQuaXRlbSB7XHJcblx0XHRwYWRkaW5nOiAzMHB4IDAgMDtcclxuXHRcdG1hcmdpbjogMTBweDtcclxuXHRcdGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuXHRcdGJvcmRlci1yYWRpdXM6ICRiYXNlLWJvcmRlci1yYWRpdXM7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0fVxyXG5cdC5wcm9kdWN0LWltYWdlIGltZyB7XHJcblx0XHRtYXgtaGVpZ2h0OiAyMDBweDtcclxuXHR9XHJcbn1cclxuLnByb2R1Y3QtaW1hZ2Uge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRpbWcge1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG4ubWluaWN0X3dyYXBwZXIgaW5wdXQge1xyXG5cdGJvcmRlcjogMCAhaW1wb3J0YW50O1xyXG59XHJcbi5tYWluLWltYWdlIC5zcC10aHVtYnMgYTpsaW5rIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxufVxyXG5idXR0b24uZmlyc3Qge1xyXG5cdG1hcmdpbi1yaWdodDogMjBweDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcbi5zb2NpYWxJY29uIGEge1xyXG5cdGJhY2tncm91bmQ6ICNiNWI1YjU7XHJcblx0Y29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmb250LXNpemU6IDIycHg7XHJcblx0cGFkZGluZzogNnB4IDNweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHdpZHRoOiAzNXB4O1xyXG5cdEBpbmNsdWRlIHRyYW5zaXRpb25zKGFsbCAwLjE1cyBlYXNlLWluLW91dCAwcyk7XHJcblx0Jjpob3ZlciB7XHJcblx0XHRjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcblx0fVxyXG59XHJcblxyXG4uU2hpcHBpbmcgbGFiZWwsIC5QYXltZW50IGxhYmVsIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBzdHlsZXMgdGhhdCBhcmUgc3BlY2lmaWMgdG8gdGhlIGNhcnQgcGFnZXMuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4vLyAtIC0gQ0FSVCBQQUdFXHJcblxyXG4uZ2x5cGhpY29uLmdseXBoaWNvbi1zaG9wcGluZy1jYXJ0IHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcclxuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xyXG59XHJcblxyXG4ucXVhbml0eVNuaXBlciB7XHJcbiAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgd2lkdGg6IDQwcHg7XHJcbn1cclxuXHJcbi5jYXJ0VGFibGUge1xyXG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNlYmVkZWY7XHJcblxyXG4gICAgLnByaWNlIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXJ0VGFibGVIZWFkZXIge1xyXG4gICAgYmFja2dyb3VuZDogI2ViZWRlZjtcclxuXHJcbiAgICAuQ2FydFByb2R1Y3ROYW1lIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXJ0Rm9vdGVyIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2ViZWRlZjtcclxuICAgIGJhY2tncm91bmQ6ICNlYmVkZWY7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxudHIuQ2FydFByb2R1Y3QgdGQ6bnRoLWNoaWxkKDIpIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbiNjYXJ0LXN1bW1hcnkgdHIgdGQ6bnRoLWNoaWxkKDIpIHtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcblxyXG4uY2FydC1hY3Rpb25zIGEsXHJcbi5jYXJ0LWFjdGlvbnMgLndpc2hsaXN0IHtcclxuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yLWdyYWRpZW50O1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgJG1lbnUtaG92ZXItY29sb3I7XHJcbn1cclxuXHJcbi5jYXJ0LWFjdGlvbnMgYTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIGNvbG9yOiAkdGl0bGUtY29sb3I7XHJcbiAgICBib3JkZXI6IHNvbGlkIDJweCAkcHJpbWFyeS1jb2xvcjtcclxufVxyXG5cclxuLy8gLSAtIFJpZ2h0IHNpZGUgYmFyICAvLz4gLnJpZ2h0U2lkZWJhciAvLz4gaWYgbmVlZGVkXHJcbi5jYXBzIHtcclxuICAgIGJvcmRlci10b3A6IDAgbm9uZTtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgIG1hcmdpbjogMCAwIDE2cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMCAwIDE2cHg7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5yaWdodFNpZGViYXIge1xyXG4gICAgI2NhcnQtc3VtbWFyeSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuXHJcbiAgICAgICAgdHI6Zmlyc3QtY2hpbGQgdGQge1xyXG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uLXRpdGxlLWlubmVyIHtcclxuICAgIH1cclxuXHJcbiAgICAucHJvZHVjdCB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5pdGVtIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHN1cHBvcnQtY29sb3I7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucHJvZHVjdC1pbWFnZSBpbWcge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICB3aWR0aDogOTBweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXJ0TWluaVRhYmxlIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRzdXBwb3J0LWNvbG9yO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxufVxyXG5cclxuLmNhdGVnb3J5TGlzdFBhbmVsIHtcclxuICAgIGJhY2tncm91bmQ6ICNlYmVkZWY7XHJcbn1cclxuXHJcbi5jb250ZW50Qm94IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbi5jb3Vwb25Gb3JtIHtcclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHggMCAwIDNweDtcclxuICAgICAgICBoZWlnaHQ6IDMzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAzcHggM3B4IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5idG4tY2xlYXIge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRiYXNlLWJvcmRlci1yYWRpdXM7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4jdG90YWwtcHJpY2Uge1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbnNwYW4uc3VjY2VzcyB7XHJcbiAgICBjb2xvcjogJHN1Y2Nlc3MtY29sb3I7XHJcbn1cclxuXHJcbnAuc3VjY2VzcyBkaXYuc3VjY2VzcyB7XHJcbiAgICBjb2xvcjogJHN1Y2Nlc3MtY29sb3I7XHJcbn1cclxuXHJcbi8vIC0gLSBDSEVDS09VVCBQQUdFIFNUQVJUXHJcbi5vcmRlclN0ZXAge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBtaW4taGVpZ2h0OiA1NXB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgd2lkdGg6IDIwJTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZmYwZjI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMCAwO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcblxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYmFzZS1ib3JkZXItcmFkaXVzLW5vbmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZSBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMTM2LCAxODMsIDIxMywgMCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG1lbnUtaG92ZXItY29sb3I7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5vcmRlclN0ZXAgbGkuYWN0aXZlIGEge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAkcHJpbWFyeS1jb2xvcjtcclxufVxyXG5cclxuLm9yZGVyU3RlcCBsaS5hY3RpdmUgYTphZnRlciB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3JkZXJTdGVwIGxpIGEge1xyXG4gICAgYmFja2dyb3VuZDogI0VGRjBGMjtcclxufVxyXG5cclxuLlNoaXBwaW5nIC5pcmFkaW9fbGluZS1vcmFuZ2Uge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLnBheW1lbnRCb3gge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgIC5wYW5lbCB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLmNoZWNrb3V0UmV2aWV3IC5DYXJ0UHJvZHVjdFRodW1iIGEgaW1nIHtcclxuICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcbn1cclxuXHJcbi8vIC0gLSBVU0VSIEVORCB8fCBBY2NvdW50Ly8gQWRkcmVzcyAvLyBPcmRlciAvLyAgQ3JlYXRpb25cclxuLy9AZXh0ZW5kLWVsZW1lbnRzXHJcbi8vb3JpZ2luYWwgc2VsZWN0b3JzXHJcbi8vaDIuYmxvY2stdGl0bGUtMiwgLmZvcm1Cb3ggaDMsIC5ibG9jay10aXRsZS0yXHJcbiVibG9ja190aXRsZSB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NlY2VjZTtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbWFyZ2luOiAwIDAgMTVweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMCAwO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuXHJcbi5teUFjY291bnRMaXN0IHtcclxuICAgIGxpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0NHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGh1bWJuYWlsIHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMDtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYmxvY2stdGl0bGUtMiB7XHJcbiAgICBAZXh0ZW5kICVibG9ja190aXRsZTtcclxufVxyXG5cclxuaDIuYmxvY2stdGl0bGUtMiB7XHJcbiAgICBAZXh0ZW5kICVibG9ja190aXRsZTtcclxufVxyXG5cclxuLmZvcm1Cb3ggaDMge1xyXG4gICAgQGV4dGVuZCAlYmxvY2tfdGl0bGU7XHJcbn1cclxuXHJcbi5wYW5lbC1mb290ZXItYWRkcmVzcyAuYnRuIHtcclxuICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG59XHJcblxyXG4vLyAtIC0gQ2FydCAmIFdpc3RoIGxpc3RcclxuLkNhcnRQcm9kdWN0VGh1bWIgYSBpbWcge1xyXG4gICAgd2lkdGg6IDg2cHg7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB3aWR0aDogODZweDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xyXG59XHJcblxyXG50ci5DYXJ0UHJvZHVjdCB7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U3ZTllYztcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgbWluLWhlaWdodDogMTIwcHg7XHJcblxyXG4gICAgdGQge1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcblxyXG4gICAgICAgICYuQ2FydFByb2R1Y3RUaHVtYiB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCAxNSU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLkNhcnREZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcblxyXG4gICAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucHJpY2Uge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5DYXJ0RGVsZXRlIHtcclxuICAgICAgICAgICAgb3JkZXI6IDY7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5DYXJ0UXVhbnRpdHkge1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwcHg7XHJcblxyXG4gICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI3cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5DYXJ0UHJpY2Uge1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwcHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgICAgJi5DYXJ0UHJvZHVjdFRodW1iIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAwO1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDIwJTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5DYXJ0RGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzAlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAucHJvZHVjdC1vcHRpb24ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaDQge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLkNhcnREZWxldGUge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDE7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuQ2FydFF1YW50aXR5IHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAzO1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjAlO1xyXG5cclxuICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk3cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAzMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuQ2FydFByaWNlIHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiA0O1xyXG4gICAgICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICB0aCB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8vIC0gLSBNeWNhcnRcclxuLmNhcnRUYWJsZUhlYWRlciB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi8vUGF5bWVudEluZGljYXRvclxyXG4ub3JkZXJTdGVwIGxpLmZpbmlzaGVkIHtcclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAvKi8vYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCAjM0Q0NjRBOyovXHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwjNzc3OTc4IDAsIzMyM2Q0MiAxMDAlKTtcclxuICAgICAgICAtd2Via2l0LWZpbHRlcjogcHJvZ2lkOmR4aW1hZ2V0cmFuc2Zvcm0ubWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Y29sb3JzdHI9JyRtZW51LWdyYWRpZW50LWNvbG9yLTEnLGVuZGNvbG9yc3RyPSckbWVudS1ncmFkaWVudC1jb2xvci0yJyxncmFkaWVudHR5cGU9MCk7XHJcbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6ZHhpbWFnZXRyYW5zZm9ybS5taWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRjb2xvcnN0cj0nJG1lbnUtZ3JhZGllbnQtY29sb3ItMScsZW5kY29sb3JzdHI9JyRtZW51LWdyYWRpZW50LWNvbG9yLTInLGdyYWRpZW50dHlwZT0wKTtcclxuICAgIH1cclxufVxyXG5cclxuLy9QYXltZW50IGFuZCBzaGlwcGluZ1xyXG4uUGF5bWVudCwgLlNoaXBwaW5nIHtcclxuICAgIC5zaGlwcGluZ09wdGlvbnMge1xyXG5cclxuICAgICAgICAudGh1bWJuYWlsIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDtcclxuICAgICAgICAgICAgcGFkZGluZzogNHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcblxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbSkge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZGVjMjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9JbWFnZXMvSWNvbi9pY29uLWNoZWNrZWQucG5nXCIpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDk3JTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5wYXltZW50IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGltZywgcCB7XHJcbiAgICAgICAgICAgICAgICAvL3BhZGRpbmctbGVmdDogMjNweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwIDA7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzVweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmdpZnR3cmFwRm9ybWF0IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweCAxMHB4IDEwcHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50aHVtYm5haWwuZ2lmdHdyYXAsIC50aHVtYm5haWwuc2VydmljZXBvaW50IHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMzBweDtcclxuXHJcbiAgICAgICAgICAgIC5zZXJ2aWNlLXBvaW50LWxhYmVsIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc20pIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEzNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uU2hpcHBpbmcge1xyXG4gICAgLnRodW1ibmFpbCB7XHJcblxyXG4gICAgICAgIC5naWZ0d3JhcHMge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjY7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5naWZ0d3JhcCB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDZweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcbiAgICAgICAgICAgICAgICAudGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM0NDQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMCAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWQpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5naWZ0d3JhcC5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtaG92ZXItY29sb3I7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDZweCBzb2xpZCAkbWVudS1ob3Zlci1jb2xvcjtcclxuXHJcbiAgICAgICAgICAgICAgICAudGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uUGF5bWVudCB7XHJcbiAgICAucGF5bWVudEl0ZW0ge1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc20pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRodW1ibmFpbCBwLCAudGh1bWJuYWlsIGltZyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uT3JkZXJCZWZvcmVGcmVlU2hpcHBpbmcge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwjNzc3OTc4IDAsIzMyM2Q0MiAxMDAlKTtcclxuICAgIC13ZWJraXQtZmlsdGVyOiBwcm9naWQ6ZHhpbWFnZXRyYW5zZm9ybS5taWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRjb2xvcnN0cj0nJG1lbnUtZ3JhZGllbnQtY29sb3ItMScsZW5kY29sb3JzdHI9JyRtZW51LWdyYWRpZW50LWNvbG9yLTInLGdyYWRpZW50dHlwZT0wKTtcclxuICAgIGZpbHRlcjogcHJvZ2lkOmR4aW1hZ2V0cmFuc2Zvcm0ubWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Y29sb3JzdHI9JyRtZW51LWdyYWRpZW50LWNvbG9yLTEnLGVuZGNvbG9yc3RyPSckbWVudS1ncmFkaWVudC1jb2xvci0yJyxncmFkaWVudHR5cGU9MCk7XHJcbiAgICBwYWRkaW5nOiA4cHg7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICBjb2xvcjogI0ZGRjtcclxuICAgIGhlaWdodDogMTQwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5PcmRlckJlZm9yZUZyZWVTaGlwcGluZyBhIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcclxuICAgIGhlaWdodDogMzlweDtcclxufVxyXG5cclxuLk9yZGVyQmVmb3JlRnJlZVNoaXBwaW5nIGltZyB7XHJcbiAgICB3aWR0aDogMTAwcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDYxcHg7XHJcbiAgICByaWdodDogMTdweDtcclxufVxyXG5cclxuLnBvcHVwLXBvc2l0aW9uIHtcclxuICAgIHdpZHRoOiA4NjBweCAhaW1wb3J0YW50O1xyXG4gICAgdG9wOiA1cHggIWltcG9ydGFudDtcclxufVxyXG5cclxuLmFkZHRvY2FydC1tb2RhbC1ib2R5IHtcclxuICAgIHBhZGRpbmc6IDE1cHggNThweDtcclxufVxyXG5cclxuLmFkZHRvY2FydC1tb2RhbC1ib2R5IC5ibG9jay10aXRsZS0zIHtcclxuICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgIHBhZGRpbmc6IDEycHggMHB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4ub3JkZXItbW9yZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDQ7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgY29sb3I6ICNGRkY7XHJcbiAgICBmb250LXNpemU6IDE5LjVweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XHJcbn1cclxuXHJcbi5vcmRlci1tb3JlIHNwYW4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcclxufVxyXG5cclxuLm9yZGVyLW1vcmUgc3BhbjpmaXJzdC1jaGlsZCB7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLm9yZGVyLW1vcmUgc3BhbjpsYXN0LWNoaWxkIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG5cclxuLmdpZnQtY2VydGlmaWNhdGUtdGlwLWFycm93IHtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgIGJvcmRlci13aWR0aDogNTNweCAxMTVweCAwIDExNXB4O1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjNDQ0IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG4gICAgbGVmdDogMTVweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICB0b3A6IDE1M3B4O1xyXG59XHJcblxyXG4ucmVsYXRlZC1wcm9kdWN0cyAubGVmdCB7XHJcbiAgICB3aWR0aDogMjMwcHg7XHJcbiAgICBoZWlnaHQ6IDMyNXB4O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdkZWMyO1xyXG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5yZWxhdGVkLXByb2R1Y3RzIC5sZWZ0IC5wcm9kdWN0OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6ICNmN2RlYzI7XHJcbn1cclxuXHJcbi5yZWxhdGVkLXByb2R1Y3RzIC5sZWZ0IGltZyB7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgd2lkdGg6IDE4NXB4O1xyXG59XHJcblxyXG4ucmVsYXRlZC1wcm9kdWN0cyAubGVmdCAuYWN0aW9uLWNvbnRyb2wgLmJ0bi1wcmltYXJ5IHtcclxuICAgIGhlaWdodDogNTBweDtcclxuICAgIHBhZGRpbmc6IDE3cHg7XHJcbiAgICB3aWR0aDogMTQ1cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbWVudS1ob3Zlci1jb2xvcjtcclxufVxyXG5cclxuLnJlbGF0ZWQtcHJvZHVjdHMgLnJpZ2h0IHtcclxuICAgIHdpZHRoOiA1MTJweDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4ucmVsYXRlZC1wcm9kdWN0cyAucmlnaHQtZnVsbCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4ucmVsYXRlZC1wcm9kdWN0cyAucmlnaHQgLmJsb2NrLXRpdGxlLTIge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAtMzVweDtcclxuICAgIGxlZnQ6IDZweDtcclxuICAgIGJvcmRlcjogMDtcclxufVxyXG5cclxuLnJlbGF0ZWQtcHJvZHVjdHMgLmdseXBoaWNvbi5nbHlwaGljb24tc2hvcHBpbmctY2FydCB7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcclxufVxyXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBXaGVuIGhhdmluZyBzZXZlcmFsIHRoZW1lcywgdGhpcyBmaWxlIGNvbnRhaW5zIGV2ZXJ5dGhpbmcgcmVsYXRlZCB0byB0aGVcclxuLy8gZGVmYXVsdCBvbmUuXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiIsIu+7v0BpbXBvcnQgJy4uL2Fic3RyYWN0cy9fbWl4aW5zLnNjc3MnO1xyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXHJcbi8vIC0gLSBiYXNlXHJcbi8vIHByb2plY3QgZGVmYXVsdHMgZm9yIGJhc2UgZWxlbWVudHMgLSBoMS1oNiwgcCwgYSwgZXRjLlxyXG4vLy8gPHJlZmVyZW5jZSBwYXRoPVwiX3NraW4uc2Nzc1wiIC8+XHJcbi8vLyA8cmVmZXJlbmNlIHBhdGg9XCJfc2V0dGluZ3Muc2Nzc1wiIC8+XHJcblxyXG5AbWVkaWEobWluLXdpZHRoOiAxODAwcHgpIHtcclxuICAgIC5iYW5uZXIge1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZXItY29udGVudCB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNTAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlciB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNTAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlci12MiB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogNTAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlckltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDEyMjRweCkge1xyXG4gICAgaW5wdXQucXVhbml0eVNuaXBlciB7XHJcbiAgICAgICAgd2lkdGg6IDM1cHggIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgICAubmF2YmFyLnN0dWNrIC5uYXZiYXItdG9wIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnNvY2lhbCBsaSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDZweCAwIDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcnRNZW51LnN0YXRpYy1zZWFyY2gtYm94IGEuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoLWJveC5zdGF0aWMtc2VhcmNoIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgIG1heC13aWR0aDogMTA0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDk3OXB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgIC5jYXJ0UmVzcG9ucyB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuY2FydE1lbnUgYS5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICAgIGhlaWdodDogNTBweDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDogOTc5cHgpIHtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5MDBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXRlZ29yeS10b3Age1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlclRleHQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYlO1xyXG5cclxuICAgICAgICAuaW5uZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLndoaXRlIHtcclxuICAgICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40NzE7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDMucHJpY2Uge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlclRleHRGdWxsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNSU7XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI3BhZ2VyMiB7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZXJDb250cm9sIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAycHg7XHJcbiAgICAgICAgdG9wOiA0NSU7XHJcblxyXG4gICAgICAgIC5mYS0zeCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdWJDYXRlZ29yeVRodW1iIGltZyB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmhpZGRlbi14cyAuY2FydE1lbnUgLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDlweDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLXZlcnNpb24tMiAuc2xpZGVyVGV4dCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTAlO1xyXG4gICAgfVxyXG5cclxuICAgIGgxLnhsYXJnZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZXJJbmZvIC5idG4tbGcge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40NzE7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgI3BhZ2VyIGEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiA3NjdweCkgYW5kIChtaW4td2lkdGg6IDApIHtcclxuICAgIC5oaWRkZW4teHMge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIC5iYW5uZXIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDExNnB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYWRlck9mZnNldCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDE0NXB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnBhcmFsbGF4T2Zmc2V0IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA5NXB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhdGVnb3J5LXRvcCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICAubmF2YmFyLWJyYW5kIHtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDkwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA2NXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDY1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5taW5pQ2FydEZvb3RlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSByZXBlYXQgc2Nyb2xsIDAgMCByZ2JhKDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvciAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2FydFJlc3BvbnMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIH1cclxuXHJcbiAgICAubmF2YmFyLWNhcnQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cclxuICAgICAgICAmLmluIC5tQ1MtZGFyay0yID4gLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWluaUNhcnRQcm9kdWN0IHtcclxuICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgY29sb3I6ICRib2R5LWJnLWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNpemUge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucHJpY2Uge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kcm9wZG93bi1oZWFkZXIge1xyXG4gICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoSW5wdXRCb3gge1xyXG4gICAgICAgIG1heC13aWR0aDogODAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZXJUZXh0RnVsbCB7XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5uZXIuZGFyayB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGVyVGV4dCB7XHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmlubmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDMucHJpY2Uge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWxlZnQteHMge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAucHMtbmF2IHtcclxuICAgICAgICB0b3A6IDM0JTtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdGF0aWMtc2VhcmNoLm5hdmJhci1mb3JtYm94IHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIC5uYXZiYXItZm9ybSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoLWJveC5zdGF0aWMtc2VhcmNoIHtcclxuICAgICAgICAuaW5wdXQtZ3JvdXAge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvcm0tY29udHJvbCB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudXNlck1lbnUgbGkgYSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDNweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgfVxyXG5cclxuICAgIC5waG9uZS1udW1iZXIgaS5nbHlwaGljb24tcGhvbmUtYWx0IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcnRNZW51IHRhYmxlIHRyIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4gICAgfVxyXG5cclxuICAgIC5tZWdhbWVudS1jb250ZW50IHVsIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdmJhci1uYXYgLmRyb3Bkb3duIHtcclxuICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tZWdhbWVudSAuZHJvcGRvd24ge1xyXG4gICAgICAgICYubWVnYW1lbnUtODB3aWR0aCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWVnYW1lbnUtNTB3aWR0aCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubWVnYW1lbnUtNDB3aWR0aCAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnBhcmFsbGF4aW1nLmlzbW9iaWxlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgaDEueGxhcmdlIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZXJJbmZvIC5idG4tbGcge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZmVhdHVyZUltZyBhIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5uYXZiYXItdG9wIGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBwYWRkaW5nOiAzcHggMCAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiA1ODBweCkge1xyXG4gICAgLnhzM1Jlc3BvbnNlIHtcclxuICAgICAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlclRleHRGdWxsIHtcclxuICAgICAgICBjb2xvcjogJGJvZHktYmctY29sb3I7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTIlO1xyXG4gICAgfVxyXG5cclxuICAgIC5wYXJhbGxheC1jb250ZW50IHtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYm9keS1iZy1jb2xvcjtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zcC10aHVtYnMge1xyXG4gICAgICAgIGJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICNwYWdlcjIge1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGVyQ29udHJvbCB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMnB4O1xyXG4gICAgICAgIHRvcDogNDUlO1xyXG5cclxuICAgICAgICAuZmEtM3gge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnBzLW5hdiB7XHJcbiAgICAgICAgdG9wOiAyOCU7XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3R5bGUyIC5zZWN0aW9uLXRpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTAlO1xyXG4gICAgICAgICAgICB0b3A6IDMycHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uLXRpdGxlLnN0eWxlMiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwJTtcclxuICAgICAgICAgICAgdG9wOiAzMnB4O1xyXG4gICAgICAgICAgICB3aWR0aDogODAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VjdGlvbi10aXRsZS1zdHlsZTI6YWZ0ZXIge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMCU7XHJcbiAgICAgICAgdG9wOiAzMnB4O1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICB9XHJcblxyXG4gICAgLm9yZGVyU3RlcCBsaSBhIHNwYW4ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2F0ZWdvcnlGb290ZXIgLnBhZ2luYXRpb24ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLkNhcnRQcm9kdWN0VGh1bWIgYSBpbWcge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgICNwYWdlciBhIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIH1cclxuXHJcbiAgICAjaW1hZ2VTaG93Q2FzZSAucHJvZHVjdC1zbGlkZSBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcbiAgICBoMSB7XHJcbiAgICAgICAgJi54bGFyZ2Uge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi54MmxhcmdlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGl0bGUtYmlnIHtcclxuICAgICAgICBmb250LXNpemU6IDM4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlclRleHQge1xyXG4gICAgICAgIGgxIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5uZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMy5wcmljZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNhcnRUYWJsZUhlYWRlciB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLkNhcnREZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgLnByaWNlIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDQgYSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY2FydC1hY3Rpb25zIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAud2lzaGxpc3Qge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGlzdC1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb2wteHMtbWluaS02IHtcclxuICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb2wteHMtbWluLTEyIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAjcGFnZXIgYSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZXJUZXh0RnVsbCBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlckluZm8gLmJ0bi1sZyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnN1cHBvcnRMaSBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5DYXJ0UHJvZHVjdCAuZGVsZXRlIGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5DYXJ0UHJvZHVjdFRodW1iIGEgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDYwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoLWJveCAuaW5wdXQtZ3JvdXAge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdmJhci1icmFuZC53aW5kb3dzcGhvbmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDY1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mZWF0dXJlZFBvc3RDb250YWluZXIuZ2xvYmFsUGFkZGluZyB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmJyZWFkY3J1bWIgPiBsaSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5pdGVtLmxpc3QtdmlldyB7XHJcbiAgICAgICAgaDQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wcmljZSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hY3Rpb24tY29udHJvbCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhvbWUtaW50cm8gaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBmb250LXdlaWdodDogMjAwO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnByb2R1Y3QtdGFie1xyXG5cclxuICAgICAgICAubmF2LXRhYnMgPiBsaS5hY3RpdmUgLCAubmF2LXRhYnMgPiBsaSB7ZGlzcGxheTpibG9jazsgd2lkdGg6MTAwJTt9XHJcbiAgICAgICAgLm5hdiA+IGxpID4gYSB7cGFkZGluZzogNXB4IDE1cHg7fVxyXG4gICAgfVxyXG5cclxuICAgIC5idG4tZGlzY292ZXIge3BhZGRpbmc6IDEwcHggMzVweDt9XHJcbn1cclxuXHJcbkBtZWRpYShtYXgtd2lkdGg6IDQwMHB4KSB7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBtaW4td2lkdGg6IDMxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJ0Rm9vdGVyIHtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuXHJcbiAgICAgICAgLmJveC1mb290ZXIgZGl2IHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5hdmJhci1oZWFkZXIge1xyXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICBcclxuICAgIH1cclxuXHJcbiAgICAuY29sLXhzLW1pbmktNiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgI3BhZ2VyIGEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAvKi5uYXZiYXItYnJhbmQgaW1nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xyXG4gICAgfSovXHJcblxyXG4gICAgLnhzUmVzcG9uc2UgLml0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnhzM1Jlc3BvbnNlIC5pdGVtIHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5jaGVja291dFJldmlldyB0aCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEobWF4LXdpZHRoOiAzMjBweCkge1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBtYXgtd2lkdGg6IDMyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmJhbm5lciB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBtYXgtd2lkdGg6IDMyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbiIsIu+7vy5zcC10aHVtYnMgLnZpZGVvYm94LXdyYXBwZXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnNwLWxhcmdlIGltZzpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4udmlkZW9ib3gge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTElO1xyXG5cclxuICAgIGlmcmFtZSwgb2JqZWN0LCBlbWJlZCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgIH1cclxufSIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vIFRoaXMgZmlsZSBjb250YWlucyBzdHlsZXMgdGhhdCBhcmUgc3BlY2lmaWMgdG8gdGhlIGJsb2cgcGFnZS5cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbi5hamF4UHJvZ3Jlc3Mge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgei1pbmRleDogOTk5OTk5OTtcclxuICAgIHRvcDogNDUlO1xyXG4gICAgbGVmdDogNTAlO1xyXG59XHJcblxyXG4uZG4ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLk1haW5EaXYge1xyXG4gICAgd2lkdGg6IDk3NnB4O1xyXG4gICAgbWluLWhlaWdodDogMzUwcHg7XHJcbiAgICBwYWRkaW5nOiAxNHB4IDBweCA0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4uTWFpbkRpdkxlZnQge1xyXG4gICAgd2lkdGg6IDE5MnB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuXHJcbi5NYWluRGl2Q2VudGVyIHtcclxuICAgIHdpZHRoOiA3NzBweDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG59XHJcblxyXG4uTWFpbkRpdlJpZ2h0IHtcclxuICAgIHdpZHRoOiAxOTJweDtcclxuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuXHJcbi5DbGVhciB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIGhlaWdodDogMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgIGZvbnQtc2l6ZTogMHB4O1xyXG59XHJcblxyXG5zZWxlY3Qge1xyXG4gICAgY29sb3I6ICM2NjY7XHJcbiAgICBmb250LXNpemU6IDkwJTtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICM2NjY7XHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNjY2M7XHJcbn1cclxuXHJcbmg0IHtcclxuICAgIGZvbnQtc2l6ZTogMTIwJTtcclxuICAgIGNvbG9yOiAjRkY5RDAwO1xyXG59XHJcblxyXG4uQ29tbW9uT3B0aW9uSXRlbVZhbGlkYXRvciB7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG4uQ29tbW9uVGV4dEJveCB7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjY2NjO1xyXG59XHJcblxyXG4uQ29tbW9uUGFnZUlubmVyVGl0bGUge1xyXG4gICAgY29sb3I6ICM1NTU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoSW1hZ2VzL0Rlc2lnbi9CdWxsZXQvVGl0bGVCdWxsZXQuZ2lmKSBuby1yZXBlYXQgbGVmdCAycHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbn1cclxuXHJcbi5Db21tb25WYWxpZGF0ZVRleHQge1xyXG4gICAgY29sb3I6IFJlZDtcclxufVxyXG5cclxuLkNvbW1vbkh5cGVyTGluayB7XHJcbiAgICBjb2xvcjogIzU1NTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggI2NjYztcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogI0ZGOUQwMDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uQ29tbW9uVGV4dEVkaXRvclBhbmVsIHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5hamF4X19jYWxlbmRhcl9jb250YWluZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNjY2M7XHJcbn1cclxuXHJcbnNwYW4uQ29tbW9uQXN0ZXJpc2sge1xyXG4gICAgZm9udC1zaXplOiA5MCU7XHJcbiAgICBjb2xvcjogUmVkO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxufVxyXG5cclxuLkNvbW1vblZhbGlkYXRvclRleHQge1xyXG4gICAgY29sb3I6IFJlZDtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgIH1cclxufVxyXG5cclxuLkNvbW1vblZhbGlkYXRlRGl2IHtcclxuICAgIHdpZHRoOiAxNDBweDtcclxuICAgIGJvcmRlci10b3A6IGRvdHRlZDtcclxuICAgIGJvcmRlci13aWR0aDogMXB4O1xyXG4gICAgY29sb3I6ICNGRjAwMDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XHJcbn1cclxuXHJcbi5Db21tb25EaXNwbGF5TWVzc2FnZURpdiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xyXG4gICAgYm9yZGVyOiAxcHggZGFzaGVkICNGRkREREQ7XHJcbiAgICBjb2xvcjogQmx1ZTtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTNweDtcclxuICAgIHBhZGRpbmctbGVmdDogMjNweDtcclxufVxyXG5cclxuLkNvbW1vblZhbGlkYXRlTG9uZyB7XHJcbiAgICB3aWR0aDogNzM2cHg7XHJcbn1cclxuXHJcbi5Db21tb25FcnJvck1lc3NhZ2VEaXYge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcclxuICAgIGJvcmRlcjogMXB4IGRhc2hlZCAjRkZEREREO1xyXG4gICAgY29sb3I6IFJlZDtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTNweDtcclxuICAgIHBhZGRpbmctbGVmdDogMjNweDtcclxufVxyXG5cclxuLkJ0blN0eWxlMyB7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjY2NjO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICAgIGNvbG9yOiAjOTk5O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGZvbnQ6IGJvbGQgMTFweC8yMHB4IEFyaWFsO1xyXG4gICAgcGFkZGluZzogMCA3cHg7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qQ29tbW9uIEVuZCovXHJcbi8qQmxvZ01hc3RlciBCZWdpbiovXHJcblxyXG4uQmxvZ01hc3RlciB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4uQmxvZ01hc3RlclRvcCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHVybChJbWFnZXMvRGVzaWduL0JhY2tncm91bmQvQmFja2dyb3VuZFRvcC5qcGcpIHJlcGVhdC14IGxlZnQgdG9wO1xyXG59XHJcblxyXG4uQmxvZ01hc3Rlck1pZGRsZSB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAuT3V0ZXJMZWZ0IHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0byAxNXB4O1xyXG4gICAgICAgIHdpZHRoOiA5NzZweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA1cHggNXB4O1xyXG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICNkZGQ7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgOHB4IDEwcHggMCAjQjZDMEM0O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDEwcHggMCAjQjZDMEM0O1xyXG4gICAgfVxyXG59XHJcblxyXG4uQmxvZ01hc3RlckJvdHRvbSB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKkJsb2dNYXN0ZXIgRW5kKi9cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLypMYXlvdXRIZWFkZXIgQmVnaW4qL1xyXG5cclxuLkxheW91dEhlYWRlciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAuaGVhZGVyLWNvbnRhaW5lci10b3Age1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMjM2Mzk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYWRlci10b3Age1xyXG4gICAgICAgIHdpZHRoOiA5ODRweDtcclxuICAgICAgICBoZWlnaHQ6IDM4cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5oZWFkZXItY29udGFpbmVyLWJvdHRvbSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIF9iYWNrZ3JvdW5kOiAjZmZmIHVybChJbWFnZXMvRGVzaWduL0JhY2tncm91bmQvaGVhZGVyLWNvbnRhaW5lci1ib3R0b20uanBnKSByZXBlYXQteCBsZWZ0IGJvdHRvbTtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjQzFDNkM5O1xyXG4gICAgfVxyXG5cclxuICAgIC5oZWFkZXItYm90dG9tIHtcclxuICAgICAgICB3aWR0aDogOTg0cHg7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWJvdHRvbTEge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgIHdpZHRoOiA5NzZweDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2RkZDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA4cHggMTBweCAwICNCNkMwQzQ7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTBweCAwICNCNkMwQzQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZWFkZXItYm90dG9tMSB7XHJcbiAgICAubGVmdCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRvcDogMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5yaWdodCB7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tZW51LWNvbnRhaW5lciB7XHJcbiAgICB3aWR0aDogOTY2cHg7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDVweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgLXBpZS1ib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICBib3JkZXItY29sb3I6ICM2NjY2NjggIzY2NjY2OCAjZmY2OTAwICM2NjY2Njg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHggNnB4IDAgMDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMnB4O1xyXG4gICAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlBL1BnbzhjM1puSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZDJsa2RHZzlJakV3TUNVaUlHaGxhV2RvZEQwaU1UQXdKU0lnZG1sbGQwSnZlRDBpTUNBd0lERWdNU0lnY0hKbGMyVnlkbVZCYzNCbFkzUlNZWFJwYnowaWJtOXVaU0krQ2lBZ1BHeHBibVZoY2tkeVlXUnBaVzUwSUdsa1BTSm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJakFsSWlCNU1UMGlNQ1VpSUhneVBTSXdKU0lnZVRJOUlqRXdNQ1VpUGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJd0pTSWdjM1J2Y0MxamIyeHZjajBpSXpjM056azNPQ0lnYzNSdmNDMXZjR0ZqYVhSNVBTSXhJaTgrQ2lBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpFd01DVWlJSE4wYjNBdFkyOXNiM0k5SWlNek1qTmtORElpSUhOMGIzQXRiM0JoWTJsMGVUMGlNU0l2UGdvZ0lEd3ZiR2x1WldGeVIzSmhaR2xsYm5RK0NpQWdQSEpsWTNRZ2VEMGlNQ0lnZVQwaU1DSWdkMmxrZEdnOUlqRWlJR2hsYVdkb2REMGlNU0lnWm1sc2JEMGlkWEpzS0NObmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0tTSWdMejRLUEM5emRtYyspO1xyXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgLyogRkYzLjYrICovXHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjNzc3OTc4KSwgY29sb3Itc3RvcCgxMDAlLCAjMzIzZDQyKSk7XHJcbiAgICAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzc3Nzk3OCAwJSwgIzMyM2Q0MiAxMDAlKTtcclxuICAgIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXHJcbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgLyogT3BlcmEgMTEuMTArICovXHJcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzc3Nzk3OCAwJSwgIzMyM2Q0MiAxMDAlKTtcclxuICAgIC8qIElFMTArICovXHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgLyogVzNDICovXHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzc3Nzk3OCcsIGVuZENvbG9yc3RyPScjMzIzZDQyJyxHcmFkaWVudFR5cGU9MCApO1xyXG4gICAgLyogSUU2LTggKi9cclxufVxyXG5cclxuLm1lbnUtY29udGFpbmVyLWxlZnQsIC5tZW51LWNvbnRhaW5lci1yaWdodCB7XHJcbn1cclxuXHJcbi8qTGF5b3V0SGVhZGVyIEVuZCovXHJcbi8qTGF5b3V0Rm9vdGVyIEJlZ2luKi9cclxuXHJcbi5MYXlvdXRGb290ZXIge1xyXG4gICAgd2lkdGg6IDkwMHB4O1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgcGFkZGluZzogMTBweCAwcHg7XHJcbiAgICBkaXNwbGF5OiB0YWJsZTtcclxufVxyXG5cclxuLkZvb3Rlckxpbmsge1xyXG4gICAgY2xlYXI6IGxlZnQ7XHJcbn1cclxuXHJcbi5MYXlvdXRGb290ZXIge1xyXG4gICAgLkxpbmsge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIGNvbG9yOiAjQkJCO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjQkJCO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmQ3OTEwO1xyXG4gICAgICAgICAgICAgICAgLyojQ0QwRDAxOyovXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLkNvcHlyaWdodCB7XHJcbiAgICAgICAgY29sb3I6ICM4ODg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG5cclxuICAgIC5Qb3dlcmJ5IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBjbGVhcjogbGVmdDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogI0ZGRkZGRjtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3BhbkxlZnQge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgfVxyXG5cclxuICAgIC5zcGFuUmlnaHQge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxufVxyXG5cclxuLypGb290ZXIgRW5kKi9cclxuLypMYXlvdXRGb290ZXIgRW5kKi9cclxuXHJcbi8qSGVhZGVyTWVudVtDb21tb25dIEJlZ2luKi9cclxuXHJcbi5IZWFkZXJNZW51IHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG59XHJcblxyXG4uSGVhZGVyTWVudVJpZ2h0IHVsIHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDBweDtcclxuICAgIHBhZGRpbmc6IDBweDtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgIGEuSHlwZXJMaW5rIHtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLypIZWFkZXJNZW51W0NvbW1vbl0gRW5kKi9cclxuLypIZWFkZXJNZW51W1RvcF0gQmVnaW4qL1xyXG5cclxuLm1lbnUtY29udGFpbmVyIHtcclxuICAgIC5IZWFkZXJNZW51TGVmdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5IZWFkZXJNZW51UmlnaHQge1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcclxuXHJcbiAgICAgICAgICAgIGxpIGEuSHlwZXJMaW5rIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogc29saWQgMXB4ICM1NTU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAxcHggIzU1NTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjN2Q3ZTdkO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQS9QZ284YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2QybGtkR2c5SWpFd01DVWlJR2hsYVdkb2REMGlNVEF3SlNJZ2RtbGxkMEp2ZUQwaU1DQXdJREVnTVNJZ2NISmxjMlZ5ZG1WQmMzQmxZM1JTWVhScGJ6MGlibTl1WlNJK0NpQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrSWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpBbElpQjVNVDBpTUNVaUlIZ3lQU0l3SlNJZ2VUSTlJakV3TUNVaVBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXdKU0lnYzNSdmNDMWpiMnh2Y2owaUl6ZGtOMlUzWkNJZ2MzUnZjQzF2Y0dGamFYUjVQU0l4SWk4K0NpQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqRXdNQ1VpSUhOMGIzQXRZMjlzYjNJOUlpTXdaVEJsTUdVaUlITjBiM0F0YjNCaFkybDBlVDBpTVNJdlBnb2dJRHd2YkdsdVpXRnlSM0poWkdsbGJuUStDaUFnUEhKbFkzUWdlRDBpTUNJZ2VUMGlNQ0lnZDJsa2RHZzlJakVpSUdobGFXZG9kRDBpTVNJZ1ptbHNiRDBpZFhKc0tDTm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtLU0lnTHo0S1BDOXpkbWMrKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICM3ZDdlN2QgMCUsICMwZTBlMGUgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSwgIzdkN2U3ZCksIGNvbG9yLXN0b3AoMTAwJSwgIzBlMGUwZSkpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzdkN2U3ZCAwJSwgIzBlMGUwZSAxMDAlKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjN2Q3ZTdkIDAlLCAjMGUwZTBlIDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjN2Q3ZTdkIDAlLCAjMGUwZTBlIDEwMCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM3ZDdlN2QgMCUsICMwZTBlMGUgMTAwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyM3ZDdlN2QnLCBlbmRDb2xvcnN0cj0nIzBlMGUwZScsR3JhZGllbnRUeXBlPTAgKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLkhlYWRlck1lbnUgdWwgbGkgYS5Db250ZW50TWVudU5hdkxpc3RTdGF0aWNNZW51SXRlbTpob3ZlciB7XHJcbiAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDFweCAjNTU1O1xyXG4gICAgYmFja2dyb3VuZDogIzdkN2U3ZDtcclxuICAgIGJhY2tncm91bmQ6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQS9QZ284YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2QybGtkR2c5SWpFd01DVWlJR2hsYVdkb2REMGlNVEF3SlNJZ2RtbGxkMEp2ZUQwaU1DQXdJREVnTVNJZ2NISmxjMlZ5ZG1WQmMzQmxZM1JTWVhScGJ6MGlibTl1WlNJK0NpQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrSWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpBbElpQjVNVDBpTUNVaUlIZ3lQU0l3SlNJZ2VUSTlJakV3TUNVaVBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXdKU0lnYzNSdmNDMWpiMnh2Y2owaUl6ZGtOMlUzWkNJZ2MzUnZjQzF2Y0dGamFYUjVQU0l4SWk4K0NpQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqRXdNQ1VpSUhOMGIzQXRZMjlzYjNJOUlpTXdaVEJsTUdVaUlITjBiM0F0YjNCaFkybDBlVDBpTVNJdlBnb2dJRHd2YkdsdVpXRnlSM0poWkdsbGJuUStDaUFnUEhKbFkzUWdlRDBpTUNJZ2VUMGlNQ0lnZDJsa2RHZzlJakVpSUdobGFXZG9kRDBpTVNJZ1ptbHNiRDBpZFhKc0tDTm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtLU0lnTHo0S1BDOXpkbWMrKTtcclxuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzdkN2U3ZCAwJSwgIzBlMGUwZSAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICM3ZDdlN2QpLCBjb2xvci1zdG9wKDEwMCUsICMwZTBlMGUpKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzdkN2U3ZCAwJSwgIzBlMGUwZSAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICM3ZDdlN2QgMCUsICMwZTBlMGUgMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzdkN2U3ZCAwJSwgIzBlMGUwZSAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM3ZDdlN2QgMCUsICMwZTBlMGUgMTAwJSk7XHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzdkN2U3ZCcsIGVuZENvbG9yc3RyPScjMGUwZTBlJyxHcmFkaWVudFR5cGU9MCApO1xyXG59XHJcblxyXG4vKkhlYWRlck1lbnVbVG9wXSBFbmQqL1xyXG5cclxuLypIZWFkZXJMb2dpbiBCZWdpbiovXHJcblxyXG4uSGVhZGVyTG9naW4ge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgY2xlYXI6IHJpZ2h0O1xyXG4gICAgbWFyZ2luOiA2MHB4IDBweCBhdXRvIGF1dG87XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjY2NjO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBjb2xvcjogIzMzMztcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmY5ZDAwO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICNmZjlkMDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uSGVhZGVyTG9naW5Mb2dpbk5hbWUxIHtcclxuICAgIHBhZGRpbmc6IDAgMnB4O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbn1cclxuXHJcbi5IZWFkZXJMb2dpbkxvZ2luTmFtZTIge1xyXG4gICAgcGFkZGluZzogMCA2cHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGNvbG9yOiAjZmY2OTAwO1xyXG59XHJcblxyXG4uSGVhZGVyTG9naW5Mb2dpbk5hbWUxUmVnaXMge1xyXG4gICAgcGFkZGluZzogMCAycHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxufVxyXG5cclxuLkhlYWRlckxvZ2luTG9naW5OYW1lIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG59XHJcblxyXG4uSGVhZGVyTG9naW4ge1xyXG4gICAgLk5hbWVMYWJlbCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgYm90dG9tO1xyXG4gICAgfVxyXG5cclxuICAgIC5OYW1lU3RhdHVzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uSGVhZGVyTG9naW5XaXNobGlzdCB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxufVxyXG5cclxuLypIZWFkZXJMb2dpbiBFbmQqL1xyXG5cclxuLyogU3RvcmVCYW5uZXIgQmVnaW4qL1xyXG5cclxuLlN0b3JlQmFubmVyIHtcclxuICAgIHdpZHRoOiA1NzhweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgd2lkdGg6IDU3OHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDU3OHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB3aWR0aDogNTc4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlN0b3JlQmFubmVyIEVuZCovXHJcblxyXG4vKlNlYXJjaCBCZWdpbiovXHJcblxyXG4uU2VhcmNoIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIG1hcmdpbi1yaWdodDogOHB4O1xyXG4gICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgd2lkdGg6IDI0MHB4O1xyXG59XHJcblxyXG4uU2VhcmNoVG9wIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5TZWFyY2hMZWZ0IHtcclxufVxyXG5cclxuLlNlYXJjaFJpZ2h0IHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNjY2NjY2M7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgcGFkZGluZzogMnB4O1xyXG5cclxuICAgIC5TZWFyY2hBZHZhbmNlZExpbmsge1xyXG4gICAgICAgIGNvbG9yOiAjYTBhMGEwO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICByaWdodDogMzVweDtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogI0ZGOUQwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5TZWFyY2hCb3R0b20ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLypTZWFyY2ggRW5kKi9cclxuXHJcbi8qUXVpY2tTZWFyY2ggQmVnaW4qL1xyXG5cclxuLlF1aWNrU2VhcmNoIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgaW5wdXQge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIHdpZHRoOiA5MHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICBjb2xvcjogIzY2NjY2NjtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgIH1cclxufVxyXG5cclxuLlF1aWNrU2VhcmNoTGFiZWwge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBjb2xvcjogIzY2NjY2NjtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5RdWlja1NlYXJjaExpbmtCdXR0b24ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogOTBweDtcclxuICAgIGJvdHRvbTogM3B4O1xyXG59XHJcblxyXG4vKlF1aWNrU2VhcmNoIEVuZCovXHJcblxyXG4vKkhlYWRlckxvZ28gQmVnaW4qL1xyXG5cclxuLkhlYWRlckxvZ28ge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgaGVpZ2h0OiA4NXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgbWF4LWhlaWdodDogODVweDtcclxuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICBoZWlnaHQ6IDg1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qSGVhZGVyTG9nbyBFbmQqL1xyXG4vKlN3aXRjaExhbmd1YWdlIEJlZ2luKi9cclxuXHJcbi5Td2l0Y2hMYW5ndWFnZSB7XHJcbiAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbn1cclxuXHJcbi5Td2l0Y2hMYW5ndWFnZVRvcCwgLlN3aXRjaExhbmd1YWdlQm90dG9tIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5Td2l0Y2hMYW5ndWFnZUxlZnQge1xyXG59XHJcblxyXG4uU3dpdGNoTGFuZ3VhZ2VSaWdodCB7XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgIH1cclxuXHJcbiAgICAuTGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAjY2NjO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5MYW5ndWFnZVN3aXRjaCB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6IDY1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5Td2l0Y2hMYW5ndWFnZU1lbnVQYW5lbCB7XHJcbiAgICBwYWRkaW5nOiAwIDVweCAwIDEwcHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogI0ZGOUQwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5Td2l0Y2hMYW5ndWFnZURyb3BQYW5lbCB7XHJcbiAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxufVxyXG5cclxuLypTd2l0Y2hMYW5ndWFnZSBFbmQqL1xyXG4vKkN1cnJlbmN5Q29udHJvbCBCZWdpbiovXHJcblxyXG4uQ3VycmVuY3lDb250cm9sIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIG1hcmdpbi10b3A6IDZweDtcclxuICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxufVxyXG5cclxuLkN1cnJlbmN5Q29udHJvbFRvcCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uQ3VycmVuY3lDb250cm9sTGVmdCB7XHJcbn1cclxuXHJcbi5DdXJyZW5jeUNvbnRyb2xSaWdodCB7XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgIH1cclxuXHJcbiAgICAuTGFiZWwge1xyXG4gICAgICAgIGNvbG9yOiAjY2NjO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5DdXJyZW5jeVN3aXRjaCB7XHJcbiAgICAgICAgY29sb3I6ICM5OTk7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6IDY1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5DdXJyZW5jeUNvbnRyb2xCb3R0b20ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLypDdXJyZW5jeUNvbnRyb2wgRW5kKi9cclxuXHJcbi8qQ29tbW9uU2lkZWJhciBCZWdpbiovXHJcblxyXG4uQmxvZ1NpZGViYXJUb3Age1xyXG4gICAgbWluLWhlaWdodDogNDBweDtcclxuICAgIHdpZHRoOiAxOTBweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcclxuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjY2NjO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0YyRjRGNztcclxufVxyXG5cclxuLlNpZGViYXJUb3BUaXRsZSwgLkJsb2dTaWRlYmFyVG9wVGl0bGUge1xyXG4gICAgY29sb3I6ICM1NTU7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEycHg7XHJcbiAgICBtYXJnaW4tdG9wOiAxMXB4O1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgIHdpZHRoOiAxNjBweDtcclxufVxyXG5cclxuLkJsb2dTaWRlYmFyVG9wSW1nTGVmdCwgLkJsb2dTaWRlYmFyVG9wSW1nUmlnaHQsIC5CbG9nU2lkZWJhckJvdHRvbSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uQmxvZ1NpZGViYXJMZWZ0IHtcclxufVxyXG5cclxuLkJsb2dTaWRlYmFyUmlnaHQge1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG59XHJcblxyXG4vKkNvbW1vblNpZGViYXIgRW5kKi9cclxuLypDb21tb25TaWRlQmFubmVyIEJlZ2luKi9cclxuXHJcbi5TaWRlQmFubmVyVG9wIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5TaWRlQmFubmVyUmlnaHQgaW1nIHtcclxuICAgIG1heC13aWR0aDogMTkycHg7XHJcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDE5MnB4O1xyXG59XHJcblxyXG4uU2lkZUJhbm5lckJvdHRvbSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKkNvbW1vblNpZGVCYW5uZXIgRW5kKi9cclxuXHJcbi8qQ29tbW9uR3JpZFZpZXcgQmVnaW4qL1xyXG5cclxuLkNvbW1vbkdyaWRWaWV3IHtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNlNGU0ZTQ7XHJcbn1cclxuXHJcbi5Db21tb25HcmlkVmlld0hlYWRlclN0eWxlIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgY29sb3I6ICM1NzU3NTc7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoSW1hZ2VzL0Rlc2lnbi9Cb3gvQkdCb3gxVG9wQ2VudGVyLmdpZikgcmVwZWF0LXggbGVmdCB0b3A7XHJcbiAgICBwYWRkaW5nOiAwcHg7XHJcbiAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2U0ZTRlNDtcclxufVxyXG5cclxuLkNvbW1vbkdyaWRWaWV3Um93U3R5bGUge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNlNGU0ZTQ7XHJcbn1cclxuXHJcbi5Db21tb25HcmlkVmlld0FsdGVybmF0aW5nUm93U3R5bGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZTRlNGU0O1xyXG59XHJcblxyXG4uQ29tbW9uR3JpZFZpZXdGb290ZXJTdHlsZSB7XHJcbiAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2NjYztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkYzRUE7XHJcbn1cclxuXHJcbi5Db21tb25HcmlkVmlld0VtcHR5Um93U3R5bGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcclxuICAgIGNvbG9yOiAjODg4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjbGVhcjogbGVmdDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICBwYWRkaW5nOiAzcHggMDtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG59XHJcblxyXG4vKkNvbW1vbkdyaWR2aWV3IEVuZCovXHJcblxyXG4vKkFyY2hpdmVMaXN0IEJlZ2luKi9cclxuXHJcbi5BcmNoaXZlTGlzdEdyaWRWaWV3IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0U1RTVFNTtcclxufVxyXG5cclxuLkFyY2hpdmVMaXN0VG9waWNJdGVtQ29sdW1uVG9waWNTdHlsZSB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDYlO1xyXG4gICAgd2lkdGg6IDg4JTtcclxuICAgIGJhY2tncm91bmQ6IHVybChcIkltYWdlcy9EZXNpZ24vQnVsbGV0L0J1bGxldDEuZ2lmXCIpIG5vLXJlcGVhdCBzY3JvbGwgMjVweCBjZW50ZXIgdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0U1RTVFNTtcclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogIzQ0NDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICNGRjlEMDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uQXJjaGl2ZUxpc3REYXRlSGVhZGVyQ29sdW1uRGF0ZVN0eWxlIHtcclxuICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDMlO1xyXG4gICAgd2lkdGg6IDk0JTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTVFNUU1O1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICB0aCB7XHJcbiAgICAgICAgcGFkZGluZzogMTBweCAxNXB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5BcmNoaXZlTGlzdERhdGVJdGVtc0NvbHVtbkRhdGVTdHlsZSB7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGNvbG9yOiAjNjY2O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxufVxyXG5cclxuLkFyY2hpdmVMaXN0Um93U3R5bGU6aG92ZXIsIC5BcmNoaXZlTGlzdEFsdGVybmF0aW5nUm93U3R5bGU6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkNFODtcclxufVxyXG5cclxuLkFyY2hpdmVMaXN0RW1wdHlSb3dTdHlsZSB7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZGRkO1xyXG59XHJcblxyXG4vKkFyY2hpdmVMaXN0IEVuZCovXHJcblxyXG4vKkJsb2dOYXZMaXN0IEJlZ2luKi9cclxuXHJcbi5CbG9nTmF2TGlzdCwgLkRlcGFydG1lbnROYXZMaXN0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTRFNEU0O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCA1cHggNXB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIHBhZGRpbmc6IDFweDtcclxuICAgIHdpZHRoOiAxOTBweDtcclxufVxyXG5cclxuLypCbG9nTmF2TGlzdCBFbmQqL1xyXG5cclxuLypEZXBhcnRtZW50TmF2TGlzdCBCZWdpbiovXHJcblxyXG4vKkRlcGFydG1lbnROYXZMaXN0IEVuZCovXHJcblxyXG4vKlBheW1lbnRMb2dvIEJlZ2luKi9cclxuXHJcbi5QYXltZW50TG9nbyB7XHJcbiAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICB3aWR0aDogMzAlO1xyXG5cclxuICAgIC5TaWRlQmFubmVyUmlnaHQge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKlBheW1lbnRMb2dvIEVuZCovXHJcblxyXG4vKkJsb2dOYXZOb3JtYWxMaXN0IEJlZ2luKi9cclxuXHJcbi5CbG9nTmF2Tm9ybWFsTGlzdCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjZmZmZmZmO1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIHBhZGRpbmc6IDRweCA1cHggNHB4IDE4cHg7XHJcbiAgICAgICAgd2lkdGg6IDE2NXB4O1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgfVxyXG5cclxuICAgIHRkIHtcclxuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2ZmZmZmZjtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2U0ZTRlNDtcclxuICAgIH1cclxufVxyXG5cclxuLkJsb2dOYXZOb3JtYWxMaXN0TGluayBhIHtcclxuICAgIGJhY2tncm91bmQ6IHVybChJbWFnZXMvRGVzaWduL0J1bGxldC9CdWxsZXQxLmdpZikgbm8tcmVwZWF0IDdweCAxMHB4O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNlNWU1ZTUgdXJsKEltYWdlcy9EZXNpZ24vQnVsbGV0L0J1bGxldDEtaG92ZXIuZ2lmKSBuby1yZXBlYXQgN3B4IDEwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5CbG9nTmF2Tm9ybWFsTGlzdE1vcmVMaW5rIGEge1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2U1ZTVlNTtcclxuICAgIH1cclxufVxyXG5cclxuLypCbG9nTmF2Tm9ybWFsTGlzdCBFbmQqL1xyXG4vKkVycm9yNDA0IEJlZ2luKi9cclxuXHJcbi5FcnJvcjQwNENvbnRlbnQsIC5HZW5lcmljRXJyb3JDb250ZW50IHtcclxuICAgIGNvbG9yOiBSZWQ7XHJcbn1cclxuXHJcbi8qR2VuZXJpY0Vycm9yIEJlZ2luKi9cclxuXHJcbi8qR2VuZXJpY0Vycm9yIEVuZCovXHJcblxyXG4vKkNvbnRlbnRNZW51TmF2Tm9ybWFsTGlzdCBCZWdpbiovXHJcblxyXG4uQ29udGVudE1lbnVOYXZOb3JtYWxMaXN0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgICAgICB3aWR0aDogMTgycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKEltYWdlcy9EZXNpZ24vQnVsbGV0L0J1bGxldDMuZ2lmKSBuby1yZXBlYXQgMTVweCA3cHg7XHJcbiAgICAgICAgY29sb3I6ICM2NjY7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uQ29udGVudE1lbnVOYXZOb3JtYWxUb3BMaXN0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uSGVhZGVyTWVudVJpZ2h0IC5Db250ZW50TWVudU5hdk5vcm1hbFRvcExpc3Qge1xyXG4gICAgLlNpZGViYXJUb3Age1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBib3JkZXI6IDAgbm9uZTtcclxuICAgIG1hcmdpbi10b3A6IDBweDtcclxufVxyXG5cclxuLypDb250ZW50TWVudU5hdk5vcm1hbExpc3QgRW5kKi9cclxuXHJcbi8qQ29udGVudE1lbnVOYXZMaXN0IFtMZWZ0LFJpZ2h0XSBCZWdpbiovXHJcblxyXG4uTWFpbkRpdkxlZnQgLkNvbnRlbnRNZW51TmF2TGlzdCwgLk1haW5EaXZSaWdodCAuQ29udGVudE1lbnVOYXZMaXN0IHtcclxuICAgIHdpZHRoOiAxOTJweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4uTWFpbkRpdkxlZnQgLkNvbnRlbnRNZW51TmF2TWVudUxpc3QsIC5NYWluRGl2UmlnaHQgLkNvbnRlbnRNZW51TmF2TWVudUxpc3Qge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3JkZXI6IHNvbGlkIDJweCAjZmZmZmZmO1xyXG59XHJcblxyXG4uQ29udGVudE1lbnVOYXZNZW51TGlzdFN0YXRpY01lbnVJdGVtIHtcclxuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjZmZmZmZmO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNlNGU0ZTQ7XHJcblxyXG4gICAgdGQgYSB7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDVweCA0cHggMThweDtcclxuICAgICAgICB3aWR0aDogMTQ2cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29sb3I6ICMzMzM7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKEltYWdlcy9EZXNpZ24vQnVsbGV0L0J1bGxldDIuZ2lmKSBuby1yZXBlYXQgN3B4IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2U1ZTVlNSB1cmwoSW1hZ2VzL0Rlc2lnbi9CdWxsZXQvQnVsbGV0Mi1ob3Zlci5naWYpIG5vLXJlcGVhdCA3cHggMTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLkNvbnRlbnRNZW51TmF2TWVudUxpc3REeW5hbWljTWVudUl0ZW0ge1xyXG4gICAgLkR5bmFtaWNIb3ZlciBhIHtcclxuICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgIH1cclxuXHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNmZmY7XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2UzZTNlMztcclxuXHJcbiAgICBhIHtcclxuICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgY29sb3I6ICM5OTk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICBwYWRkaW5nOiA0cHggMTVweDtcclxuICAgICAgICB3aWR0aDogMTMwcHg7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllOWU5O1xyXG4gICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgfVxyXG59XHJcblxyXG4uQ29udGVudE1lbnVOYXZNZW51TGlzdER5bmFtaWNNZW51U3R5bGUge1xyXG4gICAgei1pbmRleDogMTAwICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjYzljOWM5O1xyXG59XHJcblxyXG4vKkNvbnRlbnRNZW51TmF2TGlzdCBbTGVmdCxSaWdodF0gRW5kKi9cclxuXHJcbi8qQ29udGVudE1lbnVOYXZMaXN0IFtUb3BdIEJlZ2luKi9cclxuXHJcbi5IZWFkZXJNZW51IHtcclxuICAgIC5Db250ZW50TWVudU5hdkxpc3QgYSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuQ29udGVudE1lbnVOYXZNZW51TGlzdCB0ZDpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogVHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLkNvbnRlbnRNZW51TmF2TGlzdCB7XHJcbiAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgYm9yZGVyOiAwIG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG5cclxuICAgICAgICAuU2lkZWJhclRvcCwgLlNpZGViYXJCb3R0b20ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLlNpZGViYXJMZWZ0IHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCBsaSBhLkNvbnRlbnRNZW51TmF2TGlzdFN0YXRpY01lbnVJdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAxMnB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNTU1NTU1ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYS5Db250ZW50TWVudU5hdkxpc3RTdGF0aWNNZW51SXRlbTpob3ZlciwgdWwgbGk6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybChJbWFnZXMvRGVzaWduL0JveC9CR0hlYWRlck1lbnVDZW50ZXJIb3Zlci5naWYpIHJlcGVhdC14IGxlZnQgdG9wO1xyXG4gICAgfVxyXG5cclxuICAgIC5Db250ZW50TWVudU5hdk1lbnVMaXN0RHluYW1pY01lbnVJdGVtIHtcclxuICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2ZmZjtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2UzZTNlMztcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICBjb2xvcjogIzk5OTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzogNHB4IDE1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMzBweDtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllOWU5O1xyXG4gICAgICAgICAgICBjb2xvcjogIzMzMztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLkNvbnRlbnRNZW51TmF2TWVudUxpc3REeW5hbWljTWVudVN0eWxlIHtcclxuICAgICAgICB6LWluZGV4OiAxMDAgIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggI2M5YzljOTtcclxuICAgIH1cclxufVxyXG5cclxuLypDb250ZW50TWVudU5hdkxpc3QgW1RvcF0gRW5kKi9cclxuLypDb250ZW50TWVudU5hdkxpc3QgW0JvdHRvbV0gQmVnaW4qL1xyXG5cclxuLkxheW91dEZvb3RlciAuSGVhZGVyTWVudSB7XHJcbiAgICAuQ29udGVudE1lbnVOYXZMaXN0IGEge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLkNvbnRlbnRNZW51TmF2TWVudUxpc3QgdGQ6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IFRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5Db250ZW50TWVudU5hdkxpc3Qge1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIGJvcmRlcjogMCBub25lO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICAgICAgLlNpZGViYXJUb3AsIC5TaWRlYmFyQm90dG9tIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5TaWRlYmFyTGVmdCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwgbGkge1xyXG4gICAgICAgIGEuQ29udGVudE1lbnVOYXZMaXN0U3RhdGljTWVudUl0ZW0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICBjb2xvcjogI2Q0ZDRkNDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoSW1hZ2VzL0Rlc2lnbi9CdWxsZXQvcGlwZS5naWYpIG5vLXJlcGVhdCByaWdodCBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGOUQwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChJbWFnZXMvRGVzaWduL0J1bGxldC9waXBlLmdpZikgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLkNvbnRlbnRNZW51TmF2TWVudUxpc3REeW5hbWljTWVudUl0ZW0ge1xyXG4gICAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuQ29udGVudE1lbnVOYXZNZW51TGlzdER5bmFtaWNNZW51U3R5bGUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKkNvbnRlbnRNZW51TmF2TGlzdCBbQm90dG9tXSBFbmQqL1xyXG4vKkNvbnRlbnRNZW51SXRlbSBCZWdpbiovXHJcblxyXG4uQ29udGVudE1lbnVJdGVtQ29sdW1uVG9waWNTdHlsZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogNHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDRweDtcclxuICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjZTRlNGU0O1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjNjY2O1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICNGRjlEMDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKkNvbnRlbnRNZW51SXRlbSBFbmQqL1xyXG5cclxuLyogQ29tbW9uVG9wRHluYW1pY0Ryb3Bkb3duIFtMYW5ndWFnZSxDdXJyZW5jeV0gIEJlZ2luKi9cclxuXHJcbi5MYXlvdXRIZWFkZXIgLkxvZ2luQmFyUmlnaHQgdGQgYSB7XHJcbiAgICBsaW5lLWhlaWdodDogMjJweDtcclxufVxyXG5cclxuLkNvbW1vblRvcER5bmFtaWNEcm9wZG93bkxpc3RTdGF0aWNNZW51U3R5bGUge1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2M5YzljOTtcclxufVxyXG5cclxuLkNvbW1vblRvcER5bmFtaWNEcm9wZG93bkxpc3RTdGF0aWNNZW51SXRlbSB0ZCBhIHtcclxuICAgIGNvbG9yOiAjOTk5O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgIHBhZGRpbmc6IDBweCAzMHB4IDBweCA1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmIHVybChJbWFnZXMvRGVzaWduL0J1bGxldC9Td2l0Y2hEb3duLmdpZikgbm8tcmVwZWF0IHJpZ2h0IGNlbnRlcjtcclxuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgfVxyXG59XHJcblxyXG4uQ29tbW9uVG9wRHluYW1pY0Ryb3Bkb3duTGlzdER5bmFtaWNNZW51SXRlbSB7XHJcbiAgICAuRHluYW1pY0hvdmVyIHtcclxuICAgICAgICBjb2xvcjogIzY2NjtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNmZmY7XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2UzZTNlMztcclxuXHJcbiAgICBhIHtcclxuICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgY29sb3I6ICM5OTk7XHJcbiAgICAgICAgcGFkZGluZzogNHB4IDEwcHg7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1O1xyXG4gICAgICAgICAgICBjb2xvcjogIzMzMztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5Db21tb25Ub3BEeW5hbWljRHJvcGRvd25MaXN0RHluYW1pY01lbnVTdHlsZSB7XHJcbiAgICB6LWluZGV4OiAxMDAgIWltcG9ydGFudDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNjOWM5Yzk7XHJcbn1cclxuXHJcbi8qIENvbW1vblRvcER5bmFtaWNEcm9wZG93biBbTGFuZ3VhZ2UsQ3VycmVuY3ldICBFbmQqL1xyXG5cclxuLk1haW5EaXZDZW50ZXIgLkRlZmF1bHQge1xyXG4gICAgd2lkdGg6IGluaGVyaXQ7XHJcbn1cclxuXHJcbiN1eFZhbGlkU3VtbWFyeSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxufVxyXG5cclxuI2F0MjBtYyBmb3JtIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XHJcbn1cclxuXHJcbi5XYXJuaW5nTWVzc2FnZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB5ZWxsb3c7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDNweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgY29sb3I6IEdyYXk7XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgY29sb3I6IEJsYWNrO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKkJsb2dEZXRhaWxzIEJlZ2luKi9cclxuXHJcbi5CbG9nRGV0YWlsc1RvcFRpdGxlIHtcclxuICAgIGNvbG9yOiAjNTU1O1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLkJsb2dEZXRhaWxzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTRFNEU0O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4IDVweCA1cHggNXB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gMTBweDtcclxuICAgIHBhZGRpbmc6IDFweDtcclxuICAgIHdpZHRoOiA5OSU7XHJcbn1cclxuXHJcbi5CbG9nRGV0YWlsc1RvcCB7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweCA1cHggMCAwO1xyXG4gICAgYmFja2dyb3VuZDogIzc3Nzk3ODtcclxuICAgIC8qIE9sZCBicm93c2VycyAqL1xyXG4gICAgLyogSUU5IFNWRywgbmVlZHMgY29uZGl0aW9uYWwgb3ZlcnJpZGUgb2YgJ2ZpbHRlcicgdG8gJ25vbmUnICovXHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJd0pTSWdlVEk5SWpFd01DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJemMzTnprM09DSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU16TWpOa05ESWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICM3Nzc5NzggMCUsICMzMjNkNDIgMTAwJSk7XHJcbiAgICAvKiBGRjMuNisgKi9cclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICM3Nzc5NzgpLCBjb2xvci1zdG9wKDEwMCUsICMzMjNkNDIpKTtcclxuICAgIC8qIENocm9tZSxTYWZhcmk0KyAqL1xyXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cclxuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICM3Nzc5NzggMCUsICMzMjNkNDIgMTAwJSk7XHJcbiAgICAvKiBPcGVyYSAxMS4xMCsgKi9cclxuICAgIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgLyogSUUxMCsgKi9cclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM3Nzc5NzggMCUsICMzMjNkNDIgMTAwJSk7XHJcbiAgICAvKiBXM0MgKi9cclxuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjNzc3OTc4JywgZW5kQ29sb3JzdHI9JyMzMjNkNDInLEdyYWRpZW50VHlwZT0wICk7XHJcbiAgICAvKiBJRTYtOCAqL1xyXG59XHJcblxyXG4uQmxvZ0RldGFpbHNUb3BUaXRsZSB7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgbWFyZ2luOiAxMHB4IDE1cHg7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIHdpZHRoOiA1NDBweDtcclxufVxyXG5cclxuLkJsb2dEZXRhaWxzVG9wSW1nTGVmdCwgLkJsb2dEZXRhaWxzVG9wIC5CbG9nRGV0YWlsc0ltZ0xlZnQsIC5CbG9nRGV0YWlsc1RvcEltZ1JpZ2h0LCAuQmxvZ0RldGFpbHNUb3AgLkJsb2dEZXRhaWxzSW1nUmlnaHQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLkJsb2dEZXRhaWxzTGVmdCB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbn1cclxuXHJcbi5CbG9nRGV0YWlsc1JpZ2h0IHtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcbn1cclxuXHJcbi5CbG9nRGV0YWlsc0JvdHRvbSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uQmxvZ0RldGFpbHNSaWdodCAuTm90ZVRleHQge1xyXG4gICAgY29sb3I6ICNlZTllMjI7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLkJsb2dGb3JtVmlldyB7XHJcbiAgICB3aWR0aDogNzcwcHg7XHJcbn1cclxuXHJcbi5GYWNlYm9va0NvbW1lbnRCb3gge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLypCbG9nRGV0YWlscyBFbmQqL1xyXG5cclxuLypCbG9nRGV0YWlsc0RlZmF1bHQgQmVnaW4qL1xyXG5cclxuLkJsb2dEZXRhaWxzRGVmYXVsdFB1Ymxpc2hlckRpdiB7XHJcbiAgICBjb2xvcjogIzY2NjY2NjtcclxufVxyXG5cclxuLkJsb2dEZXRhaWxzRGVmYXVsdEJsb2dDb250ZW50TGFiZWwge1xyXG59XHJcblxyXG4uQmxvZ0RldGFpbHNEZWZhdWx0QmxvZ0NvbnRlbnREaXYge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5CbG9nRGV0YWlsc0RlZmF1bHRUYWdzRGl2IHtcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIHBhZGRpbmc6IDVweDtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgIGNvbG9yOiAjNzc3O1xyXG4gICAgYm9yZGVyOiBkYXNoZWQgMXB4ICNkZGQ7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxufVxyXG5cclxuLkJsb2dEZXRhaWxzRGVmYXVsdFRhZ3NMaW5rIHtcclxuICAgIGNvbG9yOiAjNzc3O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAjZmY5ZDAwO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKkJsb2dEZXRhaWxzRGVmYXVsdCBFbmQqL1xyXG5cclxuLypCbG9nTGlzdCBCZWdpbiovXHJcblxyXG4uQmxvZ0xpc3RUb3Age1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogNDBweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4IDVweCAwIDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDAgMDtcclxuICAgIGJhY2tncm91bmQ6ICM3Nzc5Nzg7XHJcbiAgICAvKiBPbGQgYnJvd3NlcnMgKi9cclxuICAgIC8qIElFOSBTVkcsIG5lZWRzIGNvbmRpdGlvbmFsIG92ZXJyaWRlIG9mICdmaWx0ZXInIHRvICdub25lJyAqL1xyXG4gICAgYmFja2dyb3VuZDogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlBL1BnbzhjM1puSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZDJsa2RHZzlJakV3TUNVaUlHaGxhV2RvZEQwaU1UQXdKU0lnZG1sbGQwSnZlRDBpTUNBd0lERWdNU0lnY0hKbGMyVnlkbVZCYzNCbFkzUlNZWFJwYnowaWJtOXVaU0krQ2lBZ1BHeHBibVZoY2tkeVlXUnBaVzUwSUdsa1BTSm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtJaUJuY21Ga2FXVnVkRlZ1YVhSelBTSjFjMlZ5VTNCaFkyVlBibFZ6WlNJZ2VERTlJakFsSWlCNU1UMGlNQ1VpSUhneVBTSXdKU0lnZVRJOUlqRXdNQ1VpUGdvZ0lDQWdQSE4wYjNBZ2IyWm1jMlYwUFNJd0pTSWdjM1J2Y0MxamIyeHZjajBpSXpjM056azNPQ0lnYzNSdmNDMXZjR0ZqYVhSNVBTSXhJaTgrQ2lBZ0lDQThjM1J2Y0NCdlptWnpaWFE5SWpFd01DVWlJSE4wYjNBdFkyOXNiM0k5SWlNek1qTmtORElpSUhOMGIzQXRiM0JoWTJsMGVUMGlNU0l2UGdvZ0lEd3ZiR2x1WldGeVIzSmhaR2xsYm5RK0NpQWdQSEpsWTNRZ2VEMGlNQ0lnZVQwaU1DSWdkMmxrZEdnOUlqRWlJR2hsYVdkb2REMGlNU0lnWm1sc2JEMGlkWEpzS0NObmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0tTSWdMejRLUEM5emRtYyspO1xyXG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgLyogRkYzLjYrICovXHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjNzc3OTc4KSwgY29sb3Itc3RvcCgxMDAlLCAjMzIzZDQyKSk7XHJcbiAgICAvKiBDaHJvbWUsU2FmYXJpNCsgKi9cclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzc3Nzk3OCAwJSwgIzMyM2Q0MiAxMDAlKTtcclxuICAgIC8qIENocm9tZTEwKyxTYWZhcmk1LjErICovXHJcbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgLyogT3BlcmEgMTEuMTArICovXHJcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgIzc3Nzk3OCAwJSwgIzMyM2Q0MiAxMDAlKTtcclxuICAgIC8qIElFMTArICovXHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjNzc3OTc4IDAlLCAjMzIzZDQyIDEwMCUpO1xyXG4gICAgLyogVzNDICovXHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzc3Nzk3OCcsIGVuZENvbG9yc3RyPScjMzIzZDQyJyxHcmFkaWVudFR5cGU9MCApO1xyXG4gICAgLyogSUU2LTggKi9cclxufVxyXG5cclxuLkJsb2dMaXN0VG9wVGl0bGUge1xyXG4gICAgY29sb3I6ICM1NTU7XHJcbiAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4uQmxvZ0xpc3RUb3BJbWdMZWZ0LCAuQmxvZ0xpc3RUb3AgLkJsb2dMaXN0SW1nTGVmdCwgLkJsb2dMaXN0VG9wSW1nUmlnaHQsIC5CbG9nTGlzdFRvcCAuQmxvZ0xpc3RJbWdSaWdodCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uQmxvZ0xpc3RMZWZ0IHtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxufVxyXG5cclxuLkJsb2dMaXN0UmlnaHQge1xyXG4gICAgcGFkZGluZzogMTVweDtcclxufVxyXG5cclxuLkJsb2dMaXN0Qm90dG9tIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5CbG9nTm9EYXRhIHtcclxuICAgIGJvcmRlcjogc29saWQgMXB4ICNkZGQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjhGOEY4O1xyXG4gICAgY29sb3I6ICM4ODg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGNsZWFyOiBsZWZ0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBsaW5lLWhlaWdodDogMjVweDtcclxuICAgIGhlaWdodDogMjhweDtcclxuICAgIHBhZGRpbmc6IDNweCAwO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbn1cclxuXHJcbi8qQmxvZ0xpc3QgRW5kKi9cclxuXHJcbi8qQmxvZ0xpc3RJdGVtIEJlZ2luKi9cclxuXHJcbi5CbG9nTGlzdEl0ZW0ge1xyXG59XHJcblxyXG4uQmxvZ0xpc3RJdGVtVGFibGUge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0U1RTVFNTtcclxufVxyXG5cclxuLkJsb2dMaXN0SXRlbURldGFpbHNDb2x1bW4ge1xyXG4gICAgcGFkZGluZzogMTBweCAwcHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG59XHJcblxyXG4uQmxvZ0xpc3RJdGVtRGV0YWlsc0RpdiwgLkJsb2dMaXN0SXRlbUJsb2dUaXRsZURpdiB7XHJcbn1cclxuXHJcbi5CbG9nTGlzdEl0ZW1OYW1lTGluayB7XHJcbiAgICBjb2xvcjogIzAwMDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAjRkY5RDAwO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uQmxvZ0xpc3RJdGVtUHVibGlzaGVyRGl2IHtcclxuICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIGNvbG9yOiAjNjY2NjY2O1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG59XHJcblxyXG4uQmxvZ0xpc3RJdGVtU2hvcnRDb250ZW50RGl2IHtcclxuICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbn1cclxuXHJcbi5CbG9nTGlzdEl0ZW1NZXNzYWdlRGl2IHtcclxufVxyXG5cclxuLkJsb2dQdWJsaXNoZXIge1xyXG4gICAgY29sb3I6ICNGRjlEMDA7XHJcbn1cclxuXHJcbi5CbG9nUHVibGlzaERhdGUsIC5CbG9nTGlzdERlZmF1bHQge1xyXG59XHJcblxyXG4vKkJsb2dMaXN0SXRlbSBFbmQqL1xyXG5cclxuLypCbG9nTGlzdFJvd1N0eWxlIEJlZ2luKi9cclxuXHJcbi5CbG9nTGlzdERlZmF1bHRQYWdlQ29udHJvbFBhbmVsIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjg7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIHBhZGRpbmc6IDNweCAyJTtcclxuICAgIHdpZHRoOiA5NiU7XHJcbiAgICBjb2xvcjogIzU1NTtcclxufVxyXG5cclxuLkJsb2dMaXN0RGVmYXVsdEl0ZW1QZXJQYWdlIHtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDMwJTtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuXHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLk9wdGlvbkNvbnRyb2xUaXRsZSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uQmxvZ0xpc3REZWZhdWx0UGFnaW5nQ29udHJvbCB7XHJcbiAgICBtYXJnaW4tdG9wOiAzcHg7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxufVxyXG5cclxuLkJsb2dMaXN0RGVmYXVsdERhdGFMaXN0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgY2xlYXI6IGxlZnQ7XHJcbiAgICBmbG9hdDogbGVmdDtcclxufVxyXG5cclxuLkJsb2dMaXN0RGVmYXVsdERhdGFMaXN0SGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5CbG9nTGlzdERlZmF1bHREYXRhTGlzdEl0ZW1TdHlsZSB7XHJcbiAgICBwYWRkaW5nOiAycHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG59XHJcblxyXG4vKkJsb2dMaXN0Um93U3R5bGUgRW5kKi9cclxuXHJcbi8qU2VhcmNoQm94IEJlZ2luKi9cclxuXHJcbi5TZWFyY2hCb3gge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZERjVFNjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkVGRDU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgcGFkZGluZzogMXB4O1xyXG4gICAgd2lkdGg6IDE5MHB4O1xyXG5cclxuICAgIC5TaWRlYmFyUmlnaHQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5TaWRlYmFyQm90dG9tIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uU2VhcmNoQm94VGV4dEJveCB7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgd2lkdGg6IDEyN3B4O1xyXG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QwZDBkMDtcclxuICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgIGNvbG9yOiAjNDQ0O1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbn1cclxuXHJcbi5TZWFyY2hCb3ggLkJ0blN0eWxlMyB7XHJcbiAgICBwYWRkaW5nOiAwIDhweDtcclxufVxyXG5cclxuLypTZWFyY2hCb3ggRW5kKi9cclxuLypOZXdzbGV0dGVyIEJlZ2luKi9cclxuLypOZXdzbGV0dGVyIEJlZ2luKi9cclxuXHJcbi5OZXdzbGV0dGVyIHtcclxuICAgIGNsZWFyOiBsZWZ0O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogOTAlO1xyXG4gICAgcGFkZGluZzogN3B4IDMlO1xyXG4gICAgYm9yZGVyOiBkYXNoZWQgMXB4ICNjY2M7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xyXG5cclxuICAgIC5TaWRlYmFyVG9wIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLlNpZGViYXJUb3BUaXRsZSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgIH1cclxuXHJcbiAgICAuU2lkZWJhclRvcEltZ0xlZnQsIC5TaWRlYmFyVG9wSW1nUmlnaHQge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLlNpZGViYXJMZWZ0IHtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLlNpZGViYXJSaWdodCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLlNpZGViYXJCb3R0b20sIC5TaWRlYmFyQm90dG9tSW1nTGVmdCwgLlNpZGViYXJCb3R0b21JbWdSaWdodCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLk5ld3NsZXR0ZXJMYWJlbCB7XHJcbiAgICBjb2xvcjogIzg4ODtcclxuICAgIGNsZWFyOiBsZWZ0O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogNXB4IDA7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbn1cclxuXHJcbi5OZXdzbGV0dGVyRm9ybSB7XHJcbiAgICBjbGVhcjogbGVmdDtcclxufVxyXG5cclxuLk5ld3NsZXR0ZXJUZXh0Qm94IHtcclxuICAgIHdpZHRoOiAxNTVweDtcclxuICAgIGhlaWdodDogMThweDtcclxuICAgIHBhZGRpbmc6IDFweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogM3B4IDBweCAwcHggM3B4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogM3B4IDBweCAwcHggM3B4O1xyXG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2NjYztcclxuICAgIGNvbG9yOiAjNTU1O1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4uTmV3c2xldHRlclN1Ym1pdCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAwO1xyXG4gICAgcmlnaHQ6IDJweDtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMHB4IDNweCAzcHggMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMHB4IDNweCAzcHggMHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4uQ29tbW9uVmFsaWRhdGVEaXZOZXdzTGV0dGVyIHtcclxuICAgIHdpZHRoOiAxNjNweDtcclxuICAgIGNsZWFyOiBib3RoO1xyXG59XHJcblxyXG4uQ29tbW9uVmFsaWRhdG9yVGV4dE5ld3NMZXR0ZXIge1xyXG4gICAgZm9udC1zaXplOiAxMHB4O1xyXG59XHJcblxyXG4vKk5ld3NsZXR0ZXIgRW5kKi9cclxuLypDb250ZW50IEZvb3RlciBMaW5rIEJlZ2luKi9cclxuXHJcbi5Gcm9udE1hc3RlckxpY2Vuc2Uge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MDQyNDQ7XHJcbn1cclxuXHJcbi5Gcm9udE1hc3RlckNvbnRlbnRCb3R0b20ge1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNGMkY0Rjc7XHJcbiAgICBib3JkZXItdG9wOiBzb2xpZCAycHggI0MxQzZDOTtcclxufVxyXG5cclxuLkxheW91dEZvb3RlciB7XHJcbiAgICAuTWVudUZvb3RlciB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgd2lkdGg6IDMwJTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMlO1xyXG4gICAgfVxyXG5cclxuICAgIC5NZW51SXRlbVRpdGxlIHtcclxuICAgICAgICBjbGVhcjogbGVmdDtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICBmb250OiBib2xkIDEycHgvMjRweCBBcmlhbDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgdWwuTWVudUl0ZW0ge1xyXG4gICAgICAgIGNsZWFyOiBsZWZ0O1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG5cclxuICAgICAgICAgICAgYS5IeXBlckxpbmsge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzg4ODtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmY2OTAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5MZWZ0IHtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICB3aWR0aDogNjIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLlJpZ2h0IHtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgd2lkdGg6IDI3MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uU29jaWFsTGluayB7XHJcbiAgICBjbGVhcjogbGVmdDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLkZCTGluayB7XHJcbiAgICBjbGVhcjogbGVmdDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgYmFja2dyb3VuZDogdXJsKEltYWdlcy9EZXNpZ24vSWNvbi9mYWNlYm9va19pY29uLnBuZykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICBjb2xvcjogIzg4ODtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG59XHJcblxyXG4uVHdpdHRlckxpbmsge1xyXG4gICAgY2xlYXI6IGxlZnQ7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGJhY2tncm91bmQ6IHVybChJbWFnZXMvRGVzaWduL0ljb24vdHdpdHRlcl9pY29uLnBuZykgbm8tcmVwZWF0IGxlZnQgY2VudGVyO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICBjb2xvcjogIzg4ODtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG59XHJcblxyXG4uU29jaWFsTGluayBhOmhvdmVyIHtcclxuICAgIGNvbG9yOiAjMDAwO1xyXG59XHJcblxyXG4vKkJsb2cgQ29tbWVudCovXHJcblxyXG4uQmxvZ0NvbW1lbnREaXYge1xyXG4gICAgd2lkdGg6IDczNnB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG5cclxuICAgIHRhYmxlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLkJsb2dDb21tZW50VGl0bGUge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLkJsb2dDb21tZW50RG90dGVkIHtcclxuICAgIGNsZWFyOiBsZWZ0O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjQ0NDO1xyXG4gICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5CbG9nQ29tbWVudFRleHRBcmVhIHtcclxuICAgIHdpZHRoOiA3MzZweDtcclxuICAgIGhlaWdodDogMTE0cHg7XHJcbn1cclxuXHJcbi5CbG9nQ29tbWVudExpc3RBbHRlclN0eWxlIHtcclxuICAgIHBhZGRpbmc6IDNweDtcclxuICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjRTBFMkU1O1xyXG4gICAgY29sb3I6ICM1NTU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLkJsb2dDb21tZW50VXNlck5hbWUge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxufVxyXG5cclxuLkJsb2dDb21tZW50Q3JlYXRlRGF0ZSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG59XHJcblxyXG4uQmxvZ0NvbW1lbnRQb3N0IHtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICBjbGVhcjogYm90aDtcclxufVxyXG5cclxuLkJsb2dDb21tZW50UG9zdERpdiB7XHJcbiAgICBwYWRkaW5nOiAxNXB4O1xyXG59XHJcblxyXG4uQmxvZ0NvbW1lbnRQYWdpbmdEaXYge1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAzcHg7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICBjb2xvcjogIzY0NjQ2NDtcclxuICAgIGZvbnQ6IGJvbGQgMTFweCBBcmlhbDtcclxufVxyXG5cclxuLkJsb2dDb21tZW50UG9zdExhYmVsIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi5CbG9nQ29tbWVudExpc3RTdHlsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjRGNkY5O1xyXG4gICAgcGFkZGluZzogM3B4O1xyXG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNFMEUyRTU7XHJcbiAgICBjb2xvcjogIzU1NTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uQmxvZ0NvbW1lbnRQb3N0QnV0dG9uIHtcclxuICAgIGZsb2F0OiByaWdodDtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5CbG9nQ29tbWVudFRleHRWYWxpZGF0b3Ige1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuLkJsb2dDb21tZW50VmFsaWRhdGVEaXYge1xyXG4gICAgd2lkdGg6IDEzNnB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogZG90dGVkO1xyXG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XHJcbiAgICBjb2xvcjogI0ZGMDAwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxufVxyXG5cclxuLyogQmVnaW4gQ29tbW9uIEJ1dHRvbiBTdHlsZSovXHJcblxyXG4uQnRuU3R5bGUxLCAuQnRuU3R5bGUyLCAuQnRuU3R5bGU0IHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDNweCAzcHggM3B4IDNweDtcclxuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICBib3JkZXItd2lkdGg6IDFweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBmb250OiBib2xkIDEycHgvMjBweCBBcmlhbDtcclxuICAgIG1hcmdpbjogMHB4IDVweCAycHggMDtcclxuICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbi5CdG5TdHlsZTEsIC5TaG9wcGluZ0NhcnRDaGVja291dExpbmssIC5TaG9wcGluZ0NhcnRHaWZ0UmVnaXN0cnlMaW5rIHtcclxuICAgIGJhY2tncm91bmQ6ICNmZmJkMjk7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUEvUGdvOGMzWm5JSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdkMmxrZEdnOUlqRXdNQ1VpSUdobGFXZG9kRDBpTVRBd0pTSWdkbWxsZDBKdmVEMGlNQ0F3SURFZ01TSWdjSEpsYzJWeWRtVkJjM0JsWTNSU1lYUnBiejBpYm05dVpTSStDaUFnUEd4cGJtVmhja2R5WVdScFpXNTBJR2xrUFNKbmNtRmtMWFZqWjJjdFoyVnVaWEpoZEdWa0lpQm5jbUZrYVdWdWRGVnVhWFJ6UFNKMWMyVnlVM0JoWTJWUGJsVnpaU0lnZURFOUlqQWxJaUI1TVQwaU1DVWlJSGd5UFNJd0pTSWdlVEk5SWpFd01DVWlQZ29nSUNBZ1BITjBiM0FnYjJabWMyVjBQU0l3SlNJZ2MzUnZjQzFqYjJ4dmNqMGlJMlptWW1ReU9TSWdjM1J2Y0MxdmNHRmphWFI1UFNJeElpOCtDaUFnSUNBOGMzUnZjQ0J2Wm1aelpYUTlJakV3TUNVaUlITjBiM0F0WTI5c2IzSTlJaU5tWmpkbU1XVWlJSE4wYjNBdGIzQmhZMmwwZVQwaU1TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmJkMjkgMCUsICNmZjdmMWUgMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCAjZmZiZDI5KSwgY29sb3Itc3RvcCgxMDAlLCAjZmY3ZjFlKSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmJkMjkgMCUsICNmZjdmMWUgMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZmZiZDI5IDAlLCAjZmY3ZjFlIDEwMCUpO1xyXG4gICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsICNmZmJkMjkgMCUsICNmZjdmMWUgMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZmZiZDI5IDAlLCAjZmY3ZjFlIDEwMCUpO1xyXG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyNmZmJkMjknLCBlbmRDb2xvcnN0cj0nI2ZmN2YxZScsR3JhZGllbnRUeXBlPTAgKSBkcm9wc2hhZG93KGNvbG9yID0gI2ZmNzkwMCwgb2ZmeCA9IDAsIG9mZnkgPSAxKTtcclxuICAgIGJvcmRlci1jb2xvcjogI2ZmNjkwMCAjZmY2OTAwICNmZjc5MDAgI2ZmNzkwMDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgdGV4dC1zaGFkb3c6IDBweCAxcHggMXB4ICNmZjc5MDA7XHJcbn1cclxuXHJcbi5CdG5TdHlsZTIge1xyXG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcclxuICAgIGJhY2tncm91bmQ6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQS9QZ284YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2QybGtkR2c5SWpFd01DVWlJR2hsYVdkb2REMGlNVEF3SlNJZ2RtbGxkMEp2ZUQwaU1DQXdJREVnTVNJZ2NISmxjMlZ5ZG1WQmMzQmxZM1JTWVhScGJ6MGlibTl1WlNJK0NpQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrSWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpBbElpQjVNVDBpTUNVaUlIZ3lQU0l3SlNJZ2VUSTlJakV3TUNVaVBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXdKU0lnYzNSdmNDMWpiMnh2Y2owaUkyWm1abVptWmlJZ2MzUnZjQzF2Y0dGamFYUjVQU0l4SWk4K0NpQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqRXdNQ1VpSUhOMGIzQXRZMjlzYjNJOUlpTmxaR1ZrWldRaUlITjBiM0F0YjNCaFkybDBlVDBpTVNJdlBnb2dJRHd2YkdsdVpXRnlSM0poWkdsbGJuUStDaUFnUEhKbFkzUWdlRDBpTUNJZ2VUMGlNQ0lnZDJsa2RHZzlJakVpSUdobGFXZG9kRDBpTVNJZ1ptbHNiRDBpZFhKc0tDTm5jbUZrTFhWaloyY3RaMlZ1WlhKaGRHVmtLU0lnTHo0S1BDOXpkbWMrKTtcclxuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y5ZjlmOSAwJSwgI2VkZWRlZCAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsICNmOWY5ZjkpLCBjb2xvci1zdG9wKDEwMCUsICNlNGU0ZTQpKTtcclxuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y5ZjlmOSAwJSwgI2U0ZTRlNCAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNmOWY5ZjkgMCUsICNlNGU0ZTQgMTAwJSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgI2Y5ZjlmOSAwJSwgI2U0ZTRlNCAxMDAlKTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNmOWY5ZjkgMCUsICNlNGU0ZTQgMTAwJSk7XHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nI2Y5ZjlmOScsIGVuZENvbG9yc3RyPScjZTRlNGU0JyxHcmFkaWVudFR5cGU9MCApIGRyb3BzaGFkb3coY29sb3IgPSAjZjlmOWY5LCBvZmZ4ID0gMCwgb2ZmeSA9IDEpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjY2NjICNjY2MgI2NjYyAjZGRkO1xyXG4gICAgY29sb3I6ICM1NTU7XHJcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDFweCAxcHggI2Y5ZjlmOTtcclxufVxyXG5cclxuLkJ0blN0eWxlNCB7XHJcbiAgICBib3JkZXItY29sb3I6ICNjY2MgI2NjYyAjY2NjICNkZGQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgY29sb3I6ICM4ODg7XHJcbn1cclxuXHJcbi5CdXR0b25EZWxldGUge1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgY29sb3I6ICNGRjY5MDA7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLkJ0blN0eWxlMyB7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjY2NjO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcclxuICAgIGNvbG9yOiAjOTk5O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGZvbnQ6IGJvbGQgMTFweC8yMHB4IEFyaWFsO1xyXG4gICAgbWFyZ2luOiAwcHggNXB4IDJweCAwO1xyXG4gICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxufVxyXG5cclxuLkJ0blN0eWxlMjpob3ZlciB7XHJcbiAgICBjb2xvcjogIzAwMDtcclxufVxyXG5cclxuLkJ0blN0eWxlMzpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xyXG4gICAgY29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbi5CdG5TdHlsZTE6aG92ZXIge1xyXG4gICAgY29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbi5CdG5TdHlsZTQ6aG92ZXIge1xyXG4gICAgY29sb3I6ICNmZjc5MDA7XHJcbn1cclxuXHJcbi5CdXR0b25EZWxldGU6aG92ZXIge1xyXG4gICAgY29sb3I6ICNGRjAwMDA7XHJcbn1cclxuXHJcbi8qIEVuZCBDb21tb24gQnV0dG9uIFN0eWxlKi9cclxuXHJcbi5Tb2NpYWxMaW5rIGE6aG92ZXIge1xyXG4gICAgY29sb3I6ICMwMDA7XHJcbn1cclxuXHJcbi5CbG9nTGlzdCB7XHJcbiAgICB3aWR0aDogOTklO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNFNEU0RTQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHggNXB4IDVweCA1cHg7XHJcbiAgICBwYWRkaW5nOiAxcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byAxMHB4O1xyXG59XHJcblxyXG4uQmxvZ05vRGF0YSB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTRFNEU0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y4RjhGODtcclxuICAgIGNvbG9yOiAjODg4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjbGVhcjogbGVmdDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbGluZS1oZWlnaHQ6IDI1cHg7XHJcbiAgICBwYWRkaW5nOiAzcHggMDtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG59XHJcblxyXG4vKlxyXG5cclxuVGhpcyBsZXNzIGZpbGUgb25seSBmb3IgYmxvZyBwYWdlcy5cclxuXHJcbiovXHJcbi8qIFVUSUxJVElFUyAqL1xyXG5cclxuLmh3MTAwIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4udzEwMCB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmgxMDAge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4ubm8tbWFyZ2luIHtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLm5vLXBhZGRpbmcge1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLm5vLW1hcmdpbi1wYWRkaW5nIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi5yZWxhdGl2ZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi56aW5kZXgxMCB7XHJcbiAgICB6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmNvdmVyIHtcclxuICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIC1vLWJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG59XHJcblxyXG4ud2gxMDAge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5kaXNwbGF5LXRhYmxlIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG59XHJcblxyXG4uZGlzcGxheS10YWJsZS1jZWxsIHtcclxuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4vKiBTVFlMRSBDT05URU5UICAqL1xyXG5cclxuLm5vLW1hcmdpbi1ib3R0b20ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmJhY2tncm91bmQtb3Zlcmx5IHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBvcGFjaXR5OiAuMjtcclxufVxyXG5cclxuLmJhY2tncm91bmQtb3Zlcmx5LWlubmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSM0ZDAwMDAwMCwgZW5kQ29sb3JzdHI9IzRkMDAwMDAwKTtcclxuICAgIC1tcy1maWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPSM0ZDAwMDAwMCwgZW5kQ29sb3JzdHI9IzRkMDAwMDAwKTtcclxufVxyXG5cclxuLm92ZXJsYXktc2hhZGUge1xyXG4gICAgei1pbmRleDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi5yZWxhdGl2ZTEge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxufVxyXG5cclxuLnJlbGF0aXZlNSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiA1O1xyXG59XHJcblxyXG4uYmxvZy1pbnRybyB7XHJcbiAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjNGVjNjdmO1xyXG4gICAgdHJhbnNpdGlvbjogbm9uZTtcclxufVxyXG5cclxuLnN1YnNjcmliZS1kcm9wZG93biB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB3aWR0aDogYXV0bztcclxuICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICBjbGVhcjogYm90aDtcclxuXHJcbiAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgIHRvcDogNTBweDtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2YwZjBmMjtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEzNiwgMTgzLCAyMTMsIDApO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZjBmMGYyO1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNHB4IDEwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1ZW07XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjNGY0ZjRmO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlucHV0I3N1YmVtYWlsIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjYjliOGI4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHB4IDA7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMmEyYTJhO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDA7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM0ZjRmNGY7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5idG4tbW9yZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRtZW51LWhvdmVyLWNvbG9yO1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuLXN1YnNjcmliZSB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XHJcbiAgICBwYWRkaW5nOiA4cHggMDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB3aWR0aDogMjAwcHg7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBjb2xvcjogIzM0NDk1ZTtcclxuICAgIH1cclxufVxyXG5cclxuLmJsb2dJbnRyb0NvbnRlbnQge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi5pbnRyb0NvbnRlbnQuaXNtb2JpbGUge1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYmxvZ0ludHJvQ29udGVudCBwIHtcclxuICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIG9wYWNpdHk6IC45O1xyXG59XHJcblxyXG4uY29sLWNlbnRlcmVkIHtcclxuICAgIGZsb2F0OiBub25lO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5pdGVtLWJsb2ctcG9zdCB7XHJcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xyXG5cclxuICAgIGgyIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgICAgICBmb250LXNpemU6IDI4LjZweDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICBtYXJnaW46IDI4cHggMDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnBvc3QtaGVhZGVyIHtcclxuICAgICAgICAucG9zdC1pbmZvIHtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI4cHg7XHJcblxyXG4gICAgICAgICAgICBhLnVzZXJCeSB7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogR2VvcmdpYTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNoYXJlLWdhbGxlcnkge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDQycHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2hhcmUtZmFjZWJvb2sge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzNiNTk5ODtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnNoYXJlLXR3aXR0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYWNlZDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnNoYXJlLXBpbnRlcmVzdCB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzkyMjI4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc2hhcmUtZW1haWwge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucG9zdC1tYWluLXZpZXcge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmNWY1ZjU7XHJcblxyXG4gICAgICAgIC5wb3N0LWxlYWQtaW1hZ2UgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucG9zdC1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmxvYWRNb3JlQmxvZyAuYnRuIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZWQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgY29sb3I6ICM3Nzc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgcGFkZGluZzogMTBweCAwO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5SZWNvbW1lbmRlZEJsb2cge1xyXG4gICAgLlJlY29tbWVuZGVkVGl0bGUge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIH1cclxuXHJcbiAgICAuYmxvZy1yYy1pdGVtIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuICAgICAgICAucmNpbWcge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxNDBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaDQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAucG9zdC1oZWFkZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcbn1cclxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sQ0FBQyw0RUFBSTtBQUNaLE9BQU8sQ0FBQyx3RUFBSTtBQUNaLE9BQU8sQ0FB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 */
